:root{
  /* ---- Starzbet brand tokens (design card, accent-lock) ---- */
  --bom-bg:#051226;
  --bom-bg-deep:#01061A;
  --bom-surface:#151F2E;
  --bom-surface-2:#2C323A;
  --bom-surface-3:#353C45;
  --bom-border:#2A2E4A;
  --bom-text:#FFFFFF;
  --bom-text-soft:#CBD7E7;
  --bom-text-muted:#8C98A6;
  --bom-accent:#FF6C01;
  --bom-accent-deep:#FC4404;
  --bom-accent-text:#B62F08; /* accent for small text on light surfaces (>=4.5:1) */
  --bom-accent-ink:#01061A;
  /* aliases consumed by js/main.js (back-to-top button) */
  --accent:#FF6C01;
  --text-main:#01061A;
  --bom-blue:#0154FC;
  --bom-blue-deep:#011558;
  --bom-blue-soft:#4891FF;
  --bom-gold:#FF9E00;
  --bom-gold-light:#FFB83F;
  --bom-live:#5FDE7E;
  --bom-danger:#EF4444;

  /* THEME = light → page surfaces are light; header/footer rail stays dark (LOGO_TONE=light, hard rule) */
  --bom-page:#F2F5FA;
  --bom-page-alt:#E7ECF5;
  --bom-card:#FFFFFF;
  --bom-card-2:#F7F9FD;
  --bom-ink:#0B1424;
  --bom-ink-soft:#2E3D53;
  --bom-ink-muted:#5C6B80;
  --bom-line:#D3DCEA;
  --bom-line-soft:#E4EAF4;

  /* SHAPE = sharp */
  --bom-r:3px;
  --bom-r-card:4px;
  --bom-r-lg:4px;

  /* DENSITY = moderate — three reusable steps */
  --bom-s1:.65rem;
  --bom-s2:1.15rem;
  --bom-s3:2rem;
  --bom-sec-pad:clamp(2.6rem,5vw,4rem);

  /* nav-rail archetype */
  --bom-rail-w:252px;
  --bom-wrap:1120px;
  --bom-gutter:clamp(1rem,3vw,1.75rem);

  --bom-font-head:"Lexend","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --bom-font-body:"Lexend","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --bom-font-num:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;

  --bom-shadow:0 1px 2px rgba(11,20,36,.07),0 8px 24px rgba(11,20,36,.06);
  --bom-shadow-sm:0 1px 2px rgba(11,20,36,.08);
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--bom-page);
  color:var(--bom-ink);
  font-family:var(--bom-font-body);
  font-size:17px;
  line-height:1.65;
  font-weight:400;
  overflow-x:hidden;
  padding-inline-start:var(--bom-rail-w); /* nav-rail archetype reserves the side ON body */
}
img{max-width:100%}
a{color:#0B47C9;text-decoration:none}
a:hover{text-decoration:underline}
p{margin:0 0 var(--bom-s2)}
h1,h2,h3,h4{font-family:var(--bom-font-head);color:var(--bom-ink);margin:0 0 var(--bom-s2);line-height:1.18;font-weight:700;letter-spacing:-.015em}
h1{font-size:clamp(1.9rem,4.4vw,3rem);text-wrap:balance}
h2{font-size:clamp(1.45rem,2.8vw,2.05rem)}
h3{font-size:clamp(1.12rem,1.9vw,1.35rem);font-weight:600}
h4{font-size:1.02rem;font-weight:600}
ul,ol{margin:0 0 var(--bom-s2);padding-inline-start:1.35rem}
li{margin-bottom:.45rem}
strong{font-weight:600;color:var(--bom-ink)}
:focus-visible{outline:3px solid var(--bom-accent);outline-offset:2px}
::selection{background:var(--bom-accent);color:var(--bom-accent-ink)}

.bom-container{width:100%;max-width:var(--bom-wrap);margin-inline:auto;padding-inline:var(--bom-gutter)}
.bom-section{padding-block:var(--bom-sec-pad)}
.bom-section--alt{background:var(--bom-page-alt)}
.bom-section__intro{display:flex;flex-direction:column;gap:var(--bom-s1);margin-bottom:var(--bom-s3)}
.bom-section__intro>*{margin-bottom:0}
.bom-eyebrow{
  font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bom-accent-deep);margin:0 0 var(--bom-s1);display:block;
}
.bom-lead{font-size:1.08rem;color:var(--bom-ink-soft)}
.bom-muted{color:var(--bom-ink-muted)}
.bom-num{font-family:var(--bom-font-num);font-variant-numeric:tabular-nums;font-weight:600}
.bom-fine{font-size:.85rem;line-height:1.55;color:var(--bom-ink-muted)}
:where(main,section,article,div,li,p,td,th,dd,summary){overflow-wrap:anywhere}

/* ---------- ICONS ---------- */
.bom-icon{width:1.5em;height:1.5em;display:inline-block;vertical-align:middle;flex-shrink:0;stroke:currentColor;fill:none}
.bom-icon--lg{width:2rem;height:2rem}

