:root{
  --space-xs:9px;
  --space-sm:17px;
  --space-md:21px;
  --space-lg:35px;
  --space-xl:64px;
  --card-padding-y:20px;
  --card-padding-x:28px;
  --card-gap:23px;
  --card-radius:14px;
  --card-border-width:1px;
  --card-min-height:324px;
  --card-min-col-width:283px;
  --btn-padding-y:11px;
  --btn-padding-x:24px;
  --btn-radius:12px;
  --btn-gap-from-text:26px;
  --grid-gap:18px;
  --lh-heading:1.28;
  --lh-body:1.62;
  --ls-heading:0.010em;

  --accent:#7B1E33;
  --secondary:#D4A847;
  --bg:#FBF5EE;
  --bg-alt:#F3EADC;
  --text:#2A1A1F;
  --muted:#7A6A6E;
  --border:#D9C9BC;
}

*,*::before,*::after{box-sizing:border-box;min-width:0}
img,svg,video{max-width:100%;height:auto;display:block}
button,input,select,textarea{font:inherit}

html,body{margin:0;padding:0}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:var(--lh-body);
  font-size:15px;
}
h1,h2,h3,h4{font-family:'Archivo Black','Inter',sans-serif;font-weight:900;line-height:var(--lh-heading);letter-spacing:var(--ls-heading);margin:0 0 var(--space-sm)}
h1{font-size:clamp(38px,5vw,56px)}
h2{font-size:clamp(26px,3vw,34px);text-transform:uppercase}
h3{font-size:18px}
p{margin:0 0 var(--space-sm)}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

