.fx{border-bottom:1px solid var(--line);padding:0}.fx-stage{padding:110px 0 120px}.fx-intro{margin-bottom:52px}.fx-title{letter-spacing:-.02em;margin-top:18px;font-size:clamp(30px,4vw,48px);font-weight:700;line-height:1.08}.fx-title em,.fx-h em{color:var(--cyan);font-style:normal}.fx-scenes{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.fx-scene{border:1px solid var(--line);background:#0a0f1a8c;padding:28px 26px 30px}.fx-step{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--amber);align-items:center;gap:9px;font-size:10.5px;display:inline-flex}.fx-step:before{content:"";background:var(--amber);border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #ffa435b3}.fx-h{letter-spacing:-.02em;margin:14px 0 0;font-size:clamp(22px,2.2vw,28px);font-weight:700;line-height:1.12}.fx-p{color:var(--ink-2);margin-top:12px;font-size:14.5px;line-height:1.7}.fx-visual,.fx-chapters,.fx-skip{display:none}.fx-on .fx-track{height:460svh}.fx-on .fx-stage{height:100svh;padding:74px 0 0;position:sticky;top:0;overflow:hidden}.fx-on .fx-wrap{max-width:1400px;height:100%}.fx-on .fx-col{flex-direction:column;justify-content:safe center;gap:34px;width:min(36%,440px);height:100%;padding:28px 0 36px;display:flex}.fx-on .fx-intro,.fx-on .fx-scenes,.fx-on .fx-chapters,.fx-on .fx-skip{z-index:2;position:relative}.fx-on .fx-intro{margin:0}.fx-on .fx-title{letter-spacing:0;color:var(--ink-2);margin-top:10px;font-size:15px;font-weight:500;line-height:1.5}.fx-on .fx-title em{color:inherit}.fx-on .fx-scenes{grid-template-columns:minmax(0,1fr);gap:0;display:grid}.fx-on .fx-scene{background:0 0;border:0;grid-area:1/1;padding:0}.fx-on .fx-h{letter-spacing:-.03em;font-size:clamp(34px,3.6vw,54px);line-height:1.04}.fx-on .fx-p{max-width:36ch;margin-top:18px;font-size:16px}.fx-on .fx-visual{z-index:1;width:66%;display:block;position:absolute;top:74px;bottom:0;right:0;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 14%);mask-image:linear-gradient(90deg,#0000 0,#000 14%)}.fx-globe,.fx-art{width:100%;height:100%;position:absolute;inset:0}.fx-on .fx-chapters{gap:14px;padding-left:22px;display:grid;position:relative}.fx-rail{background:#94b2e029;width:2px;position:absolute;top:6px;bottom:6px;left:5px}.fx-fill{background:var(--amber);transform-origin:50% 0;transform:scaleY(var(--fx-p,0));position:absolute;inset:0}.fx-dot{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);cursor:pointer;transition:color .3s var(--ease);background:0 0;border:0;justify-self:start;padding:0;font-size:10.5px;position:relative}.fx-dot:before{content:"";background:var(--bg);width:12px;height:12px;transition:background-color .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);border:2px solid #33415a;border-radius:50%;margin-top:-6px;position:absolute;top:50%;left:-22px}.fx-dot.is-done:before{background:var(--amber);border-color:var(--amber)}.fx-dot.is-on{color:var(--ink)}.fx-dot.is-on:before{background:var(--amber);border-color:var(--amber);box-shadow:0 0 0 5px #ffa43529,0 0 14px #ffa43599}.fx-dot:hover{color:var(--ink)}.fx-dot:focus-visible{outline:1px solid var(--cyan);outline-offset:4px}.fx-on .fx-skip{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);align-self:flex-start;gap:8px;font-size:10.5px;display:inline-flex}.fx-on .fx-skip:hover,.fx-on .fx-skip:focus-visible{color:var(--cyan)}.fx-art{font-family:var(--mono);overflow:visible}.fx-art .sc{opacity:0}.chip-bg{fill:#080c15e6;stroke:#94b2e038;stroke-width:1px}.chip-label{fill:#6c7c97;letter-spacing:.16em;font-size:9.5px}.chip-text{fill:#e9eef7;font-family:var(--sans);font-size:14px;font-weight:600}.chip-led{fill:#38b6ff}.chip-led.ok{fill:#43e97b;filter:drop-shadow(0 0 4px #43e97be6)}.chip-led.warn{fill:#ffa435;filter:drop-shadow(0 0 4px #ffa435e6)}.chip-led.bad{fill:#ff5a5f;filter:drop-shadow(0 0 4px #ff5a5fe6)}@keyframes fxSpin{to{transform:rotate(360deg)}}@keyframes fxPulse{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(2.1)}}@keyframes fxBlink{50%{opacity:0}}@keyframes fxRoad{to{stroke-dashoffset:-46px}}@keyframes fxFlow{to{stroke-dashoffset:-16px}}#circuit,.hud{transition:opacity .6s var(--ease)}body.fx-quiet #circuit,body.fx-quiet .hud{opacity:0}.fx-jumped:focus{outline:none}.fx:not(.fx-live) .fx-art *,.fx-art .sc:not(.is-active) *{animation-play-state:paused}@media (width<=1100px){.fx-scenes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (height<=780px) and (width>=901px){.fx-on .fx-col{gap:20px;padding:14px 0 18px}.fx-on .fx-title{display:none}.fx-on .fx-h{font-size:clamp(28px,2.7vw,40px)}.fx-on .fx-p{margin-top:12px;font-size:14.5px;line-height:1.6}.fx-on .fx-chapters{gap:9px}}@media (width<=900px){.fx-scenes{grid-template-columns:minmax(0,1fr);gap:14px}.fx-on .fx-col{justify-content:flex-start;gap:14px;width:100%;padding:18px 0 16px}.fx-on .fx-intro{display:none}.fx-on .fx-h{font-size:clamp(26px,7.6vw,34px)}.fx-on .fx-p{margin-top:10px;font-size:14.5px;line-height:1.6}.fx-on .fx-visual{flex:auto;width:auto;min-height:0;margin:0 -20px;position:relative;top:auto;bottom:auto;right:auto;-webkit-mask-image:linear-gradient(#0000 0,#000 10%);mask-image:linear-gradient(#0000 0,#000 10%)}.fx-on .fx-chapters{justify-content:space-between;gap:0;padding:4px 6px 0;display:flex}.fx-rail{width:auto;height:2px;inset:13px 12px auto}.fx-fill{transform-origin:0;transform:scaleX(var(--fx-p,0))}.fx-dot{justify-self:auto;width:20px;height:20px;font-size:0}.fx-dot:before{left:4px}.fx-on .fx-skip{display:none}}@media (width<=600px){.fx-art .fx-chips{display:none}}
