/* ============================================================
   Millioner Casino — nuit monégasque
   namespace: mil-  ·  lang: fr  ·  theme: tinted (navy-tint)
   archetype: cards  ·  hero: image-first  ·  features: icon-rows
   stats: tiles  ·  faq: two-col  ·  shape: rounded  ·  density: moderate
   ============================================================ */

@font-face{font-family:'Playfair Display';src:local('Playfair Display'),local('PlayfairDisplay-Bold');font-weight:700;font-display:swap}

:root{
  /* --- surfaces (tinted navy base) --- */
  --bg:#050B14;
  --bg-tint:#081322;            /* page tint between the card panels */
  --surface:#0A1728;
  --bg-card:#0A1728;
  --surface-2:#12223A;
  --bar:#040911;                /* header / footer bar — DARK (logo tone light) */
  --border:rgba(214,160,84,.22);
  --border-soft:rgba(175,200,235,.14);

  /* --- type --- */
  --text:#D7E4F5;
  --text-soft:#AFC8EB;
  --text-muted:#88ADE1;

  /* --- accents --- */
  --accent:#D6A054;
  --accent-ice:#AFC8EB;
  --cta-gradient:linear-gradient(180deg,#F9F0E5 0%,#D6A054 100%);
  --cta-text:#050B14;
  --vip-panel:linear-gradient(180deg,#960C27 0%,#610828 100%);
  --hot:#E76A88;
  --positive:#7FC03D;

  /* --- fonts --- */
  --font-head:'Playfair Display','Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;
  --font-body:Inter,'Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
  --font-util:'DIN Alternate',Inter,system-ui,sans-serif;

  /* --- geometry (SHAPE = rounded) --- */
  --r-card:16px;
  --r-panel:14px;
  --r-small:10px;
  --r-pill:9999px;

  /* --- rhythm (DENSITY = moderate): 3 steps --- */
  --gap-xs:.6rem;
  --gap-sm:1rem;
  --gap-md:1.6rem;
  --gap-lg:2.4rem;
  --pad-sec:clamp(2.2rem,4.5vw,3.4rem);
  --pad-card:clamp(1.25rem,2.6vw,2rem);

  /* --- width (cards archetype → tighter band) --- */
  --wrap:1120px;
  --gutter:1.25rem;
}

*{box-sizing:border-box}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}
}

body{
  margin:0;
  overflow-x:hidden;
  background:
    radial-gradient(1200px 520px at 50% -10%,rgba(214,160,84,.10),transparent 70%),
    linear-gradient(180deg,var(--bg) 0%,var(--bg-tint) 38%,var(--bg) 100%);
  background-color:var(--bg);
  color:var(--text);
  font-family:var(--font-body);
  font-weight:400;
  font-size:1rem;
  line-height:1.65;
  overflow-wrap:break-word;
  hyphens:manual;
}
/* hyphenation only where the column is genuinely narrow */
@media (max-width:767px){body{hyphens:auto}}

img{max-width:100%}

h1,h2,h3,h4{font-family:var(--font-head);font-weight:700;line-height:1.14;margin:0;letter-spacing:-.01em}
h1{font-size:clamp(2rem,4.6vw,3.15rem);text-wrap:balance}
h2{font-size:clamp(1.5rem,2.9vw,2.15rem);text-wrap:balance}
h3{font-size:clamp(1.15rem,1.9vw,1.4rem)}
h4{font-size:1.05rem}
p{margin:0}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
strong,b{color:var(--text);font-weight:600}
small{font-size:.82rem}

:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

