/* Code Vault SA (casinospringbok.com): the coupon vault.
   Base #080c03 (official footer black) with a faint gold-dust radial; #13250d tickets with a bronze #af7c40 perforated
   edge; seal gold #ebb941; official gold-bar CTA with #235200 text; Bebas Neue + Source Sans 3. Mobile first. */
:root{
  --base:#080c03;--base2:#0d1507;--panel:#101b09;--ticket:#13250d;--ticket2:#0e1c08;
  --bronze:#af7c40;--gold:#ebb941;--gold-hi:#f4e569;--cream:#f5edab;--muted:#cdc07c;
  --ink:#f6f3e6;--soft:#cfccba;--line:rgba(235,185,65,.22);--line2:rgba(235,185,65,.12);
  --green:#6d9f56;--lime:#c3e890;--red:#e78a8a;--cta-ink:#235200;
  --fh:"Bebas Neue",Impact,"Arial Narrow Bold","Arial Narrow",sans-serif;
  --fb:"Source Sans 3",Arial,Helvetica,sans-serif;
  --wrap:1200px;--r:14px;--hdr:64px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;min-height:100vh;font:400 1.0625rem/1.62 var(--fb);color:var(--ink);overflow-x:hidden;
  background:
    radial-gradient(1100px 520px at 12% -6%,rgba(235,185,65,.11),transparent 62%),
    radial-gradient(800px 480px at 96% 18%,rgba(175,124,64,.09),transparent 64%),
    radial-gradient(900px 700px at 50% 108%,rgba(34,83,20,.35),transparent 70%),
    var(--base);
  position:relative;isolation:isolate}
body::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:radial-gradient(rgba(244,229,105,.55) .7px,transparent 1.3px),radial-gradient(rgba(235,185,65,.45) .6px,transparent 1.2px);
  background-size:53px 47px,31px 37px;background-position:0 0,17px 23px;opacity:.16;
  -webkit-mask-image:linear-gradient(to bottom,#000 0,rgba(0,0,0,.35) 900px,rgba(0,0,0,.18) 100%);mask-image:linear-gradient(to bottom,#000 0,rgba(0,0,0,.35) 900px,rgba(0,0,0,.18) 100%)}
img{max-width:100%;height:auto;display:block}
[hidden]{display:none!important}
a{color:var(--gold-hi);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--cream)}
:focus-visible{outline:3px solid var(--gold-hi);outline-offset:3px;border-radius:4px}
main:focus{outline:none}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 16px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--gold);color:#111;padding:10px 16px;border-radius:8px;font-weight:700;text-decoration:none}
.skip:focus{top:12px}
.ic{width:1.1em;height:1.1em;flex:none;vertical-align:-.15em}
.ic.flip{transform:scaleX(-1)}
.muted{color:var(--soft);font-size:.92em}
code,.code-inline{font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-size:.92em;letter-spacing:.02em}
.code-inline{color:var(--gold-hi);background:rgba(235,185,65,.1);border:1px dashed rgba(235,185,65,.55);border-radius:5px;padding:.05em .4em;white-space:nowrap;font-weight:700}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px rgba(195,232,144,.18);flex:none}
@media (prefers-reduced-motion:no-preference){.dot{animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 6px rgba(195,232,144,.05)}}}

