:root{
  --ground:#FBF7EC;
  --surface:#FFFFFF;
  --surface-2:#EFE9D9;
  --ink:#0A0A0A;
  --ash:#6B6357;
  --line:#DFD6C2;
  --gold:#FCD116;
  --gold-ink:#0A0A0A;
  --red:#CE1126;
  --red-ink:#FFFFFF;
  --green:#006B3F;
  --hi:#CE1126;
  --shadow:0 1px 0 rgba(10,10,10,.06), 0 12px 28px -18px rgba(10,10,10,.5);
  --radius:3px;
  --wa-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2a10 10 0 0 0-8.55 15.19L2.05 22l4.94-1.36A10 10 0 1 0 12 2Zm5.1 13.86c-.22.62-1.3 1.2-1.79 1.24-.46.04-.9.2-3.04-.63-2.56-1-4.18-3.6-4.3-3.77-.13-.17-1.03-1.37-1.03-2.61s.65-1.85.88-2.1c.23-.26.5-.32.67-.32h.48c.16 0 .37-.06.57.43.22.53.74 1.83.8 1.96.07.13.11.29.02.46-.09.17-.13.28-.26.43l-.4.46c-.13.13-.27.28-.11.55.15.26.68 1.12 1.46 1.81 1 .89 1.84 1.17 2.1 1.3.26.14.42.11.57-.06.16-.18.66-.77.83-1.03.18-.26.35-.22.59-.13.24.09 1.54.72 1.8.85.26.13.44.2.5.3.07.11.07.62-.15 1.23Z'/%3E%3C/svg%3E");
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#0A0A0A;
    --surface:#151515;
    --surface-2:#1F1F1F;
    --ink:#FBF7EC;
    --ash:#9A9186;
    --line:#282624;
    --gold:#FCD116;
    --gold-ink:#0A0A0A;
    --red:#E8404F;
    --red-ink:#1A0406;
    --green:#12A164;
    --hi:#FCD116;
    --shadow:0 1px 0 rgba(255,255,255,.05), 0 18px 34px -22px rgba(0,0,0,.9);
  }
}
:root[data-theme="dark"]{
  --ground:#0A0A0A;
  --surface:#151515;
  --surface-2:#1F1F1F;
  --ink:#FBF7EC;
  --ash:#9A9186;
  --line:#282624;
  --gold:#FCD116;
  --gold-ink:#0A0A0A;
  --red:#E8404F;
  --red-ink:#1A0406;
  --green:#12A164;
  --hi:#FCD116;
  --shadow:0 1px 0 rgba(255,255,255,.05), 0 18px 34px -22px rgba(0,0,0,.9);
}

