/* ==========================================================================
   Élevage des Lilas — Casinos · site.css
   Template class system (mast/nav/hero/echoice/lozenge/dunerow/rev/claim/foot)
   recoloured to a LILAC / VIOLET dark theme. ONE reserved accent = gold,
   used only on affiliate CTA buttons (.claim / .claim--sm). Rating stars use a
   separate amber; the sunrise "sundisc" is recoloured to violet so nothing
   warm competes with the money button.
   ========================================================================== */

:root{
  --bg:#140f1f;
  --bg-grad-a:#1a1330;
  --pane:#1c1530;
  --pane-2:#241a3d;
  --pane-3:#2c2150;
  --line:#2f2650;
  --line-2:#3b2f66;
  --violet:#8b5cf6;
  --violet-lt:#b79bff;
  --violet-dim:#4b3a7a;
  --text:#ece9f6;
  --muted:#a79dc6;
  --white:#fff;
  --cta:#ffb020;        /* GOLD — affiliate CTA buttons ONLY */
  --cta-hover:#ffc247;
  --cta-ink:#2a1c00;
  --star:#f0b94a;       /* rating stars (distinct from CTA) */
  --good:#3ad08a;
  --bad:#ff7a7a;
  --maxw:1240px;
  --radius:16px;
  --radius-sm:10px;
  --shadow:0 10px 34px rgba(0,0,0,.4);
  --glow:0 0 0 1px rgba(139,92,246,.25),0 18px 50px rgba(124,58,237,.35);
  --head:"Oswald","Arial Narrow",system-ui,sans-serif;
  --body:"Open Sans",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:17px;line-height:1.68;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--violet-lt);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
h1,h2,h3,h4{color:var(--white);font-family:var(--head);font-weight:600;line-height:1.18}
h1{font-size:clamp(1.9rem,4.4vw,3rem);margin:0 0 .45em;letter-spacing:.2px}
h3{font-size:1.3rem;margin:.2em 0}
h4{font-size:1.1rem}
p{margin:0 0 1em}
.body{padding:10px 20px 40px}
.body>p,.body>ol,.body>ul,.body>div.tbl-wrap{max-width:900px}
.body>.toplist{max-width:none}
.toplist .dunerow{width:100%}

