.ai-process{--process-header:88px;background:#090a10;border-block:1px solid #ffffff16}
.ai-process.is-scroll{height:300svh}
.ai-process-stage{padding:38px 48px 28px;display:flex;flex-direction:column;align-items:center;min-height:730px;overflow:clip}
.ai-process.is-scroll .ai-process-stage{position:sticky;top:var(--process-header);height:calc(100svh - var(--process-header));min-height:0}
.ai-process-heading{text-align:center;flex-shrink:0}
.ai-process-heading .eyebrow{margin-bottom:17px;font-size:9px}
.ai-process-heading h2{font-size:clamp(32px,4vw,56px);letter-spacing:-.055em;line-height:1.1}
.ai-process-visual{width:min(1250px,100%);flex:1;min-height:0;display:flex;align-items:center;justify-content:center}
.ai-process-visual svg{display:block;width:100%;height:100%;max-height:540px;overflow:visible}
.ai-process .flow-guide{fill:none;stroke:#a48ebc;stroke-width:.6;opacity:.1}
.ai-process .flow-line{fill:none;stroke-width:.85;stroke-linecap:round;stroke:url(#process-flow-ink)}
.ai-process .flow-packet{fill:#f7d6e7}
.ai-process .source-dot{fill:#e5d9ee}
.ai-process .flow-node .node-body{fill:#0d0e17;stroke:#9784ad;stroke-width:1.1}
.ai-process .flow-node .node-icon{fill:none;stroke:#dfcbe7;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ai-process .flow-node text{fill:#b1a6be;font:12px Arial,'Apple SD Gothic Neo',sans-serif;text-anchor:middle;letter-spacing:.04em}
.ai-process .flow-node .node-aura{fill:none;stroke:#cf8fb7;stroke-width:.7;opacity:.25}
.ai-process .flow-node .node-dot{fill:#df90b7}
.ai-process-footer{width:min(900px,100%);flex-shrink:0}
.ai-process-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.ai-process-caption strong{font-size:14px;font-weight:400;color:#d4c0df}
.ai-process-caption span{font:8px monospace;letter-spacing:.12em;color:#877b96}
.ai-process-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.ai-process-steps button{position:relative;text-align:left;padding:14px 0 0;font-size:11px;color:#84798d;background:none;border-top:1px solid #ffffff18}
.ai-process-steps button:before{content:'';position:absolute;height:1px;left:0;right:0;top:-1px;background:linear-gradient(90deg,#d48ba9,#9d8ad2);transform:scaleX(var(--fill,0));transform-origin:left}
.ai-process-steps button[aria-current=step]{color:#f3e7f5}
.ai-process:not(.is-scroll) .ai-process-visual{height:500px;flex:auto}
@media(max-width:700px){
 .ai-process{--process-header:72px}.ai-process-stage{padding:24px 20px 22px;min-height:0}
 .ai-process-heading .eyebrow{margin-bottom:13px;font-size:8px}.ai-process-heading h2{font-size:32px}
 .ai-process-visual svg{max-height:none}.ai-process-footer{margin-top:8px}
 .ai-process-caption{margin-bottom:16px}.ai-process-caption strong{font-size:12px}
 .ai-process-steps{gap:12px}.ai-process-steps button{font-size:10px;padding-top:12px;white-space:nowrap}
 .ai-process:not(.is-scroll) .ai-process-visual{height:550px}
}
@media(prefers-reduced-motion:reduce){.ai-process.is-scroll{height:auto}.ai-process.is-scroll .ai-process-stage{position:relative;top:auto;height:auto}}

/* Purely visual process: accessible names remain available to screen readers. */
.ai-process-visual{width:min(1500px,100%)}
.ai-process-visual svg{max-height:700px}
.ai-process-steps{display:flex;justify-content:center;gap:16px}
.ai-process-steps button{border:0;padding:14px;width:38px;height:38px;display:grid;place-items:center}
.ai-process-steps button:before{display:none}
.ai-process-steps button span{width:5px;height:5px;border-radius:50%;background:#ffffff35;transition:background .3s,box-shadow .3s}
.ai-process-steps button[aria-current=step] span{background:#ead3ef;box-shadow:0 0 12px #c9a0df}
.ai-process-steps button:focus-visible{outline:1px solid #c9a0df;border-radius:50%}
.source-symbol path,.audience-icon{fill:none;stroke:#d9c9e4;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.youtube-node .node-aura{stroke:#ff455c;opacity:.4}
@media(max-width:700px){.ai-process-stage{padding:24px 12px 18px}.ai-process-visual svg{max-height:none}.ai-process:not(.is-scroll) .ai-process-visual{height:710px}}

/* Slow, soft packets make the direction readable without flashing. */
.signal-light{pointer-events:none}
.signal-halo{fill:#ca9fe8;opacity:.19;filter:blur(2px)}
.signal-core{fill:#fff1ff;filter:drop-shadow(0 0 3px #e3b6ff)}
@media(prefers-reduced-motion:reduce){.signal-light{display:none}}

.ai-process-visual{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
@media(max-width:700px){.ai-process-visual{mask-image:linear-gradient(180deg,transparent,#000 9%,#000 90%,transparent)}}

.ai-process .source-symbol path{stroke:#f0e5f7;stroke-width:1.5}

.ai-process .audience-node{filter:none}
