/* ============ 888 SOCIETY ============ */
:root{
  --ink:#050505;
  --void:#0B0A08;
  --panel:#110F0B;
  --panel-2:#171410;
  --gold:#D2B668;
  --gold-hi:#EBD79A;
  --gold-dim:#8C7534;
  --fog:#B9B1A0;
  --fog-dim:#6E685C;
  --line:rgba(210,182,104,.14);
  --grape:#7C5CC4;
  --mint:#8FB79A;
  --bubble:#E4A9CE;
  --ok:#8FB79A;
  --bad:#D98A7C;
  --maxw:1080px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--void);
  color:var(--fog);
  font-family:"Space Grotesk",system-ui,sans-serif;
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}

/* --- shared section rhythm --- */
section{
  max-width:var(--maxw);
  margin-inline:auto;
  padding:96px 24px;
  border-top:1px solid var(--line);
}
.eyebrow{
  font-family:"Space Mono",monospace;
  font-size:12px;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:var(--gold-dim);
  margin-bottom:18px;
}
h2{
  font-family:"Bodoni Moda",serif;
  font-weight:600;
  color:#F3ECDD;
  font-size:clamp(30px,5vw,52px);
  line-height:1.05;
  letter-spacing:-.01em;
}

/* ---------------- NAV ---------------- */
.nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 24px;
  background:rgba(11,10,8,.72);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav__mark{
  font-family:"Bodoni Moda",serif;font-weight:800;
  font-size:22px;letter-spacing:.14em;color:var(--gold);
}
.nav__links{display:flex;align-items:center;gap:26px;
  font-size:14px;letter-spacing:.02em;color:var(--fog)}
.nav__links a:hover{color:var(--gold-hi)}
.nav__cta{
  border:1px solid var(--gold-dim);border-radius:999px;
  padding:8px 16px;color:var(--gold)!important;
  transition:background .2s,color .2s,border-color .2s;
}
.nav__cta:hover{background:var(--gold);color:var(--ink)!important;border-color:var(--gold)}

/* ---------------- HERO ---------------- */
.hero{
  border-top:none;
  text-align:center;
  padding-top:64px;
  display:flex;flex-direction:column;align-items:center;
}
.hero__mark{
  width:min(340px,64vw);
  aspect-ratio:1;object-fit:contain;
  margin-bottom:8px;
  mix-blend-mode:lighten;          /* maps the logo's black padding to the page bg */
  animation:breathe 5.5s ease-in-out infinite;
}
@keyframes breathe{
  0%,100%{opacity:.86;transform:scale(1)}
  50%{opacity:1;transform:scale(1.02)}
}
.hero__line{
  font-family:"Bodoni Moda",serif;font-weight:800;
  color:#F6F0E2;
  font-size:clamp(34px,7vw,72px);
  line-height:1.02;letter-spacing:-.015em;
  margin-bottom:22px;
}
.hero__copy{max-width:600px;color:var(--fog);margin-bottom:44px}
.hero__reel{
  width:100%;max-width:820px;
  border:1px solid var(--line);
  border-radius:16px;overflow:hidden;
  background:var(--ink);
  box-shadow:0 30px 80px -40px rgba(0,0,0,.9), inset 0 0 0 1px rgba(210,182,104,.05);
}
.hero__reel video{width:100%;display:block;aspect-ratio:1/1;object-fit:cover;background:var(--ink)}

/* ------------- ALLOCATION ------------- */
.check__title{margin-bottom:12px}
.check__sub{color:var(--fog);max-width:520px;margin-bottom:20px}
.check__callout{
  max-width:640px;margin:0 0 28px;
  background:rgba(210,182,104,.06);
  border:1px solid var(--line);border-left:2px solid var(--gold);
  border-radius:10px;padding:14px 16px;
  font-size:14.5px;line-height:1.55;color:#E6DECB;
}
.check__panel{
  background:linear-gradient(180deg,var(--panel),var(--void));
  border:1px solid var(--line);
  border-radius:18px;
  padding:28px;
  max-width:640px;
}
.check__row{display:flex;gap:12px;margin-bottom:12px}
.check__input{
  flex:1;min-width:0;
  background:var(--ink);
  border:1px solid var(--line);
  border-radius:12px;
  color:#F3ECDD;
  font-family:"Space Mono",monospace;
  font-size:14px;
  padding:14px 16px;
  transition:border-color .2s,box-shadow .2s;
}
.check__input::placeholder{color:var(--fog-dim);font-family:"Space Grotesk",sans-serif}
.check__input:focus{outline:none;border-color:var(--gold-dim);box-shadow:0 0 0 3px rgba(210,182,104,.12)}

.btn{
  font-family:"Space Grotesk",sans-serif;font-size:15px;font-weight:600;
  border-radius:12px;padding:14px 20px;cursor:pointer;
  border:1px solid transparent;transition:transform .12s,background .2s,color .2s,border-color .2s;
  white-space:nowrap;
}
.btn:active{transform:translateY(1px)}
.btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.btn--ghost{background:transparent;border-color:var(--gold-dim);color:var(--gold)}
.btn--ghost:hover{background:rgba(210,182,104,.08)}
.btn--gold{
  width:100%;background:linear-gradient(180deg,var(--gold-hi),var(--gold));
  color:#1A1409;border-color:var(--gold);
  letter-spacing:.01em;
}
.btn--gold:hover{filter:brightness(1.06)}
.btn--gold:disabled{opacity:.55;cursor:progress}