/* ============ CONTAINER — sole owner of page width ============ */
.mil-container{
  width:100%;
  max-width:var(--wrap);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.mil-container > *{min-width:0}

/* ============ ARCHETYPE: CARDS — every section is a panel ============ */
main{
  display:block;
  padding-block:var(--gap-md) var(--gap-lg);
}
.mil-section{
  position:relative;
  margin-block:var(--gap-md);
  padding-block:var(--pad-sec);
  background:var(--surface);
  border:1px solid var(--border-soft);
  border-radius:var(--r-card);
  box-shadow:0 18px 44px -28px rgba(0,0,0,.9);
}
.mil-section--alt{
  background:linear-gradient(180deg,#0C1B2E 0%,var(--surface) 100%);
  border-color:var(--border);
}
.mil-section--flat{background:none;border:0;box-shadow:none;padding-block:var(--gap-sm)}
.mil-section > .mil-container{max-width:var(--wrap)}

/* the panel stack lives inside one centred rail */
main > .mil-section,
main > .mil-hero{
  width:min(100% - (var(--gutter) * 2),var(--wrap));
  margin-inline:auto;
}
main > .mil-section > .mil-container,
main > .mil-hero > .mil-container{max-width:100%;padding-inline:clamp(1rem,3vw,2.2rem)}

/* section intro — stacked group with a real gap */
.mil-sec-head{display:flex;flex-direction:column;gap:var(--gap-xs);margin-bottom:var(--gap-md)}
.mil-eyebrow{
  font-family:var(--font-util);
  font-size:.74rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--accent);
}
.mil-lead{color:var(--text-soft);font-size:1.05rem}
.mil-muted{color:var(--text-muted);font-size:.9rem}
.mil-stack{display:flex;flex-direction:column;gap:var(--gap-sm)}
.mil-stack > *{min-width:0}
.mil-prose{display:flex;flex-direction:column;gap:var(--gap-sm);color:var(--text-soft)}
.mil-prose h3{color:var(--text);margin-top:var(--gap-xs)}
.mil-prose ul,.mil-prose ol{margin:0;padding-inline-start:1.2rem;display:flex;flex-direction:column;gap:.45rem}

/* ============ BUTTONS (pill — official) ============ */
.mil-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-family:var(--font-body);
  font-weight:600;
  font-size:.92rem;
  letter-spacing:.07em;
  text-transform:uppercase;
  padding:.85rem 1.7rem;
  border:0;
  border-radius:var(--r-pill);
  background:var(--cta-gradient);
  color:var(--cta-text);
  cursor:pointer;
  text-align:center;
  box-shadow:0 10px 26px -14px rgba(214,160,84,.75);
  transition:transform .18s ease,box-shadow .18s ease;
}
.mil-btn:hover{transform:translateY(-2px);box-shadow:0 16px 32px -14px rgba(214,160,84,.9);text-decoration:none;color:var(--cta-text)}
.mil-btn--ghost{
  background:transparent;
  color:var(--accent);
  border:1px solid var(--border);
  box-shadow:none;
}
.mil-btn--ghost:hover{background:rgba(214,160,84,.1);color:var(--accent)}
.mil-btn--sm{padding:.6rem 1.15rem;font-size:.78rem}
.mil-btn--block{width:100%}
.mil-actions{display:flex;flex-wrap:wrap;gap:var(--gap-sm);align-items:center}
/* a CTA row must read as an action, not as the next paragraph */
.mil-prose > .mil-actions,.mil-stack > .mil-actions,.mil-overview > .mil-actions{margin-block-start:.8rem}