/* ---------- BUTTONS ---------- */
.bom-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:var(--bom-font-head);font-size:.98rem;font-weight:700;line-height:1.2;
  padding:.82rem 1.5rem;border-radius:var(--bom-r);border:1px solid transparent;
  background:linear-gradient(90deg,var(--bom-accent-deep) 0%,var(--bom-accent) 100%);
  color:var(--bom-accent-ink);cursor:pointer;text-align:center;
  transition:filter .18s ease,transform .18s ease;text-decoration:none;
}
.bom-btn:hover{filter:brightness(1.08);text-decoration:none;color:var(--bom-accent-ink)}
.bom-btn:active{transform:translateY(1px)}
.bom-btn--wide{width:100%}
.bom-btn--lg{padding:1rem 1.9rem;font-size:1.05rem}
.bom-btn--ghost{
  background:transparent;border-color:var(--bom-line);color:var(--bom-ink);
}
.bom-btn--ghost:hover{border-color:var(--bom-accent);color:var(--bom-ink);filter:none}
.bom-btn--blue{
  background:linear-gradient(90deg,var(--bom-blue-deep) 0%,var(--bom-blue) 100%);color:#fff;
}
.bom-btn--blue:hover{color:#fff}
.bom-actions{display:flex;flex-wrap:wrap;gap:var(--bom-s2);align-items:center;margin-block:0}

/* ================= HEADER — nav-rail (vertical, dark; LOGO_TONE=light) ================= */
.bom-header{
  position:fixed;inset-block:0;inset-inline-start:0;width:var(--bom-rail-w);z-index:900;
  background:var(--bom-bg-deep);
  border-inline-end:1px solid var(--bom-border);
  display:flex;flex-direction:column;
  padding:1.5rem 1.15rem;gap:1.4rem;overflow-y:auto;
}
.bom-header__bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.bom-logo{display:inline-flex;align-items:center;text-decoration:none;flex:0 1 auto;min-width:0}
.bom-logo__img{display:block;height:40px;width:auto;object-fit:contain}
.bom-logo__mark{font-family:var(--bom-font-head);font-weight:700;font-size:1.25rem;color:var(--bom-text)}

.bom-burger{
  display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;
  width:44px;height:44px;flex-shrink:0;padding:0;
  background:transparent;border:1px solid var(--bom-border);border-radius:var(--bom-r);cursor:pointer;
}
.bom-burger span{display:block;width:22px;height:2px;background:var(--bom-text);transition:transform .2s ease,opacity .2s ease}
.bom-header.is-open .bom-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.bom-header.is-open .bom-burger span:nth-child(2){opacity:0}
.bom-header.is-open .bom-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.bom-nav{display:flex;flex-direction:column;gap:.15rem;flex:1 1 auto;min-width:0}
.bom-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}
.bom-nav li{margin:0;min-width:0}
.bom-nav a:not(.bom-btn){
  display:block;padding:.6rem .7rem;border-radius:var(--bom-r);
  font-family:var(--bom-font-head);font-size:.95rem;font-weight:500;
  color:var(--bom-text-soft);text-decoration:none;
  border-inline-start:2px solid transparent;transition:color .16s ease,background .16s ease,border-color .16s ease;
}
.bom-nav a:not(.bom-btn):hover,
.bom-nav a:not(.bom-btn):focus-visible{
  color:var(--bom-text);background:var(--bom-surface);border-inline-start-color:var(--bom-accent);text-decoration:none;
}
.bom-nav a:not(.bom-btn)[aria-current="page"]:not(.bom-btn){color:var(--bom-accent);border-inline-start-color:var(--bom-accent)}
.bom-nav__label{
  font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--bom-text-muted);padding:.2rem .7rem;margin-top:.4rem;
}
.bom-rail__foot{display:flex;flex-direction:column;gap:.7rem;margin-top:auto;padding-top:1.1rem;border-top:1px solid var(--bom-border)}
.bom-rail__note{font-size:.74rem;line-height:1.5;color:var(--bom-text-muted);margin:0}
.bom-rail__age{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;flex-shrink:0;border-radius:var(--bom-r);
  border:1px solid var(--bom-accent);color:var(--bom-accent);
  font-family:var(--bom-font-num);font-size:.78rem;font-weight:700;
}
.bom-header__cta{width:100%}
.bom-nav>.bom-btn{display:none} /* desktop: hide nav copy (none rendered, rule kept per contract) */

@media (max-width:959px){
  body{padding-inline-start:0}
  .bom-header{
    position:sticky;top:0;inset-inline:0;width:auto;height:auto;
    flex-direction:column;padding:.6rem var(--bom-gutter);gap:0;overflow:visible;
    border-inline-end:0;border-bottom:1px solid var(--bom-border);
  }
  .bom-header__bar{width:100%}
  .bom-logo__img{height:34px;max-width:min(45vw,160px)}
  .bom-burger{display:flex}
  .bom-nav{display:none;flex:0 0 auto;width:100%;padding:.6rem 0 .9rem;gap:.1rem}
  .bom-header.is-open .bom-nav{display:flex}
  .bom-header__cta{display:none}
  .bom-nav>.bom-btn{display:block;width:100%}
  .bom-rail__foot{display:none}
  .bom-header.is-open .bom-rail__foot{display:flex;margin-top:0}
}

/* ---------- BREADCRUMB ---------- */
.bom-breadcrumb{font-size:.8rem;margin:0 0 var(--bom-s1)}
.bom-breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0}
.bom-breadcrumb li{margin:0;color:var(--bom-ink-muted)}
.bom-breadcrumb li+li::before{content:"/";margin-inline-end:.35rem;color:var(--bom-line)}
.bom-breadcrumb a{color:var(--bom-ink-muted)}
.bom-breadcrumb a:hover{color:var(--bom-accent-deep)}

/* ================= HERO ================= */
.bom-hero{position:relative;background:var(--bom-bg)}
.bom-hero__inner{
  position:relative;z-index:1;
  display:flex;flex-direction:column;gap:var(--bom-s2);
  width:100%;max-width:var(--bom-wrap);margin-inline:auto;
  padding-block:var(--bom-s3);
  padding-inline:max(var(--bom-gutter),calc((100% - var(--bom-wrap))/2 + var(--bom-gutter)));
}
.bom-hero__inner>*{margin-bottom:0}
.bom-hero__img{
  display:block;width:100%;height:auto;max-height:70vh;
  aspect-ratio:3/2;object-fit:cover;border-radius:var(--bom-r-card);
}

/* HERO_PATTERN = overlay — homepage only */
.bom-hero--home{
  min-height:clamp(420px,60vh,620px);
  display:flex;align-items:center;overflow:hidden;
  background:linear-gradient(120deg,var(--bom-bg-deep) 0%,var(--bom-bg) 55%,#0B2A52 100%);
}
.bom-hero--home .bom-hero__img{
  position:absolute;inset:0;width:100%;height:100%;max-height:none;
  aspect-ratio:auto;object-fit:cover;object-position:center right;border-radius:0;z-index:0;
}
.bom-hero--home::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(1,6,26,.94) 0%,rgba(1,6,26,.88) 32%,rgba(1,6,26,.6) 62%,rgba(1,6,26,.24) 100%);
}
.bom-hero--home .bom-hero__inner{
  z-index:1;max-width:var(--bom-wrap);padding-block:clamp(2.4rem,6vw,4rem);gap:var(--bom-s2);
}
.bom-hero--home .bom-hero__text{display:flex;flex-direction:column;gap:var(--bom-s2);max-width:min(600px,100%)}
.bom-hero--home .bom-hero__text>*{margin-bottom:0}
.bom-hero--home h1,.bom-hero--home h2{color:var(--bom-text)}
.bom-hero--home h1{text-wrap:balance}
.bom-hero--home p{color:var(--bom-text-soft)}
.bom-hero--home .bom-eyebrow{color:var(--bom-gold-light)}
.bom-hero--home .bom-breadcrumb li,.bom-hero--home .bom-breadcrumb a{color:var(--bom-text-muted)}
.bom-hero--home .bom-fine{color:var(--bom-text-muted)}
.bom-hero__highlights{
  display:flex;flex-wrap:wrap;gap:var(--bom-s2);list-style:none;margin:0;padding:0;
}
.bom-hero__highlights li{
  margin:0;min-width:0;display:flex;flex-direction:column;gap:.15rem;
  padding-inline-start:.8rem;border-inline-start:2px solid var(--bom-accent);
}
.bom-hero__highlights b{font-family:var(--bom-font-num);font-size:1.3rem;color:var(--bom-gold);font-weight:700}
.bom-hero__highlights span{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--bom-text-muted)}