.wrap{max-width:1180px;margin:0 auto;padding:0 var(--space-md)}
.sr{position:absolute;left:-9999px}
.skip{position:absolute;left:-9999px;top:0;background:var(--accent);color:#fff;padding:8px 12px;z-index:200}
.skip:focus{left:8px;top:8px}

.site-header{
  position:sticky;top:0;z-index:50;
  background:var(--bg);
  border-bottom:2px solid var(--accent);
}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:14px 0;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none}
.brand__mark{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-family:'Archivo Black';font-size:13px;letter-spacing:.05em}
.brand__name{font-family:'Archivo Black';font-size:16px;text-transform:uppercase;letter-spacing:.02em}
.header-meta{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}
.age-badge{background:var(--text);color:var(--bg);padding:4px 10px;font-family:'Archivo Black';font-size:12px;letter-spacing:.05em}
.live-verify{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.pulse{width:8px;height:8px;background:#0a8a3a;border-radius:50%;animation:pulse 2s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.4)}}

.hero{
  position:relative;
  padding:var(--space-xl) 0 var(--space-lg);
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'><path d='M0 48L48 0M-12 12L12 -12M36 60L60 36' stroke='%232A1A1F' stroke-opacity='0.08' stroke-width='1' fill='none'/></svg>"),
    linear-gradient(135deg,#7B1E33 0%,#D4A847 55%,#FBF5EE 100%);
  background-size:48px 48px,100% 100%;
  border-bottom:2px solid var(--accent);
}
.hero__inner{padding:var(--space-lg) 0}
.hero h1{color:var(--text);max-width:900px}
.hero__sub{color:#3d2a30;font-size:17px;font-weight:600;max-width:720px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:var(--space-md) 0}
.chip{background:#fff;border:2px solid var(--accent);color:var(--accent);padding:6px 12px;font-size:13px;font-weight:600;font-family:'Archivo Black';letter-spacing:.02em;text-transform:uppercase}
.diag-rule{display:block;width:64px;height:3px;background:var(--secondary);transform:skewX(-20deg);margin-bottom:var(--space-sm)}
.toc{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid rgba(42,26,31,.15)}
.toc a{color:var(--text);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:6px 10px;border:1px solid var(--text)}
.toc a:hover{background:var(--text);color:var(--bg);text-decoration:none}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:var(--btn-padding-y) var(--btn-padding-x);
  border-radius:0;
  font-family:'Archivo Black';font-size:14px;text-transform:uppercase;letter-spacing:.05em;
  border:2px solid var(--accent);cursor:pointer;text-decoration:none;
  transition:background .15s,color .15s;
  min-width:0;
}
.btn--primary{background:var(--accent);color:var(--bg)}
.btn--primary:hover{background:var(--bg);color:var(--accent);text-decoration:none}
.btn--ghost{background:transparent;color:var(--accent)}
.btn--ghost:hover{background:var(--accent);color:var(--bg);text-decoration:none}
.btn--hero{font-size:16px;padding:14px 32px;margin-top:var(--space-sm)}

.section{padding:var(--space-xl) 0}
.section--alt{background:var(--bg-alt)}
.lead{font-size:16px;max-width:860px;color:var(--text)}
.note{font-size:13px;color:var(--muted);max-width:800px;border-left:3px solid var(--secondary);padding-left:12px}

.reg-table{display:grid;border:1px solid var(--border);background:#fff;margin:var(--space-md) 0}
.reg-row{display:grid;grid-template-columns:1fr 1.4fr 1fr;padding:10px 14px;border-bottom:1px solid var(--border);font-size:14px;gap:var(--space-sm)}
.reg-row:last-child{border-bottom:0}
.reg-row--head{background:var(--text);color:var(--bg);font-family:'Archivo Black';text-transform:uppercase;font-size:12px;letter-spacing:.05em}
.reg-row--primary{background:#fff7e8;font-weight:700}
.reg-row--primary span:nth-child(3){color:var(--accent)}

.leaderboard{display:flex;flex-direction:column;gap:var(--grid-gap);margin:var(--space-md) 0}
.lb-head{display:none}
.brand-card{
  display:grid;
  grid-template-columns:72px 1fr minmax(0,220px);
  grid-template-areas:
    "rank head cta"
    "rank meta cta"
    "ver  ver  ver";
  align-items:start;
  gap:var(--space-sm) var(--space-md);
  padding:var(--card-padding-y) var(--card-padding-x);
  background:#fff;
  border:var(--card-border-width) solid var(--border);
  border-left:6px solid var(--accent);
  border-radius:var(--card-radius);
  min-height:var(--card-min-height);
  transition:border-color .2s,transform .15s;
}
.brand-card__meta{grid-area:meta;display:grid;grid-template-columns:auto 1fr;gap:var(--space-sm) var(--space-md);align-items:center;min-width:0}
.brand-card__meta > *{min-width:0}
.brand-card__meta .lb-rating{grid-column:1;grid-row:1 / span 3}
.brand-card__meta .lb-lic{grid-column:2;grid-row:1}
.brand-card__meta .lb-pay{grid-column:2;grid-row:2}
.brand-card__meta .lb-app{grid-column:2;grid-row:3}
@media (max-width:1024px){
  .brand-card__meta{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs)}
  .brand-card__meta > *{width:100%}
}
.brand-card:hover{border-left-color:var(--secondary);transform:translateY(-2px)}
.lb-rank{grid-area:rank;font-family:'Archivo Black';font-size:42px;color:var(--accent);line-height:1}
.brand-card__head{grid-area:head;display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm);min-width:0}
.brand-card__head h3{font-size:22px;text-transform:uppercase}
.brand-card__blurb{font-size:14px;color:var(--text);margin:0;overflow-wrap:anywhere}
.brand-logo{max-height:40px;width:auto;align-self:flex-start}
.brand-card__pills{display:flex;flex-wrap:wrap;gap:6px}
.pill{background:var(--bg-alt);color:var(--text);border:1px solid var(--border);padding:4px 10px;font-size:12px;font-weight:600}
.lb-rating{grid-area:rating;text-align:center;font-family:'Archivo Black';color:var(--accent);padding:0 var(--space-sm);border-left:1px solid var(--border);border-right:1px solid var(--border)}
.lb-rating strong{font-size:32px;display:block;line-height:1}
.lb-rating span{font-size:12px;color:var(--muted);font-weight:400;font-family:'Inter'}
.lb-lic{grid-area:lic;display:flex;flex-direction:column;gap:4px;font-size:12px}
.tag{display:inline-block;background:var(--bg-alt);color:var(--text);padding:3px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border)}
.tag--primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.lb-pay{grid-area:pay;font-size:12px;color:var(--muted);max-width:160px}
.lb-app{grid-area:app;font-size:12px;color:var(--muted);font-weight:600}
.brand-card__ctas{grid-area:cta;display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:auto;min-width:160px}
.brand-card__ctas .btn{width:100%;text-align:center;justify-content:center}
.verified{grid-area:ver;font-size:11px;color:var(--muted);margin:0;padding-top:var(--space-xs);border-top:1px dashed var(--border);text-transform:uppercase;letter-spacing:.05em;font-variant-numeric:tabular-nums}

@media (max-width:900px){
  .brand-card{
    grid-template-columns:60px 1fr;
    grid-template-areas:
      "rank head"
      "meta meta"
      "cta  cta"
      "ver  ver";
  }
  .brand-card__meta{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}
  .lb-rating{text-align:left;padding:var(--space-xs) 0;border:none;border-top:1px solid var(--border);width:100%}
  .lb-rating strong{display:inline;font-size:24px}
  .lb-pay,.lb-lic,.lb-app{max-width:none}
  .brand-card__ctas{min-width:0}
}

.disclaim{font-size:12px;color:var(--muted);margin-top:var(--space-md)}

.manifesto{background:#fff;border:1px solid var(--border);border-left:6px solid var(--secondary);padding:var(--space-lg);font-size:16px;line-height:1.7;max-width:920px}
.manifesto p{margin:0}

.trust-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--grid-gap);margin-top:var(--space-md)}
.trust-cell{background:#fff;border:1px solid var(--border);border-top:4px solid var(--accent);padding:var(--space-md);text-align:left}
.trust-cell strong{font-family:'Archivo Black';font-size:24px;color:var(--accent);display:block;font-variant-numeric:tabular-nums}
.trust-cell span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}

.kyc-list{list-style:none;counter-reset:kyc;padding:0;margin:var(--space-md) 0;display:grid;gap:var(--grid-gap)}
.kyc-list li{counter-increment:kyc;background:#fff;border:1px solid var(--border);padding:var(--space-md);padding-left:72px;position:relative;font-size:14px}
.kyc-list li::before{
  content:counter(kyc,decimal-leading-zero);
  position:absolute;left:20px;top:18px;
  font-family:'Archivo Black';font-size:22px;color:var(--secondary);
}
.example{background:var(--bg-alt);border:1px solid var(--border);padding:var(--space-md);margin-top:var(--space-md)}
.example h3{color:var(--accent);margin-bottom:8px}

.faq-search{margin:var(--space-md) 0}
.faq-search input{
  width:100%;max-width:500px;padding:12px 16px;
  background:#fff;border:2px solid var(--text);
  font-size:15px;font-family:inherit;
}
.faq-search input:focus{outline:none;border-color:var(--accent)}
.faq-list{display:grid;gap:var(--space-sm)}
.faq-item{background:#fff;border:1px solid var(--border);border-left:4px solid var(--secondary);padding:var(--space-md)}
.faq-item h3{font-size:15px;color:var(--accent);text-transform:none;margin-bottom:8px}
.faq-item p{margin:0;font-size:14px}
.faq-item[hidden]{display:none}

.commitment{display:grid;gap:var(--space-md);max-width:860px}
.commitment p{background:#fff;border:1px solid var(--border);padding:var(--space-md);margin:0;font-size:14px}
.commitment strong{color:var(--accent)}

.site-footer{background:var(--text);color:var(--bg);padding:var(--space-xl) 0 var(--space-md);margin-top:var(--space-xl)}
.footer-lead{font-family:'Archivo Black';font-size:20px;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--secondary);padding-bottom:var(--space-sm);margin-bottom:var(--space-lg)}
.footer-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-lg);margin-bottom:var(--space-lg)}
.footer-col h4{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--secondary);margin-bottom:var(--space-sm)}
.footer-col p,.footer-col li{font-size:13px;color:#d8cec8}
.footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.footer-col a{color:var(--bg)}
.footer-col a:hover{color:var(--secondary)}
.footer-logos{display:flex;flex-wrap:wrap;gap:var(--space-md);align-items:center}
.footer-logos a{display:inline-flex;align-items:center;padding:6px;border-radius:4px;transition:background .15s}
.footer-logos a:hover{background:rgba(255,255,255,.06)}
.footer-logos img{
  max-height:56px;width:auto;
  background:transparent;padding:0;border:none;
  opacity:.92;filter:brightness(1.05);
}
.footer-legal{border-top:1px solid rgba(255,255,255,.12);padding-top:var(--space-md);font-size:12px;color:#c4b9b3}
.footer-legal p{margin:0 0 6px}
.footer-legal a{color:var(--secondary)}

.age-modal{position:fixed;inset:0;background:rgba(42,26,31,.92);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-md)}
.age-modal[hidden]{display:none!important}
.age-modal__box{background:var(--bg);max-width:460px;width:100%;padding:var(--space-lg);border:3px solid var(--accent);text-align:center}
.age-modal__box h2{color:var(--accent)}
.age-modal__question{font-weight:700;font-size:16px}
.age-modal__actions{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap;margin:var(--space-md) 0}
.age-modal__foot{font-size:12px;color:var(--muted);margin:0}

.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--text);color:var(--bg);border-top:3px solid var(--secondary);padding:var(--space-md);z-index:900}
.cookie-banner[hidden]{display:none}
.cookie-inner{display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap}
.cookie-inner p{margin:0;font-size:13px}
.cookie-inner a{color:var(--secondary)}
.cookie-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cookie-actions .btn{background:var(--bg);color:var(--text);border-color:var(--bg)}
.cookie-actions .btn--ghost{background:transparent;color:var(--bg)}
.cookie-more{font-size:13px}

/* Policy / brand pages */
.page-body{max-width:860px;margin:0 auto}
.page-body h2{margin-top:var(--space-lg)}
.page-body h3{margin-top:var(--space-md);color:var(--accent)}
.page-body ul,.page-body ol{padding-left:22px;margin:0 0 var(--space-sm)}
.page-body li{margin-bottom:6px;font-size:14px}

.brand-hero{background:var(--bg-alt);padding:var(--space-lg) 0;border-bottom:2px solid var(--accent)}
.brand-hero .wrap{display:flex;gap:var(--space-lg);align-items:center;flex-wrap:wrap}
.brand-hero img{max-height:72px;width:auto}
.brand-hero .meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.back-link{display:inline-block;margin-top:var(--space-md);font-size:13px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.spec-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border);margin:var(--space-md) 0}
.spec-table th,.spec-table td{padding:10px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:14px;vertical-align:top}
.spec-table th{background:var(--text);color:var(--bg);font-family:'Archivo Black';font-size:12px;text-transform:uppercase;letter-spacing:.04em;width:36%}
.cta-block{background:#fff;border:2px solid var(--accent);padding:var(--space-lg);text-align:center;margin:var(--space-lg) 0}
.cta-block .btn{font-size:15px;padding:14px 36px}
