/* Audience journeys — the five chapters shared by the home page and /for/{segment}. */
.journeys{padding-top:30px}
.j-bar{position:sticky;top:84px;z-index:15;display:flex;justify-content:center;margin-bottom:30px;padding:0 16px}
.j-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:48px}
.j-rail{position:sticky;top:170px;align-self:start;min-width:0}
.j-rail .who{font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.j-rail h3{font-size:30px;margin:10px 0 12px;font-weight:800}
.j-rail .stakes{color:var(--muted);font-size:14.5px;margin-bottom:26px}
.steps{position:relative;padding-left:26px}
.steps::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line)}
.steps .prog{position:absolute;left:7px;top:6px;width:2px;height:0;background:linear-gradient(var(--v2),var(--teal));box-shadow:0 0 12px var(--v2)}
.steps li{position:relative;padding:9px 0 9px 12px;color:var(--faint);transition:color .3s;cursor:pointer}
.steps li::before{content:"";position:absolute;left:-24px;top:15px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--line2);transition:all .3s}
.steps li b{display:block;font-size:15px}
.steps li span{font-size:12.5px}
.steps li.on{color:#fff}.steps li.on::before{border-color:var(--teal);background:var(--teal);box-shadow:0 0 14px var(--teal)}
.steps li.done::before{border-color:var(--v2);background:var(--v2)}
.j-cta{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}
.chapters{display:flex;flex-direction:column;gap:26px;min-width:0}
.chap{min-height:78vh;display:flex;align-items:center}
.chap>.glass{width:100%;padding:30px;min-width:0}
.ch-n{font:700 12px var(--mono);color:var(--teal);letter-spacing:.14em;text-transform:uppercase}
.ch-t{font-size:26px;font-weight:800;margin:8px 0 6px;letter-spacing:-.02em;line-height:1.15}
.ch-s{color:var(--muted);font-size:14.5px;margin-bottom:22px;max-width:560px}

/* 1. the moment */
.moment{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:center}
.phone{border-radius:34px;padding:12px;background:#0b0918;border:1px solid var(--line2);box-shadow:0 30px 80px -30px rgba(146,81,255,.6)}
.phone .scr{border-radius:24px;background:linear-gradient(180deg,#151030,#0c0a1c);padding:16px 12px;min-height:400px}
.phone .clock{text-align:center;font:600 34px var(--sans);letter-spacing:-.03em;margin:6px 0 2px}
.phone .date{text-align:center;color:var(--faint);font-size:11px;margin-bottom:18px}
.notif{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:10px 12px;margin-bottom:8px;font-size:12px;backdrop-filter:blur(10px)}
.notif .app{display:flex;justify-content:space-between;color:var(--faint);font-size:10.5px;margin-bottom:3px}
.notif b{display:block;font-size:12.5px}
.impact{display:grid;gap:12px}
.impact .row{display:flex;gap:14px;align-items:flex-start}
.impact .row i{font-size:20px;color:var(--red)}
.impact .row b{display:block}.impact .row span{color:var(--muted);font-size:13px}

/* 2. we find it */
.feat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
.feat svg{width:20px;height:20px;color:var(--v2)}
.feat b{display:block;font-size:13.5px;margin:8px 0 4px}
.feat span{color:var(--faint);font-size:12px;line-height:1.45;display:block}

/* 3. we prove it */
.evidence{display:grid;grid-template-columns:1.1fr 1fr;gap:18px}
.shot{border-radius:16px;border:1px solid var(--line);overflow:hidden;background:#0d0b1d}
.shot .bar{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);align-items:center}
.shot .bar i{width:9px;height:9px;border-radius:50%;background:var(--line2)}
.shot .bar em{margin-left:10px;font:500 11px var(--mono);color:var(--faint);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.shot .bd{padding:18px;display:flex;gap:14px;align-items:center;min-width:0}
.ava{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#ff7aa8,#9251ff);flex:none;display:grid;place-items:center;font-weight:800;font-size:20px}
.shot .bd b{display:block;font:700 15px var(--mono);overflow:hidden;text-overflow:ellipsis}
.shot .bd span{color:var(--faint);font-size:12px}
.shot .stamp{margin:0 18px 18px;padding:10px 12px;border-radius:12px;border:1px dashed rgba(255,77,109,.45);color:var(--red);font:600 11.5px var(--mono)}
.meters{display:grid;gap:14px}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:12.5px}
.kv dt{color:var(--faint)}.kv dd{font-family:var(--mono)}

/* 4. we take it down */
.tl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative;margin:10px 0 26px}
.tl::before{content:"";position:absolute;left:12%;right:12%;top:22px;height:2px;background:var(--line)}
.tl .fill{position:absolute;left:12%;top:22px;height:2px;width:0;background:linear-gradient(90deg,var(--v2),var(--green));box-shadow:0 0 12px var(--green)}
.tl>div{text-align:center;position:relative}
.tl .dot{width:46px;height:46px;border-radius:50%;margin:0 auto 10px;display:grid;place-items:center;background:#120e26;border:1px solid var(--line2);font-size:18px;color:var(--faint);transition:all .4s;position:relative;z-index:1}
.tl>div.on .dot{color:#fff;background:linear-gradient(135deg,var(--v),var(--v2));border-color:transparent;box-shadow:0 0 22px -2px rgba(146,81,255,.9)}
.tl>div.ok .dot{color:#fff;background:linear-gradient(135deg,#17a86a,var(--green));box-shadow:0 0 22px -2px rgba(47,220,142,.8)}
.tl b{display:block;font-size:13.5px}.tl span{font:500 11.5px var(--mono);color:var(--faint)}
.big3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.big3 strong{display:block;font-size:34px;font-weight:800;letter-spacing:-.04em}
.big3>div>span{color:var(--muted);font-size:12.5px}

/* 5. you stay ahead */
.ws{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px}
.ws-side .lbl{text-align:center;font-size:12.5px;color:var(--muted)}
.ws-side .delta{text-align:center;font:600 11.5px var(--mono);color:var(--green);margin:4px 0 14px}
.ws-side ul{border-top:1px solid var(--line);padding-top:12px}
.ws-side li{font-size:12.5px;padding:6px 0;color:var(--muted);display:flex;align-items:center;gap:8px}
.ws-side li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green)}
.ws-side h6{font:600 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:4px}
.ws-main .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.ws-main .stats strong{display:block;font-size:28px;font-weight:800;letter-spacing:-.03em}
.ws-main .stats span{font-size:12px;color:var(--faint)}
.ws-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:12px 14px;border-radius:14px;background:linear-gradient(90deg,rgba(146,81,255,.18),rgba(67,227,191,.08));border:1px solid rgba(169,92,255,.35);font-size:13px}

@media (max-width:1100px){.j-grid{grid-template-columns:minmax(0,1fr)}.j-rail{position:relative;top:0}}
@media (max-width:760px){
  .moment,.evidence,.ws{grid-template-columns:minmax(0,1fr)}
  .phone{max-width:260px;margin:0 auto}
  .chap{min-height:auto}
  .feat,.big3,.ws-main .stats{grid-template-columns:minmax(0,1fr)}
  .seg>button span{display:none}
  .tl{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}.tl::before,.tl .fill{display:none}
}