/* ============ HEADER (bar is DARK — logo tone is light) ============ */
.mil-header{
  position:sticky;top:0;z-index:900;
  background:rgba(4,9,17,.94);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.mil-header__bar{
  width:100%;max-width:var(--wrap);margin-inline:auto;
  padding:.7rem var(--gutter);
  display:flex;align-items:center;gap:clamp(.6rem,2vw,1.8rem);
}
.mil-header__bar > *{min-width:0}
.mil-logo{display:inline-flex;align-items:center;flex-shrink:0;line-height:0}
.mil-logo:hover{text-decoration:none}
.mil-logo__img{
  display:block;
  height:40px;
  width:auto;
  object-fit:contain;
}
.mil-header__cta{flex-shrink:0}

/* nav */
.mil-nav{display:flex;align-items:center;gap:clamp(.4rem,1.4vw,1.25rem);margin-inline-start:auto}
.mil-nav__list{display:flex;align-items:center;gap:clamp(.3rem,1.2vw,1rem);list-style:none;margin:0;padding:0}
.mil-nav a:not(.mil-btn){
  display:block;
  font-size:.9rem;
  font-weight:500;
  color:var(--text-soft);
  padding:.45rem .55rem;
  border-radius:var(--r-small);
  white-space:nowrap;
}
.mil-nav a:not(.mil-btn):hover,
.mil-nav a:not(.mil-btn)[aria-current="page"]{color:var(--accent);text-decoration:none}
.mil-nav > .mil-btn{display:none}

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

@media (max-width:959px){
  .mil-burger{display:flex}
  .mil-logo__img{height:34px;max-width:min(45vw,180px);height:auto}
  .mil-nav{
    display:none;
    position:absolute;left:0;right:0;top:100%;
    flex-direction:column;align-items:stretch;
    gap:.2rem;
    margin:0;
    padding:var(--gap-sm) var(--gutter) var(--gap-md);
    background:#040911;
    border-bottom:1px solid var(--border);
    box-shadow:0 24px 40px -22px rgba(0,0,0,.95);
    max-height:calc(100dvh - 68px);
    overflow-y:auto;
  }
  .mil-header.is-open .mil-nav{display:flex}
  .mil-nav__list{flex-direction:column;align-items:stretch;gap:.1rem;width:100%}
  .mil-nav a:not(.mil-btn){padding:.75rem .25rem;font-size:1rem;border-bottom:1px solid var(--border-soft)}
  .mil-header__cta{padding:.6rem 1rem;font-size:.76rem;min-height:44px}
  .mil-nav > .mil-btn{display:block;width:100%;margin-top:var(--gap-sm)}
}
@media (max-width:479px){
  .mil-header__cta{display:none}
  .mil-header__bar{gap:.5rem;padding-inline:.9rem}
  .mil-logo__img{max-width:min(45vw,150px)}
}

/* ============ HERO — base (both roles) ============ */
.mil-hero{position:relative;overflow:hidden}
.mil-hero__inner{display:flex;flex-direction:column;gap:var(--gap-sm)}
.mil-hero h1{color:var(--text);text-wrap:balance}
.mil-hero__sub{color:var(--text-soft);font-size:clamp(1rem,1.5vw,1.15rem)}
.mil-hero__img{
  display:block;width:100%;height:auto;
  max-height:70vh;
  aspect-ratio:3/2;
  object-fit:cover;
  border-radius:var(--r-card);
}
.mil-hero__visual{
  position:relative;
  border-radius:var(--r-card);
  overflow:hidden;
  background:linear-gradient(150deg,#12223A 0%,#0A1728 55%,rgba(214,160,84,.28) 100%);
  aspect-ratio:3/2;
  border:1px solid var(--border);
}

/* --- HOME hero: IMAGE-FIRST (centred column, visual on top) --- */
.mil-hero--home{
  margin-block:var(--gap-md) var(--gap-md);
  padding-block:clamp(1.4rem,3vw,2.2rem) var(--pad-sec);
  background:
    radial-gradient(900px 340px at 50% 0%,rgba(214,160,84,.18),transparent 72%),
    linear-gradient(180deg,#0C1B2E 0%,var(--surface) 100%);
  border:1px solid var(--border);
  border-radius:var(--r-card);
  box-shadow:0 26px 60px -34px rgba(0,0,0,.95);
}
.mil-hero--home .mil-hero__inner{
  display:flex;flex-direction:column;align-items:center;
  text-align:center;
  gap:var(--gap-md);
}
.mil-hero--home .mil-hero__visual,
.mil-hero--home .mil-hero__img{order:-1;width:100%}
.mil-hero--home .mil-hero__img{max-height:60vh;border-radius:var(--r-panel)}
.mil-hero--home .mil-hero__copy{display:flex;flex-direction:column;align-items:center;gap:var(--gap-sm);max-width:100%}
.mil-hero--home .mil-actions{justify-content:center}
.mil-hero--home .mil-hero__fine{color:var(--text-muted);font-size:.85rem}

/* gold offer plaque — the signature element */
.mil-offer{
  display:flex;flex-direction:column;gap:.55rem;align-items:center;
  width:min(100%,640px);
  padding:var(--pad-card);
  border-radius:var(--r-card);
  background:linear-gradient(180deg,rgba(249,240,229,.1) 0%,rgba(214,160,84,.08) 100%);
  border:1px solid var(--accent);
  box-shadow:inset 0 0 0 1px rgba(249,240,229,.14),0 20px 44px -28px rgba(214,160,84,.6);
}
.mil-offer__badge{
  display:inline-block;
  font-family:var(--font-util);
  font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--cta-text);
  background:var(--cta-gradient);
  padding:.32rem .8rem;border-radius:var(--r-pill);
}
.mil-offer__value{
  font-family:var(--font-head);
  font-size:clamp(1.6rem,4.2vw,2.6rem);
  line-height:1.1;
  color:var(--accent);
  text-wrap:balance;
}
.mil-offer__note{color:var(--text-soft);font-size:.9rem}
.mil-offer__fine{color:var(--text-muted);font-size:.8rem}

/* --- INNER hero: compact page-header band --- */
.mil-hero--inner{
  position:relative;isolation:isolate;
  margin-block:0 var(--gap-md);
  min-height:180px;
  display:flex;align-items:center;
  padding-block:var(--gap-md);
  padding-inline:clamp(1rem,3vw,2.2rem);
  background:linear-gradient(110deg,#0A1728 0%,#12223A 60%,rgba(214,160,84,.16) 100%);
  border:1px solid var(--border);
  border-radius:var(--r-card);
}
.mil-hero--inner .mil-hero__inner{
  width:100%;
  gap:var(--gap-xs);
  align-items:flex-start;
  text-align:start;
}
.mil-hero--inner .mil-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;
}
.mil-hero--inner:has(.mil-hero__img)::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,rgba(5,11,20,.92) 0%,rgba(5,11,20,.86) 55%,rgba(5,11,20,.8) 100%);
  pointer-events:none;
}
:where(.mil-hero--inner .mil-hero__inner > :not(.mil-hero__img)){position:relative;z-index:2}
.mil-hero--inner h1{font-size:clamp(1.6rem,3.4vw,2.4rem)}
.mil-hero--inner .mil-hero__sub{max-width:none}
@media (min-width:960px){.mil-hero--inner{min-height:210px}}

/* ============ PAGE-HEADER (legal / no-image variant) ============ */
.mil-page-header{
  position:relative;overflow:hidden;
  margin-block:0 var(--gap-md);
  padding-block:var(--gap-md);
  padding-inline:max(var(--gutter),calc((100% - var(--wrap))/2 + var(--gutter)));
  background:linear-gradient(110deg,#0A1728 0%,#12223A 100%);
  border-block-end:1px solid var(--border);
  border-radius:0 0 var(--r-card) var(--r-card);
}
.mil-page-header__inner{position:relative;display:flex;flex-direction:column;gap:var(--gap-xs)}
.mil-page-header h1{font-size:clamp(1.55rem,3.2vw,2.2rem)}

/* breadcrumb */
.mil-breadcrumb{font-size:.8rem;color:var(--text-muted)}
.mil-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;list-style:none;margin:0;padding:0}
.mil-breadcrumb li{display:flex;align-items:center}
.mil-breadcrumb li+li::before{content:"/";margin-inline-end:.4rem;color:var(--border);color:rgba(214,160,84,.5)}
.mil-breadcrumb a{color:var(--text-muted);display:inline-block;padding-block:.7rem}
.mil-breadcrumb a:hover{color:var(--accent)}

