/* A continuous trip from the range, through the real display plane, into coaching. */
.phone-journey{position:relative;background:var(--paper);--journey-world-scale:1;--journey-world-x:0px;--journey-world-y:0px;--journey-world-opacity:1;--journey-phone-opacity:0;--journey-copy-opacity:0;--journey-cue-opacity:1;--journey-nav:76px}
.journey-pin{position:relative;isolation:isolate;overflow:hidden;background:var(--paper)}
.journey-world{position:relative;aspect-ratio:16/9;transform-origin:center;z-index:1}
.journey-world>img,.journey-world>video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.journey-world>video,.journey-phone>video{opacity:0}
.journey-world>video[data-frame-ready='true'],.journey-phone>video[data-frame-ready='true']{opacity:1}
.journey-phone-anchor,.journey-phone{display:none}
.journey-opening,.journey-scroll-cue,.journey-footer{display:none}
.journey-chapters{max-width:1680px;padding:65px var(--edge);margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.journey-chapter .kicker{margin-bottom:22px}.journey-chapter h2{font-size:clamp(30px,3.6vw,56px);max-width:530px}.journey-chapter>p:last-child{margin-top:26px;max-width:350px;font-size:15px;color:var(--muted);line-height:1.8}
.journey-caption{display:flex;justify-content:space-between;gap:35px;padding-block:22px;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted)}.journey-caption p{max-width:520px}
.phone-journey[data-journey-mode='scroll']{height:360svh;min-height:1800px}
.phone-journey[data-journey-mode='scroll'] .journey-pin{position:sticky;top:var(--journey-nav);height:calc(100svh - var(--journey-nav));min-height:480px}
.phone-journey[data-journey-mode='scroll'] .journey-world{position:absolute;inset:0;aspect-ratio:auto;opacity:var(--journey-world-opacity);transform:translate(var(--journey-world-x),var(--journey-world-y)) scale(var(--journey-world-scale));will-change:transform,opacity}
.phone-journey[data-journey-mode='scroll'] .journey-phone-anchor{display:block;position:absolute;width:auto;height:min(71.625vh,700px,76%);aspect-ratio:480/1044;left:73%;top:51%;transform:translate(-50%,-50%);visibility:hidden;pointer-events:none}
.phone-journey[data-journey-mode='scroll'] .journey-phone{display:block;position:absolute;left:0;top:0;width:480px;height:1044px;transform-origin:0 0;transform:var(--journey-phone-transform);opacity:var(--journey-phone-opacity);border-radius:48px;overflow:hidden;outline:6px solid #152721;background:#10231e;z-index:3;will-change:transform,opacity;box-shadow:0 30px 90px #182a211f}
.journey-phone img,.journey-phone video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.phone-journey[data-journey-mode='scroll'] .journey-chapters{display:block;position:absolute;inset:0;padding:0;max-width:none;margin:0;z-index:4;pointer-events:none;opacity:var(--journey-copy-opacity)}
.phone-journey[data-journey-mode='scroll'] .journey-chapter{position:absolute;left:var(--edge);top:50%;width:41%;transform:translateY(-50%);opacity:0;visibility:hidden}
.phone-journey[data-journey-mode='scroll'] .journey-chapter[data-active='true']{opacity:1;visibility:visible}
.phone-journey[data-journey-mode='scroll'] .journey-chapter h2{font-size:clamp(44px,5.25vw,82px);line-height:1.05;letter-spacing:-.055em}
.phone-journey[data-journey-mode='scroll'] .journey-opening{display:block;position:absolute;left:var(--edge);bottom:42px;z-index:4;color:var(--ink);background:#f6f5efed;padding:17px 22px;opacity:var(--journey-cue-opacity);pointer-events:none}
.journey-opening .kicker{font-size:9px}.journey-opening>p{font-size:13px;margin-top:5px}
.phone-journey[data-journey-mode='scroll'] .journey-scroll-cue{display:flex;align-items:center;gap:22px;position:absolute;right:var(--edge);bottom:42px;z-index:4;padding:14px 20px;background:#f6f5efed;font-size:11px;font-weight:600;opacity:var(--journey-cue-opacity);pointer-events:none}
.journey-scroll-cue>span:last-child{font-size:22px}
.phone-journey[data-journey-mode='scroll'] .journey-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;position:absolute;left:var(--edge);right:max(var(--edge),80px);bottom:30px;z-index:4;opacity:var(--journey-copy-opacity);font-size:10px;color:var(--muted);pointer-events:none}
.journey-track{display:flex;gap:24px}.journey-track>span{position:relative;padding-top:12px;width:42px;border-top:1px solid var(--line);font-size:10px;transition:color .25s,border-color .25s}.phone-journey[data-journey-chapter='0'] [data-journey-dot='0'],.phone-journey[data-journey-chapter='1'] [data-journey-dot='1'],.phone-journey[data-journey-chapter='2'] [data-journey-dot='2']{border-color:var(--ink);color:var(--ink)}
.phone-journey[data-journey-mode='scroll'] .journey-caption{position:absolute;top:100%;left:0;right:0;background:var(--paper);z-index:5}
.phone-journey + .practice-section{padding-top:155px}
@media(max-width:900px){.phone-journey{--journey-nav:68px}.journey-chapters{gap:25px}.journey-chapter>p:last-child{font-size:13px}.phone-journey[data-journey-mode='scroll'] .journey-chapter h2{font-size:clamp(37px,5.7vw,56px)}.phone-journey[data-journey-mode='scroll'] .journey-phone-anchor{left:74%;height:min(65vh,73%,69.6vw);width:auto}.journey-caption{font-size:10px}}
@media(max-width:640px){.phone-journey{--journey-nav:66px}.phone-journey[data-journey-mode='scroll']{height:340svh;min-height:1700px}.phone-journey[data-journey-mode='scroll'] .journey-pin{min-height:540px}.phone-journey[data-journey-mode='scroll'] .journey-phone-anchor{left:50%;top:31%;height:min(48svh,405px);width:auto}.phone-journey[data-journey-mode='scroll'] .journey-chapter{left:var(--edge);right:var(--edge);width:auto;top:61%;transform:none}.phone-journey[data-journey-mode='scroll'] .journey-chapter .kicker{font-size:10px;margin-bottom:12px}.phone-journey[data-journey-mode='scroll'] .journey-chapter h2{font-size:clamp(31px,9.2vw,43px);line-height:1.08;max-width:340px}.journey-chapter>p:last-child{font-size:13px;line-height:1.65;max-width:340px;margin-top:14px}.phone-journey[data-journey-mode='scroll'] .journey-world>img,.phone-journey[data-journey-mode='scroll'] .journey-world>video{object-position:center top}.phone-journey[data-journey-mode='scroll'] .journey-opening{top:calc(56.25vw + 38px);left:var(--edge);bottom:auto;right:var(--edge);background:none;padding:0}.journey-opening>p{font-size:34px;max-width:290px;line-height:1.15;letter-spacing:-.055em;font-weight:600;margin-top:17px}.phone-journey[data-journey-mode='scroll'] .journey-scroll-cue{left:var(--edge);right:var(--edge);bottom:65px;justify-content:space-between;background:none;padding:0;font-size:12px}.phone-journey[data-journey-mode='scroll'] .journey-footer{bottom:23px;align-items:end;gap:20px;font-size:9px}.journey-footer>p{max-width:150px;text-align:right}.journey-track{gap:12px}.journey-track>span{width:28px;font-size:9px;padding-top:9px}.journey-caption{flex-direction:column;gap:8px;font-size:10px;padding-block:20px}.phone-journey + .practice-section{padding-top:165px}.journey-chapters{grid-template-columns:1fr;padding-block:45px;gap:30px}.journey-chapter h2{font-size:32px}.journey-chapter .kicker{margin-bottom:15px}}
@media(max-height:650px) and (min-width:641px){.phone-journey[data-journey-mode='scroll'] .journey-pin{min-height:0}.phone-journey[data-journey-mode='scroll'] .journey-phone-anchor{height:min(70vh,76%);width:auto}.phone-journey[data-journey-mode='scroll'] .journey-chapter h2{font-size:clamp(30px,4vw,42px)}.phone-journey[data-journey-mode='scroll'] .journey-footer{bottom:14px}.journey-chapter>p:last-child{font-size:13px;margin-top:18px}.journey-chapter .kicker{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.phone-journey[data-journey-mode='scroll']{height:auto;min-height:0}.phone-journey[data-journey-mode='scroll'] .journey-pin{position:relative;top:0;height:auto;min-height:0}}
/* Short chapter entrances complement the scroll-driven camera without taking over it. */
.phone-journey[data-journey-mode='scroll'] .journey-chapter{translate:0 16px;transition:none}
.phone-journey[data-journey-mode='scroll'] .journey-chapter[data-active='true']{translate:0 0;transition:opacity .4s ease,translate .6s cubic-bezier(.16,1,.3,1)}
@media(prefers-reduced-motion:reduce){.journey-chapter{translate:none!important;transition:none!important}}