/* bom-hero--inner — compact page header band */
.bom-hero--inner{
  position:relative;overflow:hidden;
  background:linear-gradient(110deg,var(--bom-bg-deep) 0%,var(--bom-bg) 70%,#0A2447 100%);
  border-bottom:1px solid var(--bom-border);
}
.bom-hero--inner .bom-hero__inner{
  min-height:180px;display:flex;flex-direction:column;justify-content:center;gap:var(--bom-s1);
  padding-block:clamp(1.6rem,3.5vw,2.4rem);
}
.bom-hero--inner .bom-hero__img{
  position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;
  object-fit:cover;border-radius:0;z-index:0;
}
.bom-hero--inner .bom-hero__inner::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,rgba(1,6,26,.93) 0%,rgba(1,6,26,.8) 55%,rgba(1,6,26,.55) 100%);
}
:where(.bom-hero--inner .bom-hero__inner>:not(.bom-hero__img)){position:relative;z-index:2}
.bom-hero--inner h1{color:var(--bom-text);margin:0;text-wrap:balance;font-size:clamp(1.65rem,3.4vw,2.4rem)}
.bom-hero--inner p{color:var(--bom-text-soft);margin:0}
.bom-hero--inner .bom-eyebrow{color:var(--bom-gold-light);margin:0}
.bom-hero--inner .bom-breadcrumb{margin:0}
.bom-hero--inner .bom-breadcrumb li,.bom-hero--inner .bom-breadcrumb a{color:var(--bom-text-muted)}
.bom-hero--inner .bom-breadcrumb a:hover{color:var(--bom-accent)}

/* page-header (no-image variant used by legal pages) */
.bom-page-header{
  position:relative;overflow:hidden;background:var(--bom-bg-deep);border-bottom:1px solid var(--bom-border);
}
.bom-page-header .bom-container{
  position:relative;z-index:2;
  min-height:170px;display:flex;flex-direction:column;justify-content:center;gap:var(--bom-s1);
  padding-block:clamp(1.5rem,3.4vw,2.2rem);
}
.bom-page-header h1{color:var(--bom-text);margin:0}
.bom-page-header p{color:var(--bom-text-soft);margin:0}
.bom-page-header .bom-eyebrow{color:var(--bom-gold-light);margin:0}
.bom-page-header .bom-breadcrumb{margin:0}
.bom-page-header .bom-breadcrumb li,.bom-page-header .bom-breadcrumb a{color:var(--bom-text-muted)}
.bom-page-header .bom-hero__img{
  position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;
  object-fit:cover;border-radius:0;z-index:0;
}

/* ---------- OVERVIEW ---------- */
.bom-overview__body>*:last-child{margin-bottom:0}
.bom-overview__body h3{margin-top:var(--bom-s3)}

/* ---------- TOC ---------- */
.bom-toc{
  background:var(--bom-card);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
  padding:var(--bom-s2) var(--bom-s2) calc(var(--bom-s2) - .4rem);box-shadow:var(--bom-shadow-sm);
}
.bom-toc__title{font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--bom-ink-muted);margin:0 0 var(--bom-s1)}
.bom-toc ul{list-style:none;margin:0;padding:0;display:grid;gap:.15rem var(--bom-s2);grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.bom-toc li{margin:0;min-width:0}
.bom-toc a{display:block;padding:.4rem 0;color:var(--bom-ink-soft);font-size:.95rem;border-bottom:1px solid var(--bom-line-soft)}
.bom-toc a:hover{color:var(--bom-accent-deep)}

/* ---------- FEATURE CARDS — FEATURES_PATTERN = icon-rows ---------- */
.bom-features{display:flex;flex-direction:column;gap:0}
.bom-feature{
  display:flex;align-items:flex-start;gap:var(--bom-s2);
  padding-block:var(--bom-s2);border-bottom:1px solid var(--bom-line);min-width:0;
}
.bom-features>.bom-feature:first-child{padding-top:0}
.bom-features>.bom-feature:last-child{border-bottom:0;padding-bottom:0}
.bom-feature__icon{
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  width:54px;height:54px;border-radius:var(--bom-r);
  background:var(--bom-bg-deep);color:var(--bom-accent);
}
.bom-feature__icon .bom-icon{width:1.6rem;height:1.6rem}
.bom-feature__body{min-width:0;display:flex;flex-direction:column;gap:.35rem}
.bom-feature__body>*{margin-bottom:0}
.bom-feature__body h3{font-size:1.05rem;margin:0}
.bom-feature__body p{color:var(--bom-ink-soft);font-size:.97rem}
@media (max-width:480px){
  .bom-feature__icon{width:44px;height:44px}
  .bom-feature__icon .bom-icon{width:1.3rem;height:1.3rem}
}

/* ---------- CARDS GRID ---------- */
.bom-cards{display:grid;gap:var(--bom-s2);grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}
.bom-card{
  min-width:0;display:flex;flex-direction:column;gap:var(--bom-s1);
  background:var(--bom-card);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
  padding:var(--bom-s2);box-shadow:var(--bom-shadow-sm);
}
.bom-card>*{margin-bottom:0}
.bom-card h3{margin:0;font-size:1.05rem}
.bom-card p{color:var(--bom-ink-soft);font-size:.96rem}
.bom-card__tag{
  align-self:flex-start;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--bom-accent-ink);background:var(--bom-gold-light);padding:.18rem .5rem;border-radius:var(--bom-r);
}
.bom-card__value{font-family:var(--bom-font-num);font-size:1.5rem;font-weight:700;color:var(--bom-accent-deep)}
.bom-card--accent{border-top:3px solid var(--bom-accent)}

/* ---------- CATEGORIES BAR ---------- */
.bom-pills{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}
.bom-pills li{margin:0;min-width:0}
.bom-pills a,.bom-pill{
  display:inline-block;padding:.42rem .85rem;border-radius:var(--bom-r);
  border:1px solid var(--bom-line);background:var(--bom-card);
  font-size:.88rem;font-weight:500;color:var(--bom-ink-soft);text-decoration:none;
}
.bom-pills a:hover{border-color:var(--bom-accent);color:var(--bom-ink);text-decoration:none}
.bom-pill--on{background:var(--bom-bg-deep);border-color:var(--bom-bg-deep);color:var(--bom-text)}

/* ---------- TABLES (data-table, bonus-table, payments-table) ---------- */
.bom-table-wrap{overflow-x:auto;max-width:100%;margin-block:1.5rem;border:1px solid var(--bom-line);border-radius:var(--bom-r-card);background:var(--bom-card)}
.bom-table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:520px}
.bom-table caption{caption-side:top;text-align:start;padding:var(--bom-s2) var(--bom-s2) .6rem;font-size:.85rem;color:var(--bom-ink-muted)}
.bom-table th,.bom-table td{padding:.8rem var(--bom-s2);text-align:start;border-bottom:1px solid var(--bom-line-soft);vertical-align:top}
.bom-table thead th{
  white-space:nowrap;background:var(--bom-bg-deep);color:var(--bom-text);
  font-family:var(--bom-font-head);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  border-bottom:0;
}
.bom-table tbody tr:last-child td{border-bottom:0}
.bom-table tbody tr:nth-child(even){background:var(--bom-card-2)}
.bom-table td b,.bom-table td strong{color:var(--bom-ink)}
.bom-table .bom-num{color:var(--bom-accent-deep)}
.bom-table--bonus td:first-child{font-weight:600}
.bom-payments td:first-child{white-space:nowrap}
.bom-payments__name{display:flex;align-items:center;gap:.6rem;min-width:0}
.bom-payments__name .bom-icon{color:var(--bom-blue)}

