/* Xenith Capital: the instrument. */
@font-face{font-family:"Inter Tight";src:url(/fonts/inter-tight-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(/fonts/jetbrains-mono-var.woff2) format("woff2");font-weight:100 800;font-display:swap}
:root{
  --void:#020308;--tx:#e9eef8;--dim:#8a93a8;--mute:#566079;--hair:#ffffff1c;--hair2:#ffffff10;
  --cy:#5fe3ff;--vi:#8f7dff;--pk:#ff5fd2;--am:#ffb36b;
  --sans:"Inter Tight",system-ui,-apple-system,sans-serif;--mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --edge:clamp(1.1rem,4.4vw,4.6rem);--gy:60vh;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
html{background:var(--void);color:var(--tx);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--sans);font-weight:300;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,p,ul,ol{margin:0}
ul,ol{padding:0;list-style:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
a{color:inherit}
.skip{position:absolute;left:-999px;top:0;z-index:100;background:#fff;color:#000;padding:.6rem 1rem}
.skip:focus{left:.5rem;top:.5rem}
:focus-visible{outline:1px solid var(--cy);outline-offset:4px}
#gl{display:none}
.mo,.tag,.veil{display:none}

/* ---------- shared atoms ---------- */
.top{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.26em;color:var(--dim);font-weight:300;padding:1.4rem var(--edge)}
.mk{font-family:var(--sans);font-weight:300;font-size:.82rem;letter-spacing:.62em;color:var(--tx);text-decoration:none}
.st{display:flex;align-items:center;gap:.9rem;white-space:nowrap}
.lv{color:#b9ffd9}
.top{color:#9aa4ba}.lv i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#7dffbe;box-shadow:0 0 10px #7dffbe;margin-right:.7em;vertical-align:middle;animation:breathe 3.6s ease-in-out infinite}
.ob{color:var(--pk)}
.sep{width:1px;height:.9em;background:var(--hair)}
.rd{display:inline-block;letter-spacing:0;color:transparent;background:linear-gradient(90deg,#ffffff22,#ffffff44,#ffffff22);padding:0 .2em;border-radius:1px;line-height:1;height:.85em;overflow:hidden;vertical-align:middle}
.rd.leak{background:none}
.rd.leak{color:var(--cy);text-shadow:0 0 12px #5fe3ffaa}
.ck{display:flex;gap:1.6em}
.ck em{font-style:normal;color:var(--mute);margin-right:.6em}
.ck b{font-weight:400;color:var(--tx);font-variant-numeric:tabular-nums}
@keyframes breathe{50%{opacity:.35}}

/* ---------- document mode (no WebGL / no JS / tiny screens) ---------- */
html:not(.live) main{max-width:44rem;margin:0 auto;padding:2rem var(--edge)}
html:not(.live) .hl{font-weight:200;font-size:clamp(2.6rem,10vw,5rem);line-height:.92;letter-spacing:.01em;margin:.6rem 0 1rem}
html:not(.live) .kick{font-family:var(--mono);font-size:.66rem;letter-spacing:.3em;text-transform:uppercase;color:var(--dim)}
html:not(.live) .sub{color:var(--dim);font-size:1.1rem}
html:not(.live) .orbit{display:none}
html:not(.live) .cta{display:inline-block;margin-top:2rem;padding:1rem 1.4rem;border:1px solid var(--hair);text-decoration:none}
html:not(.live) .cta .k{display:block;letter-spacing:.3em;font-weight:500}
html:not(.live) .cta .s{display:block;font-family:var(--mono);font-size:.6rem;letter-spacing:.2em;color:var(--dim);margin-top:.3rem}
html:not(.live) .ro{max-width:44rem;margin:0 auto;padding:2rem var(--edge);border-top:1px solid var(--hair2)}
html:not(.live) .ro .x,html:not(.live) .viz{display:none}
html:not(.live) .ft{max-width:44rem;margin:0 auto;padding:2rem var(--edge) 3rem;font-family:var(--mono);font-size:.62rem;color:var(--mute)}
html:not(.live) .ft .ln a{margin-right:1rem}

/* ================= LIVE INSTRUMENT ================= */
html.live,html.live body{height:100%;overflow:hidden}
html.live #gl{display:block;position:fixed;inset:0;width:100%;height:100%;z-index:0;touch-action:none}
html.live .top{position:fixed;left:0;right:0;top:0;z-index:8;padding-top:max(1.4rem,env(safe-area-inset-top))}
html.live main{position:fixed;inset:0;z-index:4;pointer-events:none;outline:none}
html.live main a,html.live main button{pointer-events:auto}
html.live main::before,html.live main::after,html.live .orbit::before,html.live .orbit::after{content:"";position:fixed;width:16px;height:16px;border:0 solid #5fe3ff55;pointer-events:none}
html.live main::before{left:10px;top:10px;border-left-width:1px;border-top-width:1px}
html.live main::after{right:10px;top:10px;border-right-width:1px;border-top-width:1px}
html.live .orbit::before{left:10px;bottom:10px;border-left-width:1px;border-bottom-width:1px}
html.live .orbit::after{right:10px;bottom:10px;border-right-width:1px;border-bottom-width:1px}

/* hero: the only loud thing */
html.live .hero{position:fixed;left:var(--edge);bottom:calc(var(--edge) + 4.2rem);width:max-content;max-width:min(46vw,44rem)}
html.live .kick{font-family:var(--mono);font-size:.62rem;letter-spacing:.42em;text-transform:uppercase;color:#b4bdd0;margin-bottom:1.1rem}
html.live .kick::before{content:"";display:inline-block;width:2.4rem;height:1px;background:linear-gradient(90deg,var(--cy),transparent);vertical-align:middle;margin-right:1rem}
html.live .hl{font-weight:200;font-size:min(5.8vw,10vh,7rem);line-height:.9;letter-spacing:.015em;color:#f3f6ff;
  text-shadow:-.6px 0 #ff2bd655,.6px 0 #5fe3ff55,0 0 50px #7fd8ff2e}
html.live .hl.glitch{animation:hlg .26s steps(1) 1}
@keyframes hlg{0%{transform:translate(-4px,1px) skewX(-8deg);text-shadow:-5px 0 #ff2bd6cc,5px 0 #5fe3ffcc;clip-path:inset(0 0 52% 0)}
 25%{transform:translate(5px,-1px);text-shadow:4px 0 #ff2bd6cc,-4px 0 #5fe3ffcc;clip-path:inset(38% 0 18% 0)}
 50%{transform:translate(-2px,0) skewX(5deg);text-shadow:-3px 0 #b6ff3baa,3px 0 #ff2bd6cc;clip-path:none}
 75%{transform:translate(2px,1px);text-shadow:2px 0 #5fe3ffcc,-2px 0 #ff2bd6cc;clip-path:inset(12% 0 0 0)}
 100%{transform:none;clip-path:none}}
html.live .hl .w:first-child{display:block}
html.live .hl span span{display:inline-block;transition:opacity 1.5s cubic-bezier(.16,1,.3,1),filter 1.7s cubic-bezier(.16,1,.3,1),transform 1.9s cubic-bezier(.16,1,.3,1)}
html.live:not(.resolved) .hl span span{opacity:0;filter:blur(16px);transform:translate(var(--dx,0),var(--dy,0)) scale(1.4)}
html.live .sub{margin-top:1.3rem;font-size:clamp(.95rem,1.15vw,1.12rem);color:#b9c2d6;max-width:30em;
  transition:opacity 1.6s ease 1.6s}
html.live:not(.resolved) .sub,html.live:not(.resolved) .kick{opacity:0}
html.live .kick{transition:opacity 1.4s ease 1.2s}

/* orbiting capabilities */
html.live .orbit{position:fixed;inset:0;pointer-events:none}
html.live .gy{position:absolute;left:0;top:0;width:0;height:0;pointer-events:auto;transition:opacity .5s ease;will-change:transform;cursor:pointer;--gc:#5fe3ff}
html.live .gy:nth-child(2){--gc:#9a7dff}html.live .gy:nth-child(3){--gc:#b6ff3b}html.live .gy:nth-child(4){--gc:#ff4fd8}
html.live .gy.hid{pointer-events:none}
html.live .gy::before{content:"";position:absolute;left:-22px;top:-22px;width:44px;height:44px;border-radius:50%}
html.live .gy .nd{position:absolute;left:-11px;top:-11px;width:22px;height:22px;border-radius:50%;border:1px solid var(--gc);box-shadow:0 0 12px var(--gc),inset 0 0 8px color-mix(in srgb,var(--gc) 50%,transparent);transition:transform .3s;
  background:radial-gradient(circle,#fff 0 2px,var(--gc) 2.5px 3.5px,transparent 4px)}
html.live .gy .nd::before,html.live .gy .nd::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1.5px solid var(--gc);animation:sonar 2.4s cubic-bezier(.2,.6,.3,1) infinite}
html.live .gy .nd::after{animation-delay:1.2s}
@keyframes sonar{0%{transform:scale(1);opacity:.95}100%{transform:scale(3.4);opacity:0}}
html.live .gy.fire .nd{transform:scale(1.6);box-shadow:0 0 26px var(--gc),0 0 60px var(--gc)}
html.live .gy .l::after{content:"\25B8";display:inline-block;margin-left:.55em;color:var(--gc);animation:nudge 1.4s ease-in-out infinite}
@keyframes nudge{50%{transform:translateX(4px);opacity:.55}}
html.live .gy.lft .l::after{display:none}
html.live .gy.lft .l::before{content:"\25C2";display:inline-block;margin-right:.55em;color:var(--gc);animation:nudgeL 1.4s ease-in-out infinite}
@keyframes nudgeL{50%{transform:translateX(-4px);opacity:.55}}
html.live .gy .tx{position:absolute;left:18px;top:50%;transform:translateY(-50%);display:grid;grid-template-columns:auto auto;column-gap:.7rem;row-gap:.15rem;white-space:nowrap;text-align:left}
html.live .gy.lft .tx{left:auto;right:18px;text-align:right}
html.live .gy .n{font-family:var(--mono);font-size:.56rem;letter-spacing:.2em;color:var(--gc);grid-row:1}
html.live .gy .l{font-size:.8rem;font-weight:400;letter-spacing:.34em;color:#fff;grid-row:1;text-shadow:0 0 14px #5fe3ff55}
html.live .gy .v{grid-column:1/-1;font-family:var(--mono);font-size:.58rem;letter-spacing:.18em;color:#a9e9ff;font-variant-numeric:tabular-nums}
html.live .gy:hover .nd,html.live .gy:focus-visible .nd{transform:scale(1.5)}
html.live .gy:hover .l,html.live .gy:focus-visible .l{color:#fff;text-shadow:0 0 18px #5fe3ff88}
html.live .gy:focus-visible{outline:none}

/* city lock */
html.live .tag{display:block;position:fixed;left:0;top:0;z-index:5;pointer-events:none;opacity:0;transition:opacity .45s ease}
html.live .tag.on{opacity:1}
html.live .tag i{position:absolute;left:-15px;top:-15px;width:30px;height:30px;
  background:linear-gradient(var(--pk),var(--pk)) 0 0/8px 1px,linear-gradient(var(--pk),var(--pk)) 0 0/1px 8px,linear-gradient(var(--pk),var(--pk)) 100% 0/8px 1px,linear-gradient(var(--pk),var(--pk)) 100% 0/1px 8px,
  linear-gradient(var(--pk),var(--pk)) 0 100%/8px 1px,linear-gradient(var(--pk),var(--pk)) 0 100%/1px 8px,linear-gradient(var(--pk),var(--pk)) 100% 100%/8px 1px,linear-gradient(var(--pk),var(--pk)) 100% 100%/1px 8px;background-repeat:no-repeat;
  animation:lock 3.4s ease-out infinite}
@keyframes lock{0%{transform:scale(2.4) rotate(45deg);opacity:0}14%{transform:scale(1) rotate(0);opacity:1}88%{opacity:1}100%{opacity:.4}}
html.live .tag::before{content:"";position:absolute;left:4px;top:-4px;width:30px;height:1px;background:linear-gradient(90deg,#ffffff80,#ffffff20);transform-origin:0 0;transform:rotate(-38deg)}
html.live .tag b,html.live .tag span{position:absolute;left:28px;white-space:nowrap;font-family:var(--mono)}
html.live .tag b{top:-36px;font-weight:500;font-size:.66rem;letter-spacing:.3em;color:#fff}
html.live .tag span{top:-20px;font-size:.54rem;letter-spacing:.16em;color:var(--dim)}
html.live .tag.lft::before{left:auto;right:-4px;transform-origin:100% 0;transform:rotate(38deg)}
html.live .tag.lft b,html.live .tag.lft span{left:auto;right:28px}

/* request access: glass, breathing, pink only at the decision */
html.live .cta{position:fixed;right:var(--edge);bottom:calc(var(--edge) + 4.2rem);display:grid;gap:.45rem;min-width:17.5rem;padding:1.15rem 1.5rem 1.05rem;
  text-decoration:none;color:#fff;border:1px solid #ffffff4d;border-radius:3px;
  background:linear-gradient(135deg,#ffffff1a,#ffffff06);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);
  box-shadow:0 0 0 1px #00000040 inset,0 20px 60px #00000060;animation:halo 5s ease-in-out infinite;transition:border-color .35s,background .35s,box-shadow .35s}
html.live .cta .k{font-weight:500;font-size:1rem;letter-spacing:.38em;text-shadow:0 0 22px #ffffff40}
html.live .cta::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--cy),var(--pk),transparent)}
html.live .cta .s{font-family:var(--mono);font-size:.6rem;letter-spacing:.22em;color:#b4bdd0}
html.live .cta em{font-style:normal;color:var(--pk)}
html.live .cta .ot{color:var(--tx);font-variant-numeric:tabular-nums}
html.live .cta .ot:not(:empty)::before{content:" · ";color:var(--mute)}
html.live .cta:hover,html.live .cta:focus-visible{border-color:var(--pk);background:linear-gradient(135deg,#ff5fd226,#8f7dff12);box-shadow:0 0 50px #ff5fd233,0 20px 60px #00000060;outline:none}
html.live.pending .cta{border-color:var(--pk);background:linear-gradient(135deg,#ff5fd240,#8f7dff18)}
@keyframes halo{50%{box-shadow:0 0 0 1px #00000040 inset,0 0 44px #5fe3ff1f,0 20px 60px #00000060}}

html.live .ft{position:fixed;left:var(--edge);right:var(--edge);bottom:max(1.2rem,env(safe-area-inset-bottom));z-index:6;display:flex;justify-content:space-between;align-items:baseline;gap:1rem;
  font-family:var(--mono);font-size:.56rem;letter-spacing:.12em;color:var(--mute)}
html.live .ft .ln{display:flex;gap:1.4rem}
html.live .ft a{color:var(--dim);text-decoration:none;border-bottom:1px solid var(--hair)}
html.live .ft a:hover{color:var(--tx)}

/* motion link (iOS asks permission) */
html.live .mo:not([hidden]){display:block;position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--edge) + 9.6rem);font-family:var(--mono);font-size:.56rem;letter-spacing:.24em;color:var(--cy);
  border:1px solid #5fe3ff40;border-radius:999px;padding:.55rem 1rem;background:#05081488;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
html.live .mo.done{color:#b9ffd9;border-color:#7dffbe55}

/* readouts: glass that unfolds out of the light */
html.live .veil{position:fixed;inset:0;z-index:20;background:#02030866;backdrop-filter:blur(6px) saturate(.8);-webkit-backdrop-filter:blur(6px) saturate(.8);opacity:0;pointer-events:none;transition:opacity .45s ease;display:block}
html.live .veil.on{opacity:1;pointer-events:auto}
html.live .ro{display:none}
html.live .ro.open{display:flex;flex-direction:column;position:fixed;z-index:30;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(44rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;padding:clamp(1.3rem,3vw,2.4rem);
  background:linear-gradient(160deg,#0d142cb8,#060914d9);border:1px solid #ffffff1f;border-radius:4px;
  backdrop-filter:blur(30px) saturate(1.4);-webkit-backdrop-filter:blur(30px) saturate(1.4);
  box-shadow:0 0 0 1px #00000050 inset,0 1px 0 #ffffff14 inset,0 40px 120px #000000a0,0 0 90px #5fe3ff12;
  animation:unfold .6s cubic-bezier(.16,1,.3,1)}
@keyframes unfold{from{opacity:0;transform:translate(-50%,-48%) scale(.965);filter:blur(10px)}to{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}}
.rh{position:relative;padding-right:6rem;margin-bottom:1.2rem}
.rk{font-family:var(--mono);font-size:.6rem;letter-spacing:.32em;color:var(--cy);margin-bottom:.7rem}
.rh h2{font-weight:200;font-size:clamp(1.7rem,3.2vw,2.7rem);line-height:1.05;letter-spacing:-.005em;color:#f5f8ff}
html.live .x{position:absolute;right:0;top:0;font-family:var(--mono);font-size:.56rem;letter-spacing:.2em;color:var(--dim);border:1px solid var(--hair);border-radius:2px;padding:.5em .8em}
.x kbd{font:inherit;color:var(--mute);margin-left:.4em}
.x:hover,.x:focus-visible{color:var(--tx);border-color:#ffffff55}
.rb{display:flex;flex-direction:column;gap:1rem;font-size:clamp(.94rem,1.1vw,1.04rem);line-height:1.62;color:#c7cfdf}
.rb .lead{font-size:1.2em;font-weight:300;color:#fff;line-height:1.4}
.fine{font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;color:var(--mute);line-height:1.5}
.viz{border-top:1px solid var(--hair2);border-bottom:1px solid var(--hair2);padding:1.1rem 0;font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;color:var(--dim)}
.post{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}
.post .line{position:relative;height:1px;background:linear-gradient(90deg,var(--pk),var(--vi),var(--cy))}
.post .line i{position:absolute;top:-4px;left:50%;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:#fff;box-shadow:0 0 14px #fff,0 0 30px #5fe3ff;transition:left 1.2s cubic-bezier(.16,1,.3,1)}
.pv{text-align:center;color:var(--tx);margin:.8rem 0 1rem;letter-spacing:.3em;font-variant-numeric:tabular-nums}
.bars,.secs{display:grid;gap:.5rem}
.bars li,.secs li{display:grid;grid-template-columns:8.5em 1fr 3.4em;align-items:center;gap:.9rem}
.bars b,.secs b{font-weight:400;text-align:right;color:var(--tx);font-variant-numeric:tabular-nums}
.bars s,.secs s{position:relative;display:block;height:2px;background:#ffffff0f;text-decoration:none}
.bars s::after{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:#ffffff30}
.bars i,.secs i{position:absolute;top:0;bottom:0;left:0;width:0;background:var(--cy);box-shadow:0 0 10px #5fe3ff88;transition:left 1.1s cubic-bezier(.16,1,.3,1),width 1.1s cubic-bezier(.16,1,.3,1)}
.bars i.n{background:var(--vi);box-shadow:0 0 10px #8f7dff88}
.secs li:nth-child(2) i{background:var(--vi);box-shadow:0 0 10px #8f7dff88}
.secs li:nth-child(3) i{background:#a9b8ff;box-shadow:0 0 10px #a9b8ff66}
.secs li:nth-child(4) i{background:#7dffbe;box-shadow:0 0 10px #7dffbe66}
.secs li:nth-child(5) i{background:var(--am);box-shadow:0 0 10px #ffb36b66}
.feed{display:flex;flex-direction:column;gap:.15rem;height:13.5em;overflow:hidden;justify-content:flex-end;-webkit-mask-image:linear-gradient(180deg,transparent,#000 40%);mask-image:linear-gradient(180deg,transparent,#000 40%)}
.feed li{flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.55;animation:lineIn .6s ease}
@keyframes lineIn{from{opacity:0;transform:translateY(6px)}}
.feed .ts{color:var(--mute)}
.feed .t{margin:0 .8em;font-weight:500}
.feed .t.c{color:var(--cy)}.feed .t.v{color:var(--vi)}.feed .t.p{color:var(--pk)}.feed .t.w{color:#fff}.feed .t.a{color:#7dffbe}
.feed .m{color:var(--tx)}
.cta.in{position:static!important;display:inline-grid;min-width:0;animation:none}

/* ---------- phone ---------- */
html.live.phone .top{display:grid;grid-template-columns:1fr auto;row-gap:.7rem;padding-top:max(1rem,env(safe-area-inset-top));font-size:.54rem;letter-spacing:.18em}
html.live.phone .mk{font-size:.74rem;letter-spacing:.5em}
html.live.phone .st{gap:.6rem}
html.live.phone .st .rd,html.live.phone .st .sep:last-of-type{display:none}
html.live.phone .ck{grid-column:1/-1;justify-content:space-between;gap:.4rem}
html.live.phone .ck em{margin-right:.35em}
html.live.phone .hero{left:6vw;right:6vw;top:var(--gy);bottom:auto;width:auto;max-width:none;text-align:center}
html.live.phone .kick{font-size:.54rem;letter-spacing:.34em;margin-bottom:.7rem}
html.live.phone .kick::before{display:none}
html.live.phone .hl{font-size:min(12.5vw,7.2vh)}
html.live.phone .sub{margin:.9rem auto 0;font-size:.9rem;max-width:21em}
html.live.phone .gy .v{display:none}
html.live.phone .gy .l{font-size:.62rem;letter-spacing:.26em}
html.live.phone .cta{left:var(--edge);right:var(--edge);bottom:calc(max(1.2rem,env(safe-area-inset-bottom)) + 2.6rem);min-width:0;text-align:center;padding:1rem 1rem .95rem}
html.live.phone .ft{flex-direction:column;align-items:center;gap:.35rem;font-size:.5rem}
html.live.phone .mo:not([hidden]){bottom:calc(max(1.2rem,env(safe-area-inset-bottom)) + 8.2rem)}
html.live.phone .ro.open{top:auto;bottom:.6rem;transform:translate(-50%,0);max-height:calc(100dvh - 1.2rem);animation:rise .55s cubic-bezier(.16,1,.3,1)}
@keyframes rise{from{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%,0)}}
html.live.phone .rh{padding-right:0;padding-top:2.4rem}
html.live.phone .bars li,html.live.phone .secs li{grid-template-columns:7.2em 1fr 3em;gap:.6rem}

@media (prefers-reduced-motion:reduce){
  html.live .cta,html.live .lv i{animation:none}
  html.live .hl span span,html.live .sub,html.live .kick{transition:none}
  html.live .ro.open{animation:none}
}
@media print{#gl,.veil,.orbit,.tag,.mo{display:none!important}html,body{background:#fff!important;color:#000!important;height:auto!important;overflow:visible!important}}
