/* Preserve the approved world; refine reading rhythm and desktop composition. */
.scene h2{ text-wrap:balance }
.scene p{ text-wrap:pretty }
.scene.leaving{visibility:visible;pointer-events:none}
.journey-nav a{font-size:13px}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #e6f3ff;outline-offset:5px}
@media(min-width:1100px){
 .scene[class*="body-"] h2{font-size:clamp(58px,5.1vw,88px);max-width:8.5em}
 .body-copy{top:20%;width:35%}
 .body-copy>p{font-size:clamp(21px,1.55vw,26px);max-width:31ch}
 .body-copy .body-detail{font-size:18px;max-width:32ch}
 .task-river{top:37%;width:42%;max-width:670px}
 .task-river p{margin-bottom:15px}
 .task-river span{font-size:clamp(27px,2.05vw,35px)}
 .task-river small{font-size:clamp(15px,1.08vw,19px)}
 .process-words{top:42%}
 .process-words span{font-size:clamp(28px,2.2vw,37px)}
 .process-words small{font-size:16px}
 .safety-copy>p{font-size:clamp(20px,1.4vw,25px)}
 .setup-text p,.tandem-copy p{font-size:clamp(21px,1.5vw,27px)}
 .tandem-copy{max-width:620px}
 .setup-price>p:nth-child(2){font-size:16px}
 .setup-price small{font-size:13px}
 .access-caption,.approval-status{font-size:14px}
 .key-experience{width:clamp(300px,23vw,400px);height:clamp(300px,23vw,400px)}
}
@media(hover:hover) and (pointer:fine){
 .journey-nav a:hover,.contact-link:hover{color:#fff;text-decoration:underline;text-underline-offset:6px}
 .body-approve:hover{transform:translateY(-2px)}
 .setup-story nav button:hover{background:#16304a}
 .setup-story nav button[aria-current]:hover{background:#d7f52a}
}
@media(prefers-reduced-motion:reduce){
 .scene{transform:none!important}
 .body-fallback{filter:brightness(1.035)}
}
.motion-paused .body-approve:hover{transform:none}
@media(max-width:700px){
 .body-process::before{background:linear-gradient(90deg,#041020e8,#041020af 62%,#04102035)!important}
 .process-words li{color:#d2dfee}
}