/* ---------- TWO COLS + CONTENT PANEL ---------- */
.bom-twocols{display:grid;gap:var(--bom-s3);grid-template-columns:1fr;align-items:start}
.bom-twocols>*{min-width:0}
@media (min-width:900px){.bom-twocols{grid-template-columns:1.35fr .9fr}}
.bom-twocols__main>*:last-child{margin-bottom:0}

.bom-panel{
  background:var(--bom-card);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
  padding:var(--bom-s2);box-shadow:var(--bom-shadow);
  display:flex;flex-direction:column;gap:var(--bom-s2);
}
.bom-panel>*{margin-bottom:0}
.bom-panel__title{
  font-family:var(--bom-font-head);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--bom-ink-muted);margin:0;padding-bottom:.6rem;border-bottom:1px solid var(--bom-line);
}
.bom-panel--dark{background:var(--bom-bg-deep);border-color:var(--bom-border);color:var(--bom-text-soft)}
.bom-panel--dark .bom-panel__title{color:var(--bom-text-muted);border-color:var(--bom-border)}
.bom-panel--dark .bom-facts__row{border-color:var(--bom-border)}
.bom-panel--dark .bom-facts dt{color:var(--bom-text-muted)}
.bom-panel--dark .bom-facts dd{color:var(--bom-text)}

.bom-facts{margin:0;display:flex;flex-direction:column}
.bom-facts__row{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem var(--bom-s2);
  padding-block:.6rem;border-bottom:1px solid var(--bom-line-soft);
}
.bom-facts__row:last-child{border-bottom:0;padding-bottom:0}
.bom-facts dt{font-size:.85rem;color:var(--bom-ink-muted);margin:0;min-width:0}
.bom-facts dd{margin:0;font-weight:600;font-size:.92rem;text-align:end;min-width:0}

.bom-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}
.bom-checklist li{display:flex;align-items:flex-start;gap:.6rem;margin:0;min-width:0;font-size:.95rem;color:var(--bom-ink-soft)}
.bom-checklist .bom-icon{color:var(--bom-accent-deep);margin-top:.12rem}
.bom-panel--dark .bom-checklist li{color:var(--bom-text-soft)}
.bom-panel--dark .bom-checklist .bom-icon{color:var(--bom-accent)}

.bom-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:.6rem}
.bom-tile{
  min-width:0;background:var(--bom-card-2);border:1px solid var(--bom-line-soft);border-radius:var(--bom-r);
  padding:.8rem;display:flex;flex-direction:column;gap:.2rem;
}
.bom-tile b{font-family:var(--bom-font-num);font-size:1.25rem;color:var(--bom-accent-deep);font-weight:700}
.bom-tile span{font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:var(--bom-ink-muted)}

.bom-score{display:flex;align-items:center;gap:var(--bom-s2);min-width:0}
.bom-score__value{font-family:var(--bom-font-num);font-size:2.4rem;font-weight:700;color:var(--bom-accent-deep);line-height:1}
.bom-score__meta{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.bom-score__stars{display:flex;gap:.1rem;color:var(--bom-gold)}
.bom-score__stars .bom-icon{width:1.1rem;height:1.1rem;fill:currentColor;stroke:none}
.bom-score__label{font-size:.82rem;color:var(--bom-ink-muted)}

/* ---------- NUMBERED LIST ---------- */
.bom-steps{list-style:none;counter-reset:bomstep;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--bom-s2)}
.bom-steps>li{
  counter-increment:bomstep;position:relative;margin:0;min-width:0;
  padding-inline-start:3.1rem;padding-block:.15rem;
}
.bom-steps>li::before{
  content:counter(bomstep,decimal-leading-zero);
  position:absolute;inset-inline-start:0;top:0;
  width:2.3rem;height:2.3rem;display:flex;align-items:center;justify-content:center;
  font-family:var(--bom-font-num);font-size:.85rem;font-weight:700;
  color:var(--bom-accent-ink);background:var(--bom-accent);border-radius:var(--bom-r);
}
.bom-steps h3{margin:0 0 .3rem;font-size:1.02rem}
.bom-steps p{margin:0;color:var(--bom-ink-soft);font-size:.96rem}
.bom-steps>li+li{border-top:1px solid var(--bom-line-soft);padding-top:var(--bom-s2)}
.bom-steps>li+li::before{top:var(--bom-s2)}

/* ---------- STATS BAR — STATS_PATTERN = tiles ---------- */
.bom-stats{display:grid;gap:var(--bom-s2);grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr))}
.bom-stat{
  min-width:0;display:flex;flex-direction:column;gap:.3rem;
  background:var(--bom-card);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
  padding:var(--bom-s2);box-shadow:var(--bom-shadow-sm);
}
.bom-stat__value{font-family:var(--bom-font-num);font-size:clamp(1.55rem,3vw,2.05rem);font-weight:700;color:var(--bom-accent-deep);line-height:1.1}
.bom-stat__label{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--bom-ink-muted)}
.bom-stat__note{font-size:.82rem;color:var(--bom-ink-muted)}

/* ---------- PROS & CONS ---------- */
.bom-proscons{display:grid;gap:var(--bom-s2);grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.bom-proscons>*{min-width:0}
.bom-pros,.bom-cons{
  background:var(--bom-card);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
  padding:var(--bom-s2);display:flex;flex-direction:column;gap:var(--bom-s1);box-shadow:var(--bom-shadow-sm);
}
.bom-pros{border-top:3px solid var(--bom-live)}
.bom-cons{border-top:3px solid var(--bom-danger)}
.bom-pros h3,.bom-cons h3{margin:0;font-size:1rem;letter-spacing:.04em;text-transform:uppercase}
.bom-pros ul,.bom-cons ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}
.bom-pros li,.bom-cons li{display:flex;align-items:flex-start;gap:.6rem;margin:0;min-width:0;font-size:.95rem;color:var(--bom-ink-soft)}
.bom-pros .bom-icon{color:#11924A}
.bom-cons .bom-icon{color:var(--bom-danger)}

/* ---------- VERDICT BOX ---------- */
.bom-verdict{
  background:var(--bom-bg-deep);color:var(--bom-text-soft);
  border:1px solid var(--bom-border);border-inline-start:4px solid var(--bom-accent);
  border-radius:var(--bom-r-card);padding:var(--bom-s3);
  display:flex;flex-direction:column;gap:var(--bom-s2);
}
.bom-verdict>*{margin-bottom:0}
.bom-verdict h2,.bom-verdict h3{color:var(--bom-text);margin:0}
.bom-verdict .bom-eyebrow{color:var(--bom-gold-light);margin:0}
.bom-verdict p{color:var(--bom-text-soft)}
.bom-verdict a{color:var(--bom-blue-soft)}
.bom-verdict .bom-fine{color:var(--bom-text-muted)}

/* ---------- METHODOLOGY ---------- */
.bom-method{
  background:var(--bom-card-2);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
  padding:var(--bom-s3);display:flex;flex-direction:column;gap:var(--bom-s2);
}
.bom-method>*{margin-bottom:0}
.bom-method ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}
.bom-method li{display:flex;gap:.6rem;align-items:flex-start;margin:0;min-width:0;font-size:.95rem;color:var(--bom-ink-soft)}
.bom-method .bom-icon{color:var(--bom-blue)}
.bom-method__meta{font-size:.84rem;color:var(--bom-ink-muted)}

