.home .section{padding:86px 0}
.challenges{grid-template-columns:repeat(2,1fr)}
.challenge{display:flex;gap:16px;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:#fff}
.challenge:before{content:"✓";display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#eaf4f2;color:var(--blue);font-weight:900}
.challenge p{margin:0}
.challenge-details{margin-top:18px}
.challenge-details summary{cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--ink);border-radius:999px;font-weight:800;list-style:none}
.challenge-details summary::-webkit-details-marker{display:none}
.challenge-details summary:after{content:"＋"}
.challenge-details[open] summary:after{content:"−"}
.challenge-details .challenges{margin-top:18px}
.pillars{grid-template-columns:repeat(3,1fr)}
.pillar{display:flex;flex-direction:column;padding:34px;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);border-top:5px solid var(--accent)}
.pillar:nth-child(2){border-color:var(--blue)}
.pillar:nth-child(3){border-color:#d4a62a}
.pillar-number{color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.15em}
.pillar h3{font-size:28px;margin:6px 0 8px}
.pillar>p{color:var(--muted);margin-top:0}
.service-list{list-style:none;padding:0;margin:12px 0 24px;border-top:1px solid var(--line)}
.service-list li{padding:12px 0;border-bottom:1px solid var(--line);font-weight:700}
.service-list a{display:flex;align-items:center;justify-content:space-between;gap:12px}
.service-list a:after{content:"↗";display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border:1px solid currentColor;border-radius:50%;color:var(--accent);font-size:14px;font-weight:800;line-height:1;transition:transform .2s ease,background .2s ease,color .2s ease}
.service-list a:hover{color:var(--accent)}
.service-list a:hover:after{transform:translate(2px,-2px);background:var(--accent);color:#fff}
.pillar .text-link{margin-top:auto}
.growth-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}
.growth-panel h2{font-size:clamp(32px,5vw,56px);line-height:1.2;margin:0 0 20px}
.growth-items{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.growth-item{padding:20px;border-radius:14px;background:#fff;border:1px solid var(--line)}
.growth-item strong{display:block;font-size:18px}
.flow{grid-template-columns:repeat(5,1fr);counter-reset:flow}
.flow-step{position:relative;padding:24px 18px;border-top:2px solid var(--blue)}
.flow-step:before{counter-increment:flow;content:"0" counter(flow);color:var(--accent);font-weight:900}
.flow-step h3{font-size:18px;margin:8px 0}
.carousel-shell{position:relative}
.carousel-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
.carousel-button{width:46px;height:46px;border:1px solid var(--ink);border-radius:50%;background:#fff;color:var(--ink);font-size:22px;cursor:pointer}
.carousel-button:hover{background:var(--ink);color:#fff}
.carousel-button:disabled{opacity:.3;cursor:default}
.work span{max-width:calc(100% - 44px)}
.work-featured{display:flex;flex-direction:column;min-height:300px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.work-featured .work-identity{display:flex;flex:1;max-width:none;min-height:230px;padding:30px;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center}
.work-featured .work-identity small{margin-bottom:12px;font-size:11px;font-weight:800;letter-spacing:.2em;opacity:.78}
.work-featured .work-identity strong{font-size:clamp(27px,3vw,40px);line-height:1.25;letter-spacing:.05em}
.work-featured>span:last-child{max-width:none;padding:18px 22px;color:var(--ink);font-weight:800}
.work-identity-glass{background:linear-gradient(135deg,#123e53,#4b8a93)}
.work-identity-kamaei{background:linear-gradient(135deg,#781c22,#b94a3c)}
.work-identity-cci{background:linear-gradient(135deg,#173661,#315f9d)}
.works-more{margin-top:34px;text-align:center}
.article-card p,.card-body p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.faq{max-width:880px}
.faq details{border-bottom:1px solid var(--line);padding:0}
.faq summary{cursor:pointer;padding:20px 4px;font-size:18px;font-weight:800}
.faq p{margin:0;padding:0 4px 22px;color:var(--muted)}
.mobile-contact{display:none}
@media(min-width:851px){.carousel-controls{display:none}
}
@media(max-width:960px){.pillars{grid-template-columns:repeat(2,1fr)}
.flow{grid-template-columns:repeat(2,1fr)}
.growth-panel{grid-template-columns:1fr}
}
@media(max-width:850px){.home{padding-bottom:72px}
.home .section{padding:64px 0}
.challenges,.pillars,.growth-items,.flow{grid-template-columns:1fr}
.pillar{padding:27px}
.growth-panel{gap:30px}
.carousel-track{display:flex!important;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 16px 18px;margin-inline:-16px}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-track>*{flex:0 0 84%;scroll-snap-align:start}
.works.carousel-track .work{flex-basis:82%}
.carousel-controls{padding-right:2px}
.mobile-contact{display:flex;position:fixed;z-index:90;left:12px;right:12px;bottom:10px;min-height:54px;align-items:center;justify-content:center;border-radius:999px;background:var(--accent);color:#fff;font-weight:900;box-shadow:0 10px 35px rgba(16,34,49,.25)}
}

/* Editorial homepage */
.home .section{padding:78px 0}
.challenges{gap:0;border-top:1px solid var(--line)}.challenge{gap:14px;padding:20px 6px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.challenge:before{flex-basis:24px;height:24px;border-radius:0;background:transparent;border:1px solid var(--blue);font-size:12px}.challenge-details summary{padding:9px 14px;border-radius:3px;font-size:13px}
.pillars{gap:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.pillar{padding:30px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.pillar:first-child{border-top:3px solid var(--accent)}.pillar:nth-child(2){border-top:3px solid var(--blue)}.pillar:nth-child(3){border-top:3px solid #9a7a22;border-right:0}.pillar h3{font-size:25px}.pillar-number{font-size:10px}
.growth-panel{grid-template-columns:.82fr 1.18fr;gap:70px}.growth-items{gap:0;border-top:1px solid var(--ink)}.growth-item{padding:18px 4px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.growth-item strong{font-size:16px}.growth-item span{font-size:13px;color:var(--muted)}
.carousel-button{width:42px;height:42px;border-radius:3px}.works-more{margin-top:28px;text-align:left}.mobile-contact{border-radius:3px;box-shadow:0 4px 18px rgba(16,34,49,.22)}
@media(max-width:960px){.pillar:nth-child(2){border-right:0}.pillar:nth-child(3){border-top:1px solid var(--line)}}
@media(max-width:850px){.home .section{padding:58px 0}.pillar{padding:24px 4px;border-right:0;border-bottom:1px solid var(--line)}.growth-panel{gap:38px}.carousel-track{gap:12px}.carousel-track>*{flex-basis:88%}}

