/* The story is one moving world. Frame controls remain reachable. */
body{overflow-x:clip}.scroll-story{height:1180svh}.story-stage{--scene-accent:6,193,103;perspective:1400px}.stage-copy{perspective:1400px}.chapter-copy{width:43%;transform-origin:25% 50%;max-width:650px;will-change:transform,opacity}.chapter-copy[data-layout='right']{left:56%;width:39%;transform-origin:85% 50%}.chapter-copy[data-layout='center']{left:15%;top:14%;width:70%;max-width:none;text-align:center;transform-origin:50% 30%}.chapter-copy[data-layout='center'] .eyebrow{justify-content:center;margin-bottom:13px}.chapter-copy[data-layout='center'] h2{font-size:clamp(36px,3.8vw,65px);line-height:1.22}.chapter-copy[data-layout='center'] h2 br{display:none}.chapter-copy[data-layout='center'] .problem-line{margin-bottom:11px}.chapter-copy[data-layout='center'] .chapter-description{margin:17px auto 0;max-width:620px;font-size:16px;line-height:1.75}.chapter-copy[data-layout='center'] .service-tags{display:none}.chapter-copy[data-layout='center'] .detail-trigger{margin-top:15px}.chapter-copy[data-layout='center'] .slice-total{justify-content:center;margin-top:17px}.chapter-copy[data-layout='center'] .slice-total strong{font-size:38px}.chapter-copy[data-layout='center'] .slice-total span{font-size:12px;text-align:left}.chapter-copy h1,.chapter-copy h2,.chapter-description,.cover-intro{will-change:transform}.chapter-copy .eyebrow{font-size:12px;letter-spacing:.075em}.problem-line{font-size:16px}.chapter-copy .chapter-description{font-size:16px}.service-tags span{font-size:13px}.detail-trigger{font-size:15px}.cinema-word{position:absolute;z-index:0;left:-7%;bottom:8%;white-space:nowrap;pointer-events:none;line-height:.75;opacity:.07;transform-origin:50% 50%;will-change:transform,opacity}.cinema-word span{font-size:clamp(150px,24vw,500px);font-weight:800;letter-spacing:-.085em;color:rgba(var(--scene-accent),.85)}.cinema-media{position:absolute;inset:-8%;z-index:0;opacity:0;overflow:hidden;pointer-events:none;will-change:opacity}.cinema-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.8);will-change:transform}.cinema-media:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06180c55,#040a0777)}.stage-atmosphere{inset:-25%;background:radial-gradient(ellipse at 67% 50%,rgba(var(--scene-accent),.22),transparent 60%);transform-origin:center;will-change:transform}.stage-grid{inset:-20% -45%;background-size:100px 100px;background-image:linear-gradient(rgba(var(--scene-accent),.13) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--scene-accent),.13) 1px,transparent 1px);mask-image:radial-gradient(ellipse at 55% 60%,#0009,transparent 70%);will-change:transform;transform-origin:center}.cinema-light{position:absolute;inset:-40% -15%;z-index:2;pointer-events:none;background:linear-gradient(90deg,transparent 35%,rgba(var(--scene-accent),.018) 43%,rgba(var(--scene-accent),.18) 49.6%,rgba(var(--scene-accent),.6) 50%,rgba(var(--scene-accent),.09) 51%,transparent 62%);mix-blend-mode:screen;will-change:transform,opacity;opacity:0}.cinema-vignette{position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(90deg,#080c0bdd,transparent 52%);transition:background .4s}.story-stage[data-layout='right'] .cinema-vignette{background:linear-gradient(-90deg,#080c0be8,transparent 54%)}.story-stage[data-layout='center'] .cinema-vignette{background:linear-gradient(180deg,#080c0bc9,transparent 65%)}.visual-caption{left:0;right:0;bottom:91px;font-size:12px;letter-spacing:.08em;gap:3px}.visual-caption small{font-size:12px}.caption-line{display:none}.scene-foot{background:#080c0b1a;backdrop-filter:blur(10px)}.chapter-toggle{font-size:14px;gap:15px}.chapter-toggle #chapter-count{font-size:12px}.skip-story{font-size:14px}.scroll-cue{font-size:12px;letter-spacing:.06em;bottom:101px}.chapter-copy .three-words{font-size:14px}.section-lead,.case-heading>p,.check-option p,.faq-list details p{font-size:16px}.overview-row p{font-size:14px}.text-link{font-size:15px}.scene-fallback{will-change:transform}#chapter-menu>button{font-size:15px;padding:11px 5px}#chapter-menu>button span{font-size:12px}.header-contact{font-size:14px}.brand-name small{font-size:10px}
@media(min-width:761px){.story-stage[data-layout='right'] .visual-caption{left:0;right:43%}.story-stage[data-layout='left'] .visual-caption{left:51%;right:0}.chapter-copy[data-layout='right'] h2{font-size:clamp(40px,4.2vw,70px)}.chapter-copy[data-layout='center'] .chapter-description br{display:none}}
@media(max-width:1100px) and (min-width:761px){.chapter-copy[data-layout='right']{left:54%;width:42%}.chapter-copy .eyebrow{font-size:11px;white-space:normal}.chapter-copy h2,.chapter-copy[data-layout='right'] h2{font-size:43px}.chapter-copy .chapter-description{max-width:340px}.visual-caption{font-size:11px}.visual-caption small{font-size:11px}.scene-foot{gap:18px}.skip-story{font-size:12px}.chapter-toggle{font-size:12px}}
@media(max-width:760px){.scroll-story{height:1240svh}.story-stage{min-height:620px}.chapter-copy,.chapter-copy[data-layout='right'],.chapter-copy[data-layout='center']{left:var(--pad);top:91px;width:calc(100% - 48px);max-width:600px;text-align:left;transform-origin:25% 20%}.chapter-copy[data-layout='right']{transform-origin:75% 20%}.chapter-copy .eyebrow,.chapter-copy[data-layout='center'] .eyebrow{font-size:12px;letter-spacing:.03em;margin-bottom:13px;white-space:normal;justify-content:flex-start;line-height:1.45;max-width:95%}.chapter-copy h2,.chapter-copy[data-layout='right'] h2,.chapter-copy[data-layout='center'] h2{font-size:clamp(29px,7.6vw,40px);line-height:1.2;letter-spacing:-.045em;max-width:95%}.chapter-copy[data-layout='center'] h2 br{display:initial}.chapter-copy[data-layout='center'] .chapter-description,.chapter-copy .chapter-description{font-size:16px;line-height:1.7;margin:12px 0 0;max-width:345px}.chapter-copy .problem-line,.chapter-copy[data-layout='center'] .problem-line{font-size:14px;margin-bottom:9px}.chapter-copy .service-tags{display:none}.detail-trigger,.chapter-copy[data-layout='center'] .detail-trigger{font-size:14px;min-height:35px;margin-top:10px}.chapter-copy .slice-total,.chapter-copy[data-layout='center'] .slice-total{justify-content:flex-start;margin-top:16px}.chapter-copy .slice-total strong,.chapter-copy[data-layout='center'] .slice-total strong{font-size:40px}.chapter-copy .slice-total span{font-size:13px}.chapter-copy[data-layout='center'] .slice-total span{font-size:13px}.chapter-copy .three-words{font-size:13px;gap:10px;margin-top:16px}.chapter-copy .button{font-size:14px;min-height:44px}.cover-pains{font-size:14px;margin-top:15px;margin-bottom:13px;gap:7px}.cover-pains span+span:before{margin-right:7px}.hero-number{font-size:63px}.hero-number small{font-size:17px}.chapter-copy h1{font-size:39px}.cinema-word{bottom:18%;left:-35%}.cinema-word span{font-size:45vw}.stage-atmosphere{inset:-45%;background:radial-gradient(ellipse at 55% 65%,rgba(var(--scene-accent),.25),transparent 55%)}.stage-grid{inset:-5% -170% -30%}.cinema-vignette,.story-stage[data-layout='right'] .cinema-vignette,.story-stage[data-layout='center'] .cinema-vignette{background:linear-gradient(180deg,#080c0be8 3%,#080c0ba9 28%,transparent 57%,#080c0b55 95%)}.cinema-light{inset:-25% -45%;opacity:.3}.visual-caption{bottom:75px;font-size:10px;letter-spacing:.04em}.visual-caption small{display:none}.chapter-toggle{font-size:12px;gap:8px}.chapter-toggle #chapter-count{font-size:11px}.scene-foot{gap:11px;left:18px;right:18px;height:62px}.scene-foot .scene-progress{display:none}.skip-story{font-size:12px;margin-left:auto}.skip-story span{margin-left:5px}.header-contact{font-size:12px;white-space:nowrap}.brand-name small{font-size:9px}.section-lead,.case-heading>p,.check-option p,.faq-list details p{font-size:16px}.overview-row p{font-size:13px}.overview-row h3{font-size:22px}.case-period,.source-note,.plan-note{font-size:12px}.plan-card li{font-size:15px}.faq-list summary{font-size:16px}.contact-section .section-wrap>p:not(.eyebrow){font-size:16px}.contact-details{font-size:14px}}
@media(max-width:760px) and (max-height:780px){.chapter-copy,.chapter-copy[data-layout='right'],.chapter-copy[data-layout='center']{top:85px}.chapter-copy h2,.chapter-copy[data-layout='right'] h2,.chapter-copy[data-layout='center'] h2{font-size:30px}.chapter-copy .eyebrow,.chapter-copy[data-layout='center'] .eyebrow{font-size:12px;line-height:1.25;margin-bottom:8px}.chapter-copy .chapter-description,.chapter-copy[data-layout='center'] .chapter-description{font-size:16px;line-height:1.5;margin-top:10px}.chapter-copy .problem-line,.chapter-copy[data-layout='center'] .problem-line{font-size:14px;margin-bottom:7px}.chapter-copy .detail-trigger,.chapter-copy[data-layout='center'] .detail-trigger{margin-top:7px;min-height:30px}.chapter-copy .eyebrow .slice-number{font-size:11px}.hero-number{font-size:53px}.chapter-copy h1{font-size:35px}.chapter-copy .three-words{font-size:12px;margin-top:12px}.chapter-copy[data-copy='1'] .chapter-description br{display:none}.chapter-copy[data-copy='2'] .chapter-description br{display:none}.chapter-copy[data-copy='12'] .chapter-description br{display:none}.visual-caption{bottom:68px}}
@media(prefers-reduced-motion:reduce){.cinema-word,.cinema-light,.cinema-media,.stage-grid{display:none}.chapter-copy,.chapter-copy h1,.chapter-copy h2,.chapter-description,.scene-fallback,.stage-atmosphere{transform:none!important}.chapter-copy[data-copy='0']{top:17%;left:var(--pad)}.reduced-motion .scene-foot .chapter-toggle{display:none}.reduced-motion .story-stage{perspective:none}}
/* Inside the screen, composition stays upright and the journey advances in depth. */
.scene-fallback{opacity:var(--phone-presence,1)}.webgl-ready .scene-fallback{opacity:0}.content-fallback{position:absolute;z-index:1;left:56%;top:28%;width:35%;padding:18px;background:#163323;border:1px solid #547b60;border-radius:10px;opacity:0;pointer-events:none;display:none}.webgl-unavailable .content-fallback{display:block;opacity:var(--inside,0)}.content-fallback img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:5px}.content-fallback strong{display:block;font-size:24px;margin-top:18px}.content-fallback span{display:block;font-size:13px;color:#abc9b4;margin-top:7px}.story-stage[data-chapter='2'] .chapter-copy .chapter-description{max-width:410px}.story-stage[data-chapter='2'] .visual-caption{left:51%;right:0}
@media(max-width:760px){.content-fallback{left:12%;top:55%;width:76%;padding:12px;max-height:34svh;overflow:hidden}.content-fallback img{max-height:22svh}.content-fallback strong{font-size:18px;margin-top:10px}.content-fallback span{font-size:12px}.story-stage[data-chapter='2'] .visual-caption{left:0;right:0}}