/* ---------------- Masthead / nav ---------------- */
.mast{position:sticky;top:0;z-index:80;background:rgba(16,12,26,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.mast__in{display:flex;align-items:center;gap:16px;height:70px}
.mast__logo{display:flex;flex-direction:column;line-height:1;gap:3px}
.mast__logo:hover{text-decoration:none}
.wm__name{font-family:var(--head);font-weight:700;font-size:1.35rem;color:#fff;letter-spacing:.3px}
.wm__tag{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--violet-lt)}
.mast__spacer{flex:1}
.nav{display:flex;align-items:center;gap:18px}
.menu{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.menu__top{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--text);font-family:var(--body);font-weight:600;font-size:.95rem;padding:9px 12px;border-radius:9px;cursor:pointer}
.menu__top:hover{background:var(--pane-2);color:#fff}
.caret{width:9px;height:6px;fill:currentColor;opacity:.7}
.has-sub{position:relative}
.submenu{position:absolute;top:calc(100% + 6px);left:0;min-width:230px;background:var(--pane-2);border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow);list-style:none;margin:0;padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.16s}
.has-sub:hover .submenu,.has-sub:focus-within .submenu{opacity:1;visibility:visible;transform:none}
.submenu a{display:block;padding:9px 12px;border-radius:8px;color:var(--text);font-size:.92rem}
.submenu a:hover{background:var(--pane-3);color:#fff;text-decoration:none}
.sunrule{height:3px;background:linear-gradient(90deg,#6d28d9,#8b5cf6,#b79bff,#8b5cf6,#6d28d9)}
.mast__burger{display:none;width:44px;height:40px;background:var(--pane-2);border:1px solid var(--line-2);border-radius:9px;cursor:pointer;position:relative}
.mast__burger span,.mast__burger span::before,.mast__burger span::after{content:"";position:absolute;left:11px;width:20px;height:2px;background:#fff;border-radius:2px;transition:.2s}
.mast__burger span{top:19px}
.mast__burger span::before{top:-6px}
.mast__burger span::after{top:6px}

/* ---------------- Buttons / CTA ---------------- */
.claim{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--cta);color:var(--cta-ink);font-family:var(--head);font-weight:600;font-size:1.02rem;letter-spacing:.3px;text-transform:uppercase;padding:13px 20px;border-radius:10px;min-height:46px;box-shadow:0 6px 18px rgba(255,176,32,.32);transition:transform .08s,filter .15s}
.claim:hover{background:var(--cta-hover);transform:translateY(-1px);text-decoration:none}
.claim svg{width:12px;height:12px;fill:currentColor}
.claim--sm{padding:10px 16px;min-height:40px;font-size:.9rem}
.claim--nav{background:transparent;color:var(--violet-lt);border:1.5px solid var(--violet);box-shadow:none;padding:9px 16px;min-height:40px}
.claim--nav:hover{background:rgba(139,92,246,.14);color:#fff}
.jumpdown{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:11px 18px;border:1.5px solid var(--line-2);border-radius:999px;color:var(--text);font-weight:600;font-size:.95rem}
.jumpdown:hover{border-color:var(--violet);color:#fff;text-decoration:none}
.jumpdown svg{width:12px;height:12px;fill:var(--violet-lt)}

/* ---------------- HERO (redesigned) ---------------- */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);
  background:
    radial-gradient(1200px 520px at 82% -12%,rgba(139,92,246,.42),transparent 62%),
    radial-gradient(820px 420px at 6% 8%,rgba(199,125,255,.20),transparent 58%),
    linear-gradient(180deg,#1a1330,#140f1f 72%)}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(139,92,246,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(139,92,246,.06) 1px,transparent 1px);background-size:44px 44px;mask:radial-gradient(900px 420px at 70% 0,#000,transparent 70%);pointer-events:none}
.hero__in{position:relative;display:grid;grid-template-columns:1.25fr .9fr;gap:40px;align-items:start;padding:56px 20px 48px}
.hero__copy h1{max-width:16ch}
.hero__copy h1::after{content:"";display:block;width:84px;height:5px;margin-top:18px;border-radius:3px;background:linear-gradient(90deg,var(--violet),var(--violet-lt))}
.hero__lede{font-size:1.18rem;color:var(--muted);max-width:60ch;margin-top:18px}
.byl{display:flex;align-items:center;gap:12px;margin:22px 0 10px}
.byl__pic{width:52px;height:52px;border-radius:50%;border:2px solid var(--violet-dim);object-fit:cover}
.byl__name a{color:#fff;font-weight:700}
.byl__role{font-size:.85rem;color:var(--muted)}
.byl__meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.86rem;color:var(--muted)}
.byl__meta span{position:relative;padding-left:16px}
.byl__meta span::before{content:"";position:absolute;left:0;top:50%;width:7px;height:7px;border-radius:50%;background:var(--violet);transform:translateY(-50%)}
.byl__meta time{color:var(--text)}

/* editor's choice card */
.echoice{background:linear-gradient(180deg,var(--pane-2),var(--pane));border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--glow);overflow:hidden}
.echoice__head{display:flex;align-items:center;gap:8px;background:linear-gradient(90deg,rgba(139,92,246,.3),rgba(139,92,246,.08));padding:11px 18px;font-family:var(--head);font-weight:600;letter-spacing:.3px;text-transform:uppercase;font-size:.84rem;color:#fff;border-bottom:1px solid var(--line-2)}
.echoice__head svg{width:14px;height:14px;fill:var(--violet-lt)}
.echoice__body{padding:20px}
.echoice__id{display:flex;align-items:center;gap:14px}
.echoice__logo{width:116px;height:56px;border-radius:9px;padding:3px 10px 11px;display:grid;place-items:center;flex:none;background:#fff;overflow:hidden}
.echoice__logo img{max-width:80%;max-height:80%;width:auto;height:auto;object-fit:contain}
.echoice__logo--dark{background:#fff;border:0}
.echoice__name{font-family:var(--head);font-size:1.3rem;color:#fff;font-weight:600}
.echoice__tag{font-size:.82rem;color:var(--violet-lt)}
.echoice__rate{display:flex;align-items:center;gap:8px;margin:16px 0 6px}
.echoice__rate b{font-size:1.1rem;color:#fff}
.echoice__amt{font-family:var(--head);font-size:1.5rem;color:#fff;line-height:1.15;margin-top:6px}
.echoice__amt span{display:block;font-family:var(--body);font-size:.84rem;color:var(--muted);font-weight:400;margin-top:4px}
.echoice__sub{font-size:.84rem;color:var(--muted);margin:6px 0 14px}
.echoice__feats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;list-style:none;margin:0 0 16px;padding:0}
.echoice__feats li{background:var(--pane-3);border:1px solid var(--line);border-radius:9px;padding:10px 8px;text-align:center}
.echoice__feats b{display:block;font-size:.84rem;color:#fff}
.echoice__feats span{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.echoice__cta{width:100%}
.echoice__fine{font-size:.74rem;color:var(--muted);text-align:center;margin:10px 0 0}

/* stars */
.stars{display:inline-flex;gap:2px}
.stars svg{width:14px;height:14px;fill:var(--star)}
.stars svg.off{fill:#4a416a}

/* ---------------- Lozenge section headings ---------------- */
.lozenge{display:flex;align-items:center;gap:14px;font-size:clamp(1.4rem,3vw,2rem);margin:46px 0 .5em;padding-bottom:14px;border-bottom:1px solid var(--line)}
.lozenge--first{margin-top:34px}
.sundisc{width:52px;height:30px;flex:none}
/* recolour the sunrise bars to a violet gradient (CSS overrides inline fills) */
.sundisc rect:nth-of-type(1){fill:#c7a2ff}
.sundisc rect:nth-of-type(2){fill:#b79bff}
.sundisc rect:nth-of-type(3){fill:#8b5cf6}
.sundisc rect:nth-of-type(4){fill:#7c3aed}
.sundisc rect:nth-of-type(5){fill:#5b21b6}
.tl-lede{color:var(--muted);margin:-6px 0 18px;font-size:1.02rem}

/* ---------------- Toplist (dunerow) ---------------- */
.toplist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.dunerow{display:grid;grid-template-columns:48px 150px minmax(0,1fr) minmax(0,1.42fr) 150px 186px;align-items:center;gap:16px;background:var(--pane);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}
.dunerow--top{border-color:var(--violet);box-shadow:var(--glow);background:linear-gradient(90deg,rgba(139,92,246,.14),var(--pane) 40%)}
.dunerow__rank{font-family:var(--head);font-size:1.7rem;font-weight:700;color:var(--violet-lt);text-align:center;line-height:1}
.dunerow__rank small{display:block;font-size:.58rem;font-family:var(--body);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.dunerow__chip{height:62px;border-radius:10px;background:#fff;display:grid;place-items:center;padding:3px 12px 12px;overflow:hidden}
.dunerow__chip--dark{background:#fff;border:0}
.dunerow__chip img{max-width:80%;max-height:80%;width:auto;height:auto;object-fit:contain}
/* white logos darkened so they show on the white tile */
img[src*="/brands/rolletto."],img[src*="/brands/stake."],img[src*="/brands/flush."],img[src*="/brands/metaspins."]{filter:invert(1)}
.dunerow__name{margin:0 0 3px;font-size:1.2rem}
.dunerow__stars{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dunerow__stars b{color:#fff;font-size:.9rem}
.bestfor{font-size:.78rem;color:var(--violet-lt);background:rgba(139,92,246,.14);border:1px solid var(--violet-dim);border-radius:999px;padding:2px 9px}
.dunerow__bonus .lbl{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.dunerow__amt{display:block;text-align:center;font-family:var(--head);font-weight:600;font-size:1.1rem;color:#eafff5;background:linear-gradient(135deg,rgba(58,208,138,.28),rgba(58,208,138,.11));border:1px solid rgba(58,208,138,.8);border-radius:9px;padding:7px 13px;margin:5px 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 12px rgba(58,208,138,.2)}
.dunerow__fine{font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dunerow__tags{display:flex;flex-direction:column;gap:6px}
.tag{font-size:.74rem;color:var(--text);background:var(--pane-3);border:1px solid var(--line);border-radius:999px;padding:3px 10px;white-space:nowrap;text-align:center}
.dunerow__act{display:flex}
.dunerow__act .claim{width:100%}
@media(max-width:900px){
  /* hero collapses to one column */
  .hero__in{grid-template-columns:1fr;gap:26px;padding:34px 20px 30px}
  .hero__copy h1{max-width:none}
  .echoice{max-width:480px}
  /* toplist rows become clean stacked cards */
  .dunerow{grid-template-columns:44px 92px 1fr;
    grid-template-areas:"rank chip id" "bonus bonus bonus" "tags tags tags" "act act act";
    row-gap:12px;column-gap:14px;align-items:center}
  .dunerow__rank{grid-area:rank}
  .dunerow__chip{grid-area:chip;height:56px;padding:4px 5px 6px}
  .dunerow__id{grid-area:id}
  .dunerow__bonus{grid-area:bonus}
  .dunerow__tags{grid-area:tags;flex-direction:row;flex-wrap:wrap}
  .dunerow__act{grid-area:act}
  .dunerow__act .claim{width:100%}
  /* review header: smaller logo so title/score fit */
  .rev__chip{width:140px;height:58px;padding:4px 8px 7px}
  .rev__score{margin-left:auto}
  .dunerow__chip img,.rev__chip img,.echoice__logo img{max-width:95%;max-height:95%}
}
@media(max-width:420px){
  .dunerow{grid-template-columns:38px 76px 1fr;column-gap:10px}
  .dunerow__chip{height:46px}
  .echoice__feats{gap:6px}
}

/* ---------------- Tables ---------------- */
.tbl-wrap{overflow-x:auto;margin:18px 0;border:1px solid var(--line);border-radius:var(--radius-sm)}
.tbl-wrap table{width:100%;border-collapse:collapse;font-size:.93rem;min-width:420px}
caption{text-align:left;padding:12px 14px;color:var(--violet-lt);font-weight:600;font-family:var(--head);letter-spacing:.3px;background:var(--pane-2)}
thead th{background:var(--pane-3);color:var(--violet-lt);text-align:left;padding:11px 14px;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}
tbody th,tbody td{padding:11px 14px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
tbody th{color:var(--muted);font-weight:600;width:42%}
tbody td{color:var(--text)}
tbody tr:nth-child(even){background:rgba(255,255,255,.02)}

/* ---------------- Reviews ---------------- */
.rev{background:var(--pane);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin:20px 0;box-shadow:var(--shadow)}
.rev__top{display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:16px}
.rev__chip{height:66px;width:168px;border-radius:10px;background:#fff;display:grid;place-items:center;padding:4px 14px 13px;flex:none;overflow:hidden}
.rev__chip--dark{background:#fff;border:0}
.rev__chip img{max-width:80%;max-height:80%;width:auto;height:auto;object-fit:contain}
.rev__h{flex:1;min-width:200px}
.rev__h h3{margin:0 0 6px}
.rev__h .dunerow__stars b+span{color:var(--muted);font-size:.85rem}
.rev__score{font-family:var(--head);font-size:2rem;color:var(--cta);line-height:1;text-align:center}
.rev__score small{display:block;font-family:var(--body);font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:3px}
.rev__body{padding-top:16px}
.rev__sec{margin:18px 0 .4em;padding-left:11px;border-left:3px solid var(--violet);font-size:1.08rem;color:var(--violet-lt)}
.rev__note{font-size:.86rem;color:var(--muted);background:rgba(255,209,102,.06);border:1px solid rgba(255,209,102,.2);border-radius:8px;padding:10px 14px}

/* dims bars */
.dims{list-style:none;margin:16px 0;padding:0;display:grid;gap:9px}
.dims li{display:grid;grid-template-columns:1fr 2fr auto;align-items:center;gap:12px;font-size:.9rem}
.dims .bar{background:var(--pane-3);border-radius:999px;height:9px;overflow:hidden}
.dims .bar i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--violet-lt))}
.dims .num{color:#fff;font-weight:700;font-size:.9rem}
@media(max-width:560px){.dims li{grid-template-columns:1fr auto}.dims .bar{display:none}}

/* pros / cons */
.pc{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:16px 0}
.pc h4{margin:0 0 8px}
.pc ul{list-style:none;margin:0;padding:0}
.pc li{display:flex;gap:9px;align-items:flex-start;padding:5px 0;font-size:.92rem}
.pc svg{width:14px;height:14px;flex:none;margin-top:4px}
.pc .yes svg{fill:var(--good)}
.pc .no svg{fill:var(--bad)}
@media(max-width:620px){.pc{grid-template-columns:1fr}}

/* steps / facts lists */
.steps{margin:14px 0;padding-left:20px}
.steps li{margin:9px 0}
.facts{list-style:none;margin:16px 0;padding:0;display:grid;gap:10px}
.facts li{background:var(--pane);border:1px solid var(--line);border-left:3px solid var(--violet);border-radius:8px;padding:12px 16px;font-size:.93rem}
.facts b{color:#fff;display:block;margin-bottom:2px}

/* ---------------- FAQ ---------------- */
.faq details{background:var(--pane);border:1px solid var(--line);border-radius:var(--radius-sm);margin:10px 0;padding:2px 18px}
.faq summary{cursor:pointer;font-weight:700;color:#fff;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center;font-family:var(--head);letter-spacing:.2px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--violet-lt);font-size:1.5rem;font-weight:400}
.faq details[open] summary::after{content:"\2013"}
.faq__a{padding-bottom:14px}
.faq__a p{margin:0;color:var(--muted)}

/* author box */
.abox{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:start;background:var(--pane);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin:30px 0}
.abox img{width:120px;height:120px;border-radius:50%;border:2px solid var(--violet-dim);object-fit:cover}
.abox h3{margin:0 0 6px}
@media(max-width:560px){.abox{grid-template-columns:1fr}.abox img{width:88px;height:88px}}

/* callouts reused */
.rg-banner{display:flex;gap:12px;align-items:flex-start;background:linear-gradient(90deg,rgba(139,92,246,.12),rgba(139,92,246,.03));border:1px solid var(--violet-dim);border-radius:var(--radius-sm);padding:14px 18px;font-size:.92rem;margin:18px 0}
.rg-banner .b18{flex:none;font-weight:800;color:var(--violet-lt);border:2px solid var(--violet);border-radius:8px;padding:2px 8px}

/* ---------------- Footer ---------------- */
.foot{background:#0e0a17;border-top:1px solid var(--line);margin-top:40px;padding:40px 0 10px}
.foot__in{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:28px}
.foot__mark p{color:var(--muted);font-size:.9rem;margin-top:10px;max-width:40ch}
.wm__name--foot{font-size:1.2rem}
.foot h4{margin:0 0 12px;font-size:1.02rem;font-family:var(--head);letter-spacing:.3px}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{margin:7px 0}
.foot a{color:var(--muted);font-size:.92rem}
.foot a:hover{color:var(--violet-lt)}
.foot__legal{border-top:1px solid var(--line);margin-top:28px;padding-top:18px}
.rg-strip{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;background:rgba(139,92,246,.08);border:1px solid var(--violet-dim);border-radius:var(--radius-sm);padding:14px 18px;font-size:.88rem;margin-bottom:16px}
.rg-strip b{color:#fff}
.rg-strip a{color:var(--violet-lt);font-weight:600}
.foot__legal>p{color:var(--muted);font-size:.82rem}
@media(max-width:760px){.foot__in{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.foot__in{grid-template-columns:1fr}}

/* ---------------- Cookie consent ---------------- */
.cookie-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:95;background:var(--pane-2);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--glow)}
.cookie-inner{max-width:var(--maxw);margin:0 auto;padding:16px 20px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cookie-inner p{margin:0;font-size:.9rem;flex:1 1 320px}
.cookie-inner a{color:var(--violet-lt)}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:860px){.cookie-actions{width:100%}.cookie-actions .claim,.cookie-actions .claim--nav{flex:1}}

/* ---------------- Responsive nav ---------------- */
@media(max-width:980px){
  .mast__burger{display:block}
  .nav{position:absolute;top:70px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--pane);border-bottom:1px solid var(--line);padding:10px 16px;max-height:0;overflow:hidden;transition:max-height .25s;z-index:79}
  .nav--open{max-height:85vh;overflow:auto}
  .menu{flex-direction:column;align-items:stretch;gap:0;width:100%}
  .menu__top{width:100%;justify-content:space-between;padding:14px 8px;border-bottom:1px solid var(--line)}
  .submenu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;padding:0 0 10px 12px;display:none}
  .has-sub.sub-open .submenu{display:block}
  .claim--nav{margin:12px 0}
}

/* prose rhythm */
.body h2+p,.body h3+p{margin-top:.2em}
.body ul li,.body ol li{margin:6px 0}

/* ---- Mobile: pull the comparison table above the fold ----
   keep H1 + author + last-updated; drop lede, editor's-pick card, jump button */
@media(max-width:640px){
  .hero__in{padding:16px 20px 14px;gap:12px}
  .hero__copy h1{font-size:1.4rem;line-height:1.2;margin:0 0 .25em}
  .hero__copy h1::after{margin-top:9px;height:4px;width:54px}
  .hero__lede{display:none}
  .jumpdown{display:none}
  .echoice{display:none}
  .byl{margin:12px 0 7px}
  .byl__pic{width:44px;height:44px}
  .byl__meta{font-size:.8rem;gap:3px 14px}
  .byl__meta span:not(:first-child){display:none}
  .body{padding-top:4px}
  .lozenge{font-size:1.2rem;gap:10px;margin:14px 0 .4em;padding-bottom:10px}
  .lozenge--first{margin-top:12px}
  .sundisc{width:40px;height:23px}
  .tl-lede{margin:0 0 12px;font-size:.9rem}
  /* affiliate rows become vertical cards on phones */
  .toplist{gap:16px}
  .dunerow{grid-template-columns:1fr;grid-template-areas:"rank" "chip" "id" "bonus" "act";row-gap:11px;text-align:center;padding:22px 18px 14px;position:relative}
  .dunerow__rank{grid-area:rank;justify-self:center;width:46px;height:46px;border-radius:50%;border:2px solid var(--brand);display:grid;place-content:center;font-size:1.15rem;color:var(--brand-2)}
  .dunerow__rank small{display:none}
  .dunerow__chip{grid-area:chip;justify-self:center;width:min(80%,250px);height:94px;padding:10px 14px;border:1px solid var(--line-2)}
  .dunerow__chip img{max-width:72%;max-height:72%}
  .dunerow__id{grid-area:id}
  .dunerow__name{font-size:1.4rem;margin:0 0 8px}
  .dunerow__stars{justify-content:center}
  .bestfor{display:none}
  .dunerow__bonus{grid-area:bonus;display:flex;flex-direction:column;gap:7px}
  .dunerow__bonus .lbl{display:none}
  .dunerow__amt{display:block;width:100%;background:linear-gradient(135deg,rgba(58,208,138,.26),rgba(58,208,138,.1));border:1px solid rgba(58,208,138,.8);border-radius:12px;padding:14px 16px;font-size:1.14rem;margin:0;white-space:normal;color:#eafff5;box-shadow:0 2px 14px rgba(58,208,138,.18)}
  .dunerow__fine{white-space:normal;overflow:visible;text-overflow:clip}
  .dunerow__fine{font-size:.82rem}
  .dunerow__tags{display:none}
  .dunerow__act{grid-area:act}
  .dunerow__act .claim{width:100%;padding:15px}
  .dunerow::after{content:"18+ · Jouez responsablement · 09 74 75 13 13";display:block;font-size:.74rem;color:var(--muted);margin-top:7px}
}

/* ---------------- Legal / support pages ---------------- */
.prose{max-width:860px;margin:0 auto;padding:12px 0 20px}
.prose h1{font-size:clamp(1.7rem,3.6vw,2.4rem);margin:.2em 0 .4em}
.prose h2{font-size:clamp(1.3rem,2.6vw,1.7rem);margin:1.5em 0 .4em;padding-bottom:10px;border-bottom:1px solid var(--line)}
.prose h3{margin:1.3em 0 .3em}
.prose ul,.prose ol{padding-left:22px;margin:0 0 1em}
.breadcrumb{font-size:.84rem;color:var(--muted);padding:16px 0 0}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--violet-lt)}
.data-table{width:100%;border-collapse:collapse;margin:18px 0;font-size:.93rem;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}
.data-table th{background:var(--pane-3);color:var(--violet-lt);text-align:left;padding:11px 14px;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}
.data-table td{padding:11px 14px;border-top:1px solid var(--line);color:var(--text)}
.contact-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:18px 0}
.contact-methods .cm{background:var(--pane);border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px}
.contact-methods .cm b{color:#fff;display:block;margin-bottom:4px}
.contact-form{background:var(--pane);border:1px solid var(--line);border-radius:var(--radius);padding:24px;max-width:620px}
.contact-form label{display:block;font-weight:600;font-size:.9rem;margin:14px 0 6px}
.contact-form input,.contact-form textarea,.contact-form select{width:100%;background:var(--bg);border:1px solid var(--line-2);border-radius:9px;color:var(--text);padding:11px 13px;font:inherit}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--violet);border-color:var(--violet)}
.contact-form .claim{margin-top:18px;border:0}
.author-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:24px 0}
.author-card{background:var(--pane);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.author-card .avatar{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;font-family:var(--head);font-size:1.6rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--violet),#c77dff);margin-bottom:14px}
.author-card img.avatar{object-fit:cover;border:2px solid var(--violet-dim);background:none}
.author-card h3{margin:0 0 2px}
.author-card .role{color:var(--violet-lt);font-weight:600;font-size:.9rem;margin-bottom:10px}
.author-card .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.author-card .tags span{font-size:.78rem;background:var(--pane-3);border:1px solid var(--line);border-radius:999px;padding:3px 10px;color:var(--muted)}