/* ============ ICONS ============ */
.mil-icon{
  width:1.5em;height:1.5em;
  display:inline-block;vertical-align:middle;flex-shrink:0;
  color:var(--accent);
  stroke:currentColor;fill:none;
}
.mil-icon--lg{width:1.9em;height:1.9em}

/* ============ STATS-BAR — pattern: TILES ============ */
.mil-stats{
  display:grid;
  gap:var(--gap-sm);
  grid-template-columns:repeat(auto-fit,minmax(min(165px,100%),1fr));
}
.mil-stats > *{min-width:0}
.mil-stat{
  display:flex;flex-direction:column;gap:.3rem;
  padding:var(--pad-card);
  background:var(--surface-2);
  border:1px solid var(--border-soft);
  border-radius:var(--r-panel);
}
.mil-stat__value{
  font-family:var(--font-head);
  font-size:clamp(1.5rem,3vw,2.05rem);
  line-height:1.05;
  color:var(--accent);
}
.mil-stat__label{
  font-family:var(--font-util);
  font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--text-muted);
}

/* ============ FEATURE-CARDS — pattern: ICON-ROWS ============ */
.mil-features{display:flex;flex-direction:column;gap:0}
.mil-features > *{min-width:0}
.mil-feature{
  display:flex;align-items:flex-start;
  gap:clamp(.8rem,2.2vw,1.4rem);
  padding-block:var(--gap-md);
  border-block-end:1px solid var(--border-soft);
}
.mil-feature:last-child{border-block-end:0;padding-block-end:0}
.mil-feature:first-child{padding-block-start:0}
.mil-feature__icon{
  flex-shrink:0;
  width:clamp(44px,11vw,56px);height:clamp(44px,11vw,56px);
  display:flex;align-items:center;justify-content:center;
  border-radius:var(--r-panel);
  background:linear-gradient(180deg,rgba(249,240,229,.12) 0%,rgba(214,160,84,.14) 100%);
  border:1px solid var(--border);
  color:var(--accent);
}
.mil-feature__icon .mil-icon{width:1.6em;height:1.6em}
.mil-feature__body{display:flex;flex-direction:column;gap:.4rem;min-width:0}
.mil-feature__title{font-family:var(--font-head);font-size:clamp(1.05rem,2vw,1.3rem);color:var(--text)}
.mil-feature__text{color:var(--text-soft);font-size:.95rem}

/* ============ CARDS-GRID ============ */
.mil-cards{
  display:grid;gap:var(--gap-sm);
  grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));
}
.mil-cards > *{min-width:0}
/* 4 cards: 2×2 instead of a 3+1 orphan row */
@media (min-width:860px){.mil-cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mil-card{
  display:flex;flex-direction:column;gap:.55rem;
  padding:var(--pad-card);
  background:var(--surface-2);
  border:1px solid var(--border-soft);
  border-radius:var(--r-panel);
  transition:border-color .2s ease,transform .2s ease;
}
.mil-card:hover{border-color:var(--border);transform:translateY(-2px)}
.mil-card__title{font-family:var(--font-head);font-size:1.15rem;color:var(--text)}
.mil-card__text{color:var(--text-soft);font-size:.93rem}
.mil-card__meta{
  font-family:var(--font-util);font-size:.73rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--accent);
}
.mil-card--vip{
  background:var(--vip-panel);
  border-color:rgba(255,255,255,.2);
  color:#fff;
}
.mil-card--vip .mil-card__title,.mil-card--vip .mil-card__text{color:#fff}
.mil-card--vip .mil-card__meta{color:#FBE2E8}
.mil-card--vip .mil-icon{color:#fff}

/* ============ DATA-TABLE / BONUS-TABLE / PAYMENTS-TABLE ============ */
.mil-table-wrap{overflow-x:auto;width:fit-content;max-width:100%;margin-block:1.5rem;border:1px solid var(--border-soft);border-radius:var(--r-panel)}
/* the horizontal scroll must be visible, not guessed */
.mil-table-wrap{scrollbar-width:thin;scrollbar-color:var(--accent) rgba(214,160,84,.12)}
.mil-table-wrap::-webkit-scrollbar{height:6px}
.mil-table-wrap::-webkit-scrollbar-track{background:rgba(214,160,84,.12)}
.mil-table-wrap::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}
.mil-table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:520px;background:var(--surface-2)}
.mil-table caption{
  caption-side:top;text-align:start;padding:.9rem var(--pad-card);
  font-family:var(--font-util);font-size:.74rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--accent);
}
.mil-table th,.mil-table td{padding:.8rem 1rem;text-align:start;border-block-end:1px solid var(--border-soft);vertical-align:top}
.mil-table thead th{
  white-space:nowrap;
  font-family:var(--font-util);
  font-size:.76rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--accent);
  background:rgba(5,11,20,.6);
}
.mil-table tbody th{
  font-family:var(--font-body);
  font-size:.92rem;font-weight:600;letter-spacing:normal;text-transform:none;
  white-space:normal;
  color:var(--text);
}
.mil-table td{color:var(--text-soft)}
.mil-table tbody tr:last-child th,.mil-table tbody tr:last-child td{border-block-end:0}
.mil-table tbody tr:hover td{background:rgba(214,160,84,.05)}
.mil-table__num{font-family:var(--font-util);color:var(--text);white-space:nowrap}
.mil-table__pay{display:flex;align-items:center;gap:.55rem;color:var(--text);font-weight:500}
.mil-table__pay .mil-icon{width:1.3em;height:1.3em}

