/* ============================================================
   GOATED GIVEAWAY — preview design system
   Dark / nardo gray / white with metallic gold accents
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@500;600;700;800;900&family=Hanken+Grotesk:wght@400;500;600;700&display=swap');

:root{
  --black:#0B0B0C;
  --black-2:#0F0F11;
  --panel:#141417;
  --panel-2:#1A1B1F;
  --nardo:#6E7074;
  --nardo-soft:#8A8D91;
  --line:rgba(255,255,255,.08);
  --white:#F5F4F2;
  --muted:#A7A8AC;

  --gold:#C9A24B;
  --gold-light:#F6E5A6;
  --gold-deep:#9C7B2E;
  --grad-gold:linear-gradient(135deg,#F6E5A6 0%,#D9B45E 38%,#9C7B2E 62%,#E7C873 100%);
  --grad-gold-soft:linear-gradient(135deg,#E7C873,#B98E36);

  --font-display:'Anton',sans-serif;
  --font-head:'Archivo',sans-serif;
  --font-body:'Hanken Grotesk',sans-serif;

  --maxw:1240px;
  --radius:16px;
  --radius-sm:10px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --glow:0 0 0 1px rgba(201,162,75,.25),0 18px 50px -20px rgba(201,162,75,.35);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--black);
  color:var(--white);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
::selection{background:var(--gold);color:#1a1406}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}

/* atmospheric background layers */
body::before{
  content:'';position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(900px 500px at 78% -8%,rgba(201,162,75,.16),transparent 60%),
    radial-gradient(700px 600px at 5% 12%,rgba(110,112,116,.18),transparent 55%),
    radial-gradient(1000px 800px at 50% 120%,rgba(201,162,75,.06),transparent 60%);
}
/* fine grain */
body::after{
  content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- helpers ---------- */
.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}
.gold-text{
  background:var(--grad-gold);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.kicker{
  font-family:var(--font-head);font-weight:700;letter-spacing:.32em;text-transform:uppercase;
  font-size:12px;color:var(--gold);display:inline-flex;align-items:center;gap:10px;
}
.kicker::before{content:'';width:26px;height:1px;background:var(--grad-gold)}
.section{padding:104px 0;position:relative}
.section--tight{padding:72px 0}
.section__head{max-width:720px;margin-bottom:48px}
.section__title{
  font-family:var(--font-display);font-weight:400;line-height:.96;letter-spacing:.5px;
  font-size:clamp(34px,5.2vw,64px);text-transform:uppercase;margin:16px 0 14px;
}
.section__sub{color:var(--muted);font-size:17px;max-width:56ch}

/* metallic gold gradient border */
.metal{
  position:relative;border:1.5px solid transparent;border-radius:var(--radius);
  background:linear-gradient(var(--panel),var(--panel)) padding-box,var(--grad-gold) border-box;
}
.metal--soft{
  background:linear-gradient(var(--panel),var(--panel)) padding-box,
            linear-gradient(135deg,rgba(231,200,115,.55),rgba(155,123,46,.25)) border-box;
}

/* shine sweep on hover */
.shine{position:relative}
/* hover shimmer removed: cards get a gold glow border on hover instead. The periodic gold-button sweep (.btn--gold::after) is unaffected. */
.step,.tier,.product,.coll,.winner,.prize{transition:transform .4s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease)}
.step:hover,.tier:hover,.product:hover,.coll:hover,.winner:hover,.prize:hover{
  border-color:var(--gold);
  box-shadow:0 0 0 1.5px rgba(201,162,75,.7),0 0 26px -4px rgba(201,162,75,.45),0 16px 44px -14px rgba(201,162,75,.4);
}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--font-head);font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  font-size:14px;padding:16px 30px;border-radius:60px;transition:transform .3s var(--ease),box-shadow .3s var(--ease),filter .3s var(--ease);
  position:relative;overflow:hidden;white-space:nowrap;
}
.btn--gold{background:var(--grad-gold);color:#16110a;box-shadow:0 10px 34px -10px rgba(201,162,75,.7)}
.btn--gold:hover{transform:translateY(-2px);box-shadow:0 16px 44px -10px rgba(201,162,75,.85);filter:brightness(1.05)}
.btn--gold::after{
  content:'';position:absolute;top:0;left:-160%;width:60%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);
  transform:skewX(-22deg);
}
@media(prefers-reduced-motion:no-preference){
  .btn--gold::after{animation:sweep 4.5s var(--ease) infinite}
}
.btn--ghost{border:1.5px solid var(--line);color:var(--white);background:rgba(255,255,255,.02)}
.btn--ghost:hover{border-color:var(--gold);color:var(--gold-light);transform:translateY(-2px)}
.btn--lg{padding:19px 38px;font-size:15px}
.btn--sm{padding:12px 20px;font-size:12px}
@keyframes sweep{0%{left:-160%}28%,100%{left:170%}}

