:root{
  --ink:#050807;
  --panel:#0a1310;
  --panel-2:#0d1a15;
  --line:#1c3128;
  --green:#22ff77;
  --green-dim:#0f7a3c;
  --red:#ff3344;
  --red-dim:#8a1620;
  --wall:#e9c169;
  --text:#d9ece1;
  --muted:#7e9c8c;
}
:root:not([data-theme="light"]){color-scheme:dark;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){color-scheme:dark;}}
:root[data-theme="dark"]{color-scheme:dark;}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:#050807;
  color:#d9ece1;
  font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;border:0;}
a{color:#22ff77;}
h1,h2,h3{font-family:"Chakra Petch","Trebuchet MS",Arial,sans-serif;font-weight:700;line-height:1.05;margin:0;}
p{margin:0 0 1em;}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px;}
.narrow{max-width:62ch;}

/* ---- ticker rail ---- */
.rail{
  position:relative;z-index:5;
  background:#07100c;border-bottom:1px solid #1c3128;
  overflow:hidden;white-space:nowrap;
  font-family:"IBM Plex Mono",Menlo,Consolas,monospace;
  font-size:12px;letter-spacing:.06em;padding:7px 0;
}
.rail span{display:inline-block;padding:0 18px;color:#7e9c8c;}
.rail b{color:#22ff77;font-weight:600;}
.rail i{color:#ff3344;font-style:normal;font-weight:600;}
.rail-track{display:inline-block;-webkit-animation:slide 38s linear infinite;animation:slide 38s linear infinite;}
@-webkit-keyframes slide{from{-webkit-transform:translateX(0)}to{-webkit-transform:translateX(-50%)}}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---- hero ---- */
.hero{position:relative;min-height:72vh;display:block;overflow:hidden;background:#050807;}
.hero-bg{
  position:absolute;top:0;left:0;width:100%;height:100%;
  background-image:url("/assets/hero.jpg");
  background-size:cover;background-position:58% 38%;
  -webkit-filter:saturate(1.15);filter:saturate(1.15);
}
.hero-veil{
  position:absolute;top:0;left:0;width:100%;height:100%;
  background:-webkit-linear-gradient(left,rgba(5,8,7,.94) 0%,rgba(5,8,7,.78) 42%,rgba(5,8,7,.25) 78%,rgba(5,8,7,.6) 100%);
  background:linear-gradient(to right,rgba(5,8,7,.94) 0%,rgba(5,8,7,.78) 42%,rgba(5,8,7,.25) 78%,rgba(5,8,7,.6) 100%);
}
.hero-veil2{
  position:absolute;left:0;bottom:0;width:100%;height:45%;
  background:-webkit-linear-gradient(top,rgba(5,8,7,0),rgba(5,8,7,1));
  background:linear-gradient(to bottom,rgba(5,8,7,0),rgba(5,8,7,1));
}
.hero-in{position:relative;z-index:2;padding:74px 0 88px;}
.tick{
  display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:12px;
  color:#e9c169;border:1px solid rgba(233,193,105,.42);
  padding:4px 10px;border-radius:2px;margin-bottom:22px;
}
h1{
  font-size:clamp(52px,12vw,124px);
  letter-spacing:-.02em;
  font-style:italic;
  text-transform:none;
  margin:0 0 6px;
  color:#22ff77;
  text-shadow:0 0 28px rgba(34,255,119,.35);
}
.hero-sub{
  font-family:"Chakra Petch",Arial,sans-serif;font-weight:600;
  font-size:clamp(19px,3.4vw,29px);line-height:1.2;color:#f2fff7;
  max-width:19ch;margin:0 0 18px;
}
.hero-p{color:#a9c6b7;max-width:44ch;margin-bottom:26px;}
.btns{display:block;}
.btn{
  display:inline-block;margin:0 10px 10px 0;padding:13px 22px;
  font-family:"Chakra Petch",Arial,sans-serif;font-weight:700;font-size:15px;
  text-decoration:none;border-radius:3px;
}
.btn-a{background:#22ff77;color:#04180c;box-shadow:0 0 26px rgba(34,255,119,.28);}
.btn-a:hover{background:#5bffa0;}
.btn-b{border:1px solid #2c5142;color:#d9ece1;background:rgba(10,19,16,.6);}
.btn-b:hover{border-color:#22ff77;color:#22ff77;}
.btn:focus-visible{outline:2px solid #e9c169;outline-offset:3px;}

/* ---- terminal ---- */
section{padding:74px 0;}
.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:12px;color:#7e9c8c;margin:0 0 8px;}
h2{font-size:clamp(30px,5.4vw,46px);letter-spacing:-.01em;margin:0 0 10px;color:#f2fff7;}
.lede{color:#a9c6b7;margin-bottom:30px;}

.term{
  border:1px solid #1c3128;border-radius:6px;background:#0a1310;
  overflow:hidden;
}
.term-bar{
  display:block;padding:10px 14px;border-bottom:1px solid #1c3128;background:#07100c;
  font-family:"IBM Plex Mono",monospace;font-size:12px;color:#7e9c8c;
}
.term-bar .dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#1c3128;margin-right:5px;vertical-align:middle;}
.term-bar .live{color:#22ff77;}
.term-body{display:block;}
.term-body:after{content:"";display:table;clear:both;}
.col-chart{float:left;width:62%;padding:16px;}
.col-face{float:left;width:38%;padding:16px 16px 16px 0;}
@media (max-width:820px){
  .col-chart,.col-face{float:none;width:100%;padding:16px;}
  .col-face{padding-top:0;}
}
canvas{display:block;width:100%;height:auto;background:#07100c;border:1px solid #14261e;border-radius:4px;}

.readout{margin-top:14px;font-family:"IBM Plex Mono",monospace;}
.readout .price{font-size:34px;font-weight:600;letter-spacing:-.02em;display:block;}
.readout .delta{font-size:14px;display:block;margin-top:2px;}
.up{color:#22ff77;}
.down{color:#ff3344;}

/* face stage */
.stage{
  position:relative;border:1px solid #14261e;border-radius:4px;overflow:hidden;
  background:#0d1a15;
}
.stage .face{display:block;width:100%;}
.stage .face.hidden{display:none;}
.glow{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;}
.glow.g{box-shadow:inset 0 0 70px rgba(34,255,119,.45);}
.glow.r{box-shadow:inset 0 0 70px rgba(255,51,68,.5);}
.stage.shake{-webkit-animation:shk .32s linear infinite;animation:shk .32s linear infinite;}
@-webkit-keyframes shk{0%{-webkit-transform:translate(0,0)}25%{-webkit-transform:translate(-2px,1px)}50%{-webkit-transform:translate(2px,-1px)}75%{-webkit-transform:translate(-1px,-1px)}100%{-webkit-transform:translate(0,0)}}
@keyframes shk{0%{transform:translate(0,0)}25%{transform:translate(-2px,1px)}50%{transform:translate(2px,-1px)}75%{transform:translate(-1px,-1px)}100%{transform:translate(0,0)}}

.drop{
  position:absolute;top:-14px;width:6px;height:10px;border-radius:0 60% 60% 60%;
  background:#bfefff;opacity:.9;
  -webkit-transform:rotate(45deg);transform:rotate(45deg);
  -webkit-animation:fall 1.5s linear forwards;animation:fall 1.5s linear forwards;
  box-shadow:0 0 6px rgba(190,240,255,.8);
}
@-webkit-keyframes fall{0%{opacity:0;-webkit-transform:translateY(0) rotate(45deg) scale(.6)}15%{opacity:.95}100%{opacity:0;-webkit-transform:translateY(300px) rotate(45deg) scale(1.15)}}
@keyframes fall{0%{opacity:0;transform:translateY(0) rotate(45deg) scale(.6)}15%{opacity:.95}100%{opacity:0;transform:translateY(300px) rotate(45deg) scale(1.15)}}

.mood{
  margin-top:12px;font-family:"IBM Plex Mono",monospace;font-size:12px;color:#7e9c8c;
}
.meter{height:8px;border:1px solid #1c3128;border-radius:99px;overflow:hidden;background:#07100c;margin-top:7px;}
.meter i{display:block;height:100%;width:10%;background:#22ff77;-webkit-transition:width .35s ease,background .35s ease;transition:width .35s ease,background .35s ease;}
.hint{font-size:13px;color:#5f7a6c;margin-top:14px;font-family:"IBM Plex Mono",monospace;}

/* ---- meme section ---- */
.meme:after{content:"";display:table;clear:both;}
.meme-gif{float:left;width:44%;padding-right:34px;}
.meme-txt{float:left;width:56%;}
@media (max-width:820px){.meme-gif,.meme-txt{float:none;width:100%;padding-right:0;}.meme-gif{margin-bottom:26px;}}
.gif-frame{border:1px solid #1c3128;border-radius:6px;padding:8px;background:#0a1310;}
.gif-frame img{display:block;border-radius:3px;}
.cap{font-family:"IBM Plex Mono",monospace;font-size:12px;color:#7e9c8c;margin-top:9px;}
.facts{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid #1c3128;}
.facts li{border-bottom:1px solid #1c3128;padding:11px 0;font-family:"IBM Plex Mono",monospace;font-size:13px;color:#a9c6b7;}
.facts li b{color:#e9c169;font-weight:600;display:inline-block;min-width:150px;}

/* ---- video ---- */
.video-wrap{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border:1px solid #1c3128;border-radius:6px;background:#000;}
.video-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;}

/* ---- contract address ---- */
.ca-card{
  border:1px solid #1c3128;border-radius:6px;background:#0a1310;
  padding:22px;max-width:760px;
}
.ca-label{
  font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;color:#e9c169;margin:0 0 10px;
}
.ca-row{
  background:#07100c;border:1px dashed #2c5142;border-radius:4px;
  padding:12px 14px;
}
.ca-row:after{content:"";display:table;clear:both;}
.ca-value{
  float:left;width:calc(100% - 92px);
  font-family:"IBM Plex Mono",Menlo,Consolas,monospace;font-size:14px;
  color:#22ff77;word-break:break-all;line-height:1.5;
}
.ca-copy{
  float:right;width:80px;
  font-family:"Chakra Petch",Arial,sans-serif;font-weight:700;font-size:13px;
  background:#0d1a15;color:#d9ece1;border:1px solid #2c5142;border-radius:3px;
  padding:7px 0;cursor:pointer;
}
.ca-copy:hover{border-color:#22ff77;color:#22ff77;}
.ca-copy:focus-visible{outline:2px solid #e9c169;outline-offset:2px;}
.ca-copy.done{border-color:#22ff77;color:#22ff77;}
@media (max-width:560px){
  .ca-value,.ca-copy{float:none;width:100%;}
  .ca-copy{margin-top:12px;}
}
.ca-note{
  font-family:"IBM Plex Mono",monospace;font-size:12px;color:#7e9c8c;
  margin:12px 0 18px;
}
.ca-links{margin:0;}
.ca-links .btn{margin-bottom:0;}
@media (max-width:560px){.ca-links .btn{display:block;margin:0 0 10px;text-align:center;}}
#contract .cap{max-width:70ch;margin-top:20px;}

/* ---- footer ---- */
footer{border-top:1px solid #1c3128;padding:44px 0 60px;background:#07100c;}
.x-cta{
  display:inline-block;padding:14px 24px;background:#0d1a15;border:1px solid #2c5142;
  border-radius:3px;color:#f2fff7;text-decoration:none;font-family:"Chakra Petch",Arial,sans-serif;
  font-weight:700;font-size:16px;
}
.x-cta:hover{border-color:#22ff77;color:#22ff77;}
.x-cta svg{vertical-align:-3px;margin-right:9px;}
.foot-h{font-size:28px;margin-bottom:16px;}
.foot-ctas .x-cta{margin:0 10px 10px 0;}

/* ---- legal disclosures ---- */
.legal{
  margin-top:38px;padding-top:30px;border-top:1px solid #1c3128;
  max-width:82ch;
}
.legal h3{
  font-size:20px;color:#f2fff7;margin:0 0 4px;
}
.legal p{font-size:13px;line-height:1.65;color:#7e9c8c;margin:0;}
.legal p.legal-meta{
  font-family:"IBM Plex Mono",monospace;font-size:12px;color:#5f7a6c;
  margin-bottom:4px;
}
.legal h4{
  font-family:"Chakra Petch","Trebuchet MS",Arial,sans-serif;
  font-weight:700;font-size:14px;line-height:1.3;
  letter-spacing:.02em;color:#e9c169;
  margin:22px 0 6px;
}
.legal code{
  font-family:"IBM Plex Mono",Menlo,Consolas,monospace;font-size:12px;
  color:#a9c6b7;background:#0a1310;border:1px solid #1c3128;border-radius:3px;
  padding:1px 5px;word-break:break-all;
}
.legal p.legal-accept{
  margin-top:26px;padding-top:18px;border-top:1px solid #14261e;
  color:#a9c6b7;
}
.fine{font-size:13px;color:#5f7a6c;max-width:70ch;margin-top:30px;line-height:1.6;}

@media (prefers-reduced-motion: reduce){
  .rail-track{-webkit-animation:none;animation:none;}
  .stage.shake{-webkit-animation:none;animation:none;}
  .drop{-webkit-animation-duration:2.4s;animation-duration:2.4s;}
}