/* ============ TWO-COLS + CONTENT PANEL ============ */
.mil-two{display:grid;gap:var(--gap-md);grid-template-columns:1fr}
.mil-two > *{min-width:0}
@media (min-width:860px){.mil-two{grid-template-columns:1.25fr .85fr;align-items:start}}

.mil-panel{
  display:flex;flex-direction:column;gap:var(--gap-sm);
  padding:var(--pad-card);
  background:var(--surface-2);
  border:1px solid var(--border);
  border-radius:var(--r-panel);
  box-shadow:0 16px 36px -26px rgba(0,0,0,.9);
}
.mil-panel__title{
  font-family:var(--font-util);
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--accent);
}
.mil-panel--sticky{position:static}
@media (min-width:960px){.mil-panel--sticky{position:sticky;top:92px}}

/* quick-facts dl */
.mil-facts{display:flex;flex-direction:column;gap:0;margin:0}
.mil-facts__row{
  display:flex;flex-wrap:wrap;gap:.3rem 1rem;justify-content:space-between;align-items:baseline;
  padding-block:.65rem;
  border-block-end:1px solid var(--border-soft);
}
.mil-facts__row:last-child{border-block-end:0}
.mil-facts dt,.mil-facts__label{color:var(--text-muted);font-size:.84rem;margin:0}
.mil-facts dd,.mil-facts__value{margin:0;color:var(--text);font-weight:500;font-size:.92rem;text-align:end}

/* quick-facts as a standalone section block */
.mil-quickfacts{
  display:grid;gap:var(--gap-sm);
  grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));
}
.mil-quickfacts > *{min-width:0}
/* 6 tiles: 3×2 instead of a 4+2 orphan row */
@media (min-width:860px){.mil-quickfacts{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* checklist */
.mil-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}
.mil-checklist li{display:flex;align-items:flex-start;gap:.6rem;color:var(--text-soft);font-size:.93rem}
.mil-checklist .mil-icon{width:1.2em;height:1.2em;margin-top:.22em;color:var(--positive)}
.mil-checklist--warn .mil-icon{color:var(--hot)}

/* mini stat tiles inside a panel */
.mil-minitiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:.6rem}
.mil-minitile{
  display:flex;flex-direction:column;gap:.15rem;
  padding:.8rem;
  background:var(--surface);
  border:1px solid var(--border-soft);
  border-radius:var(--r-small);
}
.mil-minitile__value{font-family:var(--font-head);font-size:1.05rem;color:var(--accent);line-height:1.25}
.mil-minitile__label{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}

/* rating badge */
.mil-score{display:flex;flex-direction:column;gap:.35rem;align-items:flex-start}
.mil-score__value{font-family:var(--font-head);font-size:2.4rem;line-height:1;color:var(--accent)}
.mil-score__stars{display:flex;gap:.2rem;color:var(--accent)}
.mil-score__stars .mil-icon{width:1.1em;height:1.1em;fill:currentColor}
.mil-score__label{color:var(--text-muted);font-size:.82rem}

/* ============ NUMBERED-LIST (CSS counters) ============ */
.mil-steps{list-style:none;counter-reset:milstep;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--gap-sm)}
.mil-steps > li{
  counter-increment:milstep;
  position:relative;
  padding:var(--pad-card);
  padding-inline-start:calc(var(--pad-card) + 3.1rem);
  background:var(--surface-2);
  border:1px solid var(--border-soft);
  border-radius:var(--r-panel);
  min-width:0;
}
.mil-steps > li::before{
  content:counter(milstep,decimal-leading-zero);
  position:absolute;
  inset-inline-start:var(--pad-card);
  top:var(--pad-card);
  font-family:var(--font-head);
  font-size:1.35rem;
  line-height:1;
  color:var(--accent);
  width:2.2rem;
}
.mil-steps__title{display:block;font-weight:600;color:var(--text);margin-bottom:.3rem}
.mil-steps > li > p{color:var(--text-soft);font-size:.94rem}
/* narrow screens: the counter sits ABOVE the copy instead of stealing 3.1rem of it */
@media (max-width:479px){
  .mil-steps > li{padding-inline-start:var(--pad-card);padding-block-start:calc(var(--pad-card) + 1.7rem)}
}

/* ============ CATEGORIES-BAR (pills) ============ */
.mil-pills{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;margin:0;padding:0}
.mil-pills > *{min-width:0}
.mil-pill{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.45rem 1rem;
  border-radius:var(--r-pill);
  border:1px solid var(--border);
  background:rgba(214,160,84,.07);
  color:var(--text-soft);
  font-size:.85rem;
  white-space:nowrap;
}
a.mil-pill:hover{background:rgba(214,160,84,.16);color:var(--accent);text-decoration:none}
/* non-interactive chips must not read as buttons */
span.mil-pill:not(.mil-pill--hot){border-color:var(--border-soft);background:rgba(175,200,235,.05);color:var(--text-muted)}
.mil-pill__count{font-family:var(--font-util);color:var(--accent);font-size:.8rem}
.mil-pill--hot{border-color:var(--hot);color:var(--hot);background:rgba(231,106,136,.08)}