/* ---------- ticker ---------- */
.ticker{position:relative;background:var(--black-2);border-bottom:1px solid var(--line);overflow:hidden}
.ticker__track{display:flex;gap:0;width:max-content;padding:11px 0}
.ticker__item{
  font-family:var(--font-head);font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--nardo-soft);padding:0 26px;display:inline-flex;align-items:center;gap:26px;white-space:nowrap;
}
.ticker__item b{color:var(--gold)}
.ticker__item::after{content:'\2666';color:var(--gold);font-size:9px}
@keyframes marquee{to{transform:translateX(-50%)}}
/* WCAG 2.2.2: the marquee only auto-runs when motion is welcome, and always has a pause control */
@media(prefers-reduced-motion:no-preference){
  .ticker__track{animation:marquee 34s linear infinite}
}
.ticker__pause{
  position:absolute;top:0;bottom:0;inset-inline-end:0;z-index:2;width:44px;
  display:grid;place-items:center;color:var(--nardo-soft);background:var(--black-2);
  border-inline-start:1px solid var(--line);transition:color .25s;
}
.ticker__pause:hover{color:var(--gold-light)}
.ticker__pause:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.ticker__pause .ico-play{display:none}
.ticker.is-paused .ticker__track{animation-play-state:paused}
.ticker.is-paused .ticker__pause .ico-play{display:block}
.ticker.is-paused .ticker__pause .ico-pause{display:none}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:60;background:rgba(11,11,12,.72);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:background .3s}
.nav.scrolled{background:rgba(11,11,12,.94)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;height:74px;gap:24px}
.nav__links{display:flex;align-items:center;gap:30px}
.nav__links a{
  font-family:var(--font-head);font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--muted);position:relative;padding:6px 0;transition:color .25s;
}
.nav__links a::after{content:'';position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--grad-gold);transition:width .3s var(--ease)}
.nav__links a:hover{color:var(--white)}
.nav__links a:hover::after,.nav__links a.active::after{width:100%}
.nav__links a.active{color:var(--gold-light)}
.nav__actions{display:flex;align-items:center;gap:16px}
/* name the properties: bare `transition:.25s` means `all`, which animates inherited
   visibility and left the drawer close button unfocusable for 250ms after opening */
.icon-btn{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);color:var(--white);transition:border-color .25s,color .25s}
.icon-btn:hover{border-color:var(--gold);color:var(--gold-light)}
.cart-count{position:absolute;top:-4px;right:-4px;background:var(--grad-gold);color:#16110a;font-size:10px;font-weight:800;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-head)}
.nav__burger{display:none}

/* logo */
.logo{display:flex;align-items:center;gap:12px}
.logo__lockup{height:43px;width:auto;display:block;flex:none}
.logo__lockup--drawer{height:34px}
.logo__crest{width:38px;height:38px;flex:none}
.logo__word{font-family:var(--font-display);font-size:23px;line-height:.82;letter-spacing:.5px;text-transform:uppercase}
.logo__word small{display:block;font-family:var(--font-head);font-weight:700;font-size:9px;letter-spacing:.42em;color:var(--gold);margin-top:3px}

/* ---------- hero ---------- */
.hero{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}
.hero__media{position:absolute;inset:0;z-index:0}
.hero__media .ph{width:100%;height:100%;object-fit:cover;opacity:.55}
.hero__media::after{content:'';position:absolute;inset:0;background:
  linear-gradient(90deg,var(--black) 8%,rgba(11,11,12,.55) 48%,rgba(11,11,12,.2) 100%),
  linear-gradient(0deg,var(--black),transparent 42%)}
.hero__bg-fallback{position:absolute;inset:0;z-index:-1;background:
  radial-gradient(800px 500px at 70% 40%,rgba(110,112,116,.35),transparent 60%),
  conic-gradient(from 200deg at 75% 30%,rgba(201,162,75,.12),transparent 40%)}
.hero__inner{position:relative;z-index:2;padding:60px 0}
.hero__eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:60px;
  background:rgba(201,162,75,.1);border:1px solid rgba(201,162,75,.35);
  font-family:var(--font-head);font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-light)}