.brand, h1, .h2, .drop__name, .card__name, .drawer__title, .stat b,
.verify h3, .modal__body h3{font-weight:400 !important}
*{box-sizing:border-box}
body{
  margin:0;
  background:var(--ground);
  color:var(--ink);
  font-family:"Karla",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
input{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

.mono{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
.wrap{width:min(1240px,100% - 2.5rem);margin-inline:auto}

/* ---------- ticker ---------- */
.ticker{
  background:var(--ink);
  color:var(--ground);
  overflow:hidden;
  border-bottom:1px solid var(--ink);
}
.ticker__track{
  display:flex;
  gap:2.5rem;
  width:max-content;
  padding:.5rem 0;
  animation:slide 38s linear infinite;
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:.68rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.ticker__track span{display:flex;align-items:center;gap:2.5rem;white-space:nowrap}
.ticker__track span::after{content:"\2605";color:var(--gold);font-size:.8em;line-height:1}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){
  .ticker__track{animation:none}
}

/* ---------- nav ---------- */
.nav{
  position:sticky;top:0;z-index:40;
  background:var(--ground);
  background:color-mix(in srgb, var(--ground) 88%, transparent);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.nav__in{display:flex;align-items:center;gap:1.75rem;height:66px}
.brand{
  font-family:"Anton",Impact,sans-serif;
  font-weight:900;
  font-size:1.9rem;
  line-height:1;
  letter-spacing:.01em;
  text-transform:uppercase;
  display:flex;align-items:baseline;gap:.3rem;
}
.brand em{font-style:normal;color:var(--hi)}
.brand .gh{
  font-family:"JetBrains Mono",ui-monospace,monospace;
  font-size:.5em;font-weight:700;letter-spacing:.1em;
  background:var(--red);color:var(--red-ink);
  padding:.12em .35em;border-radius:2px;align-self:center;
}
.nav__links{display:flex;gap:1.4rem;margin-left:auto;font-size:.82rem;font-weight:600;letter-spacing:.02em}
.nav__links a{padding:.4rem 0;border-bottom:2px solid transparent}
.nav__links a:hover{border-bottom-color:var(--gold)}
.nav__cart{
  display:flex;align-items:center;gap:.5rem;
  border:1px solid var(--line);
  background:var(--surface);
  padding:.45rem .8rem;
  border-radius:var(--radius);
  font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
}
.nav__cart:hover{border-color:var(--gold)}
.count{
  font-family:"JetBrains Mono",monospace;
  background:var(--gold);color:var(--gold-ink);
  min-width:1.35rem;height:1.35rem;border-radius:999px;
  display:grid;place-items:center;font-size:.7rem;font-weight:700;
}
@media (max-width:880px){ .nav__links{display:none} .nav__in{gap:1rem} .nav__cart{margin-left:auto} }

/* ---------- hero ---------- */
.hero{padding:4.5rem 0 3.5rem;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
/* the black star of the flag, sitting behind the drop card */
.star-mark{
  position:absolute;right:4%;top:9%;width:min(34vw,380px);
  color:var(--ink);opacity:.06;pointer-events:none;z-index:0;
}
.hero__grid{position:relative;z-index:1}
.hero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:end}
.eyebrow{
  font-family:"JetBrains Mono",monospace;
  font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ash);
  display:flex;align-items:center;gap:.6rem;margin-bottom:1.4rem;
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--hi)}
.hero h1{
  font-family:"Anton",Impact,sans-serif;
  font-weight:900;
  font-size:clamp(3.6rem,10.5vw,8.5rem);
  line-height:.86;
  letter-spacing:-.005em;
  text-transform:uppercase;
  margin:0;
  text-wrap:balance;
}
.hero h1 .line2{display:block;color:var(--hi)}
.hero p.lede{max-width:44ch;color:var(--ash);font-size:1.02rem;margin:1.5rem 0 2rem}
.hero__cta{display:flex;flex-wrap:wrap;gap:.75rem}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.85rem 1.5rem;border-radius:var(--radius);
  font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  border:1px solid transparent;transition:transform .12s ease, background .15s ease;
}
.btn--solid{background:var(--gold);color:var(--gold-ink)}
.btn--solid:hover{transform:translateY(-2px)}
.btn--ghost{border-color:var(--line);background:var(--surface)}
.btn--ghost:hover{border-color:var(--ink)}
.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.btn--wa{background:#25D366;color:#04240F}
.btn--wa:hover{transform:translateY(-2px);background:#1FBF5B}
.btn--wa::before{
  content:"";width:15px;height:15px;flex:none;
  background:currentColor;
  -webkit-mask:var(--wa-mask) center/contain no-repeat;
  mask:var(--wa-mask) center/contain no-repeat;
}
.fineprint{font-size:.74rem;color:var(--ash);margin:0;line-height:1.45}
.wa-float{
  position:fixed;right:1.25rem;bottom:1.25rem;z-index:45;
  display:flex;align-items:center;gap:.5rem;
  background:#25D366;color:#04240F;
  padding:.7rem 1rem;border-radius:999px;
  font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  box-shadow:0 10px 30px -12px rgba(0,0,0,.6);
  transition:transform .15s ease;
}
.wa-float:hover{transform:translateY(-2px)}
.wa-float::before{
  content:"";width:17px;height:17px;flex:none;background:currentColor;
  -webkit-mask:var(--wa-mask) center/contain no-repeat;
  mask:var(--wa-mask) center/contain no-repeat;
}
@media (max-width:560px){ .wa-float span{display:none} .wa-float{padding:.85rem;border-radius:50%} }
.ask{
  font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ash);text-decoration:underline;text-underline-offset:3px;align-self:flex-start;
}
.ask:hover{color:#1FBF5B}

.drop{
  border:1px solid var(--line);
  background:var(--surface);
  border-radius:var(--radius);
  padding:1.4rem;
  box-shadow:var(--shadow);
}
.drop__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.chip{
  font-family:"JetBrains Mono",monospace;
  font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;
  padding:.28rem .5rem;border-radius:2px;
  background:var(--red);color:var(--red-ink);font-weight:700;
}
.drop__name{font-family:"Anton",Impact,sans-serif;font-size:1.9rem;font-weight:800;line-height:1;text-transform:uppercase;margin:0 0 .15rem}
.drop__sub{color:var(--ash);font-size:.85rem;margin:0 0 1.1rem}
.clock{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;font-variant-numeric:tabular-nums}
.clock div{background:var(--surface-2);border-radius:2px;padding:.6rem .3rem;text-align:center}
.clock b{font-family:"JetBrains Mono",monospace;display:block;font-size:1.5rem;font-weight:700;line-height:1.1}
.clock small{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
@media (max-width:940px){ .hero__grid{grid-template-columns:1fr;gap:2.5rem;align-items:start} }

/* ---------- marquee stats ---------- */
.stats{border-bottom:1px solid var(--line);background:var(--surface)}
.stats__in{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:1.6rem 1.25rem;border-left:1px solid var(--line)}
.stat:first-child{border-left:0}
.stat b{font-family:"Anton",Impact,sans-serif;font-size:2.4rem;font-weight:800;line-height:1;display:block}
.stat span{font-family:"JetBrains Mono",monospace;font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
@media (max-width:760px){
  .stats__in{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(3){border-left:0}
  .stat:nth-child(n+3){border-top:1px solid var(--line)}
}

/* ---------- shop ---------- */
.shop{padding:4rem 0}
.shop__head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap;margin-bottom:2rem}
.h2{font-family:"Anton",Impact,sans-serif;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:800;line-height:.92;text-transform:uppercase;margin:0}
.filters{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}
.filter{
  font-family:"JetBrains Mono",monospace;
  font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;
  padding:.5rem .8rem;border:1px solid var(--line);border-radius:2px;background:var(--surface);
}
.filter[aria-pressed="true"]{background:var(--ink);color:var(--ground);border-color:var(--ink)}
.filter:hover{border-color:var(--gold)}
.sort{margin-left:.5rem}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(266px,1fr));gap:1.25rem}
.card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  display:flex;flex-direction:column;
  transition:border-color .15s ease, transform .15s ease;
}
.card:hover{border-color:var(--ink);transform:translateY(-3px)}
.card__shot{
  position:relative;aspect-ratio:4/3;background:var(--surface-2);
  display:grid;place-items:center;overflow:hidden;
}
.card__shot img{width:100%;height:100%;object-fit:cover}
.slot{
  position:absolute;inset:0;
  display:grid;place-items:center;gap:.4rem;align-content:center;
  background-image:repeating-linear-gradient(135deg,transparent 0 9px,var(--line) 9px 10px);
  text-align:center;padding:1rem;
}
.slot code{
  font-family:"JetBrains Mono",monospace;font-size:.63rem;letter-spacing:.06em;
  background:var(--surface);border:1px solid var(--line);padding:.3rem .5rem;border-radius:2px;color:var(--ash);
}
.slot em{font-style:normal;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);font-family:"JetBrains Mono",monospace}
.card__flag{
  position:absolute;top:.6rem;left:.6rem;z-index:2;
}
.card__body{padding:1rem 1rem 1.15rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
.card__code{font-family:"JetBrains Mono",monospace;font-size:.63rem;letter-spacing:.12em;color:var(--ash);display:flex;justify-content:space-between}
.card__name{font-family:"Anton",Impact,sans-serif;font-size:1.55rem;font-weight:800;line-height:.95;text-transform:uppercase;margin:0}
.card__sub{font-size:.82rem;color:var(--ash);margin:-.25rem 0 0}
.sizes{display:flex;flex-wrap:wrap;gap:.28rem;margin-top:.15rem}
.size{
  font-family:"JetBrains Mono",monospace;font-size:.66rem;
  border:1px solid var(--line);border-radius:2px;padding:.25rem .42rem;color:var(--ash);
}
.size--pick{cursor:pointer;color:var(--ink)}
.size--pick:hover{border-color:var(--gold)}
.size--pick[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--gold-ink)}
.card__foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:auto;padding-top:.65rem;border-top:1px solid var(--line)}
.price{font-family:"JetBrains Mono",monospace;font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums}
.link-btn{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-bottom:2px solid var(--gold);padding-bottom:2px}
.empty{padding:3rem 1rem;text-align:center;color:var(--ash);grid-column:1/-1}

