/* Final shared layout rules, loaded after the original prototype layers. */
.home .hero.hero-impact{display:flex;align-items:center;min-height:min(820px,calc(100svh - 88px));padding-block:65px 80px;position:relative}
.home .hero.hero-impact .hero-copy{max-width:none;width:100%;min-width:0}
.home .hero.hero-impact .eyebrow{font-size:10px;letter-spacing:2.5px;color:#b8d6d1}
.home .hero.hero-impact h1{font-size:clamp(62px,7.6vw,112px);font-weight:500;line-height:1.1;letter-spacing:-.065em;margin:42px 0 48px;text-wrap:initial}
.home .hero.hero-impact h1 .headline-main{display:block;color:#F5F7FA}
.home .hero.hero-impact h1 em{display:block;color:#50E0C1;font-weight:400;letter-spacing:-.06em}
.home .hero.hero-impact .hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}
.home .hero.hero-impact .lead{max-width:580px;font-size:17px;line-height:1.8;color:#c6d2dc;margin:0}
.home .hero.hero-impact .hero-actions{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:17px;flex:none}
.home .hero.hero-impact .button-dark{min-height:56px;padding-inline:26px;font-size:13px;gap:40px}
.home .hero.hero-impact .button-quiet{font-size:12px;gap:24px}
.home:has(.hero-impact) .header-shell{background:#111b28f2;border-bottom-color:#ffffff0a}
.home:has(.hero-impact) .hero-stage{background:radial-gradient(ellipse at 95% 75%,#173749 0,transparent 60%),#111B28}
.home:has(.hero-impact) .signal-field{opacity:1;mask-image:linear-gradient(90deg,#0009,#0006 40%,#000)}
@media(min-width:1600px){.home .hero.hero-impact{min-height:820px}.home .hero.hero-impact h1{font-size:112px}}
@media(max-width:1100px){.home .hero.hero-impact{min-height:680px;padding-block:55px 65px}.home .hero.hero-impact .hero-bottom{gap:36px}.home .hero.hero-impact .lead{max-width:510px;font-size:16px}.home .hero.hero-impact h1{font-size:7.5vw}}
@media(max-width:860px){.home .hero.hero-impact{min-height:650px;padding-block:50px 60px}.home .hero.hero-impact h1{font-size:8vw;line-height:1.14;margin-block:36px}.home .hero.hero-impact .hero-bottom{display:block}.home .hero.hero-impact .lead{max-width:590px}.home .hero.hero-impact .hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;margin-top:30px;gap:25px}}
@media(max-width:600px){.home .hero.hero-impact{min-height:calc(100svh - 72px);padding-block:38px 44px}.home .hero.hero-impact .eyebrow{font-size:8px;letter-spacing:1.8px}.home .hero.hero-impact h1{font-size:clamp(44px,12.4vw,72px);line-height:1.08;letter-spacing:-.06em;margin:30px 0}.home .hero.hero-impact h1 em{margin-top:15px;max-width:340px}.home .hero.hero-impact .lead{font-size:14px;line-height:1.75;max-width:370px}.home .hero.hero-impact .hero-actions{gap:12px 18px;margin-top:27px}.home .hero.hero-impact .button-dark{font-size:11px;min-height:49px;gap:18px;padding-inline:20px}.home .hero.hero-impact .button-quiet{font-size:11px;gap:12px}}
.home .hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:center;gap:45px;min-height:0;padding-block:38px 65px}
.home .hero h1{font-size:clamp(48px,5.3vw,78px);margin:25px 0 22px;line-height:1.09}
.home .hero .hero-lab{position:relative;inset:auto;width:100%;max-width:none;margin:0;padding-top:240px}
.home .hero-lab .orbit-field{display:grid;top:-35px;height:320px}
.home .hero-lab .orbit-field i{animation-duration:4s;animation-iteration-count:1}
.home .hero-lab .orbit-field>span{font-size:48px}
.home .hero-lab .hero-visual{height:auto;min-height:225px;transform:none;border-radius:12px;padding:25px;background:#152433ed}
.home .hero-lab .visual-main>p{font-size:25px}
.home .ticker-inner{display:flex;justify-content:space-between;gap:16px}
.home .ticker-inner>a{display:flex;align-items:center;gap:12px;color:#111B28;font-size:11px;letter-spacing:2px;padding:12px 0;transition:transform .25s,color .25s}
.home .ticker-inner>a>span{font-size:17px;display:inline-block;transition:transform .25s}
.home .ticker-inner>a:hover,.home .ticker-inner>a:focus-visible{transform:translateY(-3px)}
.home .ticker-inner>a:hover>span{transform:rotate(45deg)}
.home .ticker-inner>i{transition:transform .5s}
.home .ticker-inner:has(a:hover)>i{transform:rotate(90deg)}
.home .service-explore :is(p,.service-no,.service-arrow){color:#f5f7fa}
.home .service-card p{color:#f5f7fa}
.home .ideas-preview .articles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:32px}
.home .ideas-preview .article-card:nth-child(n){display:flex;flex-direction:column;height:100%;margin:0;min-width:0}
.home .ideas-preview .article-card:nth-child(n) .article-art{height:260px;min-height:260px;max-height:260px;flex:0 0 260px}
.home .ideas-preview .article-card:nth-child(n) .article-content{display:flex;flex:1;flex-direction:column;padding:25px 0}
.home .ideas-preview .article-card:nth-child(n) h3{font-size:26px;line-height:1.35;min-height:3.05em;margin-block:18px 12px}
.home .ideas-preview .article-card:nth-child(n) .article-content>span{margin-top:auto;align-self:flex-start}
.home .ideas-preview .article-card:nth-child(n) .article-content>p{margin-bottom:22px}
/* Detail pages keep their content and URLs while sharing the Home's visual language. */
.inner-page{--body:Inter,Arial,sans-serif;--head:'Plus Jakarta Sans',sans-serif;background:#F5F7FA;color:#111B28}
.inner-page main{overflow:hidden}
.inner-page .wrap{width:min(1240px,calc(100% - 112px))}
.inner-page [id]{scroll-margin-top:110px}
.inner-page .inner-hero{position:relative;isolation:isolate;color:#F5F7FA;padding-block:65px 75px}
.inner-page .inner-hero:before{content:'';position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:radial-gradient(ellipse at 85% 20%,#4273e82a,transparent 65%),#111B28}
.inner-page .inner-hero h1{font-weight:500;font-size:clamp(42px,5.3vw,76px);letter-spacing:-.05em;line-height:1.12;max-width:1100px}
.inner-page .inner-hero h1 em{color:#50E0C1;font-style:italic}
.inner-page .inner-hero .lead{color:#c1ced8;font-size:17px;line-height:1.8;max-width:760px}
.inner-page .inner-hero .eyebrow{color:#50E0C1}
.inner-page .section{padding-block:75px}
.inner-page :is(h2,h3){font-weight:500;letter-spacing:-.035em}
.inner-page h2{font-size:clamp(30px,3.2vw,46px)}
.inner-page p{line-height:1.8}
.inner-page .button{border-radius:50px;font-size:12px;min-height:50px}
.inner-page .callout{background:#50E0C1;border-radius:14px;padding:50px;margin-bottom:75px}
.inner-page .callout h2{font-size:clamp(32px,4vw,56px)}
.inner-page .callout h2 em{color:#26645b}
.inner-page .detail-grid,.inner-page .project-detail{padding-block:55px;border-color:#ced9df}
.inner-page .detail-aside{background:#111B28;color:#F5F7FA;border-radius:12px;border:1px solid #344859;padding:30px}
.inner-page .detail-aside :is(p,h3,li){color:#e4edf2}
.inner-page .detail-aside .eyebrow{color:#50E0C1}
.inner-page .quote-band{background:#111B28;color:#F5F7FA;padding-block:70px}
.inner-page .quote-band :is(p,h2){color:#F5F7FA}
.inner-page .method-list article{padding-block:35px;border-color:#ced9df}
.inner-page .method-list article>span{color:#167563}
.inner-page .project-placeholder{border-radius:12px;background:#e5ecf2}
.inner-page .blog-item{border-color:#ced9df;transition:background .25s,padding .25s}
.inner-page .blog-item:hover{background:#e7efef;padding-inline:18px}
.inner-page .article-shell h1{font-weight:500;letter-spacing:-.05em}
.inner-page :focus-visible{outline:3px solid #4273E8;outline-offset:5px}
@media(max-width:1100px){.home .hero{gap:28px}.home .hero .hero-lab{padding-top:210px}.home .hero-lab .orbit-field{height:280px}.inner-page .wrap{width:calc(100% - 72px)}}
@media(max-width:860px){.home .hero{grid-template-columns:1fr;padding-top:32px;gap:20px}.home .hero h1{font-size:clamp(48px,8.6vw,70px)}.home .hero .hero-lab{max-width:440px;margin:0 auto;padding-top:215px}.home .ticker-inner{flex-wrap:wrap;justify-content:center;gap:8px 22px}.home .ticker-inner>i{display:none}.home .ticker-inner>a{font-size:10px}.inner-page .wrap{width:calc(100% - 48px)}.inner-page .inner-hero{padding-block:45px 55px}}
@media(max-width:600px){.home .hero{padding-block:24px 40px}.home .hero h1{font-size:clamp(40px,10.65vw,64px);margin-top:20px}.home .hero .hero-lab{padding-top:180px;margin-top:5px}.home .hero-lab .orbit-field{top:-10px;height:215px}.home .hero-lab .hero-visual{min-height:210px;padding:22px}.home .ticker-inner{gap:0 20px;padding-block:13px}.home .ticker-inner>a{font-size:9px;letter-spacing:1.2px}.home .ideas-preview .articles-grid{grid-template-columns:1fr}.home .ideas-preview .article-card:nth-child(n) .article-art{height:225px;min-height:225px;max-height:225px;flex-basis:225px}.home .ideas-preview .article-card:nth-child(n) h3{min-height:0;font-size:24px}.inner-page .wrap{width:calc(100% - 40px)}.inner-page .inner-hero h1{font-size:42px}.inner-page .inner-hero .lead{font-size:14px}.inner-page .section{padding-block:50px}.inner-page .callout{padding:30px 24px}.inner-page .detail-grid,.inner-page .project-detail{padding-block:35px}}
@media(prefers-reduced-motion:reduce){.home .ticker-inner *,.home .hero-lab .orbit-field i,.inner-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
