
/* Layout: full-bleed cinematic bands on a 1240px rail. One recurring mark: the reticle from the official emblem. HUD corners only on primary panels. */
:root{
  --bg:#080B0E;--bg2:#11171D;--panel:#1A222A;--line:#26313B;
  --ink:#F1F3F5;--mute:#A3ADB8;--accent:#7898AD;--ok:#849B78;--alert:#B94348;
  --glow:rgba(120,152,173,.18);
  --display:"Saira Condensed","Arial Narrow","Roboto Condensed",Impact,sans-serif;
  --body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --rail:1240px;
  color-scheme:dark;
}
:root[data-skin="tactical"]{--bg:#090A07;--bg2:#12140E;--panel:#1B1E15;--line:#2C3023;--ink:#EEEEE6;--mute:#A8AA98;--accent:#93A06E;--ok:#9AAE7C;--alert:#B5523F;--glow:rgba(147,160,110,.18)}
:root[data-skin="broadcast"]{--bg:#060A13;--bg2:#0C1424;--panel:#142038;--line:#22314F;--ink:#F0F4FA;--mute:#A2B1CB;--accent:#62A2EA;--ok:#6FBF9A;--alert:#E0566A;--glow:rgba(98,162,234,.2)}
:root[data-skin="stealth"]{--bg:#050505;--bg2:#0C0C0C;--panel:#151515;--line:#272727;--ink:#F2F2F2;--mute:#9D9D9D;--accent:#CFCFCF;--ok:#BDBDBD;--alert:#C25050;--glow:rgba(255,255,255,.08)}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:41;background:var(--bg)}
a{color:inherit}
img{max-width:100%}
h1,h2,h3,h4{font-family:var(--display);font-weight:800;text-transform:uppercase;line-height:.95;letter-spacing:.01em;margin:0;text-wrap:balance}
p{margin:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--ink);color:var(--bg);padding:10px 14px;font-weight:600}
.skip:focus{left:12px}
.wrap{max-width:var(--rail);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.mono{font-family:var(--mono)}
.label{font:500 .72rem/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 22px;font:700 1rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,color .15s;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
.btn-primary{background:var(--accent);color:var(--bg)}
.btn-primary:hover{background:var(--ink)}
.btn-secondary{background:transparent;color:var(--ink);border-color:var(--accent)}
.btn-secondary:hover{background:var(--glow)}
.btn-ghost{background:transparent;color:var(--mute);border-color:var(--line)}
.btn-ghost:hover{color:var(--ink);border-color:var(--mute)}
.btn.is-disabled{opacity:.45;cursor:not-allowed}
.btn-sm{min-height:36px;padding:8px 14px;font-size:.85rem}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}

/* placeholder + status marks */
.ph{display:inline-block;font:500 .6875rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border:1px dashed var(--accent);padding:4px 6px;vertical-align:middle;white-space:nowrap}
.pend{font:400 .78rem/1.4 var(--mono);color:var(--mute)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--mute);flex:none}
.dot.ok{background:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 25%,transparent)}
.dot.alert{background:var(--alert)}
.chip{display:inline-flex;align-items:center;gap:6px;font:500 .78rem/1 var(--mono);padding:8px 10px;border:1px solid var(--line);color:var(--ink);background:color-mix(in srgb,var(--panel) 60%,transparent)}

/* nav */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:20px;padding-block:10px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.brand img{width:40px;height:40px;display:block}
.brand b{font:800 1.25rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase}
.brand b i{font-style:normal;color:var(--accent)}
.navlinks{display:flex;gap:2px;margin-left:auto;flex-wrap:nowrap}
.navlinks a{white-space:nowrap;font:600 .95rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);text-decoration:none;padding:10px 10px;border-bottom:2px solid transparent}
.navlinks a:hover{color:var(--ink);border-bottom-color:var(--accent)}
.navcta{display:flex;gap:8px;flex:none}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--line);color:var(--ink);font:600 .85rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;padding:10px 12px;cursor:pointer}
@media (max-width:1340px){
  .navlinks{display:none}
  .menu-btn{display:inline-flex}
  .navcta .btn-secondary{display:none}
  .top.open .navlinks{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:var(--bg2);border-bottom:1px solid var(--line);padding:8px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px))}
  .top.open .navlinks a{padding:14px 4px;border-bottom:1px solid var(--line)}
}
@media (max-width:520px){.brand b{display:none}.navcta .btn{padding-inline:14px}}

/* sections */
.mod{position:relative;border-bottom:1px solid var(--line)}
.mod>.wrap{padding-block:clamp(64px,8vw,112px);display:grid;gap:clamp(28px,4vw,48px)}
.bg-base{background:var(--bg)}
.bg-raised{background:var(--bg2)}
.bg-grid{background:var(--bg);background-image:linear-gradient(color-mix(in srgb,var(--accent) 7%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 7%,transparent) 1px,transparent 1px);background-size:56px 56px}
.bg-radar{background:radial-gradient(ellipse at 80% 0%,var(--glow),transparent 60%),var(--bg)}
.shead{display:grid;gap:14px;max-width:820px}
.eyebrow{display:flex;align-items:center;gap:12px;font:500 .74rem/1.2 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.eyebrow::before{content:"";width:10px;height:10px;border:1px solid var(--accent);flex:none}
.eyebrow::after{content:"";height:1px;width:64px;background:linear-gradient(90deg,var(--accent),transparent)}
.shead h2{font-size:clamp(2.4rem,5.4vw,4.4rem)}
.lede{color:var(--mute);font-size:1.08rem;max-width:64ch}
.is-draft{outline:2px dashed var(--alert);outline-offset:-2px}
.draft-ribbon{position:absolute;top:0;left:0;right:0;z-index:2;background:var(--alert);color:#fff;font:600 .72rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:8px max(16px,env(safe-area-inset-left,0px));text-align:center}

/* HUD panel */
.hud{position:relative;background:var(--panel);border:1px solid var(--line)}
.hud::before,.hud::after{content:"";position:absolute;width:16px;height:16px;border:2px solid var(--accent);pointer-events:none}
.hud::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.hud::after{bottom:-1px;right:-1px;border-left:0;border-top:0}

/* media slots */
.slot{position:relative;margin:0;overflow:hidden;background:var(--bg2);width:100%;max-width:100%;border:1px solid var(--line)}
.slot>svg,.slot>img,.slot>video,.slot>iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;display:block}
.slot-tag{position:absolute;left:10px;bottom:10px;z-index:1;display:flex;gap:8px;align-items:center;font:500 .6875rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);background:color-mix(in srgb,var(--bg) 82%,transparent);padding:6px 8px;border:1px solid var(--line);max-width:calc(100% - 20px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.slot-tag b{color:var(--accent);font-weight:500}
.slot .play{position:absolute;inset:0;display:grid;place-items:center;text-decoration:none;z-index:1}
.slot .play span{width:64px;height:64px;border:1px solid var(--ink);display:grid;place-items:center;background:color-mix(in srgb,var(--bg) 50%,transparent)}
.g-bg{fill:var(--bg2)}
.g-st{stroke:var(--accent);fill:none}
.g-fill{fill:var(--accent)}
.g-ink{fill:var(--ink)}
.g-alert{fill:var(--alert)}
.g-panel{fill:var(--panel);stroke:var(--line)}
.sweep{animation:sweep 6s linear infinite}
@keyframes sweep{to{transform:rotate(360deg)}}

/* hero */
.hero{position:relative;overflow:hidden;isolation:isolate;border-bottom:1px solid var(--line)}
.hero-media{position:absolute;inset:0;z-index:-2}
.hero-media .slot{position:absolute;inset:0;height:100%;border:0}
.hero-media .m-portrait{display:none}
@media (max-width:700px){.hero-media .m-landscape{display:none}.hero-media .m-portrait{display:block}}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 94%,transparent) 0%,color-mix(in srgb,var(--bg) 86%,transparent) 45%,color-mix(in srgb,var(--bg) 40%,transparent) 100%),linear-gradient(0deg,var(--bg) 0%,transparent 40%)}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:40px;align-items:center;padding-block:clamp(56px,9vw,128px) clamp(32px,4vw,56px)}
@media (max-width:900px){.hero-inner{grid-template-columns:1fr}.hero-emblem{order:-1;max-width:220px}}
.hero-copy{display:grid;gap:22px;min-width:0}
.hero h1{font-size:clamp(3.4rem,10vw,8.4rem);line-height:.84;letter-spacing:.005em}
.hero h1 span{display:block;color:transparent;-webkit-text-stroke:1.5px var(--ink)}
.hero .statement{font:700 clamp(1.1rem,2.2vw,1.5rem)/1.2 var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.hero .lede{color:var(--ink);opacity:.82;font-size:1.12rem}
.hero-emblem{position:relative;justify-self:center;width:100%;max-width:400px;aspect-ratio:1}
.hero-emblem img{position:absolute;inset:9%;width:82%;height:82%;filter:drop-shadow(0 30px 60px rgba(0,0,0,.7))}
.hero-emblem svg{position:absolute;inset:0;width:100%;height:100%}
.status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.status>div{padding:14px 16px;display:grid;gap:6px;border-left:1px solid var(--line);min-width:0}
.status>div:first-child{border-left:0}
.status b{font:700 1.05rem/1.15 var(--display);letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.status small{font:400 .78rem/1.3 var(--mono);color:var(--mute)}
@media (max-width:900px){.status{grid-template-columns:repeat(2,minmax(0,1fr))}.status>div:nth-child(3){border-left:0}.status>div:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:440px){.status{grid-template-columns:1fr}.status>div{border-left:0;border-top:1px solid var(--line)}.status>div:first-child{border-top:0}}
.hero-foot{padding-bottom:clamp(28px,4vw,48px)}

/* live ops */
.live-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,260px);gap:24px;align-items:start}
@media (max-width:820px){.live-grid{grid-template-columns:1fr}.live-grid .slot.is-portrait{max-width:300px}}
.live-main{display:grid;gap:16px;min-width:0}
.live-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:14px 16px}
.live-bar .who{display:flex;align-items:center;gap:12px;font:800 1.5rem/1 var(--display);text-transform:uppercase;letter-spacing:.04em}
.plats{display:flex;flex-wrap:wrap;gap:8px}
.plat{display:inline-flex;align-items:center;gap:8px;font:600 .9rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;padding:10px 12px;border:1px solid var(--line);text-decoration:none;color:var(--ink)}
a.plat:hover{border-color:var(--accent)}
.plat.is-pending{color:var(--mute);border-style:dashed}
.plat.is-pending small{font:400 .6875rem/1 var(--mono);letter-spacing:.06em}
.windows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
@media (max-width:700px){.windows{grid-template-columns:1fr}}
.windows>div{background:var(--bg);padding:16px;display:grid;gap:6px}
.windows b{font:800 1.9rem/1 var(--display);font-variant-numeric:tabular-nums}
.games{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.note{font:400 .84rem/1.5 var(--mono);color:var(--mute);border-left:2px solid var(--accent);padding-left:12px;max-width:72ch}

/* deployment calendar */
.ops{display:grid;border-top:1px solid var(--line)}
.op{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr) auto;gap:20px;align-items:center;padding:18px 4px;border-bottom:1px solid var(--line)}
.op .when{font:500 .85rem/1.3 var(--mono);color:var(--accent);font-variant-numeric:tabular-nums}
.op h3{font-size:1.5rem}
.op p{color:var(--mute);font-size:.95rem}
.op .type{font:500 .7rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);padding:6px 8px;white-space:nowrap}
@media (max-width:700px){.op{grid-template-columns:1fr;gap:8px}}

/* community */
.hq-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:900px){.hq-grid{grid-template-columns:1fr}}
.server{padding:20px;display:grid;gap:14px}
.server-head{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.server-head img{width:44px;height:44px}
.server-head b{font:800 1.3rem/1 var(--display);text-transform:uppercase;letter-spacing:.05em}
.cat{display:grid;gap:6px}
.cat h4{font:500 .7rem/1 var(--mono);letter-spacing:.16em;color:var(--mute)}
.cat ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.cat li{font:400 .85rem/1 var(--mono);padding:7px 9px;background:var(--bg2);color:var(--ink)}
.cat li::before{content:"# ";color:var(--accent)}
.cat.voice li::before{content:"◂ ";color:var(--ok)}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:14px;counter-reset:s}
.steps li{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:baseline;color:var(--mute)}
.steps li::before{counter-increment:s;content:"0" counter(s);font:800 1.6rem/1 var(--display);color:var(--accent)}
.hq-side{display:grid;gap:22px;min-width:0}
.values{display:flex;flex-wrap:wrap;gap:8px}
.drop{padding:18px;display:grid;gap:8px}
.drop h3{font-size:1.35rem}
.drop p{color:var(--mute);font-size:.95rem}

