/* Home-only layer. Internal pages keep the frozen V2 stylesheet and scripts. */
.centered-section>.container>.section-intro{text-align:center}
.centered-section>.container>.section-intro h2{max-width:38ch;margin-inline:auto}
.centered-section>.container>.section-lead{text-align:center;margin-inline:auto;max-width:76ch}
.centered-section .section-lead p{margin-inline:auto}
.hero-inner{padding-bottom:42px}.hero-grid{grid-template-columns:1.08fr 1fr;gap:16px}.hero h1{font-size:clamp(3.6rem,5.15vw,5.4rem);max-width:18ch}.hero h1 .hero-category{font-size:.59em;margin-bottom:18px}.hero-lead{font-size:1rem;max-width:58ch}.hero-request{font-size:.8rem;max-width:64ch}.hero-request .source-cta{font-size:.8rem;margin-top:20px!important}.hero-copy>.button{margin-top:26px}.hero-visual{align-self:stretch}.hero-sculpture{width:120%;max-width:120%;margin-left:-10%;object-fit:cover}
.intro-bridge{background:#e6edfa;padding:44px 0;border-bottom:1px solid #d3dced}.intro-bridge .source-copy{max-width:85ch;margin:auto;text-align:center;font-size:1.05rem;line-height:1.85}
.pain-section{padding-top:88px}.pain-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:38px 0}.pain-tabs button{min-height:52px;min-width:120px;flex:0 1 160px;padding:12px 24px;border:1px solid transparent;border-radius:4px;background:transparent;font-weight:800;color:var(--navy)}.pain-tabs button[aria-pressed=true]{background:var(--blue);color:var(--light)}.pain-tabs button:not([aria-pressed=true]):hover{border-color:#a5bdec}.pain-panel{display:grid;grid-template-columns:1.14fr 1fr;gap:56px;align-items:center;margin-bottom:40px}.pain-panel>figure,.case-visual{background:var(--blue);overflow:hidden;border-radius:7px;min-width:0}.concept-image,figure>noscript>img{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}.concept-image{background:var(--blue);transition:opacity .25s ease}.concept-image[data-src]{opacity:0}.concept-image.is-loaded{opacity:1}.pain-panel h3{font:800 clamp(2.35rem,3.2vw,3.6rem)/1.03 var(--display);text-transform:uppercase;margin:22px 0;max-width:20ch}.panel-position{color:var(--blue);font-size:.85rem;font-weight:800}.pain-panel-copy .source-copy{font-size:1.05rem;max-width:48ch}.pain-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:22px}.pain-controls button{width:48px;height:48px;background:transparent;border:1px solid #aabbd8;border-radius:50%;font-size:1.3rem}.pain-controls span{font-size:.8rem;min-width:52px;text-align:center}.pain-ending{margin:38px auto 0;max-width:85ch;text-align:center;font-size:.95rem}.js .pain-panel{margin-bottom:0;min-height:460px}
.featured-service{padding:44px;gap:48px;grid-template-columns:1.12fr 1fr}.featured-service h3{max-width:none;font-size:clamp(2.6rem,3.4vw,3.9rem)}.featured-service .service-diagram{padding-bottom:28px}.featured-service .diagram-stage{height:340px}.service-groups{display:block;margin-top:56px}.service-group+.service-group{margin-top:40px}.group-heading{border-bottom:1px solid #b8ccfb;padding-bottom:20px;gap:20px}.group-heading h3{font:800 1.85rem/1.2 var(--display);text-transform:uppercase}.group-heading>span{font-size:1.4rem}.service-group-links{display:grid;grid-template-columns:1fr 1fr;gap:0 64px}.service-link{padding:26px 0;gap:24px}.service-link h4{font-size:1.15rem}.service-link p{font-size:.95rem;max-width:56ch;margin-top:12px}.service-link>span{padding-top:2px}
.method-layout{position:relative;display:block;min-height:650px}.method-steps{width:100%}.method-figure{margin-top:24px;background:var(--blue);border-radius:6px;overflow:hidden}.method-figure figcaption{padding:18px 24px;background:#dce7ff;color:var(--navy);font-size:.85rem;font-weight:800}.method-body{padding-bottom:24px}.method-body .source-copy{font-size:.95rem}.method-step h3{font-size:2rem}.method-step[open]>summary{color:var(--blue)}
@media(min-width:801px){.js .method-steps{width:48%}.js .method-body{min-height:120px}.js .method-figure{position:absolute;right:0;top:40px;width:46%;margin:0}.js .method-step summary{padding:22px 0}}
.case-stories{padding:0;overflow:hidden;background:var(--light)}.case-story,.case-carousel .case-story{grid-template-columns:1fr 1.04fr;gap:0;align-items:stretch;min-height:510px;border:0;padding:0}.case-visual{border-radius:0;min-height:100%;display:flex;align-items:stretch}.case-visual .concept-image,.case-visual>noscript>img{height:100%;min-height:440px;aspect-ratio:auto;object-fit:cover}.case-story-copy{padding:42px 40px 36px;align-self:center}.case-story h3{font-size:clamp(2rem,2.6vw,2.8rem);margin-bottom:24px;max-width:24ch}.case-metric{margin-bottom:24px}.case-metric strong{font:800 clamp(2.1rem,2.9vw,3.3rem)/1.05 var(--display);color:var(--blue);display:block;overflow-wrap:anywhere}.case-metric span{display:block;font-size:.85rem;color:var(--muted);margin-top:12px}.case-story-copy .source-copy{font-size:.95rem}.case-controls{margin:0;padding:0 40px 28px;justify-content:flex-end}.results-cta{max-width:none;text-align:center;margin-top:28px}.case-story:not([hidden])+.case-story{border-top:1px solid var(--line)}
.coverage-section .coverage-content{max-width:80ch;text-align:center;margin:auto}.coverage-content p{margin-inline:auto}.locations{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:30px}.locations span{padding:10px 17px;border:1px solid #bfcee9;border-radius:4px;font-size:.85rem;background:#e9effa}.contact-grid{grid-template-columns:1fr 1.08fr;gap:76px}.contact .section-intro h2{font-size:clamp(3rem,4.5vw,4.7rem);max-width:16ch}.contact-copy>.button{margin-top:28px}.contact-copy .contact-note{font-size:.8rem;max-width:48ch}.contact-form{padding:36px}.faq-list{margin-inline:auto}.comparison-section .comparison-table{margin-top:40px}
html:not(.js) .concept-image[data-src]{display:none}html:not(.js) .case-story{margin-bottom:30px}html:not(.js) .method-layout{min-height:0}html:not(.js) .method-figure{max-width:600px}
@media(max-width:1100px){.hero h1{font-size:4.4rem}.hero-grid{grid-template-columns:1.1fr 1fr}.hero-lead{font-size:.95rem}.pain-panel{gap:36px}.featured-service{padding:32px;gap:32px}.service-group-links{gap:0 36px}.case-story-copy{padding:32px}.case-controls{padding:0 32px 28px}.case-story,.case-carousel .case-story{min-height:500px}.contact-grid{gap:40px}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(3.5rem,7.8vw,4.6rem);max-width:22ch}.hero-visual{height:340px;max-width:650px;margin-top:0}.hero-sculpture{height:100%;width:100%;max-width:100%;margin:0}.hero-inner{padding-bottom:20px}.intro-bridge{padding:34px 0}.intro-bridge .source-copy{font-size:1rem}.pain-panel{gap:28px;grid-template-columns:1fr 1fr}.pain-panel h3{font-size:2.5rem}.pain-panel-copy .source-copy{font-size:.95rem}.js .pain-panel{min-height:360px}.pain-tabs button{min-width:100px;flex-basis:115px;padding:12px}.featured-service{grid-template-columns:1.1fr 1fr;padding:28px;gap:24px}.featured-service h3{font-size:2.8rem}.method-layout{min-height:0}.method-steps{width:100%}.method-figure{max-width:620px;margin:26px auto 0}.method-step h3{font-size:1.9rem}.case-story-copy{padding:28px}.case-metric strong{font-size:2.3rem}.case-visual .concept-image{min-height:430px}.contact-grid{gap:32px;grid-template-columns:1fr 1.15fr}.contact-form{padding:26px}.contact .section-intro h2{font-size:3.4rem}}
@media(max-width:650px){.hero h1{font-size:clamp(3rem,10vw + .4rem,4rem)}.hero h1 .hero-category{font-size:.64em;line-height:1.2;margin-bottom:14px}.hero-lead{font-size:.95rem}.hero-visual{height:290px}.hero-request{margin-top:10px}.hero-request .source-cta{font-size:.75rem}.intro-bridge .source-copy{text-align:left;font-size:.95rem}.centered-section>.container>.section-intro h2{font-size:clamp(2.35rem,8vw + .4rem,3.1rem);max-width:100%}.centered-section>.container>.section-lead{font-size:.95rem}.pain-section{padding-top:56px}.pain-tabs{gap:8px;margin:28px 0}.pain-tabs button{min-width:0;flex:1 1 27%;font-size:.85rem;padding:12px}.pain-panel{grid-template-columns:1fr;gap:28px;margin-bottom:42px}.js .pain-panel{min-height:0}.pain-panel h3{font-size:2.45rem;margin:16px 0}.pain-panel-copy .source-copy{font-size:1rem;max-width:100%}.pain-panel figure{aspect-ratio:4/3}.pain-controls{justify-content:flex-start;margin-top:24px}.pain-ending{text-align:left;font-size:.95rem;margin-top:28px}.featured-service{grid-template-columns:1fr;padding:26px}.featured-service h3{font-size:2.8rem;max-width:100%}.featured-service .service-diagram{padding:18px 14px}.service-groups{margin-top:40px}.service-group-links{grid-template-columns:1fr}.group-heading h3{font-size:1.6rem}.service-link h4{font-size:1.1rem}.service-link p{font-size:.9rem}.method-body .source-copy{font-size:.95rem}.method-figure figcaption{padding:16px 20px}.method-step h3{font-size:1.85rem}.case-story,.case-carousel .case-story{grid-template-columns:1fr;min-height:0}.case-visual{min-height:0;aspect-ratio:4/3}.case-visual .concept-image,.case-visual>noscript>img{min-height:0;height:100%;aspect-ratio:4/3}.case-story-copy{padding:26px}.case-story h3{font-size:2.25rem}.case-metric strong{font-size:2.4rem}.case-controls{padding:0 26px 26px}.case-story-copy .source-copy{font-size:.95rem}.contact-grid{grid-template-columns:1fr}.contact .section-intro h2{font-size:3.25rem;max-width:100%}.contact-form{padding:24px}.locations{gap:8px}.locations span{font-size:.8rem;padding:9px 12px}.coverage-section .coverage-content{text-align:left}.results-cta{text-align:left}.comparison-section .comparison-table{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.concept-image{transition:none}}
.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;padding:0;overflow:hidden;white-space:nowrap}
.results-cta p{margin-inline:auto}
.keep-together{white-space:nowrap}
