*,*::before,*::after{box-sizing:border-box}
:root{
  --paper:#f3f1ea;
  --ink:#111;
  --muted:#4a4a4a;
  --green:#00c805;
  --amber:#ffb703;
  --white:#fff;
  --display:"Anton",Impact,sans-serif;
  --sans:"Space Grotesk",system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --chunk:4px;
}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100%;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  overflow-x:hidden;
}
#webgl{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
}
#webgl canvas{display:block;width:100%!important;height:100%!important}

/* FULL SCREEN HERO */
.hero{
  position:relative;
  z-index:2;
  min-height:100svh;
  display:flex;
  flex-direction:column;
  padding:1rem 1.25rem 1.5rem;
  pointer-events:none;
}
.hero a,.hero button{pointer-events:auto}
.top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.brand{
  display:flex;
  align-items:center;
  gap:.65rem;
  background:var(--white);
  border:3px solid var(--ink);
  box-shadow:var(--chunk) var(--chunk) 0 var(--ink);
  padding:.35rem .7rem .35rem .35rem;
}
.brand img{
  width:44px;height:44px;
  display:block;
  background:#000;
}
.brand span{
  font-family:var(--display);
  letter-spacing:.06em;
  font-size:1.35rem;
}
.blast{
  border:3px solid var(--ink);
  background:var(--amber);
  color:var(--ink);
  font-family:var(--display);
  letter-spacing:.08em;
  font-size:1rem;
  padding:.75rem 1rem;
  box-shadow:var(--chunk) var(--chunk) 0 var(--ink);
  cursor:pointer;
}
.blast:active{
  transform:translate(2px,2px);
  box-shadow:2px 2px 0 var(--ink);
}

.hero__main{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  max-width:46rem;
  margin:0 auto;
  width:100%;
  padding:1rem 0 2.5rem;
}
.eyebrow{
  margin:0 auto .85rem;
  display:inline-block;
  width:fit-content;
  font-family:var(--mono);
  font-size:12px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:var(--green);
  color:#041204;
  border:3px solid var(--ink);
  padding:.35rem .55rem;
  box-shadow:3px 3px 0 var(--ink);
}
h1{
  margin:0;
  font-family:var(--display);
  font-size:clamp(3.2rem,12vw,7rem);
  line-height:.9;
  letter-spacing:.01em;
  font-weight:400;
  text-transform:uppercase;
}
.mark{
  display:inline-block;
  background:var(--ink);
  color:var(--green);
  padding:.05em .18em .08em;
  box-shadow:6px 6px 0 var(--green);
  animation:markPulse 1.6s ease-in-out infinite;
}
@keyframes markPulse{
  0%,100%{transform:translate(0,0);box-shadow:6px 6px 0 var(--green)}
  50%{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--green)}
}
.sub{
  margin:1.1rem auto 1.4rem;
  max-width:34rem;
  font-size:1.1rem;
  line-height:1.4;
  font-weight:500;
  color:var(--muted);
  background:rgba(243,241,234,.88);
  padding:.75rem .85rem;
  border:3px solid var(--ink);
}
.sub b{color:var(--ink)}

