/* The extra scroll belongs exclusively to S3. Earlier chapter distances stay fixed. */
.s3-measure{position:absolute;width:0;height:200svh;visibility:hidden;pointer-events:none}
.mobile-experience #journey{height:580svh}
.mobile-experience .s12-measure{position:absolute;width:0;height:380svh;visibility:hidden;pointer-events:none}
.desktop-experience #journey{height:calc(var(--s1-span) + var(--s2-span) + 200svh)}
.desktop-experience .stage{overflow:clip}
.service-copy{position:absolute;z-index:6;left:53%;right:5%;top:17%;opacity:0;visibility:hidden;will-change:opacity,transform}
.service-kicker{margin:0 0 15px;font-size:9px;letter-spacing:.17em;color:var(--copper)}
.service-copy h2{margin:0;font-size:clamp(32px,3.8vw,57px);line-height:1.07;letter-spacing:-.055em;font-weight:400}
.service-copy h2 em{display:block;color:var(--copper);font-style:normal}
.service-lead{max-width:405px;margin:20px 0 0;font-size:clamp(13px,1.15vw,17px);line-height:1.65;color:#c9c3ba}
.service-demo{max-width:440px;height:170px;margin-top:22px;padding:16px 19px 10px;border:1px solid #c99a7340;border-radius:13px;background:linear-gradient(135deg,#1c242bcf,#10161ccf);opacity:0}
.demo-label{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.12em;color:#c99a73}
.demo-label span{color:#a6a49f;font-size:8px;letter-spacing:0}
.demo-body{margin-top:13px}
.demo-product,.demo-prompt,.demo-answer{font-size:13px;line-height:1.5;margin:0 0 9px}
.demo-product span{display:block;font-size:11px;color:#b6b5b2;margin-top:2px}
.service-demo button{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;min-height:40px;border:1px solid #c99a735e;border-radius:7px;padding:8px 12px;background:#c99a730c;font:inherit;font-size:12px;color:var(--bone);cursor:pointer}
.service-demo button span{color:var(--copper)}
.service-demo button:hover{background:#c99a731b}
.demo-options{display:flex;gap:8px}.demo-options button{flex:1;justify-content:center}
.demo-context{font-size:11px;line-height:1.5;color:#c1bab0;margin:0}
.service-demo .demo-reset{padding:3px 0;min-height:28px;background:none;border:0;color:var(--copper);font-size:10px}
.s3-caption{position:absolute;z-index:5;left:6%;bottom:13%;font-size:9px;letter-spacing:.12em;color:var(--copper);pointer-events:none;opacity:0}
.mobile-experience .service-copy{top:auto;left:6%;right:6%;bottom:70px}
.mobile-experience .service-kicker{font-size:8px;margin-bottom:10px}
.mobile-experience .service-copy h2{font-size:30px;line-height:1.10}
.mobile-experience .service-copy h2 br{display:none}
.mobile-experience .service-lead{font-size:11px;line-height:1.55;margin-top:12px;max-width:320px}
.mobile-experience .service-demo{margin-top:15px;height:143px;padding:12px 13px 8px}
.mobile-experience .demo-body{margin-top:10px}
.mobile-experience .demo-product,.mobile-experience .demo-prompt,.mobile-experience .demo-answer{font-size:12px;margin-bottom:7px}
.mobile-experience .service-demo button{font-size:11px;min-height:38px;padding:7px 10px}
.mobile-experience .demo-reset{min-height:24px;padding:2px 0;font-size:10px}
.mobile-experience .s3-caption{top:89px;bottom:auto;font-size:7px;letter-spacing:.1em}
@media(max-width:350px){.mobile-experience .service-copy h2{font-size:26px}.mobile-experience .service-lead{font-size:10px}.mobile-experience .demo-label{font-size:7px}.mobile-experience .demo-label span{font-size:7px}.mobile-experience .service-demo{padding:11px;height:142px}.mobile-experience .demo-context{font-size:10px}}
@media(max-height:670px){.desktop-experience .service-copy{top:16%}.desktop-experience .service-copy h2{font-size:42px}.desktop-experience .service-lead{margin-top:13px;font-size:13px}.desktop-experience .service-demo{height:152px;margin-top:15px;padding:12px 16px}.mobile-experience .service-copy h2{font-size:28px}.mobile-experience .service-lead{font-size:10.5px;margin-top:10px}.mobile-experience .service-kicker{margin-bottom:8px}.mobile-experience .service-demo{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.service-copy{will-change:auto}}