/* media archives */
.feat{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px;align-items:end}
@media (max-width:860px){.feat{grid-template-columns:1fr}}
.feat-copy{display:grid;gap:12px;min-width:0}
.feat-copy h3{font-size:clamp(1.8rem,3.4vw,2.6rem)}
.feat-copy p{color:var(--mute)}
.filters{display:flex;flex-wrap:wrap;gap:6px}
.filters button{font:500 .78rem/1 var(--mono);padding:9px 12px;border:1px solid var(--line);background:transparent;color:var(--mute);cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--bg)}
.cards-l{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:860px){.cards-l{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.cards-l{grid-template-columns:1fr}}
.cards-p{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
@media (max-width:860px){.cards-p{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px){.cards-p{grid-template-columns:repeat(2,minmax(0,1fr))}}
.card{display:grid;gap:10px;align-content:start;min-width:0}
.card h4{font-size:1.15rem;letter-spacing:.03em}
.card .meta{display:flex;flex-wrap:wrap;gap:6px 10px;font:400 .74rem/1.3 var(--mono);color:var(--mute);align-items:center}
.sub{font:700 1.2rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);display:flex;align-items:center;gap:12px}
.sub::after{content:"";flex:1;height:1px;background:var(--line)}

/* roster */
.tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line)}
@media (max-width:860px){.tiers{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tiers>div{padding:18px;display:grid;gap:6px;border-left:1px solid var(--line);align-content:start}
.tiers>div:first-child{border-left:0}
@media (max-width:860px){.tiers>div:nth-child(3){border-left:0}.tiers>div:nth-child(n+3){border-top:1px solid var(--line)}}
.tiers b{font:800 1.3rem/1 var(--display);text-transform:uppercase;letter-spacing:.04em}
.tiers small{color:var(--mute);font-size:.9rem}
.tiers .lvl{font:500 .6875rem/1 var(--mono);color:var(--accent);letter-spacing:.14em}
.creator{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:clamp(20px,4vw,48px);padding:clamp(16px,3vw,28px);align-items:start}
@media (max-width:720px){.creator{grid-template-columns:1fr}.creator .slot{max-width:300px}}
.creator-info{display:grid;gap:16px;min-width:0}
.creator-info h3{font-size:clamp(2.2rem,5vw,3.6rem)}
.creator-info .rank{font:500 .78rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.creator-info p{color:var(--mute)}
.spec{display:grid;grid-template-columns:140px minmax(0,1fr);gap:8px 16px;font-size:.95rem}
.spec dt{font:500 .72rem/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.spec dd{margin:0}
@media (max-width:480px){.spec{grid-template-columns:1fr}.spec dd{margin-bottom:8px}}
.open{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:760px){.open{grid-template-columns:1fr}}
.open a{display:grid;gap:6px;padding:18px;border:1px dashed var(--line);text-decoration:none}
.open a:hover{border-color:var(--accent)}
.open b{font:800 1.25rem/1.05 var(--display);text-transform:uppercase}
.open small{font:500 .72rem/1 var(--mono);letter-spacing:.12em;color:var(--ok);text-transform:uppercase}

/* armory */
.armory-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:28px;align-items:center}
@media (max-width:860px){.armory-top{grid-template-columns:1fr}}
.armory-top .tag{font:italic 500 clamp(1.4rem,2.6vw,2rem)/1.2 var(--body);color:var(--ink)}
.racks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:760px){.racks{grid-template-columns:1fr}}
.rack{padding:20px 20px 10px}
.rack h3{font-size:1.4rem;display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding-bottom:12px;border-bottom:1px solid var(--line)}
.rack h3 small{font:500 .7rem/1 var(--mono);color:var(--mute);letter-spacing:.12em}
.rack ul{list-style:none;margin:0;padding:0}
.rack li{display:grid;grid-template-columns:minmax(0,120px) minmax(0,1fr);gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.95rem}
.rack li:last-child{border-bottom:0}
.rack li span{font:500 .72rem/1.7 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}

/* partnerships */
.offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
@media (max-width:860px){.offers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.offers{grid-template-columns:1fr}}
.offers>div{background:var(--bg);padding:24px 22px;display:grid;gap:10px;align-content:start}
.offers h3{font-size:1.45rem}
.offers p{color:var(--mute);font-size:.95rem}
.offers .n{font:500 .7rem/1 var(--mono);color:var(--accent);letter-spacing:.14em}
.ledger{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:860px){.ledger{grid-template-columns:1fr}}
.ledger dl{margin:0;padding:20px;display:grid;gap:0}
.ledger dl>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.ledger dl>div:last-child{border-bottom:0}
.ledger dt{font:500 .74rem/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.ledger dd{margin:0;font-weight:600}

/* recruitment */
.recruit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:start}
@media (max-width:900px){.recruit-grid{grid-template-columns:1fr}}
.roles{display:flex;flex-wrap:wrap;gap:8px}
.roles .chip{font-size:.85rem}

/* briefings */
.brief{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:760px){.brief{grid-template-columns:1fr}}
.brief article{padding:22px;display:grid;gap:10px;align-content:start}
.brief .meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font:500 .74rem/1 var(--mono);letter-spacing:.1em;color:var(--mute);text-transform:uppercase}
.brief .meta b{color:var(--accent);font-weight:500}
.brief h3{font-size:1.6rem}
.brief p{color:var(--mute)}
.brief .bbody{display:grid;gap:10px;color:var(--mute);overflow-wrap:anywhere}.brief .bbody b{color:var(--text)}.brief .bbody a{color:var(--accent)}.brief .bbody code{font:.9em var(--mono)}
.brief .bimg{width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--line)}
.brief-src{margin-top:14px}
.creator.no-photo{grid-template-columns:1fr;max-width:820px}
.prose{display:grid;gap:26px;max-width:760px}.prose-s h3{font-size:1.25rem;margin-bottom:8px}.prose-s p{color:var(--mute);margin-top:8px}

/* future divisions */
.future{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:center}
.future.p{grid-template-columns:minmax(0,1fr) minmax(0,260px)}
@media (max-width:820px){.future,.future.p{grid-template-columns:1fr}.future.p .slot{max-width:300px}}
.future ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}