.hero__eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(201,162,75,.6)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(201,162,75,.55)}70%{box-shadow:0 0 0 10px rgba(201,162,75,0)}100%{box-shadow:0 0 0 0 rgba(201,162,75,0)}}
@media(prefers-reduced-motion:no-preference){
  .hero__eyebrow .dot{animation:pulse 2s infinite}
}
.hero__title{font-family:var(--font-display);font-weight:400;text-transform:uppercase;line-height:.9;
  font-size:clamp(52px,9vw,124px);letter-spacing:.5px;margin:22px 0 10px}
.hero__title .ln{display:block;overflow:hidden}
.hero__sub{font-size:clamp(18px,2.2vw,22px);color:var(--white);max-width:30ch}
.hero__sub b{color:var(--gold-light)}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin:34px 0 30px}
.hero__note{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}
.hero__note svg{flex:none}

/* countdown */
.countdown{display:flex;gap:12px;margin-top:30px}
.cd-unit{min-width:78px;text-align:center;padding:14px 8px 11px;border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.01));
  border:1px solid var(--line);position:relative;overflow:hidden}
.cd-unit::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(201,162,75,.14),transparent 60%);opacity:.7}
.cd-num{position:relative;font-family:var(--font-display);font-size:38px;line-height:1;font-variant-numeric:tabular-nums}
/* Anton ships no tabular figures, so tnum above is a no-op with the current face and a "1"
   renders ~33% narrower than other digits. Fixed-width digit cells stop the per-second shift
   and keep working if the display face is ever swapped for one that does have tnum. */
.cd-d{display:inline-block;width:.52em;text-align:center}
.cd-lbl{position:relative;font-family:var(--font-head);font-weight:700;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--nardo-soft);margin-top:6px}

/* ---------- steps ---------- */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{padding:34px 28px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);position:relative;transition:transform .4s var(--ease),border-color .4s}
.step:hover{transform:translateY(-6px);border-color:rgba(201,162,75,.4)}
.step__n{font-family:var(--font-display);font-size:54px;line-height:1;-webkit-text-stroke:1.5px var(--gold);color:transparent;opacity:.85}
.step__t{font-family:var(--font-head);font-weight:800;font-size:21px;text-transform:uppercase;letter-spacing:.02em;margin:14px 0 8px}
.step__x{color:var(--muted);font-size:15.5px}
.step__icon{position:absolute;top:30px;right:28px;color:var(--gold);opacity:.85}

/* ---------- entry tiers ---------- */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.tier{padding:30px 28px 28px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--line);
  display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s}
.tier:hover{transform:translateY(-8px) scale(1.012);box-shadow:var(--glow)}
.tier--feat{background:linear-gradient(180deg,#1b1813,#141417);border-color:transparent;
  background:linear-gradient(180deg,#1b1813,#141417) padding-box,var(--grad-gold) border-box;border:1.5px solid transparent}
.tier__tag{position:absolute;top:0;right:24px;transform:translateY(-50%);background:var(--grad-gold);color:#16110a;
  font-family:var(--font-head);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px;border-radius:30px}
.tier{position:relative}
.tier__name{font-family:var(--font-head);font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:15px;color:var(--nardo-soft)}
.tier__price{font-family:var(--font-display);font-size:50px;line-height:1;margin:8px 0 2px}
.tier__price span{font-size:18px;color:var(--muted);font-family:var(--font-head)}
.tier__entries{font-family:var(--font-head);font-weight:800;font-size:22px;margin:14px 0}
.tier__entries .x{font-size:13px;color:var(--gold);vertical-align:super;margin-left:4px}
.tier__incl{list-style:none;padding:0;margin:0 0 24px;border-top:1px solid var(--line);padding-top:18px}
.tier__incl li{display:flex;gap:10px;color:var(--muted);font-size:14.5px;padding:6px 0}
.tier__incl li svg{flex:none;color:var(--gold);margin-top:3px}
.tier .btn{margin-top:auto;width:100%}

/* ---------- club ---------- */
.club{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;
  border-radius:24px;padding:48px;position:relative;overflow:hidden;
  background:linear-gradient(120deg,#16140f 0%,#101012 60%);border:1px solid var(--line)}
.club::before{content:'';position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,162,75,.22),transparent 65%)}
.club__benefits{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:14px}
.club__benefits li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;color:var(--white)}
.club__benefits li svg{flex:none;color:var(--gold);margin-top:3px}
.club__card{position:relative;z-index:2;padding:32px;border-radius:18px;text-align:center;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015))}
.club__price{font-family:var(--font-display);font-size:66px;line-height:1}
.club__price span{font-size:20px;color:var(--muted);font-family:var(--font-head)}

