#lead-sale.home-journey{height:1900svh;position:relative;background:#fff}.home-journey-stage{position:sticky;top:69px;height:calc(100svh - 69px);overflow:clip;isolation:isolate}#home-journey-art{display:block;width:100%;height:100%}.journey-anchor{position:absolute;top:44%;scroll-margin-top:69px}.journey-copy{position:absolute;top:5%;left:8%;right:8%;text-align:center;pointer-events:none}.journey-copy h2{font-size:clamp(30px,4vw,58px);line-height:1.04;letter-spacing:-.05em;margin:12px 0}.journey-copy p{font-size:clamp(14px,1.5vw,20px);line-height:1.4;max-width:720px;margin:auto}.journey-actions{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;gap:12px}.journey-actions a{font-size:12px;background:#fffffff0;margin:0}.journey-description{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#journey-steps{position:absolute;bottom:72px;left:12px;right:12px;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}#journey-steps[hidden]{display:none}#journey-steps button{border:1px solid #49635b;background:#fff;border-radius:20px;padding:8px 12px;color:#183b32;font:inherit;font-size:11px;cursor:pointer}#journey-steps button[aria-pressed=true]{background:#ffdf8c}.eco-after{text-align:center;padding:80px 20px;max-width:900px;margin:auto}.eco-after p{font-size:20px;line-height:1.5}@media(max-width:700px){.journey-copy{left:6%;right:6%;top:4%}.journey-copy h2{font-size:32px}.journey-copy p{font-size:14px}.journey-actions{bottom:12px}}@media(max-height:500px){.journey-copy{top:3%}.journey-copy h2{font-size:24px;margin:6px 0}.journey-copy p{font-size:12px;max-width:600px}.journey-actions{bottom:8px}.journey-actions a{font-size:10px;padding:5px 10px}}@media(prefers-reduced-motion:reduce){#lead-sale.home-journey{height:160svh}}

#lead-sale #ecosystem-arrival.journey-anchor{display:block;padding:0;min-height:0;height:0;width:0;pointer-events:none}

.journey-actions[hidden]{display:none}

.journey-ecosystem{left:8%;right:auto;top:14%;width:40%;text-align:left}.journey-ecosystem h2{font-size:clamp(36px,4.6vw,72px)}.journey-ecosystem p{font-size:clamp(16px,1.5vw,21px)}#journey-motion{position:absolute;right:18px;bottom:76px;border:1px solid #637e83;background:#fffdf1e8;border-radius:20px;color:#233c45;padding:8px 12px;font:inherit;font-size:11px;cursor:pointer}#journey-motion[hidden]{display:none}@media(max-width:700px){.journey-ecosystem{top:6%;left:7%;width:86%;text-align:left}.journey-ecosystem h2{font-size:30px}.journey-ecosystem p{font-size:14px;max-width:320px;margin-left:0}#journey-motion{right:14px;bottom:65px}}@media(max-height:500px){.journey-ecosystem{top:8%;width:43%}.journey-ecosystem h2{font-size:25px}.journey-ecosystem p{font-size:12px}#journey-motion{bottom:46px}}


/* Copy blocks reveal line by line: each line slides up from behind its own mask as the block's --t (set by the script) goes from 0 to 1. */
.journey-copy{--t:0}
.journey-growth{--t:1}
.journey-copy .line{display:block;overflow:clip;padding-block:.08em .14em;margin-block:-.08em -.14em;--l:clamp(0,calc(var(--t) * 1.6 - var(--i,0) * .15),1)}
.journey-copy .line-in{display:block;transform:translateY(calc((1 - var(--l)) * 110%)) rotate(calc((1 - var(--l)) * 3deg));transform-origin:left bottom;opacity:var(--l)}
.journey-copy p .line+.line{margin-top:-.08em}
.journey-mark{position:relative;isolation:isolate;white-space:nowrap}
.journey-mark::before{content:"";position:absolute;z-index:-1;left:0;width:100%;bottom:-.02em;height:.62em;background:var(--rc-color-lime);clip-path:var(--rc-marker-path)}
.journey-ecosystem p{margin-left:0}
@media(prefers-reduced-motion:reduce){.journey-copy .line-in{transform:none}}
/* Phones step the journey copy down within the approved type scale so it stays above the funnel rim and clear of the path. */
@media(max-width:700px){:root .home-journey .journey-copy p{font-size:var(--rc-type-caption);line-height:1.4}}
@media(max-width:700px) and (max-height:700px){.journey-growth{top:2%}:root .home-journey .journey-growth h2{font-size:var(--rc-type-card);margin:4px 0 8px}}
/* On shorter desktop screens the funnel sentences share one line so the copy stays above the funnel rim. */
@media(min-width:701px) and (max-height:820px){.journey-growth p .line{display:inline-block;margin-inline:0 .3em}}
@media(max-width:700px) and (max-height:700px){:root .home-journey .journey-ecosystem h2{font-size:var(--rc-type-card);margin:4px 0 8px}}
/* The funnel copy sits left-aligned in the same column as the ecosystem copy. */
.journey-growth{left:8%;right:auto;width:min(84%,720px);text-align:left}
.journey-growth p{margin-left:0}
@media(max-width:700px){.journey-growth{left:6%;width:88%}}
@media(max-width:700px){:root .home-journey .journey-growth h2{font-size:var(--rc-type-card);margin:4px 0 8px}}