/* ---------- QUICK FACTS (section-level) ---------- */
.bom-quickfacts{
  background:var(--bom-card);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
  box-shadow:var(--bom-shadow-sm);padding:var(--bom-s2);
  display:grid;gap:0 var(--bom-s3);grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
}
.bom-quickfacts .bom-facts__row{min-width:0}

/* ---------- RTP / GAME GRID ---------- */
.bom-rtp{display:grid;gap:clamp(.6rem,1.5vw,1rem);grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:640px){.bom-rtp{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:960px){.bom-rtp{grid-template-columns:repeat(4,minmax(0,1fr))}}
.bom-rtp-item{
  position:relative;overflow:hidden;min-width:0;
  background:var(--bom-card);border:1px solid var(--bom-line);border-radius:var(--bom-r-card);
}
.bom-rtp-item__thumb{
  display:block;aspect-ratio:3/2;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--bom-bg-deep) 0%,var(--bom-blue-deep) 60%,var(--bom-accent-deep) 100%);
}
.bom-rtp-item__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.bom-rtp-item__name{
  display:block;padding:.55rem .65rem;font-size:.86rem;font-weight:600;line-height:1.3;
  color:var(--bom-ink);overflow-wrap:anywhere;
}
.bom-rtp-tooltip{
  position:absolute;bottom:0;inset-inline:0;opacity:0;transition:opacity .2s;
  background:rgba(1,6,26,.92);color:var(--bom-text);
  padding:.5rem .65rem;font-size:.8rem;line-height:1.4;
}
.bom-rtp-tooltip b{color:var(--bom-gold);font-family:var(--bom-font-num)}
.bom-rtp-item:hover .bom-rtp-tooltip,
.bom-rtp-item:focus-within .bom-rtp-tooltip{opacity:1}