/* ---------- collections ---------- */
.collections{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.shop-rowhead{display:flex;align-items:center;gap:20px;margin:6px 0 24px;
  font-family:var(--font-display);font-weight:400;text-transform:uppercase;
  font-size:clamp(26px,3vw,38px);line-height:1;letter-spacing:.5px;color:var(--white)}
.shop-rowhead::after{content:'';flex:1;height:3px;border-radius:3px;background:var(--grad-gold);box-shadow:0 0 24px -4px rgba(201,162,75,.55)}
.coll{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:3/4;border:1px solid var(--line);
  background:linear-gradient(160deg,#1a1b1f,#0e0e10)}
.coll img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.coll:hover img{transform:scale(1.08)}
.coll::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,11,12,.78),transparent 42%)}
.coll__label{position:absolute;left:20px;bottom:18px;z-index:2}
.coll__label h4{font-family:var(--font-head);font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:18px;margin:0}
.coll__label span{font-size:12px;color:var(--gold);font-family:var(--font-head);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.coll__arrow{position:absolute;top:16px;right:16px;z-index:2;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  border:1px solid var(--line);color:var(--white);transition:border-color .3s,color .3s,transform .3s;background:rgba(11,11,12,.4)}
.coll:hover .coll__arrow{border-color:var(--gold);color:var(--gold-light);transform:rotate(-45deg)}

/* ---------- products ---------- */
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.product{border-radius:var(--radius);overflow:hidden;background:var(--panel);border:1px solid var(--line);transition:transform .4s var(--ease),border-color .4s}
.product:hover{transform:translateY(-6px);border-color:rgba(201,162,75,.4)}
.product__media{position:relative;aspect-ratio:1;background:linear-gradient(160deg,#202126,#0e0e10);overflow:hidden}
.product__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.product:hover .product__media img{transform:scale(1.07)}
.mult{position:absolute;top:12px;left:12px;background:rgba(11,11,12,.7);border:1px solid rgba(201,162,75,.5);
  font-family:var(--font-head);font-weight:800;font-size:11px;letter-spacing:.08em;color:var(--gold-light);padding:5px 10px;border-radius:30px;backdrop-filter:blur(4px)}
.product__body{padding:16px 16px 18px}
.product__name{font-family:var(--font-head);font-weight:700;font-size:15px;margin:0 0 6px}
.product__meta{display:flex;align-items:center;justify-content:space-between}
.product__price{font-family:var(--font-display);font-size:22px}
.product__entries{font-family:var(--font-head);font-weight:700;font-size:12px;color:var(--gold);text-transform:uppercase;letter-spacing:.06em}

/* ---------- winners ---------- */
.winners-row{display:flex;gap:20px;overflow-x:auto;padding-bottom:14px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}
.winners-row::-webkit-scrollbar{display:none}
.winner{flex:none;width:300px;scroll-snap-align:start;border-radius:var(--radius);overflow:hidden;background:var(--panel);border:1px solid var(--line)}
.winner__media{position:relative;aspect-ratio:4/3;background:linear-gradient(160deg,#1e1f24,#0e0e10);overflow:hidden}
.winner__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92;filter:brightness(.72);transition:transform .7s var(--ease)}
.winner:hover .winner__media img{transform:scale(1.06)}
.winner__badge{position:absolute;top:12px;left:12px;background:var(--grad-gold);color:#16110a;font-family:var(--font-head);font-weight:800;font-size:11px;padding:5px 11px;border-radius:30px;letter-spacing:.06em}
.winner__body{padding:16px 18px}
.winner__name{font-family:var(--font-head);font-weight:800;text-transform:uppercase;font-size:16px}
.winner__car{color:var(--gold);font-size:13px;font-weight:700;font-family:var(--font-head)}
.winner__loc{color:var(--muted);font-size:13px;margin-top:2px}

/* ---------- trust / stats ---------- */
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.stat__num{font-family:var(--font-display);font-size:clamp(40px,6vw,72px);line-height:1}
.stat__lbl{font-family:var(--font-head);font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--nardo-soft);margin-top:6px}
.trust-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 34px;margin-top:46px;padding-top:34px;border-top:1px solid var(--line)}
.trust-band .pill{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:13.5px;font-family:var(--font-head);font-weight:600}
.trust-band .pill svg{color:var(--gold)}

/* ---------- FAQ ---------- */
.faq{max-width:860px;margin:0 auto}
.faq__item{border-bottom:1px solid var(--line)}
.faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;
  padding:24px 4px;font-family:var(--font-head);font-weight:700;font-size:18px;color:var(--white);transition:color .25s}
.faq__q:hover{color:var(--gold-light)}
.faq__q .pm{flex:none;width:30px;height:30px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:background .3s,color .3s,border-color .3s,transform .3s}
.faq__item.open .pm{background:var(--grad-gold);color:#16110a;border-color:transparent;transform:rotate(180deg)}
/* visibility, not just max-height:0 — clipped content stays in the accessibility tree,
   so screen readers would otherwise read every collapsed answer */
.faq__a{max-height:0;overflow:hidden;visibility:hidden;transition:max-height .45s var(--ease),visibility 0s linear .45s}
.faq__item.open .faq__a{visibility:visible;transition:max-height .45s var(--ease),visibility 0s linear 0s}
.faq__a p{margin:0 4px 24px;color:var(--muted);font-size:15.5px}

/* ---------- capture ---------- */
.capture{position:relative;border-radius:24px;overflow:hidden;padding:64px 48px;text-align:center;
  background:linear-gradient(120deg,#15140f,#0d0d0f);border:1px solid var(--line)}
.capture::before{content:'';position:absolute;inset:0;background:radial-gradient(600px 300px at 50% 0,rgba(201,162,75,.18),transparent 60%)}
.capture__form{position:relative;display:flex;flex-wrap:wrap;gap:12px;max-width:520px;margin:26px auto 14px}
.capture__label{
  width:100%;text-align:start;padding-inline-start:22px;margin-bottom:-4px;
  font-family:var(--font-head);font-weight:700;font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--nardo-soft);
}
.capture__form input{flex:1;padding:17px 22px;border-radius:60px;background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--white);font-family:var(--font-body);font-size:15px}
.capture__form input:focus{border-color:var(--gold)}
.capture__form input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.capture__form input::placeholder{color:var(--nardo-soft)}

/* ---------- footer ---------- */
.footer{border-top:1px solid var(--line);background:var(--black-2);padding:70px 0 30px;position:relative}
.footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}
.footer h5{font-family:var(--font-head);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--nardo-soft);margin:0 0 18px}
.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.footer ul a{color:var(--muted);font-size:14.5px;transition:color .2s}
.footer ul a:hover{color:var(--gold-light)}
.footer__brand p{color:var(--muted);font-size:14.5px;max-width:34ch;margin:16px 0 20px}
.socials{display:flex;gap:10px}
/* legally required sweepstakes disclosure: text role token, not the nardo brand gray (3.86:1 / Lc 27) */
.disclaimer{border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:12.5px;line-height:1.7;text-align:center}
.disclaimer b{color:var(--white)}
.footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;flex-wrap:wrap}
.footer__bottom span{color:var(--muted);font-size:13px}
.pay{display:flex;gap:8px;align-items:center}
.pay i{display:block;width:38px;height:24px;border-radius:5px;border:1px solid var(--line);background:rgba(255,255,255,.04)}