/* ---------- verify band ---------- */
.verify{background:#006B3F;color:#FFFFFF;padding:3.5rem 0}
.verify__grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem}
.verify h3{font-family:"Anton",Impact,sans-serif;font-size:1.7rem;font-weight:800;text-transform:uppercase;margin:.6rem 0 .4rem;line-height:1}
.verify p{color:#BFDECD;font-size:.9rem;margin:0;max-width:34ch}
.verify .step{font-family:"JetBrains Mono",monospace;font-size:.65rem;letter-spacing:.18em;color:#E9B23C}
@media (max-width:820px){ .verify__grid{grid-template-columns:1fr;gap:1.75rem} }

/* ---------- list / raffle ---------- */
.list{padding:4rem 0}
.list__box{
  border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);
  padding:2.25rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;
  box-shadow:var(--shadow);
}
.list p{color:var(--ash);margin:.6rem 0 0;max-width:42ch;font-size:.92rem}
.form{display:flex;gap:.5rem;flex-wrap:wrap}
.form input{
  flex:1;min-width:200px;background:var(--ground);border:1px solid var(--line);
  border-radius:var(--radius);padding:.85rem 1rem;
}
.form input::placeholder{color:var(--ash)}
.form-note{font-family:"JetBrains Mono",monospace;font-size:.68rem;color:var(--ash);margin:.75rem 0 0;letter-spacing:.04em}
@media (max-width:820px){ .list__box{grid-template-columns:1fr} }

/* ---------- footer ---------- */
footer{border-top:1px solid var(--line);padding:2.5rem 0;background:var(--surface)}
.foot{display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;align-items:center}
.foot small{font-family:"JetBrains Mono",monospace;font-size:.66rem;color:var(--ash);letter-spacing:.06em}
.foot nav{display:flex;gap:1.1rem;font-size:.8rem;color:var(--ash)}
.foot nav a:hover{color:var(--ink)}

/* ---------- drawer + modal ---------- */
.scrim{
  position:fixed;inset:0;background:rgba(8,10,16,.55);backdrop-filter:blur(2px);
  opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:50;
}
.scrim.on{opacity:1;pointer-events:auto}
.drawer{
  position:fixed;top:0;right:0;height:100%;width:min(420px,100%);
  background:var(--surface);border-left:1px solid var(--line);
  transform:translateX(102%);transition:transform .25s cubic-bezier(.2,.7,.3,1);
  z-index:60;display:flex;flex-direction:column;
}
.drawer.on{transform:translateX(0)}
@media (prefers-reduced-motion: reduce){
  .drawer{transition:none}
}
.drawer__head{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid var(--line)}
.drawer__title{font-family:"Anton",Impact,sans-serif;font-size:1.6rem;font-weight:800;text-transform:uppercase;line-height:1}
.x{font-size:1.35rem;line-height:1;padding:.25rem .5rem;color:var(--ash)}
.x:hover{color:var(--ink)}
.drawer__body{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}
.line{display:grid;grid-template-columns:64px 1fr auto;gap:.85rem;align-items:center}
.line__thumb{aspect-ratio:1;background:var(--surface-2);border-radius:2px;background-image:repeating-linear-gradient(135deg,transparent 0 7px,var(--line) 7px 8px);overflow:hidden}
.line__thumb img{width:100%;height:100%;object-fit:cover}
.line__name{font-weight:700;font-size:.86rem;line-height:1.25}
.line__meta{font-family:"JetBrains Mono",monospace;font-size:.66rem;color:var(--ash);letter-spacing:.06em}
.line__price{font-family:"JetBrains Mono",monospace;font-weight:700;font-variant-numeric:tabular-nums;font-size:.86rem;text-align:right}
.remove{font-family:"JetBrains Mono",monospace;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ash);text-decoration:underline;display:block;margin-top:.2rem}
.remove:hover{color:var(--gold)}
.drawer__foot{border-top:1px solid var(--line);padding:1.25rem;display:flex;flex-direction:column;gap:.85rem}
.total{display:flex;justify-content:space-between;align-items:baseline}
.total b{font-family:"JetBrains Mono",monospace;font-size:1.3rem;font-variant-numeric:tabular-nums}
.total span{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ash)}
.notice{
  background:var(--surface-2);border-left:3px solid var(--red);
  padding:.75rem .85rem;font-size:.78rem;color:var(--ash);border-radius:2px;
}