/* ---------- type ---------- */
h1,h2,h3,.tk-big,.kicker,.cta-h,.rail-h,.ftr-h,.callout-h,.card-h,.rgbox-h{font-family:var(--fh);font-weight:400;letter-spacing:.025em;text-transform:uppercase;line-height:1}
h1{font-size:clamp(2.2rem,8vw,4.1rem);margin:.15em 0 .3em;color:#fff;text-wrap:balance}
h2{font-size:clamp(1.9rem,5.6vw,2.55rem);margin:0 0 .45em;color:var(--gold);text-wrap:balance}
h3{font-size:1.45rem;margin:1.2em 0 .35em;color:var(--cream);letter-spacing:.03em}
p{margin:0 0 1em}
.kicker{display:inline-flex;align-items:center;gap:.4em;font-size:1.05rem;letter-spacing:.12em;color:var(--gold);margin:0}
.kicker-d{color:var(--muted)}
.lede{font-size:1.08rem;color:#fff}
@media (min-width:960px){.lede{font-size:1.16rem}}
.lede p{margin-bottom:.7em}
.lede strong{color:var(--gold-hi)}

/* ---------- buttons ---------- */
.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:.45em;min-height:48px;padding:.6em 1.3em .5em;border:0;border-radius:10px;cursor:pointer;
  font:400 1.32rem/1 var(--fh);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--cta-ink);
  background-color:#fffec7;background-image:linear-gradient(to bottom,#ffffb0 0%,#fff 11%,#fffec7 53%,#ce9e63 54%,#fedc8b 78%,#fffac4 100%);
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.5),0 0 7px 1px rgba(255,255,190,.5);text-shadow:1px 1px 3px rgba(255,249,161,.9);transition:box-shadow .2s}
.btn-gold:hover,.btn-gold:focus-visible{color:var(--cta-ink);background-image:linear-gradient(to bottom,#ffffb0 0%,#fff 11%,#fffec7 53%,#e3a45f 54%,#ffc98a 78%,#fffac4 100%);box-shadow:inset 0 0 0 2px rgba(0,0,0,.5),0 0 12px 3px rgba(255,255,190,.7)}
.btn-gold .ic{width:1em;height:1em}
.btn-ghost{display:inline-flex;align-items:center;gap:.45em;min-height:44px;padding:.55em 1.1em;border:1px solid #f5be47;border-radius:8px;
  background:linear-gradient(to bottom,#2f5a22 0,#21461a 45%,#163a0a 100%);color:#fff;font-weight:700;text-decoration:none;text-shadow:0 1px 0 #0b2205}
.btn-ghost:hover{color:#fff;background:linear-gradient(to bottom,#3d7a2c 0,#245d16 100%)}
.aff-inline{font-weight:700;color:var(--gold-hi)}
.aff-inline::after{content:" ↗";font-size:.85em}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:40;background:linear-gradient(to bottom,#0b1205,#070a03);border-bottom:2px solid var(--gold);box-shadow:0 6px 18px rgba(0,0,0,.45)}
.hdr-in{display:flex;align-items:center;gap:10px;min-height:var(--hdr);padding-top:6px;padding-bottom:6px}
.lockup{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-decoration:none;flex:none}
.lockup-logo{width:112px;height:auto}
.lockup-tag{display:flex;gap:.45em;align-items:baseline;font-size:.66rem;line-height:1;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.lockup-name{display:none;font-family:var(--fh);font-size:.95rem;letter-spacing:.08em;color:var(--gold)}
@media (min-width:430px){.lockup-name{display:inline}}
.lockup-ind{color:var(--cream);border:1px solid rgba(245,237,171,.45);border-radius:3px;padding:2px 4px 1px}
.nav{display:none}
.hdr-act{display:flex;align-items:center;gap:8px;margin-left:auto}
.btn-hdr{min-height:44px;padding:.55em .8em .45em;font-size:1.12rem;white-space:nowrap}
@media (max-width:359px){.hdr-more{display:none}}
.btn-quiet{background:#0f1a08;color:var(--cream);text-shadow:none;box-shadow:inset 0 0 0 1px rgba(235,185,65,.7)}
.btn-quiet:hover,.btn-quiet:focus-visible{background:#16260c;color:#fff;box-shadow:inset 0 0 0 1px var(--gold)}
.nav-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;border:1px solid var(--line);background:#0f1a08;color:var(--cream);cursor:pointer}
.nav-btn .ic{width:24px;height:24px}
.livepill{display:none}
.nav.open{display:block;position:absolute;left:0;right:0;top:100%;background:#0b1205;border-bottom:2px solid var(--gold);box-shadow:0 14px 28px rgba(0,0,0,.6)}
.nav ul{list-style:none;margin:0;padding:6px 16px 14px}
.nav li a{display:flex;align-items:center;min-height:48px;padding:0 4px;border-bottom:1px solid var(--line2);color:var(--ink);text-decoration:none;font:400 1.35rem/1 var(--fh);letter-spacing:.06em;text-transform:uppercase}
.nav li a[aria-current]{color:var(--gold)}
html:not(.js) .nav{display:block;position:static;width:100%}
html:not(.js) .hdr-in{flex-wrap:wrap}
html:not(.js) .nav-btn{display:none}
.livestrip{display:flex;align-items:center;justify-content:center;gap:.6em;min-height:36px;padding:4px 16px;background:repeating-linear-gradient(90deg,#0f1b08 0 18px,#0c1606 18px 36px);border-bottom:1px solid var(--line2);color:var(--cream);text-decoration:none;font-size:.9rem}
.livestrip b{color:var(--lime);font-weight:600}
.livestrip .ic{color:var(--gold)}

@media (min-width:1100px){
  :root{--hdr:0px}
  .hdr{position:relative}
  .hdr-in{min-height:84px}
  .lockup{flex-direction:row;align-items:center;gap:14px}
  .lockup-logo{width:170px}
  .lockup-tag{flex-direction:column;align-items:flex-start;gap:5px}
  .lockup-name{display:inline;font-size:1.15rem}
  .nav,html:not(.js) .nav{display:block;position:static;width:auto;background:#0d1607;border-top:1px solid var(--line2);box-shadow:none}
  .nav ul{display:flex;justify-content:flex-start;gap:4px;margin:0 auto;padding:0 16px}
  html{scroll-padding-top:20px}
  .nav li a{min-height:46px;padding:0 14px;border:0;font-size:1.18rem;color:var(--cream);border-bottom:3px solid transparent;white-space:nowrap}
  .nav li a:hover{color:var(--gold-hi);border-bottom-color:var(--bronze)}
  .nav li a[aria-current]{color:var(--gold);border-bottom-color:var(--gold)}
  .nav-btn{display:none}
  .livepill{display:inline-flex;align-items:center;gap:.5em;min-height:40px;padding:0 1em;border:1px solid var(--line);border-radius:999px;color:var(--cream);text-decoration:none;font-size:.95rem;font-weight:600;white-space:nowrap;background:#0f1a08}
  .livepill:hover{border-color:var(--gold);color:var(--gold-hi)}
  .livestrip{display:none}
  .hdr-act{gap:12px}
  .btn-hdr{padding:.6em 1.3em .5em;font-size:1.3rem}
}

/* ---------- vault hero (home) ---------- */
.vault{position:relative;padding:22px 0 30px;border-bottom:1px solid var(--line2);overflow:hidden;
  background:radial-gradient(700px 420px at 78% 40%,rgba(175,124,64,.16),transparent 70%),radial-gradient(500px 300px at 10% 0%,rgba(235,185,65,.08),transparent 70%)}
.vault-grid{display:grid;gap:18px}
.vault-copy .lede{max-width:40em}
.hero-points{list-style:none;margin:.2em 0 0;padding:0;display:none;gap:.35em;color:var(--soft);font-size:1rem}
.hero-points li{display:flex;gap:.5em;align-items:flex-start}
.hero-points .ic{color:var(--lime);margin-top:.25em}
.vault-stage{position:relative}
.door{display:none}
.vault-art{display:none}
.vault-coins{display:none}
.vault-tickets{position:relative;z-index:2;display:grid;gap:14px}
@media (min-width:960px){
  .vault{padding:44px 0 56px}
  .vault-grid{grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:44px;align-items:center}
  .hero-points{display:grid;margin-top:1.1em}
  .vault-stage{min-height:560px;padding-top:118px}
  .door{display:block;position:absolute;right:-170px;top:-30px;width:600px;height:600px;border-radius:50%;
    background:
      radial-gradient(circle,#0b1306 0 13%,#af7c40 13.4% 14.4%,#0e1909 14.8% 30%,rgba(175,124,64,.55) 30.3% 30.8%,#122110 31.2% 55%,#6b4b25 55.3% 56.2%,#0c1607 56.6% 66%,#af7c40 66.3% 67.6%,#16120a 68% 100%);
    box-shadow:0 0 0 7px #1b150a,0 0 0 9px var(--bronze),0 0 0 26px rgba(175,124,64,.07),0 40px 80px rgba(0,0,0,.65),inset 0 0 60px rgba(0,0,0,.8)}
  .door::after{content:"";position:absolute;inset:12%;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(235,185,65,.1) 0 4deg,transparent 4deg 15deg);-webkit-mask:radial-gradient(circle,transparent 58%,#000 59%,#000 70%,transparent 71%);mask:radial-gradient(circle,transparent 58%,#000 59%,#000 70%,transparent 71%)}
  .bolt{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff2b8,#cdc07c 35%,#6b4b25 80%);box-shadow:0 2px 3px rgba(0,0,0,.7);transform:rotate(var(--a)) translateY(-272px)}
  .door-hub{position:absolute;left:50%;top:50%;width:110px;height:110px;margin:-55px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#3a2b14,#120d06 70%);box-shadow:0 0 0 3px var(--bronze),0 0 0 9px #120d06,0 0 0 11px rgba(175,124,64,.6)}
  .door-hub::before,.door-hub::after{content:"";position:absolute;left:50%;top:50%;width:180px;height:12px;margin:-6px -90px;border-radius:6px;background:linear-gradient(#cdc07c,#6b4b25)}
  .door-hub::after{transform:rotate(90deg)}
  .vault-art{display:block;position:absolute;z-index:3;right:14px;top:6px;width:210px;border-radius:8px;border:3px solid #f5edab;box-shadow:0 14px 28px rgba(0,0,0,.6);transform:rotate(5deg)}
  .vault-coins{display:block;position:absolute;z-index:1;left:18px;top:40px;width:144px;mix-blend-mode:lighten;transform:rotate(-4deg)}
  .vault-tickets{width:100%;max-width:480px;margin:0}
  .vault-tickets .tk-hero{transform:rotate(-1.2deg)}
}

/* ---------- inner page hero ---------- */
.phero{padding:16px 0 22px;border-bottom:1px solid var(--line2);background:radial-gradient(600px 300px at 85% 0%,rgba(175,124,64,.13),transparent 70%)}
.phero-calm{background:radial-gradient(600px 300px at 85% 0%,rgba(109,159,86,.12),transparent 70%)}
.phero-grid{display:grid;gap:18px}
.phero h1{font-size:clamp(2.1rem,7.4vw,3.5rem)}
.phero .lede{max-width:44em}
.phero-note{font-family:var(--fh);font-size:1.15rem;letter-spacing:.08em;color:var(--muted);margin:0 0 .5em;text-transform:uppercase}
@media (min-width:960px){.phero{padding:26px 0 36px}.phero-ticket .phero-grid{grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:40px;align-items:center}}
/* hero side art (framed official images or cut-outs) and the code hub's vault dial: desktop only */
.phero-art,.hubdial{display:none}
@media (min-width:960px){
  .phero-side-on .phero-grid{grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:center}
  .phero-art{display:block;position:relative;min-height:250px}
  .phero-art::before{content:"";position:absolute;inset:-30px -40px;z-index:0;background:radial-gradient(closest-side,rgba(235,185,65,.22),transparent);pointer-events:none}
  .art-card{position:absolute;z-index:1;margin:0;padding:6px;border-radius:10px;background:linear-gradient(160deg,#f5edab,#cdc07c);box-shadow:0 18px 32px rgba(0,0,0,.6)}
  .art-card img{width:227px;border-radius:6px}
  .art-card.art-cut{padding:0;background:none;box-shadow:none;filter:drop-shadow(0 16px 22px rgba(0,0,0,.65))}
  .art-card.art-cut img{width:auto;max-height:300px;border-radius:0}
  .phero-art.n1{display:flex;justify-content:center;align-items:center}
  .phero-art.n1 .art-card{position:relative;transform:rotate(3deg)}
  .phero-art.n1 .art-cut{transform:none}
  .phero-art.n2 .art-0{left:0;top:8px;transform:rotate(-5deg)}
  .phero-art.n2 .art-1{right:0;top:120px;transform:rotate(4deg);z-index:2}
  .phero-art.n3{min-height:350px}
  .phero-art.n3 .art-card img{width:196px}
  .phero-art.n3 .art-0{left:0;top:0;transform:rotate(-6deg)}
  .phero-art.n3 .art-1{right:-4px;top:104px;transform:rotate(5deg);z-index:2}
  .phero-art.n3 .art-2{left:14px;top:206px;transform:rotate(-2deg);z-index:3}
  .phero-calm .phero-art::before{background:radial-gradient(closest-side,rgba(109,159,86,.24),transparent)}
  .hubdial{display:grid;justify-items:center;gap:12px;padding:20px 18px 18px;border:2px solid var(--bronze);border-radius:18px;background:radial-gradient(260px 200px at 50% 20%,rgba(235,185,65,.16),transparent 70%),linear-gradient(170deg,#132510,#0a1106)}
  .dial{position:relative;display:grid;place-items:center;width:188px;height:188px;border-radius:50%;
    background:radial-gradient(circle,#0b1306 0 54%,#af7c40 54.6% 56%,#122110 56.6% 72%,#6b4b25 72.4% 73.6%,#16120a 74% 100%);
    box-shadow:0 0 0 5px #1b150a,0 0 0 7px var(--bronze),0 18px 36px rgba(0,0,0,.6),inset 0 0 30px rgba(0,0,0,.8)}
  .dial::after{content:"";position:absolute;inset:6%;border-radius:50%;background:repeating-conic-gradient(rgba(235,185,65,.16) 0 3deg,transparent 3deg 12deg);-webkit-mask:radial-gradient(circle,transparent 68%,#000 69%,#000 76%,transparent 77%);mask:radial-gradient(circle,transparent 68%,#000 69%,#000 76%,transparent 77%)}
  .dial-bolts .bolt{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff2b8,#cdc07c 35%,#6b4b25 80%);box-shadow:0 2px 3px rgba(0,0,0,.7);transform:rotate(var(--a)) translateY(-82px)}
  .dial-face{position:relative;z-index:1;display:grid;justify-items:center;margin:0;line-height:1}
  .dial-n{font:400 4.2rem/.9 var(--fh);background:linear-gradient(180deg,#fff9cf,#f4e569 40%,#ebb941 62%,#c8913f);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 rgba(0,0,0,.6))}
  .dial-l{font:400 1rem/1 var(--fh);letter-spacing:.14em;text-transform:uppercase;color:var(--cream)}
  .dial-kinds{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:4px 0 0;padding:0}
  .dial-kinds li{padding:.2em .6em;border:1px solid var(--line);border-radius:999px;font-size:.85rem;color:var(--soft);background:rgba(8,12,3,.55)}
  .dial-kinds b{color:var(--gold-hi)}
  .dial-stamp{margin:2px 0 0;padding:.28em .55em .18em;border:2px solid var(--muted);border-radius:4px;color:var(--muted);font:400 .95rem/1 var(--fh);letter-spacing:.1em;text-transform:uppercase;transform:rotate(-3deg)}
  .dial-btn{width:100%}
}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.2em .5em;margin:0 0 .6em;padding:0;font-size:.9rem;color:var(--soft)}
.crumbs li+li::before{content:"›";margin-right:.5em;color:var(--bronze)}
.crumbs a{color:var(--soft)}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5em .7em;margin:.4em 0 0;font-size:.92rem;color:var(--soft)}
.stamp-sm{display:inline-block;padding:.25em .55em .15em;border:2px solid var(--muted);border-radius:4px;color:var(--muted);font:400 1rem/1 var(--fh);letter-spacing:.09em;text-transform:uppercase;transform:rotate(-2deg)}

/* ---------- code tickets ---------- */
.tk-wrap{container-type:inline-size}
.ticket{--n:15px;position:relative;display:grid;grid-template-columns:1fr;overflow:hidden;border-radius:var(--r);color:var(--ink);
  background:radial-gradient(130% 120% at 0% 0%,#1d3814 0%,var(--ticket) 42%,var(--ticket2) 100%);
  box-shadow:inset 0 0 0 2px var(--bronze),inset 0 0 0 5px rgba(8,12,3,.9),inset 0 0 0 6px rgba(175,124,64,.45),0 16px 32px rgba(0,0,0,.5)}
.tk-stub{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"badge stamp" "big big";align-items:center;gap:6px 10px;padding:16px 18px 14px;border-bottom:3px dotted var(--bronze);
  background:linear-gradient(135deg,rgba(235,185,65,.1),rgba(235,185,65,0) 60%)}
.tk-stub::before,.tk-stub::after{content:"";position:absolute;z-index:2;bottom:calc(var(--n) * -1 - 1.5px);width:calc(var(--n) * 2);height:calc(var(--n) * 2);border-radius:50%;background:var(--base);box-shadow:inset 0 0 0 2px var(--bronze)}
.tk-stub::before{left:calc(var(--n) * -1)}
.tk-stub::after{right:calc(var(--n) * -1)}
.tk-badge{grid-area:badge;justify-self:start;display:inline-flex;align-items:center;gap:.45em;padding:.3em .7em;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.tk-badge-live{background:#1d3a12;color:var(--lime);border:1px solid rgba(195,232,144,.4)}
.tk-badge-inbox{background:#2a1f0e;color:var(--cream);border:1px solid rgba(175,124,64,.7)}
.tk-badge-expired{background:#2a1010;color:#f2b3b3;border:1px solid rgba(231,138,138,.5)}
.tk-big{grid-area:big;display:flex;align-items:baseline;gap:.35em;margin:0;flex-wrap:wrap}
.tk-num{font-size:3.6rem;line-height:.9;background:linear-gradient(180deg,#fff9cf 0%,#f4e569 38%,#ebb941 62%,#c8913f 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 rgba(0,0,0,.55))}
.tk-small{font-size:1.35rem;color:var(--cream);letter-spacing:.06em}
.tk-stamp{grid-area:stamp;justify-self:end;margin:0;padding:.28em .5em .18em;border:2px solid currentColor;border-radius:4px;color:var(--muted);font:400 .95rem/1 var(--fh);letter-spacing:.1em;text-transform:uppercase;transform:rotate(-6deg);opacity:.9;white-space:nowrap}
.tk-body{padding:18px 18px 18px}
.tk-kind{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.tk-name{margin:.1em 0 .3em;font:400 1.55rem/1.05 var(--fh);letter-spacing:.03em;text-transform:uppercase;color:#fff}
.tk-offer{margin:0 0 .85em;color:var(--soft);font-size:1rem;line-height:1.45}
.tk-code{display:flex;align-items:stretch;margin:0 0 10px;border:2px dashed rgba(235,185,65,.75);border-radius:10px;background:#070b03;overflow:hidden}
.tk-code-k{display:none;align-items:center;padding:0 10px;font:400 1rem/1 var(--fh);letter-spacing:.1em;color:var(--muted);border-right:1px dashed rgba(235,185,65,.45)}
.tk-code-v{flex:1;display:flex;align-items:center;min-width:0;padding:10px 12px;font-size:1.1rem;font-weight:700;color:var(--gold-hi);letter-spacing:.04em;user-select:all;white-space:nowrap;overflow:hidden;text-overflow:clip}
.tk-copy{display:inline-flex;align-items:center;justify-content:center;gap:.35em;min-width:44px;min-height:44px;padding:0 12px;flex:none;border:0;border-left:1px dashed rgba(235,185,65,.45);background:#13250d;color:var(--cream);font:700 .95rem var(--fb);cursor:pointer}
.tk-copy:hover{background:#1d3a12;color:#fff}
.tk-copy.done{color:var(--lime)}
.td-act .tk-copy,.tk-copy-sm{border:1px solid var(--line);border-radius:8px;min-height:40px}
.tk-copy-sm{min-height:36px;padding:0 10px;margin-left:.4em;vertical-align:middle}
.tk-claim{width:100%;white-space:nowrap;font-size:1.22rem;padding-left:.8em;padding-right:.8em}
.tk-note{display:flex;gap:.6em;align-items:flex-start;margin:0 0 .6em;padding:12px 14px;border:1px dashed rgba(175,124,64,.7);border-radius:10px;background:rgba(8,12,3,.55);color:var(--soft);font-size:.98rem}
.tk-note .ic{color:var(--gold);margin-top:.2em}
.tk-terms{display:grid;grid-template-columns:1fr;gap:6px;margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--line2);font-size:.92rem}
.tk-terms div{display:flex;gap:.6em;justify-content:space-between}
.tk-terms dt{color:var(--muted);font-weight:600;flex:none}
.tk-terms dd{margin:0;text-align:right;color:var(--ink)}
.tk-how{margin:8px 0 0;font-size:.84rem;line-height:1.35;color:var(--soft)}
.tk-limit{display:flex;gap:.6em;align-items:flex-start;margin:10px 0 0;padding:10px 12px;border:1px solid rgba(231,138,138,.55);border-radius:10px;background:rgba(42,16,16,.55);color:var(--ink);font-size:.92rem;font-weight:600}
.tk-limit .ic{color:#f2b3b3;margin-top:.2em;flex:none}
.tk-limit a{color:var(--gold-hi);font-weight:600}
.tk-src{margin:10px 0 0;font-size:.85rem;color:var(--soft)}
.tk-src a{color:var(--soft)}
.tk-art{display:none}
.is-expired .tk-num{background:linear-gradient(180deg,#e9e3c7,#a9a389);-webkit-background-clip:text;background-clip:text}
.tk-compact .tk-num{font-size:2.8rem}
.tk-compact .tk-name{font-size:1.3rem}
.tk-compact .tk-terms{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:10px;padding-top:10px;font-size:.84rem}
.tk-compact .tk-terms div{display:inline-flex;flex-direction:row;gap:.35em}
.tk-compact .tk-terms dd{text-align:left}
@container (min-width:460px){
  .ticket{grid-template-columns:168px minmax(0,1fr)}
  .ticket.has-art{grid-template-columns:168px minmax(0,1fr)}
  .tk-stub{grid-template-columns:1fr;grid-template-areas:"badge" "big" "stamp";align-content:space-between;justify-items:start;padding:20px 16px;border-bottom:0;border-right:3px dotted var(--bronze)}
  .tk-stub::before,.tk-stub::after{bottom:auto;left:auto;right:calc(var(--n) * -1 - 1.5px)}
  .tk-stub::before{top:calc(var(--n) * -1)}
  .tk-stub::after{bottom:calc(var(--n) * -1)}
  .tk-big{flex-direction:column;gap:.15em}
  .tk-num{font-size:4rem}
  .tk-stamp{justify-self:start;margin-top:8px;text-align:center;line-height:1.05;letter-spacing:.08em}
  .tk-stamp time{display:block;font-size:1.12em}
  .tk-body{padding:18px 22px 18px 24px}
  .tk-terms{grid-template-columns:1fr 1fr;gap:6px 18px}
  .tk-terms div{flex-direction:column;justify-content:flex-start;gap:0}
  .tk-terms dd{text-align:left}
  .tk-compact{grid-template-columns:136px minmax(0,1fr)}
  .tk-compact .tk-num{font-size:3rem}
  .tk-compact .tk-small{font-size:1.18rem;letter-spacing:.04em}
}
@container (min-width:600px){.tk-code-k{display:flex}}
@container (min-width:760px){
  .ticket.has-art{grid-template-columns:168px minmax(0,1fr) 240px}
  .has-art .tk-art{display:flex;align-items:center;justify-content:center;padding:18px 18px 18px 0}
  .tk-art img{width:227px;border-radius:8px;border:2px solid rgba(245,237,171,.8);transform:rotate(2deg);box-shadow:0 10px 20px rgba(0,0,0,.5)}
}

/* ticket grid + filters */
.vaultgrid{margin:1.2em 0 1.6em}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.flt{display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:#0f1a08;color:var(--cream);font:600 .95rem var(--fb);cursor:pointer}
.flt span{display:inline-grid;place-items:center;min-width:1.6em;height:1.6em;border-radius:999px;background:rgba(235,185,65,.15);color:var(--gold-hi);font-size:.82rem}
.flt[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#1a1405}
.flt[aria-pressed="true"] span{background:rgba(0,0,0,.18);color:#1a1405}
.tickets{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}
.tk-wrap[hidden],.filters[hidden],.swipe[hidden]{display:none!important}
@media (min-width:760px){.tickets>.tk-wrap{display:flex}.tickets>.tk-wrap>.ticket{flex:1;align-content:start}}
.swipe{display:none}
@media (max-width:759px){
  .vaultgrid .tickets{display:flex;align-items:stretch;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:4px 16px 16px;scroll-padding:0 16px;scrollbar-width:thin;scrollbar-color:var(--bronze) transparent}
  .vaultgrid .tk-wrap{flex:0 0 86%;scroll-snap-align:start}
  .vaultgrid .tk-wrap{display:flex}
  .vaultgrid .tk-wrap>.ticket{flex:1;grid-template-rows:auto 1fr}
  .vaultgrid .tk-body{display:flex;flex-direction:column}
  .vaultgrid .tk-offer{margin-bottom:1.1em}
  .vaultgrid .tk-body>.tk-terms{margin-top:auto}
  .filters{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px 14px;padding:2px 16px 6px;scrollbar-width:none}
  .filters::-webkit-scrollbar{display:none}
  .flt{flex:none}
  .swipe{display:flex;align-items:center;gap:.4em;margin:-4px 0 6px;color:var(--muted);font-size:.9rem}
}

/* ---------- layout ---------- */
.body-grid{display:grid;gap:28px;padding-top:26px;padding-bottom:40px}
@media (min-width:1100px){.body-grid.has-rail{grid-template-columns:minmax(0,1fr) 300px;gap:44px}}
.prose{min-width:0;max-width:820px}
/* the code hub has no rail: its tables and ticket grid use the full width, reading text stays at a line length */
@media (min-width:1100px){
  .t-code-hub .prose{max-width:none}
  .t-code-hub .sec>p,.t-code-hub .sec>h2,.t-code-hub .sec>.ticks,.t-code-hub .callout,.t-code-hub .faq,.t-code-hub .sources,.t-code-hub .tbl-note{max-width:820px}
}
.prose>*:first-child{margin-top:0}
.sec{margin:0 0 2.4em}
.sec>h2::before{content:"";display:block;width:64px;height:6px;margin-bottom:.45em;background:radial-gradient(circle,var(--bronze) 2px,transparent 2.5px) 0 50%/10px 6px repeat-x}
.prose ul:not([class]),.prose ol:not([class]){padding-left:1.25em;margin:0 0 1.1em}
.prose li{margin:.25em 0}
.prose strong{color:#fff}
.ticks{list-style:none;margin:0 0 1.2em;padding:0;display:grid;gap:.55em}
.ticks li{display:flex;gap:.6em;align-items:flex-start}
.ticks .ic{color:var(--gold);margin-top:.3em}
.steps{list-style:none;margin:.4em 0 1.4em;padding:0;display:grid;gap:12px;counter-reset:s}
.steps>li{position:relative;display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:start;padding:14px 16px 12px 12px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(100deg,rgba(19,37,13,.9),rgba(13,21,7,.75))}
.step-n{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;font:400 1.9rem/1 var(--fh);color:#1a1405;background:radial-gradient(circle at 35% 30%,#fff7c2,#ebb941 55%,#af7c40);box-shadow:0 0 0 3px #0b1206,0 0 0 4px rgba(235,185,65,.6)}
.steps h3{margin:.25em 0 .2em;font-size:1.35rem}
.steps p{margin:0 0 .4em;color:var(--soft)}
.backhub a{display:inline-flex;align-items:center;gap:.4em;font-weight:600}

/* tables */
.tbl-wrap{margin:.6em 0 1.4em;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:rgba(13,21,7,.75)}
.tbl{width:100%;border-collapse:collapse;font-size:.98rem}
.tbl caption{caption-side:top;text-align:left;padding:12px 14px;font-weight:600;color:var(--cream);border-bottom:1px solid var(--line);background:rgba(19,37,13,.8)}
.tbl th,.tbl td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line2)}
.tbl thead th{font:400 1.12rem/1.1 var(--fh);letter-spacing:.07em;color:var(--gold);text-transform:uppercase;background:rgba(8,12,3,.6)}
.tbl tbody th{color:#fff;font-weight:600}
.tbl tbody tr:last-child>*{border-bottom:0}
.tbl-note{font-size:.9rem;color:var(--soft);margin-top:-.6em}
.th-sub{display:block;font:600 .75rem var(--fb);letter-spacing:.08em;color:var(--muted)}
.tag{display:inline-block;padding:.1em .5em;border-radius:4px;border:1px solid rgba(175,124,64,.7);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cream)}
.tag-claim{border-color:rgba(205,192,124,.6);color:var(--muted)}
.tag-new{border-color:rgba(195,232,144,.55);background:#1d3a12;color:var(--lime);margin-right:.3em}
.compare{min-width:520px}
.tbl-wrap:has(.compare){overflow-x:auto}
@media (max-width:719px){
  .stack .tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .stack .tbl tr{display:block;padding:10px 0;border-bottom:1px solid var(--line)}
  .stack .tbl tbody tr:last-child{border-bottom:0}
  .stack .tbl th,.stack .tbl td{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:10px;padding:5px 14px;border:0}
  .stack .tbl [data-label]::before{content:attr(data-label);font-weight:700;color:var(--muted);font-size:.85rem;letter-spacing:.04em}
  .stack .tbl tbody th[data-label]{font-size:1.02rem}
  .stack .td-act{display:block}
  .stack .td-act .tk-copy{width:100%}
}
.tbl-wager th{width:62%}

/* spec sheet */
.spec{display:grid;grid-template-columns:1fr;margin:.6em 0 1.4em;border:2px solid var(--bronze);border-radius:12px;overflow:hidden;background:linear-gradient(160deg,#16290f,#0d1708)}
.spec div{display:grid;grid-template-columns:8.5em 1fr;gap:12px;padding:10px 16px;border-bottom:1px dotted rgba(175,124,64,.6)}
.spec div:last-child{border-bottom:0}
.spec dt{font:400 1.1rem/1.3 var(--fh);letter-spacing:.07em;color:var(--gold);text-transform:uppercase}
.spec dd{margin:0}
@media (min-width:720px){.spec{grid-template-columns:1fr 1fr}.spec div:nth-last-child(2):nth-child(odd){border-bottom:0}}

/* callouts and facts */
.callout{margin:.6em 0 1.4em;padding:14px 16px 4px;border-radius:12px;border:1px solid var(--line);border-left:5px solid var(--gold);background:rgba(19,37,13,.75)}
.callout-h{margin:0 0 .3em;font-size:1.3rem;color:var(--gold)}
.callout-conflict{border-left-color:#e69d13;background:rgba(42,31,14,.75)}
.callout-conflict .callout-h{color:#f0c97f}
.callout-warn{border-left-color:var(--red);background:rgba(42,16,16,.6)}
.callout-warn .callout-h{color:#f2b3b3}
.callout-claim{border-left-color:var(--muted);border-style:dashed;border-left-style:solid}
.callout-claim .callout-h{color:var(--muted)}
.callout-tip{border-left-color:var(--lime)}
.callout-tip .callout-h{color:var(--lime)}
.callout-src{font-size:.86rem;color:var(--soft)}
.callout-src a{color:var(--soft)}
.fact{background:rgba(235,185,65,.06)}
.chip{display:inline-block;margin-left:.2em;padding:0 .45em;border-radius:999px;border:1px solid var(--line);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--muted);vertical-align:.12em;white-space:nowrap}
.chip-verified{color:var(--lime);border-color:rgba(195,232,144,.4)}
.chip-conflict{color:#f0c97f;border-color:rgba(230,157,19,.5)}
.chip-unverified{color:#f2b3b3;border-color:rgba(231,138,138,.5)}
.fig{margin:1em 0 1.4em}
.fig img{border-radius:10px;border:2px solid rgba(245,237,171,.7);box-shadow:0 12px 24px rgba(0,0,0,.5)}
.sec{display:flow-root}
@media (min-width:720px){.fig{float:right;width:230px;margin:.3em 0 1em 28px;transform:rotate(2deg)}}

/* CTA blocks */
.cta-band{margin:1.4em 0 2em;padding:18px 16px;border-radius:16px;border:1px solid var(--line);background:radial-gradient(500px 220px at 100% 0%,rgba(175,124,64,.2),transparent 70%),#0b1306}
.cta-h{margin:0 0 .6em;font-size:1.7rem;color:var(--gold-hi)}
.endcta{display:grid;gap:18px;margin:2.6em 0 2.2em;padding:22px 16px;border-radius:18px;border:2px solid var(--bronze);background:radial-gradient(600px 300px at 0% 0%,rgba(235,185,65,.14),transparent 70%),linear-gradient(160deg,#122310,#080c03)}
.endcta h2{margin-top:.2em}
.mini-steps{margin:0 0 .8em;padding-left:1.3em;color:var(--soft)}
.mini-steps li{margin:.3em 0}
.mini-steps b{color:#fff}
@media (min-width:900px){.endcta{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;padding:28px}}

/* rail */
.rail{min-width:0}
.rail-in{padding:16px;border-radius:16px;border:2px solid var(--bronze);background:linear-gradient(170deg,#132510,#0a1106)}
.rail{display:none}
@media (min-width:1100px){.rail{display:block}.rail-in{position:sticky;top:calc(var(--hdr) + 18px)}}
.rail-h{display:flex;align-items:center;gap:.5em;margin:0 0 .6em;font-size:1.6rem;color:var(--gold)}
.rail-n{margin-left:auto;display:inline-grid;place-items:center;min-width:1.7em;height:1.7em;border-radius:50%;background:var(--gold);color:#1a1405;font-size:1.1rem}
.mini{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.mini-item{display:grid;grid-template-columns:62px 1fr 44px;align-items:center;gap:8px;padding:6px 6px 6px 8px;border:1px dashed rgba(175,124,64,.7);border-radius:10px;background:rgba(8,12,3,.55)}
.mini-big{font:400 1.45rem/1 var(--fh);color:var(--gold-hi);text-align:center}
.mini-txt{display:grid;min-width:0}
.mini-k{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.mini-txt code{font-weight:700;color:#fff;overflow-wrap:anywhere;font-size:.88rem}
.mini-t{font-size:.74rem;color:var(--soft);line-height:1.25}
.mini-src{font-size:.7rem;color:var(--muted);line-height:1.25;font-style:italic}
.mini-copy{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;border:1px solid var(--line);background:#13250d;color:var(--cream);cursor:pointer}
.mini-copy:hover{background:#1d3a12}
.mini-copy.done{color:var(--lime)}
.rail-note{font-size:.86rem;color:var(--soft);margin:0 0 12px}
.rail-btn{width:100%}
.rail-all{display:flex;align-items:center;justify-content:center;gap:.4em;margin-top:10px;font-weight:600;font-size:.95rem}

/* cards (hub, related) */
.hub,.related{margin:2.4em 0}
.cards{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.card{position:relative;display:flex;flex-direction:column;gap:.35em;height:100%;padding:16px 44px 16px 16px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(160deg,#132510,#0b1306);text-decoration:none;color:var(--soft)}
.card:hover{border-color:var(--gold)}
.card-h{font-size:1.45rem;color:var(--gold-hi)}
.card-t{font-size:.95rem;line-height:1.45}
.card-go{position:absolute;right:14px;top:16px;color:var(--gold)}

/* FAQ, sources, checked line */
.faq{margin:2.4em 0}
.faq-item{padding:4px 0 6px;border-top:1px solid var(--line)}
.faq-item h3{margin:.8em 0 .3em;font-size:1.4rem;color:#fff}
.faq-a{color:var(--soft)}
.sources{margin:2.2em 0 1em;padding:16px 18px 6px;border:1px dashed var(--line);border-radius:12px;background:rgba(8,12,3,.5)}
.sources h2{font-size:1.6rem;color:var(--cream)}
.sources ol{margin:0 0 1em;padding-left:1.3em;font-size:.95rem}
.sources li{margin:.35em 0}
.checkline{margin:1em 0 1.4em}

/* ---------- responsible gambling ---------- */
.age{display:inline-grid;place-items:center;width:2.3em;height:2.3em;border-radius:50%;border:2px solid currentColor;font:400 1.05rem/1 var(--fh);letter-spacing:.02em;flex:none}
.rgbox{margin:1em 0 1.6em;padding:16px 18px 8px;border-radius:14px;border:1px solid rgba(195,232,144,.35);background:rgba(19,37,13,.75)}
.rgbox-h{display:flex;align-items:center;gap:.6em;margin:0 0 .5em;font-size:1.55rem;color:var(--lime)}
.rgbox-lines,.ftr-rg-lines{display:flex;flex-wrap:wrap;gap:10px}
.rg-call{display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:0 14px;border-radius:10px;border:1px solid rgba(195,232,144,.45);background:#0f1f0a;color:#fff;font-weight:700;text-decoration:none}
.rg-call .ic{color:var(--lime)}
.rg-call:hover{color:#fff;border-color:var(--lime)}
.rg-link{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;color:var(--soft)}
.rgband{position:relative;padding:56px 0 64px;background:linear-gradient(180deg,rgba(18,40,12,.95),rgba(8,14,4,.98));border-top:2px solid var(--lime);border-bottom:1px solid var(--line2)}
.rgband-grid{display:grid;gap:26px;align-items:center}
.rgband h2{font-size:clamp(2.3rem,7vw,3.6rem);color:var(--lime);margin:.15em 0 .4em}
.rgband p{max-width:40em;color:#e9efe0;font-size:1.08rem}
.rgband-age{display:flex;align-items:center;gap:.7em;margin:0;font:400 1.4rem/1 var(--fh);letter-spacing:.1em;text-transform:uppercase;color:#fff}
.rgband-age .age{width:2.6em;height:2.6em;font-size:1.3rem;color:var(--lime)}
.rgband-lines{display:grid;gap:12px;margin:1.2em 0}
.rg-big{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:14px;border:2px solid rgba(195,232,144,.5);background:#0b1806;color:#fff;text-decoration:none;font:400 2.1rem/1 var(--fh);letter-spacing:.05em}
.rg-big small{display:block;margin-bottom:4px;font:700 .8rem/1 var(--fb);letter-spacing:.1em;text-transform:uppercase;color:var(--lime)}
.rg-big .ic{width:34px;height:34px;color:var(--lime)}
.rg-big:hover{border-color:var(--lime);color:#fff}
.rgband-more{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.rgband-side{display:grid;gap:22px}
.rgband-fig{display:flex;align-items:center;gap:16px}
.rgband-fig figcaption{margin:0}
.rgband-cards{list-style:none;margin:34px 0 0;padding:0;display:grid;gap:14px}
.rgband-cards li{padding:18px 18px 6px;border-radius:14px;border:1px solid rgba(195,232,144,.3);background:rgba(13,26,8,.85)}
.rgband-cards p{color:#dfe8d2;font-size:1rem}
.rgband-cards a{color:#fff;font-weight:700}
@media (min-width:900px){.rgband-cards{grid-template-columns:repeat(2,1fr);gap:18px}.rgband-wide{grid-column:1/-1}}
.rgband-wide{border-style:dashed!important;background:rgba(8,14,4,.7)!important}
.rgband .rgband-wide p{max-width:none}
.rgband-fig{margin:0}
.rgband-habits{padding:18px 18px 4px;border-radius:14px;border:1px dashed rgba(195,232,144,.45);background:rgba(8,14,4,.6)}
.rgband-h{margin:0 0 .6em;font:400 1.5rem/1 var(--fh);letter-spacing:.05em;text-transform:uppercase;color:#fff}
.rgband-habits .ic{color:var(--lime)}
.rgband-fig img{width:227px;max-width:100%;border-radius:14px;border:2px solid rgba(195,232,144,.4)}
.rgband-fig figcaption{margin-top:8px;font-size:.92rem;color:var(--soft)}
@media (min-width:900px){.rgband{padding:112px 0 118px}.rgband-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:48px;align-items:start}.rgband-lines{grid-template-columns:1fr 1fr}.rgband-fig img{max-width:100%}}

/* ---------- footer ---------- */
.ftr{margin-top:0;background:#080c03;box-shadow:0 -10px 10px #080c03;color:#a9bd92;font-size:.95rem}
.ftr a{color:#cfe3b4}
.ftr-rg{background:#0d1a08;border-top:2px solid var(--gold);border-bottom:1px solid var(--line2)}
.ftr-rg-in{padding-top:18px;padding-bottom:16px}
.ftr-rg-h{display:flex;align-items:center;gap:.7em;margin:0 0 .4em;font:400 1.6rem/1 var(--fh);letter-spacing:.06em;text-transform:uppercase;color:#fff}
.ftr-rg-h .age{color:var(--lime)}
.ftr-rg-t{color:#d6e2c6;margin-bottom:.7em}
.ftr-main{display:grid;gap:26px;padding-top:30px;padding-bottom:22px}
.ftr-brand img{width:150px;margin-bottom:10px}
.ftr-brand p{color:#b6c9a0}
.ftr-h{margin:0 0 .5em;font-size:1.3rem;color:var(--gold)}
.ftr-col ul{list-style:none;margin:0;padding:0}
.ftr-col li a{display:inline-flex;align-items:center;min-height:36px}
.ftr-fine{padding-top:16px;padding-bottom:28px;border-top:1px solid rgba(127,154,98,.25);font-size:.88rem;color:#9fb487}
.ftr-fine p{margin:.5em 0}
.ftr-main{grid-template-columns:1fr 1fr;gap:26px 18px}
.ftr-brand{grid-column:1/-1}
@media (min-width:900px){.ftr-main{grid-template-columns:1.4fr 1fr 1fr 1fr}.ftr-brand{grid-column:auto}}

/* ---------- sticky bar + toast ---------- */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:linear-gradient(to bottom,#13250d,#080c03);border-top:2px solid var(--gold);box-shadow:0 -8px 22px rgba(0,0,0,.55)}
.sticky-in{display:flex;align-items:center;gap:10px;max-width:640px;margin:0 auto}
.sticky-code{display:grid;margin:0;min-width:0;flex:1;line-height:1.15}
.sticky-k{font:400 1rem/1 var(--fh);letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.sticky-code code{font-weight:700;color:var(--gold-hi);font-size:1rem;overflow-wrap:anywhere}
.sticky-t{font-size:.72rem;color:var(--soft);line-height:1.2;margin-top:1px}
.nw{white-space:nowrap}
.sticky-btn{flex:none;min-height:48px;padding:.55em .9em .45em;font-size:1.2rem}
body.has-sticky{padding-bottom:88px}
@media (min-width:900px){.sticky{display:none}body.has-sticky{padding-bottom:0}}
.toast{position:fixed;left:50%;bottom:92px;z-index:60;width:min(92vw,460px);transform:translate(-50%,16px);opacity:0;transition:opacity .2s,transform .2s;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:14px 16px;border-radius:12px;border:2px solid var(--gold);background:#0b1306;box-shadow:0 18px 40px rgba(0,0,0,.6)}
.toast[hidden]{display:none}
.toast.on{opacity:1;transform:translate(-50%,0)}
.toast-msg{margin:0;flex:1 1 220px;color:#fff;font-weight:600}
.toast-link{display:inline-flex;align-items:center;gap:.35em;color:var(--gold-hi);font-weight:700}
@media (min-width:900px){.toast{bottom:28px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.vault-tickets .tk-hero{transform:none}}
@media print{.hdr,.livestrip,.sticky,.toast,.rail,.nav-btn{display:none!important}body{background:#fff;color:#000}}