/* ---------- mobile sticky bar ---------- */
.stickybar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:none;padding:12px 16px calc(12px + env(safe-area-inset-bottom));
  background:rgba(11,11,12,.92);backdrop-filter:blur(12px);border-top:1px solid var(--line)}
.stickybar .btn{width:100%}

/* ---------- page hero (inner pages) ---------- */
.pagehead{padding:80px 0 50px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.pagehead h1{font-family:var(--font-display);font-size:clamp(40px,7vw,86px);text-transform:uppercase;line-height:.94;margin:14px 0 12px}
.breadcrumb{color:var(--muted);font-size:13px;font-family:var(--font-head);font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.breadcrumb a:hover{color:var(--gold-light)}

/* product gallery (current giveaway) */
.cg{display:grid;grid-template-columns:1.15fr .85fr;gap:46px;align-items:start}
.cg__stage{border-radius:20px;overflow:hidden;aspect-ratio:4/3;position:relative;background:linear-gradient(160deg,#1d1e23,#0d0d0f);border:1px solid var(--line)}
.cg__stage img{width:100%;height:100%;object-fit:cover}
.cg__thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px}
.cg__thumb{aspect-ratio:1;width:100%;display:block;padding:0;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#16171b;cursor:pointer;opacity:.6;transition:opacity .3s,border-color .3s}
.cg__thumb.active,.cg__thumb:hover{opacity:1;border-color:var(--gold)}
.cg__thumb:focus-visible{opacity:1;outline:2px solid var(--gold);outline-offset:2px}
.cg__thumb img{width:100%;height:100%;object-fit:cover}
.cg__panel{position:sticky;top:96px}
.specs{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:22px 0}
.spec{padding:16px 18px;border-bottom:1px solid var(--line)}
.spec:nth-child(odd){border-right:1px solid var(--line)}
.spec b{display:block;font-family:var(--font-head);font-weight:800;font-size:17px}
.spec span{color:var(--nardo-soft);font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-head);font-weight:700}
.cashalt{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:14px;margin-top:18px;
  background:rgba(201,162,75,.08);border:1px solid rgba(201,162,75,.3)}

/* reveal animation */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.reveal.in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.08s}
.reveal[data-d="2"]{transition-delay:.16s}
.reveal[data-d="3"]{transition-delay:.24s}
.reveal[data-d="4"]{transition-delay:.32s}
/* reduced motion: keep the fade, drop the slide and the smooth-scroll jump */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{transform:none}
}

/* ---------- responsive ---------- */
@media(max-width:1040px){
  .collections,.products{grid-template-columns:repeat(2,1fr)}
  .footer__grid{grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:900px){
  .nav__links,.nav__actions .btn{display:none}
  .nav__burger{display:grid}
  .steps,.tiers,.trust{grid-template-columns:1fr}
  .club{grid-template-columns:1fr;padding:34px}
  .cg{grid-template-columns:1fr}
  .cg__panel{position:static}
  .section{padding:74px 0}
  .stickybar{display:block}
  .hero{min-height:auto;padding:40px 0 64px}
}
@media(max-width:560px){
  .collections,.products{grid-template-columns:1fr 1fr;gap:12px}
  .capture{padding:44px 22px}
  .capture__form{flex-direction:column;border-radius:18px}
  .capture__form input,.capture__form .btn{width:100%}
  .countdown{gap:8px}
  .cd-unit{min-width:0;flex:1;padding:11px 4px 9px}
  .cd-num{font-size:30px}
  .footer__grid{grid-template-columns:1fr 1fr}
  .trust{grid-template-columns:1fr 1fr}
}

/* mobile nav drawer */
/* visibility (not just transform) keeps the closed drawer out of the tab order in every browser.
   visibility flips instantly on open so focus can move in on the same frame, and is delayed on
   close so the slide-out stays visible for its full duration. */
.drawer{position:fixed;inset:0;z-index:80;background:rgba(11,11,12,.98);backdrop-filter:blur(8px);transform:translateX(100%);visibility:hidden;transition:transform .4s var(--ease),visibility 0s linear .4s;display:flex;flex-direction:column;padding:24px;overscroll-behavior:contain}
.drawer.open{transform:none;visibility:visible;transition:transform .4s var(--ease),visibility 0s linear 0s}
.drawer__links{display:flex;flex-direction:column;gap:6px;margin-top:30px}
.drawer__links a{font-family:var(--font-display);font-size:30px;text-transform:uppercase;padding:10px 0;border-bottom:1px solid var(--line)}
.drawer__links a:hover{color:var(--gold-light)}
.drawer__top{display:flex;justify-content:space-between;align-items:center}