.modal{
  position:fixed;z-index:60;inset:auto;left:50%;top:50%;transform:translate(-50%,-46%) scale(.98);
  width:min(760px,calc(100% - 2rem));max-height:88vh;overflow-y:auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  opacity:0;pointer-events:none;transition:opacity .18s ease, transform .18s ease;
  box-shadow:0 40px 80px -40px rgba(0,0,0,.6);
}
.modal.on{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}
.modal__grid{display:grid;grid-template-columns:1fr 1fr}
.modal__shot{position:relative;background:var(--surface-2);min-height:280px}
.modal__shot img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.modal__body{padding:1.75rem;display:flex;flex-direction:column;gap:.7rem}
.modal__body h3{font-family:"Anton",Impact,sans-serif;font-size:2.3rem;font-weight:800;text-transform:uppercase;line-height:.92;margin:0}
.spec{display:flex;justify-content:space-between;font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.06em;color:var(--ash);border-bottom:1px dashed var(--line);padding:.4rem 0}
.spec b{color:var(--ink);font-weight:500}
@media (max-width:700px){ .modal__grid{grid-template-columns:1fr} .modal__shot{min-height:200px} }

/* ---------- flag rail ----------
   Three equal bars, the proportions of the flag itself. */
.flag{height:13px;background:linear-gradient(
  #CE1126 0 33.34%, #FCD116 33.34% 66.67%, #006B3F 66.67% 100%);}
.flag--thin{height:7px}

/* ---------- adinkra ---------- */
.mark{width:54px;height:54px;color:var(--gold);margin-bottom:1rem}
.verify .mark{color:#FCD116}
.mark svg{width:100%;height:100%;display:block}
.meaning{
  font-family:"JetBrains Mono",monospace;font-size:.6rem;letter-spacing:.14em;
  text-transform:uppercase;color:#9CC9B2;margin:.6rem 0 0;
}
.meaning b{color:#FCD116;font-weight:500}

/* the woven edge on every card */
.card__shot{border-bottom:3px solid var(--gold)}

.toast{
  position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%,140%);
  background:var(--ink);color:var(--ground);padding:.8rem 1.2rem;border-radius:var(--radius);
  font-family:"JetBrains Mono",monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;
  z-index:70;transition:transform .25s cubic-bezier(.2,.7,.3,1);
}
.toast.on{transform:translate(-50%,0)}