/* ---------- FAQ — FAQ_PATTERN = two-col ---------- */
.bom-faq{display:grid;gap:0 var(--bom-s3);grid-template-columns:1fr;align-items:start}
@media (min-width:860px){.bom-faq{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bom-faq details{min-width:0;border-bottom:1px solid var(--bom-line)}
.bom-faq summary{cursor:pointer;padding:1rem 0;font-weight:600;list-style:none;display:block}
.bom-faq summary::-webkit-details-marker{display:none}
.bom-faq summary::before{content:'+';margin-right:.5rem;color:var(--bom-accent-deep);font-weight:700;transition:transform .2s}
.bom-faq details[open] summary::before{content:'−'}
.bom-faq details>:not(summary){padding:.5rem 0 1rem;color:var(--bom-ink-soft);font-size:.96rem}
.bom-faq details>:not(summary):last-child{margin-bottom:0}
summary{cursor:pointer;padding:1rem 0;font-weight:600;list-style:none}
summary::before{content:'+';margin-right:.5rem;transition:transform .2s}
details[open] summary::before{content:'−'}
details>:not(summary){padding:.5rem 0 1rem}

/* ---------- LEGAL BODY ---------- */
.bom-legal{counter-reset:bomlegal;max-width:100%}
.bom-legal h2{
  counter-increment:bomlegal;margin-top:var(--bom-s3);font-size:1.25rem;
  padding-bottom:.5rem;border-bottom:1px solid var(--bom-line);
}
.bom-legal h2::before{
  content:counter(bomlegal) ". ";color:var(--bom-accent-deep);font-family:var(--bom-font-num);
}
.bom-legal>h2:first-child{margin-top:0}
.bom-legal h3{margin-top:var(--bom-s2);font-size:1.02rem}
.bom-legal p,.bom-legal li{color:var(--bom-ink-soft);font-size:.97rem}
.bom-legal__meta{font-size:.85rem;color:var(--bom-ink-muted);margin-bottom:var(--bom-s3)}

/* ---------- CTA BLOCK ---------- */
.bom-cta{
  background:linear-gradient(115deg,var(--bom-bg-deep) 0%,var(--bom-bg) 58%,#0B2A52 100%);
  padding-block:var(--bom-sec-pad);
  border-block:1px solid var(--bom-border);
}
.bom-cta__inner{display:flex;flex-direction:column;gap:var(--bom-s2);align-items:flex-start;text-align:start}
.bom-cta__inner>*{margin-bottom:0}
.bom-cta h2{color:var(--bom-text);margin:0}
.bom-cta p{color:var(--bom-text-soft);margin:0;max-width:100%}
.bom-cta .bom-eyebrow{color:var(--bom-gold-light);margin:0}
.bom-cta .bom-fine{color:var(--bom-text-muted)}
.bom-cta .bom-actions{justify-content:flex-start}
.bom-cta--center .bom-cta__inner{align-items:center;text-align:center}
.bom-cta--center .bom-actions{justify-content:center}

/* ---------- STICKY NAV (mobile) ---------- */
.bom-sticky-nav{display:none}
@media (max-width:767px){
  .bom-sticky-nav{
    display:flex;position:fixed;inset-inline:0;bottom:0;z-index:850;
    background:var(--bom-bg-deep);border-top:1px solid var(--bom-border);
    padding:.4rem .3rem;justify-content:space-around;gap:.2rem;
  }
  .bom-sticky-nav a{
    display:flex;flex-direction:column;align-items:center;gap:.15rem;min-width:0;flex:1 1 0;
    padding:.35rem .2rem;font-size:.68rem;color:var(--bom-text-soft);text-align:center;text-decoration:none;
  }
  .bom-sticky-nav a .bom-icon{width:1.25rem;height:1.25rem}
  .bom-sticky-nav a.is-cta{color:var(--bom-accent)}
  body:has(.bom-sticky-nav){padding-bottom:66px}
}

/* ---------- CHAT WIDGET ---------- */
.bom-chat-btn{
  position:fixed;inset-inline-end:1rem;bottom:1rem;z-index:880;
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.7rem 1.05rem;border:0;border-radius:var(--bom-r);cursor:pointer;
  background:linear-gradient(90deg,var(--bom-accent-deep),var(--bom-accent));
  color:var(--bom-accent-ink);font-family:var(--bom-font-head);font-weight:700;font-size:.9rem;
  box-shadow:0 6px 20px rgba(1,6,26,.28);
}
@media (max-width:767px){.bom-chat-btn{bottom:74px}}
.bom-chat{
  display:none;position:fixed;inset:0;z-index:960;
  background:rgba(1,6,26,.72);padding:1rem;
  align-items:center;justify-content:center;
}
.bom-chat.is-open{display:flex}
.bom-chat__dialog{
  width:min(420px,100%);background:var(--bom-card);border:1px solid var(--bom-line);
  border-radius:var(--bom-r-card);padding:var(--bom-s3);
  display:flex;flex-direction:column;gap:var(--bom-s2);box-shadow:var(--bom-shadow);
}
.bom-chat__dialog>*{margin-bottom:0}
.bom-chat__dialog h3{margin:0}
.bom-chat__close{
  align-self:flex-end;background:transparent;border:1px solid var(--bom-line);border-radius:var(--bom-r);
  width:34px;height:34px;cursor:pointer;color:var(--bom-ink-muted);font-size:1.1rem;line-height:1;
}

/* ================= FOOTER ================= */
.bom-footer{
  background:var(--bom-bg-deep);color:var(--bom-text-soft);
  border-top:1px solid var(--bom-border);
  padding-block:var(--bom-sec-pad) var(--bom-s3);
  font-size:.93rem;
}
.bom-footer__grid{
  display:grid;gap:var(--bom-s3);grid-template-columns:1fr;align-items:start;
}
.bom-footer__grid>*{min-width:0}
@media (min-width:760px){.bom-footer__grid{grid-template-columns:1.4fr 1fr 1fr}}
.bom-footer__brand{display:flex;flex-direction:column;gap:var(--bom-s2)}
.bom-footer__brand>*{margin-bottom:0}
.bom-footer__about{color:var(--bom-text-muted);font-size:.9rem;line-height:1.6;margin:0}
.bom-footer h3{
  font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bom-text-muted);margin:0 0 var(--bom-s2);
}
.bom-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}
.bom-footer li{margin:0;min-width:0}
.bom-footer a{color:var(--bom-text-soft);text-decoration:none}
.bom-footer a:hover{color:var(--bom-accent);text-decoration:none}
.bom-footer__age{
  display:flex;align-items:center;gap:.7rem;
}
.bom-footer__age .bom-rail__age{color:var(--bom-accent);border-color:var(--bom-accent)}
.bom-footer__age span{font-size:.85rem;color:var(--bom-text-muted)}
.bom-footer__disclaimer{
  margin-top:var(--bom-s3);padding-top:var(--bom-s2);
  border-top:1px solid var(--bom-border);
  display:flex;flex-direction:column;gap:var(--bom-s1);
}
.bom-footer__disclaimer p{margin:0;font-size:.83rem;line-height:1.6;color:var(--bom-text-muted)}
.bom-footer__bottom{
  margin-top:var(--bom-s2);padding-top:var(--bom-s2);border-top:1px solid var(--bom-border);
  display:flex;flex-wrap:wrap;gap:var(--bom-s1) var(--bom-s2);align-items:center;justify-content:space-between;
}
.bom-footer__bottom p{margin:0;font-size:.82rem;color:var(--bom-text-muted)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
/* sa-responsive-net */
table th{white-space:nowrap}
figure,blockquote,dl,dd,fieldset{margin:0}
/* sa-logo-chip */
.bom-footer .bom-logo__img{filter:none;background:transparent;padding:0}
.bom-footer .bom-footer__logo-chip{background:transparent;padding:0}
/* sa-logo-fit */
.bom-logo__img{object-fit:contain}
/* sa-ph-media */
.bom-page-header:has(.bom-hero__img){position:relative;overflow:hidden;isolation:isolate;min-height:clamp(200px,30vh,300px);display:flex;flex-direction:column;justify-content:center}
.bom-page-header:has(.bom-hero__img) .bom-hero__img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;margin:0;z-index:0}
.bom-page-header:has(.bom-hero__img)::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,12,18,.72),rgba(10,12,18,.5))}
:where(.bom-page-header:has(.bom-hero__img)>:not(.bom-hero__img)){position:relative}
.bom-page-header:has(.bom-hero__img)>:not(.bom-hero__img){z-index:2}
.bom-page-header:has(.bom-hero__img),.bom-page-header:has(.bom-hero__img) h1,.bom-page-header:has(.bom-hero__img) a,.bom-page-header:has(.bom-hero__img) p,.bom-page-header:has(.bom-hero__img) li,.bom-page-header:has(.bom-hero__img) span{color:#fff}
/* sa-hero-media */
.bom-hero:has(>.bom-hero__img){position:relative;isolation:isolate}
.bom-hero:has(>.bom-hero__img)>.bom-hero__img{z-index:0}
.bom-hero:has(>.bom-hero__img)::after{z-index:1}
:where(.bom-hero:has(>.bom-hero__img)>:not(.bom-hero__img)){position:relative}
.bom-hero:has(>.bom-hero__img)>:not(.bom-hero__img){z-index:2}
/* sa-rhythm v3 */
:where(.bom-table-wrap){margin-block:1.5rem}
:where(main) :where(ul,ol,table,.bom-table-wrap)+p{margin-block-start:1rem}
main :is(ul,ol,table,.bom-table-wrap,.bom-rtp,.bom-steps,.bom-cards,.bom-features)+:is(.bom-actions,div:has(>.bom-btn),p:has(>.bom-btn)){margin-block-start:1.25rem}
/* sa-table-thead */
.bom-table-wrap thead th,.bom-table-wrap thead{position:static}
/* sa-slot-link v2 */
.bom-rtp-item,.bom-rtp-item:hover,.bom-rtp-item:focus{color:inherit;text-decoration:none;cursor:pointer}
:where(.bom-rtp-item){display:block}
/* sa-rtp-touch */
.bom-rtp-item__thumb{display:block}
@media (hover:none){.bom-rtp-item__thumb{aspect-ratio:auto;overflow:visible}.bom-rtp-item__thumb img{height:auto}.bom-rtp-tooltip{position:static;opacity:1;background:transparent;border-top:0;padding:.4rem .7rem 0;font-size:.74rem;line-height:1.35}.bom-rtp-item__name{padding-top:.35rem}}
/* sa-icon-on-fill */
.bom-btn--blue .bom-icon{color:inherit}
/* sa-sticky-pad */

/* ================= audit fixes ================= */
/* fix-1: ghost CTA on dark sections was ink-on-ink (invisible) */
:is(.bom-hero--home,.bom-hero--inner,.bom-page-header,.bom-cta) .bom-btn--ghost{
  color:var(--bom-text);border-color:rgba(255,255,255,.45);
}
:is(.bom-hero--home,.bom-hero--inner,.bom-page-header,.bom-cta) .bom-btn--ghost:hover{
  color:var(--bom-text);border-color:var(--bom-accent);
}

/* fix-2: .bom-verdict a colour was overriding the filled button label */
.bom-verdict a.bom-btn{color:var(--bom-accent-ink)}

/* fix-3: icon lists were flex → an inline <a> split the text into columns */
:is(.bom-pros,.bom-cons,.bom-checklist,.bom-method) li{
  display:block;position:relative;padding-inline-start:2.1rem;
}
:is(.bom-pros,.bom-cons,.bom-checklist,.bom-method) li>.bom-icon{
  position:absolute;inset-inline-start:0;top:.2em;margin-top:0;
}

/* fix-5: inner-hero image/overlay were clipped to the 1120px content wrapper */
.bom-hero--inner .bom-hero__inner{position:static}

/* fix-6: mobile tables — first column collapsed and broke words letter by letter */
.bom-table td,.bom-table th{overflow-wrap:break-word}
.bom-table td:first-child{min-width:7.5rem}

/* fix-7: table caption stayed off-screen; no hint that the table scrolls */
.bom-table caption{position:sticky;inset-inline-start:0;box-sizing:border-box;max-width:calc(100vw - 2*var(--bom-gutter))}
.bom-table-wrap{
  background-image:
    linear-gradient(to right,var(--bom-card) 40%,rgba(255,255,255,0)),
    linear-gradient(to left,var(--bom-card) 40%,rgba(255,255,255,0)),
    linear-gradient(to right,rgba(11,20,36,.16),rgba(11,20,36,0)),
    linear-gradient(to left,rgba(11,20,36,.16),rgba(11,20,36,0));
  background-position:left center,right center,left center,right center;
  background-repeat:no-repeat;
  background-size:28px 100%,28px 100%,14px 100%,14px 100%;
  background-attachment:local,local,scroll,scroll;
}

/* fix-8: nav group labels were 10.9px */
.bom-nav__label{font-size:.78rem;letter-spacing:.12em}

/* fix-9: touch targets below 44px */
.bom-pills a,.bom-pill{padding:.6rem 1rem}
.bom-toc a{padding:.55rem 0}
.bom-footer ul{gap:.3rem}
.bom-footer li a{display:inline-block;padding-block:.45rem}

/* fix-10: fact rows — right-aligned multi-line values on narrow screens */
@media (max-width:560px){
  .bom-facts__row{flex-direction:column;align-items:flex-start;gap:.15rem}
  .bom-facts dd{text-align:start}
}

/* fix-11: FAQ question wrapped under its own "+" marker */
.bom-faq summary{display:flex;align-items:baseline;gap:0}

/* fix-12: desktop line length was ~130 characters */
.bom-overview__body,.bom-legal,.bom-section__intro p,.bom-twocols__main>p,
.bom-method>p,.bom-verdict p,.bom-cta p,.bom-section>.bom-container>p{max-width:74ch}

/* fix-13: small accent text (eyebrow, table numbers, FAQ marker) was ~3.2:1 */
.bom-eyebrow{color:var(--bom-accent-text)}
.bom-table .bom-num{color:var(--bom-accent-text)}
.bom-faq summary::before{color:var(--bom-accent-text)}
.bom-toc a:hover{color:var(--bom-accent-text)}

/* fix-14: links inside dark panels were #0B47C9 on near-black */
.bom-panel--dark a{color:var(--bom-blue-soft)}

/* fix-15: fine print sat glued to the right of the button */
.bom-actions{align-items:flex-start}
.bom-actions>.bom-fine{flex:1 1 100%;margin-top:0}
/* inside .bom-verdict the actions row is a stretched flex item — a percentage
   flex-basis does not break the line there, so lay it out as a block */
.bom-verdict .bom-actions{display:block}
.bom-verdict .bom-actions>.bom-fine{margin-top:.75rem}

/* fix-17: keep the header CTA reachable on mobile without opening the burger */
@media (max-width:959px){
  .bom-rail__foot{
    display:flex;position:absolute;top:50%;transform:translateY(-50%);
    inset-inline-end:calc(var(--bom-gutter) + 52px);
    width:auto;margin:0;padding:0;border-top:0;
  }
  .bom-rail__foot .bom-footer__age{display:none}
  .bom-header__cta{display:inline-flex;width:auto;min-height:44px;padding:.55rem .9rem;font-size:.85rem}
  .bom-header.is-open .bom-rail__foot{
    position:static;transform:none;width:100%;margin-top:.4rem;padding-top:.8rem;
    border-top:1px solid var(--bom-border);
  }
  .bom-header.is-open .bom-rail__foot .bom-footer__age{display:flex}
  .bom-header.is-open .bom-header__cta{width:100%;padding:.82rem 1.5rem;font-size:.98rem}
}
@media (max-width:420px){
  .bom-logo__img{max-width:min(32vw,120px)}
  .bom-header__cta{padding:.5rem .7rem;font-size:.8rem}
}

/* fix-18: rhythm — text/headings after a component block had no top margin
   (e.g. .bom-cards + p.bom-fine on /guvenilir-mi/, .bom-rtp + p.bom-fine on /) */
main :is(.bom-cards,.bom-rtp,.bom-features,.bom-steps,.bom-stats,.bom-tiles,
         .bom-proscons,.bom-quickfacts,.bom-faq,.bom-toc,.bom-twocols,.bom-pills,
         .bom-checklist,.bom-facts,.bom-panel)+:is(p,ul,ol,dl,h2,h3,h4,figure,.bom-panel,.bom-method){
  margin-block-start:var(--bom-s2);
}

/* rework-1: slot showcase — card grid is unreadable on phones, switch to rows */
@media (max-width:639px){
  .bom-rtp{grid-template-columns:1fr;gap:.55rem}
  .bom-rtp-item{
    display:grid;grid-template-columns:108px 1fr;column-gap:.85rem;
    align-items:center;padding:.5rem;overflow:hidden;
  }
  .bom-rtp-item__thumb{
    grid-column:1;grid-row:1/span 2;aspect-ratio:3/2;overflow:hidden;
    border-radius:var(--bom-r);
  }
  .bom-rtp-item__thumb img{width:100%;height:100%;object-fit:cover}
  .bom-rtp-item__name{
    grid-column:2;grid-row:1;align-self:end;padding:0;
    font-size:.92rem;line-height:1.25;
  }
  .bom-rtp-tooltip{
    grid-column:2;grid-row:2;align-self:start;position:static;opacity:1;
    background:transparent;color:var(--bom-ink-muted);
    padding:.2rem 0 0;font-size:.76rem;line-height:1.35;
  }
  .bom-rtp-tooltip b{color:var(--bom-accent-text)}
}
@media (max-width:400px){
  .bom-rtp-item{grid-template-columns:88px 1fr;column-gap:.65rem;padding:.45rem}
  .bom-rtp-item__name{font-size:.88rem}
  .bom-rtp-tooltip{font-size:.72rem}
}

/* rework-2: content cards — flat white boxes got an accent bar, a title rule,
   a dark tag chip and a hover lift */
.bom-card{
  position:relative;overflow:hidden;padding-top:calc(var(--bom-s2) + 3px);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.bom-card::before{
  content:"";position:absolute;inset-inline:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--bom-accent-deep),var(--bom-gold));
}
.bom-card--accent{border-top:1px solid var(--bom-line)}
.bom-card--accent::before{height:5px}
.bom-card p{padding-top:.6rem;border-top:1px solid var(--bom-line-soft)}
.bom-card__tag{background:var(--bom-bg-deep);color:var(--bom-gold-light)}
.bom-card:hover{transform:translateY(-2px);box-shadow:var(--bom-shadow);border-color:var(--bom-accent)}
@media (prefers-reduced-motion:reduce){.bom-card:hover{transform:none}}
/* tag / title / body line up across a row of cards (every card is tag+h3+p) */
@supports (grid-template-rows:subgrid){
  .bom-card{
    display:grid;grid-template-rows:subgrid;grid-row:span 3;
    row-gap:var(--bom-s1);align-content:start;
  }
  .bom-card__tag{justify-self:start;align-self:start}
}