/* footer */
.foot .wrap{padding-block:56px 40px;display:grid;gap:36px}
.foot-top{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.foot-top .brand img{width:64px;height:64px}
.motto{font:800 clamp(1.4rem,3vw,2.2rem)/1 var(--display);letter-spacing:.08em;text-transform:uppercase}
.motto i{font-style:normal;color:var(--accent)}
.dir{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
@media (max-width:860px){.dir{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.dir{grid-template-columns:1fr}}
.dir h4{font:500 .72rem/1.3 var(--mono);letter-spacing:.14em;color:var(--mute);margin-bottom:12px}
.dir ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dir a{text-decoration:none;color:var(--ink)}
.dir a:hover{color:var(--accent)}
.dir .pending{color:var(--mute)}
.dir .pending small{font:400 .6875rem/1 var(--mono);margin-left:6px;opacity:.8}
.legal{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;font:400 .74rem/1.5 var(--mono);color:var(--mute);border-top:1px solid var(--line);padding-top:20px}

/* intro */
.intro{position:fixed;inset:0;z-index:90;background:#030405;display:grid;place-items:center;color:#E9EDF0;transition:opacity .5s}
.intro.out{opacity:0}
.intro video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.intro-core{display:grid;justify-items:center;gap:14px;text-align:center;padding:24px}
.intro .il{font:500 .8rem/1 var(--mono);letter-spacing:.3em;opacity:0;animation:fadeIn .4s forwards}
.intro .l1{animation-delay:.5s}
.intro .l2{animation-delay:1s;color:#8FA3B2}
.intro .l3{font:800 clamp(2rem,6vw,3.4rem)/1 var(--display);letter-spacing:.2em;color:#9DB592;animation-delay:2.3s}
.intro-bar{width:min(320px,70vw);height:2px;background:#1b2229;opacity:0;animation:fadeIn .3s 1s forwards}
.intro-bar span{display:block;height:100%;width:0;background:#7898AD;animation:bar 1.1s 1.1s cubic-bezier(.6,.1,.3,1) forwards}
.intro-logo{width:min(220px,48vw);opacity:0;transform:scale(.92);animation:reveal .9s 2.8s cubic-bezier(.2,.7,.2,1) forwards;filter:drop-shadow(0 0 40px rgba(120,152,173,.25))}
.intro-skip{position:absolute;right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));background:transparent;color:#E9EDF0;border:1px solid #3a444d;font:500 .75rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:12px 16px;cursor:pointer}
@keyframes fadeIn{to{opacity:1}}
@keyframes bar{to{width:100%}}
@keyframes reveal{to{opacity:1;transform:none}}

/* editor */
.fab{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:50;display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--bg);border:0;padding:14px 18px;font:700 .9rem/1 var(--display);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.fab .dot{background:var(--alert)}
.ed{position:fixed;top:0;right:0;bottom:0;z-index:60;width:min(460px,100vw);background:var(--bg2);border-left:1px solid var(--line);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;box-shadow:-20px 0 60px rgba(0,0,0,.5);padding-top:env(safe-area-inset-top,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px);font-size:14px}
.ed-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}
.ed-head b{font:800 1.2rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase}
.ed-x{background:none;border:1px solid var(--line);color:var(--ink);padding:8px 10px;cursor:pointer;font:500 .75rem/1 var(--mono);text-transform:uppercase;letter-spacing:.1em}
.ed-tabs{display:flex;border-bottom:1px solid var(--line);overflow-x:auto}
.ed-tabs button{flex:1;background:none;border:0;border-bottom:2px solid transparent;color:var(--mute);padding:12px 10px;font:600 .82rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.ed-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
.ed-body{overflow-y:auto;padding:16px;display:grid;gap:14px;align-content:start}
.ed-foot{border-top:1px solid var(--line);padding:12px 16px;display:grid;gap:10px;background:var(--bg)}
.ed-status{font:400 .75rem/1.4 var(--mono);color:var(--mute);display:flex;align-items:center;gap:8px}
.ed-actions{display:flex;gap:8px;flex-wrap:wrap}
.ed-actions .btn{flex:1;min-height:40px;padding:10px 12px;font-size:.85rem}
.ed-msg{font:400 .78rem/1.4 var(--mono);color:var(--ok);min-height:1em}
.ed-msg.err{color:var(--alert)}
.ed-help{font:400 .78rem/1.5 var(--body);color:var(--mute)}
.row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);background:var(--bg)}
.row.dragging{opacity:.4}
.row.over{border-color:var(--accent)}
.row .grip{cursor:grab;color:var(--mute);font:500 1rem/1 var(--mono);user-select:none}
.row .nm{display:grid;gap:3px;min-width:0}
.row .nm b{font:700 .95rem/1.1 var(--display);letter-spacing:.06em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row .nm small{font:400 .6875rem/1 var(--mono);color:var(--mute)}
.row .acts{display:flex;gap:4px}
.ib{background:var(--panel);border:1px solid var(--line);color:var(--ink);min-width:32px;height:32px;padding:0 8px;cursor:pointer;font:500 .72rem/1 var(--mono)}
.ib:hover{border-color:var(--accent)}
.ib[aria-pressed="false"]{color:var(--mute);text-decoration:line-through}
.row.hidden-mod .nm b{color:var(--mute)}
.form{display:grid;gap:12px;padding:14px;border:1px solid var(--accent);background:var(--bg)}
.form h4{font:700 1rem/1 var(--display);letter-spacing:.1em}
.fld{display:grid;gap:5px}
.fld>span{font:500 .6875rem/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.fld input[type=text],.fld input[type=url],.fld textarea,.fld select{width:100%;min-width:0;background:var(--bg2);border:1px solid var(--line);color:var(--ink);font:400 .9rem/1.4 var(--body);padding:9px 10px;border-radius:0}
.fld textarea{min-height:70px;resize:vertical}
.fld input:focus,.fld textarea:focus,.fld select:focus{outline:none;border-color:var(--accent)}
.chk{display:flex;gap:8px;align-items:center;font:400 .85rem/1.3 var(--body);color:var(--ink)}
.chk input{width:16px;height:16px;accent-color:var(--accent)}
fieldset.grp{border:1px solid var(--line);margin:0;padding:12px;display:grid;gap:10px;min-width:0}
fieldset.grp legend{font:500 .6875rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:0 6px;display:flex;gap:6px;align-items:center}
.add{justify-self:start}
.mrow{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:12px;border:1px solid var(--line);background:var(--bg);align-items:start}
.mrow.p{grid-template-columns:62px minmax(0,1fr)}
.mrow .slot-tag{display:none}
.mrow .nm b{font:700 .9rem/1.1 var(--display);letter-spacing:.06em;text-transform:uppercase;display:block}
.mrow .nm small{font:400 .6875rem/1.3 var(--mono);color:var(--mute);display:block;margin-top:4px}
.mfields{grid-column:1/-1;display:grid;gap:10px}
.upl{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.upl label{cursor:pointer}
.upl input[type=file]{position:absolute;width:1px;height:1px;opacity:0}
.skins{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.skin{display:grid;gap:8px;padding:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);text-align:left;cursor:pointer}
.skin[aria-pressed="true"]{border-color:var(--ink)}
.skin b{font:700 .95rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase}
.skin small{font:400 .72rem/1.3 var(--body);color:var(--mute)}
.sw{display:flex;height:16px}
.sw i{flex:1}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ---- multi-page additions ---- */
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
body{margin:0}
[hidden]{display:none!important}
time{font-variant-numeric:tabular-nums}
.navlinks a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--accent)}
.status small a{color:inherit}
.card h4 a{text-decoration:none}
.card h4 a:hover{color:var(--accent)}
.phero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,4vw,56px);align-items:center}
.phero-copy{display:grid;gap:24px;min-width:0}
.phero h1{font-size:clamp(2.8rem,6.4vw,5.4rem)}
@media (max-width:860px){.phero{grid-template-columns:1fr}}
.mod-pageHero>.wrap{padding-block:clamp(40px,6vw,88px)}
.shead-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 32px}
.more{font:700 1rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);text-decoration:none;display:inline-flex;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--accent);white-space:nowrap}
.more:hover{color:var(--ink);border-color:var(--ink)}
.routes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.routes a{background:var(--panel);border:1px solid var(--line);padding:22px 20px;display:grid;gap:8px;align-content:start;text-decoration:none;position:relative;transition:border-color .15s,background .15s}
.routes a:first-child{grid-row:span 2;align-content:end;background:radial-gradient(circle at 80% 20%,var(--glow),transparent 60%),var(--panel)}
.routes a:first-child b{font-size:2.4rem}
.routes a:hover{border-color:var(--accent)}
.routes .n{font:500 .7rem/1 var(--mono);color:var(--accent);letter-spacing:.14em}
.routes b{font:800 1.5rem/1 var(--display);text-transform:uppercase;letter-spacing:.03em}
.routes small{color:var(--mute);font-size:.92rem;line-height:1.45}
.routes .go{position:absolute;top:18px;right:20px;color:var(--accent);font-size:1.2rem}
@media (max-width:960px){.routes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.routes{grid-template-columns:1fr}.routes a:first-child{grid-row:auto}}
.tools{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between}
.search{display:grid;gap:6px;flex:1 1 260px;max-width:420px}
.search input{width:100%;min-width:0;background:var(--bg2);border:1px solid var(--line);color:var(--ink);font:400 1rem/1.4 var(--body);padding:11px 12px;border-radius:0}
.search input:focus{outline:none;border-color:var(--accent)}
.live-grid.teaser{grid-template-columns:1fr}
.cta{display:grid;gap:24px;justify-items:start;max-width:820px}
.form-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);align-items:start}
@media (max-width:900px){.form-wrap{grid-template-columns:1fr}}
.bform{padding:clamp(18px,3vw,28px);display:grid;gap:16px;min-width:0}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:560px){.fgrid{grid-template-columns:1fr}}
.ff{display:grid;gap:6px;min-width:0}
.ff>span{font:500 .7rem/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.ff input,.ff select,.ff textarea{width:100%;min-width:0;background:var(--bg);border:1px solid var(--line);color:var(--ink);font:400 1rem/1.4 var(--body);padding:11px 12px;border-radius:0}
.ff textarea{resize:vertical}
.ff input:focus,.ff select:focus,.ff textarea:focus{outline:none;border-color:var(--accent)}
.bform .chk{align-items:flex-start}
.bform .chk input{margin-top:3px;flex:none}
.form-msg{font:400 .85rem/1.4 var(--mono);color:var(--ok);min-height:1em}
.quick{display:none}
@media (max-width:760px){
  .quick{position:fixed;left:0;right:0;bottom:0;z-index:45;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
  .quick a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;font:700 .9rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-left:1px solid var(--line)}
  .quick a:first-child{border-left:0}
  .foot .wrap{padding-bottom:96px}
  .fab{bottom:calc(72px + env(safe-area-inset-bottom,0px))}
}
.grp-d summary{cursor:pointer;font:600 .85rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase;padding:10px 0;color:var(--ink)}
.addmod{display:grid;gap:8px;padding:12px;border:1px dashed var(--line)}

@media (max-width:900px){.hero-emblem{max-width:190px}}

/* ---- cinematic intro v2 ---- */
.ix{position:fixed;inset:0;z-index:90;display:grid;place-items:center;overflow:hidden;color:#E9EDF0;font-family:var(--mono)}
.ix-door{position:absolute;left:0;right:0;height:50.5%;z-index:0;background:#030405;transition:transform .75s cubic-bezier(.75,0,.2,1)}
.ix-door.t{top:0;box-shadow:inset 0 -1px 0 transparent}
.ix-door.b{bottom:0}
.ix.open .ix-door.t{transform:translateY(-100%);box-shadow:inset 0 -2px 0 var(--accent)}
.ix.open .ix-door.b{transform:translateY(100%);box-shadow:inset 0 2px 0 var(--accent)}
.ix-video{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;transition:opacity .3s}
.ix-grid{position:absolute;inset:0;z-index:1;opacity:0;background-image:linear-gradient(rgba(120,152,173,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(120,152,173,.08) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(circle at 50% 45%,#000 15%,transparent 65%);mask-image:radial-gradient(circle at 50% 45%,#000 15%,transparent 65%);animation:ixFade 1.2s .3s forwards}
.ix-scan{position:absolute;left:0;right:0;top:50%;height:2px;z-index:2;background:var(--accent);box-shadow:0 0 28px 6px var(--glow);transform:scaleX(0);animation:ixScan 1s cubic-bezier(.2,.8,.2,1) forwards}
.ix-hud{position:absolute;z-index:3;top:calc(22px + env(safe-area-inset-top,0px));left:calc(28px + env(safe-area-inset-left,0px));right:calc(28px + env(safe-area-inset-right,0px));display:flex;justify-content:space-between;gap:16px;font:500 .6875rem/1 var(--mono);letter-spacing:.22em;color:#5f7280;opacity:0;animation:ixFade .5s .5s forwards;font-variant-numeric:tabular-nums}
.ix-core{position:relative;z-index:3;display:grid;justify-items:center;gap:16px;padding:24px;transition:opacity .25s}
.ix-stage{position:relative;width:min(340px,62vw);aspect-ratio:1}
.ix-ret{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transition:transform .7s cubic-bezier(.6,0,.2,1),opacity .5s}
.ix-ret .rg{fill:none;stroke:var(--accent);stroke-width:1.5;transition:stroke .25s}
.ix-ret .r1{stroke-dasharray:1194;stroke-dashoffset:1194;animation:ixDraw 1.2s .35s cubic-bezier(.6,.1,.2,1) forwards}
.ix-ret .r2{stroke-dasharray:817;stroke-dashoffset:817;animation:ixDraw 1s .55s cubic-bezier(.6,.1,.2,1) forwards}
.ix-ret .r3{stroke-dasharray:440;stroke-dashoffset:440;animation:ixDraw .9s .75s cubic-bezier(.6,.1,.2,1) forwards}
.ix-ticks line{stroke:var(--accent);stroke-width:1.5}
.ix-ticks{opacity:0;transform-origin:200px 200px;animation:ixFade .6s .9s forwards,ixSpin 14s linear infinite}
.ix-ret .ax{stroke:var(--accent);stroke-width:1;opacity:0;animation:ixDim .6s 1s forwards}
.ix-sweep{transform-origin:200px 200px;opacity:0;animation:ixFade .4s 1.1s forwards,ixSpin 1.5s 1.1s linear infinite}
.ix-sweep path{fill:var(--accent);opacity:.18}
.ix-blip{fill:var(--accent);opacity:0;transform-box:fill-box;transform-origin:center;animation:ixBlip 1.3s ease-out infinite}
.ix-brk{fill:none;stroke:#E9EDF0;stroke-width:3;transform-origin:200px 200px;transform:scale(1.7) rotate(45deg);opacity:0;transition:transform .45s cubic-bezier(.2,.9,.25,1.25),opacity .2s}
.ix-dot{fill:#E9EDF0;opacity:.5;transform-box:fill-box;transform-origin:center}
.ix.lock .ix-brk{transform:none;opacity:1}
.ix.lock .rg,.ix.lock .ix-ticks line{stroke:var(--ok)}
.ix.lock .ix-sweep{display:none}
.ix.lock .ix-dot{fill:var(--ok);opacity:1;animation:ixPing .5s ease-out}
.ix.reveal .ix-ret{transform:scale(1.4);opacity:0}
.ix-logo{position:absolute;inset:10%;width:80%;height:80%;opacity:0;transform:scale(.6);filter:blur(14px) brightness(.4);transition:opacity .7s,transform 1s cubic-bezier(.2,.85,.2,1),filter 1s}
.ix.reveal .ix-logo{opacity:1;transform:none;filter:blur(0) brightness(1)}
.ix-sheen{position:absolute;inset:10%;pointer-events:none;opacity:0;-webkit-mask:url(logo.webp) center/contain no-repeat;mask:url(logo.webp) center/contain no-repeat;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.6) 50%,transparent 62%);background-size:260% 100%;background-position:150% 0}
.ix.shine .ix-sheen{opacity:1;animation:ixSheen 1.1s ease-in-out forwards}
.ix-prog{display:flex;align-items:center;gap:12px;width:min(340px,70vw);opacity:0;transition:opacity .3s}
.ix-prog.on{opacity:1}
.ix.reveal .ix-prog{opacity:0}
.ix-bar{flex:1;height:2px;background:#1b2229;position:relative;overflow:hidden}
.ix-bar i{position:absolute;inset:0;background:var(--accent);transform-origin:left;transform:scaleX(0)}
.ix-pct{font:500 .75rem/1 var(--mono);font-variant-numeric:tabular-nums;color:#E9EDF0;min-width:4ch;text-align:right}
.ix-grant{margin:0;min-height:1em;font:800 clamp(2rem,6.4vw,4rem)/1 var(--display);letter-spacing:.18em;color:var(--ok);text-transform:uppercase;white-space:pre;text-shadow:0 0 30px color-mix(in srgb,var(--ok) 40%,transparent)}
.ix-tag{margin:0;font:500 .78rem/1 var(--mono);letter-spacing:.42em;text-transform:uppercase;color:#8FA3B2;opacity:0;transform:translateY(6px);transition:opacity .6s,transform .6s}
.ix.tag .ix-tag{opacity:1;transform:none}
.ix-term{position:absolute;z-index:3;left:calc(28px + env(safe-area-inset-left,0px));bottom:calc(28px + env(safe-area-inset-bottom,0px));display:grid;gap:8px;font:400 .7rem/1.3 var(--mono);letter-spacing:.12em;color:#8FA3B2;text-transform:uppercase;transition:opacity .25s}
.ix-term p{margin:0;white-space:nowrap}
.ix-term b{color:var(--ok);font-weight:500}
.ix-skip{position:absolute;z-index:4;right:calc(24px + env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px));background:transparent;color:#E9EDF0;border:1px solid #3a444d;font:500 .72rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;padding:12px 16px;cursor:pointer}
.ix-skip:hover{border-color:#E9EDF0}
.ix.open .ix-core,.ix.open .ix-term,.ix.open .ix-grid,.ix.open .ix-hud,.ix.open .ix-skip,.ix.open .ix-video,.ix.open .ix-scan{opacity:0;transition:opacity .2s}
.ix.static .ix-ret{display:none}
.ix.static .ix-logo{transition:none}
@media (max-width:560px){.ix-term{left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom,0px));font-size:.6875rem}.ix-hud{font-size:.6875rem;letter-spacing:.14em}}
@keyframes ixFade{to{opacity:1}}
@keyframes ixDim{to{opacity:.35}}
@keyframes ixDraw{to{stroke-dashoffset:0}}
@keyframes ixSpin{to{transform:rotate(360deg)}}
@keyframes ixScan{0%{transform:scaleX(0);opacity:1}55%{transform:scaleX(1);opacity:1}100%{transform:scaleX(1) scaleY(.3);opacity:0}}
@keyframes ixBlip{0%{opacity:0;transform:scale(.4)}25%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(2.6)}}
@keyframes ixPing{0%{transform:scale(1)}50%{transform:scale(3)}100%{transform:scale(1)}}
@keyframes ixSheen{to{background-position:-60% 0}}
.ix-sound{position:absolute;z-index:4;right:calc(24px + env(safe-area-inset-right,0px));bottom:calc(72px + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#030405;border:1px solid var(--accent);font:600 .72rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;padding:12px 16px;cursor:pointer}
.ix-sound::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;animation:ixPulse 1.2s ease-in-out infinite}
.ix-sound.is-on{background:transparent;color:#E9EDF0;border-color:#3a444d}
.ix-sound.is-on::before{animation:none;background:var(--ok)}
.ix.open .ix-sound{opacity:0;transition:opacity .2s}
@keyframes ixPulse{50%{opacity:.25}}

/* ---- chain of command ---- */
.ladder{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
.ladder-g{font:500 .7rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);padding:22px 4px 10px}
.ladder-r{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px 4px;border-bottom:1px solid var(--line)}
.ladder-r .lvl{font:800 1.5rem/1 var(--display);color:var(--mute);font-variant-numeric:tabular-nums}
.ladder-r b{display:block;font:800 1.45rem/1.05 var(--display);text-transform:uppercase;letter-spacing:.03em}
.ladder-r small{color:var(--mute);font-size:.94rem}
.ladder-r .grp{font:500 .6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);padding:6px 8px;white-space:nowrap}
.ladder-r.top{background:linear-gradient(90deg,var(--glow),transparent 70%)}
.ladder-r.top .lvl,.ladder-r.top b{color:var(--ink)}
.ladder-r.top .lvl{color:var(--accent)}
.ladder-s{margin:8px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
@media (max-width:560px){.ladder-r{grid-template-columns:40px minmax(0,1fr)}.ladder-r .grp{display:none}}
.livebadge{display:inline-flex;align-items:center;gap:6px;font:700 .6875rem/1 var(--mono);letter-spacing:.12em;color:#fff;background:var(--alert);padding:5px 7px;vertical-align:middle}
.livebadge i{width:6px;height:6px;border-radius:50%;background:#fff;animation:ixPulse 1.4s ease-in-out infinite}
.chain{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.chain li{display:inline-flex;align-items:center;gap:8px;font:600 .95rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase;padding:10px 12px;border:1px solid var(--line);background:var(--panel)}
.chain li.top{border-color:var(--accent);color:var(--ink);background:linear-gradient(90deg,var(--glow),var(--panel))}
.chain li+li::before{content:"‹";color:var(--mute);margin-right:4px;font-family:var(--mono)}
.cal-links{margin-top:4px}
.op.is-now{background:linear-gradient(90deg,color-mix(in srgb,var(--alert) 14%,transparent),transparent 70%)}

/* ---- services ---- */
.routes a:first-child{grid-row:auto;align-content:start}
.routes a:first-child b{font-size:1.5rem}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.checks li{display:grid;grid-template-columns:18px 1fr;gap:8px;font-size:.95rem;color:var(--ink)}
.checks li::before{content:"";width:10px;height:10px;margin-top:6px;border:1px solid var(--ok);background:color-mix(in srgb,var(--ok) 30%,transparent)}
.svc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:760px){.svc{grid-template-columns:1fr}}
.svc-card{padding:24px;display:grid;gap:12px;align-content:start}
.svc-card .n{font:500 .7rem/1 var(--mono);color:var(--accent);letter-spacing:.14em}
.svc-card h3{font-size:1.7rem}
.svc-card>p{color:var(--mute)}
.svc-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line)}
.svc-strip>div{padding:18px;display:grid;gap:6px;border-left:1px solid var(--line);align-content:start}
.svc-strip>div:first-child{border-left:0}
.svc-strip b{font:800 1.25rem/1.05 var(--display);text-transform:uppercase}
.svc-strip small{color:var(--mute);font-size:.9rem}
@media (max-width:860px){.svc-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-strip>div:nth-child(3){border-left:0}.svc-strip>div:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:480px){.svc-strip{grid-template-columns:1fr}.svc-strip>div{border-left:0;border-top:1px solid var(--line)}.svc-strip>div:first-child{border-top:0}}
.case{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:clamp(24px,4vw,56px);align-items:center}
.case-copy{display:grid;gap:18px;min-width:0}
.case-copy h2{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.case-mark{justify-self:center;width:100%;max-width:300px}
.case-mark img{width:100%;height:auto;filter:drop-shadow(0 30px 60px rgba(0,0,0,.6))}
@media (max-width:820px){.case{grid-template-columns:1fr}.case-mark{max-width:180px;order:-1}}
.proc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:2px solid var(--accent)}
.proc li{display:grid;gap:8px;align-content:start;padding:20px 18px 0 0}
.proc .n{font:800 2rem/1 var(--display);color:var(--accent)}
.proc b{font:800 1.35rem/1 var(--display);text-transform:uppercase}
.proc small{color:var(--mute);font-size:.94rem}
@media (max-width:760px){.proc{grid-template-columns:1fr 1fr;row-gap:20px}}
@media (max-width:440px){.proc{grid-template-columns:1fr}}
.pk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
@media (max-width:900px){.pk{grid-template-columns:1fr}}
.pk-card{padding:26px 22px;display:grid;gap:12px;align-content:start;border:1px solid var(--line);background:var(--bg)}
.pk-card.is-feat{background:var(--panel);border-color:var(--accent)}
.pk-card .btn{justify-self:start;margin-top:8px}
.pk-tag{font:500 .7rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.pk-card h3{font-size:2rem}
.pk-price{font:700 1.1rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase}
.pk-desc{color:var(--mute)}
.faq-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);align-items:start}
@media (max-width:900px){.faq-wrap{grid-template-columns:1fr}}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:18px 4px;font:700 1.15rem/1.2 var(--display);letter-spacing:.04em;text-transform:uppercase}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--accent);font-family:var(--mono)}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--mute);padding:0 4px 18px;max-width:62ch}
.ff-set{border:1px solid var(--line);margin:0;padding:12px 14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.ff-set legend{font:500 .7rem/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);padding:0 6px}
@media (max-width:560px){.ff-set{grid-template-columns:1fr}}
@media (max-width:1500px){.navlinks a{padding-inline:8px;font-size:.9rem}}
@media (max-width:1600px){.navcta .btn-secondary{display:none}}
.phero h1{font-size:clamp(2.3rem,7.4vw,5.4rem);overflow-wrap:break-word}
.shead h2{overflow-wrap:break-word}
.phero h1{font-size:clamp(2.3rem,4.8vw,4.4rem)}
.phero .shead{min-width:0}

/* ---- services v2 ---- */
.stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
@media (max-width:900px){.stages{grid-template-columns:1fr}}
.stage{padding:24px 22px;display:grid;gap:12px;align-content:start;grid-template-rows:auto auto auto auto 1fr auto}
.stage .n{font:500 .7rem/1 var(--mono);color:var(--accent);letter-spacing:.14em;text-transform:uppercase}
.stage h3{font-size:2rem}
.stage-line{color:var(--ink);font-size:1.05rem;min-height:2.9em}
.stage .btn{justify-self:start;margin-top:6px}
.stage:hover{border-color:var(--accent)}
.needs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
@media (max-width:860px){.needs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.needs{grid-template-columns:1fr}}
.needs>div{background:var(--bg2);padding:22px 20px;display:grid;gap:8px;align-content:start}
.needs b{font:800 1.4rem/1.05 var(--display);text-transform:uppercase;letter-spacing:.02em}
.needs small{color:var(--mute);font-size:.95rem;line-height:1.5}
.statement{display:grid;gap:22px;justify-items:start;max-width:880px}
.statement h2{font-size:clamp(2.8rem,7vw,5.6rem)}
.statement p:not(.eyebrow){font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.55;color:var(--ink);opacity:.85;max-width:56ch}
@media (min-width:861px){.svc-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.svc-strip>div:nth-child(3){border-left:1px solid var(--line)}.svc-strip>div:nth-child(4){border-left:0}.svc-strip>div:nth-child(n+4){border-top:1px solid var(--line)}}
.stage{grid-template-rows:auto auto auto 1fr auto;scroll-margin-top:90px}

/* ---- top tabs + all-pages menu ---- */
.top .top-row{display:flex;align-items:center;gap:20px;padding-block:10px}
.tabs{display:flex;gap:2px;margin-left:auto;min-width:0;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs a{white-space:nowrap;font:600 .95rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);text-decoration:none;padding:12px 10px;border-bottom:2px solid transparent}
.tabs a:hover{color:var(--ink);border-bottom-color:var(--line)}
.tabs a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--accent)}
.top .navcta{display:flex;gap:8px;align-items:center;flex:none}
.top .menu-btn{display:inline-flex;align-items:center;gap:8px;margin:0}
.top.is-open .menu-btn{border-color:var(--accent);color:var(--ink)}
.drawer{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg2);border-bottom:1px solid var(--line);box-shadow:0 30px 60px rgba(0,0,0,.5)}
.top.is-open .drawer{display:block}
.drawer .wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding-block:16px 20px}
.drawer a{display:grid;gap:4px;padding:12px;border:1px solid var(--line);text-decoration:none;background:var(--bg)}
.drawer a:hover{border-color:var(--accent)}
.drawer a[aria-current="page"]{border-color:var(--accent)}
.drawer b{font:700 1rem/1.1 var(--display);letter-spacing:.08em;text-transform:uppercase}
.drawer small{color:var(--mute);font-size:.8rem;line-height:1.4}
@media (max-width:1100px){.drawer .wrap{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1200px){
  .top .top-row{flex-wrap:wrap;row-gap:0}
  .top .navcta{margin-left:auto}
  .tabs{order:5;flex-basis:100%;margin:0 calc(-1 * max(16px,env(safe-area-inset-left,0px))) ;padding-inline:max(10px,env(safe-area-inset-left,0px));border-top:1px solid var(--line);margin-top:10px}
  .tabs a{padding:12px 10px;font-size:.88rem}
}
@media (max-width:560px){.drawer .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer small{display:none}}

@media (max-width:1200px){.tabs{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}}
@media (min-width:700px) and (max-width:1200px){.tabs{-webkit-mask-image:none;mask-image:none}}

/* wordmark dot: solid black like the emblem center, with a hairline steel ring so it reads on dark backgrounds */
.brand b i{display:inline-block;width:9px;height:9px;overflow:hidden;color:transparent;font-size:9px;line-height:9px;border-radius:50%;background:#000;box-shadow:0 0 0 1px #6B7884,0 0 8px rgba(163,173,184,.25);vertical-align:.22em;margin:0 4px}

/* ---- platform players ---- */
.player{display:grid;gap:0;min-width:0}
.ptabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}
.ptabs::-webkit-scrollbar{display:none}
.ptabs button{background:none;border:0;border-bottom:2px solid transparent;color:var(--mute);font:700 .9rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;padding:12px 14px;cursor:pointer;white-space:nowrap;margin-bottom:-1px}
.ptabs button:hover{color:var(--ink)}
.ptabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
.pframe{position:relative;width:100%;max-width:100%;background:var(--bg2);border:1px solid var(--line);border-top:0;overflow:hidden}
.pframe>iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.pframe.is-tiktok{overflow:visible;padding:16px;min-height:640px}
.pcard{position:absolute;inset:0}
.pcard>svg{position:absolute;inset:0;width:100%;height:100%}
.pcard-in{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center;padding:20px}
.pcard-line{color:var(--ink);font-size:1.05rem;max-width:40ch}

/* ---- creative details (CSS only, no extra downloads on load) ---- */
/* 1. hero: slow cinematic push-in + faint screen flicker */
.hero-media .slot>img{transform-origin:62% 45%;animation:bpPush 26s ease-in-out infinite alternate;will-change:transform}
.hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 60% 40%,rgba(120,152,173,.10),transparent 55%);animation:bpFlicker 7s steps(1) infinite}
@keyframes bpPush{from{transform:scale(1)}to{transform:scale(1.07)}}
@keyframes bpFlicker{0%,100%{opacity:1}8%{opacity:.55}9%{opacity:1}46%{opacity:.8}47%{opacity:1}73%{opacity:.6}74%{opacity:1}}
/* 2. HUD section dividers: tick rail with a reticle mark */
.mod::before{content:"";position:absolute;top:-5px;left:50%;transform:translateX(-50%);width:min(var(--rail),calc(100% - 32px));height:9px;pointer-events:none;
  background:radial-gradient(circle,var(--accent) 0 2px,transparent 2.5px) 50% 50%/9px 9px no-repeat,
    radial-gradient(circle,transparent 0 3.5px,var(--accent) 4px 4.6px,transparent 5px) 50% 50%/9px 9px no-repeat,
    repeating-linear-gradient(90deg,color-mix(in srgb,var(--accent) 45%,transparent) 0 1px,transparent 1px 48px) 0 3px/100% 3px no-repeat;opacity:.7}
.mod-pageHero::before,.hero+.mod::before{display:none}
/* 3. directory tiles: page image reveals on hover (loads only when hovered) */
.routes a{overflow:hidden;isolation:isolate}
.routes a::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,var(--panel) 15%,color-mix(in srgb,var(--panel) 55%,transparent)),var(--panel);opacity:0;transform:scale(1.04);transition:opacity .35s,transform .6s}
.routes a:hover::before,.routes a:focus-visible::before{background:linear-gradient(0deg,var(--panel) 18%,color-mix(in srgb,var(--panel) 45%,transparent)),var(--img,none) center/cover;opacity:1;transform:none}
.routes .go{font:500 .7rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;opacity:.6;transition:opacity .25s,transform .25s}
.routes a:hover .go,.routes a:focus-visible .go{opacity:1;transform:translateX(-4px)}
/* 4. page transitions: reticle-style reveal between pages (browsers with cross-document view transitions; others load normally) */
@view-transition{navigation:auto}
::view-transition-old(root){animation:bpOut .22s ease-in both}
::view-transition-new(root){animation:bpIn .45s cubic-bezier(.2,.8,.2,1) both}
@keyframes bpOut{to{opacity:0;filter:brightness(.4)}}
@keyframes bpIn{from{clip-path:circle(0% at 50% 45%);filter:brightness(1.6)}to{clip-path:circle(150% at 50% 45%);filter:none}}
@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}.mod::before{opacity:.5}}
.pframe>iframe{background:#05070a;color-scheme:dark}
.brand b i{width:11px;height:11px;box-shadow:0 0 0 1px #3B4650,0 0 6px rgba(163,173,184,.18)}

@media (max-width:760px){.top .menu-btn,.top .navcta .btn{min-height:44px}.tabs a{padding-block:14px}}

/* ---- perks batch ---- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.online-pill:not(:empty){margin-left:8px;color:var(--ok)}
.online-pill:not(:empty)::before{content:"● "}
/* live banner */
.livebar{position:sticky;top:env(safe-area-inset-top,0px);z-index:41;display:flex;align-items:center;gap:14px;justify-content:center;padding:9px max(16px,env(safe-area-inset-right,0px)) 9px max(16px,env(safe-area-inset-left,0px));background:linear-gradient(90deg,color-mix(in srgb,var(--alert) 85%,#000),var(--alert));color:#fff;text-decoration:none;font:600 .9rem/1.2 var(--body)}
.livebar b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.livebar .livebadge{background:#000}
.livebar .lb-go{font:700 .85rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.is-live .top{top:calc(env(safe-area-inset-top,0px) + 38px)}
/* insignia */
.ins{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.12em;margin-right:.45em;color:var(--accent);flex:none}
.ins .f{fill:currentColor;stroke:none}
.ladder-r.top .ins{color:var(--ink)}
.chain li .ins{margin-right:2px}
/* hotspots */
.hs-wrap{position:relative;min-width:0}
.hs{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;border:2px solid #fff;background:color-mix(in srgb,var(--accent) 70%,transparent);cursor:pointer;z-index:2;box-shadow:0 0 0 0 rgba(120,152,173,.6);animation:hsPulse 2.4s ease-out infinite;padding:0}
.hs::after{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}
.hs[aria-expanded="true"]{background:var(--alert);animation:none}
@keyframes hsPulse{0%{box-shadow:0 0 0 0 rgba(120,152,173,.55)}70%{box-shadow:0 0 0 14px rgba(120,152,173,0)}100%{box-shadow:0 0 0 0 rgba(120,152,173,0)}}
.hs-pop{position:absolute;z-index:3;transform:translateX(-50%);width:min(280px,80%);padding:14px 16px;display:grid;gap:4px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(6px)}
.hs-pop b{font:800 1.15rem/1.1 var(--display);text-transform:uppercase}
.hs-pop small{color:var(--mute);font-size:.88rem;line-height:1.45}
.hs-hint{position:absolute;left:10px;bottom:10px;margin:0;font:500 .6875rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);background:color-mix(in srgb,var(--bg) 80%,transparent);padding:6px 8px;border:1px solid var(--line)}
.hs-list{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* operator id */
.idc{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,4vw,48px);align-items:center}
@media (max-width:900px){.idc{grid-template-columns:1fr}}
.idc-form{display:grid;gap:16px;min-width:0}
.idc-fmt{grid-template-columns:1fr 1fr}
@media (max-width:560px){.idc-fmt{grid-template-columns:1fr}}
.idc-prev{min-width:0;display:grid;place-items:center}
.idc-prev canvas{width:100%;height:auto;max-width:100%;border:1px solid var(--line);box-shadow:0 30px 60px rgba(0,0,0,.45)}
.idc-prev.is-p canvas{width:auto;max-height:620px;max-width:100%}
/* signup */
.signup{display:grid;gap:8px;max-width:520px}
.signup-row{display:flex;gap:8px}
.signup-row input{flex:1;min-width:0;background:var(--bg2);border:1px solid var(--line);color:var(--ink);font:400 1rem/1.4 var(--body);padding:10px 12px;border-radius:0}
.signup-row input:focus{outline:none;border-color:var(--accent)}
.foot-top{align-items:flex-start}
/* console */
.console-btn{background:none;border:0;color:var(--mute);font:500 .74rem/1 var(--mono);cursor:pointer;padding:4px 0;letter-spacing:.06em}
.console-btn:hover{color:var(--accent)}
.con{position:fixed;inset:0;z-index:80;background:rgba(3,4,5,.72);display:grid;place-items:start center;padding:calc(12vh + env(safe-area-inset-top,0px)) 16px 16px}
.con-box{width:min(720px,100%);background:#05080b;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:70vh}
.con-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);font:500 .72rem/1 var(--mono);letter-spacing:.16em;color:var(--accent)}
.con-out{overflow-y:auto;padding:14px;min-height:180px;font:400 .9rem/1.6 var(--mono);color:#A3ADB8}
.con-out p{margin:0;white-space:pre-wrap}
.con-out .con-cmd{color:#F1F3F5}
.con-out .con-ok{color:var(--ok)}
.con-out .con-err{color:var(--alert)}
.con-in{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--line);font:500 1rem/1 var(--mono);color:var(--accent)}
.con-in input{flex:1;min-width:0;background:transparent;border:0;color:#F1F3F5;font:400 1rem/1.4 var(--mono);outline:none}
/* emblem tilt + clearance intro */
.hero-emblem{transition:transform .25s ease-out;transform-style:preserve-3d}
.ix.clearance .ix-grant{color:var(--alert);text-shadow:0 0 30px color-mix(in srgb,var(--alert) 45%,transparent)}
.ix.clearance.lock .rg,.ix.clearance.lock .ix-ticks line{stroke:var(--alert)}

.foot-top .signup{flex:1 1 300px;min-width:0;max-width:520px}
.foot-top .signup .label{white-space:normal}

.foot .wrap>*{min-width:0}
.signup-row input{width:100%}
@media (max-width:760px){.foot-top{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.foot-top .signup{max-width:none}}

/* armory: product loadout */
.gear-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:18px}
.gear{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px;background:linear-gradient(180deg,rgba(143,169,192,.06),transparent 60%),var(--panel,#0E141B);border:1px solid var(--line);min-width:0;transition:border-color .2s,transform .2s}
.gear:hover{border-color:var(--accent);transform:translateY(-2px)}
.gear[hidden]{display:none}
.gear-top{display:flex;justify-content:space-between;font:500 .6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.gear-vis{height:112px;display:grid;place-items:center;margin:8px 0 6px;background:radial-gradient(closest-side,rgba(143,169,192,.14),transparent);color:var(--accent)}
.gear-vis svg{width:58px;height:58px;filter:drop-shadow(0 0 10px rgba(143,169,192,.35))}
.gear-vis img{max-width:100%;max-height:100%;object-fit:contain}
.gear-brand{margin:0;font:600 .72rem/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.gear h3{margin:0;font-size:1.25rem;line-height:1.15}
.gear-use{margin:2px 0 8px;color:var(--mute);font-size:.92rem;line-height:1.45;flex:1}
.gear-cta,.gear-stamp{align-self:flex-start;font:600 .72rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:10px 12px;min-height:36px;display:inline-flex;align-items:center;gap:6px}
.gear-cta{background:var(--accent);color:var(--bg);text-decoration:none}
.gear-cta:hover{filter:brightness(1.12)}
.gear-stamp{border:1px dashed var(--line);color:var(--mute)}
.gear-stamp::before{content:"";width:6px;height:6px;border-radius:50%;background:#5FBF8A;box-shadow:0 0 8px #5FBF8A}
.gear-spot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:0;margin:22px 0 8px;border:1px solid var(--accent)}
.gear-spot .gear{border:0;padding:24px}
.gear-big .gear-vis{height:200px}.gear-big .gear-vis svg{width:110px;height:110px}
.gear-big h3{font-size:clamp(1.6rem,3vw,2.2rem)}
.gear-flag{margin:0;font:600 .6875rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--bg);background:var(--accent);align-self:flex-start;padding:5px 8px}
.gear-why{padding:28px;display:flex;flex-direction:column;justify-content:center;gap:10px;border-left:1px solid var(--line);background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(143,169,192,.04) 14px 15px)}
.gear-why .kick{margin:0;font:500 .72rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.gear-why p:last-child{margin:0;font:italic 500 clamp(1.15rem,2vw,1.5rem)/1.4 var(--body);color:var(--ink)}
@media (max-width:760px){.gear-spot{grid-template-columns:1fr}.gear-why{border-left:0;border-top:1px solid var(--line)}.gear-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr))}}
@media (prefers-reduced-motion:reduce){.gear,.gear:hover{transition:none;transform:none}}
@media (max-width:760px){.gear-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gear{padding:12px 12px 14px}.gear-vis{height:64px;margin:4px 0}.gear-vis svg{width:38px;height:38px}.gear h3{font-size:1.02rem}.gear-use{font-size:.82rem}.gear-top span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.gear-cta,.gear-stamp{font-size:.6875rem;padding:8px 9px}.gear-big .gear-vis{height:120px}.gear-big .gear-vis svg{width:76px;height:76px}}

.gear-stamp.plan{border-color:rgba(214,170,90,.5);color:#D6AA5A}.gear-stamp.plan::before{background:#D6AA5A;box-shadow:0 0 8px #D6AA5A}
.gear-sub{margin-top:34px}.gear-sub[hidden]{display:none}
.gear-grid-mini{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.gear-mini{padding:12px 14px;gap:3px}.gear-mini h3{font-size:1rem}.gear-mini .gear-use{margin:0;font-size:.85rem}.gear-mini .gear-cta{margin-top:6px}
@media (max-width:760px){.gear-grid-mini{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* ===== Armory v3: vault + upgrade path ===== */
.vault{margin:26px 0 10px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--bg);outline:none}
.vault:focus-visible{box-shadow:0 0 0 2px var(--accent)}
.vault-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}
.vault-head .kick{margin:0;font:500 .72rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.vault-head .kick::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--alert);margin-right:9px;vertical-align:1px;animation:vRec 1.6s steps(2) infinite}
@keyframes vRec{50%{opacity:.2}}
.vault-ctl{display:flex;align-items:center;gap:8px}.vault-ctl .ib{min-width:44px;height:44px;font-size:1rem}
.vault-count{font:500 .78rem/1 var(--mono);color:var(--ink);letter-spacing:.1em;min-width:62px;text-align:center}
.vault-win{position:relative;display:grid;overflow:hidden}
.vs{grid-area:1/1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s .45s}
.vs.on{opacity:1;visibility:visible;transition:opacity .45s ease}
.vs-stage{position:relative;min-height:420px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(120% 70% at 50% 110%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 60%),#05070A}
.vs-cone{position:absolute;left:50%;top:-6%;width:78%;height:96%;transform:translateX(-50%);clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 34%,transparent),color-mix(in srgb,var(--accent) 10%,transparent) 70%,transparent);filter:blur(8px);opacity:.55;animation:vCone 5s ease-in-out infinite}
@keyframes vCone{0%,100%{opacity:.5}47%{opacity:.62}50%{opacity:.38}53%{opacity:.6}}
.vs-ring{position:absolute;width:300px;height:300px;border-radius:50%;border:1px dashed color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:inset 0 0 0 14px transparent,inset 0 0 0 15px color-mix(in srgb,var(--accent) 14%,transparent);animation:vSpin 40s linear infinite}
@keyframes vSpin{to{transform:rotate(360deg)}}
.vs-obj{position:relative;z-index:2;color:var(--ink);width:170px;height:170px;display:grid;place-items:center;animation:vFloat 6s ease-in-out infinite}
.vs-obj svg{width:100%;height:100%;stroke-width:1.4;filter:drop-shadow(0 0 18px color-mix(in srgb,var(--accent) 70%,transparent)) drop-shadow(0 18px 24px rgba(0,0,0,.7))}
.vs-obj img{max-width:300px;max-height:240px;object-fit:contain;filter:drop-shadow(0 20px 30px rgba(0,0,0,.7))}
.vs.on .vs-obj{animation:vIn .9s cubic-bezier(.2,.8,.2,1),vFloat 6s ease-in-out .9s infinite}
@keyframes vIn{from{opacity:0;transform:scale(.82) translateY(14px);filter:blur(6px) brightness(2)}}
@keyframes vFloat{50%{transform:translateY(-8px)}}
.vs-floor{position:absolute;bottom:13%;width:260px;height:34px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 45%,transparent),transparent);filter:blur(4px)}
.vs-hud{position:absolute;font:500 .6875rem/1 var(--mono);letter-spacing:.16em;color:var(--mute);z-index:3}
.vs-hud.tl{top:14px;left:16px}.vs-hud.tr{top:14px;right:16px}.vs-hud.bl{bottom:14px;left:16px;color:var(--accent)}
.vs[data-plan] .vs-obj{filter:blur(3px) grayscale(1);opacity:.55}
.vs[data-plan] .vs-stage::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 18px,rgba(214,170,90,.06) 18px 20px)}
.vs-info{padding:34px 34px 30px;display:flex;flex-direction:column;justify-content:center;gap:10px;border-left:1px solid var(--line);background:linear-gradient(180deg,var(--bg2),var(--bg))}
.vs-name{margin:0;font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.02;letter-spacing:-.01em;min-height:1em}
.vs-why{margin:4px 0 0;font:italic 500 clamp(1.05rem,1.6vw,1.3rem)/1.45 var(--body);color:var(--ink)}
.vs-badge{align-self:flex-start;margin:0 0 4px;font:600 .6875rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;padding:6px 9px;background:var(--accent);color:var(--bg);animation:vRec 1.2s steps(2) 3}
.vs-badge.plan{background:transparent;color:#D6AA5A;border:1px dashed rgba(214,170,90,.6);animation:none}
.vault-gate{position:absolute;inset:0;z-index:5;display:grid;place-items:center;pointer-events:none;opacity:0;background:rgba(5,7,10,.72)}
.vault-gate i{position:absolute;left:0;right:0;top:0;height:2px;background:var(--accent);box-shadow:0 0 18px 4px color-mix(in srgb,var(--accent) 60%,transparent)}
.vault-gate b{font:600 clamp(.85rem,1.6vw,1.1rem)/1 var(--mono);letter-spacing:.32em;color:var(--ink);padding:12px 16px;border:1px solid var(--accent);background:var(--bg)}
.vault.gating .vault-gate{animation:vGate .85s ease forwards}.vault.gating .vault-gate i{animation:vScan .85s linear forwards}
.vault.gating-long .vault-gate{animation:vGateL 2s ease forwards}.vault.gating-long .vault-gate i{animation:vScan 1s linear 2 forwards}
@keyframes vGate{0%{opacity:0}15%,55%{opacity:1}100%{opacity:0}}
@keyframes vGateL{0%{opacity:0}8%,75%{opacity:1}100%{opacity:0}}
@keyframes vScan{from{top:0}to{top:100%}}
.vault-bar{height:3px;background:var(--line)}.vault-bar i{display:block;height:100%;width:0;background:var(--accent)}
.path-intro{max-width:62ch;color:var(--mute);margin:-6px 0 8px}
.phase{margin-top:34px}
.phase-head{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:18px;row-gap:4px;align-items:baseline;padding-left:14px;border-left:2px solid var(--accent);margin-bottom:16px}
.phase-code{grid-row:span 2;font:600 .72rem/1 var(--mono);letter-spacing:.18em;color:var(--accent);padding-top:6px}
.phase-head h3{margin:0;font-size:clamp(1.4rem,2.6vw,2rem);text-transform:uppercase}
.phase-head p{margin:0;color:var(--mute)}
.picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px}
.pick{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);min-width:0;transition:border-color .25s,transform .25s}
.pick:hover{border-color:var(--accent);transform:translateY(-3px)}
.pick-vis{position:relative;height:178px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(55% 90% at 50% -10%,color-mix(in srgb,var(--ink) 20%,transparent),transparent 70%),#06090C;border-bottom:1px solid var(--line)}
.pick-obj{position:relative;z-index:2;width:78px;height:78px;color:var(--ink);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.pick-obj svg{width:100%;height:100%;stroke-width:1.5;filter:drop-shadow(0 0 12px color-mix(in srgb,var(--accent) 60%,transparent)) drop-shadow(0 10px 14px rgba(0,0,0,.7))}
.pick-obj img{width:auto;height:auto;max-width:200px;max-height:140px;object-fit:contain}
.pick:has(img) .pick-obj{width:auto;height:auto}
.pick:hover .pick-obj{transform:translateY(-6px) scale(1.05)}
.pick-floor{position:absolute;bottom:22px;width:130px;height:16px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 45%,transparent),transparent)}
.pick-code{position:absolute;top:12px;left:14px;font:500 .6875rem/1 var(--mono);letter-spacing:.16em;color:var(--mute);z-index:3}
.pick-new{position:absolute;top:10px;right:12px;z-index:3;font:600 .6875rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;padding:5px 7px;background:var(--accent);color:var(--bg)}
.pick-body{display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px;flex:1}
.pick-body h3{margin:0;font-size:1.3rem;line-height:1.12}
.pick-lab{margin:6px 0 0;font:500 .6875rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.pick-why{margin:0;font-size:.95rem;line-height:1.5;color:var(--ink)}
.pick-skip{margin:4px 0 0;font-size:.86rem;line-height:1.45;color:var(--mute);padding-left:10px;border-left:2px solid var(--line)}
.pick-skip b{font:600 .6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-right:4px}
.pick-foot{margin-top:auto;padding-top:12px}
.vs-info .pick-foot{margin-top:6px}
.pick.is-plan .pick-obj{filter:blur(2px) grayscale(1);opacity:.6}
.specs{margin-top:44px;border:1px solid var(--line);background:var(--bg2)}
.specs summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;min-height:44px}
.specs summary::-webkit-details-marker{display:none}
.specs summary span{font:600 .9rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase}
.specs summary span::before{content:"+";display:inline-block;width:1.2em;color:var(--accent)}
.specs[open] summary span::before{content:"–"}
.specs summary small{font:500 .7rem/1.3 var(--mono);color:var(--mute);letter-spacing:.08em;text-align:right}
.specs-in{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:22px 30px;padding:6px 20px 24px;border-top:1px solid var(--line)}
.specs-g h4{margin:16px 0 8px;font:600 .72rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.specs-g ul{list-style:none;margin:0;padding:0}
.specs-g li{display:grid;grid-template-columns:minmax(0,90px) minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--line);font-size:.9rem}
.specs-g li .b{font:500 .6875rem/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.specs-g li .s{font:500 .6875rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ok)}.specs-g li .s.plan{color:#D6AA5A}
.specs-a{font:600 .6875rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
@media (max-width:860px){.vs{grid-template-columns:1fr}.vs-stage{min-height:280px}.vs-ring{width:210px;height:210px}.vs-obj{width:118px;height:118px}.vs-floor{width:190px}.vs-info{border-left:0;border-top:1px solid var(--line);padding:22px 18px}.vs-hud.tr{display:none}}
@media (max-width:560px){.picks{grid-template-columns:1fr}.pick{display:grid;grid-template-columns:110px minmax(0,1fr)}.pick-vis{height:auto;min-height:100%;border-bottom:0;border-right:1px solid var(--line)}.pick-obj{width:54px;height:54px}.pick-floor{width:80px;bottom:16px}.pick-code{left:10px;top:10px}.pick-new{right:auto;left:8px;top:auto;bottom:8px}.pick-body{padding:14px}.pick-body h3{font-size:1.1rem}.phase-head{grid-template-columns:1fr}.phase-code{grid-row:auto;padding:0}}
@media (prefers-reduced-motion:reduce){.vs-cone,.vs-ring,.vs-obj,.vs.on .vs-obj,.vault-head .kick::before,.vs-badge{animation:none}.vault-gate{display:none}.pick,.pick-obj{transition:none}.pick:hover,.pick:hover .pick-obj{transform:none}}
.picks{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}@media (max-width:560px){.picks{grid-template-columns:1fr}}
[data-thanks][hidden]{display:none!important}select.is-picked{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
/* short-form lanes */
.lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.lane{margin:0;display:flex;flex-direction:column;min-width:0;background:var(--panel);border:1px solid var(--line)}
.lane figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}
.lane-name{font:700 .9rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase}
.lane-sub{font:500 .6875rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.lane-frame{position:relative;aspect-ratio:9 / 16;background:#05070a;overflow:hidden}
.lane-frame>iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;color-scheme:dark}
.lane-frame.is-creator{overflow-y:auto;background:#fff}
.lane-frame.is-creator .tiktok-embed{margin:0!important;min-width:0!important;max-width:100%!important}
.lane-frame .pcard{position:absolute;inset:0}
.lane-ctl{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid var(--line);min-height:56px;font:500 .72rem/1 var(--mono);color:var(--mute)}
.lane-ctl .ib{min-width:44px;height:40px}
.lane-ctl a{color:var(--accent);text-decoration:none;letter-spacing:.06em;margin-left:auto}
.lane-ctl>div,.lane-ctl>span:first-child{display:flex;align-items:center;gap:8px}
@media (max-width:900px){.lanes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;margin-right:calc(var(--gut,16px)*-1)}.lane{flex:0 0 min(78vw,340px);scroll-snap-align:start}}
@media (min-width:901px){.lanes{max-width:980px}}
/* highlights reel */
.reel{display:grid;gap:14px;min-width:0}
.reel-stage{border:1px solid var(--line);background:var(--panel)}
.reel-frame{position:relative;aspect-ratio:16 / 9;background:#05070a;overflow:hidden}
.reel-frame>iframe{position:absolute;inset:0;width:100%;height:100%;border:0;color-scheme:dark}
.reel-frame .pcard{position:absolute;inset:0}
.reel-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-top:1px solid var(--line);min-width:0}
.reel-now{display:flex;align-items:center;gap:10px;min-width:0}
.reel-now span{font:600 1rem/1.25 var(--body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reel-nav{display:flex;align-items:center;gap:8px;font:500 .74rem/1 var(--mono);color:var(--mute);flex:none}
.reel-nav .ib{min-width:44px;height:44px}
.reel.no-strip .reel-nav,.reel.no-strip .reel-strip-wrap{display:none}
.rsrc{font:700 .6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:4px 6px;background:var(--bg);color:var(--ink);border:1px solid var(--line);flex:none}
.rsrc.s-twitch{background:#9146FF;border-color:#9146FF;color:#fff}.rsrc.s-youtube{background:#c4302b;border-color:#c4302b;color:#fff}.rsrc.s-kick{background:#53FC18;border-color:#53FC18;color:#05070a}
.reel-strip-wrap .kick{margin:0 0 8px;font:500 .7rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.reel-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px;scrollbar-width:thin}
.rthumb{flex:0 0 220px;scroll-snap-align:start;display:flex;flex-direction:column;gap:6px;text-align:left;background:none;border:0;padding:0;color:var(--ink);cursor:pointer}
.rthumb-img{position:relative;display:block;aspect-ratio:16 / 9;background:#05070a;border:1px solid var(--line);overflow:hidden}
.rthumb-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}
.rthumb:hover .rthumb-img img{transform:scale(1.05)}
.rthumb-ph{position:absolute;inset:0;background:radial-gradient(60% 80% at 50% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent),#05070a}
.rthumb-img .rsrc{position:absolute;top:6px;left:6px}
.rthumb-img em{position:absolute;bottom:6px;right:6px;font:600 .6875rem/1 var(--mono);font-style:normal;background:rgba(0,0,0,.75);padding:3px 5px}
.rthumb.on .rthumb-img{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}
.rthumb-t{font:500 .86rem/1.3 var(--body);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rthumb small{font:500 .6875rem/1 var(--mono);color:var(--mute);letter-spacing:.08em;text-transform:uppercase}
.reel.compact .rthumb{flex-basis:180px}
@media (max-width:560px){.rthumb{flex-basis:62vw}.reel-now span{font-size:.9rem}}
@media (prefers-reduced-motion:reduce){.rthumb-img img{transition:none}}
.reel{grid-template-columns:minmax(0,1fr)}.reel-strip-wrap,.reel-stage{min-width:0}
/* live takeover (homepage, only while live) */
.takeover{padding:18px 0 22px;background:linear-gradient(180deg,rgba(185,67,72,.12),transparent 70%),var(--bg);border-bottom:1px solid var(--line)}
.to-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;min-width:0}
.to-head b{font:600 1.05rem/1.3 var(--body);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.to-frame{position:relative;aspect-ratio:16 / 9;max-height:72vh;margin:0 auto;background:#000;border:1px solid var(--alert)}
.to-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.to-unmute{position:absolute;left:14px;bottom:14px;z-index:2;font:700 .78rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:12px 16px;min-height:44px;background:var(--ink);color:var(--bg);border:0;cursor:pointer;box-shadow:0 6px 24px rgba(0,0,0,.5)}
/* last broadcast + archive (Live Ops) */
.lastvod{margin-top:22px;border:1px solid var(--line);background:var(--panel)}
.lv-body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center}
.lv-thumb{position:relative;display:block;aspect-ratio:16 / 9;width:100%;padding:0;border:0;background:#05070a;cursor:pointer;overflow:hidden}
.lv-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:.85;transition:opacity .2s}
.lv-thumb:hover img{opacity:1}
.lv-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;display:grid;place-items:center;background:var(--accent);color:var(--bg);font-size:1.3rem;border-radius:50%}
.lv-frame{position:relative;aspect-ratio:16 / 9}.lv-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.lv-meta{padding:20px 22px}.lv-meta h3{margin:6px 0 0;font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.2}
.archive{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:16px;font:500 .8rem/1.4 var(--mono)}
.archive a{color:var(--accent);text-decoration:none}.archive a:hover{text-decoration:underline}
@media (max-width:760px){.lv-body{grid-template-columns:1fr}}
.online-pill.members{opacity:.8}
/* connect everywhere */
.connect{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:12px}
.ctile{position:relative;display:flex;flex-direction:column;gap:4px;padding:16px 16px 18px;min-height:110px;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--pc);color:var(--ink);text-decoration:none;transition:transform .2s,border-color .2s;overflow:hidden}
.ctile::after{content:"";position:absolute;inset:auto -30% -60% auto;width:140px;height:140px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--pc) 30%,transparent),transparent);opacity:.5;transition:opacity .2s}
.ctile:hover{transform:translateY(-3px);border-color:var(--pc)}.ctile:hover::after{opacity:1}
.ct-who{font:500 .6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.ctile b{font:700 1.25rem/1.1 var(--display);letter-spacing:.06em;text-transform:uppercase;margin-top:6px}
.ctile small{font:500 .8rem/1.2 var(--mono);color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ct-go{position:absolute;top:12px;right:14px;color:var(--pc);font-size:1rem}
@media (prefers-reduced-motion:reduce){.ctile,.ctile:hover{transition:none;transform:none}}
.vfeat{max-width:1100px}.vfeat .slot{border:1px solid var(--line)}
.vfeat-cap{margin:10px 0 0;color:var(--mute);font-size:.92rem}
/* ===== wayfinding ===== */
.scrollbar{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;pointer-events:none}
.scrollbar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--ink));transform:scaleX(0);transform-origin:0 50%;box-shadow:0 0 10px var(--accent)}
.subnav{position:sticky;top:calc(var(--toph,61px) + env(safe-area-inset-top,0px));z-index:35;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.subnav .wrap{display:flex;align-items:center;gap:18px;min-height:46px;min-width:0}
.sn-sector{flex:none;font:600 .6875rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);padding-right:16px;border-right:1px solid var(--line)}
.sn-links{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;min-width:0;scroll-behavior:smooth}
.sn-links::-webkit-scrollbar{display:none}
.sn-links a{flex:none;font:500 .72rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);text-decoration:none;padding:12px 10px;border-bottom:2px solid transparent;white-space:nowrap}
.sn-links a:hover{color:var(--ink)}
.sn-links a.on{color:var(--ink);border-bottom-color:var(--accent)}
@media (max-width:640px){.sn-sector{display:none}}
main section[id]{scroll-margin-top:calc(var(--toph,61px) + 56px)}
.nextstop{padding:clamp(40px,6vw,72px) 0;border-top:1px solid var(--line);background:radial-gradient(80% 120% at 50% 0%,var(--glow,rgba(120,152,173,.12)),transparent 70%)}
.ns-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px}
.ns-card{position:relative;display:grid;gap:6px;min-height:170px;align-content:end;padding:22px;border:1px solid var(--line);color:var(--ink);text-decoration:none;overflow:hidden;isolation:isolate;background:var(--panel)}
.ns-card::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--img) center/cover no-repeat;opacity:.35;transform:scale(1.02);transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .4s}
.ns-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 10%,color-mix(in srgb,var(--bg) 92%,transparent) 85%)}
.ns-card:hover::before{transform:scale(1.08);opacity:.55}
.ns-card:hover{border-color:var(--accent)}
.ns-card small{font:500 .6875rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.ns-card b{font:800 clamp(1.6rem,3vw,2.4rem)/1 var(--display);letter-spacing:.04em;text-transform:uppercase}
.ns-card span{color:var(--mute);font-size:.92rem;max-width:42ch}
.ns-card i{position:absolute;top:18px;right:20px;font-style:normal;font-size:1.3rem;color:var(--accent);transition:transform .3s}
.ns-card:hover i{transform:translateX(4px)}
@media (max-width:640px){.ns-grid{grid-template-columns:1fr}.ns-card{min-height:130px}}
.totop{position:fixed;right:16px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:45;width:44px;height:44px;display:grid;place-items:center;font:700 1rem/1 var(--mono);background:color-mix(in srgb,var(--bg) 80%,transparent);color:var(--ink);border:1px solid var(--accent);cursor:pointer;backdrop-filter:blur(8px)}
@media (min-width:900px){.totop{bottom:24px;right:24px}}
.phero.no-media{grid-template-columns:1fr}.phero.no-media .phero-copy{max-width:60ch}
/* armory phase tabs */
.phase-tabs{display:none}
.phases.tabbed .phase-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:8px 0 6px;padding-bottom:4px}
.phase-tabs::-webkit-scrollbar{display:none}
.phase-tabs button{flex:none;display:grid;gap:4px;text-align:left;min-height:52px;padding:10px 14px;background:var(--panel);border:1px solid var(--line);color:var(--mute);font:700 .9rem/1.1 var(--display);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.phase-tabs button small{font:500 .6875rem/1 var(--mono);letter-spacing:.16em;color:var(--mute)}
.phase-tabs button[aria-selected="true"]{color:var(--ink);border-color:var(--accent);background:linear-gradient(180deg,var(--glow,rgba(120,152,173,.15)),var(--panel))}
.phase-tabs button[aria-selected="true"] small{color:var(--accent)}
.phases.tabbed .phase{display:none;margin-top:18px}.phases.tabbed .phase.on{display:block}
/* ===== global cinematic layer ===== */
@media (prefers-reduced-motion:no-preference){
  .hero-media img{animation:kenburns 26s ease-in-out infinite alternate;transform-origin:60% 40%}
  @keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.09) translate(-1.2%,-1%)}}
  html.fx main .mod>.wrap{opacity:0;transform:translateY(22px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
  html.fx main .mod.in>.wrap,html.fx main .mod-pageHero>.wrap{opacity:1;transform:none}
  html.fx .nextstop .ns-card{opacity:0;transform:translateY(16px);transition:opacity .7s,transform .7s}
  html.fx .nextstop.in .ns-card{opacity:1;transform:none}html.fx .nextstop.in .ns-card+.ns-card{transition-delay:.12s}
  /* target-lock brackets on media */
  main .slot::after,main .reel-stage::after{content:"";position:absolute;inset:10px;z-index:3;pointer-events:none;opacity:0;
    background:linear-gradient(var(--accent),var(--accent)) top left/22px 2px,linear-gradient(var(--accent),var(--accent)) top left/2px 22px,
      linear-gradient(var(--accent),var(--accent)) top right/22px 2px,linear-gradient(var(--accent),var(--accent)) top right/2px 22px,
      linear-gradient(var(--accent),var(--accent)) bottom left/22px 2px,linear-gradient(var(--accent),var(--accent)) bottom left/2px 22px,
      linear-gradient(var(--accent),var(--accent)) bottom right/22px 2px,linear-gradient(var(--accent),var(--accent)) bottom right/2px 22px;background-repeat:no-repeat}
  html.fx main .slot.in::after,html.fx main .reel-stage.in::after{animation:lock 1.1s cubic-bezier(.2,.7,.2,1) forwards}
  @keyframes lock{0%{inset:-6px;opacity:0}45%{opacity:1}70%{inset:12px;opacity:1}100%{inset:10px;opacity:.55}}
  .reel-stage{position:relative}
  /* hero ambient: drifting dust + scan sweep */
  .hero-media::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.5;
    background-image:radial-gradient(1px 1px at 12% 30%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 68% 22%,rgba(255,255,255,.4),transparent),radial-gradient(1.5px 1.5px at 40% 70%,rgba(255,255,255,.35),transparent),radial-gradient(1px 1px at 85% 60%,rgba(255,255,255,.45),transparent),radial-gradient(1px 1px at 25% 85%,rgba(255,255,255,.3),transparent),radial-gradient(1.5px 1.5px at 55% 45%,rgba(255,255,255,.3),transparent);
    background-size:100% 100%;animation:dust 18s linear infinite}
  @keyframes dust{from{transform:translateY(0)}to{transform:translateY(-40px)}}
  .hero::before{content:"";position:absolute;left:0;right:0;top:0;height:28%;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--accent) 10%,transparent),transparent);animation:heroScan 9s cubic-bezier(.4,0,.2,1) infinite}
  @keyframes heroScan{0%{transform:translateY(-100%);opacity:0}15%{opacity:1}60%{opacity:.6}100%{transform:translateY(400%);opacity:0}}
}
.hero{position:relative;overflow:hidden}
.hero-inner,.hero-foot{position:relative;z-index:2}
/* ===== phone compaction ===== */
@media (max-width:640px){
  .routes{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .routes a{min-height:112px!important;padding:14px!important}
  .routes a small{display:none}
  .routes a b{font-size:1.05rem}
  .connect{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .ctile{min-height:84px;padding:12px 12px 14px}
  .ctile b{font-size:1rem}.ctile small{font-size:.7rem}
  .mod-community .hq-grid .server .cat{display:none}
  #hq .hq-grid .server .cat:nth-of-type(-n+2){display:block}
  .stages{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px}
  .stages>.stage{flex:0 0 84%;scroll-snap-align:start}
  .offers{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .offers>div{padding:14px!important}.offers p{font-size:.85rem}
}
.vault-win{grid-template-columns:minmax(0,1fr)}.vs,.vs-info,.vs-stage{min-width:0}.vs-why,.vs-name{overflow-wrap:anywhere}
.mod-pageHero:has(.no-media){padding-block:clamp(36px,6vw,64px) clamp(28px,4vw,44px)!important}
.mod-pageHero:has(.no-media) h1{font-size:clamp(2.4rem,5vw,4.2rem)}
.mod>.wrap{grid-template-columns:minmax(0,1fr)}.mod>.wrap>*{min-width:0}.phases,.phase-tabs{max-width:100%;min-width:0}

.dc-g{color:var(--accent)}.dc-r{opacity:.12}
.picked-note{display:flex;gap:8px;align-items:center;margin:0 0 14px;padding:10px 12px;border:1px solid var(--accent);background:var(--glow,rgba(120,152,173,.12));font:500 .78rem/1.4 var(--mono);letter-spacing:.04em;color:var(--ink)}.picked-note span{color:var(--accent)}
.form-wrap .shead h2{font-size:clamp(2rem,3.4vw,3.2rem);min-width:0}.form-wrap>*{min-width:0}
.flashbang{position:fixed;inset:0;z-index:100;background:#fff;pointer-events:none;animation:fbang 1.4s ease-out forwards}@keyframes fbang{0%{opacity:1}35%{opacity:.95}100%{opacity:0}}
/* heading-level fixes (same look, correct structure) */
.cat h3{font:500 .7rem/1 var(--mono);letter-spacing:.16em;color:var(--mute)}
.card h3{font-size:1.15rem;letter-spacing:.03em}.card h3 a{text-decoration:none}.card h3 a:hover{color:var(--accent)}
.dir h2.fh{font:500 .72rem/1.3 var(--mono);letter-spacing:.14em;color:var(--mute);margin:0 0 12px;text-transform:uppercase}
.specs-g h3{margin:16px 0 8px;font:600 .72rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}

/* ===== launch polish: touch targets ===== */
.btn-sm,.plat,.menu-btn,.more,.lane-ctl a,.archive a,.specs-a{min-height:44px}
.btn-sm,.plat,.menu-btn{display:inline-flex;align-items:center}
.more,.lane-ctl a,.archive a{display:inline-flex;align-items:center}
.console-btn{min-height:44px;padding:0 6px}
.hs::before{content:"";position:absolute;inset:-8px}
.rsrc,.livebadge,.slot-tag,.ph{font-size:max(.6875rem,1em)}
.legal a{display:inline-block;padding:15px 4px;margin:-15px 0;color:inherit;text-decoration:underline;text-underline-offset:3px}

.hs-pop .hs-go{justify-self:start;margin-top:8px}
#armory-vault,#armory-path{scroll-margin-top:96px}
@media (max-width:560px){.pick:has(img) .pick-obj{width:96px;height:auto;margin-top:18px}.pick-obj img{max-width:96px;max-height:110px}}

/* vertical clips inside the 16:9 player */
.ptop{display:flex;align-items:flex-end;gap:12px}.ptop .ptabs{flex:1;min-width:0}.pout{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 6px;font:600 .78rem/1 var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);text-decoration:none}.pout:hover{color:var(--accent)}
.pframe.is-vert{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(60% 80% at 50% 50%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 70%),#05070A}
.pframe.is-vert::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 59px,rgba(143,179,201,.06) 59px 60px);pointer-events:none}
.pframe.is-vert .vbox{position:relative;z-index:1;height:100%;aspect-ratio:9/16;background:#000;border-left:1px solid var(--line);border-right:1px solid var(--line);overflow:hidden}
.pframe.is-vert .vbox iframe{display:block;width:100%;height:100%;border:0}
.pframe.is-vert .vbox.creator{overflow-y:auto;background:#fff}.vbox.creator .tiktok-embed{margin:0!important;min-width:0!important;max-width:100%!important}
.vnav{position:absolute;z-index:2;right:16px;bottom:16px;display:flex;align-items:center;gap:8px;font:500 .75rem/1 var(--mono);color:var(--mute)}
@media (max-width:600px){.pframe.is-vert{aspect-ratio:auto!important;padding:14px 0 64px}.pframe.is-vert .vbox{height:auto;width:min(88%,340px)}.vnav{left:50%;right:auto;transform:translateX(-50%);bottom:10px}}
/* artwork sits centered in its frame */
.pick-vis{place-items:center}.pick-obj{display:grid;place-items:center;margin:0 auto}
@media (max-width:560px){.pick:has(img) .pick-obj{margin:0 auto}.pick-vis{align-content:center}}
.vs-obj{place-items:center;margin:auto}
@media (max-width:600px){.ptop{flex-direction:column;align-items:stretch;gap:0}.pout{order:-1;align-self:flex-end;min-height:44px}}
.lane-frame.is-video{background:#000}.lane-frame video{display:block;width:100%;height:100%;object-fit:cover;background:#000}

/* hero legibility */
.hero-copy{text-shadow:0 2px 18px rgba(0,0,0,.65)}
.hero h1 span{-webkit-text-stroke:2px var(--ink);text-shadow:none;filter:drop-shadow(0 2px 10px rgba(0,0,0,.7))}
.hero .statement{color:color-mix(in srgb,var(--accent) 70%,#fff)}
.hero .lede{opacity:1;color:color-mix(in srgb,var(--ink) 92%,transparent)}
.hero .eyebrow{color:color-mix(in srgb,var(--accent) 75%,#fff)}
.hero-foot .status{background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(6px)}
.hero-foot .status small{color:color-mix(in srgb,var(--ink) 78%,transparent)}
@media (max-width:700px){.hero::after{background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 70%,transparent),color-mix(in srgb,var(--bg) 88%,transparent) 45%,var(--bg))}}
/* vault art centered under the spotlight */
.vs-obj:has(img){width:min(78%,340px);height:auto}.vs-obj img{display:block;margin:0 auto;max-width:100%}
/* roster squad */
.squad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px;margin-top:6px}
.squad{display:grid;gap:12px;align-content:start;padding:20px;text-decoration:none;color:inherit;position:relative}
.squad.is-live{border-color:var(--alert);box-shadow:0 0 0 1px var(--alert),0 0 28px color-mix(in srgb,var(--alert) 30%,transparent)}
.sq-top{display:flex;align-items:center;gap:14px;min-width:0}
.sq-pic{width:56px;height:56px;flex:none;border-radius:50%;object-fit:cover;border:1px solid var(--line)}
.sq-mono{display:grid;place-items:center;font:800 1.25rem/1 var(--display);letter-spacing:.06em;color:var(--ink);background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--accent) 45%,transparent),#0a0e12 70%)}
.sq-id{min-width:0}.sq-id h3{font-size:1.6rem;line-height:1;overflow-wrap:anywhere}.squad .rank{font:500 .72rem/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.sq-live{margin-left:auto}
.sq-bio{color:var(--mute);font-size:.95rem}
.sq-drop a{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;text-decoration:none;color:var(--ink);font-size:.9rem;line-height:1.3}
.sq-thumb{position:relative;aspect-ratio:16/9;background:#05070a;border:1px solid var(--line);overflow:hidden}.sq-thumb img{width:100%;height:100%;object-fit:cover}.sq-thumb .rsrc{position:absolute;left:4px;bottom:4px}
.sq-dt small{display:block;font:500 .6875rem/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}
.sq-open{border-style:dashed;opacity:.85}.sq-open:hover{opacity:1;border-color:var(--accent)}.sq-open .sq-pic{font-size:1.8rem;color:var(--accent)}
.rthumb-img .rby{position:absolute;right:6px;top:6px;font:600 .6875rem/1 var(--mono);font-style:normal;letter-spacing:.08em;background:rgba(5,7,10,.85);color:var(--ink);padding:4px 6px}
.op-who{font:600 .72rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
/* community clip wall */
.clipwall-wrap{margin-top:36px}
.clipwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:16px}
.cw{display:grid;align-content:start;overflow:hidden}
.cw-media{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#05070a;cursor:pointer;color:inherit;overflow:hidden}
.cw-media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.cw.is-vert .cw-media img{object-fit:contain}
.cw-media:hover img{transform:scale(1.04)}
.cw-ph{position:absolute;inset:0;background:radial-gradient(60% 80% at 50% 40%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 70%),repeating-linear-gradient(90deg,transparent 0 23px,rgba(143,179,201,.07) 23px 24px)}
.cw-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:rgba(5,7,10,.6);color:#fff;font-size:1.05rem}
.cw-media .rsrc{position:absolute;left:8px;bottom:8px}
.cw-media.is-playing{cursor:default;display:grid;place-items:center}
.cw-frame{height:100%;width:100%}.cw.is-vert .cw-frame{width:auto;aspect-ratio:9/16}
.cw-frame iframe,.cw-frame video{display:block;width:100%;height:100%;border:0;background:#000}
.cw-meta{padding:12px 14px 14px;display:grid;gap:6px}
.cw-by{font:500 .72rem/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.cw-by b{color:var(--ink);font-weight:600}
.cw-note{font-size:.92rem;color:var(--mute);overflow-wrap:anywhere}
.sq-id h3{font-size:clamp(1.25rem,2vw,1.5rem);overflow-wrap:normal;word-break:normal;hyphens:none}
.sq-top{padding-right:0}.sq-live{position:absolute;top:14px;right:14px;margin:0}
.squad.is-live .sq-id{padding-right:64px}

/* ===== BRASS TRIM (optional) — toggle in Edit HQ → Site → "Brass accent". Delete this block to remove entirely. ===== */
:root[data-trim="brass"]{--brass:#C9A15B;--brass-hi:#EBCB8B;--brass-lo:#8A6733;
  --brass-grad:linear-gradient(135deg,#7A5A2B 0%,#C9A15B 28%,#F0D49A 46%,#B48A45 62%,#6E5126 100%)}
/* labels and rules */
:root[data-trim="brass"] .eyebrow::before{border-color:var(--brass);background:linear-gradient(135deg,transparent 45%,color-mix(in srgb,var(--brass) 55%,transparent) 50%,transparent 55%)}
:root[data-trim="brass"] .eyebrow::after{background:linear-gradient(90deg,var(--brass),transparent)}
:root[data-trim="brass"] .sub::after{background:linear-gradient(90deg,color-mix(in srgb,var(--brass) 70%,transparent),var(--line) 40%)}
:root[data-trim="brass"] .rank,:root[data-trim="brass"] .phase-code,:root[data-trim="brass"] .op-who,:root[data-trim="brass"] .gear-brand{color:var(--brass)}
/* HUD corner brackets become brass fittings */
:root[data-trim="brass"] .hud::before,:root[data-trim="brass"] .hud::after{border-color:var(--brass);filter:drop-shadow(0 0 4px color-mix(in srgb,var(--brass) 45%,transparent))}
/* primary buttons: steel plate with a brass edge */
:root[data-trim="brass"] .btn-primary{box-shadow:inset 0 -2px 0 var(--brass-lo),inset 0 1px 0 rgba(255,255,255,.25),0 0 0 1px color-mix(in srgb,var(--brass) 55%,transparent)}
:root[data-trim="brass"] .btn-primary:hover{box-shadow:inset 0 -2px 0 var(--brass),0 0 0 1px var(--brass),0 0 18px color-mix(in srgb,var(--brass) 30%,transparent)}
/* navigation */
:root[data-trim="brass"] .tabs a[aria-current="page"],:root[data-trim="brass"] .sn-links a.on{border-bottom-color:var(--brass)}
:root[data-trim="brass"] .scrollbar i{background:var(--brass-grad);box-shadow:0 0 10px color-mix(in srgb,var(--brass) 60%,transparent)}
:root[data-trim="brass"] header.top{box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--brass) 28%,transparent)}
/* hero emblem gets a brass bezel and sweep */
:root[data-trim="brass"] .hero-emblem svg .g-st{stroke:var(--brass)}
:root[data-trim="brass"] .hero-emblem::before{content:"";position:absolute;inset:6%;border-radius:50%;border:1px solid color-mix(in srgb,var(--brass) 55%,transparent);box-shadow:0 0 0 6px color-mix(in srgb,var(--brass) 8%,transparent),0 0 40px color-mix(in srgb,var(--brass) 18%,transparent)}
:root[data-trim="brass"] .hero .statement{color:var(--brass-hi)}
/* armory: brass for "new" and the reveal */
:root[data-trim="brass"] .pick-new,:root[data-trim="brass"] .vs-badge{background:var(--brass-grad);color:#1a1307}
:root[data-trim="brass"] .vault-gate b{border-color:var(--brass);color:var(--brass-hi);box-shadow:0 0 30px color-mix(in srgb,var(--brass) 30%,transparent)}
:root[data-trim="brass"] .hs{border-color:var(--brass-hi)}
/* footer */
:root[data-trim="brass"] .motto i{background:var(--brass-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
:root[data-trim="brass"] .foot{border-top:1px solid color-mix(in srgb,var(--brass) 35%,transparent)}
:root[data-trim="brass"] .nextstop .eyebrow,:root[data-trim="brass"] .sn-sector{color:var(--brass)}
/* numbers and hashtags */
:root[data-trim="brass"] .steps li::before,:root[data-trim="brass"] .cat li::before,:root[data-trim="brass"] .routes .n,:root[data-trim="brass"] .ns-card small,:root[data-trim="brass"] .op .when,:root[data-trim="brass"] .pick-code,:root[data-trim="brass"] .phase-tabs button small,:root[data-trim="brass"] .vault-count,:root[data-trim="brass"] .reel-nav span,:root[data-trim="brass"] [data-lcount],:root[data-trim="brass"] .vnav span,:root[data-trim="brass"] .windows b,:root[data-trim="brass"] [data-next],:root[data-trim="brass"] .vs-hud{color:var(--brass)}
:root[data-trim="brass"] .steps li::before{background:var(--brass-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
/* tabs, rails and focus */
:root[data-trim="brass"] .ptabs button[aria-selected="true"]{border-bottom-color:var(--brass)}
:root[data-trim="brass"] .phase-tabs button[aria-selected="true"]{border-color:var(--brass)}
:root[data-trim="brass"] .mod::before{background:radial-gradient(circle,var(--brass) 0 2px,transparent 2.5px) 50% 50%/9px 9px no-repeat,radial-gradient(circle,transparent 0 3.5px,var(--brass) 4px 4.6px,transparent 5px) 50% 50%/9px 9px no-repeat,repeating-linear-gradient(90deg,color-mix(in srgb,var(--brass) 40%,transparent) 0 1px,transparent 1px 48px) 0 3px/100% 3px no-repeat}
:root[data-trim="brass"] :focus-visible{outline-color:var(--brass)}
:root[data-trim="brass"] .chk input{accent-color:var(--brass)}
:root[data-trim="brass"] ::selection{background:color-mix(in srgb,var(--brass) 45%,transparent);color:#fff}
:root[data-trim="brass"] .chip:hover{border-color:color-mix(in srgb,var(--brass) 60%,transparent)}
:root[data-trim="brass"] .routes a:hover .go,:root[data-trim="brass"] .more:hover{color:var(--brass-hi)}
/* BLACK•POINT wordmark: black core, brass ring and glow (matches the IG campaign mark) */
:root[data-trim="brass"] .brand b i{width:12px;height:12px;background:#000;box-shadow:0 0 0 2.5px var(--brass),0 0 14px color-mix(in srgb,var(--brass) 75%,transparent),0 0 3px rgba(0,0,0,.8) inset;margin:0 6px}
/* headline payoff words in brass, like the IG campaign */
:root[data-trim="brass"] .hl{color:var(--brass);text-shadow:0 0 48px rgba(201,161,90,.35)}
:root[data-trim="brass"] .hero h1 span{-webkit-text-stroke-color:var(--brass);filter:drop-shadow(0 0 22px rgba(201,161,90,.35))}
/* ===== end brass trim ===== */

/* ===== sonar radar around the hero emblem ===== */
.hero-emblem{--radar:var(--accent)}
:root[data-trim="brass"] .hero-emblem{--radar:var(--brass)}
.radar{position:absolute;inset:0;pointer-events:none}
.radar svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rd-ring{fill:none;stroke:var(--radar);stroke-width:1;opacity:.45}
.rd-dash{stroke-dasharray:2 7;opacity:.35}
.rd-ticks line{stroke:var(--radar);stroke-width:1;opacity:.35}.rd-ticks line.mj{stroke-width:1.6;opacity:.75}
.rd-cross{stroke:var(--radar);stroke-width:1;opacity:.5}
.rd-blip{fill:var(--radar);opacity:0;filter:drop-shadow(0 0 6px var(--radar))}
.rd-beam{position:absolute;inset:0;border-radius:50%;
  background:conic-gradient(from 0deg,transparent 0deg 250deg,color-mix(in srgb,var(--radar) 6%,transparent) 290deg,color-mix(in srgb,var(--radar) 30%,transparent) 352deg,color-mix(in srgb,var(--radar) 85%,transparent) 359.2deg,transparent 360deg);
  -webkit-mask:radial-gradient(circle,transparent 0 37%,#000 42% 49.6%,transparent 50%);mask:radial-gradient(circle,transparent 0 37%,#000 42% 49.6%,transparent 50%);opacity:.9}
.rd-ping{position:absolute;inset:8%;border-radius:50%;border:1px solid var(--radar);opacity:0}
@media (prefers-reduced-motion:no-preference){
  .rd-beam{animation:rdSpin 4s linear infinite}
  .rd-blip{animation:rdBlip 4s linear infinite}
  .rd-ping{animation:rdPing 4s cubic-bezier(.2,.6,.3,1) infinite}.rd-p2{animation-delay:2s}
  .radar svg .rd-dash{transform-origin:200px 200px;transform-box:view-box;animation:rdSpin 60s linear infinite reverse}
}
@keyframes rdSpin{to{transform:rotate(360deg)}}
@keyframes rdBlip{0%{opacity:1;r:4.5}12%{opacity:.85;r:3.2}70%{opacity:.12}100%{opacity:0}}
@keyframes rdPing{0%{transform:scale(.96);opacity:.55}100%{transform:scale(1.18);opacity:0}}
@media (prefers-reduced-motion:reduce){.rd-beam{transform:rotate(40deg);opacity:.5}.rd-blip{opacity:.6}}
/* radar band: give the sweep room to read */
.hero-emblem img{inset:13%;width:74%;height:74%}
.rd-beam{background:conic-gradient(from 0deg,transparent 0deg 230deg,color-mix(in srgb,var(--radar) 10%,transparent) 280deg,color-mix(in srgb,var(--radar) 42%,transparent) 350deg,var(--radar) 359.3deg,transparent 360deg);
  -webkit-mask:radial-gradient(circle,transparent 0 35.5%,#000 37.5% 49.7%,transparent 50%);mask:radial-gradient(circle,transparent 0 35.5%,#000 37.5% 49.7%,transparent 50%);opacity:1}
.rd-ring{opacity:.6}.rd-ticks line{opacity:.45}.rd-ticks line.mj{opacity:.9}
.radar::after{content:"";position:absolute;inset:12.2%;border-radius:50%;border:1px solid color-mix(in srgb,var(--radar) 55%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--radar) 25%,transparent)}
:root[data-trim="brass"] .hero-emblem::before{display:none}
.rd-beam{-webkit-mask:radial-gradient(circle closest-side,transparent 0 71%,#000 75% 99%,transparent 100%);mask:radial-gradient(circle closest-side,transparent 0 71%,#000 75% 99%,transparent 100%)}
.rd-beam{background:conic-gradient(from 0deg,transparent 0deg 250deg,color-mix(in srgb,var(--radar) 6%,transparent) 300deg,color-mix(in srgb,var(--radar) 28%,transparent) 345deg,color-mix(in srgb,var(--radar) 60%,transparent) 356deg,var(--radar) 359.4deg,transparent 360deg)}
/* ===== end sonar radar ===== */
/* ===== homepage spotlight ===== */
.spot-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:stretch}
.spot-grid.one{grid-template-columns:minmax(0,1fr);max-width:760px}
@media (max-width:820px){.spot-grid{grid-template-columns:minmax(0,1fr)}}
.spot{display:grid;align-content:start;overflow:hidden}
.spot-tag{display:flex;align-items:center;gap:10px;padding:14px 18px;margin:0;font:600 .75rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--line)}
.spot-medal{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid currentColor;font-size:.8rem}
.spot-media .cw-media{aspect-ratio:16/9}
.spot-media.is-vert .cw-media img{object-fit:contain}
.spot-media.is-vert .cw-frame{width:auto;aspect-ratio:9/16}
.spot-body{padding:16px 18px 20px;display:grid;gap:8px}
.spot-body h3{font-size:1.5rem;line-height:1.05}
.spot-note{color:var(--mute);font-size:.95rem}
.spot-op{justify-items:center;text-align:center;background:radial-gradient(70% 55% at 50% 30%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 70%),var(--panel)}
.spot-op .spot-tag{justify-self:stretch;justify-content:center}
.op-badge{position:relative;width:132px;height:132px;margin:28px auto 4px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--accent) 40%,transparent),#0a0e12 72%);border:1px solid var(--line)}
.op-badge img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.op-badge span{font:800 2.6rem/1 var(--display);letter-spacing:.04em;color:var(--ink)}
.op-ring{position:absolute;inset:-10px;border-radius:50%;border:1px dashed color-mix(in srgb,var(--accent) 60%,transparent)}
@media (prefers-reduced-motion:no-preference){.op-ring{animation:rdSpin 30s linear infinite}}
.op-body h3{font-size:clamp(1.8rem,3vw,2.4rem)}
.spot-cite{color:var(--mute);max-width:36ch;margin:0 auto}
:root[data-trim="brass"] .spot-tag{color:var(--brass)}
:root[data-trim="brass"] .spot-medal{background:var(--brass-grad);color:#1a1307;border-color:transparent}
:root[data-trim="brass"] .op-ring{border-color:color-mix(in srgb,var(--brass) 70%,transparent)}
:root[data-trim="brass"] .op-badge{box-shadow:0 0 0 3px color-mix(in srgb,var(--brass) 35%,transparent),0 0 40px color-mix(in srgb,var(--brass) 18%,transparent)}
/* ===== end spotlight ===== */
/* coming-soon stamp */
.soon-media{cursor:default;display:grid;place-items:center}
.soon-stamp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);z-index:3;white-space:nowrap;padding:10px 18px;font:800 clamp(1.1rem,2.4vw,1.6rem)/1 var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);border:2px solid var(--accent);background:color-mix(in srgb,var(--bg) 78%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--bg) 60%,transparent)}
.op-badge .soon-stamp{font-size:1rem;padding:8px 12px}
.spot.is-soon .op-badge>span{opacity:.35}
.spot.is-soon .spot-body h3{color:var(--mute)}
:root[data-trim="brass"] .soon-stamp{border-color:var(--brass);color:var(--brass-hi)}
.spot.is-soon .spot-body h3.soon-name{color:var(--ink);letter-spacing:.12em}
.spot.is-soon .op-badge>span{opacity:.5}
:root[data-trim="brass"] .spot.is-soon h3.soon-name{background:var(--brass-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
/* partner stats: value with a short proof line */
.ledger dd{text-align:right}
.ledger dd small{display:block;margin-top:4px;font:400 .8rem/1.35 var(--body,inherit);color:var(--mute);font-weight:400}
.ledger-src{margin:-6px 0 0;font:500 .6875rem/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
:root[data-trim="brass"] .ledger dd{color:var(--ink)}
@media (max-width:520px){.ledger dl>div{flex-direction:column;gap:4px}.ledger dd{text-align:left}}
/* ===== smoother scrolling: solid bars instead of live blur, paused off-screen motion, lighter reveal ===== */
.top,.subnav,.quick,.hero-foot .status,.status,.hs-pop,.totop{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.top{background:color-mix(in srgb,var(--bg) 97%,#000)}
.subnav{background:color-mix(in srgb,var(--bg) 97%,#000)}
.quick{background:color-mix(in srgb,var(--bg) 97%,#000)}
.hero-foot .status{background:color-mix(in srgb,var(--bg) 90%,transparent)}
.is-off,.is-off *,.is-off::before,.is-off::after,.is-off *::before,.is-off *::after{animation-play-state:paused!important}
@media (prefers-reduced-motion:no-preference){
  html.fx main .mod>.wrap{transform:translateY(10px);transition:opacity .55s ease-out,transform .55s cubic-bezier(.2,.7,.2,1)}
}
/* every operator gets the same file: live badge, latest drop, dossier */
.creator.is-live{border-color:var(--alert);box-shadow:0 0 0 1px var(--alert),0 0 28px color-mix(in srgb,var(--alert) 30%,transparent)}
.creator .rank .sq-live{position:static;margin-left:10px;vertical-align:middle}
.creator .sq-drop{max-width:460px}
.sq-file summary{cursor:pointer;font:600 .72rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);padding:10px 0;list-style:none;min-height:44px;display:flex;align-items:center}
.sq-file summary::-webkit-details-marker{display:none}.sq-file summary::after{content:"+";margin-left:8px}.sq-file[open] summary::after{content:"–"}
.sq-file .spec{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:.9rem}.sq-file dt{font:500 .6875rem/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}.sq-file dd{margin:0;color:var(--ink)}
.squad.is-staff .sq-mono{background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--ok) 40%,transparent),#0a0e12 72%)}
.op-who a{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor}
:root[data-trim="brass"] .sq-file summary{color:var(--brass)}
.ed-note{border:1px solid var(--line);padding:10px 12px;margin:0 0 12px}.ed-note code{font:500 .74rem var(--mono,monospace);color:var(--text)}

.pframe>.pl-ext{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;padding:24px;text-align:center;background:radial-gradient(ellipse at center,#14301a 0,#05070a 70%)}.pl-ext b{font:800 clamp(1.1rem,2.4vw,1.6rem)/1.1 var(--display);text-transform:uppercase;color:var(--ink);max-width:22ch}.pl-ext .label{color:#53fc18}
.cstats{list-style:none;margin:18px 0 4px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.cstats li{background:var(--raised,#161d24);padding:12px 14px;display:grid;gap:4px}.cstats b{font:800 1.55rem/1 var(--display);color:var(--ink);letter-spacing:.02em}.cstats span{font:500 .66rem/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}:root[data-trim="brass"] .cstats b{color:var(--brass,#c9a35a)}
@media (max-width:560px){.ix-term{bottom:calc(84px + env(safe-area-inset-bottom,0px))}.ix-skip{right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px))}.ix-sound{right:auto;left:calc(16px + env(safe-area-inset-left,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px))}}