/* ============ PROS-CONS ============ */
.mil-proscons{display:grid;gap:var(--gap-sm);grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.mil-proscons > *{min-width:0}
.mil-pc{
  display:flex;flex-direction:column;gap:.7rem;
  padding:var(--pad-card);
  background:var(--surface-2);
  border:1px solid var(--border-soft);
  border-radius:var(--r-panel);
}
.mil-pc__title{
  display:flex;align-items:center;gap:.5rem;
  font-family:var(--font-util);
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
}
.mil-pc--pro{border-block-start:2px solid var(--positive)}
.mil-pc--con{border-block-start:2px solid var(--hot)}
.mil-pc--pro .mil-pc__title{color:var(--positive)}
.mil-pc--con .mil-pc__title{color:var(--hot)}
.mil-pc ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}
.mil-pc li{display:flex;align-items:flex-start;gap:.55rem;color:var(--text-soft);font-size:.93rem}
.mil-pc li .mil-icon{width:1.15em;height:1.15em;margin-top:.22em}
.mil-pc--pro li .mil-icon{color:var(--positive)}
.mil-pc--con li .mil-icon{color:var(--hot)}

/* ============ VERDICT-BOX ============ */
.mil-verdict{
  display:flex;flex-direction:column;gap:var(--gap-sm);
  padding:var(--pad-card);
  background:linear-gradient(180deg,rgba(214,160,84,.1) 0%,rgba(10,23,40,.9) 100%);
  border:1px solid var(--accent);
  border-radius:var(--r-card);
}
.mil-verdict__title{font-family:var(--font-head);font-size:1.3rem;color:var(--accent)}
.mil-verdict p{color:var(--text-soft)}
.mil-verdict .mil-actions{margin-top:.2rem}

/* ============ OVERVIEW ============ */
.mil-overview{display:flex;flex-direction:column;gap:var(--gap-sm)}
.mil-overview p{color:var(--text-soft)}

/* ============ TOC ============ */
.mil-toc{
  display:flex;flex-direction:column;gap:.7rem;
  padding:var(--pad-card);
  background:var(--surface-2);
  border:1px solid var(--border-soft);
  border-radius:var(--r-panel);
}
.mil-toc__title{
  font-family:var(--font-util);
  font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);
}
.mil-toc ol{list-style:none;counter-reset:miltoc;margin:0;padding:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}
.mil-toc li{counter-increment:miltoc;min-width:0}
.mil-toc a{display:flex;align-items:center;gap:.55rem;min-height:44px;color:var(--text-soft);font-size:.92rem}
.mil-toc a::before{content:counter(miltoc,decimal-leading-zero);font-family:var(--font-util);color:var(--accent);font-size:.8rem;flex-shrink:0}
.mil-toc a:hover{color:var(--accent)}

/* ============ LEGAL-BODY (heading counter) ============ */
.mil-legal{counter-reset:millegal;display:flex;flex-direction:column;gap:var(--gap-lg)}
.mil-lead + .mil-legal{margin-block-start:var(--gap-lg)}
.mil-legal > section{display:flex;flex-direction:column;gap:var(--gap-sm);min-width:0}
.mil-legal > section > h2{counter-increment:millegal;display:flex;gap:.7rem;align-items:baseline;font-size:clamp(1.2rem,2.2vw,1.55rem)}
.mil-legal > section > h2::before{
  content:counter(millegal) ".";
  font-family:var(--font-util);
  font-size:.9em;
  color:var(--accent);
  flex-shrink:0;
}
.mil-legal p,.mil-legal li{color:var(--text-soft)}
.mil-legal ul,.mil-legal ol{margin:0;padding-inline-start:1.2rem;display:flex;flex-direction:column;gap:.45rem}
.mil-legal h3{font-size:1.1rem;color:var(--text)}