/* ================= visual accents ================= */
/* accent-1: in-page section nav in the rail (list is injected by js/main.js) */
.bom-rail__toc{list-style:none;margin:0 0 .2rem;padding:0;display:flex;flex-direction:column;gap:.1rem}
.bom-rail__toc li{margin:0;min-width:0}
.bom-rail__toc a{
  display:block;padding:.3rem .7rem;border-inline-start:2px solid var(--bom-border);
  font-family:var(--bom-font-head);font-size:.84rem;line-height:1.35;
  color:var(--bom-text-muted);text-decoration:none;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  transition:color .16s ease,border-color .16s ease,background .16s ease;
}
.bom-rail__toc a:hover,.bom-rail__toc a:focus-visible{
  color:var(--bom-text-soft);border-inline-start-color:var(--bom-text-muted);text-decoration:none;
}
.bom-rail__toc a.is-current{
  color:var(--bom-accent);border-inline-start-color:var(--bom-accent);
  background:linear-gradient(90deg,rgba(255,108,1,.14),rgba(255,108,1,0));
}
@media (max-width:959px){
  /* two classes so it beats `.bom-nav ul` — the burger menu stays short */
  .bom-nav .bom-rail__toc,.bom-nav .bom-rail__toc-label{display:none}
}
/* the CTA stays visible while a long rail scrolls */
@media (min-width:960px){
  .bom-rail__foot{
    position:sticky;bottom:-1.5rem;background:var(--bom-bg-deep);
    padding-bottom:1.5rem;box-shadow:0 -14px 18px -14px rgba(0,0,0,.95);
  }
}

