:root{
  --paper:#FBFAF7; --ink:#0F1B2D; --blue:#1F5F8B; --blue-d:#164straw; --blue-dark:#164A6E;
  --copper:#B5763A; --line:#E4E0D8; --muted:#5C6470; --card:#FFFFFF; --ok:#1E7A52;
  --maxw:1140px; --rad:14px; --shadow:0 1px 2px rgba(15,27,45,.06),0 8px 24px rgba(15,27,45,.06);
  --serif:Georgia,"Times New Roman",serif; --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65;}
img{max-width:100%;height:auto}
a{color:var(--blue-dark);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--serif);line-height:1.2;color:var(--ink);font-weight:700}
h1{font-size:2.1rem;margin:.2em 0 .3em;letter-spacing:-.5px}
h2{font-size:1.5rem;margin:1.8em 0 .5em}
h3{font-size:1.2rem;margin:1.4em 0 .4em}
p{margin:.7em 0}

/* top strip */
.topstrip{background:var(--ink);color:#D9E2EC;font-size:.78rem;display:flex;justify-content:space-between;gap:12px;padding:7px 20px;flex-wrap:wrap}
.topstrip .ts-right{color:#9FB0C2}

/* header */
.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.hd{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;padding-bottom:12px}
.logo img{display:block;height:44px;width:auto}
.mainnav{display:flex;gap:20px;flex-wrap:wrap}
.mainnav a{color:var(--ink);font-size:.93rem;font-weight:600}
.mainnav a:hover{color:var(--blue-dark)}

/* layout */
.page{padding:22px 20px 60px}
.content{max-width:820px;margin:0 auto}
.breadcrumbs{font-size:.82rem;color:var(--muted);margin:6px 0 14px}
.breadcrumbs a{color:var(--muted)}
.breadcrumbs span[aria-current]{color:var(--ink)}
.hero h1{margin-top:.1em}
.hero-img{width:100%;height:auto;border-radius:var(--rad);margin:6px 0 14px;border:1px solid var(--line);aspect-ratio:1216/640;object-fit:cover;background:#eef}
.byline{font-size:.82rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:8px}

/* article */
.article{font-size:1.05rem}
.article h2{scroll-margin-top:80px}
.article ul,.article ol{padding-left:1.3em}
.article li{margin:.3em 0}
.article table{border-collapse:collapse;width:100%;margin:1em 0;font-size:.95rem}
.article th,.article td{border:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}
.article thead th{background:#F1EEE8}
.article blockquote{margin:1em 0;padding:14px 18px;background:#F4F1EA;border-left:4px solid var(--blue);border-radius:0 8px 8px 0;font-size:1.02rem}

/* TOC */
.toc{background:var(--card);border:1px solid var(--line);border-radius:var(--rad);padding:14px 18px;margin:18px 0}
.toc h2{font-size:1rem;margin:.1em 0 .4em}
.toc ol{margin:0;padding-left:1.2em;columns:2;column-gap:26px}
.toc a{color:var(--blue-dark);font-size:.9rem}

/* tax warning */
.tax-warning{display:flex;gap:12px;align-items:flex-start;background:#FBF4E9;border:1px solid #EAD9BE;border-left:4px solid var(--copper);border-radius:8px;padding:12px 16px;margin:16px 0}
.tax-warning .tw-ico{flex:none;width:22px;height:22px;border-radius:50%;background:var(--copper);color:#fff;font-family:var(--serif);font-style:italic;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.9rem;margin-top:2px}
.tax-warning p{margin:0;font-size:.97rem}

/* affiliate disclosure */
.affiliate-disclosure{background:#EEF3F7;border:1px solid #D3E0EA;border-radius:8px;padding:11px 15px;font-size:.86rem;color:#31485C;margin:14px 0}

/* commercial label */
.cc-label{display:inline-block;background:#EDE7DC;color:#6B5836;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 7px;border-radius:5px;vertical-align:middle}

/* featured top three */
.featured-top-three{margin:22px 0}
.ftt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.casino-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--rad);padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.casino-card .rank{position:absolute;top:-10px;left:-10px;width:30px;height:30px;background:var(--ink);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-family:var(--serif)}
.cc-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.casino-logo{object-fit:contain;max-height:44px;width:auto;background:#fff;border-radius:6px}
.cc-name{font-weight:700;font-family:var(--serif)}
.cc-facts{list-style:none;padding:0;margin:0 0 12px;font-size:.85rem}
.cc-facts li{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px dashed var(--line)}
.cc-facts li span{color:var(--muted)}
.cc-cta{margin-top:auto;display:block;text-align:center;background:var(--blue);color:#fff;font-weight:700;padding:10px;border-radius:9px;text-decoration:none}
.cc-cta:hover{background:var(--blue-dark);text-decoration:none}
.cc-note{font-size:.72rem;color:var(--muted);margin:8px 0 0}

/* comparison table */
.comparison{margin:24px 0}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--rad)}
.casino-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.92rem;background:var(--card)}
.casino-table th,.casino-table td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.casino-table thead th{background:var(--ink);color:#fff;font-family:var(--sans);font-size:.82rem;text-transform:uppercase;letter-spacing:.3px}
.casino-table .ct-name{display:flex;align-items:center;gap:9px;font-weight:600}
.casino-table .ct-rank{font-weight:700;color:var(--muted)}
.ct-cta{display:inline-block;background:var(--blue);color:#fff;padding:6px 12px;border-radius:7px;font-weight:600;font-size:.85rem}
.ct-cta:hover{background:var(--blue-dark);text-decoration:none}

/* eeat */
.eeat{margin:26px 0;padding:18px;background:var(--card);border:1px solid var(--line);border-radius:var(--rad)}
.author-box,.reviewer-box{display:flex;gap:14px;align-items:flex-start;padding:10px 0}
.reviewer-box{border-top:1px solid var(--line)}
.author-box img,.reviewer-box img{border-radius:50%;object-fit:cover;flex:none}
.ab-role{font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--blue-dark);font-weight:700}
.ab-name{font-weight:700;font-family:var(--serif);font-size:1.05rem}
.ab-title{font-size:.85rem;color:var(--muted);margin-bottom:4px}
.author-box p,.reviewer-box p{font-size:.9rem;margin:.3em 0}
.trust-wording{font-size:.85rem;color:var(--muted);border-top:1px solid var(--line);padding-top:10px;margin-top:8px}

/* RG block */
.rg-block{margin:24px 0;padding:18px;background:#F0F5F1;border:1px solid #CFE3D6;border-radius:var(--rad)}
.rg-block h2{margin-top:0;font-size:1.25rem}
.rg-block p{font-size:.95rem}

/* FAQ accordion */
.faq-accordion{margin:10px 0}
.faq-item{border:1px solid var(--line);border-radius:9px;margin:8px 0;background:var(--card)}
.faq-item summary{cursor:pointer;padding:12px 16px;font-weight:600;font-family:var(--serif);list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";float:right;color:var(--blue);font-weight:700}
.faq-item[open] summary::after{content:"–"}
.faq-item>div{padding:0 16px 14px;font-size:.95rem}

/* review page */
.review-head{display:flex;align-items:center;gap:14px;margin:12px 0}
.review-logo{background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px;object-fit:contain}
.review-facts{width:100%;border-collapse:collapse;margin:1em 0}
.review-facts th{width:38%;text-align:left;background:#F1EEE8;border:1px solid var(--line);padding:9px 11px;font-family:var(--sans);font-size:.9rem}
.review-facts td{border:1px solid var(--line);padding:9px 11px}

/* footer */
.site-footer{background:var(--ink);color:#C8D2DE;margin-top:50px;padding:40px 0 30px;font-size:.9rem}
.fcols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:26px}
.fcol h3{color:#fff;font-size:.95rem;margin:0 0 10px}
.fcol ul{list-style:none;padding:0;margin:0}
.fcol li{margin:6px 0}
.fcol a{color:#B7C2D0;font-size:.86rem}
.fcol a:hover{color:#fff}
.fdisc{border-top:1px solid #24344A;padding-top:20px;font-size:.82rem;color:#94A2B4}
.fbrand{display:flex;align-items:center;gap:8px;color:#fff}
.fbrand img{border-radius:6px}
.pay-disc{color:#7E8DA0}
.rg-foot{color:#B7C2D0}
.fdisc a{color:#9FC3DE}
.copy{color:#6C7B8E;font-size:.78rem;margin-top:12px}

/* responsive */
@media(max-width:820px){
  body{font-size:16px}
  h1{font-size:1.7rem}
  .ftt-grid{grid-template-columns:1fr}
  .fcols{grid-template-columns:1fr 1fr}
  .toc ol{columns:1}
  .mainnav{gap:12px;font-size:.85rem}
  .hd{flex-wrap:wrap}
}
@media(max-width:520px){
  .fcols{grid-template-columns:1fr}
  .topstrip{font-size:.72rem}
}
/* fix accidental token */
:root{--blue-d:#164A6E}