/* ANIMATED COUNTDOWN */
.clock{
  display:flex;
  align-items:stretch;
  justify-content:center;
  gap:.35rem;
  margin:0 auto 1.25rem;
  width:fit-content;
  max-width:100%;
}
.unit{
  min-width:4.6rem;
  background:var(--white);
  border:3px solid var(--ink);
  box-shadow:var(--chunk) var(--chunk) 0 var(--ink);
  text-align:center;
  padding:.7rem .45rem .55rem;
  position:relative;
  overflow:hidden;
}
.unit b{
  display:block;
  font-family:var(--mono);
  font-size:clamp(1.8rem,6vw,2.8rem);
  font-weight:600;
  letter-spacing:.04em;
  line-height:1;
  animation:tickPop .25s ease;
}
.unit span{
  display:block;
  margin-top:.35rem;
  font-family:var(--mono);
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.unit.is-flip b{
  animation:flipNum .45s cubic-bezier(.2,.8,.2,1);
}
@keyframes flipNum{
  0%{transform:translateY(40%) scale(.85);opacity:0}
  60%{transform:translateY(-8%) scale(1.05);opacity:1}
  100%{transform:translateY(0) scale(1)}
}
@keyframes tickPop{
  from{transform:scale(.92)}
  to{transform:scale(1)}
}
.sep{
  font-family:var(--display);
  font-size:clamp(1.8rem,6vw,2.6rem);
  display:flex;
  align-items:center;
  animation:blink 1s steps(1) infinite;
  padding-bottom:.6rem;
}
@keyframes blink{
  0%,100%{opacity:1}
  50%{opacity:.15}
}

.gauge-wrap{max-width:28rem;width:100%;margin:0 auto 1.35rem;text-align:left}
.gauge-top,.gauge-bot{
  display:flex;justify-content:space-between;
  font-family:var(--mono);font-size:11px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;
}
.gauge{
  margin:.45rem 0;
  height:22px;
  background:var(--white);
  border:3px solid var(--ink);
  box-shadow:3px 3px 0 var(--ink);
  overflow:hidden;
  position:relative;
}
.gauge i{
  display:block;height:100%;width:100%;
  background:repeating-linear-gradient(
    -45deg,
    var(--green),
    var(--green) 10px,
    #14e01a 10px,
    #14e01a 20px
  );
  transform-origin:left center;
  transform:scaleX(1);
  transition:transform .35s linear;
  animation:stripeMove .7s linear infinite;
}
@keyframes stripeMove{
  from{background-position:0 0}
  to{background-position:28px 0}
}
#gauge-pct{color:var(--ink)}

.row{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem}
.cta,.ghost{
  display:inline-flex;align-items:center;
  border:3px solid var(--ink);
  text-decoration:none;
  font-family:var(--display);
  letter-spacing:.06em;
  font-size:1.05rem;
  padding:.8rem 1.05rem;
  cursor:pointer;
  box-shadow:var(--chunk) var(--chunk) 0 var(--ink);
}
.cta{background:var(--green);color:#041204}
.ghost{background:var(--white);color:var(--ink)}
.ghost.is-copied{background:var(--amber)}
.cta:active,.ghost:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}

.tape{
  position:relative;z-index:2;
  overflow:hidden;
  background:var(--ink);
  color:var(--green);
  border-block:3px solid var(--ink);
}
.tape__track{
  display:flex;gap:2.2rem;width:max-content;
  padding:.7rem 0;
  font-family:var(--display);
  font-size:1.15rem;
  letter-spacing:.08em;
  animation:slide 18s linear infinite;
}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.below{
  position:relative;z-index:2;
  max-width:980px;
  margin:0 auto;
  padding:2rem 1.25rem 3rem;
}
.lore h2,.receipt h2{
  margin:0 0 1rem;
  font-family:var(--display);
  font-size:clamp(2rem,5vw,2.8rem);
  letter-spacing:.03em;
}
.cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
  margin-bottom:2rem;
}
.cards article{
  background:var(--white);
  border:3px solid var(--ink);
  box-shadow:var(--chunk) var(--chunk) 0 var(--ink);
  padding:1.15rem 1.1rem 1.25rem;
  cursor:default;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
  will-change:transform;
}
.cards article:hover{
  transform:translate(-3px,-3px) rotate(-0.4deg);
  box-shadow:7px 7px 0 var(--ink);
  background:var(--green);
}
.cards article:hover b{
  background:var(--ink);
  color:var(--green);
}
.cards article:active{
  transform:translate(1px,1px);
  box-shadow:2px 2px 0 var(--ink);
}
.cards p{margin:0;font-size:1.05rem;line-height:1.4;font-weight:500}
.cards b{background:var(--amber);padding:0 .15em}

.sheet{
  background:var(--white);
  border:3px solid var(--ink);
  box-shadow:var(--chunk) var(--chunk) 0 var(--ink);
}
.sheet>div{
  display:grid;
  grid-template-columns:7rem 1fr;
  gap:1rem;
  padding:.9rem 1rem;
  border-bottom:3px solid var(--ink);
  font-family:var(--mono);
  font-size:14px;
  font-weight:600;
}
.sheet>div:last-child{border-bottom:0}
.sheet span{color:var(--muted);letter-spacing:.06em}
.links{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0 2rem}
.links a{
  border:3px solid var(--ink);
  padding:.55rem .8rem;
  text-decoration:none;
  color:var(--ink);
  font-family:var(--display);
  letter-spacing:.05em;
  background:var(--white);
  box-shadow:3px 3px 0 var(--ink);
}
.links a.dead{opacity:.35;pointer-events:none;box-shadow:none}
.foot{
  position:relative;
  z-index:2;
  background:var(--ink);
  color:var(--paper);
  border-top:3px solid var(--ink);
  margin-top:1rem;
}
.foot__inner{
  max-width:980px;
  margin:0 auto;
  padding:1.15rem 1.25rem 1.35rem;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:.75rem 1.5rem;
  font-family:var(--mono);
  font-size:12px;
  font-weight:600;
  letter-spacing:.04em;
}
.foot p{margin:0}
.foot a{color:var(--green)}
.foot .credits{opacity:.85}

@media (max-width:720px){
  .cards{grid-template-columns:1fr}
  .clock{width:100%}
  .unit{flex:1;min-width:0}
  .sep{display:none}
  .blast{font-size:.85rem;padding:.65rem .75rem}
  .foot__inner{flex-direction:column;align-items:flex-start}
  h1{font-size:clamp(2.6rem,14vw,4.2rem)}
}
@media (prefers-reduced-motion:reduce){
  .tape__track,.mark,.sep,.gauge i,.unit.is-flip b{animation:none!important}
  .cards article,.cards article:hover,.cards article:active{
    transition:none;transform:none;
  }
}

/* d df511b */
