/* Physical travel only. Stable pins, layout and background coverage stay intact. */
:root{--pacing-hero:473svh;--pacing-inside:319svh;--range-travel:424svh;--pacing-demo:159svh}
.hero-story{height:calc(100svh + var(--pacing-hero) + var(--pacing-inside))}
.inside-travel{height:var(--pacing-inside)}
.demo-enhanced .demo-story{height:calc(100svh - 90px + var(--pacing-demo))}
.demo-compact .demo-story{height:calc(min(720px,100svh - var(--demo-top) - 12px) + var(--pacing-demo))}
@media(max-width:600px){:root{--pacing-hero:374svh;--pacing-inside:284svh;--range-travel:356svh;--pacing-demo:175svh}}
.reduced-scene .hero-story{height:200svh}.reduced-scene .inside-travel{height:100svh}
@media(prefers-reduced-motion:reduce){.hero-story{height:200svh}.inside-travel{height:100svh}}

/* Founder correction: the animation/reveal hold stays unchanged. Give its
   following CTA a short native sticky read window before ordinary release. */
.demo-enhanced .process-close{position:sticky;top:clamp(100px,26svh,220px)}
.demo-enhanced::after{content:"";display:block;height:24svh;pointer-events:none}
@media(max-width:600px){.demo-enhanced::after{height:28svh}}

/* Protect the context sentence above the settled screen, including wrapped
   phone copy. Anchor to each breakpoint's screen top rather than text height. */
.range-context{top:auto;bottom:calc(74% + 20px)}
@media(max-width:1100px){.range-context{top:auto;bottom:calc(73% + 20px)}}
@media(max-width:600px){.range-context{top:auto;bottom:calc(51% + 27svh + 18px)}}
@media(max-width:600px) and (max-height:650px){
 .range-showroom .showcase{top:50%}
 .range-context{top:auto;bottom:calc(50% + 24.5svh + 16px)}
 .range-context h3{line-height:1.15}.range-context>p{margin-top:4px}
}
@media(max-width:359px) and (max-height:550px){.range-showroom .showcase{top:53%}.range-context{bottom:calc(47% + 24.5svh + 16px)}}

/* Desktop only: remove repeated vertical whitespace, keep the same two
   columns and all content. The pricing surface spans the left column's
   introduction, three steps and reassurance, rather than sitting below it. */
@media(min-width:1101px){
 .website-offer{padding:96px 0 64px}
 .offer-wrap{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);gap:10px 30px;padding-top:0;border-top:0}
 .offer-intro{grid-column:1;grid-row:1;margin:0;max-width:none;text-align:center}
 .offer-eyebrow{margin:0 0 8px}
 .offer-intro h2{font-size:clamp(38px,4.7svh,46px);line-height:1.06;margin:0}
 .offer-intro h2 br{display:none}
 .offer-body{display:contents}
 .delivery-timeline{grid-column:1;grid-row:2;grid-template-rows:repeat(3,auto);align-content:start}
 .delivery-stage{height:auto;min-height:clamp(120px,17svh,154px);padding:8px 0;gap:12px;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}
 .delivery-stage h3{font-size:clamp(26px,3.6svh,30px);margin-bottom:7px}
 .delivery-copy{font-size:13px;line-height:1.5;max-width:44ch}
 .delivery-payment{margin-top:6px}
 .service-object{height:clamp(108px,15svh,140px);margin:0}
 .product-art{width:100%;height:100%;max-height:140px}
 .purchase-rail{grid-column:2;grid-row:1 / span 3;align-self:start}
 .purchase-widget{position:relative;top:auto;min-height:0;height:auto;padding:16px}
 .purchase-top{min-height:20px}.purchase-mark{height:20px}.purchase-mark i{height:20px}.purchase-mark i:nth-child(2){height:15px}.purchase-mark i:nth-child(3){height:10px}
 .purchase-widget .purchase-price{margin:6px 0}.purchase-widget .purchase-price>p{font-size:54px}
 .purchase-widget .purchase-payments{padding:6px 0;margin-bottom:7px}
 .purchase-payments dd{margin-top:3px}.purchase-widget .purchase-payments strong{font-size:24px}
 .purchase-widget .purchase-cta{padding:9px 15px;min-height:44px}
 .purchase-widget .purchase-reassurance{margin:5px 0 0;line-height:1.5}
 .purchase-widget .purchase-includes{margin:8px 0 0;padding-top:8px}
 .purchase-includes h4{margin-bottom:7px}
 .purchase-includes .included-list{gap:5px 12px}
 #purchase-included-content>p{margin-top:7px;line-height:1.5}
 .purchase-widget .purchase-credit{padding:8px 10px;margin-top:8px}
 .purchase-widget .purchase-credit>p[data-credit-description]{margin-top:4px}
 .purchase-widget .credit-outcome{margin-top:4px}.purchase-widget .credit-condition{margin-top:4px}
 .purchase-footer{margin-top:7px;padding-top:4px;gap:8px}
 .purchase-footer .purchase-demo{line-height:1.5}
 .offer-trust{grid-column:1;grid-row:3;gap:18px;margin-top:0;padding-top:12px}
 .offer-trust h3{font-size:16px;line-height:1.2}
 .offer-trust p{font-size:11px;line-height:1.5;margin-top:5px}
 .after-wrap{padding:96px 60px 64px}
 .after-intro{margin-bottom:16px}.after-eyebrow{margin-bottom:8px}
 .after-intro h2{font-size:clamp(42px,5.8svh,54px)}
 .continuity-widgets .after-option{padding:18px}
 .continuity-widgets .module-label{margin-bottom:8px}
 .continuity-widgets h3{font-size:25px;margin-bottom:10px}
 .continuity-widgets .after-status strong{font-size:34px}
 .continuity-widgets .after-terms{margin-top:8px;line-height:1.5}
 .continuity-widgets .widget-includes{margin:12px 0 12px;padding-top:10px}
 .continuity-widgets .widget-includes h4{margin-bottom:9px}
 .continuity-widgets .included-list{gap:6px}
 .continuity-widgets .included-list li{font-size:12px;line-height:1.5}
 .after-close{margin-top:16px;padding-top:13px;gap:24px}
 .after-close h3{font-size:28px}
}
@media(min-width:1101px) and (max-height:750px){
 .offer-wrap{row-gap:8px}.offer-eyebrow{margin-bottom:6px}
 .delivery-stage{padding-block:7px}
 .purchase-widget{padding:14px}.purchase-widget .purchase-price>p{font-size:52px}
 .offer-trust{padding-top:10px}.offer-trust p{line-height:1.4}
}

/* Narrow desktop follow-up; tablet and phone clocks remain unchanged. */
@media(min-width:1101px){:root{--pacing-inside:315svh;--range-travel:428svh}}
