/* One active chapter. Quiet, architectural motion instead of decorative icons. */
.journey{margin-top:22px}
.journey-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.journey-tabs button{position:relative;display:flex;align-items:center;gap:20px;text-align:left;padding:24px 26px;border:1px solid #19616e3b;border-radius:2px;background:transparent;color:var(--teal);transition:background .3s,color .3s,border-color .3s;min-width:0}
.journey-tabs button>span{font-size:12px;font-variant-numeric:tabular-nums;opacity:.65}
.journey-tabs strong{font:400 clamp(21px,2.2vw,31px)/1.2 Manrope,sans-serif;letter-spacing:-.05em}
.journey-tabs i{margin-left:auto;width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.2}
.journey-tabs button:hover{background:#19616e09;border-color:#19616e80}
.journey-tabs button[aria-selected="true"]{background:var(--dark);border-color:var(--dark);color:var(--mint)}
.journey-tabs button[aria-selected="true"] i{background:var(--orange);opacity:1;box-shadow:0 0 12px #ff690040}
.journey-viewport{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border:1px solid #19616e38;border-radius:2px;background:#f2f6f0}
.journey-viewport::-webkit-scrollbar{display:none}
.journey-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5%;flex:0 0 100%;min-width:0;padding:48px;scroll-snap-align:start;scroll-snap-stop:always;outline-offset:-5px}
.journey-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.journey-kicker{font-size:11px;letter-spacing:1.2px;color:var(--muted)}
.mechanism .journey-card h3{font:400 clamp(30px,3.2vw,48px)/1.16 Manrope,sans-serif;letter-spacing:-.055em;margin:32px 0 23px}
.journey-copy>p{font-size:16px;line-height:1.9;color:var(--muted);max-width:390px;margin:0 0 38px;min-height:7.6em}
.journey-tag{font-size:11px;line-height:1.7;letter-spacing:.75px;padding-top:20px;border-top:1px solid var(--line);width:100%}
.journey-art{min-width:0;color:var(--teal);align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-left:8%;border-left:1px solid #19616e18}
.journey-art svg{display:block;width:100%;height:auto;aspect-ratio:1.5;stroke:currentColor;stroke-width:1;overflow:visible}
.journey-art-caption{display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:.9px;color:var(--muted);margin-top:22px}
.art-grid{stroke:#19616e12;stroke-width:.7}
.pitch-orbits{stroke:#19616e38;transform-origin:300px 200px;animation:signal-breathe 5s ease-in-out infinite}
.art-signal{stroke:var(--orange);stroke-width:1.6;stroke-dasharray:1000;stroke-dashoffset:1000;animation:signal-draw 2.2s ease forwards}
.art-core{fill:var(--orange);stroke:none}
.art-markers{stroke:#19616e60}
.pitch-scan{stroke-width:1.3;animation:scan-pass 5s ease-in-out infinite;transform-origin:center}
.build-links{stroke:#19616e50}
.build-nodes{stroke:#19616e80;fill:#f2f6f0}
.build-flow{stroke:var(--orange);stroke-dasharray:28 450;animation:connection-flow 14s linear infinite}
.build-flow path+path{animation-delay:-5s;opacity:.45}
.build-halo{stroke:#19616e20;stroke-dasharray:2 11;transform-origin:300px 200px;animation:connection-orbit 100s linear infinite}
.prove-rings{stroke:#19616e45}
.prove-beam{fill:#19616e06;stroke:#19616e35}
.prove-axis{stroke:#19616e25;stroke-dasharray:3 6}
.prove-rise{stroke:#19616e80;animation:signal-breathe 6s ease-in-out infinite;transform-origin:300px 220px}
.prove-halo{stroke:#ff690060;transform-origin:300px 68px;animation:signal-breathe 4s ease-in-out infinite}
.journey-card[aria-hidden="true"] svg *{animation-play-state:paused}
.journey-card.is-active .journey-copy{animation:chapter-in .5s ease both}
@keyframes chapter-in{from{opacity:.4;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes signal-draw{to{stroke-dashoffset:0}}
@keyframes signal-breathe{0%,100%{opacity:.55;transform:scale(.97)}50%{opacity:1;transform:scale(1)}}
@keyframes scan-pass{0%,100%{transform:translateY(-80px);opacity:0}20%,70%{opacity:.7}85%{transform:translateY(80px);opacity:0}}
@keyframes connection-flow{to{stroke-dashoffset:-956}}
@keyframes connection-orbit{to{transform:rotate(360deg)}}
@media(max-width:1050px){.journey-card{padding:34px;gap:5%}.journey-tabs button{padding:21px;gap:13px}.journey-copy>p{font-size:15px}.journey-art{padding-left:5%}.journey-art-caption{font-size:9px;letter-spacing:.4px}}
@media(max-width:760px){
 .journey{margin-top:15px}.journey-tabs{gap:7px;margin-bottom:12px}
 .journey-tabs button{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px 13px}
 .journey-tabs button>span{font-size:11px}.journey-tabs strong{grid-row:2;grid-column:1/-1;font-size:21px;white-space:nowrap}
 .journey-tabs i{grid-column:2;grid-row:1;width:5px;height:5px}
 .journey-card{grid-template-columns:1fr;gap:26px;padding:27px 24px;align-content:start}
 .journey-kicker{font-size:10px}.mechanism .journey-card h3{font-size:32px;line-height:1.15;margin:24px 0 19px}
 .journey-copy>p{font-size:15px;line-height:1.8;min-height:9em;margin-bottom:25px}
 .journey-tag{font-size:10px;letter-spacing:.5px;padding-top:17px;min-height:52px}
 .journey-art{border-left:0;border-top:1px solid #19616e18;padding:17px 0 0;justify-content:flex-start}
 .journey-art svg{max-height:230px}.journey-art-caption{margin-top:10px;font-size:9px;letter-spacing:.4px;line-height:1.6}
 .mechanism .mechanism-note{align-items:flex-start}.mechanism .mechanism-note .live-dot{margin-top:10px}
}
@media(max-width:370px){.journey-tabs button{padding:14px 10px}.journey-tabs strong{font-size:19px}.journey-card{padding:25px 21px}.mechanism .journey-card h3{font-size:29px}.journey-copy>p{min-height:10.8em}}
@media(prefers-reduced-motion:reduce){.journey-art svg *,.journey-card.is-active .journey-copy{animation:none!important}.art-signal{stroke-dashoffset:0}}
.journey-art svg{stroke-width:1.2}.pitch-orbits{stroke:#19616e70}.build-links{stroke:#19616e80}.prove-rings{stroke:#19616e80}.prove-beam{stroke:#19616e75;fill:#19616e09}.prove-rise{stroke:#19616e}.prove-axis{stroke:#19616e50}
@media(max-width:760px){.journey-tabs{position:sticky;top:8px;z-index:3;background:#e3efeb;padding:4px 0}.journey-art svg{background:radial-gradient(ellipse,#dfece480,transparent 72%)}}

/* One stable layout; only opacity and transform animate. All panels reserve their natural height. */
.journey-viewport{display:grid;overflow:hidden;scroll-snap-type:none;touch-action:pan-y pinch-zoom;isolation:isolate}
.journey-card{grid-area:1/1;width:100%;box-sizing:border-box;visibility:hidden;opacity:0;transform:translate3d(12px,0,0);pointer-events:none;transition:opacity 280ms ease,transform 350ms cubic-bezier(.22,.61,.36,1),visibility 350ms;align-self:stretch}
.journey-card.is-active{visibility:visible;opacity:1;transform:translate3d(0,0,0);pointer-events:auto;z-index:1;transition:opacity 280ms ease,transform 350ms cubic-bezier(.22,.61,.36,1),visibility 0s}
.journey-card.is-active .journey-copy{animation:none}
@media(prefers-reduced-motion:reduce){.journey-card,.journey-card.is-active{transition:none;transform:none}}
