/* Theme Shelf (springbokcasinos.org). Collection shelves: stacked horizontal rails in brand green, museum-plaque
   labels, brass offer plaques. Base #0b1306, surface #151515, accent #ffc72e, accent 2 #c3e890. Mohave + Assistant. */
@font-face{font-family:'Mohave';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/mohave-600-latin.woff2) format('woff2')}
@font-face{font-family:'Assistant';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/assistant-400-latin.woff2) format('woff2')}

:root{
  --base:#0b1306;--base2:#060f03;--surface:#151515;--surface2:#101010;--ink:#13250d;--cta-ink:#235200;
  --accent:#ffc72e;--accent2:#c3e890;--text:#fff;--muted:#d1d1d1;--cream:#f5edab;--paper:#ebe3bf;
  --brass-1:#f8efc7;--brass-2:#ead79a;--brass-3:#d6bd72;--brass-edge:#8a6a2a;--bronze:#af7c40;
  --line:rgba(225,208,139,.22);--line-2:rgba(255,255,255,.08);
  --gold-bar:linear-gradient(to bottom,#ffffb0 0%,#fff 11%,#fffec7 53%,#ce9e63 54%,#fedc8b 78%,#fffac4 100%);
  --brass:linear-gradient(160deg,var(--brass-1) 0%,var(--brass-2) 45%,var(--brass-3) 100%);
  --hd:'Mohave','Arial Narrow',Impact,sans-serif;--bd:'Assistant',Arial,Helvetica,sans-serif;
  --wrap:1200px;--gut:16px;--r:12px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:12px;background:#0b1306}
/* Springbok tile at about 6% (the 10% white tile at .6 opacity) on an absolute layer behind the page. A plain
   background-image on body stalls tall headless captures, so the pattern lives on body::before. */
body{margin:0;color:var(--text);font:400 17px/1.62 var(--bd);overflow-x:hidden;position:relative;min-height:100vh;background:linear-gradient(180deg,#0b1306 0%,#0b1306 40%,#10200a 100%)}
body::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url(/assets/sb/bg-springbok-pattern.png);opacity:.6}
.hdr,.m,.ftr{position:relative;z-index:1}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent2);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--accent)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}
h1,h2,h3,.hd{font-family:var(--hd);font-weight:600;text-transform:uppercase;letter-spacing:.01em;line-height:1.02;margin:0}
p{margin:0 0 1em}
b,strong{font-weight:700}
code{font-family:var(--hd);letter-spacing:.06em}
.ic{width:20px;height:20px;flex:none}
.ic-s{width:16px;height:16px}
.ic-xs{width:12px;height:12px;vertical-align:-1px;margin-left:3px}
.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--accent);color:#13250d;padding:10px 16px;border-radius:8px;font-weight:700;text-decoration:none}
.skip:focus{top:12px}
[hidden]{display:none!important}