/* accent-2: reading progress (progressive enhancement — no bar where unsupported) */
@supports (animation-timeline:scroll()){
  body::after{
    content:"";position:fixed;z-index:940;pointer-events:none;
    inset-block:0;inset-inline-start:calc(var(--bom-rail-w) - 3px);width:3px;
    background:linear-gradient(180deg,var(--bom-accent),var(--bom-gold));
    transform:scaleY(0);transform-origin:top;
    animation:bom-progress-y linear both;animation-timeline:scroll(root block);
  }
  @media (max-width:959px){
    body::after{
      inset:0 0 auto 0;width:auto;height:3px;
      background:linear-gradient(90deg,var(--bom-accent),var(--bom-gold));
      transform:scaleX(0);transform-origin:left;animation-name:bom-progress-x;
    }
  }
}
@keyframes bom-progress-y{to{transform:scaleY(1)}}
@keyframes bom-progress-x{to{transform:scaleX(1)}}

/* accent-3: current page in the rail reads as a plate, not just a tick */
.bom-nav a:not(.bom-btn)[aria-current="page"]:not(.bom-btn){
  background:linear-gradient(90deg,rgba(255,108,1,.16),rgba(255,108,1,0));font-weight:600;
}

/* accent-4: kicker rule in front of every section eyebrow */
.bom-eyebrow::before{
  content:"";display:inline-block;width:1.5rem;height:2px;vertical-align:middle;
  margin-inline-end:.55rem;margin-block-end:.15rem;background:currentColor;opacity:.75;
}

/* accent-5: table rows respond to the pointer (long bonus/VIP tables) */
.bom-table tbody tr{transition:background .15s ease}
.bom-table tbody tr:hover{background:rgba(255,108,1,.06)}
/* inset shadow, not a border — the column keeps its width, nothing shifts */
.bom-table tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--bom-accent)}

/* accent-6: buttons lift like the cards do */
.bom-btn{transition:filter .18s ease,transform .18s ease,box-shadow .18s ease}
.bom-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(252,68,4,.26)}
.bom-btn--ghost:hover{box-shadow:none}
.bom-btn:active{transform:translateY(1px);box-shadow:none}
@media (prefers-reduced-motion:reduce){.bom-btn:hover{transform:none}}

/* accent-7: FAQ rows become cards when opened; the "+" turns into a "×" */
.bom-faq details{
  padding-inline:.85rem;margin-inline:-.85rem;border-radius:var(--bom-r-card);
  border:1px solid transparent;border-bottom-color:var(--bom-line);
  transition:background .18s ease,border-color .18s ease;
}
.bom-faq details[open]{
  background:var(--bom-card);border-color:var(--bom-line);box-shadow:var(--bom-shadow-sm);
}
.bom-faq summary:hover{color:var(--bom-accent-text)}
.bom-faq summary::before{display:inline-block;transition:transform .2s ease}
.bom-faq details[open] summary::before{content:'+';transform:rotate(45deg)}

/* accent-8: stat tiles get an accent edge and a louder number */
.bom-stat{position:relative;overflow:hidden;padding-inline-start:calc(var(--bom-s2) + 4px)}
.bom-stat::before{
  content:"";position:absolute;inset-block:0;inset-inline-start:0;width:4px;
  background:linear-gradient(180deg,var(--bom-accent),var(--bom-gold));
}
.bom-stat__value{font-size:clamp(1.65rem,3.1vw,2.2rem)}

/* accent-9: glow behind the closing CTA + a coloured seam into the footer */
.bom-cta{position:relative;isolation:isolate;overflow:hidden}
.bom-cta::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  inset-inline-start:-8%;top:-45%;width:55%;height:190%;
  background:radial-gradient(closest-side,rgba(255,108,1,.2),rgba(255,108,1,0) 70%);
}
.bom-footer{position:relative}
.bom-footer::before{
  content:"";position:absolute;top:0;inset-inline:0;height:2px;
  background:linear-gradient(90deg,var(--bom-accent-deep),var(--bom-gold) 45%,var(--bom-blue) 100%);
}