.check__status{min-height:22px;margin-top:14px;font-size:14px;color:var(--fog)}
.check__status.is-bad{color:var(--bad)}
.check__status.is-ok{color:var(--ok)}
.check__note{margin-top:16px;font-size:12.5px;color:var(--fog-dim);font-family:"Space Mono",monospace}

/* result card */
.result{
  margin-top:22px;
  display:flex;gap:20px;align-items:center;
  background:var(--panel-2);
  border:1px solid rgba(210,182,104,.28);
  border-radius:16px;
  padding:22px;
  position:relative;overflow:hidden;
}
.result[hidden]{display:none}
.result.is-in{animation:shake .6s cubic-bezier(.36,.07,.19,.97)}
.result::after{ /* gold shimmer sweep on reveal */
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 30%,rgba(235,215,154,.22) 50%,transparent 70%);
  transform:translateX(-120%);
}
.result.is-in::after{animation:sweep 1s ease .15s forwards}
@keyframes sweep{to{transform:translateX(120%)}}
@keyframes shake{
  10%,90%{transform:translateX(-2px)}
  20%,80%{transform:translateX(3px)}
  30%,50%,70%{transform:translateX(-6px)}
  40%,60%{transform:translateX(6px)}
}
.result__seal{
  font-family:"Bodoni Moda",serif;font-weight:800;
  font-size:34px;letter-spacing:.08em;color:var(--gold);
  flex:none;
  text-shadow:0 0 24px rgba(210,182,104,.35);
}
.result__body{min-width:0}
.result__wallet{
  font-family:"Space Mono",monospace;font-size:13px;color:var(--fog);
  word-break:break-all;margin-bottom:10px;
}
.result__fields{display:flex;flex-wrap:wrap;gap:10px 26px}
.field{display:flex;flex-direction:column}
.field__k{font-family:"Space Mono",monospace;font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold-dim)}
.field__v{font-family:"Bodoni Moda",serif;font-size:26px;color:#F3ECDD;line-height:1.1}

/* ------------- COLLECTION ------------- */
.collection__title{margin-bottom:34px}
.gallery{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:20px;
}
.card{
  border-radius:16px;overflow:hidden;
  border:1px solid var(--line);
  transition:transform .25s ease;
}
.card:hover{transform:translateY(-6px)}
.card img{width:100%;aspect-ratio:1;object-fit:cover}
.card--grape{box-shadow:0 24px 60px -34px var(--grape)}
.card--mint{box-shadow:0 24px 60px -34px var(--mint)}

/* --------------- ABOUT --------------- */
.about__title{margin-bottom:18px}
.about__copy{font-size:clamp(19px,2.6vw,24px);color:#E6DECB;max-width:640px;line-height:1.5}

/* -------- ABOUT + TEAM (merged) ------- */
.team__grid{
  margin-top:36px;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;
}
.member{
  margin:0;
  background:var(--panel);border:1px solid var(--line);border-radius:14px;
  padding:26px 22px;display:flex;flex-direction:column;align-items:center;
  text-align:center;gap:14px;transition:border-color .2s;
}
.member:hover{border-color:var(--gold-dim)}
.member__photo{
  width:96px;height:96px;border-radius:50%;object-fit:cover;
  border:1px solid var(--line);background:var(--panel-2);
}
.member__meta{display:flex;flex-direction:column;gap:6px}
.member__name{font-family:"Bodoni Moda",serif;font-size:26px;color:#F3ECDD}
.member__role{font-family:"Space Mono",monospace;font-size:12px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--gold-dim)}

/* ----------------- FAQ --------------- */
.faq__title{margin-bottom:30px}
.faq__list{display:flex;flex-direction:column;gap:12px;max-width:720px}
.faq__item{
  background:var(--panel);border:1px solid var(--line);border-radius:14px;
  padding:18px 22px;transition:border-color .2s;
}
.faq__item[open]{border-color:var(--gold-dim)}
.faq__q{
  font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:18px;color:#F3ECDD;
  cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.faq__q::-webkit-details-marker{display:none}
.faq__q::after{content:"+";font-family:"Space Mono",monospace;color:var(--gold);font-size:22px;line-height:1}
.faq__item[open] .faq__q::after{content:"\2013"}
.faq__q:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.faq__a{margin-top:12px;color:var(--fog);font-size:15.5px;line-height:1.6}

/* --------------- FOOTER -------------- */
.foot{
  max-width:var(--maxw);margin:0 auto;
  padding:40px 24px;border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
.foot__mark{font-family:"Bodoni Moda",serif;font-weight:800;font-size:20px;
  letter-spacing:.14em;color:var(--gold)}
.foot__small{font-size:13px;color:var(--fog-dim)}

/* --------------- MOBILE -------------- */
@media(max-width:640px){
  section{padding:64px 20px}
  .nav__links{gap:16px;font-size:13px}
  .nav__links a[href="#faq"],.nav__links a[href="#team"]{display:none}
  .check__row{flex-direction:column}
  .btn--ghost{width:100%}
  .result{flex-direction:column;align-items:flex-start;gap:14px}
}

@media(prefers-reduced-motion:reduce){
  *{animation:none!important;scroll-behavior:auto!important}
  .card:hover{transform:none}
}