/* ---------- Buttons ---------- */
.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:6px 22px;border-radius:10px;background:var(--gold-bar);color:var(--cta-ink);font:600 19px/1 var(--hd);text-transform:uppercase;letter-spacing:.02em;text-decoration:none;text-shadow:1px 1px 2px rgba(255,249,161,.9);box-shadow:inset 0 0 0 2px rgba(0,0,0,.45),0 0 8px 1px rgba(255,255,190,.4);transition:box-shadow .2s,transform .2s;text-align:center}
.btn-gold:hover{color:var(--cta-ink);background:linear-gradient(to bottom,#ffffb0 0%,#fff 11%,#fffec7 53%,#ff742a 54%,#ffb877 78%,#fffac4 100%);box-shadow:inset 0 0 0 2px rgba(0,0,0,.45),0 0 12px 2px rgba(255,255,190,.7)}
.btn-gold:active{transform:translateY(1px)}
.btn-block{display:flex;width:100%}
.btn-line{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 16px;border:1.5px solid var(--accent);border-radius:9px;color:var(--accent);font:600 17px/1 var(--hd);text-transform:uppercase;letter-spacing:.03em;text-decoration:none;background:transparent}
.btn-line:hover{background:rgba(255,199,46,.1);color:var(--accent)}
.btn-quiet{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:6px 14px;border-radius:9px;background:#13250d;border:1px solid var(--cream);color:var(--cream);font:600 16px/1 var(--hd);text-transform:uppercase;letter-spacing:.03em;text-decoration:none}
.btn-quiet:hover{color:#fff;border-color:#fff}

/* ---------- Header ---------- */
.hdr{background:linear-gradient(180deg,#060f03 0%,#0b1306 100%);border-bottom:1px solid var(--line)}
.hdr-in{max-width:var(--wrap);margin:0 auto;padding:10px var(--gut);display:flex;align-items:center;justify-content:space-between;gap:10px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);min-width:0}
.brand-logo{width:80px;height:auto}
.brand-txt{display:flex;flex-direction:column;gap:3px;border-left:1px solid var(--line);padding-left:8px}
.brand-name{font:600 16px/1 var(--hd);text-transform:uppercase;color:var(--accent);letter-spacing:.04em;white-space:nowrap}
.brand-tag{font:600 9.5px/1.3 var(--bd);text-transform:uppercase;letter-spacing:.06em;color:var(--accent2);border:1px solid rgba(195,232,144,.55);border-radius:4px;padding:1px 5px;white-space:nowrap;align-self:flex-start}
.hdr-cta{font-size:14.5px;padding:6px 10px;min-height:44px;white-space:nowrap;flex:none}
.hdr-cta .ic{display:none}

/* Theme carousel nav */
.tnav{position:relative;background:#070d04;border-top:1px solid var(--line-2)}
.tnav-track{list-style:none;margin:0 auto;padding:8px 10px 9px;display:flex;gap:2px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;max-width:var(--wrap);-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
.tnav-track::-webkit-scrollbar{display:none}
.tnav-track li{flex:none;scroll-snap-align:start}
.tn{display:flex;flex-direction:column;align-items:center;gap:5px;width:74px;padding:3px 2px;text-decoration:none;color:var(--muted);border-radius:10px}
.tn-disc{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--accent);background:radial-gradient(circle at 50% 35%,#24361a,#0d1708);box-shadow:inset 0 0 0 1.5px rgba(255,199,46,.55),0 2px 8px rgba(0,0,0,.5);transition:transform .2s,box-shadow .2s}
.tn-disc .ic{width:22px;height:22px}
.tn-l{font:600 12.5px/1.05 var(--hd);text-transform:uppercase;letter-spacing:.03em;text-align:center}
.tn:hover .tn-disc{transform:translateY(-2px);box-shadow:inset 0 0 0 2px var(--accent),0 4px 12px rgba(0,0,0,.6)}
.tn:hover{color:#fff}
.tn[aria-current="page"] .tn-disc{background:var(--gold-bar);color:var(--cta-ink);box-shadow:inset 0 0 0 2px rgba(0,0,0,.4),0 0 10px rgba(255,231,150,.45)}
.tn[aria-current="page"]{color:var(--accent)}
.tnav-btn{position:absolute;top:50%;transform:translateY(-60%);width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#0b1306;color:var(--accent);display:grid;place-items:center;cursor:pointer;z-index:2}
.tnav-btn.prev{left:6px}.tnav-btn.next{right:6px}

/* ---------- Containers ---------- */
.m{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut) 24px}
.kicker{display:inline-flex;align-items:center;gap:7px;margin:0 0 12px;font:600 14px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.dek{font-size:18px;line-height:1.55;color:#ececec}
.dek p{margin:0 0 .7em}
.dek strong,.dek b{color:var(--accent)}
.checked{display:flex;gap:7px;align-items:flex-start;font-size:14px;line-height:1.4;color:var(--accent2);margin:12px 0 0}
.checked .ic{margin-top:2px}
.crumbs ol{list-style:none;margin:0;padding:14px 0 6px;display:flex;flex-wrap:wrap;gap:4px;font-size:14px;color:var(--muted)}
.crumbs li:not(:last-child)::after{content:"›";margin-left:6px;color:var(--accent)}
.crumbs a{color:var(--muted)}
.crumbs [aria-current]{color:#fff}

/* ---------- Home hero ---------- */
.hero{position:relative;margin:0 calc(-1 * var(--gut));padding:16px var(--gut) 8px;background:radial-gradient(ellipse 34% 60% at 66% 30%,var(--t1,#24361a) 0%,transparent 100%)}
.hero-in{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"t" "o" "v";gap:18px}
.hero-in>*,.hh-in>*,.nf>*,.ctab>*,.endcta>*{min-width:0}
.hero-t{grid-area:t}.hero-o{grid-area:o}.hero-v{grid-area:v}
.hero h1{font-size:35px;margin:0 0 12px;text-wrap:balance}
.hero .op--hero .op-note,.hh .op--hero .op-note{display:none}
.hero .dek p:first-child{margin-bottom:.5em}

/* Vitrine (display case) */
.vitrine{position:relative;padding:20px 12px 0;border-radius:16px;border:1px solid rgba(225,208,139,.28);background:radial-gradient(ellipse 60% 75% at 50% -5%,rgba(255,236,170,.2),transparent 70%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0) 60%),#090f06;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 60px -24px rgba(0,0,0,.85);overflow:hidden}
.vitrine::before{content:"";position:absolute;inset:0;background:url(/assets/sb/bg-springbok-pattern.png);opacity:.35;pointer-events:none}
.vt-glass{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:10px;min-height:180px}
.vt-p{margin:0;flex:none;position:relative;text-align:center}
.vt-p .vt-img{border-radius:9px;box-shadow:0 14px 26px -10px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.12)}
.vt-main{width:122px}
.vt-main .vt-img{box-shadow:0 0 0 2px var(--accent),0 18px 32px -10px rgba(0,0,0,.95),0 0 28px rgba(255,199,46,.25)}
.vt-p:not(.vt-main):not(.vt-promo):not(.vt-type){width:96px}
.vt-wide{width:170px!important}
.vt-promo{width:168px}
.vt-p figcaption{font:600 11.5px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.05em;color:var(--accent2);margin-top:6px}
.vitrine .vt-type{display:none}
.vt-glass>figure.vt-p:nth-of-type(n+3){display:none}
.vt-emblem{width:120px}
.vt-emblem .vt-img{border-radius:50%;box-shadow:0 0 0 3px rgba(255,199,46,.5),0 18px 30px -10px rgba(0,0,0,.95),0 0 40px rgba(255,199,46,.25)!important}
.vt-ledge{position:relative;height:14px;margin:0 -12px;background:linear-gradient(180deg,#4a3916 0%,#2a1f0b 55%,#140f06 100%);box-shadow:inset 0 1px 0 rgba(255,231,160,.45),0 8px 16px rgba(0,0,0,.7)}
.vt-plaque{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 10px;width:max-content;max-width:100%;margin:12px auto 14px;padding:7px 18px;border-radius:5px;background:var(--brass);border:1px solid var(--brass-edge);color:var(--ink);font:600 14px/1.15 var(--hd);text-transform:uppercase;letter-spacing:.04em;text-align:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 6px 14px rgba(0,0,0,.6)}
.vt-plaque .vt-c{font:600 12.5px/1.2 var(--bd);text-transform:none;letter-spacing:0;color:#3d3216;width:100%}
.pl-no{display:inline-block;font:600 12.5px/1 var(--hd);letter-spacing:.06em;text-transform:uppercase;padding:4px 7px 3px;border-radius:4px;background:#13250d;color:var(--accent)}
.vt-plaque .pl-no{background:#13250d;color:var(--brass-1)}

/* Typeset tiles and tone palettes (no official art for the title) */
.tone-ember{--t1:#5a2209;--t2:#1a0a04;--ti:#f0a238}
.tone-berry{--t1:#5c1219;--t2:#1c0608;--ti:#f4e569}
.tone-lacquer{--t1:#6a160d;--t2:#200604;--ti:#ffc72e}
.tone-savanna{--t1:#51511e;--t2:#17170a;--ti:#e1d08b}
.tone-sand{--t1:#6b5020;--t2:#201708;--ti:#f0c97f}
.tone-marble{--t1:#4a4a43;--t2:#121211;--ti:#f5edab}
.tone-reef{--t1:#035955;--t2:#021a19;--ti:#c3e890}
.tone-pitch{--t1:#2c6a1a;--t2:#0d2207;--ti:#f5edab}
.tone-jade{--t1:#285a18;--t2:#0a1806;--ti:#f0a238}
.t-art.t-type,.vt-type{position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:radial-gradient(circle at 50% 36%,rgba(255,255,255,.17) 0,rgba(255,255,255,0) 44%),linear-gradient(165deg,var(--t1) 0%,var(--t2) 100%)}
.t-type::before,.vt-type::before{content:"";position:absolute;inset:0;background:url(/assets/sb/bg-springbok-pattern.png);opacity:.5}
.t-type::after,.vt-type::after{content:"";position:absolute;inset:6px;border:1px solid rgba(225,208,139,.38);border-radius:6px;pointer-events:none}
.t-ic{position:absolute;left:50%;top:21%;transform:translateX(-50%);width:58px;height:58px;color:var(--ti);stroke-width:1.35;filter:drop-shadow(0 0 10px rgba(0,0,0,.6))}
.t-no{position:absolute;left:12px;top:12px;font:600 10.5px/1 var(--hd);letter-spacing:.08em;color:var(--ti);opacity:.9}
.t-title{position:relative;display:block;margin:0 6px 6px;padding:20px 8px 10px;font:600 17px/1.02 var(--hd);text-transform:uppercase;text-align:center;color:#fff;text-shadow:0 1px 2px #000;background:linear-gradient(0deg,rgba(0,0,0,.6),rgba(0,0,0,0));border-radius:0 0 6px 6px}
.t-title[data-t]::after{content:attr(data-t)}
.t-go::after{content:"Play at Springbok"}
.t-title::before{content:"";position:absolute;left:50%;top:9px;width:26px;height:2px;margin-left:-13px;border-radius:1px;background:var(--brass)}

/* ---------- Offer plaque (brass) ---------- */
.op{position:relative;padding:18px 16px 14px;border-radius:12px;background:var(--brass);color:var(--ink);border:1px solid var(--brass-edge);box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -2px 0 rgba(0,0,0,.12),0 18px 40px -18px rgba(0,0,0,.95)}
.op-screw{position:absolute;top:8px;left:8px;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff7d6,#9c7b38 70%);box-shadow:0 1px 0 rgba(255,255,255,.6)}
.op-screw.r{left:auto;right:8px}
.op-main{display:flex;gap:12px;align-items:flex-start}
.op-art{width:70px;border-radius:8px;box-shadow:0 0 0 1px rgba(0,0,0,.35)}
.op-kicker{display:flex;align-items:center;gap:6px;margin:0 0 4px;font:600 13.5px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.06em;color:#5a3d0a}
.op-feature{margin:0 0 2px;font:600 15px/1.15 var(--hd);text-transform:uppercase;letter-spacing:.04em;color:#6b1d0d}
.op-title{margin:0 0 8px;font:600 27px/1 var(--hd);text-transform:uppercase;color:var(--ink)}
.op-note{font-size:15px;line-height:1.45;color:#2d2b16;margin:0 0 12px}
.chip{display:flex;align-items:stretch;margin:4px 0 10px;border-radius:9px;background:#151515;border:1.5px dashed var(--bronze);overflow:hidden}
.chip-l{writing-mode:vertical-rl;transform:rotate(180deg);padding:4px 3px;font:600 10px/1 var(--hd);letter-spacing:.12em;text-transform:uppercase;background:var(--bronze);color:#151515;text-align:center}
.chip-code{flex:1;display:flex;align-items:center;padding:6px 12px;font-size:24px;color:var(--accent);min-width:0;overflow-wrap:anywhere}
.chip-copy{display:flex;align-items:center;gap:6px;min-height:46px;padding:0 14px;border:0;border-left:1.5px dashed var(--bronze);background:#232323;color:var(--cream);font:600 15px/1 var(--hd);text-transform:uppercase;letter-spacing:.05em;cursor:pointer}
.chip-copy:hover{background:#2e2e2e;color:#fff}
.op .btn-gold{box-shadow:inset 0 0 0 2px rgba(0,0,0,.45),0 0 0 2px var(--ink),0 6px 14px -4px rgba(0,0,0,.6);font-size:20px;min-height:52px}
.terms{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:12px 0 8px;padding:10px 0 0;border-top:1px solid rgba(90,61,10,.3)}
.terms dt{font:600 11.5px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.07em;color:#5a3d0a}
.terms dd{margin:2px 0 0;font-size:14px;line-height:1.3;color:var(--ink)}
.op-foot{margin:6px 0 0;font-size:12.5px;line-height:1.4;color:#3d3a22}
.op-foot a{color:var(--ink)}
.op-mini{margin:8px 0 0;font-size:13px;line-height:1.35;color:#2d2b16}
.op--compact{padding:14px 14px 12px}
.op--compact .op-title{font-size:22px}
.op--hero .op-title{font-size:28px}

/* ---------- Shelves (signature) ---------- */
.shelf{margin:30px 0 8px}
.shelf--lead{position:relative;margin-left:calc(-1 * var(--gut));margin-right:calc(-1 * var(--gut));padding:18px var(--gut) 6px;background:radial-gradient(ellipse 80% 90% at 50% 0%,rgba(255,199,46,.09),transparent 70%),linear-gradient(180deg,rgba(255,255,255,.025),transparent);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.shelf-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:12px}
.plaque{position:relative;display:inline-flex;flex-direction:column;gap:5px;padding:9px 16px 10px;border-radius:6px;background:linear-gradient(180deg,#26261f,#151515);border:1px solid rgba(225,208,139,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 8px 18px -10px rgba(0,0,0,.9);max-width:100%}
.plaque::before,.plaque::after{content:"";position:absolute;top:8px;width:6px;height:6px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f6e8b5,#7b6128 75%)}
.plaque::before{left:5px}.plaque::after{right:5px}
.plaque .pl-no{align-self:flex-start;background:var(--brass);color:var(--ink)}
.pl-name{font-size:26px;color:#fff}
.pl-meta{font-size:14px;line-height:1.35;color:var(--muted)}
.shelf-tools{display:flex;align-items:center;gap:8px}
.shelf-more{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:600 15px/1 var(--hd);text-transform:uppercase;letter-spacing:.04em;color:var(--accent);text-decoration:none}
.shelf-more:hover{text-decoration:underline}
.rail-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#151515;color:var(--accent);display:grid;place-items:center;cursor:pointer}
.rail-btn:hover:not(:disabled){border-color:var(--accent)}
.rail-btn:disabled{opacity:.35;cursor:default}
.rail{margin:0 calc(-1 * var(--gut));overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 var(--gut);scrollbar-width:thin;scrollbar-color:rgba(255,199,46,.45) transparent}
.rail:focus-visible{outline-offset:-3px}
.rail::-webkit-scrollbar{height:6px}.rail::-webkit-scrollbar-thumb{background:rgba(255,199,46,.4);border-radius:3px}
.rail-track{list-style:none;margin:0;padding:4px var(--gut) 14px;display:flex;gap:12px;width:max-content}
.tile{flex:none;width:134px;scroll-snap-align:start}
.t-a{display:flex;flex-direction:column;height:100%;border-radius:11px;overflow:hidden;background:var(--surface);border:1px solid var(--line-2);color:#fff;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}
.t-a:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 12px 24px -12px rgba(0,0,0,.9),0 0 0 1px var(--accent);color:#fff}
.t-art{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;background:#0f0f0f}
.t-img{width:100%;height:100%;object-fit:cover}
.t-art--wide .t-img{object-position:28% 40%}
.t-badge{position:absolute;right:6px;bottom:6px;padding:3px 6px;border-radius:4px;background:rgba(10,15,6,.88);border:1px solid rgba(195,232,144,.5);font:600 10.5px/1 var(--hd);text-transform:uppercase;letter-spacing:.06em;color:var(--accent2)}
.t-type .t-badge{bottom:auto;top:10px;right:10px;z-index:1}
.t-badge--soon{color:var(--accent);border-color:rgba(255,199,46,.6)}
.t-cap{display:flex;flex-direction:column;gap:3px;padding:8px 9px 10px;flex:1;background:var(--surface)}
.t-name{font-weight:600;font-size:14.5px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.t-go{margin-top:auto;font:600 12px/1.1 var(--hd);text-transform:uppercase;letter-spacing:.05em;color:var(--accent2)}
.t-soon{font-size:12px;line-height:1.3;color:var(--muted)}
.t-a--static{cursor:default}
.t-a--static:hover{transform:none;border-color:var(--line-2);box-shadow:none}
.tile--end .t-a,.tile--all .t-a{justify-content:center;border:1px solid rgba(255,199,46,.5)}
.te-a{background:radial-gradient(circle at 50% 20%,#2c4519,#13250d 70%);color:#fff}
.ta-a{background:#151515;color:#fff}
.te-in{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;min-height:230px;padding:14px 10px;text-align:center}
.te-ic{width:44px;height:44px;color:var(--accent);stroke-width:1.4}
.te-t{font:600 19px/1.05 var(--hd);text-transform:uppercase;color:#fff}
.te-s{font-size:13px;line-height:1.3;color:var(--accent2)}
.te-arrow{color:var(--accent)}

/* Collection index */
.sx{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sx-a{position:relative;display:flex;flex-direction:column;gap:3px;min-height:158px;height:100%;padding:12px 12px 12px;border-radius:12px;overflow:hidden;text-decoration:none;color:#fff;background:linear-gradient(160deg,var(--t1),var(--t2));border:1px solid var(--line);transition:border-color .2s,transform .2s}
.sx-a::before{content:"";position:absolute;inset:0;background:url(/assets/sb/bg-springbok-pattern.png);opacity:.35;pointer-events:none}
.sx-a:hover{border-color:var(--accent);transform:translateY(-2px);color:#fff}
.sx-img{position:absolute;right:-14px;bottom:-22px;width:74px;transform:rotate(9deg);border-radius:7px;opacity:.55;box-shadow:0 8px 18px rgba(0,0,0,.7)}
.sx-ic{position:relative;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--ti);background:rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);margin-bottom:4px}
.sx-no{position:relative;font:600 11px/1 var(--hd);letter-spacing:.08em;color:var(--ti)}
.sx-name{position:relative;font:600 20px/1 var(--hd);text-transform:uppercase}
.sx-count{position:relative;font-size:14px;color:var(--muted)}
.sx-count b{font:600 24px/1 var(--hd);color:var(--accent);margin-right:3px}
.sx-desc{position:relative;display:none;font-size:13.5px;line-height:1.35;color:#e2e2e2;max-width:78%}

/* ---------- Hub hero ---------- */
.hh{position:relative;margin:4px calc(-1 * var(--gut)) 0;padding:20px var(--gut) 22px;overflow:hidden;background:linear-gradient(160deg,var(--t1) 0%,var(--t2) 55%,#070b04 100%);border-bottom:1px solid var(--line)}
.hh::before{content:"";position:absolute;inset:0;background:url(/assets/sb/bg-springbok-pattern.png);opacity:.3;pointer-events:none}
.hh-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.hh h1{font-size:38px;margin:0 0 12px;text-wrap:balance}
.mcase{position:relative;display:none;margin:18px 0 0;max-width:470px}
.side-offer .side-h{margin:0 0 8px}
.mc-row{display:flex;align-items:flex-end;gap:10px;padding:0 10px}
.mc-p{position:relative;flex:none;width:76px;border-radius:8px;overflow:hidden;box-shadow:0 12px 22px -8px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.12)}
.mc-p.vt-type{display:flex;aspect-ratio:3/4}
.mc-p.vt-type .t-ic{width:30px;height:30px;top:16%}
.mc-p.vt-type .t-title{font-size:11.5px;padding:14px 4px 6px;margin:0 3px 3px}
.mc-p.vt-type .t-title[data-t]::after{content:attr(data-t)}
.t-go::after{content:"Play at Springbok"}
.t-title::before{top:6px}
.mc-main{width:92px;box-shadow:0 0 0 2px var(--accent),0 14px 26px -8px rgba(0,0,0,.95)}
.mc-wide{width:150px}
.mc-cap{position:absolute;left:6px;bottom:6px;padding:2px 6px;border-radius:4px;background:rgba(10,15,6,.88);font:600 10.5px/1.2 var(--hd);text-transform:uppercase;color:var(--accent)}
.mcase .vt-ledge{margin:0;border-radius:3px}
.plaque-k{flex-wrap:wrap;gap:6px 10px;color:var(--cream)}
.plaque-k .pl-no{background:var(--brass);color:var(--ink)}
.plaque-k span:last-child{color:var(--accent2);text-transform:none;letter-spacing:0;font:400 14px/1.3 var(--bd);width:100%}

/* ---------- Sections ---------- */
.sec{margin:38px 0 0}
.sec>h2,.uh h1{position:relative}
.sec>h2{font-size:30px;margin:0 0 14px;padding-top:14px}
.sec>h2::before{content:"";position:absolute;left:0;top:0;width:44px;height:4px;border-radius:2px;background:var(--brass)}
.sec h3{font-size:22px;color:var(--accent);margin:22px 0 8px}
.sec>p,.sec>ul,.sec>ol:not(.steps):not(.tix),.sec-intro,.sec>div>p{max-width:76ch}
.sec ul:not([class]),.sec ol:not([class]){padding-left:1.25em}
.sec li{margin:0 0 .45em}
.sec-k{font:600 14px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.08em;color:var(--accent2);margin:-6px 0 12px}
.sec-intro{color:#e6e6e6}
.sec--bare{margin-top:28px}
.by{font-size:.86em;color:var(--accent2);white-space:nowrap}
.note,.rgline{display:flex;gap:10px;align-items:flex-start;max-width:76ch;padding:12px 14px;border-radius:10px;background:#151515;border-left:3px solid var(--accent2);font-size:16px;line-height:1.5}
.rgline{border-left-color:var(--accent)}
.note .ic,.rgline .ic{margin-top:3px;color:var(--accent2)}
.ticks{list-style:none;padding:0;margin:0 0 1em}
.ticks li{position:relative;padding-left:24px;margin:0 0 .5em}
.ticks li::before{content:"";position:absolute;left:3px;top:.55em;width:10px;height:6px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
.toc{margin:26px 0 0;padding:12px 14px;border-radius:12px;background:#111;border:1px solid var(--line-2)}
.toc-l{margin:0 0 8px;font:600 13px/1 var(--hd);text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.toc ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.toc a{display:inline-flex;align-items:center;min-height:36px;padding:4px 12px;border-radius:999px;background:#1b1b1b;border:1px solid var(--line);color:#fff;text-decoration:none;font-size:14.5px}
.toc a:hover{border-color:var(--accent)}

/* Tables */
.tbl-wrap{overflow-x:auto;margin:6px 0 8px;border-radius:12px;border:1px solid var(--line)}
.tbl{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.4;min-width:520px}
.tbl caption{text-align:left;padding:10px 14px;font:600 15px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.05em;color:var(--accent2);background:#111}
.tbl th,.tbl td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line-2)}
.tbl thead th{background:#1a2a12;color:var(--accent);font:600 14px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.05em}
.tbl tbody th{font-weight:600;color:#fff}
.tbl tbody tr:nth-child(even){background:rgba(255,255,255,.025)}
.tbl-note{font-size:14px;color:var(--muted);margin-top:6px}

/* Steps and cards */
.steps{list-style:none;margin:6px 0 10px;padding:0;display:grid;gap:12px;max-width:820px}
.steps li{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:12px;background:#141414;border:1px solid var(--line-2)}
.st-n{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--brass);color:var(--ink);font:600 19px/1 var(--hd)}
.st-t{font:600 19px/1.1 var(--hd);text-transform:uppercase;color:#fff;margin:4px 0 4px}
.steps p:last-child{margin:0}
.cards{list-style:none;margin:6px 0 10px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.card{padding:16px;border-radius:12px;background:#141414;border:1px solid var(--line-2)}
.card-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#1d2d14;color:var(--accent);margin-bottom:8px}
.card-t{font:600 19px/1.1 var(--hd);text-transform:uppercase;margin:0 0 6px}
.card p:last-child{margin:0;font-size:15.5px;color:#e4e4e4}

/* Spec plaques */
.plaques{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin:8px 0}
.sp{padding:14px 14px 12px;border-radius:12px;background:linear-gradient(180deg,#1c1c19,#111);border:1px solid rgba(225,208,139,.28);scroll-margin-top:12px}
.sp-h{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.sp-img{width:64px;border-radius:7px;flex:none}
.sp-img--wide{width:96px}
.sp-k{margin:0 0 3px;font:600 11.5px/1 var(--hd);text-transform:uppercase;letter-spacing:.1em;color:var(--brass-3)}
.sp-name{font-size:22px;color:#fff}
.sp-rel{margin:3px 0 0;font-size:13px;color:var(--muted)}
.sp-note{font-size:15px;color:#e8e8e8;margin:0 0 8px}
.sp-list{list-style:none;margin:0;padding:0;display:grid;gap:7px;font-size:14.5px;line-height:1.35}
.sp-list li{display:flex;gap:8px;align-items:flex-start}
.tag{flex:none;display:inline-block;padding:2px 6px 1px;border-radius:4px;font:600 10.5px/1.3 var(--hd);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.tag--lobby{background:rgba(195,232,144,.13);color:var(--accent2);border:1px solid rgba(195,232,144,.4)}
.tag--springbok{background:rgba(255,199,46,.12);color:var(--accent);border:1px solid rgba(255,199,46,.45)}
.sp-src{margin:10px 0 0;font-size:13px;color:var(--muted)}

/* A-Z index, neighbours */
.tix{margin:6px 0 0;padding:0;list-style:none;columns:1;column-gap:28px}
.tix li{break-inside:avoid;padding:8px 0;border-bottom:1px solid var(--line-2);font-size:16px}
.tix-n{font-weight:600}
.tix-sp{font-size:13px;margin-left:4px}
.tix-also{display:inline;font-size:13.5px;color:var(--muted)}
.tix-also a{color:var(--muted)}
.tix-note{display:block;font-size:14.5px;line-height:1.4;color:#dcdcdc;margin-top:2px}
.nb{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:10px}
.nb-a{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;align-items:center;padding:12px 14px;border-radius:12px;background:linear-gradient(160deg,var(--t1),var(--t2));border:1px solid var(--line);color:#fff;text-decoration:none}
.nb-a:hover{border-color:var(--accent);color:#fff}
.nb-ic{grid-row:span 2;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:var(--ti);background:rgba(0,0,0,.35)}
.nb-t{font:600 19px/1.1 var(--hd);text-transform:uppercase}
.nb-c{font-size:14px;color:#e0e0e0}
.back{margin:14px 0 0}
.back a{display:inline-flex;align-items:center;gap:7px;min-height:44px}

/* ---------- CTA blocks ---------- */
.ctab{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:26px 0;padding:18px;border-radius:14px;background:radial-gradient(ellipse at 0% 0%,rgba(255,199,46,.1),transparent 60%),linear-gradient(130deg,#16290e,#0b1306);border:1px solid rgba(255,199,46,.35)}
.ctab-k{display:flex;align-items:center;gap:6px;margin:0 0 6px;font:600 13px/1 var(--hd);text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.ctab-h{font:600 26px/1.04 var(--hd);text-transform:uppercase;margin:0 0 8px;color:#fff}
.ctab-p{color:#e2e2e2;margin:0}
.codecard{margin:18px 0;max-width:520px}
.aff-in{color:var(--accent);font-weight:600}
.endcta{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin:44px 0 10px;padding:22px 18px;border-radius:16px;position:relative;overflow:hidden;background:radial-gradient(ellipse 70% 80% at 100% 0%,rgba(255,199,46,.14),transparent 70%),linear-gradient(160deg,#1a3010,#0a1405);border:1px solid rgba(255,199,46,.4)}
.endcta::before{content:"";position:absolute;inset:0;background:url(/assets/sb/bg-springbok-pattern.png);opacity:.4;pointer-events:none}
.endcta>*{position:relative}
.endcta h2{font-size:30px;margin:0 0 10px}
.endcta-t p{color:#e6e6e6}

/* ---------- Responsible gambling band ---------- */
.rgb{margin:46px calc(-1 * var(--gut)) 0;padding:30px var(--gut) 26px;background:linear-gradient(180deg,#10230a 0%,#0a1606 100%);border-top:3px solid var(--brass-3);border-bottom:1px solid var(--line)}
.rgb-top{display:flex;gap:14px;align-items:flex-start;max-width:900px}
.rgb-18{flex:none;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#270000;border:3px solid var(--accent);color:#fff;font:600 22px/1 var(--hd)}
.rgb-18.sm{width:38px;height:38px;font-size:15px;border-width:2px}
.rgb-k{margin:2px 0 4px;font:600 13.5px/1 var(--hd);text-transform:uppercase;letter-spacing:.1em;color:var(--accent2)}
.rgb h2{font-size:30px;margin:0 0 10px}
.rgb-lead{color:#e8e8e8;margin:0}
.rgb-grid{display:grid;gap:10px;margin:20px 0 0}
.rgb-tile{display:grid;grid-template-columns:auto 1fr;gap:0 12px;align-items:center;padding:14px 16px;border-radius:12px;background:#13250d;border:1px solid rgba(195,232,144,.3);color:#fff;text-decoration:none;min-height:88px}
.rgb-tile:hover{border-color:var(--accent);color:#fff}
.rgb-tile .ic{grid-row:span 3;width:30px;height:30px;color:var(--accent)}
.rgb-t{font:600 14px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.06em;color:var(--accent2)}
.rgb-n{font:600 30px/1.05 var(--hd);color:var(--accent);letter-spacing:.02em}
.rgb-s{font-size:13.5px;color:#dcdcdc}
.rgb-cols{display:grid;gap:4px 28px;margin:22px 0 0}
.rgb-cols h3{font-size:20px;color:#fff;margin:14px 0 8px}
.rgb-cols p{color:#e2e2e2}
.rgb-slogan{display:flex;align-items:center;gap:14px;margin:22px 0 0;font:600 24px/1.1 var(--hd);text-transform:uppercase;letter-spacing:.04em;color:var(--cream);text-align:center;justify-content:center}
.rgb-slogan::before,.rgb-slogan::after{content:"";flex:1;max-width:120px;height:1px;background:var(--line)}
.rg-steps{margin:0 0 1em;padding:0;list-style:none;counter-reset:r}
.rg-steps li{counter-increment:r;position:relative;padding-left:40px;margin:0 0 .8em;color:#e6e6e6}
.rg-steps li::before{content:counter(r);position:absolute;left:0;top:1px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--brass);color:var(--ink);font:600 16px/1 var(--hd)}
.rg-steps b{color:#fff}
.rgb-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:20px 0 0;padding:16px;border-radius:12px;background:rgba(0,0,0,.28);border:1px solid var(--line-2)}
.rgb-actions p{margin:0;flex:1 1 220px;color:#e6e6e6}
.rgb-family{display:flex;gap:10px;align-items:flex-start;max-width:900px;margin:18px 0 0;padding:12px 14px;border-radius:10px;background:rgba(0,0,0,.25);border:1px solid var(--line-2);color:#e6e6e6;font-size:15.5px}
.rgb-family .ic{margin-top:4px;color:var(--accent2)}
.rgb--page{margin:22px 0 0;padding:4px 0 0;background:none;border:0}
.rgb--page .rgb-grid{margin-top:4px}

/* ---------- FAQ, sources ---------- */
.faq{margin:44px 0 0;max-width:860px}
.faq h2{font-size:30px;margin:0 0 14px}
.qa{border-radius:12px;background:#141414;border:1px solid var(--line-2);margin:0 0 10px}
.qa summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:12px 16px;cursor:pointer;list-style:none;font-weight:600;font-size:17px;line-height:1.35}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{content:"+";flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#1f2c16;color:var(--accent);font:600 20px/1 var(--hd)}
.qa[open] summary::after{content:"–"}
.qa-a{padding:0 16px 14px;color:#e6e6e6}
.qa-a p:last-child{margin:0}
.sources{margin:40px 0 0;padding:18px;border-radius:12px;background:#0f0f0f;border:1px solid var(--line-2);max-width:860px}
.sources h2{font-size:24px;margin:0 0 10px}
.sources ol{margin:0 0 6px;padding-left:1.3em;font-size:15px;line-height:1.45}
.sources li{margin:0 0 6px}
.src-n{color:var(--muted)}
.fact-src{font-size:.82em;white-space:nowrap}

/* ---------- Utility and 404 ---------- */
.uh{padding:18px 0 4px;max-width:860px}
.uh h1{font-size:38px;margin:0 0 12px}
.m-util .sec{max-width:860px}
.nf{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding:30px 0 6px}
.nf h1{font-size:44px;margin:0 0 12px}

/* Reading column + side rail */
.pg{display:grid;grid-template-columns:minmax(0,1fr)}
.pg-side{display:none}
.side-box{padding:14px 16px;border-radius:12px;background:#121212;border:1px solid var(--line);margin:0 0 14px}
.side-h{margin:0 0 10px;font:600 14px/1 var(--hd);text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}
.side-toc ol{list-style:none;margin:0;padding:0;counter-reset:t}
.side-toc li{counter-increment:t;margin:0}
.side-toc a{display:flex;gap:8px;padding:7px 0;color:#e8e8e8;text-decoration:none;font-size:15px;line-height:1.3;border-top:1px solid var(--line-2)}
.side-toc li:first-child a{border-top:0}
.side-toc a::before{content:counter(t,decimal-leading-zero);font:600 13px/1.3 var(--hd);color:var(--brass-3)}
.side-toc a:hover{color:var(--accent)}
.side-counts{list-style:none;margin:0;padding:0}
.side-counts a{display:flex;align-items:center;gap:10px;padding:6px 0;color:#eee;text-decoration:none;font-size:15px;border-top:1px solid var(--line-2)}
.side-counts li:first-child a{border-top:0}
.side-counts a:hover{color:var(--accent)}
.side-counts b{margin-left:auto;font:600 20px/1 var(--hd);color:var(--accent)}
.sc-ic{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(160deg,var(--t1),var(--t2));color:var(--ti)}
.sc-n{font-weight:600}
.side-f{margin:10px 0 0;font-size:13px;color:var(--muted)}
.side-help p{margin:0 0 6px}
.side-help a{display:inline-flex;align-items:center;gap:7px;min-height:36px;color:#fff}
@media (min-width:1100px){
  .pg{grid-template-columns:minmax(0,1fr) 330px;gap:0 48px;align-items:start}
  .pg-side{display:block;position:sticky;top:16px;margin-top:40px}
  .toc{display:none}
  .m-util .sec{max-width:none}
}

/* ---------- Footer ---------- */
.ftr{margin-top:40px;background:#080c03;box-shadow:0 0 10px #080c03;color:#b4c79e;font-size:15px;line-height:1.5}
.ftr-help{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;justify-content:space-between;max-width:var(--wrap);margin:0 auto;padding:16px var(--gut);border-bottom:1px solid var(--line-2)}
.ftr-18{display:flex;align-items:center;gap:10px;margin:0;color:#fff}
.ftr-lines{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0}
.ftr-lines a{display:inline-flex;align-items:center;gap:6px;min-height:40px;color:#fff;text-decoration:underline}
.ftr-in{max-width:var(--wrap);margin:0 auto;padding:22px var(--gut) 8px;display:grid;gap:22px}
.ftr-logo{width:150px;margin-bottom:12px}
.ftr p{margin:0 0 10px}
.ftr b{color:#fff}
.ftr a{color:#fff}
.ftr-disc{font-size:14.5px}
.ftr-aff{margin-top:6px}
.ftr-h{font-size:17px;color:var(--accent);margin:0 0 8px;letter-spacing:.05em}
.ftr-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.ftr-nav a{display:inline-flex;min-height:36px;align-items:center}
.ftr-copy{max-width:var(--wrap);margin:0 auto;padding:12px var(--gut) 22px;font-size:13px;color:#93a87c;border-top:1px solid var(--line-2)}

/* ---------- Sticky phone bar and toast ---------- */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;gap:10px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(6,15,3,.97);border-top:1px solid rgba(255,199,46,.55);box-shadow:0 -8px 22px rgba(0,0,0,.6)}
.sticky-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.sticky-o{font:600 15px/1.15 var(--hd);text-transform:uppercase;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky-c{font-size:13px;color:var(--accent2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sticky-c b{color:var(--accent);letter-spacing:.04em}
.sticky-b{flex:none;min-height:46px;font-size:17px;padding:6px 16px}
body.has-sticky{padding-bottom:72px}
.toast{position:fixed;left:50%;bottom:86px;z-index:120;transform:translate(-50%,16px);max-width:min(92vw,460px);padding:12px 16px;border-radius:10px;background:#13250d;border:1px solid var(--accent);color:#fff;font-size:15px;line-height:1.4;box-shadow:0 12px 30px rgba(0,0,0,.6);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
.toast.is-on{opacity:1;transform:translate(-50%,0)}

/* ---------- Wider screens ---------- */
@media (min-width:600px){
  .vt-glass>figure.vt-p:nth-of-type(n+3){display:block}
  .mcase{display:block}
  .vitrine .vt-type{display:flex;width:84px;aspect-ratio:3/4;border-radius:9px;opacity:.8;box-shadow:0 10px 20px -8px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.1)}
  .vt-type .t-ic{width:34px;height:34px;top:18%}
  .vt-type .t-title{font-size:12.5px;padding:17px 5px 8px;margin:0 4px 4px}
  .sx{grid-template-columns:repeat(3,1fr)}
  .sx-desc{display:block}
  .tix{columns:2}
  .nb{grid-template-columns:repeat(3,1fr)}
  .rgb-grid{grid-template-columns:repeat(3,1fr)}
  .ctab{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;padding:22px}
  .endcta{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;padding:28px}
}
@media (min-width:900px){
  :root{--gut:24px}
  body{font-size:17.5px}
  .brand-logo{width:140px}
  .brand-name{font-size:22px}
  .brand-tag{font-size:11px}
  .hdr-in{padding:12px var(--gut)}
  .hdr-cta{font-size:18px;padding:6px 20px}
  .hdr-cta .ic{display:block}
  .tnav-track{justify-content:center;gap:6px;-webkit-mask-image:none;mask-image:none;padding:10px 54px 10px}
  .tn{width:104px}
  .tn-disc{width:50px;height:50px}
  .tn-l{font-size:14px}
  .hero{padding:34px var(--gut) 18px}
  .hero-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"t v" "o o";gap:26px 40px;align-items:center}
  .hero h1{font-size:52px}
  .hero .op--hero .op-note,.hh .op--hero .op-note{display:block}
  .hero-o .op--hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:0 26px;align-items:start;padding:20px 22px 12px}
  .hero-o .op--hero .op-main{grid-column:1;grid-row:1 / span 2}
  .hero-o .op--hero .op-note{margin-bottom:4px}
  .hero-o .op--hero .chip{grid-column:2;grid-row:1;margin:0 0 10px}
  .hero-o .op--hero .btn-gold{grid-column:2;grid-row:2}
  .hero-o .op--hero .terms{grid-column:3;grid-row:1 / span 2;margin:0;padding:0 0 0 20px;border-top:0;border-left:1px solid rgba(90,61,10,.3)}
  .hero-o .op--hero .op-foot{grid-column:1 / -1;grid-row:3;margin-top:12px;padding-top:8px;border-top:1px solid rgba(90,61,10,.25)}
  .vt-glass{min-height:250px;gap:12px}
  .vt-main{width:160px}
  .vt-p:not(.vt-main):not(.vt-promo):not(.vt-type){width:112px}
  .vt-promo{width:200px}
  .vt-wide{width:200px!important}
  .vt-type{width:100px}
  .vt-emblem{width:128px}
  .vitrine.vitrine--type .vt-type{width:88px}
  .vitrine.vitrine--type .vt-glass{gap:10px}
  .vitrine{padding:30px 18px 0;margin-top:6px}
  .vt-ledge{margin:0 -18px}
  .hh{padding:30px var(--gut) 34px;border-radius:0 0 18px 18px}
  
  
  
  .hh-in{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:start;max-width:1100px}
  .hh-t{padding-right:10px}
  .hh h1{font-size:56px}
  .hh .dek{max-width:60ch}
  .hh-o{margin-top:6px}
  .tile{width:156px}
  .te-in{min-height:270px}
  .pl-name{font-size:30px}
  .sec>h2{font-size:36px}
  .sx{grid-template-columns:repeat(3,1fr);gap:14px}
  .sx-a{min-height:168px;padding:16px}
  .shelf{margin:26px 0 4px}
  .sx-img{width:96px;right:-6px;bottom:-24px}
  .sx-name{font-size:24px}
  .tix{columns:3}
  .rgb{padding:60px 44px 50px;border-radius:18px;margin-left:0;margin-right:0;border:1px solid var(--line);border-top:3px solid var(--brass-3)}
  .rgb h2{font-size:38px}
  .rgb-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 48px}
  .rgb-cols>div{padding:4px 0 10px;border-top:1px solid var(--line-2)}
  .rgb-tile{min-height:160px;padding:22px 24px}
  .rgb-grid{margin-top:28px;gap:14px}
  .rgb-cols{margin-top:30px}
  .rgb-cols h3{font-size:22px;margin:18px 0 12px}
  .rgb-lead{font-size:18.5px}
  .rgb-n{font-size:36px}
  .uh h1{font-size:52px}
  .nf{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;padding-top:44px}
  .nf h1{font-size:60px}
  .ftr-in{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}
  .sticky{display:none}
  body.has-sticky{padding-bottom:0}
  .toast{bottom:28px}
  .shelf--lead{border-radius:16px;margin-left:0;margin-right:0;padding:20px 20px 8px;border:1px solid var(--line)}
  .shelf--lead .rail{margin:0 -20px}
  .shelf--lead .rail-track{padding-left:20px;padding-right:20px}
}
@media (min-width:1240px){
  .rail{margin:0}
  .rail-track{padding-left:0;padding-right:0}
  .hero{margin:0;padding-left:0;padding-right:0}
  .hh{margin-left:0;margin-right:0;padding-left:34px;padding-right:34px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
}
@media print{.hdr .tnav,.sticky,.toast,.rail-btn{display:none!important}body{background:#fff;color:#000}}

/* Audit fixes (11 Oct 2026) */
/* Phone hero strip: three official images under the home H1; the display case below is hidden on phones. */
.hstrip{list-style:none;margin:2px 0 14px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hs-p{margin:0}
.hs-a{display:block;position:relative;border-radius:10px;overflow:hidden;aspect-ratio:16/10;background:#0a1405;box-shadow:0 0 0 1px rgba(225,208,139,.35),0 10px 18px -10px rgba(0,0,0,.9);text-decoration:none}
.hs-img{display:block;width:100%;height:100%;object-fit:cover}
.hs-cap{position:absolute;left:0;right:0;bottom:0;padding:14px 6px 4px;font:600 12px/1.1 var(--hd);text-transform:uppercase;letter-spacing:.03em;color:#fff;background:linear-gradient(180deg,transparent,rgba(0,0,0,.85));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs-a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
@media (max-width:599px){
  .m-home .hero-v{display:none}
  .m-home .hero h1{margin-bottom:12px}
  /* Tables become stacked cards: each cell shows its column name. */
  .tbl{min-width:0}
  .tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .tbl tbody tr{display:block;padding:10px 14px;border-bottom:1px solid var(--line-2)}
  .tbl tbody th,.tbl tbody td{display:block;padding:3px 0;border:0}
  .tbl tbody th{font:600 17px/1.25 var(--hd);text-transform:uppercase;letter-spacing:.03em;color:var(--accent);padding-bottom:6px}
  .tbl td[data-label]::before{content:attr(data-label);display:block;font:600 12px/1.2 var(--hd);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
}
@media (min-width:600px){.hstrip{display:none}}
.endcta--solo .endcta-t{max-width:62ch}
.endcta-art{display:none}
@media (min-width:600px){.endcta.endcta--solo{grid-template-columns:minmax(0,1fr) 200px}.endcta-art{display:block;justify-self:end}.endcta-img{display:block;width:180px;height:auto;filter:drop-shadow(0 18px 24px rgba(0,0,0,.7))}}
.t-no::before{content:attr(data-no)}
