[data-direction=signal]{scroll-padding-top:0;scroll-padding-bottom:0}.signal-rail{--rail-accent:#ff9557;position:fixed;z-index:80;left:16px;top:50%;transform:translateY(-50%);width:56px;padding:5px;background:#080f16c9;border:1px solid #b5d1e023;border-radius:3px;backdrop-filter:blur(20px);transition:width .24s ease,background .24s ease;box-shadow:0 12px 45px #0002}.signal-rail[data-expanded=true]{width:238px;background:#080f16f2;box-shadow:0 16px 60px #0008}.signal-rail[data-active=fonix]{--rail-accent:#ffb888}.signal-rail[data-active=havocshire]{--rail-accent:#d0e69a}.signal-rail button,.signal-rail a{display:flex;align-items:center;position:relative;width:100%;height:52px;gap:15px;padding:0 12px;background:none;border:0;color:#91a3b0;text-align:left;white-space:nowrap}.signal-rail svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.signal-rail .rail-toggle{height:48px;margin-bottom:8px;border-bottom:1px solid #b5d1e023}.rail-chevron{transition:transform .24s;transform-origin:19px 12px}.signal-rail[data-expanded=true] .rail-chevron{transform:rotate(180deg)}.signal-rail .rail-label{opacity:0;visibility:hidden;font:450 12px var(--sans);transition:opacity .16s;letter-spacing:.01em}.rail-label small{display:block;font:9px var(--mono);color:#8b9da9;margin-top:6px;letter-spacing:.02em}.signal-rail[data-expanded=true] .rail-label,.signal-rail[data-expanded=true] .rail-number{opacity:1;visibility:visible;transition-delay:.08s}.rail-number{position:absolute;right:10px;top:18px;font:8px var(--mono);opacity:0;visibility:hidden}.signal-rail a:hover,.signal-rail button:hover{color:#ecf2f4;background:#b5d1e009}.signal-rail a[aria-current=location]{color:var(--rail-accent);background:linear-gradient(90deg,#ff955710,transparent)}.signal-rail a[aria-current=location]:before{content:"";position:absolute;width:2px;height:20px;left:-6px;top:16px;background:var(--rail-accent);box-shadow:0 0 12px #ff955755}.rail-secondary{border-top:1px solid #b5d1e023;margin-top:8px;padding-top:7px}.signal-rail .rail-secondary a{height:44px}.signal-rail .rail-studies{height:0;overflow:hidden;visibility:hidden;opacity:0;font:9px var(--mono);padding:0 12px;transition:opacity .16s}.signal-rail[data-expanded=true] .rail-studies{height:43px;visibility:visible;opacity:1;border-top:1px solid #b5d1e023;margin-top:8px;justify-content:space-between}.rail-tooltip{position:absolute;left:62px;padding:9px 12px;background:#0d1821;border:1px solid #b5d1e033;font:11px var(--sans);color:#edf2f4;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-4px);transition:opacity .15s,transform .15s}.signal-rail[data-expanded=false] a:is(:hover,:focus-visible) .rail-tooltip{opacity:1;visibility:visible;transform:translate(0)}[data-direction=signal] .signal-copy,[data-direction=signal] .signal-project-copy{padding-left:max(104px,8vw)}[data-direction=signal] .scene-caption{left:max(104px,8vw)}[data-direction=signal] .chapter-bar,[data-direction=signal] .end-note{padding-left:max(104px,8vw)}[data-direction=signal] .page-footer{padding-bottom:36px}.stage--fonix{background:radial-gradient(ellipse at 72% 47%,#4e2b191f,transparent 55%),#090b0e}.project-fonix{--warm:#ffb888}.stage--openmercs{background:radial-gradient(ellipse at 70% 45%,#22352855,transparent 60%),#080d0d}.project-openmercs{--warm:#c3d4af}.signal-rail[data-active=openmercs]{--rail-accent:#c3d4af}[data-intro] :is(.site-nav,.signal-rail,.signal-coordinate,.signal-copy>*,.signal-hero .scene-caption,.signal-hero .scene-action,.fox-lab){transition:opacity 1.1s ease,translate 1.1s cubic-bezier(.2,.7,.2,1),visibility 0s}[data-intro]:not([data-intro=reveal]) :is(.site-nav,.signal-rail,.signal-coordinate,.signal-copy>*,.signal-hero .scene-caption,.signal-hero .scene-action,.fox-lab){opacity:0;visibility:hidden}[data-intro]:not([data-intro=reveal]) .signal-copy>*{translate:0 18px}[data-intro] .signal-copy>:nth-child(2){transition-delay:.12s}[data-intro] .signal-copy>:nth-child(3){transition-delay:.24s}[data-intro] .signal-copy>:nth-child(4){transition-delay:.36s}[data-intro] :is(.signal-rail,.signal-coordinate,.signal-hero .scene-caption,.signal-hero .scene-action){transition-delay:.45s}[data-intro] .stage--fox .stage-poster{display:none}.fox-lightning{display:none;position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;will-change:opacity,clip-path}[data-intro] .signal-hero{transition:height 1.3s cubic-bezier(.65,0,.35,1),min-height 1.3s cubic-bezier(.65,0,.35,1),max-height 1.3s cubic-bezier(.65,0,.35,1)}[data-intro] .signal-hero>.stage{transition:inset 1.3s cubic-bezier(.65,0,.35,1)}[data-intro]:not([data-intro=reveal]) #fox.signal-hero{height:100svh;min-height:0;max-height:100svh}[data-intro]:not([data-intro=reveal]) #fox.signal-hero>.stage{inset:0}.intro-skip{display:none;position:fixed;z-index:20;left:50%;bottom:max(28px,env(safe-area-inset-bottom));transform:translate(-50%);background:none;border:0;padding:12px 16px;font:10px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.intro-skip:hover{color:var(--paper)}[data-intro=running] .intro-skip{display:block}.fonix-callouts{position:fixed;inset:0;z-index:4;pointer-events:none;visibility:hidden}.fonix-callout{position:absolute;left:0;top:0;font:10px/1.6 var(--mono);letter-spacing:.04em;color:var(--muted);white-space:nowrap}.fonix-callout i{position:absolute;left:0;width:1px;height:var(--rise)}.fonix-callout span{position:absolute;left:9px}.fonix-callout b{display:block;font-weight:500;letter-spacing:.14em;color:var(--paper)}.fonix-callout em{display:block;font-style:normal}.fonix-callout[data-side=top] i{bottom:0;background:linear-gradient(0deg,#ffb88811,#ffb888)}.fonix-callout[data-side=top] span{bottom:calc(var(--rise) - 6px)}.fonix-callout[data-side=bottom] i{top:0;background:linear-gradient(180deg,#ffb88811,#ffb888)}.fonix-callout[data-side=bottom] span{top:calc(var(--rise) - 26px)}@media(max-width:700px){.fonix-callout{font-size:8px}.fonix-callout em{display:none}}[data-direction=signal] .wordmark svg{display:block;height:25px;width:auto;fill:var(--paper);transition:fill .2s}[data-direction=signal] .wordmark .wordmark-x{fill:var(--warm)}[data-direction=signal] .wordmark:hover svg{fill:#fff}.signal-rail .rail-mark{width:26px;height:26px;margin:0 -3px;flex-shrink:0;border-radius:6px;filter:grayscale(1) brightness(1.7) contrast(.9);opacity:.72;transition:filter .2s,opacity .2s}.signal-rail a:hover .rail-mark,.signal-rail a[aria-current=location] .rail-mark{filter:none;opacity:1}.project-mark{display:block;width:52px;height:52px;margin-bottom:22px;border-radius:12px;box-shadow:0 0 0 1px #ffffff14,0 10px 30px #0006}@media(max-width:700px){[data-direction=signal] .wordmark svg{height:20px}.project-mark{width:44px;height:44px;margin-bottom:16px}}.chapter-ghost{position:absolute;z-index:1;right:3vw;bottom:40px;translate:0 calc(var(--p,0)*-210px);font:600 clamp(180px,24vw,380px)/.8 var(--sans);letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--project-accent,#fff) 16%,transparent);opacity:calc(.9 - var(--away,0)*.5);pointer-events:none;user-select:none}.chapter-bar{translate:0 calc(var(--p,0)*-22px)}.signal-project .scene-caption{translate:0 calc(var(--p,0)*34px)}.signal-project-copy,.signal-copy{translate:0 calc(var(--p,0)*78px);opacity:calc(1 - var(--away,0)*var(--away,0)*.85)}.signal-project-copy h2{translate:0 calc(var(--p,0)*26px)}@media(max-width:700px){.chapter-ghost{font-size:150px;right:12px;bottom:auto;top:250px;translate:0 calc(var(--p,0)*-90px)}.signal-project-copy,.signal-copy{translate:0 calc(var(--p,0)*24px)}.signal-project-copy h2,.signal-project .scene-caption{translate:none}}.scene-tags{position:fixed;inset:0;z-index:4;pointer-events:none}.scene-tag{position:absolute;left:0;top:0;translate:-50% -50%;display:flex;align-items:center;gap:7px;font:10px/1 var(--mono);letter-spacing:.16em;color:var(--paper);white-space:nowrap}.scene-tag b{width:22px;height:3px;background:linear-gradient(90deg,var(--project-accent,var(--warm)) calc(var(--level,0)*100%),#ffffff22 0)}.scene-tag--left{translate:0 -50%}.scene-tag--right{translate:-100% -50%;flex-direction:row-reverse}.scene-tag--hud{color:#7dffa0;--project-accent:#3dff6e}.scene-tag--hud:first-child b{display:none}.scene-tag--banner{font-size:11px;letter-spacing:.2em;color:var(--banner,var(--paper));padding:8px 12px;background:#0b1114cc;border:1px solid color-mix(in srgb,var(--banner,#fff) 45%,transparent)}.scene-tag--banner b{display:none}@media(max-width:700px){.scene-tag{font-size:7px;gap:4px}.scene-tag b{width:12px}}@media(max-width:1050px)and (min-width:701px){[data-direction=signal] .signal-project-copy{width:51%}[data-direction=signal] .signal-project-copy h2{font-size:54px}}@media(max-width:700px){.signal-rail{left:12px;top:auto;bottom:max(12px,env(safe-area-inset-bottom));transform:none;width:56px;padding:5px}.signal-rail .rail-toggle{margin-bottom:0;border-bottom:0;height:44px}.signal-rail[data-expanded=false] nav,.signal-rail[data-expanded=false] .rail-secondary{display:none}.signal-rail[data-expanded=true] .rail-toggle{border-bottom:1px solid #b5d1e023;margin-bottom:8px}.signal-rail[data-expanded=true]{max-height:calc(100svh - 32px);overflow:auto}.rail-tooltip{display:none}[data-direction=signal] .signal-copy,[data-direction=signal] .signal-project-copy{padding-left:24px}[data-direction=signal] .signal-hero>.stage,[data-direction=signal] .signal-project>.stage{min-height:0}[data-direction=signal] .chapter-bar{padding-left:24px}[data-direction=signal] .scene-caption{left:24px}[data-direction=signal] .end-note{padding-left:24px}[data-direction=signal] .page-footer{padding-bottom:94px}}@media(max-width:700px){[data-direction=signal] .signal-copy h1{font-size:min(68px,calc((100vw - 48px)/6.6))}}.fox-fill-controls{position:absolute;z-index:6;right:4.5vw;bottom:64px;display:flex;gap:8px;transition:opacity .6s ease}.fox-fill,.fox-full{display:flex;align-items:center;gap:9px;padding:9px 13px;background:#081018a8;border:1px solid #82999c40;color:var(--muted);font:10px var(--mono);letter-spacing:.16em;text-transform:uppercase;backdrop-filter:blur(8px);cursor:pointer;transition:color .2s,border-color .2s}.fox-fill:hover,.fox-fill:focus-visible,.fox-fill[aria-pressed=true],.fox-full:hover,.fox-full:focus-visible{color:var(--paper);border-color:#b4d7db88}.fox-fill svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.4}.fox-fill[aria-pressed=true] svg{rotate:180deg;scale:.8}[data-fill=on] .fox-fill-controls{position:fixed;bottom:max(28px,env(safe-area-inset-bottom))}.fox-full{display:none}[data-fill=on] .fox-full{display:flex}[data-intro] .fox-fill-controls,[data-motion=paused] .fox-fill-controls,.stage--fox:not([data-ready=true])~.fox-fill-controls{display:none}[data-fill-idle] .fox-fill-controls:not(:has(:focus-visible)){opacity:0;pointer-events:none}[data-fill-idle] #fox.signal-hero,[data-fill-idle] #fox.signal-hero *{cursor:none}[data-fill] :is(.site-nav,.signal-rail,.signal-coordinate,.signal-copy>*,.signal-hero .scene-caption,.fox-lab){transition:opacity .9s ease,translate .9s cubic-bezier(.2,.7,.2,1),visibility 0s}[data-fill=on] :is(.site-nav,.signal-rail,.signal-coordinate,.signal-copy>*,.signal-hero .scene-caption,.fox-lab){opacity:0;visibility:hidden;transition:opacity .6s ease,translate .6s ease,visibility 0s .6s}[data-fill=on] .signal-copy>*{translate:0 18px}[data-fill] .signal-hero{transition:height 1.3s cubic-bezier(.65,0,.35,1),min-height 1.3s cubic-bezier(.65,0,.35,1),max-height 1.3s cubic-bezier(.65,0,.35,1)}[data-fill] .signal-hero>.stage{transition:inset 1.3s cubic-bezier(.65,0,.35,1)}[data-fill=on] #fox.signal-hero{height:100svh;min-height:0;max-height:100svh}[data-fill=on] #fox.signal-hero>.stage{inset:0}.fox-backdrop{position:absolute;inset:0;overflow:hidden;opacity:0;pointer-events:none;transition:opacity 1.8s ease}[data-fill=on] .fox-backdrop{opacity:1}.fox-backdrop:before,.fox-backdrop:after{content:"";position:absolute;inset:-35%;animation:fox-backdrop-a 47s ease-in-out infinite alternate;animation-play-state:paused;will-change:transform}.fox-backdrop:before{background:radial-gradient(ellipse 38% 34% at 34% 40%,#0e4a5c66,transparent 70%),radial-gradient(ellipse 30% 30% at 70% 66%,#5a261a4d,transparent 70%)}.fox-backdrop:after{background:radial-gradient(ellipse 36% 40% at 62% 34%,#23246b59,transparent 70%),radial-gradient(ellipse 28% 26% at 28% 72%,#0c3b4d40,transparent 70%);animation-name:fox-backdrop-b;animation-duration:61s}[data-fill] .fox-backdrop:before,[data-fill] .fox-backdrop:after{animation-play-state:running}@keyframes fox-backdrop-a{0%{transform:translate(-7%,4%) rotate(0) scale(1)}50%{transform:translate(6%,-5%) rotate(9deg) scale(1.12)}to{transform:translate(-3%,7%) rotate(-7deg) scale(1.04)}}@keyframes fox-backdrop-b{0%{transform:translate(6%,-4%) rotate(4deg) scale(1.08)}50%{transform:translate(-8%,5%) rotate(-10deg) scale(1)}to{transform:translate(4%,6%) rotate(8deg) scale(1.15)}}@media(max-width:700px){.fox-fill-controls{right:24px;bottom:auto;top:586px}[data-fill=on] .fox-fill-controls{top:auto}}.project-panel{display:grid;grid-template-rows:0fr;visibility:hidden;border-top:0 solid var(--rule);background:linear-gradient(180deg,color-mix(in srgb,var(--project-accent) 5%,transparent),transparent 420px);transition:grid-template-rows .75s cubic-bezier(.65,0,.35,1),visibility 0s .75s;outline:0}.project-panel.is-open{grid-template-rows:1fr;visibility:visible;border-top-width:1px;transition:grid-template-rows .75s cubic-bezier(.65,0,.35,1),visibility 0s}.project-panel.is-instant{transition:none}.project-panel-inner{min-height:0;overflow:hidden}.project-panel .project-body{padding-top:80px;padding-bottom:90px}.panel-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:60px;padding-top:30px;border-top:1px solid var(--rule)}.panel-foot .text-link{margin-top:0}.panel-close{display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:1px solid #82999c40;color:var(--muted);font:10px var(--mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:color .2s,border-color .2s}.panel-close:hover,.panel-close:focus-visible{color:var(--paper);border-color:var(--project-accent)}.explore-label{font-weight:inherit}[data-explore][aria-expanded=true] span{rotate:135deg}@media(max-width:700px){.project-panel .project-body{padding-top:50px;padding-bottom:60px}}.fox-lab{position:absolute;z-index:12;right:4.5vw;bottom:76px;width:420px;padding:17px 18px 12px;background:#071019c9;backdrop-filter:blur(16px);border:1px solid #94a9b333;color:#b0c1c9}.signal-hero:not(:has(.stage[data-ready=true])) .fox-lab{display:none}.fox-lab[hidden]{display:none}.fox-lab-heading>div{display:flex;gap:18px}.fox-lab-heading{display:flex;justify-content:space-between;align-items:center;font:8px var(--mono);letter-spacing:.13em;margin-bottom:8px}.fox-lab button{border:0;background:none;padding:8px 0;font:10px var(--mono);color:#ccdce0}.fox-lab button:hover{color:var(--warm)}.fox-modes{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.fox-modes legend{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.fox-modes label{position:relative;cursor:pointer}.fox-modes input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.fox-modes label>span{display:flex;flex-direction:column;gap:7px;padding:10px 9px;font-size:12px;border:1px solid transparent;transition:background .18s,color .18s}.fox-modes small{font:8px var(--mono);color:#93aab7}.fox-modes input:checked+span{background:#abc7d414;border-color:#88c3d366;color:#d4f0f4}.fox-modes input:focus-visible+span{outline:2px solid #85d8e1;outline-offset:1px}.fox-mode-description{font:10px/1.7 var(--sans);color:#a5b7c2;margin:13px 0;min-height:18px}.fox-tuning{display:grid;grid-template-columns:1fr 1fr;gap:22px}.fox-tuning label{display:grid;grid-template-columns:auto 1fr 21px;gap:9px;align-items:center;font:9px var(--mono)}.fox-tuning input{width:100%;min-width:0;accent-color:#90c9d2;height:22px;margin:0;cursor:ew-resize}.fox-tuning output{text-align:right;color:#cedce0}.fox-lab-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #94a9b324;margin-top:10px;padding-top:4px}.fox-lab-footer>span{font:9px/1.5 var(--sans);color:#8196a4}.fox-lab .fox-burst{min-height:34px}.fox-lab button:disabled,.fox-tuning input:disabled{opacity:.35;cursor:default}[data-direction=signal] .signal-hero .scene-action{right:4.5vw;bottom:410px}[data-direction=signal] .signal-hero:not(:has(.fox-lab:not([hidden]))) .scene-action{bottom:76px}.fox-tuning{row-gap:10px}.fox-tuning .fox-size,.fox-tuning .fox-density,.fox-tuning .fox-colour,.fox-tuning .fox-brightness{grid-column:1 / -1;grid-template-columns:auto 1fr 44px}.fox-lab{bottom:44px}@media(min-width:1101px){[data-direction=signal] .signal-hero>.stage{bottom:65px}}@media(max-width:1100px)and (min-width:701px){.fox-lab{width:360px;right:26px;bottom:36px}.fox-tuning{column-gap:16px}.fox-mode-description{font-size:10px}[data-direction=signal] .signal-hero .scene-action{right:26px;bottom:402px}}@media(max-width:700px){[data-direction=signal] .signal-hero{height:1478px;min-height:1478px}[data-direction=signal] .signal-hero>.stage{inset:540px 0 438px}[data-direction=signal] .signal-hero:not(:has(.fox-lab:not([hidden]))){height:1100px;min-height:1100px}[data-direction=signal] .signal-hero:not(:has(.fox-lab:not([hidden])))>.stage{inset:540px 0 60px}[data-direction=signal] .signal-hero:not(:has(.fox-lab:not([hidden]))) .scene-action{bottom:20px}.fox-lab{left:24px;right:24px;bottom:72px;width:auto;padding:12px}.fox-lab-heading{margin-bottom:4px}.fox-modes label>span{padding:9px 7px;font-size:11px}.fox-tuning{column-gap:12px}.fox-tuning label{gap:6px;font-size:8px}.fox-mode-description{font-size:10px;min-height:34px;margin:9px 0}.fox-lab-footer>span{max-width:170px}.fox-lab .fox-burst,.fox-lab .fox-reset{min-height:38px}[data-direction=signal] .signal-hero .scene-action{bottom:8px;right:24px}}
