.journey{position:relative;isolation:isolate;overflow:clip;color:var(--paper);background:#100b18;border-top:1px solid rgba(255,255,255,.12)}
.journey-backdrop{position:absolute;z-index:-2;inset:0;overflow:hidden;pointer-events:none}
.journey-backdrop::before{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(8,7,13,.9) 0%,rgba(11,8,17,.66) 44%,rgba(10,7,15,.84) 100%),linear-gradient(180deg,#0b0b0b 0%,transparent 12%,transparent 85%,#0b0b0b 100%)}
.journey-backdrop::after{content:"";position:absolute;z-index:3;inset:0;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:4rem 4rem;mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 78%,transparent)}
.journey-backdrop img{width:100%;height:120%;object-fit:cover;filter:saturate(.95) contrast(1.08) brightness(.72);transform:scale(1.08);will-change:transform}
.journey-glow{position:absolute;z-index:4;width:24rem;aspect-ratio:1;border-radius:50%;filter:blur(70px);mix-blend-mode:screen;opacity:.16;will-change:transform}
.journey-glow--one{top:18%;left:26%;background:var(--accent-violet)}
.journey-glow--two{right:8%;bottom:16%;background:var(--accent-magenta)}
.journey-layout{width:100%;padding:var(--space-section) var(--gutter);display:grid;grid-template-columns:minmax(18rem,.85fr) minmax(24rem,1fr);gap:clamp(3rem,8vw,9rem);align-items:start}
.journey-heading{position:sticky;top:calc(5.75rem + 3rem);padding-bottom:3rem}
.journey-heading .section-meta{padding-top:0}
.journey-kicker{margin-top:clamp(3rem,7vw,6rem);color:rgba(255,255,255,.52);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}
.journey-heading h2{max-width:42rem;margin-top:1.1rem;font-family:var(--font-display);font-size:clamp(3rem,5.8vw,5.6rem);font-weight:900;letter-spacing:-.07em;line-height:.9}
.journey-heading h2 em{display:block;margin-top:.2em;color:#e4c9ff;font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.96}
.journey-intro{max-width:34rem;margin-top:2rem;color:rgba(244,247,255,.66);font-size:clamp(.9rem,1.25vw,1.05rem)}
.journey-index{width:min(100%,15rem);margin-top:2.5rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;color:rgba(255,255,255,.55);font-family:var(--font-mono);font-size:.6rem}
.journey-index span:first-child{color:var(--accent-magenta)}
.journey-index i{height:1px;background:rgba(255,255,255,.23);position:relative;overflow:hidden}
.journey-index i::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--accent-violet),var(--accent-magenta));transform:scaleX(var(--journey-index-progress,.333));transform-origin:left}
.journey-timeline{position:relative;padding-left:3.5rem}
.journey-line{position:absolute;top:2rem;bottom:2rem;left:.78rem;width:1px;background:rgba(255,255,255,.16);overflow:hidden}
.journey-line>span{position:absolute;inset:0;background:linear-gradient(180deg,var(--accent-violet),var(--accent-magenta));transform:scaleY(1);transform-origin:top;box-shadow:0 0 1rem rgba(239,121,199,.75)}
.has-gsap .journey-line>span{transform:scaleY(0)}
.journey-item{min-height:68svh;padding-block:clamp(3rem,12vh,7rem);display:flex;align-items:center;position:relative;opacity:1;transition:opacity .45s var(--ease)}
.has-gsap .journey-item{opacity:.42}
.journey-item.is-active{opacity:1}
.journey-dot{position:absolute;left:-3.5rem;top:50%;width:1.65rem;height:1.65rem;border:1px solid rgba(255,255,255,.24);border-radius:50%;display:grid;place-items:center;background:rgba(13,9,19,.72);transform:translateY(-50%);transition:border-color .4s,box-shadow .4s,transform .5s var(--ease)}
.journey-dot span{width:.42rem;height:.42rem;border-radius:50%;background:rgba(255,255,255,.45);transition:background .4s,transform .5s var(--ease)}
.journey-item.is-active .journey-dot{border-color:var(--accent-magenta);box-shadow:0 0 0 .4rem rgba(239,121,199,.09),0 0 1.8rem rgba(168,124,255,.38);transform:translateY(-50%) scale(1.08)}
.journey-item.is-active .journey-dot span{background:#ffd8f3;transform:scale(1.2)}
.journey-card{width:100%;padding:clamp(1.5rem,3vw,2.5rem);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);background:linear-gradient(145deg,rgba(30,19,43,.68),rgba(12,10,18,.6));box-shadow:0 2rem 5rem rgba(0,0,0,.24);backdrop-filter:blur(16px) saturate(118%);transform:scale(.98);transition:border-color .45s,background .45s,transform .55s var(--ease),box-shadow .45s}
.journey-item.is-active .journey-card{border-color:rgba(216,177,255,.38);background:linear-gradient(145deg,rgba(51,29,71,.75),rgba(15,11,22,.72));box-shadow:0 2rem 6rem rgba(19,8,30,.42);transform:none}
.journey-card__meta{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:rgba(255,255,255,.58);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
.journey-card__meta>*:first-child{color:#f2d8ff}
.journey-now{display:inline-flex;align-items:center;gap:.45rem;color:#ffe5f6}
.journey-now i{width:.45rem;height:.45rem;border-radius:50%;background:var(--accent-magenta);box-shadow:0 0 0 .25rem rgba(239,121,199,.13);animation:journey-pulse 1.8s ease-in-out infinite}
.journey-item--current .journey-card{background:linear-gradient(145deg,rgba(70,34,89,.78),rgba(18,12,25,.76))}
.journey-item--current.is-active .journey-card{border-color:rgba(247,184,226,.58);box-shadow:0 2rem 6rem rgba(61,19,67,.38),inset 0 1px rgba(255,255,255,.08)}
.journey-item--current .journey-dot span{background:var(--accent-magenta)}
.journey-card h3{max-width:32rem;margin-top:clamp(3rem,8vw,6rem);font-size:clamp(1.8rem,3.4vw,3.2rem);letter-spacing:-.05em;line-height:.98}
.journey-card p{max-width:31rem;margin-top:1.25rem;color:rgba(244,247,255,.67);font-size:.86rem}
.journey-card ul{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.45rem}
.journey-card li{padding:.4rem .65rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:rgba(255,255,255,.72);font-family:var(--font-mono);font-size:.54rem;text-transform:uppercase}
@media(max-width:900px){.journey-layout{grid-template-columns:1fr;gap:1rem}.journey-heading{position:relative;top:auto;padding-bottom:0}.journey-heading h2{max-width:44rem}.journey-intro{max-width:42rem}.journey-index{display:none}.journey-timeline{padding-left:2.75rem}.journey-line{left:.61rem}.journey-item{min-height:auto;padding-block:2.5rem}.journey-dot{left:-2.75rem;width:1.3rem;height:1.3rem}.journey-card h3{margin-top:3.5rem}.journey-backdrop::before{background:linear-gradient(180deg,rgba(9,7,14,.9),rgba(11,8,17,.65) 40%,rgba(9,7,14,.9)),linear-gradient(180deg,#0b0b0b,transparent 12%,transparent 88%,#0b0b0b)}}
@media(max-width:600px){.journey-layout{padding-block:5.5rem}.journey-heading h2{font-size:clamp(2.8rem,13vw,4.2rem)}.journey-kicker{margin-top:3rem}.journey-timeline{margin-top:2rem;padding-left:2.15rem}.journey-line{left:.48rem}.journey-dot{left:-2.15rem;width:1rem;height:1rem}.journey-dot span{width:.3rem;height:.3rem}.journey-card{padding:1.25rem;border-radius:1.15rem}.journey-card__meta{align-items:flex-start;flex-direction:column;gap:.35rem}.journey-card h3{margin-top:2.5rem;font-size:clamp(1.7rem,9vw,2.5rem)}.journey-card p{font-size:.82rem}.journey-backdrop img{height:110%}}
@keyframes journey-pulse{50%{transform:scale(.72);opacity:.58;box-shadow:0 0 0 .5rem rgba(239,121,199,.06)}}
@media(prefers-reduced-motion:reduce){.journey-backdrop img,.journey-glow{will-change:auto}.has-gsap .journey-item{opacity:1}.has-gsap .journey-line>span{transform:scaleY(1)}.journey-item,.journey-card,.journey-dot,.journey-dot span{transition:none}.journey-now i{animation:none}}