/* ============ FAQ — pattern: TWO-COL ============ */
.mil-faq{display:grid;grid-template-columns:1fr;gap:0 var(--gap-md);align-items:stretch}
.mil-faq > *{min-width:0}
@media (min-width:860px){.mil-faq{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mil-faq details{border-bottom:1px solid var(--border-soft)}
.mil-faq summary{cursor:pointer;padding:1rem 0;font-weight:600;list-style:none;color:var(--text);display:flex;gap:.5rem;align-items:baseline}
.mil-faq summary::-webkit-details-marker{display:none}
.mil-faq summary::before{content:'+';margin-right:.5rem;transition:transform .2s;color:var(--accent);font-family:var(--font-util);flex-shrink:0}
.mil-faq details[open] summary::before{content:'−'}
.mil-faq details > :not(summary){padding:.5rem 0 1rem;color:var(--text-soft);font-size:.94rem}
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}

/* ============ CTA-BLOCK ============ */
.mil-cta{
  padding-block:var(--pad-sec);
  background:
    radial-gradient(700px 240px at 50% 0%,rgba(214,160,84,.2),transparent 70%),
    linear-gradient(180deg,#0C1B2E 0%,#050B14 100%);
  border:1px solid var(--accent);
  border-radius:var(--r-card);
  text-align:center;
}
.mil-cta__inner{display:flex;flex-direction:column;gap:var(--gap-sm);align-items:center}
.mil-cta h2{color:var(--text)}
.mil-cta p{color:var(--text-soft)}
.mil-cta .mil-actions{justify-content:center}
.mil-cta__fine{color:var(--text-muted);font-size:.82rem}

/* ============ RTP-GRID (slot tiles) ============ */
.mil-rtp{display:grid;gap:clamp(.6rem,1.5vw,1rem);grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:640px){.mil-rtp{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:960px){.mil-rtp{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mil-rtp-item{
  position:relative;overflow:hidden;min-width:0;
  border-radius:var(--r-panel);
  border:1px solid var(--border-soft);
  background:var(--surface-2);
}
.mil-rtp-item__thumb{
  display:block;aspect-ratio:3/2;position:relative;
  background:linear-gradient(150deg,#12223A 0%,#0A1728 60%,rgba(214,160,84,.25) 100%);
}
.mil-rtp-item__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.mil-rtp-item__name{
  display:block;padding:.6rem .7rem;
  font-size:.84rem;color:var(--text);
  overflow-wrap:anywhere;
}
.mil-rtp-tooltip{
  position:absolute;bottom:0;left:0;right:0;
  opacity:0;transition:opacity .2s;
  padding:.6rem .7rem;
  background:linear-gradient(0deg,rgba(5,11,20,.96) 0%,rgba(5,11,20,.78) 100%);
  color:var(--text-soft);font-size:.8rem;
  display:flex;flex-direction:column;gap:.2rem;
}
.mil-rtp-item:hover .mil-rtp-tooltip,
.mil-rtp-item:focus-within .mil-rtp-tooltip{opacity:1}
.mil-rtp-tooltip strong{color:var(--accent);font-family:var(--font-util)}

/* ============ STICKY-NAV (mobile) ============ */
.mil-sticky-nav{display:none}
@media (max-width:767px){
  .mil-sticky-nav{
    display:flex;
    position:fixed;left:0;right:0;bottom:0;z-index:950;
    justify-content:space-around;align-items:stretch;
    gap:.2rem;
    padding:.4rem .5rem calc(.4rem + env(safe-area-inset-bottom,0px));
    background:rgba(4,9,17,.97);
    border-block-start:1px solid var(--border);
    backdrop-filter:blur(8px);
  }
  .mil-sticky-nav a:not(.mil-btn){
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;
    flex:1 1 0;min-width:0;
    font-size:.68rem;color:var(--text-muted);text-align:center;
    padding:.45rem .25rem;
  }
  .mil-sticky-nav a .mil-icon{width:1.3em;height:1.3em}
  .mil-sticky-nav a:not(.mil-btn):hover,
  .mil-sticky-nav a:not(.mil-btn)[aria-current="page"]{color:var(--accent);text-decoration:none}
  .mil-sticky-nav .mil-btn{flex:1.6 1 0;min-width:0;font-size:.7rem;padding:.5rem .35rem;letter-spacing:.02em;white-space:nowrap}
  body:has(.mil-sticky-nav){padding-bottom:4.6rem}
  /* keep the JS back-to-top button clear of the bar */
  body .mil-back-top{bottom:calc(4.6rem + 18px)}
}

/* ============ CHAT-WIDGET ============ */
.mil-chat-btn{
  position:fixed;right:1rem;bottom:1rem;z-index:960;
  width:52px;height:52px;
  display:flex;align-items:center;justify-content:center;
  border-radius:var(--r-pill);
  border:1px solid var(--accent);
  background:var(--cta-gradient);
  color:var(--cta-text);
  cursor:pointer;
  box-shadow:0 14px 30px -16px rgba(214,160,84,.8);
}
.mil-chat-btn .mil-icon{color:var(--cta-text)}
@media (max-width:767px){.mil-chat-btn{bottom:4.8rem}}
.mil-chat{
  display:none;
  position:fixed;inset:0;z-index:970;
  align-items:flex-end;justify-content:center;
  padding:1rem;
  background:rgba(4,9,17,.72);
  backdrop-filter:blur(4px);
}
.mil-chat.is-open{display:flex}
.mil-chat__dialog{
  width:min(100%,420px);
  display:flex;flex-direction:column;gap:var(--gap-sm);
  padding:var(--pad-card);
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--r-card);
  box-shadow:0 30px 60px -30px rgba(0,0,0,.95);
}
@media (min-width:768px){.mil-chat{align-items:center}}
.mil-chat__title{font-family:var(--font-head);font-size:1.2rem;color:var(--text)}
.mil-chat p{color:var(--text-soft);font-size:.92rem}

/* ============ RESPONSIBLE-GAMING NOTICE ============ */
.mil-rg{
  display:flex;align-items:flex-start;gap:.6rem;
  padding:var(--pad-card);
  background:rgba(18,34,58,.75);
  border:1px solid var(--border-soft);
  border-radius:var(--r-panel);
  color:var(--text-soft);
  font-size:.88rem;
}
.mil-rg .mil-icon{color:var(--hot);margin-top:.15em}
/* nested blocks inside a panel must not draw a second/third frame */
.mil-panel > .mil-rg{background:none;border:0;padding:0}
.mil-panel .mil-steps > li{background:none;border:0;padding:0;padding-inline-start:2.6rem}
.mil-panel .mil-steps > li::before{inset-inline-start:0;top:0}
@media (max-width:479px){
  .mil-panel .mil-steps > li{padding-inline-start:0;padding-block-start:1.7rem}
}
.mil-age{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:2.3rem;padding:.2rem .55rem;
  border-radius:var(--r-pill);
  border:1px solid var(--hot);
  color:var(--hot);
  font-family:var(--font-util);font-size:.78rem;font-weight:600;
  flex-shrink:0;
}

/* ============ FOOTER (bar is DARK — logo tone is light) ============ */
.mil-footer{
  margin-top:var(--gap-lg);
  background:#040911;
  border-block-start:1px solid var(--border);
  color:var(--text-soft);
}
.mil-footer__top{
  display:grid;gap:var(--gap-md);
  grid-template-columns:1fr;
  padding-block:var(--pad-sec);
}
.mil-footer__top > *{min-width:0}
@media (min-width:760px){.mil-footer__top{grid-template-columns:1.4fr 1fr 1fr}}
.mil-footer__brand{display:flex;flex-direction:column;gap:var(--gap-sm);align-items:flex-start}
.mil-footer__tagline{color:var(--text-muted);font-size:.9rem}
.mil-footer__col{display:flex;flex-direction:column;gap:.7rem}
.mil-footer__heading{
  font-family:var(--font-util);
  font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);
}
.mil-footer__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.mil-footer__list a{display:flex;align-items:center;min-height:44px;color:var(--text-soft);font-size:.9rem}
.mil-footer__list a:hover{color:var(--accent)}
.mil-footer__legal{
  display:flex;flex-direction:column;gap:var(--gap-sm);
  padding-block:var(--gap-md);
  border-block-start:1px solid var(--border-soft);
  color:var(--text-muted);
  font-size:.84rem;
}
.mil-footer__legal p{color:var(--text-muted)}
.mil-footer__bottom{
  padding-block:var(--gap-sm) var(--gap-md);
  border-block-start:1px solid var(--border-soft);
  color:var(--text-muted);
  font-size:.82rem;
}

/* ============ UTILITIES ============ */
.mil-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.mil-hot{color:var(--hot)}
.mil-pos{color:var(--positive)}
.mil-gold{color:var(--accent)}
.mil-num{font-family:var(--font-util);color:var(--text)}
/* sa-responsive-net */
table thead th{white-space:nowrap}
figure,blockquote,dl,dd,fieldset{margin:0}
/* sa-logo-chip */
.mil-footer .mil-logo__img{filter:none;background:transparent;padding:0}
.mil-footer .mil-footer__logo-chip{background:transparent;padding:0}
/* sa-logo-fit */
.mil-logo__img{object-fit:contain}
/* sa-ph-media */
.mil-page-header:has(.mil-hero__img){position:relative;overflow:hidden;isolation:isolate;min-height:clamp(200px,30vh,300px);display:flex;flex-direction:column;justify-content:center}
.mil-page-header:has(.mil-hero__img) .mil-hero__img{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;margin:0;z-index:0}
.mil-page-header:has(.mil-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(.mil-page-header:has(.mil-hero__img)>:not(.mil-hero__img)){position:relative}
.mil-page-header:has(.mil-hero__img)>:not(.mil-hero__img){z-index:2}
.mil-page-header:has(.mil-hero__img),.mil-page-header:has(.mil-hero__img) h1,.mil-page-header:has(.mil-hero__img) a,.mil-page-header:has(.mil-hero__img) p,.mil-page-header:has(.mil-hero__img) li,.mil-page-header:has(.mil-hero__img) span{color:#fff}
/* sa-hero-media */
.mil-hero:has(>.mil-hero__img){position:relative;isolation:isolate}
.mil-hero:has(>.mil-hero__img)>.mil-hero__img{z-index:0}
.mil-hero:has(>.mil-hero__img)::after{z-index:1}
:where(.mil-hero:has(>.mil-hero__img)>:not(.mil-hero__img)){position:relative}
.mil-hero:has(>.mil-hero__img)>:not(.mil-hero__img){z-index:2}
/* sa-rhythm v3 */
:where(.mil-table-wrap){margin-block:1.5rem}
:where(main) :where(ul,ol,table,.mil-table-wrap)+p{margin-block-start:1rem}
main :is(ul,ol,table,.mil-table-wrap,.mil-rtp,.mil-steps,.mil-cards,.mil-features)+:is(.mil-actions,div:has(>.mil-btn),p:has(>.mil-btn)){margin-block-start:1.25rem}
/* sa-table-thead */
.mil-table-wrap thead th,.mil-table-wrap thead{position:static}
/* sa-slot-link v2 */
.mil-rtp-item,.mil-rtp-item:hover,.mil-rtp-item:focus{color:inherit;text-decoration:none;cursor:pointer}
:where(.mil-rtp-item){display:block}
/* sa-rtp-touch */
.mil-rtp-item__thumb{display:block}
@media (hover:none){.mil-rtp-item__thumb{aspect-ratio:auto;overflow:visible}.mil-rtp-item__thumb img{height:auto}.mil-rtp-tooltip{position:static;opacity:1;background:transparent;border-top:0;padding:.4rem .7rem 0;font-size:.74rem;line-height:1.35}.mil-rtp-item__name{padding-top:.35rem}}
/* sa-sticky-pad */
