:root {
  --ink: #182820;
  --deep: #183b2d;
  --green: #285d45;
  --gold: #806a3e;
  --gold-light: #ede5d5;
  --muted: #69776f;
  --line: #e8ece8;
  --paper: #ffffff;
  --soft: #f7f8f5;
  --sage: #eef2eb;
  --shadow: 0 22px 55px rgba(25, 52, 38, .09);
  color-scheme: light;
  font-synthesis: none;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 15px/1.65 "DM Sans", "Segoe UI", sans-serif; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
:focus-visible { outline: 3px solid #285d45; outline-offset: 3px; }
.wrap { width: min(1160px, calc(100% - 48px)); margin: 0 auto; }
.site-header { position: sticky; z-index: 30; top: 0; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--line); backdrop-filter: blur(15px); }
.utility { background: var(--deep); color: rgba(255,255,255,.78); font-size: 10px; letter-spacing: .08em; }
.utility-inner { display: flex; justify-content: space-between; padding: 6px 0; }
.header-main { min-height: 76px; display: flex; align-items: center; gap: 30px; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; }
.brand-crest { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--gold); border-radius: 50%; color: var(--deep); font: 700 12px Georgia, serif; letter-spacing: -.06em; }
.brand-name { font: 700 19px/1.1 Georgia, "Times New Roman", serif; letter-spacing: -.03em; }
.brand-name small { color: var(--gold); font-size: 12px; }
.nav { display: flex; align-items: center; gap: clamp(12px, 1.8vw, 25px); margin-left: auto; }
.nav a { color: #5d6b62; font-size: 12px; font-weight: 650; white-space: nowrap; }
.nav a:hover, .nav a[aria-current="page"] { color: var(--green); }
.header-cta { display: flex; align-items: center; gap: 9px; }
.button { min-height: 43px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 18px; border: 1px solid transparent; border-radius: 4px; background: var(--deep); color: white; font-size: 12px; font-weight: 700; cursor: pointer; transition: background .18s, transform .18s; }
.button:hover { background: #28553f; transform: translateY(-1px); }
.button-outline { border-color: #d9ddd8; background: white; color: var(--deep); }
.button-outline:hover { border-color: var(--gold); background: #fcfbf9; }
.button-gold { background: var(--gold); color: #fff; }
.button-gold:hover { background: #92753f; }
.menu-toggle { display: none; width: 42px; height: 42px; margin-left: auto; border: 1px solid var(--line); border-radius: 3px; background: white; place-items: center; }
.menu-toggle span { width: 17px; height: 1px; background: var(--deep); position: relative; }
.menu-toggle span::before, .menu-toggle span::after { position: absolute; left: 0; width: 17px; height: 1px; background: var(--deep); content: ""; }
.menu-toggle span::before { top: -5px; }
.menu-toggle span::after { top: 5px; }

.hero { position: relative; overflow: hidden; padding: 72px 0 61px; background: linear-gradient(110deg, #fff 0%, #fff 56%, #f7f8f4 100%); }
.hero::after { position: absolute; top: -170px; right: -120px; width: 520px; height: 520px; border: 1px solid rgba(168,135,75,.2); border-radius: 50%; box-shadow: 0 0 0 38px rgba(168,135,75,.025), 0 0 0 88px rgba(168,135,75,.018); content: ""; pointer-events: none; }
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.06fr .94fr; align-items: center; gap: 70px; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 17px; color: var(--gold); font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow::before { width: 20px; height: 1px; background: var(--gold); content: ""; }
h1, h2, h3 { color: var(--ink); }
.hero h1, .page-hero h1 { max-width: 720px; margin: 0; font: 700 clamp(40px, 5.2vw, 68px)/1.04 Georgia, "Times New Roman", serif; letter-spacing: -.045em; }
.hero h1 em, .page-hero h1 em { color: var(--green); font-style: normal; }
.hero-copy > p:not(.eyebrow) { max-width: 560px; margin: 22px 0 27px; color: var(--muted); font-size: 16px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.hero-subnote { margin-top: 23px; color: #929a91; font-size: 10px; }
.hero-visual { position: relative; padding: 28px; border: 1px solid #e6e8e1; background: #fff; box-shadow: var(--shadow); }
.visual-kicker { display: flex; align-items: center; justify-content: space-between; margin-bottom: 25px; color: #899188; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.live-pill { padding: 5px 8px; border: 1px solid #e7e4da; border-radius: 2px; color: #826c43; font-size: 9px; font-weight: 800; }
.fixture { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px; text-align: center; }
.fixture-team { padding: 13px 5px; }
.team-monogram { width: 54px; height: 54px; display: grid; place-items: center; margin: 0 auto 9px; border: 1px solid #e8e9e4; border-radius: 50%; background: var(--soft); color: var(--deep); font: 700 16px Georgia, serif; }
.fixture-team strong { font-size: 11px; }
.fixture-score { color: #a6aca4; font: 600 18px Georgia, serif; letter-spacing: .11em; }
.market-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 21px; }
.market-box { padding: 11px 8px; border: 1px solid var(--line); background: #fbfcfa; text-align: center; }
.market-box small, .market-box strong { display: block; }
.market-box small { color: #8b948c; font-size: 9px; }
.market-box strong { margin-top: 3px; color: var(--green); font-size: 12px; }
.visual-caption { margin: 10px 0 0; color: #9ba198; font-size: 9px; text-align: right; }
.quick-nav { display: grid; grid-template-columns: repeat(4,1fr); margin-top: -1px; border: 1px solid var(--line); }
.quick-nav a { display: flex; align-items: center; gap: 12px; padding: 17px 20px; border-right: 1px solid var(--line); transition: background .15s; }
.quick-nav a:last-child { border: 0; }
.quick-nav a:hover { background: var(--soft); }
.quick-icon { color: var(--gold); font: 20px Georgia, serif; }
.quick-nav strong { display: block; font: 700 13px Georgia, serif; }
.quick-nav small { display: block; color: #657369; font-size: 9px; }

.section { padding: 65px 0; }
.section-soft { background: var(--soft); }
.section-head { max-width: 710px; margin-bottom: 26px; }
.section-head h2 { margin: 0; font: 700 clamp(27px, 3vw, 38px)/1.2 Georgia, "Times New Roman", serif; letter-spacing: -.03em; }
.section-head p:not(.eyebrow) { margin: 12px 0 0; color: var(--muted); font-size: 13px; }
.section-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.section-grid.two { grid-template-columns: repeat(2,1fr); }
.section-grid.four { grid-template-columns: repeat(4,1fr); }
.info-card { min-height: 175px; padding: 21px; border: 1px solid var(--line); background: #fff; transition: border-color .16s, transform .16s, box-shadow .16s; }
.info-card:hover { border-color: #d2c4a3; transform: translateY(-2px); box-shadow: 0 10px 25px rgba(26,54,39,.05); }
.info-icon { width: 33px; height: 33px; display: grid; place-items: center; margin-bottom: 19px; border: 1px solid var(--gold-light); border-radius: 50%; color: var(--gold); font: 14px Georgia,serif; }
.info-card h3 { margin: 0; font: 700 15px Georgia,serif; }
.info-card p { margin: 8px 0 0; color: var(--muted); font-size: 11px; line-height: 1.65; }
.info-card a { display: inline-block; margin-top: 12px; color: var(--green); font-size: 10px; font-weight: 700; }
.editorial { display: grid; grid-template-columns: .65fr 1.35fr; gap: 55px; align-items: start; }
.editorial h2 { margin: 0; font: 700 34px/1.15 Georgia, serif; letter-spacing: -.03em; }
.editorial-copy { color: var(--muted); font-size: 13px; }
.editorial-copy p:first-child { margin-top: 0; }
.editorial-copy h3 { margin: 24px 0 6px; font: 700 17px Georgia,serif; }
.editorial-copy ul { padding-left: 19px; }
.editorial-copy li { margin: 6px 0; }
.offer-panel { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 26px 30px; border: 1px solid #e8e1d3; background: linear-gradient(105deg, #fbfaf7, #fff); }
.offer-panel h2 { margin: 0; font: 700 24px Georgia,serif; }
.offer-panel p { max-width: 650px; margin: 8px 0 0; color: var(--muted); font-size: 12px; }
.page-hero { padding: 49px 0 37px; background: linear-gradient(105deg, #fff, #f7f8f5); border-bottom: 1px solid var(--line); }
.page-hero .wrap { position: relative; }
.page-mark { position: absolute; top: 46px; right: 0; width: 64px; height: 64px; display: grid; place-items: center; border: 1px solid rgba(50,77,57,.2); border-radius: 50%; color: var(--green); font: 27px Georgia, serif; }
.breadcrumbs { display: flex; gap: 8px; margin-bottom: 24px; color: #9ba39d; font-size: 10px; }
.breadcrumbs a:hover { color: var(--green); }
.page-hero h1 { max-width: 850px; font-size: clamp(38px, 4.5vw, 56px); }
.page-hero .lead { max-width: 760px; margin: 16px 0 0; color: var(--muted); font-size: 15px; }
.article-layout { display: grid; grid-template-columns: minmax(0, 1fr) 255px; gap: 44px; padding-top: 39px; padding-bottom: 65px; }
.article-layout.service-layout { grid-template-columns: minmax(0, 800px); justify-content: center; }
.article-main h2 { margin: 30px 0 9px; font: 700 25px/1.25 Georgia,serif; letter-spacing: -.025em; }
.article-main h2:first-child { margin-top: 0; }
.article-main p { color: #5f6e64; font-size: 13px; }
.article-main ul { padding-left: 20px; color: #5f6e64; font-size: 12px; }
.article-main li { margin: 7px 0; }
.article-sidebar { position: sticky; top: 140px; align-self: start; padding: 18px; border: 1px solid var(--line); background: var(--soft); }
.article-sidebar h2 { margin: 0 0 12px; font: 700 15px Georgia,serif; }
.article-sidebar nav + nav { margin-top: 20px; }
.article-sidebar ul { margin: 0; padding: 0; list-style: none; }
.article-sidebar li { margin: 10px 0; }
.article-sidebar a { display: block; margin: 10px 0; color: #52635a; font-size: 10px; }
.article-sidebar a:hover { color: var(--green); }
.notice { margin-top: 22px; padding: 16px 18px; border: 1px solid #e9e2d3; background: #fbfaf7; color: #6c6658; font-size: 11px; }
.notice strong { color: #4b463b; }
.faq details { padding: 15px 0; border-bottom: 1px solid var(--line); }
.faq details:first-child { border-top: 1px solid var(--line); }
.faq summary { cursor: pointer; list-style: none; font: 700 14px Georgia,serif; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { float: right; color: var(--gold); content: "+"; font: 20px "DM Sans", sans-serif; }
.faq details[open] summary::after { content: "−"; }
.faq details p { max-width: 740px; margin: 8px 0 0; color: var(--muted); font-size: 12px; }
.breadcrumb-list { margin: 0; padding: 0; list-style: none; }
.site-footer { padding: 42px 0 20px; border-top: 1px solid var(--line); background: #fbfcfa; }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 28px; padding-bottom: 31px; }
.footer-about p { max-width: 270px; color: var(--muted); font-size: 11px; }
.footer-col strong { display: block; margin-bottom: 12px; font: 700 13px Georgia,serif; }
.footer-col a { display: block; width: fit-content; margin: 7px 0; color: #5d6b62; font-size: 10px; }
.footer-col a:hover { color: var(--green); }
.safer-note { display: flex; gap: 13px; padding: 16px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: #7a857d; font-size: 10px; }
.safer-note b { flex: 0 0 auto; color: var(--green); }
.footer-bottom { display: flex; justify-content: space-between; gap: 15px; padding-top: 16px; color: #9ba39d; font-size: 9px; }
.footer-bottom a { text-decoration: underline; text-decoration-color: #c8cec9; text-underline-offset: 3px; }
.placeholder-link { display: inline-block; padding: 12px 16px; border: 1px dashed #c8b895; color: #716345; font-size: 11px; }
.small-print { color: #929b93; font-size: 9px; }

/* Casino-first components */
.skip-link { position: fixed; z-index: 100; top: 8px; left: 8px; padding: 10px 14px; transform: translateY(-150%); background: var(--deep); color: #fff; }
.skip-link:focus { transform: translateY(0); }
.button-gold { border-color: #e2d3b1; background: #eee2c7; color: #182820; }
.button-gold:hover { border-color: #d6c29a; background: #e5d5b2; color: #182820; }
.hero-copy { max-width: 570px; margin: 22px 0 27px; color: var(--muted); font-size: 16px; }
.hero-copy + .hero-actions { margin-top: 0; }
.casino-hero { padding: 72px 0 60px; }
.casino-hero .hero-grid { grid-template-columns: 1.08fr .92fr; }
.casino-hero .hero-visual { border-radius: 3px; }
.casino-hero .visual-caption { margin-top: 15px; }
.casino-tile-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.casino-tile { position: relative; min-height: 154px; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 17px; border: 1px solid rgba(35,68,49,.12); background: #f7f8f5; transition: transform .2s, box-shadow .2s; }
.casino-tile::after { position: absolute; top: -39px; right: -25px; width: 142px; height: 142px; border: 1px solid rgba(255,255,255,.66); border-radius: 50%; box-shadow: 0 0 0 14px rgba(255,255,255,.22), 0 0 0 34px rgba(255,255,255,.14); content: ""; }
.casino-tile:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(25,52,38,.09); }
.casino-tile strong, .casino-tile small, .tile-glyph { position: relative; z-index: 1; }
.casino-tile strong { color: var(--ink); font: 700 19px Georgia, serif; }
.casino-tile small { margin-top: 3px; color: #53645a; font-size: 10px; }
.tile-glyph { position: absolute; top: 13px; left: 15px; color: rgba(31,68,47,.63); font: 31px Georgia, serif; }
.art-emerald { background: linear-gradient(135deg, #e3eee5, #f8faf6 76%); }
.art-gold { background: linear-gradient(135deg, #f2ead9, #fcfbf8 76%); }
.art-ink { background: linear-gradient(135deg, #e6ebe8, #fbfcfa 76%); }
.art-rose { background: linear-gradient(135deg, #f2e9e4, #fcfaf9 76%); }
.section-head-row { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.section-head-row > div { max-width: 620px; }
.game-search { width: min(330px, 100%); min-height: 47px; display: flex; align-items: center; gap: 10px; padding: 0 13px; border: 1px solid #dfe5df; background: #fff; color: var(--green); }
.game-search input { width: 100%; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--ink); font: inherit; font-size: 12px; }
.game-search input::placeholder { color: #657369; }
.game-search > span:last-child { font-size: 22px; }
.game-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.game-filters a { padding: 7px 11px; border: 1px solid #e4e8e3; background: #fff; color: #59675e; font-size: 10px; font-weight: 650; }
.game-filters a:hover { border-color: #c9d7cb; background: var(--soft); color: var(--green); }
.game-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.game-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); background: #fff; transition: transform .18s, box-shadow .18s; }
.game-card:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(25,52,38,.07); }
.game-art { min-height: 134px; position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.game-art::before, .game-art::after { position: absolute; width: 112px; height: 112px; border: 1px solid rgba(50,77,57,.14); border-radius: 50%; content: ""; }
.game-art::after { width: 74px; height: 74px; border-color: rgba(50,77,57,.2); }
.art-glyph { position: relative; z-index: 1; display: grid; width: 52px; height: 52px; place-items: center; border: 1px solid rgba(50,77,57,.22); border-radius: 50%; background: rgba(255,255,255,.7); color: var(--green); font: 24px Georgia, serif; }
.game-tag { position: absolute; z-index: 1; right: 10px; bottom: 9px; max-width: calc(100% - 20px); overflow: hidden; padding: 4px 7px; background: rgba(255,255,255,.92); color: #4d5d53; font-size: 8px; letter-spacing: .08em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.game-card-copy { padding: 16px; }
.game-card h3 { margin: 0; font: 700 17px/1.25 Georgia, serif; }
.game-card h3 a:hover, .text-link:hover { color: var(--green); text-decoration: underline; text-decoration-color: #bdcdbf; text-underline-offset: 3px; }
.game-card p { min-height: 48px; margin: 8px 0 12px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.game-card-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.text-link { color: var(--green); font-size: 11px; font-weight: 700; }
.small-cta { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; background: var(--deep); color: #fff; font-size: 9px; font-weight: 700; }
.small-cta:hover { background: #28553f; }
.guide-link-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 17px; }
.guide-link { min-width: 0; display: flex; flex-direction: column; gap: 3px; padding: 11px 13px; border: 1px solid #e4e9e3; background: #fff; }
.guide-link:hover { border-color: #cbd8ca; background: #fcfdfb; }
.guide-link strong { overflow: hidden; color: var(--ink); font: 700 12px/1.3 Georgia, serif; text-overflow: ellipsis; white-space: nowrap; }
.guide-link small { overflow: hidden; color: #657369; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.search-empty { margin: 18px 0 0; padding: 14px; border: 1px dashed #cbd5cb; color: var(--muted); font-size: 12px; }
.home-copy-link { color: var(--green); font-weight: 700; text-decoration: underline; text-decoration-color: #bdcdbf; text-underline-offset: 3px; }
.home-offer-status { display: flex; align-items: flex-start; gap: 11px; max-width: 545px; margin: 20px 0 21px; padding: 12px 14px; border: 1px solid #eee7d9; background: #fcfbf8; }
.home-status-dot { flex: 0 0 auto; width: 8px; height: 8px; margin-top: 6px; border-radius: 50%; background: var(--gold); }
.home-offer-status strong, .home-offer-status small { display: block; }
.home-offer-status strong { color: var(--ink); font-size: 12px; }
.home-offer-status small { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.5; }
.home-offer-terms { display: inline-block; margin-top: 7px; color: var(--green); font-size: 10px; font-weight: 700; text-underline-offset: 3px; }
.home-hero-visual { padding: 24px; }
.home-hero-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.home-format-tile { min-height: 132px; position: relative; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 15px; border: 1px solid #e7ebe6; }
.home-format-tile::after { position: absolute; top: -37px; right: -25px; width: 120px; height: 120px; border: 1px solid rgba(51,78,57,.14); border-radius: 50%; box-shadow: 0 0 0 15px rgba(255,255,255,.27), 0 0 0 35px rgba(255,255,255,.18); content: ""; }
.home-format-tile > span { position: absolute; top: 10px; left: 13px; color: rgba(31,68,47,.66); font: 27px Georgia,serif; }
.home-format-tile strong, .home-format-tile small { position: relative; z-index: 1; }
.home-format-tile strong { font: 700 17px Georgia,serif; }
.home-format-tile small { color: #53645a; font-size: 9px; }
.home-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--line); background: #fff; }
.home-fact { min-height: 143px; padding: 19px 20px; border-right: 1px solid var(--line); }
.home-fact:last-child { border-right: 0; }
.home-fact > span { display: block; color: var(--gold); font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.home-fact strong { display: block; margin-top: 5px; font: 700 16px Georgia,serif; }
.home-fact p { margin: 7px 0 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.home-overview { padding-top: 61px; }
.home-overview .editorial-copy p { margin: 0 0 13px; }
.home-inline-links, .home-service-links { display: flex; flex-wrap: wrap; gap: 10px 17px; margin-top: 17px; }
.home-inline-links a, .home-service-links a { color: var(--green); font-size: 11px; font-weight: 700; text-decoration: underline; text-decoration-color: #cad6c9; text-underline-offset: 3px; }
.home-bonus-section { background: linear-gradient(180deg, #fbfaf7, #fff 52%); border-top: 1px solid #eee9df; border-bottom: 1px solid #eee9df; }
.home-bonus-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: 28px; align-items: start; }
.home-bonus-copy, .bonus-calculator { padding: 25px; border: 1px solid #e7e4db; background: #fff; }
.home-bonus-copy h3, .bonus-calculator h3 { margin: 0; font: 700 21px/1.25 Georgia,serif; }
.home-bonus-copy p, .bonus-calculator > p:not(.eyebrow) { color: var(--muted); font-size: 12px; }
.home-bonus-copy ul { padding-left: 19px; color: #59685f; font-size: 11px; }
.home-bonus-copy li { margin: 10px 0; padding-left: 3px; }
.home-bonus-copy .home-bonus-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 15px; margin-top: 20px; }
.bonus-calculator { background: #fdfdfb; }
.bonus-calculator .eyebrow { margin-bottom: 9px; }
.bonus-calculator > p:not(.eyebrow) { margin: 8px 0 17px; }
.bonus-input-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.bonus-input-grid label { display: flex; flex-direction: column; gap: 6px; color: #526158; font-size: 10px; font-weight: 700; }
.bonus-input-grid input, .bonus-input-grid select { width: 100%; min-height: 42px; padding: 8px 10px; border: 1px solid #dfe5df; border-radius: 0; background: #fff; color: var(--ink); font: inherit; font-size: 12px; }
.home-calc-submit { margin-top: 14px; }
.bonus-result { display: block; min-height: 51px; margin-top: 14px; padding: 12px; border-left: 3px solid #9b8658; background: #f5f3ed; color: var(--ink); font-size: 12px; font-weight: 700; }
.bonus-calculator .small-print { margin: 10px 0 0; line-height: 1.5; }
.home-finder-tools { display: flex; align-items: center; gap: 11px; }
.home-finder-tools .game-search { width: 245px; }
.home-game-finder, .home-rtp-tool { padding: 20px; border: 1px solid #e2e8e1; background: #fff; }
.game-finder-controls { display: grid; grid-template-columns: minmax(210px,1.5fr) repeat(4,minmax(120px,1fr)); gap: 12px; align-items: end; }
.game-finder-controls label, .rtp-compare-controls label { display: grid; gap: 7px; color: #526158; font-size: 11px; font-weight: 700; }
.game-finder-controls select, .rtp-compare-controls select { width: 100%; min-width: 0; min-height: 44px; padding: 8px 10px; border: 1px solid #dfe5df; border-radius: 0; background: #fff; color: var(--ink); font: inherit; font-size: 12px; }
.game-finder-controls .game-search { width: 100%; min-height: 0; display: grid; gap: 7px; padding: 0; border: 0; background: transparent; color: #526158; font-size: 11px; font-weight: 700; }
.game-finder-controls .game-search input { min-height: 44px; padding: 8px 10px; border: 1px solid #dfe5df; background: #fff; font-size: 12px; }
.game-finder-status { margin: 16px 0 12px; color: var(--muted); font-size: 11px; }
.home-game-genre { align-self: flex-start; margin-top: 8px; padding: 5px 8px; border: 1px solid #e4e9e3; background: #f8faf7; color: var(--green); font-size: 9px; font-weight: 700; }
.home-tool-cta { display: flex; justify-content: flex-start; margin-top: 18px; padding-top: 16px; border-top: 1px solid #edf0ec; }
.home-rtp-section { background: linear-gradient(180deg,#fbfcfa,#fff 65%); border-top: 1px solid #edf0ec; border-bottom: 1px solid #edf0ec; }
.rtp-compare-controls { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-bottom: 16px; }
.rtp-compare-table-wrap { overflow-x: auto; border: 1px solid var(--line); }
.rtp-compare-table { width: 100%; min-width: 650px; border-collapse: collapse; text-align: left; }
.rtp-compare-table th, .rtp-compare-table td { padding: 12px 14px; border-bottom: 1px solid var(--line); vertical-align: top; color: #526158; font-size: 11px; }
.rtp-compare-table thead th { background: #f3f5f1; color: var(--ink); font-weight: 800; }
.rtp-compare-table tbody th { width: 165px; color: var(--ink); }
.rtp-compare-table tbody tr:last-child th, .rtp-compare-table tbody tr:last-child td { border-bottom: 0; }
.rtp-compare-note { margin: 13px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.home-game-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.home-game-card { min-width: 0; position: relative; display: flex; flex-direction: column; min-height: 284px; padding: 20px; border: 1px solid #e4e9e3; background: #fff; }
.home-game-card::before { position: absolute; top: 0; left: 0; right: 0; height: 4px; background: #718d75; content: ""; }
.home-game-card.art-gold::before { background: #b19a68; }
.home-game-card.art-ink::before { background: #64766e; }
.home-game-card.art-rose::before { background: #aa8177; }
.home-game-card[hidden] { display: none !important; }
.home-game-mark { width: 43px; height: 43px; display: grid; place-items: center; border: 1px solid rgba(45,76,54,.2); border-radius: 50%; background: rgba(255,255,255,.8); color: var(--green); font: 21px Georgia,serif; }
.home-game-format { margin: 15px 0 3px; color: var(--gold); font-size: 9px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.home-game-card h3 { margin: 0; font: 700 18px/1.25 Georgia,serif; }
.home-game-card > p:not(.home-game-format) { flex: 1 0 auto; margin: 9px 0 16px; color: #5f6e64; font-size: 11px; line-height: 1.55; }
.home-game-data { display: flex; flex-wrap: wrap; gap: 7px; margin: -5px 0 13px; padding: 0; list-style: none; }
.home-game-data li { display: inline-flex; align-items: baseline; gap: 5px; padding: 5px 8px; border: 1px solid #e4e9e3; background: #f8faf7; color: #5f6e64; font-size: 10px; }
.home-game-data b { color: var(--ink); font-size: 9px; }
.home-game-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 9px; margin-top: auto; }
.home-game-cta { padding: 8px 10px; font-size: 9px; }
.home-table-wrap { overflow-x: auto; border: 1px solid var(--line); background: #fff; }
.home-compare-table { width: 100%; min-width: 710px; border-collapse: collapse; text-align: left; }
.home-compare-table th, .home-compare-table td { padding: 15px 17px; border-bottom: 1px solid var(--line); vertical-align: top; }
.home-compare-table thead th { background: #f3f5f1; color: #4f5f55; font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.home-compare-table tbody th { width: 155px; color: var(--deep); font: 700 14px Georgia,serif; }
.home-compare-table td { color: #5f6e64; font-size: 11px; }
.home-compare-table tbody tr:last-child th, .home-compare-table tbody tr:last-child td { border-bottom: 0; }
.home-table-note { margin: 14px 0 0; color: var(--muted); font-size: 11px; }
.home-table-note a { color: var(--green); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.home-journey-section { background: #fff; }
.home-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.home-step { min-height: 244px; padding: 21px; border: 1px solid #e0e7df; background: linear-gradient(155deg, #f7f9f5, #fff 72%); }
.home-step-number { display: inline-grid; width: 36px; height: 36px; place-items: center; border: 1px solid #d8e1d7; border-radius: 50%; color: var(--green); font: 700 12px Georgia,serif; }
.home-step h3 { margin: 15px 0 7px; font: 700 18px Georgia,serif; }
.home-step p { min-height: 94px; margin: 0 0 12px; color: var(--muted); font-size: 11px; }
.home-withdrawal { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 14px; padding: 19px 21px; border: 1px solid #e9e6de; background: #fcfbf8; }
.home-withdrawal h3 { margin: 0; font: 700 17px Georgia,serif; }
.home-withdrawal p:not(.eyebrow) { max-width: 750px; margin: 7px 0 0; color: var(--muted); font-size: 11px; }
.home-withdrawal .eyebrow { margin-bottom: 7px; }
.home-journey-cta { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 14px; padding: 18px 20px; background: var(--deep); color: #fff; }
.home-journey-cta > span { max-width: 570px; font-size: 12px; }
.home-journey-cta .button { flex: 0 0 auto; }
.home-service-section { padding-top: 20px; }
.home-service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.home-service-card { min-width: 0; padding: 25px; border: 1px solid var(--line); background: #fff; }
.home-service-card h2 { margin: 0 0 13px; font: 700 25px/1.2 Georgia,serif; }
.home-service-card > p:not(.eyebrow) { color: var(--muted); font-size: 11px; }
.home-service-card .button { margin-top: 17px; }
.home-service-card .eyebrow { margin-bottom: 9px; }
.home-mobile-card { background: #fafbf9; }
.home-vip-grid { display: grid; grid-template-columns: 1fr .8fr; gap: 55px; align-items: center; }
.home-vip-grid h2 { margin: 0 0 13px; font: 700 30px/1.15 Georgia,serif; }
.home-vip-grid p:not(.eyebrow) { color: var(--muted); font-size: 12px; }
.home-vip-grid .button { margin-top: 8px; }
.home-vip-visual { min-height: 240px; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; border: 1px solid #e8e5dc; background: linear-gradient(140deg, #f7f6f1, #fff); }
.home-vip-visual::before, .home-vip-visual::after { position: absolute; width: 270px; height: 270px; border: 1px solid rgba(128,106,62,.16); border-radius: 50%; content: ""; }
.home-vip-visual::after { width: 205px; height: 205px; }
.home-vip-mark { position: relative; z-index: 1; color: var(--deep); font: 700 48px Georgia,serif; letter-spacing: -.08em; }
.home-vip-line { position: relative; z-index: 1; width: 55px; height: 1px; margin: 12px 0; background: var(--gold); }
.home-vip-caption { position: relative; z-index: 1; color: #68766d; font-size: 9px; letter-spacing: .08em; text-align: center; }
.home-hub-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.home-hub-card { min-width: 0; display: grid; grid-template-columns: 36px minmax(0, 1fr) 15px; align-items: start; gap: 12px; padding: 17px; border: 1px solid #e4e9e3; background: #fff; transition: border-color .16s, background .16s, transform .16s; }
.home-hub-card:hover { border-color: #c9d5c8; background: #fcfdfb; transform: translateY(-1px); }
.home-hub-card > span { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid #e5e3d9; border-radius: 50%; color: var(--gold); font: 15px Georgia,serif; }
.home-hub-card h3 { margin: 0; font: 700 14px Georgia,serif; }
.home-hub-card p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.home-hub-card b { align-self: center; color: var(--green); font-weight: 500; }
.home-safer-section { padding-top: 10px; padding-bottom: 60px; }
.home-safer-box { display: grid; grid-template-columns: .7fr 1.3fr; gap: 42px; padding: 27px; border: 1px solid #dce6dd; background: #f5f8f4; }
.home-safer-box h2 { margin: 0; font: 700 27px/1.17 Georgia,serif; }
.home-safer-box p { margin-top: 0; color: #546359; font-size: 11px; }
.home-safer-box .eyebrow { margin-bottom: 10px; }
.home-faq-section .section-head { margin-bottom: 15px; }
.home-faq { max-width: 940px; }
.home-faq details { padding: 17px 0; }
.home-faq summary { font-size: 15px; }
.home-faq details p { max-width: 850px; font-size: 12px; }
.home-final-section { padding-top: 49px; }
.home-final-card { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 30px; border: 1px solid #e5dfd1; background: linear-gradient(110deg, #faf9f5, #fff); }
.home-final-card h2 { margin: 0; font: 700 27px/1.2 Georgia,serif; }
.home-final-card p:not(.eyebrow) { max-width: 660px; margin: 7px 0 0; color: var(--muted); font-size: 12px; }
.home-final-card .eyebrow { margin-bottom: 8px; }
.game-facts { display: grid; grid-template-columns: .8fr 1.2fr; gap: 24px; margin: 0 0 28px; padding: 19px; border: 1px solid #e5e9e3; background: linear-gradient(110deg, #fbfcfa, #fff); }
.game-facts h2 { margin: 0; font: 700 21px/1.2 Georgia, serif; }
.game-facts p:not(.eyebrow) { margin: 9px 0 0; color: var(--muted); font-size: 11px; }
.game-facts .eyebrow { margin-bottom: 8px; }
.game-facts dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
.game-facts dl > div { min-width: 0; padding: 10px 12px; border: 1px solid #edf0ec; background: #fff; }
.game-facts dt { color: #657369; font-size: 9px; }
.game-facts dd { margin: 3px 0 0; color: var(--ink); font-size: 11px; font-weight: 700; }
.page-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 21px; }
.header-link { display: inline-flex; align-items: center; min-height: 42px; padding: 0 8px; color: var(--green); font-size: 11px; font-weight: 700; }
.header-link:hover { text-decoration: underline; text-underline-offset: 3px; }
.mobile-nav-actions { display: none; }
.cta-panel { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 27px; padding: 20px; border: 1px solid #e2e8e1; background: #f8faf7; }
.cta-panel .eyebrow { margin-bottom: 8px; }
.cta-panel h2 { margin: 0; font: 700 21px/1.2 Georgia, serif; }
.cta-panel p:not(.eyebrow) { margin: 6px 0 0; color: var(--muted); font-size: 11px; }
.safer-next-step { margin-top: 27px; padding: 19px; border-left: 3px solid #69836d; background: #f4f7f2; }
.safer-next-step .eyebrow { margin-bottom: 8px; }
.safer-next-step h2 { margin: 0; font: 700 21px/1.2 Georgia, serif; }
.safer-next-step p:not(.eyebrow) { margin: 7px 0 10px; color: var(--muted); font-size: 11px; }
.source-link a { color: var(--green); font-size: 12px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.bridge-page { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: #fbfcfa; }
.bridge-card { width: min(520px, 100%); padding: 38px; border: 1px solid var(--line); background: #fff; box-shadow: var(--shadow); }
.bridge-card h1 { margin: 19px 0 11px; font: 700 38px/1.08 Georgia, serif; }
.bridge-card > p:not(.eyebrow) { color: var(--muted); font-size: 13px; }
.bridge-card .button { margin-top: 10px; }
.visual-caption, .hero-subnote, .small-print, .footer-bottom, .breadcrumbs { color: #657369; }
html { scroll-padding-top: 100px; }
main, [id] { scroll-margin-top: 100px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; clip-path: inset(50%); }
[hidden] { display: none !important; }
::selection { background: #dce8dc; color: var(--ink); }
.game-page-hero { background: linear-gradient(135deg, #fff 0%, #fbfcfa 64%, #f3f6f1 100%); }
.game-hero-grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr); align-items: center; gap: 48px; }
.game-hero-copy { max-width: 680px; }
.game-hero-copy h1 { max-width: 760px; }
.game-hero-facts { display: flex; flex-wrap: wrap; gap: 9px; margin: 22px 0 24px; }
.game-hero-facts span { display: grid; gap: 4px; min-width: 120px; padding: 11px 14px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.9); color: var(--ink); font-size: 12px; }
.game-hero-facts b { color: var(--muted); font-size: 9px; letter-spacing: .09em; text-transform: uppercase; }
.game-version-note { color: #5c6c60; font-size: 12px; line-height: 1.55; }
.game-page-visual { position: relative; display: grid; min-height: 355px; align-content: space-between; overflow: hidden; margin: 0; padding: 26px; border: 1px solid color-mix(in srgb, var(--game-accent) 24%, white); border-radius: 22px; background: radial-gradient(circle at 76% 25%, var(--game-wash), white 61%); box-shadow: 0 22px 55px rgba(29,48,33,.07); }
.game-page-visual::before,.game-page-visual::after { position: absolute; content: ""; pointer-events: none; }
.game-page-visual::before { inset: 17px; border: 1px solid color-mix(in srgb, var(--game-accent) 18%, white); border-radius: 16px; }
.game-page-visual::after { width: 240px; height: 240px; top: 24px; right: 25px; border: 1px solid color-mix(in srgb, var(--game-accent) 32%, transparent); border-radius: 50%; box-shadow: 0 0 0 20px color-mix(in srgb, var(--game-accent) 5%, transparent),0 0 0 47px color-mix(in srgb, var(--game-accent) 4%, transparent); }
.game-scene-orbit { position: absolute; top: 78px; right: 80px; width: 136px; height: 136px; border: 1px dashed color-mix(in srgb, var(--game-accent) 45%, white); border-radius: 50%; transform: rotate(-18deg) scaleX(1.42); }
.game-scene-main { position: relative; z-index: 1; display: grid; align-content: center; width: min(75%,340px); min-height: 238px; padding: 20px; border: 1px solid rgba(255,255,255,.95); border-radius: 20px; background: color-mix(in srgb, var(--game-wash) 66%, white); box-shadow: 0 18px 42px rgba(26,42,30,.08); text-align: center; }
.game-scene-mark { color: var(--game-accent); font-size: clamp(60px,9vw,104px); line-height: 1; text-shadow: 0 7px 24px color-mix(in srgb, var(--game-accent) 20%, transparent); }
.game-scene-name { margin-top: 10px; color: var(--ink); font-family: Georgia,serif; font-size: 22px; font-weight: 700; }
.game-scene-motif { margin-top: 5px; color: var(--muted); font-size: 11px; }
.game-scene-tokens { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 7px; justify-content: flex-end; }
.game-scene-tokens span { padding: 8px 10px; border: 1px solid color-mix(in srgb, var(--game-accent) 22%, white); border-radius: 999px; background: rgba(255,255,255,.92); color: var(--game-accent); font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.game-answer-section { padding-top: 56px; padding-bottom: 58px; }
.game-content-grid { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 30px; align-items: stretch; }
.game-content,.game-edition-card,.game-feature-grid article,.game-mechanics-note,.game-round-card,.game-final-card { border: 1px solid var(--line); border-radius: 17px; background: #fff; }
.game-content { padding: 25px; }
.game-content h2,.game-how-grid h2,.game-example-grid h2 { margin: 0 0 13px; color: var(--ink); font-family: Georgia,serif; font-size: 30px; letter-spacing: -.025em; }
.game-content p:not(.eyebrow),.game-feature-grid p,.game-mechanics-note p,.game-how-grid p,.game-example-grid p { color: var(--muted); line-height: 1.75; }
.game-source-link { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line); font-size: 12px; }
.game-source-link span { color: var(--muted); }
.game-source-link a { color: var(--deep); font-weight: 700; }
.game-edition-card { display: grid; align-content: start; gap: 12px; padding: 22px; background: linear-gradient(150deg,#fff,#f8faf6); }
.game-edition-icon { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 15px; background: #edf2eb; color: var(--deep); font-size: 27px; }
.game-edition-card strong { color: var(--ink); font-size: 16px; }
.game-edition-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.game-fact-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.game-fact-table { width: 100%; border-collapse: collapse; }
.game-fact-table th,.game-fact-table td { padding: 14px 17px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; line-height: 1.6; }
.game-fact-table tr:last-child th,.game-fact-table tr:last-child td { border-bottom: 0; }
.game-fact-table th { width: 225px; color: var(--ink); background: #fbfcfa; font-size: 12px; }
.game-fact-table td { color: var(--muted); font-size: 13px; }
.game-feature-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.game-feature-grid article,.game-mechanics-note { padding: 21px; }
.game-feature-grid h3,.game-mechanics-note h3 { margin: 0; color: var(--ink); font-family: Georgia,serif; font-size: 20px; }
.game-feature-grid p,.game-mechanics-note p { margin-bottom: 0; font-size: 13px; }
.game-mechanics-note { margin-top: 14px; background: linear-gradient(125deg,#fff,#f8faf7); }
.game-mechanics-note p strong { color: var(--ink); }
.game-how-grid,.game-example-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 44px; align-items: center; }
.game-launch-steps { margin: 0; padding: 0; list-style: none; counter-reset: game-step; }
.game-launch-steps li { position: relative; min-height: 52px; margin: 0 0 10px; padding: 14px 16px 14px 58px; border: 1px solid var(--line); border-radius: 13px; background: #fff; color: var(--ink); font-size: 13px; line-height: 1.55; counter-increment: game-step; }
.game-launch-steps li::before { position: absolute; left: 15px; top: 13px; display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #edf2eb; color: var(--deep); content: counter(game-step); font-size: 11px; font-weight: 800; }
.game-round-card { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: center; min-height: 145px; padding: 20px; background: linear-gradient(135deg,#fff,#f4f7f2); }
.game-round-card span { display: grid; min-width: 105px; min-height: 52px; padding: 10px; place-items: center; border: 1px solid #dfe7df; border-radius: 13px; background: #fff; color: var(--deep); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-align: center; }
.game-round-card b { color: #8c9b8e; }
.game-faq-layout { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 42px; align-items: start; }
.game-faq-layout > div:first-child > p:not(.eyebrow) { color: var(--muted); line-height: 1.65; }
.game-faq { display: grid; gap: 8px; }
.game-faq details { border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.game-faq summary { padding: 15px 17px; color: var(--ink); font-size: 13px; font-weight: 700; cursor: pointer; }
.game-faq details p { margin: 0; padding: 0 17px 16px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.game-hub-link { margin-top: 19px; }
.game-final-section { padding-top: 10px; }
.game-final-card { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 27px; background: linear-gradient(115deg,#fff,#f4f7f2); }
.game-final-card h2 { margin: 0 0 8px; color: var(--ink); font-family: Georgia,serif; font-size: 26px; }
.game-final-card p:not(.eyebrow) { max-width: 620px; margin: 0; color: var(--muted); line-height: 1.65; }
.game-final-card .button { flex: 0 0 auto; }
@media (max-width: 1050px) {
  .header-main { gap: 17px; }
  .nav { gap: 12px; }
  .nav a { font-size: 10px; }
  .header-cta .button-outline { display: none; }
  .hero-grid { gap: 38px; }
  .section-grid.four { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 800px) {
  .wrap { width: min(100% - 34px, 1160px); }
  .header-main { min-height: 68px; }
  .menu-toggle { display: grid; }
  .header-cta { display: none; }
  .nav { position: absolute; top: 100%; left: 0; right: 0; display: none; padding: 10px 17px 17px; border-bottom: 1px solid var(--line); background: white; box-shadow: 0 13px 25px rgba(25,52,38,.07); }
  .nav.open { display: grid; grid-template-columns: repeat(2, 1fr); }
  .nav a { padding: 11px 8px; border-bottom: 1px solid #f0f1ee; font-size: 12px; }
  .nav .mobile-nav-actions { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding-top: 9px; }
  .nav .mobile-nav-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 41px; padding: 8px; border: 1px solid #dfe6df; background: #fff; color: var(--deep); font-size: 11px; }
  .nav .mobile-nav-actions .nav-action-primary { border-color: #e2d3b1; background: #eee2c7; color: var(--ink); }
  .hero { padding: 48px 0 42px; }
  .hero-grid { grid-template-columns: 1fr; gap: 30px; }
  .hero-visual { max-width: 560px; }
  .quick-nav { grid-template-columns: repeat(2,1fr); }
  .quick-nav a:nth-child(2) { border-right: 0; }
  .quick-nav a:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .editorial { grid-template-columns: 1fr; gap: 16px; }
  .article-layout { grid-template-columns: 1fr; }
  .article-sidebar { position: static; order: -1; }
  .footer-grid { grid-template-columns: repeat(2,1fr); }
  .casino-hero .hero-grid { grid-template-columns: 1fr; }
  .casino-hero .hero-visual { max-width: 620px; }
  .game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .guide-link-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .game-facts { grid-template-columns: 1fr; }
  .game-hero-grid,.game-content-grid,.game-how-grid,.game-example-grid,.game-faq-layout { grid-template-columns: 1fr; gap: 24px; }
  .game-page-visual { min-height: 300px; }
  .game-scene-main { width: 76%; min-height: 200px; }
  .section-head-row { align-items: stretch; flex-direction: column; }
  .game-search { width: 100%; }
  .home-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-fact:nth-child(2) { border-right: 0; }
  .home-fact:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .home-bonus-grid, .home-service-grid, .home-vip-grid, .home-safer-box { grid-template-columns: 1fr; }
  .home-game-grid, .home-hub-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .game-finder-controls { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .game-finder-controls .game-search { grid-column: 1 / -1; }
  .home-steps { grid-template-columns: 1fr; }
  .home-step { min-height: 0; }
  .home-step p { min-height: 0; }
  .home-vip-grid { gap: 25px; }
  .home-safer-box { gap: 12px; }
  .home-finder-tools { align-items: stretch; flex-direction: column; }
  .home-finder-tools .game-search { width: 100%; }
  .home-finder-tools .button { width: fit-content; }
  .home-withdrawal, .home-journey-cta { align-items: stretch; flex-direction: column; }
  .home-journey-cta .button { width: 100%; }
  .home-final-card { align-items: stretch; flex-direction: column; }
  .nav .mobile-nav-home { grid-template-columns: 1fr; }
}
@media (max-width: 540px) {
  .wrap { width: calc(100% - 30px); }
  .utility-inner { font-size: 9px; }
  .brand-name { font-size: 17px; }
  .hero { padding-top: 38px; }
  .hero h1 { font-size: 44px; }
  .hero-copy > p:not(.eyebrow) { font-size: 14px; }
  .hero-actions .button { flex: 1; padding: 0 11px; }
  .hero-visual { padding: 19px; }
  .section { padding: 47px 0; }
  .section-grid, .section-grid.two, .section-grid.four { grid-template-columns: 1fr; }
  .info-card { min-height: 0; }
  .offer-panel { align-items: stretch; flex-direction: column; padding: 22px; }
  .offer-panel .button { width: 100%; }
  .page-hero { padding: 35px 0 29px; }
  .page-hero h1 { font-size: 39px; }
  .page-mark { display: none; }
  .article-layout { padding-top: 25px; }
  .footer-grid { gap: 23px 16px; }
  .footer-about { grid-column: 1 / -1; }
  .safer-note { flex-direction: column; gap: 5px; }
  .footer-bottom { flex-direction: column; }
  .casino-hero { padding: 41px 0 38px; }
  .casino-hero .hero-grid { gap: 25px; }
  .casino-hero .hero h1 { font-size: 43px; }
  .casino-tile { min-height: 128px; padding: 13px; }
  .casino-tile strong { font-size: 17px; }
  .tile-glyph { top: 10px; left: 12px; font-size: 26px; }
  .game-grid { grid-template-columns: 1fr; }
  .guide-link-grid { grid-template-columns: 1fr; }
  .game-art { min-height: 115px; }
  .game-card-copy { padding: 14px; }
  .game-card p { min-height: 0; }
  .game-facts { padding: 15px; }
  .game-facts dl { gap: 6px; }
  .game-facts dl > div { padding: 8px; }
  .game-hero-facts { gap: 6px; }
  .game-hero-facts span { min-width: 0; flex: 1 1 30%; padding: 9px; font-size: 10px; }
  .game-page-visual { min-height: 255px; padding: 21px; border-radius: 17px; }
  .game-page-visual::after { width: 170px; height: 170px; right: 15px; }
  .game-scene-orbit { right: 45px; width: 105px; height: 105px; }
  .game-scene-main { width: 83%; min-height: 165px; }
  .game-scene-name { font-size: 17px; }
  .game-scene-motif { font-size: 9px; }
  .game-scene-tokens { gap: 5px; }
  .game-scene-tokens span { padding: 7px 8px; font-size: 8px; }
  .game-content,.game-edition-card,.game-feature-grid article,.game-mechanics-note { padding: 18px; }
  .game-fact-table th,.game-fact-table td { padding: 11px 12px; }
  .game-fact-table th { width: 122px; font-size: 10px; }
  .game-fact-table td { font-size: 11px; }
  .game-feature-grid { grid-template-columns: 1fr; }
  .game-round-card { gap: 7px; padding: 14px 10px; }
  .game-round-card span { min-width: 78px; font-size: 8px; }
  .game-final-card { align-items: stretch; flex-direction: column; padding: 20px; }
  .game-final-card .button { width: 100%; }
  .cta-panel { align-items: stretch; flex-direction: column; }
  .cta-panel .button { width: 100%; }
  .bridge-card { padding: 25px; }
  .bridge-card h1 { font-size: 32px; }
  .home-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-fact { min-height: 0; padding: 15px 12px; }
  .home-fact strong { font-size: 14px; }
  .home-fact p { font-size: 9px; }
  .home-hero-visual { padding: 17px; }
  .home-format-tile { min-height: 112px; padding: 11px; }
  .home-format-tile strong { font-size: 15px; }
  .home-bonus-copy, .bonus-calculator, .home-service-card { padding: 19px; }
  .bonus-input-grid { grid-template-columns: 1fr; }
  .home-game-grid, .home-hub-grid { grid-template-columns: 1fr; }
  .home-game-finder, .home-rtp-tool { padding: 14px; }
  .game-finder-controls, .rtp-compare-controls { grid-template-columns: 1fr; }
  .game-finder-controls .game-search { grid-column: auto; }
  .home-tool-cta .button { width: 100%; }
  .rtp-compare-table { min-width: 0; table-layout: fixed; }
  .rtp-compare-table th, .rtp-compare-table td { padding: 8px 7px; font-size: 9px; overflow-wrap: anywhere; }
  .rtp-compare-table tbody th { width: 27%; }
  .home-game-card { min-height: 0; }
  .home-game-actions { align-items: flex-start; flex-direction: column; }
  .home-journey-cta { padding: 16px; }
  .home-safer-box { padding: 20px; }
  .home-final-card { padding: 22px; }
  .home-final-card .button { width: 100%; }
  .home-inline-links { gap: 8px 13px; }
}

/* Payment and cashier guides */
.payment-page-hero { overflow: hidden; background: linear-gradient(180deg,#fff 0%,#fbfcfa 100%); }
.payment-hero-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(260px,.72fr); gap: clamp(30px,6vw,88px); align-items: center; padding: 28px 0 54px; }
.payment-hero-copy { max-width: 760px; }
.payment-hero-copy .lead { max-width: 700px; }
.payment-status { margin: 20px 0 0; padding: 13px 16px; border-left: 3px solid #66806a; border-radius: 0 9px 9px 0; background: #f1f5f1; color: #263d30; line-height: 1.55; }
.payment-visual { position: relative; min-height: 270px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 9px; overflow: hidden; border: 1px solid #e9e6dc; border-radius: 24px; background: radial-gradient(circle at center,var(--payment-wash) 0,white 72%); text-align: center; }
.payment-visual-ring { position: absolute; width: 190px; height: 190px; border: 1px solid color-mix(in srgb,var(--payment-accent) 34%,transparent); border-radius: 50%; }
.payment-visual-ring::before,.payment-visual-ring::after { content: ""; position: absolute; inset: 19px; border: 1px dashed color-mix(in srgb,var(--payment-accent) 26%,transparent); border-radius: 50%; }
.payment-visual-ring::after { inset: 42px; border-style: solid; }
.payment-visual-mark { position: relative; display: grid; place-items: center; width: 66px; height: 66px; border: 1px solid #ded7c6; border-radius: 20px; background: white; color: var(--payment-accent); font-size: 32px; box-shadow: 0 12px 30px #18282012; }
.payment-visual-title,.payment-visual-caption { position: relative; max-width: 250px; }
.payment-visual-title { margin-top: 5px; color: #23342a; font-weight: 700; }
.payment-visual-caption { color: #59665e; font-size: 13px; }
.payment-answer-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(250px,.75fr); gap: 24px; align-items: center; }
.payment-answer-grid article > p:not(.eyebrow) { max-width: 780px; }
.payment-source-link { margin: 18px 0 4px; }
.payment-source-link a { color: #285d45; font-weight: 650; text-underline-offset: 3px; }
.payment-answer-grid small { color: #5a685f; line-height: 1.5; }
.payment-status-card { padding: 22px; border: 1px solid #e2e9e2; border-radius: 16px; background: #f5f8f5; }
.payment-status-card strong { color: #294a37; }
.payment-status-card p { margin-bottom: 0; color: #44534a; line-height: 1.55; }
.payment-table-wrap { overflow-x: auto; border: 1px solid #e4e8e3; border-radius: 14px; background: #fff; }
.payment-facts-table { width: 100%; border-collapse: collapse; }
.payment-facts-table th,.payment-facts-table td { padding: 15px 18px; border-bottom: 1px solid #e9ede9; text-align: left; vertical-align: top; line-height: 1.55; }
.payment-facts-table tr:last-child th,.payment-facts-table tr:last-child td { border-bottom: 0; }
.payment-facts-table th { width: 235px; color: #2c4937; font-size: 14px; font-weight: 700; }
.payment-facts-table td { color: #435149; }
.payment-steps-grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(24px,5vw,68px); align-items: start; }
.payment-steps { margin: 0; padding: 0; list-style: none; counter-reset: payment-step; display: grid; gap: 12px; }
.payment-steps li { counter-increment: payment-step; position: relative; min-height: 58px; padding: 16px 18px 16px 62px; border: 1px solid #e6e9e4; border-radius: 13px; background: white; color: #35473c; line-height: 1.5; }
.payment-steps li::before { content: counter(payment-step); position: absolute; top: 13px; left: 16px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #edf2ed; color: #2c6042; font-size: 13px; font-weight: 750; }
.payment-answer-inline { max-width: 690px; margin: 18px 0 0; color: #30483a; font-size: 17px; line-height: 1.6; }
.payment-hub-link { margin: 18px 0 0; }
.payment-featured-card { display: grid; grid-template-columns: minmax(0,.82fr) minmax(210px,1.18fr); gap: 0; overflow: hidden; border: 1px solid #e6e8df; background: #fff; box-shadow: 0 18px 44px #25342c0b; }
.payment-featured-card .payment-visual { min-height: 100%; border: 0; border-right: 1px solid #e8e9e1; border-radius: 0; background: var(--payment-wash); }
.payment-featured-card .payment-visual.has-bitmap > .fitz-image { width: 100%; height: 100%; min-height: 230px; }
.payment-featured-copy { display: flex; flex-direction: column; align-items: flex-start; padding: 24px; }
.payment-featured-copy h2 { margin: 0 0 14px; font-family: Georgia,serif; font-size: clamp(21px,2.1vw,28px); line-height: 1.18; }
.payment-featured-copy ul { display: grid; gap: 10px; margin: 0 0 20px; padding-left: 19px; color: #4b5a50; line-height: 1.5; }
.payment-featured-copy .button { margin-top: auto; }
.payment-section-visual { width: min(100%,760px); margin: 24px 0 0 auto; }
.payment-section-visual .fitz-image { display: block; overflow: hidden; border: 1px solid #e4e7df; background: #f3f4ef; }
.payment-section-visual img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.payment-steps-visual { margin: 28px 0 0; }
.payment-issue-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 28px; margin: 0; padding: 0; list-style: none; }
.payment-issue-list li { padding: 16px 0; border-top: 1px solid #dfe5de; }
.payment-issue-list strong { color: #2d4937; }
.payment-issue-list p { margin: 7px 0 0; color: #526057; line-height: 1.55; }
.payment-guide-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.payment-guide-links .text-link { display: flex; min-height: 56px; align-items: center; justify-content: space-between; gap: 10px; padding: 13px 16px; border: 1px solid #e5e9e4; border-radius: 12px; background: #fff; color: #285d45; font-weight: 650; text-decoration: none; }
.payment-guide-links .text-link:hover { background: #f4f7f3; }
.payment-faq-grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 30px; }
.payment-faq-grid .payment-faq { display: grid; align-content: start; gap: 10px; }
@media (max-width: 800px) {
  .payment-hero-grid,.payment-answer-grid,.payment-steps-grid,.payment-faq-grid { grid-template-columns: 1fr; }
  .payment-hero-grid { padding-top: 18px; }
  .payment-visual { min-height: 220px; }
  .payment-featured-card { grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
  .payment-featured-card .payment-visual.has-bitmap > .fitz-image { min-height: 250px; }
  .payment-visual-ring { width: 155px; height: 155px; }
}
@media (max-width: 540px) {
  .payment-hero-grid { gap: 20px; padding-bottom: 34px; }
  .payment-featured-card { grid-template-columns: 1fr; }
  .payment-featured-card .payment-visual { border-right: 0; border-bottom: 1px solid #e8e9e1; }
  .payment-featured-card .payment-visual.has-bitmap > .fitz-image { min-height: 190px; }
  .payment-featured-copy { padding: 20px; }
  .payment-issue-list { grid-template-columns: 1fr; }
  .payment-section-visual { margin-right: 0; }
  .payment-facts-table th,.payment-facts-table td { padding: 12px 13px; }
  .payment-facts-table th { width: 145px; }
  .payment-guide-links { grid-template-columns: 1fr; }
}

/* Bonus guides */
.bonus-page-hero { overflow: hidden; background: linear-gradient(180deg,#fff 0%,#fbfcfa 100%); }
.bonus-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(310px,.95fr); gap:clamp(28px,5vw,72px); align-items:center; padding:26px 0 36px; }
.bonus-hero-copy h1 { max-width:780px; }
.bonus-status { max-width:650px; margin:17px 0 0; padding:11px 14px; border-left:3px solid #8b7449; background:#f6f4ef; color:#46564d; font-size:13px; line-height:1.55; }
.bonus-visual { position:relative; min-height:310px; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; padding:32px; border:1px solid color-mix(in srgb,var(--bonus-accent) 23%,#fff); background:radial-gradient(circle at 75% 24%,#fff 0 8%,var(--bonus-wash) 8.5% 37%,#fff 37.5% 100%); }
.bonus-visual-ring { position:absolute; width:210px; height:210px; top:20px; right:25px; border:1px solid color-mix(in srgb,var(--bonus-accent) 35%,transparent); border-radius:50%; box-shadow:0 0 0 22px color-mix(in srgb,var(--bonus-accent) 5%,transparent),0 0 0 46px color-mix(in srgb,var(--bonus-accent) 4%,transparent); }
.bonus-visual-mark { position:relative; width:58px; height:58px; display:grid; place-items:center; border:1px solid color-mix(in srgb,var(--bonus-accent) 42%,#fff); border-radius:50%; background:#fff; color:var(--bonus-accent); font:700 29px Georgia,serif; }
.bonus-visual-title { position:relative; margin-top:23px; color:var(--ink); font:700 23px Georgia,serif; }
.bonus-visual-caption { position:relative; max-width:290px; margin-top:8px; color:#5b6a60; font-size:12px; line-height:1.55; }
.bonus-focus-grid,.bonus-steps-grid,.bonus-faq-grid,.bonus-tool-grid-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.82fr); gap:clamp(25px,5vw,70px); align-items:start; }
.section-tight { padding-top:36px; padding-bottom:36px; }
.bonus-focus-grid h2,.bonus-steps-grid h2,.bonus-faq-grid h2,.bonus-tool-intro h2 { margin:0 0 12px; font:700 clamp(24px,3vw,34px)/1.16 Georgia,serif; color:var(--deep); }
.bonus-focus-grid article>p:last-child,.bonus-steps-grid>div>p:last-child,.bonus-tool-intro>p:last-child { color:#536259; font-size:14px; line-height:1.7; }
.bonus-focus-note { padding:20px; border:1px solid var(--line); background:#fff; color:var(--deep); }
.bonus-focus-note strong { font:700 17px/1.45 Georgia,serif; }
.bonus-focus-note p { margin:9px 0 0; color:#56645b; font-size:12px; line-height:1.6; }
.bonus-table-wrap { overflow-x:auto; border:1px solid var(--line); background:#fff; }
.bonus-terms-table { width:100%; min-width:650px; border-collapse:collapse; text-align:left; }
.bonus-terms-table th,.bonus-terms-table td { padding:14px 17px; border-bottom:1px solid var(--line); vertical-align:top; }
.bonus-terms-table tr:last-child th,.bonus-terms-table tr:last-child td { border-bottom:0; }
.bonus-terms-table th { width:220px; background:#f5f6f3; color:var(--deep); font-size:12px; font-weight:700; }
.bonus-terms-table td { color:#526158; font-size:13px; line-height:1.55; }
.bonus-example-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.bonus-example { min-height:202px; display:flex; flex-direction:column; padding:20px; border:1px solid var(--line); background:#fff; }
.bonus-example .eyebrow { margin:0 0 10px; color:#86734b; font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.bonus-example p:not(.eyebrow) { flex:1; margin:0 0 16px; color:#526158; font-size:13px; line-height:1.6; }
.bonus-example strong { color:var(--deep); font:700 18px Georgia,serif; }
.bonus-example small { margin-top:9px; color:#657168; font-size:10px; line-height:1.5; }
.bonus-tool-grid-layout { grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr); }
.bonus-tool { padding:25px; border:1px solid #e4e6df; background:#fff; }
.bonus-tool h3 { margin:0; color:var(--deep); font:700 23px/1.2 Georgia,serif; }
.bonus-tool>p:not(.eyebrow) { margin:9px 0 17px; color:#5b695f; font-size:12px; line-height:1.6; }
.bonus-tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.bonus-tool-grid label { display:flex; flex-direction:column; gap:6px; color:#536259; font-size:11px; font-weight:700; }
.bonus-tool-grid input[type=number],.bonus-tool-grid select { width:100%; min-height:43px; padding:9px 11px; border:1px solid #d7ddd7; background:#fff; color:var(--ink); font:inherit; font-size:13px; }
.bonus-tool .button { margin-top:15px; }
.bonus-tool-result { display:block; min-height:50px; margin-top:14px; padding:12px; border-left:3px solid #8b7449; background:#f5f4ef; color:var(--deep); font-size:13px; font-weight:700; line-height:1.55; }
.bonus-tool-note { margin:10px 0 0!important; color:#69756c!important; font-size:10px!important; }
.bonus-ladder { margin:0; padding:0; list-style:none; grid-column:1/-1; }
.bonus-ladder li { padding:11px 13px; border:1px solid var(--line); background:#fbfcfa; }
.bonus-ladder li+li { margin-top:8px; }
.bonus-ladder label { display:flex; flex-direction:row; align-items:flex-start; gap:10px; color:#405147; font-size:12px; font-weight:600; line-height:1.5; }
.bonus-ladder input { width:17px; height:17px; flex:0 0 auto; margin:1px 0 0; accent-color:#3d6646; }
.bonus-steps { margin:0; padding-left:23px; color:#506056; }
.bonus-steps li { margin:0 0 13px; padding-left:4px; font-size:14px; line-height:1.6; }
.bonus-faq-grid { grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); }
.bonus-all-links { display:flex; flex-wrap:wrap; gap:8px 19px; margin-top:20px; padding-top:17px; border-top:1px solid var(--line); }
.bonus-all-links a { color:#47664d; font-size:11px; font-weight:700; }
.bonus-related-grid .small-cta { white-space:normal; }
@media (max-width:800px) {
  .bonus-hero-grid { grid-template-columns:1fr; }
  .bonus-visual { min-height:255px; }
  .bonus-focus-grid,.bonus-steps-grid,.bonus-faq-grid,.bonus-tool-grid-layout { grid-template-columns:1fr; }
}
@media (max-width:540px) {
  .bonus-hero-grid { gap:20px; padding:17px 0 26px; }
  .bonus-visual { min-height:220px; padding:22px; }
  .bonus-visual-ring { width:145px; height:145px; top:18px; right:16px; }
  .bonus-example-grid { grid-template-columns:1fr; }
  .bonus-example { min-height:0; }
  .bonus-tool { padding:19px; }
  .bonus-tool-grid { grid-template-columns:1fr; }
  .bonus-terms-table th,.bonus-terms-table td { padding:11px 12px; }
  .bonus-all-links { gap:10px 15px; }
}

/* VIP and premium account information */
.vip-page-hero { overflow:hidden; background:linear-gradient(180deg,#fff 0%,#fbfaf7 100%); }
.vip-hero-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(270px,.75fr); gap:clamp(28px,5vw,76px); align-items:center; padding:24px 0 46px; }
.vip-hero-copy { max-width:800px; }
.vip-hero-copy .lead { max-width:730px; }
.vip-status { max-width:710px; margin:18px 0 0; padding:13px 16px; border-left:3px solid #8b7449; border-radius:0 9px 9px 0; background:#f6f4ef; color:#46564d; font-size:13px; line-height:1.55; }
.vip-visual { position:relative; min-height:276px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; overflow:hidden; border:1px solid #e9e6dc; border-radius:22px; background:radial-gradient(circle at center,var(--vip-wash) 0,white 72%); text-align:center; }
.vip-visual-orbit { position:absolute; width:190px; height:190px; border:1px solid color-mix(in srgb,var(--vip-accent) 30%,transparent); border-radius:50%; box-shadow:0 0 0 22px color-mix(in srgb,var(--vip-accent) 4%,transparent),0 0 0 46px color-mix(in srgb,var(--vip-accent) 3%,transparent); }
.vip-visual-mark { position:relative; display:grid; place-items:center; width:68px; height:68px; border:1px solid #ded7c6; border-radius:20px; background:white; color:var(--vip-accent); font:700 24px Georgia,serif; box-shadow:0 12px 30px #18282012; }
.vip-visual-title,.vip-visual-caption { position:relative; max-width:250px; }
.vip-visual-title { margin-top:5px; color:#23342a; font:700 19px/1.25 Georgia,serif; }
.vip-visual-caption { color:#59665e; font-size:12px; }
.vip-answer-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(250px,.75fr); gap:25px; align-items:center; }
.vip-answer-grid article>p:not(.eyebrow) { max-width:780px; }
.vip-answer-grid small { display:block; margin-top:12px; color:#657168; line-height:1.55; }
.vip-source-links { display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:16px; }
.vip-source-links a { color:#285d45; font-size:13px; font-weight:650; text-underline-offset:3px; }
.vip-status-card { padding:22px; border:1px solid #e7e3d9; border-radius:15px; background:#faf9f6; }
.vip-status-card strong { color:#4f422e; }
.vip-status-card p { margin:9px 0 0; color:#4f5c53; font-size:13px; line-height:1.6; }
.vip-table-wrap { overflow-x:auto; border:1px solid #e4e8e3; border-radius:14px; background:#fff; }
.vip-facts-table,.vip-compare-table { width:100%; min-width:680px; border-collapse:collapse; text-align:left; }
.vip-facts-table th,.vip-facts-table td,.vip-compare-table th,.vip-compare-table td { padding:14px 17px; border-bottom:1px solid #e9ede9; vertical-align:top; line-height:1.58; }
.vip-facts-table tr:last-child th,.vip-facts-table tr:last-child td,.vip-compare-table tr:last-child th,.vip-compare-table tr:last-child td { border-bottom:0; }
.vip-facts-table th,.vip-compare-table th { color:#3f493f; font-size:13px; font-weight:700; }
.vip-facts-table th { width:245px; }
.vip-facts-table td,.vip-compare-table td { color:#4e5c53; font-size:13px; }
.vip-compare-table thead th { background:#f3f2ed; color:#35443a; }
.vip-compare-table tbody th { width:155px; background:#fafaf8; }
.vip-steps-grid,.vip-faq-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(25px,5vw,68px); align-items:start; }
.vip-steps-grid h2,.vip-faq-grid h2 { margin:0 0 12px; color:var(--deep); font:700 clamp(24px,3vw,34px)/1.16 Georgia,serif; }
.vip-steps-grid>div>p:not(.eyebrow) { color:#536259; font-size:14px; line-height:1.7; }
.vip-source-note { padding-top:12px; border-top:1px solid var(--line); font-size:12px!important; }
.vip-steps { margin:0; padding:0; list-style:none; counter-reset:vip-step; display:grid; gap:11px; }
.vip-steps li { counter-increment:vip-step; position:relative; min-height:58px; padding:15px 17px 15px 60px; border:1px solid #e6e9e4; border-radius:13px; background:#fff; color:#3f5045; font-size:13px; line-height:1.55; }
.vip-steps li::before { content:counter(vip-step); position:absolute; top:13px; left:15px; display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:#f0eee8; color:#68593b; font-size:12px; font-weight:750; }
.vip-faq-grid .vip-faq { display:grid; align-content:start; gap:10px; }
.vip-guide-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.vip-guide-link { display:flex; min-height:78px; align-items:flex-start; gap:12px; padding:15px 16px; border:1px solid #e5e9e4; border-radius:12px; background:#fff; color:#345640; text-decoration:none; }
.vip-guide-link:hover { background:#f6f7f3; }
.vip-guide-link>span:first-child { color:#8b7449; font-weight:800; }
.vip-guide-link strong,.vip-guide-link small { display:block; }
.vip-guide-link strong { color:#26392d; font-size:13px; line-height:1.4; }
.vip-guide-link small { margin-top:6px; color:#647168; font-size:11px; line-height:1.5; }
.vip-final-card { align-items:center; }
.vip-final-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px; }
.vip-final-actions .button { white-space:nowrap; }
.top-page-hero { overflow:hidden; }
.top-page-hero .wrap { position:relative; }
.top-page-hero .page-mark { margin:12px 0 5px; }
.top-update-note { margin:18px 0 0; color:#647168; font-size:11px; }
.top-featured-section { padding-top:10px; }
.top-featured-card { display:grid; grid-template-columns:64px minmax(0,1fr) auto; align-items:center; gap:20px; padding:25px 28px; border:1px solid #d9e6dd; border-left:5px solid #277967; border-radius:14px; background:linear-gradient(110deg,#f6fbf8 0%,#fff 70%); box-shadow:0 15px 35px rgba(25,52,38,.06); }
.top-featured-mark { width:54px; height:54px; display:grid; place-items:center; border:1px solid #b9cbbb; border-radius:50%; color:#234d39; background:#fff; font:700 16px Georgia,serif; }
.top-featured-copy .eyebrow { margin:0 0 6px; color:#47735a; }
.top-featured-copy h2 { margin:0 0 8px; color:var(--deep); font:700 clamp(22px,2.6vw,29px)/1.15 Georgia,serif; }
.top-featured-copy>p:not(.eyebrow) { max-width:720px; margin:0; color:#526158; font-size:13px; line-height:1.7; }
.top-featured-links { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:13px; }
.top-featured-links .text-link { color:#315a41; font-size:12px; }
.top-link-divider { color:#9ca69e; }
.top-featured-action { display:grid; justify-items:end; }
.top-featured-action .button { white-space:nowrap; }
.top-ranking-section { overflow:hidden; }
.top-weight-legend { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0 16px; }
.top-weight-chip { display:inline-flex; align-items:center; gap:9px; padding:8px 11px; border:1px solid #e2e8e2; border-radius:999px; background:#fff; color:#33483a; font-size:11px; }
.top-weight-chip small { color:#6a786f; font-size:10px; }
.top-score-explainer { margin:0 0 17px; padding:14px 16px; border:1px solid #e6e9e4; border-radius:10px; background:#f8f9f6; color:#546158; font-size:12px; line-height:1.65; }
.top-score-explainer strong { color:#2c4033; }
.top-score-rubric { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin:0 0 16px; }
.top-score-rubric span { min-height:42px; display:flex; align-items:center; padding:8px 10px; border:1px solid #e7ebe6; border-radius:8px; background:#fff; color:#5d6b62; font-size:10px; line-height:1.4; }
.top-score-rubric span:first-letter { color:#294e39; font-weight:800; }
.top-table-wrap { max-width:100%; overflow:auto; border:1px solid #e0e5e0; border-radius:11px; background:#fff; }
.top-table-wrap:focus-visible { outline-offset:3px; }
.top-comparison-table { width:100%; min-width:1130px; border-collapse:separate; border-spacing:0; text-align:left; }
.top-comparison-table th,.top-comparison-table td { padding:12px 11px; border-bottom:1px solid #e8ece8; vertical-align:middle; }
.top-comparison-table thead th { position:sticky; top:0; z-index:1; background:#f4f6f2; color:#34463a; font-size:11px; line-height:1.25; white-space:nowrap; }
.top-comparison-table thead th:first-child { min-width:178px; }
.top-comparison-table thead th span,.top-comparison-table thead th small { display:block; }
.top-comparison-table thead th small { margin-top:5px; color:#6d786f; font-size:9px; font-weight:600; }
.top-comparison-table tbody th { min-width:178px; background:#fff; color:#263b2e; font-size:12px; font-weight:700; }
.top-comparison-table tbody th a { text-decoration:underline; text-decoration-color:#c5d3c8; text-underline-offset:3px; }
.top-comparison-table tbody th small { display:block; margin-top:4px; color:#6d786f; font-size:10px; font-weight:500; }
.top-comparison-table tbody td { color:#44554a; font-size:12px; }
.top-comparison-table tbody tr:last-child th,.top-comparison-table tbody tr:last-child td { border-bottom:0; }
.top-comparison-table tbody tr.is-target-brand th,.top-comparison-table tbody tr.is-target-brand td { background:#f1f7f2; }
.top-score-cell { display:inline-flex; align-items:baseline; gap:2px; min-width:28px; justify-content:center; color:#344f3e; font-weight:700; }
.top-score-cell small,.top-weighted-score small { color:#7c887e; font-size:9px; font-weight:600; }
.top-weighted-score { display:inline-flex; align-items:baseline; gap:3px; padding:6px 8px; border-radius:7px; background:#edf4ef; color:#234d39; font-size:14px; white-space:nowrap; }
.top-source-link { color:#365e45; font-size:10px; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.top-table-note { margin:11px 0 0; color:#68756c; font-size:11px; }
.top-methodology { margin-top:19px; border-top:1px solid #e5e9e4; border-bottom:1px solid #e5e9e4; }
.top-methodology>summary { padding:14px 0; color:#315640; cursor:pointer; font-size:12px; font-weight:700; }
.top-source-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 18px; padding:0 0 16px; }
.top-source-detail { padding:11px 13px; border:1px solid #e7ebe6; border-radius:9px; background:#fff; }
.top-source-detail summary { color:#35493b; cursor:pointer; font-size:11px; font-weight:700; }
.top-source-detail p { margin:8px 0; color:#637067; font-size:11px; line-height:1.55; }
.top-source-detail>a { display:block; margin-top:6px; color:#3c674b; font-size:10px; text-decoration:underline; text-underline-offset:3px; }
.top-guide-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); gap:clamp(25px,5vw,68px); align-items:start; }
.top-guide-grid h2,.top-faq-layout h2 { margin:0 0 12px; color:var(--deep); font:700 clamp(24px,3vw,34px)/1.16 Georgia,serif; }
.top-guide-grid article>p:not(.eyebrow) { color:#536259; font-size:14px; line-height:1.75; }
.top-checklist-card { padding:21px 23px; border:1px solid #e3e9e3; border-radius:13px; background:#fff; }
.top-checklist-card h2 { margin:0 0 12px; font:700 20px/1.2 Georgia,serif; }
.top-checklist-card ul { margin:0 0 16px; padding-left:20px; color:#536259; font-size:12px; }
.top-checklist-card li { margin:9px 0; padding-left:3px; }
.top-checklist-card .text-link { color:#315a41; font-size:12px; }
.top-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.top-related-link { min-height:85px; padding:15px; border:1px solid #e4e9e4; border-radius:10px; background:#fff; color:#324b3a; }
.top-related-link:hover { background:#f7f9f6; }
.top-related-link strong,.top-related-link small { display:block; }
.top-related-link strong { font-size:12px; line-height:1.45; }
.top-related-link small { margin-top:7px; color:#6b786f; font-size:10px; }
.top-context-links { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:19px; padding-top:16px; border-top:1px solid #e4e9e4; }
.top-context-links a { color:#3b6249; font-size:11px; text-decoration:underline; text-decoration-color:#c5d3c8; text-underline-offset:3px; }
.top-faq-layout { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr); gap:clamp(25px,5vw,68px); align-items:start; }
.top-faq { display:grid; gap:9px; }
.top-faq details { padding:14px 16px; border:1px solid #e4e9e4; border-radius:9px; background:#fff; }
.top-faq summary { color:#354b3b; cursor:pointer; font-size:12px; font-weight:700; }
.top-faq details p { margin:9px 0 0; color:#5b685f; font-size:12px; line-height:1.65; }
.top-final-card { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:26px 30px; border:1px solid #e2e7e1; border-radius:14px; background:#f8f9f6; }
.top-final-card h2 { margin:0 0 7px; color:var(--deep); font:700 25px/1.2 Georgia,serif; }
.top-final-card p:not(.eyebrow) { margin:0; color:#5a685f; font-size:12px; }
.top-final-card .button { flex:0 0 auto; }
@media (max-width:800px) {
  .vip-hero-grid,.vip-answer-grid,.vip-steps-grid,.vip-faq-grid { grid-template-columns:1fr; }
  .vip-hero-grid { padding-top:18px; }
  .vip-visual { min-height:220px; }
  .vip-visual-orbit { width:155px; height:155px; }
  .vip-final-card { align-items:flex-start; flex-direction:column; }
  .vip-final-actions { width:100%; justify-content:flex-start; }
  .top-featured-card { grid-template-columns:54px minmax(0,1fr); padding:21px; }
  .top-featured-action { grid-column:2; justify-items:start; }
  .top-guide-grid,.top-faq-layout { grid-template-columns:1fr; }
  .top-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:540px) {
  .vip-hero-grid { gap:20px; padding-bottom:30px; }
  .vip-hero-copy .page-hero-actions { align-items:stretch; flex-direction:column; }
  .vip-hero-copy .page-hero-actions .button { width:100%; justify-content:center; }
  .vip-facts-table th,.vip-facts-table td,.vip-compare-table th,.vip-compare-table td { padding:12px; }
  .vip-guide-links { grid-template-columns:1fr; }
  .vip-final-actions { align-items:stretch; flex-direction:column; }
  .vip-final-actions .button { width:100%; justify-content:center; }
  .top-featured-card { grid-template-columns:1fr; gap:13px; padding:19px; }
  .top-featured-action { grid-column:1; width:100%; }
  .top-featured-action .button { width:100%; }
  .top-related-grid,.top-source-details { grid-template-columns:1fr; }
  .top-score-rubric { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .top-final-card { align-items:stretch; flex-direction:column; padding:22px; }
  .top-final-card .button { width:100%; }
  .top-weight-legend { gap:6px; }
  .top-weight-chip { padding:7px 9px; }
}

/* One contextual in-flow promo strip follows the hero on each public route. */
.page-promo-section { padding: 0 0 clamp(24px, 4vw, 42px); background: #fff; }
.page-promo { position: relative; display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; align-items: center; gap: 17px; min-height: 112px; padding: 17px 20px; overflow: hidden; border: 1px solid #e6eae4; border-radius: 9px; background: linear-gradient(105deg, #fbfcfa 0%, #f6f8f4 100%); }
.page-promo::after { position: absolute; top: -48px; right: 15%; width: 120px; height: 120px; border: 1px solid rgba(128, 106, 62, .12); border-radius: 50%; content: ""; pointer-events: none; }
.page-promo-art { position: relative; z-index: 1; width: 52px; height: 52px; display: grid; place-items: center; overflow: hidden; border: 1px solid #e5e7dd; border-radius: 50%; background: #fff; color: var(--deep); }
.page-promo-icon { position: relative; z-index: 1; font: 700 19px/1 Georgia, serif; }
.page-promo-orbit { position: absolute; width: 37px; height: 37px; border: 1px solid rgba(128, 106, 62, .28); border-radius: 50%; transform: translate(10px, -10px); }
.page-promo-art-game { background: #eef4ef; color: #285d45; }
.page-promo-art-bonus,.page-promo-art-vip { background: #f6f1e7; color: #806a3e; }
.page-promo-art-payment { background: #eef3f6; color: #38566a; }
.page-promo-art-top { background: #f1f1ec; color: #4d5d4f; }
.page-promo-art-responsible-play { background: #f0f4f2; color: #365f51; }
.page-promo-art-service,.page-promo-art-account { background: #f1f2f4; color: #42566b; }
.page-promo-art-registration,.page-promo-art-brand { background: #f6f2e9; color: #6d5732; }
.page-promo-copy { position: relative; z-index: 1; min-width: 0; }
.page-promo-copy .eyebrow { margin: 0 0 4px; font-size: 9px; letter-spacing: .13em; }
.page-promo-copy h2 { margin: 0; color: var(--deep); font: 700 clamp(17px, 2vw, 21px)/1.2 Georgia, "Times New Roman", serif; }
.page-promo-copy > p:last-child { max-width: 720px; margin: 5px 0 0; color: #657168; font-size: 11px; line-height: 1.5; }
.page-promo-cta { position: relative; z-index: 1; min-width: 172px; white-space: nowrap; }
@media (max-width: 800px) {
  .page-promo { grid-template-columns: 48px minmax(0, 1fr); gap: 12px 15px; padding: 16px 18px; }
  .page-promo-art { width: 46px; height: 46px; }
  .page-promo-cta { grid-column: 2; justify-self: start; }
}
@media (max-width: 540px) {
  .page-promo-section { padding-bottom: 27px; }
  .page-promo { grid-template-columns: 38px minmax(0, 1fr); gap: 10px 12px; padding: 15px; border-radius: 7px; }
  .page-promo-art { width: 38px; height: 38px; }
  .page-promo-icon { font-size: 16px; }
  .page-promo-copy .eyebrow { margin-bottom: 5px; font-size: 8px; letter-spacing: .1em; }
  .page-promo-copy h2 { font-size: 17px; }
  .page-promo-copy > p:last-child { margin-top: 6px; font-size: 11px; }
  .page-promo-cta { grid-column: 1 / -1; width: 100%; }
}

/* Contextual campaign: desktop/tablet modal and a separate mobile bottom bar. */
.context-popup-overlay[hidden],.mobile-promo-bar[hidden] { display: none !important; }
.context-popup-overlay { position: fixed; z-index: 80; inset: 0; display: grid; place-items: center; padding: 24px; background: rgba(18, 31, 24, .48); backdrop-filter: blur(3px); }
.context-popup { position: relative; width: min(100%, 490px); padding: 34px 38px 29px; border: 1px solid #e5e9e2; border-radius: 12px; background: #fff; box-shadow: 0 28px 90px rgba(14, 31, 21, .22); }
.context-popup-art { position: relative; display: grid; place-items: center; width: 44px; height: 44px; margin: 0 0 15px; overflow: hidden; border: 1px solid #e5e9e3; border-radius: 50%; background: #f5f7f3; color: var(--deep); }
.context-popup-art span { position: relative; z-index: 1; font: 700 17px/1 Georgia, serif; }
.context-popup-art i { position: absolute; width: 32px; height: 32px; border: 1px solid rgba(128, 106, 62, .3); border-radius: 50%; transform: translate(9px, -9px); }
.context-popup-art-game { background: #eef4ef; color: #285d45; }
.context-popup-art-bonus,.context-popup-art-vip { background: #f6f1e7; color: #806a3e; }
.context-popup-art-payment { background: #eef3f6; color: #38566a; }
.context-popup-art-responsible-play { background: #f0f4f2; color: #365f51; }
.context-popup-art-service,.context-popup-art-account { background: #f1f2f4; color: #42566b; }
.context-popup .eyebrow { max-width: calc(100% - 32px); margin: 0 0 12px; font-size: 9px; }
.context-popup h2 { max-width: 410px; margin: 0; color: var(--deep); font: 700 clamp(25px, 3.2vw, 33px)/1.12 Georgia, "Times New Roman", serif; letter-spacing: -.025em; }
.context-popup-copy { margin: 13px 0 21px; color: #5f6d63; font-size: 13px; line-height: 1.65; }
.context-popup-cta { width: 100%; }
.context-popup-note { margin: 13px 0 0; color: #6c786e; font-size: 10px; text-align: center; }
.context-popup-close,.mobile-promo-bar-close { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #e5e9e3; border-radius: 50%; background: #fff; color: #34483a; font-size: 22px; line-height: 1; cursor: pointer; }
.context-popup-close { position: absolute; top: 14px; right: 14px; }
.context-popup-close:hover,.mobile-promo-bar-close:hover { background: #f4f6f2; }
.mobile-promo-bar { display: none; }
.privacy-preferences { margin-top: 28px; padding: 20px; border: 1px solid #e4e9e3; border-radius: 9px; background: #fafbf9; }
.privacy-preferences h2 { margin: 0 0 9px; color: var(--deep); font: 700 21px/1.2 Georgia, "Times New Roman", serif; }
.privacy-preferences > p { color: #59665d; font-size: 12px; line-height: 1.65; }
.privacy-preference-choice { display: flex; align-items: flex-start; gap: 9px; margin: 14px 0; color: #34463a; font-size: 12px; font-weight: 650; }
.privacy-preference-choice input { width: 17px; height: 17px; flex: 0 0 auto; accent-color: var(--deep); }
.privacy-preferences .button { min-height: 39px; }
.privacy-preference-status { min-height: 1.5em; margin-bottom: 0; color: #315a41; font-size: 11px; }
@media (min-width: 768px) {
  .mobile-promo-bar { display: none !important; }
}
@media (max-width: 767px) {
  .context-popup-overlay { display: none !important; }
  .mobile-promo-bar { position: fixed; z-index: 55; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); left: 12px; display: grid; grid-template-columns: minmax(0, 1fr) 36px; grid-template-areas: "copy close" "cta cta"; align-items: center; gap: 11px 9px; max-width: 540px; margin: 0 auto; padding: 13px; border: 1px solid #e0e6df; border-radius: 10px; background: #fff; box-shadow: 0 12px 38px rgba(23, 46, 32, .18); }
  .mobile-promo-bar-copy { grid-area: copy; min-width: 0; }
  .mobile-promo-bar-copy .eyebrow { margin: 0 0 4px; font-size: 8px; letter-spacing: .1em; }
  .mobile-promo-bar-copy strong { display: block; color: var(--deep); font: 700 17px/1.2 Georgia, "Times New Roman", serif; }
  .mobile-promo-bar-copy small { display: -webkit-box; margin-top: 5px; overflow: hidden; color: #5f6c62; font-size: 10px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .mobile-promo-bar-cta { grid-area: cta; width: 100%; min-height: 40px; }
  .mobile-promo-bar-close { grid-area: close; width: 34px; height: 34px; justify-self: end; }
  body.has-mobile-promo-bar { padding-bottom: calc(130px + env(safe-area-inset-bottom)); }
}

/* Commercial sidebar stack: full-width editorial column plus bounded sticky choices. */
.commercial-layout { width: min(1320px, calc(100% - 64px)); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 32px; align-items: start; }
.commercial-layout .wrap { width: 100%; margin-right: 0; margin-left: 0; }
.page-primary-column { min-width: 0; }
.article-layout-with-commercial-sidebar { grid-template-columns: minmax(0, 1fr); }
.article-layout-with-commercial-sidebar .article-sidebar { display: none; }
.commercial-sidebar { position: sticky; top: 120px; align-self: start; min-width: 0; display: grid; gap: 12px; }
.sidebar-card { min-width: 0; padding: 17px; border: 1px solid #e5e9e3; border-radius: 9px; background: #fff; }
.sidebar-card .eyebrow { margin: 0 0 7px; font-size: 8px; letter-spacing: .12em; }
.sidebar-card h2 { margin: 0; color: var(--deep); font: 700 17px/1.2 Georgia, "Times New Roman", serif; letter-spacing: -.015em; }
.geo-facts-list { display: grid; gap: 0; margin: 13px 0 0; }
.geo-facts-list > div { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-bottom: 1px solid #eef0ed; }
.geo-facts-list dt,.geo-facts-list dd { margin: 0; font-size: 10px; line-height: 1.4; }
.geo-facts-list dt { color: #738076; }
.geo-facts-list dd { color: #283d31; font-weight: 700; text-align: right; }
.sidebar-plain-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 12px; color: #315e43; font-size: 10px; font-weight: 750; line-height: 1.45; text-decoration: underline; text-decoration-color: #c6d3c9; text-underline-offset: 3px; }
.sidebar-offer-card { display: flex; flex-direction: column; align-items: flex-start; }
.sidebar-offer-featured { border-color: #ded6c4; background: linear-gradient(150deg, #fff 0%, #fcfbf8 100%); }
.sidebar-offer-context { background: #f9faf8; }
.sidebar-offer-head { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: center; gap: 11px; width: 100%; }
.sidebar-offer-head-no-visual { grid-template-columns: minmax(0, 1fr); }
.sidebar-offer-head .eyebrow { margin-bottom: 5px; }
.sidebar-offer-head h2 { overflow-wrap: anywhere; }
.sidebar-visual { width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 48px; border: 1px solid #e7e8e1; border-radius: 8px; background: #fff; color: var(--green); font: 700 20px/1 Georgia, serif; }
.sidebar-visual-featured { border-color: #ddd3be; background: #f7f3e9; color: #31513d; font-size: 14px; letter-spacing: -.07em; }
.sidebar-visual-context { background: #f1f4f0; }
.sidebar-offer-copy { margin: 12px 0 0; color: #606e64; font-size: 10px; line-height: 1.55; }
.sidebar-benefits { display: grid; gap: 5px; margin: 11px 0 0; padding: 0; list-style: none; color: #43564a; font-size: 9px; line-height: 1.45; }
.sidebar-benefits li { position: relative; padding-left: 14px; }
.sidebar-benefits li::before { position: absolute; top: .18em; left: 0; color: #806a3e; content: "✓"; font-weight: 800; }
.sidebar-primary-cta { width: 100%; min-height: 44px; margin-top: 14px; padding: 8px 12px; white-space: normal; text-align: center; line-height: 1.3; }
.sidebar-offer-card > .sidebar-plain-link { margin-top: 12px; }
.mobile-inline-offers { display: none; }
.context-popup-open .commercial-sidebar { visibility: hidden; }
@media (min-width: 768px) and (max-width: 1199px) {
  .commercial-layout { width: min(1160px, calc(100% - 48px)); display: block; }
  .commercial-sidebar { display: none; }
  .mobile-inline-offers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0 25px; }
  .mobile-inline-offers .geo-facts-card { grid-column: 1 / -1; }
  .commercial-layout[data-has-primary-featured="true"] .mobile-inline-offers .sidebar-offer-featured { display: none; }
}
@media (max-width: 767px) {
  .commercial-layout { width: min(620px, calc(100% - 32px)); display: block; }
  .commercial-sidebar { display: none; }
  .mobile-inline-offers { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 16px 0 23px; }
  .mobile-inline-offers .geo-facts-card,.mobile-inline-offers [data-sidebar-slot="related"] { display: none; }
  .commercial-layout[data-has-primary-featured="true"] .mobile-inline-offers .sidebar-offer-featured { display: none; }
  .mobile-inline-offers .sidebar-card { padding: 16px; }
  .mobile-inline-offers .sidebar-offer-head { grid-template-columns: 44px minmax(0, 1fr); }
  .mobile-inline-offers .sidebar-visual { width: 44px; height: 44px; }
  .context-popup-open .commercial-sidebar { visibility: visible; }
}

/* Fitzwilliam folio: a white, Irish-club palette with ruled edges and square-cut forms. */
:root {
  --ink: #1c2923;
  --deep: #12392e;
  --green: #245845;
  --gold: #9a6549;
  --gold-light: #ead9ce;
  --muted: #66746c;
  --line: #e4e8e3;
  --paper: #fff;
  --soft: #f8f9f6;
  --sage: #edf2ec;
  --shadow: 0 12px 28px rgba(23, 45, 33, .06);
  --header-height: 68px;
}
body { background: #fff; color: var(--ink); font-family: "Aptos", "Segoe UI", Arial, sans-serif; }
h1, h2, h3, h4 { font-family: "Baskerville Old Face", "Palatino Linotype", Georgia, serif !important; }
.site-header { background: #fff; border-bottom: 1px solid #dfe4df; backdrop-filter: none; }
.header-main { min-height: var(--header-height); gap: clamp(16px, 2.2vw, 30px); }
.brand { gap: 10px; }
.brand-crest { width: 34px; height: 34px; border: 0; border-left: 2px solid var(--gold); border-bottom: 1px solid var(--gold); border-radius: 0; color: var(--deep); font-size: 17px; }
.brand-name { font-size: 18px; letter-spacing: -.045em; }
.brand-name small { color: var(--gold); }
.nav { gap: clamp(13px, 1.65vw, 23px); }
.nav a { color: #42554a; font-size: 11px; font-weight: 700; }
.nav a:hover, .nav a[aria-current="page"] { color: var(--gold); }
.header-cta { margin-left: 3px; }
.header-cta .button { min-height: 38px; padding: 0 14px; font-size: 11px; }
.button { border-radius: 2px; }
.button-gold { border-color: var(--gold); background: var(--gold); color: #fff; }
.button-gold:hover { border-color: #7f4d36; background: #7f4d36; color: #fff; }
.button-outline { border-color: #d9e0da; color: var(--deep); }
.menu-toggle { margin-left: 0; border-radius: 0; }
.nav-overlay[hidden] { display: none !important; }
.nav-overlay { display: none; }
body.nav-open { overflow: hidden; padding-right: var(--scrollbar-gap, 0px); overscroll-behavior: contain; }

.hero, .page-hero, .casino-hero { background: #fff; }
.hero::after { display: none; }
.hero { padding-top: 64px; }
.hero h1, .page-hero h1 { letter-spacing: -.035em; }
.hero-visual { border: 0; border-left: 2px solid var(--gold-light); background: #fbfcfa; box-shadow: none; }
.casino-hero .hero-visual { border: 0; border-left: 2px solid var(--gold-light); border-radius: 0; }
.page-hero { border-bottom: 1px solid var(--line); }
.page-mark { width: 54px; height: 54px; border: 0; border-right: 2px solid var(--gold); border-bottom: 1px solid var(--gold-light); border-radius: 0; color: var(--gold); }
.section-soft { background: #f8f9f6; }
.section-head { padding-left: 17px; border-left: 2px solid var(--gold); }
.section-head h2 { letter-spacing: -.02em; }
.info-card { border-radius: 0; }
.info-card:hover { box-shadow: none; }
.offer-panel { border-radius: 0; background: #faf9f6; }

.casino-tile { border-radius: 0; box-shadow: none; }
.casino-tile::after, .home-format-tile::after { display: none; }
.casino-tile:hover { box-shadow: none; }
.art-emerald { background: #eaf0e9; }
.art-gold { background: #f3ece4; }
.art-ink { background: #e9eeeb; }
.art-rose { background: #f4ece8; }
.tile-glyph { color: var(--gold); }
.home-format-tile { border-radius: 0; background: #f8f9f6; }
.home-format-tile:nth-child(2) { background: #f5f0e9; }
.home-format-tile:nth-child(3) { background: #eef2ee; }
.home-format-tile:nth-child(4) { background: #f6efeb; }
.home-format-tile > span { color: var(--gold); }
.home-facts { border-color: #dfe5df; }
.home-fact { border-radius: 0; }
.home-bonus-section, .home-rtp-section { background: #f8f9f6; border-color: #e4e8e3; }
.home-bonus-copy, .bonus-calculator, .home-game-finder, .home-rtp-tool { border-radius: 0; box-shadow: none; }
.home-game-card { border-radius: 0; }
.home-game-card::before { height: 2px; background: #245845; }
.home-game-mark { width: 39px; height: 39px; border: 0; border-left: 2px solid var(--gold); border-radius: 0; background: transparent; }
.home-step { border-radius: 0; background: #f6f8f5; }
.home-step-number { width: 30px; height: 30px; border-radius: 0; border-left: 2px solid var(--gold); }
.home-vip-visual { border-radius: 0; background: #f4f1e9; }
.home-vip-visual::before, .home-vip-visual::after { display: none; }
.home-vip-mark { color: var(--gold); font-size: 62px; }

.game-card, .game-art, .game-page-visual, .game-content, .game-edition-card,
.game-feature-grid article, .game-mechanics-note, .game-round-card, .game-final-card { border-radius: 0; box-shadow: none; }
.game-card { border-color: #e0e5df; }
.game-card:hover { box-shadow: none; }
.game-art::before { display: none; }
.game-art::after { top: 18px; right: 18px; width: 46px; height: 46px; border: 0; border-top: 1px solid rgba(36,88,69,.38); border-right: 1px solid rgba(36,88,69,.38); border-radius: 0; }
.art-glyph { width: 46px; height: 46px; border: 0; border-left: 2px solid var(--gold); border-radius: 0; background: transparent; }
.game-page-visual { border-color: color-mix(in srgb, var(--game-accent) 25%, white); border-radius: 0; background: var(--game-wash); box-shadow: none; }
.game-page-visual::before { inset: 0; border: 0; border-left: 3px solid var(--game-accent); border-radius: 0; }
.game-page-visual::after, .game-scene-orbit { display: none; }
.game-scene-main { width: 100%; min-height: 0; align-content: end; padding: 64px 12px 25px; border: 0; border-radius: 0; background: transparent; box-shadow: none; text-align: left; }
.game-scene-mark { color: var(--game-accent); font-size: clamp(60px, 8vw, 94px); text-shadow: none; }
.game-scene-name { font-size: 25px; }
.game-scene-tokens span { border-radius: 0; background: #fff; }
.game-final-card { border-top: 2px solid var(--gold); background: #f8f9f6; }
.game-facts span, .game-faq details { border-radius: 0; }

.page-promo { border: 0; border-top: 1px solid #e1e5df; border-bottom: 1px solid #e1e5df; border-radius: 0; background: #f8f9f6; }
.page-promo::after, .page-promo-orbit { display: none; }
.page-promo-art { width: 46px; height: 46px; border: 0; border-left: 2px solid var(--gold); border-radius: 0; background: #edf1eb; }
.page-promo-art-bonus, .page-promo-art-vip { background: #f1e9df; }
.page-promo-art-payment { background: #eaf0ed; color: var(--deep); }
.page-promo-art-top, .page-promo-art-responsible-play, .page-promo-art-service, .page-promo-art-account { background: #edf1eb; color: var(--deep); }
.page-promo-art-registration, .page-promo-art-brand { background: #f1e9df; color: var(--gold); }
.page-promo-copy h2 { color: var(--deep); }

.payment-visual, .bonus-visual, .vip-visual { border-radius: 0; box-shadow: none; text-align: left; }
.payment-visual { align-items: flex-start; padding: 28px; background: var(--payment-wash); }
.bonus-visual { background: var(--bonus-wash); }
.vip-visual { align-items: flex-start; padding: 27px; background: var(--vip-wash); }
.payment-visual-ring, .bonus-visual-ring, .vip-visual-orbit { display: none; }
.payment-visual::before, .bonus-visual::before, .vip-visual::before { position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--payment-accent, var(--bonus-accent, var(--vip-accent))); content: ""; }
.payment-visual-mark, .bonus-visual-mark, .vip-visual-mark { width: auto; height: auto; min-width: 48px; min-height: 48px; padding: 8px 12px; border: 0; border-left: 2px solid var(--gold); border-radius: 0; background: rgba(255,255,255,.72); box-shadow: none; }
.payment-visual-title, .vip-visual-title { font-family: "Baskerville Old Face", "Palatino Linotype", Georgia, serif; }
.payment-status-card, .vip-status-card { border-radius: 0; }
.payment-table-wrap, .vip-table-wrap, .bonus-table-wrap { border-radius: 0; }
.payment-steps li, .payment-steps li::before { border-radius: 0; }
.bonus-status, .vip-status, .payment-status { border-radius: 0; }
.bonus-example, .bonus-tool, .bonus-ladder li { border-radius: 0; }
.vip-visual-mark { clip-path: polygon(0 0, 100% 0, 100% 78%, 78% 100%, 0 100%); }

.commercial-sidebar { gap: 14px; }
.sidebar-card { border-radius: 0; box-shadow: none; }
.geo-facts-card { border-top: 2px solid var(--deep); }
.sidebar-offer-featured { border-top: 2px solid var(--gold); background: #faf8f4; }
.sidebar-offer-context { border-left: 2px solid #b9c8bb; background: #f7f9f6; }
.sidebar-visual { border-radius: 0; }
.sidebar-visual-featured { border-left: 2px solid var(--gold); }
.sidebar-primary-cta { border-radius: 2px; }
.context-popup { border-radius: 0; }

@media (max-width: 800px) {
  :root { --header-height: 64px; }
  .header-main { min-height: var(--header-height); gap: 9px; }
  .header-main > .brand { order: 1; }
  .header-cta { order: 2; display: flex; margin-left: auto; }
  .header-cta .button { min-height: 36px; padding: 0 10px; font-size: 10px; }
  .menu-toggle { order: 3; display: grid; width: 36px; height: 36px; flex: 0 0 36px; margin-left: 1px; border-color: #dfe4df; }
  .menu-toggle span { transition: background .15s; }
  .menu-toggle[aria-expanded="true"] span { background: transparent; }
  .menu-toggle[aria-expanded="true"] span::before { top: 0; transform: rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span::after { top: 0; transform: rotate(-45deg); }
  .menu-toggle span::before, .menu-toggle span::after { transition: transform .15s, top .15s; }
  .nav { position: absolute; top: 100%; left: 15px; right: 15px; z-index: 32; display: none; margin: 0; padding: 4px 15px 10px; border: 1px solid #dfe4df; border-top: 2px solid var(--gold); background: #fff; box-shadow: 0 14px 25px rgba(24,47,34,.12); }
  .nav.open { display: grid; grid-template-columns: 1fr; }
  .nav a { padding: 12px 4px; border-bottom: 1px solid #edf0ed; font-size: 12px; }
  .nav a:last-child { border-bottom: 0; }
  .nav-overlay:not([hidden]) { display: block; position: fixed; z-index: 29; inset: var(--header-height) 0 0; width: 100%; height: auto; padding: 0; border: 0; background: rgba(18,39,30,.22); touch-action: none; overscroll-behavior: contain; }
  .hero { padding-top: 43px; }
  .section-head { padding-left: 13px; }
  .game-page-visual { border-radius: 0; }
  .game-scene-main { width: 100%; }
}
@media (max-width: 540px) {
  .header-main { gap: 7px; }
  .brand-crest { width: 29px; height: 31px; }
  .brand-name { font-size: 16px; }
  .header-cta .button { min-height: 34px; padding: 0 8px; font-size: 9px; }
  .menu-toggle { width: 34px; height: 34px; flex-basis: 34px; }
  .page-promo { border-radius: 0; }
}

/* Archive-backed bitmap art uses fixed aspect boxes and responsive source crops. */
.fitz-image { display: block; min-width: 0; overflow: hidden; }
.fitz-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.home-hero-visual > .fitz-image { position: relative; width: 100%; aspect-ratio: var(--desktop-aspect, 3 / 2); margin-bottom: 17px; }
.game-page-visual-image > .fitz-image,
.bonus-visual.has-bitmap > .fitz-image,
.payment-visual.has-bitmap > .fitz-image,
.vip-visual.has-bitmap > .fitz-image { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; }
.game-page-visual-image > .fitz-image img { object-position: center; }
.slot-cluster-hero .game-page-visual-image > .fitz-image img { object-fit: contain; }
.slot-cluster-hero .game-page-visual-image { min-height: 0; aspect-ratio: 16 / 9; padding: 0; }
.game-page-visual-image::before { z-index: 1; }
.bonus-visual.has-bitmap > span:not(.fitz-image),
.payment-visual.has-bitmap > span:not(.fitz-image),
.vip-visual.has-bitmap > span:not(.fitz-image) { z-index: 2; padding: 5px 7px; background: rgba(255,255,255,.88); }
.bonus-visual.has-bitmap .bonus-visual-ring,
.payment-visual.has-bitmap .payment-visual-ring,
.vip-visual.has-bitmap .vip-visual-orbit { display: none; }
@media (max-width: 767px) {
  .fitz-image { aspect-ratio: var(--mobile-aspect, 4 / 3); }
  .home-hero-visual > .fitz-image { margin-bottom: 13px; }
}

/* Ireland slot directory and title pages */
.slot-hub-hero { background: #fbfaf6; }
.slot-hub-answer { max-width: 820px; margin: 18px 0 0; color: var(--ink); font-size: 16px; line-height: 1.7; }
.slot-hub-hero-actions,.slot-demo-actions,.slot-facts-action { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-top: 22px; }
.slot-featured-section { padding-top: 26px; }
.slot-featured-guide,.slot-listing-check,.slot-game-final-panel { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(190px,.8fr) auto; align-items: center; gap: 24px; padding: 26px 28px; border: 1px solid #d7d5ca; border-left: 4px solid #8a7045; background: #fff; }
.slot-featured-guide { grid-template-columns: minmax(0,1fr) auto; }
.slot-featured-copy h2,.slot-listing-check h2,.slot-game-final-panel h2 { margin: 4px 0 10px; font-family: Georgia,serif; font-size: clamp(23px,3vw,32px); line-height: 1.15; }
.slot-featured-copy p,.slot-listing-check p,.slot-game-final-panel p { max-width: 720px; color: var(--muted); line-height: 1.65; }
.slot-directory-section { background: #fff; }
.slot-filter-nav { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin: 22px 0 28px; }
.slot-filter-group { padding: 16px 0; border-top: 2px solid #d7d5ca; }
.slot-filter-group h3 { margin: 0 0 12px; font-family: Georgia,serif; font-size: 19px; }
.slot-filter-group ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.slot-filter-group a { display: inline-flex; padding: 7px 10px; border: 1px solid #d7d5ca; background: #fbfaf6; color: var(--ink); text-decoration: none; font-size: 12px; line-height: 1.3; }
.slot-filter-group a:hover,.slot-filter-group a:focus-visible { border-color: #5e7457; background: #f0f3ee; }
.slot-filter-view { display: none; }
.slot-filter-view-default { display: block; }
.slot-filter-view:target { display: block; scroll-margin-top: 100px; }
.slot-filter-panels:has(.slot-filter-view:target) .slot-filter-view-default { display: none; }
.slot-filter-view > h2 { margin: 0 0 16px; font-family: Georgia,serif; font-size: clamp(21px,2vw,27px); }
.slot-filter-results-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 26px; margin: 0; padding: 0; list-style: none; border-top: 1px solid #dedbd1; }
.slot-filter-results-list li { display: flex; flex-direction: column; gap: 4px; padding: 14px 0; border-bottom: 1px solid #dedbd1; }
.slot-filter-results-list a { color: var(--ink); font-weight: 700; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.slot-filter-results-list span { color: var(--muted); font-size: 12px; line-height: 1.45; }
.slot-cluster-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.slot-game-tile { min-width: 0; border: 1px solid #dcd9d0; background: #fff; }
.slot-game-art { display: block; overflow: hidden; aspect-ratio: 16/9; background: #f3efe6; }
.slot-game-art img { display: block; width: 100%; height: 100%; object-fit: cover; }
.slot-game-tile-copy { padding: 16px 17px 18px; }
.slot-game-tile-copy .eyebrow { margin: 0 0 6px; font-size: 10px; }
.slot-game-tile-copy h3 { margin: 0; font-family: Georgia,serif; font-size: 19px; line-height: 1.25; }
.slot-game-tile-copy h3 a { color: var(--ink); text-decoration: none; }
.slot-game-tile-copy > p:not(.eyebrow) { min-height: 40px; margin: 8px 0 12px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.slot-game-tile-facts { display: grid; gap: 6px; margin: 0 0 14px; padding: 0; list-style: none; }
.slot-game-tile-facts li { display: grid; grid-template-columns: 88px minmax(0,1fr); gap: 8px; font-size: 11px; line-height: 1.4; }
.slot-game-tile-facts b { color: var(--ink); }
.slot-game-tile-facts span { color: var(--muted); }
.slot-game-tile-copy .text-link { font-size: 12px; }
.slot-hub-faq-list { max-width: 860px; }
.slot-hub-final .wrap { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.slot-hub-final h2 { margin: 0 0 7px; font-family: Georgia,serif; font-size: 25px; }
.slot-hub-final p { max-width: 700px; margin-bottom: 0; color: var(--muted); }
.slot-listing-shelf { padding-top: 18px; padding-bottom: 18px; }
.slot-listing-check { grid-template-columns: minmax(0,1.5fr) minmax(190px,.7fr) auto; }
.slot-listing-check ul { margin: 0; padding-left: 18px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.slot-demo-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(290px,.82fr); align-items: center; gap: 36px; }
.slot-demo-copy h2,.slot-mechanic-grid h2,.slot-round-grid h2,.slot-session-copy h2,.slot-faq-layout h2 { margin: 4px 0 14px; font-family: Georgia,serif; font-size: clamp(23px,3vw,32px); line-height: 1.16; }
.slot-demo-copy > p:not(.eyebrow),.slot-mechanic-grid p,.slot-round-grid p,.slot-session-copy p { color: var(--muted); line-height: 1.75; }
.slot-demo-art { min-width: 0; margin: 0; padding: 12px; border: 1px solid #dcd9d0; background: #fff; }
.slot-demo-art .fitz-image,.slot-demo-art img { display: block; width: 100%; }
.slot-demo-art figcaption { padding: 9px 4px 0; color: var(--muted); font-size: 11px; }
.slot-demo-actions .button { white-space: normal; }
.slot-mechanic-grid,.slot-round-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(250px,.85fr); align-items: start; gap: 32px; }
.slot-mechanic-grid > article,.slot-feature-note { padding-top: 10px; }
.slot-feature-note { padding: 20px; border-top: 3px solid #8a7045; background: #f6f4ed; }
.slot-feature-note h3 { margin: 0 0 9px; font-family: Georgia,serif; font-size: 20px; }
.slot-feature-note p:last-child { margin-bottom: 0; }
.slot-provider-source a { color: var(--ink); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.slot-round-diagram { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 110px; margin: 0; padding: 18px; border: 1px solid #dcd9d0; background: #fff; }
.slot-round-diagram span { padding: 10px 8px; background: #f3f0e8; color: var(--ink); font-size: 10px; font-weight: 700; letter-spacing: .04em; text-align: center; }
.slot-round-diagram b { color: #8a7045; }
.slot-session-copy { max-width: 880px; }
.slot-session-copy > p:not(.eyebrow) { max-width: 820px; }
.slot-session-copy > .button { margin-top: 10px; }
.slot-related-section .slot-cluster-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.slot-related-section .slot-game-tile { display: grid; grid-template-columns: 112px minmax(0,1fr); }
.slot-related-section .slot-game-art { height: 100%; min-height: 100%; aspect-ratio: auto; }
.slot-related-section .slot-game-tile-copy { padding: 12px; }
.slot-related-section .slot-game-tile-copy > p:not(.eyebrow),.slot-related-section .slot-game-tile-facts { display: none; }
.slot-faq-layout { display: grid; grid-template-columns: minmax(190px,.7fr) minmax(0,1.3fr); gap: 34px; }
.slot-game-final-panel { grid-template-columns: minmax(0,1fr) auto; }
@media (max-width: 1050px) {
  .slot-cluster-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .slot-listing-check { grid-template-columns: minmax(0,1fr) minmax(180px,.6fr); }
  .slot-listing-check .button { grid-column: 1 / -1; justify-self: start; }
  .slot-related-section .slot-cluster-grid { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .slot-featured-guide,.slot-listing-check,.slot-game-final-panel { grid-template-columns: 1fr; gap: 15px; padding: 20px; }
  .slot-featured-guide .button,.slot-listing-check .button,.slot-game-final-panel .button { justify-self: start; }
  .slot-filter-nav { grid-template-columns: 1fr; gap: 5px; }
  .slot-filter-group { padding: 11px 0; }
  .slot-cluster-grid { grid-template-columns: 1fr; }
  .slot-game-tile { display: grid; grid-template-columns: 112px minmax(0,1fr); }
  .slot-game-art { height: 100%; min-height: 100%; aspect-ratio: auto; }
  .slot-game-tile-copy { padding: 12px; }
  .slot-game-tile-copy h3 { font-size: 16px; }
  .slot-game-tile-copy > p:not(.eyebrow) { min-height: auto; margin: 5px 0 8px; font-size: 11px; }
  .slot-game-tile-facts { gap: 3px; margin-bottom: 8px; }
  .slot-game-tile-facts li { grid-template-columns: 61px minmax(0,1fr); gap: 4px; font-size: 10px; }
  .slot-game-tile-copy .text-link { font-size: 11px; }
  .slot-filter-results-list { grid-template-columns: 1fr; }
  .slot-hub-final .wrap { align-items: flex-start; flex-direction: column; }
  .slot-demo-layout,.slot-mechanic-grid,.slot-round-grid,.slot-faq-layout { grid-template-columns: 1fr; gap: 20px; }
  .slot-demo-actions { align-items: stretch; flex-direction: column; }
  .slot-demo-actions .button { width: 100%; justify-content: center; }
  .slot-round-diagram { min-height: 95px; padding: 12px 8px; }
  .slot-round-diagram span { padding: 8px 5px; font-size: 9px; }
  .slot-related-section .slot-game-tile { grid-template-columns: 112px minmax(0,1fr); }
}
