:root {
  color-scheme: light;
  --ink: #172820; --muted: #64736b; --green: #08744e; --green-dark: #07563d; --green-soft: #e8f5ed;
  --lime: #e1f28a; --paper: #fff; --canvas: #f5f8f5; --line: #e2eae4; --shadow: 0 14px 42px rgba(18,48,34,.08);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--paper); }
body { margin: 0; color: var(--ink); background: var(--paper); font-size: 16px; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--ink); outline-offset: 3px; box-shadow: 0 0 0 2px #fff; }
.skip-link { position: absolute; z-index: 100; top: 8px; left: 8px; transform: translateY(-150%); padding: 12px 16px; border-radius: 8px; background: var(--ink); color: white; }
.skip-link:focus { transform: translateY(0); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.top-strip { display: flex; align-items: center; gap: 9px; min-height: 34px; padding: 6px max(24px,calc((100% - 1280px)/2)); background: #0e3829; color: #eaf3ed; font-size: 10px; font-weight: 800; letter-spacing: .105em; }
.top-strip__pulse { width: 7px; height: 7px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 4px rgba(225,242,138,.13); }
.top-strip__divider { color: #82a293; }
.top-strip__right { margin-left: auto; color: #d3e2d9; letter-spacing: .04em; }
.site-header { position: sticky; z-index: 30; top: 0; display: flex; align-items: center; gap: 34px; min-height: 78px; padding: 0 max(24px,calc((100% - 1280px)/2)); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.96); backdrop-filter: blur(12px); }
.brand { display: inline-flex; align-items: center; gap: 9px; flex: 0 0 auto; color: var(--ink); }
.brand-symbol { display: inline-flex; align-items: center; gap: 2px; width: 23px; height: 25px; }
.brand-symbol i { display: block; width: 5px; height: 17px; border-radius: 4px; background: var(--green); transform: skew(-18deg); }
.brand-symbol i:nth-child(2) { height: 22px; background: #98c344; }
.brand-symbol i:nth-child(3) { height: 14px; background: #f0a258; }
.brand-word { font-size: 17px; font-weight: 900; letter-spacing: .055em; }
.brand-period { color: var(--green); }
.main-nav { display: flex; align-items: stretch; gap: 24px; height: 78px; }
.nav-link { position: relative; display: inline-flex; align-items: center; color: #52635a; font-size: 13px; font-weight: 700; white-space: nowrap; }
.nav-link:hover, .nav-link.is-active { color: var(--green-dark); }
.nav-link.is-active::after { position: absolute; right: 0; bottom: 0; left: 0; height: 3px; border-radius: 4px 4px 0 0; background: var(--green); content: ""; }
.header-tools { display: flex; align-items: center; gap: 14px; margin-left: auto; }
.locale-pill { display: inline-flex; align-items: center; gap: 6px; color: #53635b; font-size: 11px; font-weight: 800; }
.flag-ie { display: grid; width: 22px; height: 17px; place-items: center; border: 1px solid #e2e8e3; border-radius: 3px; background: linear-gradient(90deg,#159b62 0 33%,#fff 33% 66%,#f28b4c 66%); color: transparent; font-size: 0; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 48px; padding: 0 20px; border: 1px solid transparent; border-radius: 10px; font-size: 13px; font-weight: 800; line-height: 1.2; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; cursor: pointer; }
.button:hover { transform: translateY(-1px); box-shadow: 0 9px 20px rgba(18,48,34,.12); }
.button--primary { background: var(--green); color: white; }
.button--primary:hover { background: var(--green-dark); }
.button--outline { border-color: #cad8cf; background: white; color: var(--green-dark); }
.button--small { min-height: 40px; padding: 0 16px; font-size: 12px; }
.button--full { width: 100%; }
.menu-toggle, .mobile-nav { display: none; }
.site-main { min-height: 70vh; }
.home-hero { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; min-height: 448px; max-width: 1280px; margin: 0 auto; padding: 48px 34px 46px; overflow: hidden; }
.home-hero__copy { position: relative; z-index: 2; max-width: 620px; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: #72837a; font-size: 10px; font-weight: 850; letter-spacing: .13em; line-height: 1.45; text-transform: uppercase; }
.eyebrow--green { color: var(--green); }
.eyebrow--green i { width: 7px; height: 7px; border-radius: 50%; background: #8ec655; }
.home-hero h1 { margin: 18px 0 15px; font-size: clamp(40px,5.4vw,68px); font-weight: 780; letter-spacing: -.055em; line-height: 1.02; }
.home-hero h1 em { color: var(--green); font-style: normal; }
.home-hero__copy > p { max-width: 590px; margin: 0; color: var(--muted); font-size: 17px; line-height: 1.7; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 26px; }
.hero-proof { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 25px; color: #65736c; font-size: 11px; font-weight: 700; }
.hero-proof span { display: inline-flex; align-items: center; gap: 7px; }
.hero-proof b { display: grid; width: 20px; height: 16px; place-items: center; border-radius: 3px; background: #eff6f0; color: var(--green); font-size: 9px; }
.home-hero__visual { position: relative; display: grid; min-height: 348px; place-items: center; isolation: isolate; }
.home-hero__visual::before { position: absolute; z-index: -1; width: 340px; height: 340px; border-radius: 50%; background: radial-gradient(circle,#edf8df 0 29%,#f5f9ed 30% 57%,transparent 58%); content: ""; }
.hero-orbit { position: absolute; width: 290px; height: 290px; border: 1px solid rgba(8,116,78,.13); border-radius: 50%; transform: rotate(-22deg) scaleY(.56); }
.hero-orbit--two { width: 250px; height: 250px; border-color: rgba(231,157,82,.3); transform: rotate(38deg) scaleY(.54); }
.hero-ticket { position: relative; display: flex; flex-direction: column; width: 240px; min-height: 238px; padding: 18px 20px 15px; border: 1px solid #edf1e7; border-radius: 19px; background: white; box-shadow: 0 25px 65px rgba(36,72,46,.16); transform: rotate(-4deg); }
.hero-ticket__top, .hero-ticket__foot { display: flex; align-items: center; justify-content: space-between; color: #78867e; font-size: 9px; font-weight: 850; letter-spacing: .12em; }
.hero-ticket__top i { width: 7px; height: 7px; margin-right: auto; border-radius: 50%; background: #8ac755; }
.hero-ticket__top b { padding: 3px 6px; border-radius: 4px; background: #f3f7ec; color: var(--green); }
.hero-ticket__symbol { display: grid; width: 68px; height: 68px; margin: 22px auto 10px; place-items: center; border-radius: 22px; background: linear-gradient(140deg,#dff2a5,#8cc657); color: #155b38; font-size: 37px; box-shadow: inset 0 0 0 5px rgba(255,255,255,.28); }
.hero-ticket strong { text-align: center; font-size: 20px; letter-spacing: -.04em; }
.hero-ticket small { margin-top: 3px; color: var(--muted); text-align: center; font-size: 10px; }
.hero-ticket__foot { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--line); }
.hero-ticket__foot b { color: var(--green); }
.hero-chip { position: absolute; z-index: 3; display: grid; width: 56px; height: 56px; place-items: center; border: 5px solid white; border-radius: 50%; background: #f5ac65; color: #75431e; font-size: 9px; font-weight: 900; box-shadow: 0 8px 20px rgba(84,64,36,.16); }
.hero-chip--a { top: 55px; right: 18%; }
.hero-chip--b { bottom: 45px; left: 18%; width: 48px; height: 48px; background: #b5d9e7; color: #235569; }
.hero-spark { position: absolute; color: #eb9b50; font-size: 21px; }
.hero-spark--one { top: 45px; left: 21%; }
.hero-spark--two { right: 13%; bottom: 72px; color: #80ba59; font-size: 28px; }
.preview-notice { display: flex; align-items: center; gap: 14px; max-width: 1212px; margin: 0 auto; padding: 14px 18px; border: 1px solid #dfe9df; border-radius: 12px; background: #f7faf5; }
.notice-icon { display: grid; flex: 0 0 26px; width: 26px; height: 26px; place-items: center; border-radius: 50%; background: #e6f1df; color: var(--green); font-size: 13px; font-weight: 900; }
.preview-notice p { margin: 0; color: #607067; font-size: 12px; line-height: 1.55; }
.preview-notice strong { color: var(--ink); }
.notice-tag { margin-left: auto; color: var(--green); font-size: 9px; font-weight: 850; letter-spacing: .1em; white-space: nowrap; }
.home-section { max-width: 1280px; margin: 0 auto; padding: 70px 34px; }
.home-section--soft { max-width: none; padding-right: max(34px,calc((100% - 1212px)/2)); padding-left: max(34px,calc((100% - 1212px)/2)); background: var(--canvas); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 27px; }
.section-heading h2 { margin: 7px 0 4px; font-size: clamp(26px,3vw,34px); letter-spacing: -.04em; line-height: 1.15; }
.section-heading p { margin: 0; color: var(--muted); font-size: 14px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--green); font-size: 12px; font-weight: 800; }
.text-link:hover { color: var(--green-dark); text-decoration: underline; text-underline-offset: 3px; }
.text-link--large { padding: 8px 0; white-space: nowrap; }
.format-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 13px; }
.format-card { position: relative; display: flex; flex-direction: column; min-height: 144px; padding: 18px 19px; border: 1px solid var(--line); border-radius: 14px; background: white; transition: transform .2s ease,box-shadow .2s ease; }
.format-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
.format-icon { display: grid; width: 36px; height: 36px; margin-bottom: 14px; place-items: center; border-radius: 11px; background: #eaf5ec; color: var(--green); font-size: 20px; }
.format-card--live .format-icon { background: #eef2ff; color: #5868a8; }
.format-card--games .format-icon { background: #fff3e8; color: #bb6c28; }
.format-card--account .format-icon { background: #eaf4f4; color: #337477; }
.format-card strong { font-size: 15px; }
.format-card small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.format-arrow { position: absolute; top: 19px; right: 18px; color: #9aaba0; font-size: 18px; }
.check-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.check-grid article { min-height: 196px; padding: 22px; border: 1px solid var(--line); border-radius: 14px; background: white; }
.check-number { color: #8ab654; font-size: 11px; font-weight: 900; letter-spacing: .08em; }
.check-grid h3 { margin: 13px 0 7px; font-size: 17px; letter-spacing: -.02em; }
.check-grid p { min-height: 51px; margin: 0 0 13px; color: var(--muted); font-size: 12px; }
.check-grid a { color: var(--green); font-size: 11px; font-weight: 800; }
.offer-panel { display: flex; align-items: center; gap: 21px; padding-top: 35px; padding-bottom: 35px; }
.offer-panel__mark { display: grid; flex: 0 0 54px; width: 54px; height: 54px; place-items: center; border: 1px solid #dae7d8; border-radius: 15px; background: #f4f8ed; color: #79a744; font-size: 26px; }
.offer-panel__copy { flex: 1; }
.offer-panel__copy h2 { margin: 3px 0; font-size: 21px; }
.offer-panel__copy p { margin: 0; color: var(--muted); font-size: 12px; }
.help-link-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.help-link-grid a { display: flex; flex-direction: column; min-height: 115px; padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.help-link-grid a > span { color: #8caa83; font-size: 10px; font-weight: 900; }
.help-link-grid strong { margin-top: 8px; font-size: 13px; }
.help-link-grid small { margin-top: 2px; color: var(--muted); font-size: 10px; }
.safer-panel { display: flex; align-items: center; gap: 22px; max-width: 1212px; margin-bottom: 40px; padding: 27px 30px; border: 1px solid #dce7d8; border-radius: 15px; background: #f3f8ed; }
.safer-badge { display: grid; flex: 0 0 56px; width: 56px; height: 56px; place-items: center; border: 2px solid #8caf67; border-radius: 50%; color: #426a34; font-size: 17px; font-weight: 900; }
.safer-panel h2 { margin: 3px 0; font-size: 21px; }
.safer-panel p { max-width: 790px; margin: 0 0 9px; color: #52645a; font-size: 12px; }
.faq-mini-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.faq-mini-grid a { display: flex; flex-direction: column; gap: 5px; padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.faq-mini-grid strong { font-size: 12px; }
.faq-mini-grid span { color: var(--muted); font-size: 11px; }
.game-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; margin: 0; padding: 0; list-style: none; }
.game-grid > li { min-width: 0; list-style: none; }
.game-card { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: white; transition: transform .18s ease,box-shadow .18s ease; }
.game-card:hover { transform: translateY(-3px); box-shadow: 0 13px 32px rgba(18,48,34,.1); }
.game-card__art { position: relative; display: grid; min-height: 145px; overflow: hidden; place-items: center; }
.game-art { isolation: isolate; background: linear-gradient(135deg,#e3f0d0,#b4d687); }
.game-art--1 { background: linear-gradient(135deg,#cdeac5,#85c890); }
.game-art--2 { background: linear-gradient(135deg,#f7d8af,#f09e69); }
.game-art--3 { background: linear-gradient(135deg,#c7d9f0,#8cb4d4); }
.game-art--4 { background: linear-gradient(135deg,#d4c9ee,#a78bd2); }
.game-art--5 { background: linear-gradient(135deg,#ffddb8,#f2a769); }
.game-art--6 { background: linear-gradient(135deg,#d8e8a7,#94bf5c); }
.game-art__glyph { position: relative; z-index: 2; display: grid; width: 62px; height: 62px; place-items: center; border: 1px solid rgba(255,255,255,.72); border-radius: 19px; background: rgba(255,255,255,.38); color: rgba(19,55,37,.78); font-size: 30px; font-weight: 900; box-shadow: 0 12px 28px rgba(45,64,37,.12); }
.game-art__orb { position: absolute; top: -35px; right: -18px; width: 115px; height: 115px; border: 1px solid rgba(255,255,255,.48); border-radius: 50%; box-shadow: 0 0 0 13px rgba(255,255,255,.1),0 0 0 28px rgba(255,255,255,.08); }
.game-art__shine { position: absolute; bottom: -70px; left: -20px; width: 220px; height: 100px; border-radius: 50%; background: rgba(255,255,255,.18); transform: rotate(-18deg); }
.game-card__body { padding: 14px 15px 13px; }
.game-card__eyebrow { color: #829084; font-size: 9px; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.game-card h3 { margin: 5px 0 4px; font-size: 15px; letter-spacing: -.025em; line-height: 1.25; }
.game-card h3 a:hover { color: var(--green); }
.game-card__body > p { display: -webkit-box; min-height: 52px; margin: 0; overflow: hidden; color: var(--muted); font-size: 10px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.game-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 12px; padding-top: 10px; border-top: 1px solid #edf1ed; }
.game-card__fact { color: #66776c; font-size: 9px; font-weight: 750; }
.game-card__meta .text-link { font-size: 10px; }
.breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 21px; color: #839087; font-size: 11px; }
.breadcrumbs a { color: #617268; }
.breadcrumbs a:hover { color: var(--green); text-decoration: underline; }
.article-page,.directory-page { max-width: 1360px; margin: 0 auto; padding: 26px 24px 80px; }
.article-hero { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 245px; padding: 32px 35px; overflow: hidden; border: 1px solid #e5eee5; border-radius: 18px; background: linear-gradient(112deg,#f5faf1 0%,#f1f8f6 58%,#f8f5ed 100%); }
.article-hero > div:first-child { position: relative; z-index: 1; max-width: 820px; }
.article-hero h1,.directory-hero h1 { margin: 9px 0; font-size: clamp(32px,4vw,47px); font-weight: 780; letter-spacing: -.05em; line-height: 1.06; }
.article-hero p,.directory-hero p { max-width: 770px; margin: 0; color: #5f7067; font-size: 15px; line-height: 1.65; }
.article-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 17px; margin-top: 20px; }
.quiet-link { color: var(--green); font-size: 12px; font-weight: 800; }
.article-hero__mark { display: grid; flex: 0 0 100px; width: 100px; height: 100px; place-items: center; border: 1px solid rgba(8,116,78,.13); border-radius: 31px; background: rgba(255,255,255,.72); color: #78a74d; font-size: 48px; transform: rotate(9deg); }
.quick-answer { margin-top: 19px; padding: 20px 23px; border-left: 4px solid var(--green); border-radius: 0 12px 12px 0; background: #f5f9f3; }
.quick-answer p { max-width: 1000px; margin: 5px 0 0; color: #293d31; font-size: 15px; font-weight: 650; line-height: 1.65; }
.game-facts { display: grid; grid-template-columns: repeat(3,1fr); gap: 0; margin-top: 18px; overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: white; }
.game-facts > div { min-height: 78px; padding: 14px 17px; border-bottom: 1px solid var(--line); }
.game-facts > div:nth-child(3n+2),.game-facts > div:nth-child(3n+3) { border-left: 1px solid var(--line); }
.game-facts span { display: block; color: #7b8a80; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.game-facts strong { display: block; margin-top: 4px; color: #263c30; font-size: 13px; line-height: 1.4; }
.game-facts__mechanic,.game-facts__source { grid-column: span 3; border-left: 0 !important; }
.game-facts__source { min-height: auto !important; border-bottom: 0 !important; }
.source-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 5px; color: var(--green); font-size: 12px; font-weight: 800; }
.source-link--muted { color: #6d7e73; font-weight: 600; }
.article-layout { display: grid; grid-template-columns: minmax(0,1fr) 285px; align-items: start; gap: 33px; margin-top: 28px; }
.article-content { min-width: 0; }
.article-section { display: grid; grid-template-columns: 44px 1fr; gap: 15px; padding: 25px 0; border-bottom: 1px solid var(--line); scroll-margin-top: 105px; }
.section-index { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 11px; background: #eef6e8; color: #679343; font-size: 10px; font-weight: 900; }
.article-section h2 { margin: 2px 0 9px; font-size: 21px; letter-spacing: -.03em; line-height: 1.25; }
.article-section p { margin: 0 0 10px; color: #53655b; font-size: 14px; line-height: 1.8; }
.check-list { display: grid; gap: 10px; margin: 0 0 15px; padding: 0; list-style: none; }
.check-list li { display: flex; align-items: start; gap: 10px; color: #42564a; font-size: 13px; line-height: 1.6; }
.list-check { display: grid; flex: 0 0 19px; width: 19px; height: 19px; margin-top: 1px; place-items: center; border-radius: 50%; background: #e8f4e6; color: #438044; font-size: 8px; font-weight: 900; text-transform: uppercase; }
.article-faq details { padding: 13px 15px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfa; }
.article-faq summary { color: #42564a; font-size: 12px; font-weight: 800; cursor: pointer; }
.article-faq details p { margin: 10px 0 0; }
.article-cta { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 25px 0; padding: 22px; border: 1px solid #dce9dc; border-radius: 13px; background: #f6faf4; }
.article-cta h2 { margin: 4px 0; font-size: 17px; }
.article-cta p { margin: 0; color: var(--muted); font-size: 11px; }
.article-aside { position: sticky; top: 101px; display: grid; gap: 12px; }
.aside-card { display: flex; flex-direction: column; padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: white; box-shadow: 0 8px 22px rgba(18,48,34,.04); }
.aside-icon { display: grid; width: 34px; height: 34px; margin-bottom: 12px; place-items: center; border-radius: 10px; background: #ecf5e7; color: var(--green); font-size: 17px; }
.aside-card > strong { margin-top: 6px; font-size: 15px; line-height: 1.35; }
.aside-card p { margin: 8px 0 12px; color: var(--muted); font-size: 11px; line-height: 1.6; }
.aside-card > a:not(.source-link) { color: var(--green); font-size: 10px; font-weight: 800; }
.aside-card--related { gap: 10px; }
.aside-card--related > a { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-bottom: 9px; border-bottom: 1px solid #eef1ed; color: #45594c !important; font-size: 10px !important; line-height: 1.4; }
.aside-card--related > a:last-child { padding-bottom: 0; border-bottom: 0; }
.aside-note { padding: 14px; border-radius: 12px; background: #f1f7eb; }
.aside-note strong { font-size: 11px; }
.aside-note p { margin: 4px 0 7px; color: #657269; font-size: 10px; }
.aside-note a { color: var(--green); font-size: 10px; font-weight: 800; }
.directory-hero { padding: 29px 32px; border: 1px solid #e4ece3; border-radius: 16px; background: linear-gradient(110deg,#f5faf1,#f8faf7 72%,#fbf7f0); }
.directory-hero h1 { font-size: clamp(33px,4vw,46px); }
.directory-hero p { font-size: 14px; }
.game-controls { display: grid; grid-template-columns: minmax(250px,1fr) auto auto; align-items: center; gap: 13px; margin: 24px 0 17px; }
.search-field { display: flex; align-items: center; gap: 10px; height: 46px; padding: 0 14px; border: 1px solid #dce6df; border-radius: 10px; background: white; }
.search-icon { color: #789084; font-size: 21px; line-height: 1; }
.search-field input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--ink); font-size: 12px; }
.search-field input::placeholder { color: #86948b; }
.filter-pills { display: flex; gap: 6px; }
.filter-pill { min-height: 38px; padding: 0 13px; border: 1px solid var(--line); border-radius: 30px; background: white; color: #5d6d63; font-size: 10px; font-weight: 800; cursor: pointer; }
.filter-pill.is-selected { border-color: var(--green); background: var(--green-soft); color: var(--green-dark); }
.results-count { margin: 0; color: #738177; font-size: 10px; font-weight: 750; white-space: nowrap; }
.game-grid--directory { grid-template-columns: repeat(3,minmax(0,1fr)); }
.empty-results { padding: 28px; border: 1px dashed #cbd8cf; border-radius: 12px; color: var(--muted); text-align: center; }
.topic-shortcuts { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0; }
.topic-shortcuts a { display: inline-flex; align-items: center; min-height: 34px; padding: 0 13px; border: 1px solid var(--line); border-radius: 30px; background: white; color: #52645a; font-size: 10px; font-weight: 750; }
.topic-shortcuts a:hover { border-color: #a9c6af; color: var(--green); }
.guide-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.guide-grid > li { min-width: 0; list-style: none; }
.guide-card { display: flex; flex-direction: column; min-height: 198px; padding: 18px; border: 1px solid var(--line); border-radius: 13px; background: white; transition: border .18s ease,transform .18s ease,box-shadow .18s ease; }
.guide-card:hover { transform: translateY(-2px); border-color: #b5cdb7; box-shadow: var(--shadow); }
.guide-card__category { margin-bottom: 9px; color: #7a927b; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.guide-card strong { font-size: 14px; line-height: 1.35; }
.guide-card p { flex: 1; margin: 7px 0 12px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.guide-card--feature { background: #f4f8ed; }
.promo-card { display: grid; grid-template-columns: 65px 1fr; gap: 22px; margin-top: 25px; padding: 28px; border: 1px solid #dce7d8; border-radius: 16px; background: #f8fbf5; }
.promo-card__icon { display: grid; width: 60px; height: 60px; place-items: center; border-radius: 18px; background: #edf5e7; color: #7caa51; font-size: 31px; }
.promo-card h2 { margin: 5px 0 6px; font-size: 22px; letter-spacing: -.03em; }
.promo-card p { max-width: 760px; margin: 0; color: #5c6c62; font-size: 13px; line-height: 1.7; }
.promo-card dl { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 20px 0; }
.promo-card dl div { padding: 11px 13px; border: 1px solid var(--line); border-radius: 9px; background: white; }
.promo-card dt { color: #7b8b80; font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.promo-card dd { margin: 3px 0 0; color: #354b3c; font-size: 12px; font-weight: 750; }
.site-footer { margin-top: 30px; border-top: 1px solid var(--line); background: #f8faf8; }
.footer-main { display: grid; grid-template-columns: 1.5fr repeat(3,1fr); gap: 38px; max-width: 1212px; margin: 0 auto; padding: 44px 24px 35px; }
.footer-brand p { max-width: 275px; margin: 14px 0; color: #69786f; font-size: 11px; line-height: 1.7; }
.brand--footer .brand-word { font-size: 15px; }
.footer-age { display: flex; align-items: center; gap: 9px; color: #68776e; font-size: 9px; line-height: 1.4; }
.footer-age strong { display: grid; width: 31px; height: 31px; place-items: center; border: 1px solid #8aaa7d; border-radius: 50%; color: #4f703c; font-size: 11px; }
.footer-col { display: flex; flex-direction: column; gap: 9px; }
.footer-col strong { margin-bottom: 3px; color: #65756a; font-size: 9px; letter-spacing: .11em; }
.footer-col a { color: #52635a; font-size: 10px; }
.footer-col a:hover { color: var(--green); text-decoration: underline; }
.footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 11px; max-width: 1212px; margin: 0 auto; padding: 16px 24px 20px; border-top: 1px solid var(--line); color: #7a887f; font-size: 9px; }
.footer-bottom a { color: #587263; }
.route-dialog { position: fixed; inset: 0; width: min(430px,calc(100% - 32px)); max-width: none; margin: auto; padding: 30px; border: 1px solid #dfe8df; border-radius: 17px; background: white; color: var(--ink); box-shadow: 0 24px 90px rgba(11,38,27,.25); }
.route-dialog::backdrop { background: rgba(16,35,26,.42); backdrop-filter: blur(2px); }
.dialog-close { position: absolute; top: 10px; right: 13px; display: grid; width: 36px; height: 36px; place-items: center; border: 0; border-radius: 8px; background: #f2f6f1; color: #47594d; font-size: 24px; cursor: pointer; }
.dialog-mark { display: grid; width: 43px; height: 43px; margin-bottom: 14px; place-items: center; border-radius: 13px; background: #ecf5e7; color: var(--green); font-size: 20px; }
.route-dialog h2 { margin: 8px 0; font-size: 24px; letter-spacing: -.04em; }
.route-dialog p { color: #5f7066; font-size: 12px; line-height: 1.7; }
.route-dialog code { padding: 2px 4px; border-radius: 4px; background: #f0f4ef; color: #385b44; }
.dialog-route { padding: 9px 11px; border-radius: 8px; background: #f7f9f6; font-size: 10px !important; overflow-wrap: anywhere; }
.toast { position: fixed; z-index: 50; right: 20px; bottom: 20px; display: none; max-width: 320px; padding: 13px 16px; border-radius: 10px; background: var(--ink); color: white; font-size: 12px; box-shadow: var(--shadow); }
@media (max-width: 1080px) {
  .site-header { gap: 22px; } .main-nav { gap: 14px; } .nav-link { font-size: 11px; } .locale-pill { display: none; }
  .game-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } .game-grid--directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .top-strip { padding-right: 20px; padding-left: 20px; } .site-header { min-height: 68px; padding: 0 20px; } .main-nav { display: none; }
  .menu-toggle { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 42px; height: 42px; padding: 9px; border: 1px solid var(--line); border-radius: 9px; background: white; cursor: pointer; }
  .menu-toggle span { display: block; width: 100%; height: 2px; border-radius: 2px; background: #40564a; }
  .mobile-nav { position: absolute; top: 68px; right: 0; left: 0; gap: 0; padding: 8px 20px 18px; border-bottom: 1px solid var(--line); background: white; box-shadow: 0 12px 22px rgba(20,45,30,.07); }
  .mobile-nav:not([hidden]) { display: grid; } .mobile-nav .nav-link { min-height: 43px; border-bottom: 1px solid #edf1ed; font-size: 13px; }
  .mobile-nav .nav-link.is-active::after { display: none; } .mobile-nav .button { margin-top: 12px; }
  .home-hero { grid-template-columns: 1fr .8fr; min-height: 410px; padding: 42px 24px; }
  .home-hero__visual { min-height: 270px; transform: scale(.86); } .home-hero__copy > p { font-size: 14px; }
  .home-section { padding: 56px 24px; } .home-section--soft { padding-right: 24px; padding-left: 24px; }
  .format-grid { grid-template-columns: repeat(2,1fr); } .help-link-grid { grid-template-columns: repeat(2,1fr); }
  .game-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .article-layout { grid-template-columns: 1fr; gap: 20px; }
  .article-aside { position: static; grid-template-columns: repeat(2,1fr); } .aside-note { grid-column: span 2; }
  .game-controls { grid-template-columns: 1fr auto; } .results-count { grid-column: 2; grid-row: 2; }
  .footer-main { grid-template-columns: repeat(2,1fr); gap: 27px; }
}
@media (max-width: 560px) {
  body { font-size: 15px; } .top-strip { min-height: 31px; font-size: 8px; letter-spacing: .07em; } .top-strip__right { font-size: 8px; }
  .site-header { min-height: 62px; gap: 10px; padding: 0 15px; } .brand-word { font-size: 14px; } .header-tools { gap: 8px; }
  .header-tools > .button { min-height: 37px; padding: 0 10px; font-size: 10px; } .menu-toggle { width: 38px; height: 38px; }
  .mobile-nav { top: 62px; }
  .home-hero { display: block; padding: 35px 20px 24px; } .home-hero h1 { margin-top: 13px; font-size: 42px; }
  .home-hero__copy > p { font-size: 13px; } .hero-actions { gap: 8px; margin-top: 19px; }
  .hero-actions .button { min-height: 43px; padding: 0 13px; font-size: 11px; } .hero-proof { gap: 11px; margin-top: 17px; font-size: 9px; }
  .home-hero__visual { min-height: 252px; margin-top: 5px; transform: scale(.84); }
  .preview-notice { align-items: flex-start; gap: 9px; margin: 0 15px; padding: 12px; } .preview-notice p { font-size: 10px; } .notice-tag { display: none; }
  .home-section { padding: 45px 17px; } .home-section--soft { padding-right: 17px; padding-left: 17px; }
  .section-heading { display: block; margin-bottom: 19px; } .section-heading h2 { font-size: 25px; } .section-heading p { font-size: 12px; } .text-link--large { margin-top: 12px; }
  .format-grid { gap: 9px; } .format-card { min-height: 125px; padding: 13px; } .format-icon { width: 31px; height: 31px; margin-bottom: 10px; font-size: 17px; }
  .format-card strong { font-size: 12px; } .format-card small { font-size: 9px; }
  .check-grid,.faq-mini-grid { grid-template-columns: 1fr; gap: 9px; } .check-grid article { min-height: 0; padding: 17px; } .check-grid p { min-height: 0; }
  .offer-panel { display: grid; grid-template-columns: 44px 1fr; gap: 12px; } .offer-panel__mark { width: 44px; height: 44px; }
  .offer-panel__copy h2 { font-size: 17px; } .offer-panel__copy p { font-size: 10px; } .offer-panel .button { grid-column: 2; justify-self: start; min-height: 40px; font-size: 10px; }
  .help-link-grid { gap: 8px; } .help-link-grid a { min-height: 104px; padding: 12px; }
  .safer-panel { align-items: flex-start; gap: 14px; margin: 0 15px 20px; padding: 18px 15px; } .safer-badge { flex-basis: 43px; width: 43px; height: 43px; font-size: 13px; }
  .safer-panel h2 { font-size: 17px; } .safer-panel p { font-size: 10px; }
  .game-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; } .game-card__art { min-height: 108px; } .game-card__body { padding: 10px; }
  .game-card h3 { font-size: 12px; } .game-card__body > p { min-height: 48px; font-size: 9px; }
  .game-card__eyebrow,.game-card__fact { font-size: 7px; } .game-card__meta .text-link { font-size: 8px; }
  .article-page,.directory-page { padding: 19px 15px 55px; } .breadcrumbs { gap: 6px; margin-bottom: 14px; font-size: 9px; }
  .article-hero { min-height: 0; padding: 23px 19px; } .article-hero h1,.directory-hero h1 { font-size: 32px; }
  .article-hero p,.directory-hero p { font-size: 12px; } .article-hero__mark { flex-basis: 45px; width: 45px; height: 45px; border-radius: 15px; font-size: 23px; }
  .article-hero__actions { gap: 12px; margin-top: 16px; } .article-hero__actions .button { min-height: 42px; padding: 0 13px; font-size: 10px; }
  .quick-answer { padding: 15px; } .quick-answer p { font-size: 12px; } .game-facts > div { min-height: 69px; padding: 11px; }
  .game-facts strong { font-size: 11px; } .game-facts span { font-size: 7px; }
  .article-section { grid-template-columns: 30px 1fr; gap: 10px; padding: 20px 0; } .section-index { width: 27px; height: 27px; border-radius: 8px; font-size: 8px; }
  .article-section h2 { font-size: 18px; } .article-section p,.check-list li { font-size: 12px; }
  .article-cta { display: block; padding: 17px; } .article-cta .button { margin-top: 15px; } .article-aside { grid-template-columns: 1fr; } .aside-note { grid-column: auto; }
  .directory-hero { padding: 22px 18px; } .game-controls { grid-template-columns: 1fr; gap: 10px; } .filter-pills { flex-wrap: wrap; }
  .results-count { grid-column: auto; grid-row: auto; } .game-grid--directory { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .guide-grid { grid-template-columns: 1fr; gap: 9px; } .guide-card { min-height: 160px; padding: 15px; }
  .promo-card { grid-template-columns: 1fr; gap: 12px; padding: 20px 16px; } .promo-card h2 { font-size: 19px; } .promo-card p { font-size: 11px; }
  .promo-card dl { grid-template-columns: 1fr; gap: 7px; margin: 14px 0; } .promo-card dl div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
  .promo-card dd { text-align: right; } .footer-main { grid-template-columns: repeat(2,1fr); gap: 22px 15px; padding: 35px 17px 27px; }
  .footer-brand { grid-column: span 2; } .footer-brand p { max-width: 340px; } .footer-bottom { justify-content: flex-start; padding: 14px 17px 18px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }

.home-toc { display:flex; flex-wrap:wrap; align-items:center; gap:8px; max-width:1212px; margin:18px auto 10px; padding:12px 15px; border:1px solid var(--line); border-radius:11px; background:#fff; }
.home-toc strong { margin-right:5px; color:#819087; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.home-toc a { padding:5px 9px; border-radius:7px; color:#52645a; font-size:10px; font-weight:750; }
.home-toc a:hover { background:#edf5e9; color:var(--green); }
.home-facts { max-width:1212px; margin:12px auto; padding:17px 19px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.home-facts dl { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:0; }
.home-facts dl div { min-width:0; padding:3px 9px; border-left:1px solid var(--line); }
.home-facts dl div:first-child { border-left:0; }
.home-facts dt { color:#849187; font-size:8px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.home-facts dd { margin:4px 0 0; color:#344a3c; font-size:10px; font-weight:750; line-height:1.4; }
@media (max-width:820px) { .home-toc,.home-facts { margin-right:20px; margin-left:20px; } .home-facts dl { grid-template-columns:repeat(3,1fr); } .home-facts dl div:nth-child(4) { border-left:0; } }
@media (max-width:560px) { .home-toc { gap:4px; margin-right:15px; margin-left:15px; padding:10px; } .home-toc strong { flex-basis:100%; } .home-toc a { padding:5px 6px; font-size:9px; } .home-facts { margin-right:15px; margin-left:15px; padding:12px 10px; } .home-facts dl { grid-template-columns:repeat(2,1fr); gap:8px 3px; } .home-facts dl div:nth-child(odd) { border-left:0; } .home-facts dt { font-size:7px; } .home-facts dd { font-size:9px; } }

.home-hero--money { min-height: 500px; }
.hero-offer-note { display: grid; gap: 3px; max-width: 430px; margin-top: 18px; padding: 12px 15px; border: 1px solid #e7ecd9; border-radius: 10px; background: #fbfcf5; }
.hero-offer-note strong { color: #435548; font-size: 12px; }
.home-facts dl { grid-template-columns: repeat(5,minmax(0,1fr)); }
.home-section > p, .content-columns p { max-width: 860px; color: var(--muted); }
.funnel-panel { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 18px; }
.funnel-panel--bonus { margin: 28px auto; padding: 40px; background: linear-gradient(125deg,#fbfcf1,#fff 57%); }
.funnel-panel--game { margin: 28px auto; padding: 40px; background: linear-gradient(125deg,#eff8f2,#fff 60%); }
.funnel-panel--quick { margin: 28px auto; padding: 40px; background: #fff; }
.funnel-panel__intro { max-width: 880px; }
.funnel-panel h2, .payment-panel h2, .vip-panel h2, .final-cta h2 { margin: 7px 0 12px; font-size: clamp(25px,3vw,36px); letter-spacing: -.035em; line-height: 1.12; }
.funnel-panel p, .payment-panel p, .vip-panel p, .final-cta p { color: var(--muted); }
.bonus-checklist { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0; }
.bonus-checklist span { padding: 8px 11px; border: 1px solid #e6ead8; border-radius: 8px; background: #fff; color: #52644d; font-size: 11px; font-weight: 750; }
.funnel-steps { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; margin-top: 22px; color: #64736b; font-size: 11px; font-weight: 800; }
.funnel-steps span { padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.84); }
.funnel-steps b { color: var(--green); }
.bonus-calculator-card { display: grid; grid-template-columns: minmax(0,1fr) minmax(280px,.82fr); gap: 28px 40px; align-items: start; max-width: 1030px; margin-top: 26px; padding: 24px; border: 1px solid #e4e9dc; border-radius: 14px; background: #fff; }
.bonus-calculator-card > div > p { max-width: 520px; }
.bonus-calculator { display: grid; gap: 8px; }
.bonus-calculator label { margin-top: 6px; color: #52635a; font-size: 11px; font-weight: 800; }
.bonus-calculator input, .bonus-calculator select { width: 100%; min-height: 44px; padding: 9px 12px; border: 1px solid #cfd9d2; border-radius: 8px; background: #fff; color: var(--ink); }
.bonus-calculator .button { margin-top: 8px; }
.bonus-deposit-input[hidden] { display: none; }
.calculator-result { min-height: 40px; padding: 10px 12px; border-radius: 8px; background: #f3f7f2; color: #33503e; font-size: 12px; font-weight: 700; }
.bonus-calculator-card > .button, .bonus-calculator-card > .quiet-link { grid-column: 2; justify-self: start; }
.bonus-calculator-card > .button { margin-top: -10px; }
.bonus-calculator-card > .quiet-link { margin-top: -19px; }
.game-funnel-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin-top: 20px; }
.game-funnel-facts > div { padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.game-funnel-facts strong { display: block; margin: 7px 0; font-size: 16px; }
.game-funnel-facts p { margin: 0 0 12px; font-size: 13px; }
.game-funnel-facts a:not(.button) { color: var(--green-dark); font-size: 12px; font-weight: 800; }
.quick-path { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-top: 23px; }
.quick-path article { min-height: 245px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.quick-path h3 { margin: 14px 0 7px; font-size: 17px; }
.quick-path p { min-height: 86px; font-size: 12px; }
.quick-path article > a { color: var(--green-dark); font-size: 11px; font-weight: 800; }
.quick-path__cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin-top: 18px; padding: 16px 18px; border-radius: 10px; background: #eff7f0; }
.quick-path__cta p { margin: 0; font-size: 12px; }
.comparison-table-wrap { overflow-x: auto; margin: 20px 0; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.comparison-table { width: 100%; min-width: 690px; border-collapse: collapse; text-align: left; }
.comparison-table th, .comparison-table td { padding: 14px 16px; border-bottom: 1px solid var(--line); vertical-align: top; font-size: 12px; }
.comparison-table thead th { background: #f3f7f2; color: #53655b; font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.comparison-table tbody th { width: 20%; color: #263c2f; }
.comparison-table tbody tr:last-child th, .comparison-table tbody tr:last-child td { border-bottom: 0; }
.comparison-table a { color: var(--green-dark); font-weight: 800; }
.payment-panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; max-width: 1212px; margin: 28px auto; padding: 36px; border: 1px solid var(--line); border-radius: 16px; background: #f6faf6; }
.payment-panel__copy { max-width: 850px; }
.payment-panel__mark { display: grid; flex: 0 0 100px; width: 100px; height: 100px; place-items: center; border-radius: 30px; background: #e7f4e9; color: var(--green); font-size: 45px; font-weight: 800; }
.payment-panel .topic-shortcuts { display: flex; flex-wrap: wrap; gap: 9px; margin: 18px 0; }
.payment-panel .topic-shortcuts a { padding: 7px 10px; border: 1px solid #d8e4da; border-radius: 8px; background: #fff; color: #52645a; font-size: 11px; font-weight: 750; }
.content-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px; }
.content-columns p { margin-top: 0; font-size: 13px; }
.vip-panel { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(240px,.7fr); align-items: center; gap: 30px; max-width: 1212px; margin: 28px auto; padding: 34px; border: 1px solid #e4e9e5; border-radius: 16px; background: #fcfdfc; }
.vip-panel__links { display: grid; gap: 9px; }
.vip-panel__links a { display: flex; justify-content: space-between; gap: 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: #40584a; font-size: 12px; font-weight: 750; }
.final-cta { display: flex; align-items: center; justify-content: space-between; gap: 24px; max-width: 1212px; margin: 28px auto 50px; padding: 30px 34px; border-radius: 16px; background: #113a2a; color: #fff; }
.final-cta p { margin: 0; color: #d5e3da; }
.final-cta .eyebrow { color: #bed8c7; }
.final-cta .button--primary { flex: 0 0 auto; background: #fff; color: #07563d; }
.faq-list { display: grid; gap: 9px; }
.faq-list details { padding: 15px 17px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.faq-list summary { cursor: pointer; color: #263c2f; font-size: 13px; font-weight: 800; }
.faq-list details p { margin: 10px 0 0; color: var(--muted); font-size: 12px; }
.faq-list details a { color: var(--green-dark); font-weight: 800; }
@media (max-width: 1080px) { .home-facts dl { grid-template-columns: repeat(3,minmax(0,1fr)); } .home-facts dl div:nth-child(4) { border-left: 0; } .quick-path { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 820px) { .funnel-panel--bonus,.funnel-panel--game,.funnel-panel--quick { margin: 22px 20px; padding: 27px; } .bonus-calculator-card { grid-template-columns: 1fr; gap: 16px; } .bonus-calculator-card > .button,.bonus-calculator-card > .quiet-link { grid-column: 1; margin: 0; } .payment-panel,.vip-panel,.final-cta { margin-right: 20px; margin-left: 20px; padding: 26px; } .payment-panel__mark { flex-basis: 72px; width: 72px; height: 72px; font-size: 33px; } }
@media (max-width: 560px) { .home-hero--money { min-height: 0; } .hero-offer-note { margin-top: 14px; } .home-facts dl { grid-template-columns: repeat(2,minmax(0,1fr)); } .home-facts dl div:nth-child(odd) { border-left: 0; } .funnel-panel--bonus,.funnel-panel--game,.funnel-panel--quick { margin: 18px 15px; padding: 20px 16px; border-radius: 13px; } .bonus-calculator-card { padding: 15px; } .funnel-steps { gap: 5px; font-size: 9px; } .funnel-steps span { padding: 6px 7px; } .game-funnel-facts,.quick-path,.content-columns,.vip-panel { grid-template-columns: 1fr; } .quick-path article { min-height: 0; padding: 16px; } .quick-path p { min-height: 0; } .payment-panel { align-items: flex-start; margin: 18px 15px; padding: 20px 16px; } .payment-panel__mark { display: none; } .vip-panel,.final-cta { margin: 18px 15px 28px; padding: 20px 16px; } .final-cta { align-items: flex-start; flex-direction: column; } .comparison-table th,.comparison-table td { padding: 11px; font-size: 10px; } .bonus-checklist span { font-size: 9px; } }

/* Individual, code-native game illustrations and compact evidence tables */
.game-facts { display:block; margin-top:18px; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:#fff; }
.game-facts__table { width:100%; border-collapse:collapse; text-align:left; }
.game-facts__table caption { padding:14px 18px; border-bottom:1px solid var(--line); color:#72837a; font-size:10px; font-weight:850; letter-spacing:.12em; text-align:left; text-transform:uppercase; }
.game-facts__table th,.game-facts__table td { padding:12px 18px; border-bottom:1px solid #edf1ee; font-size:13px; line-height:1.55; vertical-align:top; }
.game-facts__table th { width:30%; color:#66776c; font-size:11px; font-weight:800; }
.game-facts__table td { color:#263c30; }
.game-facts__table tr:last-child th,.game-facts__table tr:last-child td { border-bottom:0; }
.game-facts__source { display:flex; flex-wrap:wrap; align-items:center; gap:9px; padding:12px 18px; border-top:1px solid var(--line); background:#fafcf9; color:#78867e; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.source-link,.game-facts__source a { color:var(--green); font-size:11px; font-weight:800; letter-spacing:0; text-transform:none; }
.game-stage-wrap { margin:8px 0 10px; }
.game-stage { --stage-ink:#23523b; --stage-accent:#82b949; position:relative; display:grid; min-height:270px; place-items:center; overflow:hidden; isolation:isolate; border:1px solid #e6ece5; border-radius:18px; background-color:#f8fbf5; background-image:radial-gradient(circle at 50% 45%,rgba(255,255,255,.92) 0 8%,transparent 8.5%),linear-gradient(135deg,#f6faf3,#e9f2e5); }
.game-stage::before,.game-stage::after { position:absolute; z-index:-1; border:1px solid color-mix(in srgb,var(--stage-accent),transparent 55%); border-radius:50%; content:""; }
.game-stage::before { width:220px; height:220px; box-shadow:0 0 0 22px color-mix(in srgb,var(--stage-accent),transparent 90%),0 0 0 45px color-mix(in srgb,var(--stage-accent),transparent 94%); transform:rotate(-16deg) scaleY(.72); }
.game-stage::after { width:130px; height:130px; border-style:dashed; transform:rotate(35deg) scaleY(.75); }
.game-stage__frame { position:absolute; inset:24px; border:1px solid rgba(255,255,255,.82); border-radius:13px; box-shadow:inset 0 0 0 1px rgba(34,70,44,.035); }
.game-stage__glyph { display:grid; width:94px; height:94px; place-items:center; border:1px solid rgba(255,255,255,.86); border-radius:30px; background:rgba(255,255,255,.72); color:var(--stage-ink); font-size:50px; box-shadow:0 18px 45px rgba(32,60,42,.14),inset 0 0 0 6px rgba(255,255,255,.35); transform:rotate(-7deg); }
.game-stage__accent { position:absolute; top:22%; right:22%; width:23px; height:23px; border:5px solid rgba(255,255,255,.86); border-radius:50%; background:var(--stage-accent); box-shadow:0 5px 15px rgba(33,54,39,.12); }
.game-stage__caption { position:absolute; right:34px; bottom:28px; display:flex; flex-direction:column; color:var(--stage-ink); font-size:12px; font-weight:850; letter-spacing:.02em; }
.game-stage__caption small { margin-top:2px; color:#6a7a70; font-size:9px; font-weight:700; }
.game-stage-description { margin:8px 2px 0 !important; color:#718177 !important; font-size:11px !important; line-height:1.55 !important; }
.game-availability { margin-top:10px !important; padding:10px 12px; border-left:3px solid #a8c87e; border-radius:0 8px 8px 0; background:#f6f9f2; font-size:12px !important; }
.game-similar__links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.game-similar__links a { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:42px; padding:10px 12px; border:1px solid var(--line); border-radius:9px; background:#fff; color:#236344; font-size:11px; font-weight:800; }
.game-similar__links a:hover { border-color:#b8d0bd; background:#f8fbf7; }
.contextual-routes { border-top:1px solid var(--line); padding-top:20px; }
.contextual-routes__links h2 { margin:0 0 12px; font-size:17px; }
.contextual-routes__links ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 18px; margin:0; padding:0; list-style:none; }
.contextual-routes__links a { display:flex; justify-content:space-between; gap:12px; padding:9px 0; border-bottom:1px solid var(--line); color:var(--green-dark); font-size:12px; font-weight:700; }
.contextual-routes__links a:hover { color:var(--green); }
.game-detail-section.article-faq details { margin:8px 0; }
.game-stage--starburst { --stage-ink:#344d8d; --stage-accent:#f1b751; background-image:repeating-conic-gradient(from 8deg at 50% 47%,rgba(245,198,96,.2) 0 3deg,transparent 3deg 17deg),radial-gradient(circle,#f8f4df,#e8eef8 72%); }
.game-stage--gonzos-quest { --stage-ink:#705239; --stage-accent:#c8883a; background-image:repeating-radial-gradient(ellipse at 52% 52%,transparent 0 18px,rgba(130,105,69,.12) 19px 20px),linear-gradient(140deg,#f5ead7,#e2ead7); }
.game-stage--gonzos-gold { --stage-ink:#725015; --stage-accent:#d9a536; background-image:linear-gradient(90deg,transparent 24%,rgba(211,171,77,.12) 25% 26%,transparent 27% 49%,rgba(211,171,77,.16) 50% 51%,transparent 52%),linear-gradient(135deg,#fbf4dd,#ebdfb6); }
.game-stage--gonzos-quest-ii { --stage-ink:#674a36; --stage-accent:#e0a148; background-image:linear-gradient(0deg,rgba(178,125,68,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(178,125,68,.11) 1px,transparent 1px),linear-gradient(145deg,#f8edda,#e7e6d6); background-size:100% 32px,54px 100%,auto; }
.game-stage--reactoonz { --stage-ink:#355575; --stage-accent:#77c5cd; background-image:linear-gradient(rgba(66,127,155,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(66,127,155,.08) 1px,transparent 1px),radial-gradient(circle at 70% 30%,#e5f6f2,#e8eef6); background-size:32px 32px,32px 32px,auto; }
.game-stage--book-of-dead { --stage-ink:#65492e; --stage-accent:#bd9a59; background-image:repeating-linear-gradient(0deg,transparent 0 21px,rgba(137,100,48,.09) 22px 23px),linear-gradient(120deg,#f3ead7,#efe2c5); }
.game-stage--sweet-bonanza { --stage-ink:#864f73; --stage-accent:#ee91ae; background-image:radial-gradient(circle at 25% 30%,#fff 0 8px,transparent 9px),radial-gradient(circle at 72% 70%,rgba(255,255,255,.8) 0 13px,transparent 14px),linear-gradient(140deg,#fae7ec,#eee6fa); }
.game-stage--big-bass-bonanza { --stage-ink:#28626b; --stage-accent:#62bba8; background-image:repeating-radial-gradient(ellipse at 50% 105%,transparent 0 18px,rgba(58,142,143,.13) 19px 21px),linear-gradient(160deg,#e0f2ed,#d7ebef); }
.game-stage--wolf-gold-ultimate { --stage-ink:#594b37; --stage-accent:#c8a55d; background-image:radial-gradient(ellipse at 50% 90%,rgba(198,157,81,.25),transparent 44%),linear-gradient(180deg,#eee9db,#ddd8bf); }
.game-stage--gates-of-olympus { --stage-ink:#66517b; --stage-accent:#d6ad59; background-image:repeating-linear-gradient(90deg,transparent 0 34px,rgba(119,95,145,.09) 35px 36px),linear-gradient(145deg,#f1eaf7,#eee7d5); }
.game-stage--mega-moolah { --stage-ink:#725033; --stage-accent:#d19a50; background-image:linear-gradient(180deg,#f4e7c8 0 48%,#e7d9b7 49% 51%,#ead7aa 52%); }
.game-stage--lightning-roulette { --stage-ink:#3a4d79; --stage-accent:#e5b756; background-image:repeating-conic-gradient(from 0deg at 50% 52%,rgba(214,178,90,.14) 0 4deg,transparent 4deg 18deg),radial-gradient(circle,#faf8ed,#e6eaf2 73%); }
.game-stage--xxxtreme-lightning-roulette { --stage-ink:#574778; --stage-accent:#b792df; background-image:repeating-conic-gradient(from 4deg at 50% 52%,rgba(157,130,204,.17) 0 3deg,transparent 3deg 15deg),radial-gradient(circle,#f6f0fb,#e6e6f3 75%); }
.game-stage--crazy-time { --stage-ink:#5b4c7a; --stage-accent:#ed9b66; background-image:conic-gradient(from 45deg at 50% 50%,#f7e9dc,#edeafa,#e2f0e5,#fff2df,#f7e9dc); }
.game-stage--monopoly-live { --stage-ink:#36634a; --stage-accent:#e1a35a; background-image:linear-gradient(45deg,rgba(79,145,98,.09) 25%,transparent 25% 75%,rgba(79,145,98,.09) 75%),linear-gradient(45deg,rgba(79,145,98,.09) 25%,transparent 25% 75%,rgba(79,145,98,.09) 75%),linear-gradient(135deg,#eef4e7,#f8f0df); background-size:48px 48px; background-position:0 0,24px 24px,0 0; }
.game-stage--crazy-balls { --stage-ink:#4b587d; --stage-accent:#e68e78; background-image:radial-gradient(circle at 22% 25%,#f7d9d2 0 9px,transparent 10px),radial-gradient(circle at 77% 68%,#dce4f5 0 14px,transparent 15px),linear-gradient(135deg,#f3eef7,#e6eef2); }
.game-stage--immersive-roulette { --stage-ink:#42655d; --stage-accent:#81b6a9; background-image:radial-gradient(ellipse at 50% 50%,#fff 0 17%,transparent 18% 30%,rgba(77,137,122,.1) 31% 32%,transparent 33% 45%,rgba(77,137,122,.1) 46% 47%,transparent 48%),linear-gradient(145deg,#f5faf7,#e4efeb); }
.game-stage--infinite-blackjack { --stage-ink:#31594b; --stage-accent:#c5a56b; background-image:radial-gradient(ellipse at 50% 40%,rgba(58,127,97,.15),transparent 54%),linear-gradient(135deg,#e3eee7,#d9e7dc); }
.game-stage--mega-ball { --stage-ink:#53617e; --stage-accent:#e0bd58; background-image:radial-gradient(circle at 32% 30%,rgba(238,201,100,.52) 0 12px,transparent 13px),radial-gradient(circle at 72% 68%,rgba(121,159,205,.23) 0 18px,transparent 19px),linear-gradient(140deg,#edf2f8,#f6f0da); }
.game-stage--john-hunter-book-of-tut { --stage-ink:#5f4c39; --stage-accent:#ba9b62; background-image:repeating-linear-gradient(90deg,transparent 0 26px,rgba(131,105,62,.1) 27px 28px),linear-gradient(135deg,#f3ead5,#e8e1cb); }
@media (max-width: 700px) { .game-facts__table th,.game-facts__table td { padding:10px 12px; font-size:11px; } .game-facts__table th { width:36%; font-size:10px; } .game-facts__source { padding:11px 12px; } .game-stage { min-height:205px; } .game-stage__frame { inset:13px; } .game-stage__glyph { width:74px; height:74px; border-radius:24px; font-size:39px; } .game-stage__caption { right:22px; bottom:20px; font-size:10px; } .game-similar__links,.contextual-routes__links ul { grid-template-columns:1fr; } }

/* Bonus offer pages */
.bonus-audience { display:grid; grid-template-columns:150px minmax(0,1fr); gap:20px; align-items:start; margin-top:18px; padding:17px 20px; border:1px solid #e6ece4; border-radius:12px; background:#fbfcfa; }
.bonus-audience p { margin:0; color:#53655b; font-size:13px; line-height:1.7; }
.bonus-status { margin:0 0 12px !important; padding:12px 14px; border-left:3px solid #c6a56a; border-radius:0 8px 8px 0; background:#fbf7ef; color:#4f5148 !important; font-size:12px !important; line-height:1.6 !important; }
.bonus-terms-wrap { overflow:auto; margin-top:12px; border:1px solid var(--line); border-radius:11px; background:#fff; }
.bonus-terms-table { width:100%; border-collapse:collapse; text-align:left; }
.bonus-terms-table caption { padding:13px 15px; border-bottom:1px solid var(--line); background:#fafcf9; color:#72837a; font-size:10px; font-weight:850; letter-spacing:.1em; text-align:left; text-transform:uppercase; }
.bonus-terms-table th,.bonus-terms-table td { padding:11px 15px; border-bottom:1px solid #edf1ee; font-size:12px; line-height:1.55; vertical-align:top; }
.bonus-terms-table th { width:25%; color:#56675d; font-size:11px; font-weight:800; }
.bonus-terms-table td { color:#31463a; }
.bonus-terms-table tr:last-child th,.bonus-terms-table tr:last-child td { border-bottom:0; }
.bonus-visual-wrap { margin:10px 0; }
.bonus-visual { --bonus-accent:#86b65b; position:relative; display:grid; grid-template-columns:78px 1fr; grid-template-rows:auto auto; align-items:center; gap:3px 16px; min-height:126px; padding:20px 24px; overflow:hidden; border:1px solid #e6ece4; border-radius:15px; background:linear-gradient(115deg,#f7faf4,#fff 66%); }
.bonus-visual::after { position:absolute; top:-74px; right:-30px; width:230px; height:230px; border:1px solid color-mix(in srgb,var(--bonus-accent),transparent 67%); border-radius:50%; box-shadow:0 0 0 18px color-mix(in srgb,var(--bonus-accent),transparent 94%),0 0 0 38px color-mix(in srgb,var(--bonus-accent),transparent 96%); content:""; }
.bonus-visual > span { z-index:1; display:grid; grid-row:span 2; width:60px; height:60px; place-items:center; border:1px solid rgba(255,255,255,.9); border-radius:19px; background:color-mix(in srgb,var(--bonus-accent),white 83%); color:#36513e; font-size:31px; font-weight:800; box-shadow:0 9px 24px rgba(38,66,43,.09); }
.bonus-visual strong,.bonus-visual small { z-index:1; }
.bonus-visual strong { color:#283b30; font-size:16px; }
.bonus-visual small { color:#728177; font-size:10px; font-weight:750; }
.bonus-visual--matchbook-casino-bonus { --bonus-accent:#83b95c; }
.bonus-visual--matchbook-promo-code { --bonus-accent:#d9a759; background:linear-gradient(115deg,#fcf8ee,#fff 68%); }
.bonus-visual--free-spins-slots { --bonus-accent:#9c88c7; background:repeating-radial-gradient(circle at 85% 50%,#fff 0 16px,#f5f1fb 17px 34px); }
.bonus-visual--matchbook-cashback-bonus { --bonus-accent:#4eae93; background:linear-gradient(135deg,#edf7f3,#fff 64%); }
.bonus-visual--matchbook-reload-bonus { --bonus-accent:#7d9ac2; background:linear-gradient(90deg,#eef3fa,#fff 68%); }
.bonus-visual--casino-bonus-terms { --bonus-accent:#a6b97a; background:repeating-linear-gradient(0deg,#fff 0 23px,#f7f9f3 24px 25px); }
.bonus-visual--wagering-requirements { --bonus-accent:#61a9ad; background:linear-gradient(135deg,#eff8f7,#fff 68%); }
.bonus-visual--casino-tournaments { --bonus-accent:#ca8b65; background:linear-gradient(110deg,#fbf1eb,#fff 68%); }
.bonus-visual--slot-bonus-rounds { --bonus-accent:#b29a63; background:radial-gradient(circle at 82% 50%,#f6f0dd 0 15%,transparent 15.5%),linear-gradient(110deg,#faf7ed,#fff 68%); }
.bonus-detail-section .section-index { background:#f3f7f0; }
.bonus-example-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.bonus-example { min-height:115px; padding:15px 16px; border:1px solid var(--line); border-radius:11px; background:#fff; }
.bonus-example p { margin:8px 0 0; color:#52645a; font-size:12px; line-height:1.7; }
.bonus-example .eyebrow { font-size:8px; color:#8b987f; }
.bonus-steps { display:grid; gap:8px; margin:0; padding:0; list-style:none; counter-reset:steps; }
.bonus-steps li { display:grid; grid-template-columns:32px 1fr; gap:11px; align-items:start; padding:10px 12px; border:1px solid #e8ede8; border-radius:9px; background:#fff; color:#516359; font-size:12px; line-height:1.6; }
.bonus-step__number { color:#78a84d; font-size:10px; font-weight:900; letter-spacing:.04em; }
.bonus-tool-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(270px,.9fr); gap:20px 28px; align-items:start; padding:20px; border:1px solid #e3e9e2; border-radius:14px; background:#fbfcfa; }
.bonus-tool-card h3 { margin:6px 0 8px; font-size:17px; }
.bonus-tool-card p { color:#5c6d62; font-size:12px; line-height:1.7; }
.bonus-tool-card .bonus-calculator { padding:16px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.bonus-ladder { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.bonus-ladder li { display:flex; gap:10px; align-items:flex-start; padding:10px 12px; border:1px solid #e7ece6; border-radius:8px; background:#fff; color:#53655b; font-size:11px; line-height:1.5; }
.bonus-ladder li span { color:#71a449; font-weight:900; }
.bonus-source { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:13px; color:#79877f; font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.bonus-source a { color:var(--green); font-size:10px; letter-spacing:0; text-transform:none; }
.bonus-related { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.bonus-related a { display:flex; justify-content:space-between; gap:8px; padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:#fff; color:#256346; font-size:11px; font-weight:800; }
.bonus-related a:hover { background:#f7faf6; border-color:#cddbcc; }
@media (max-width: 700px) { .bonus-audience { grid-template-columns:1fr; gap:7px; padding:14px; } .bonus-terms-table th,.bonus-terms-table td { padding:9px 10px; font-size:10px; } .bonus-terms-table th { width:31%; } .bonus-visual { grid-template-columns:55px 1fr; min-height:102px; padding:15px; gap:2px 11px; } .bonus-visual > span { width:48px; height:48px; border-radius:15px; font-size:25px; } .bonus-visual strong { font-size:13px; } .bonus-example-grid,.bonus-tool-card,.bonus-related { grid-template-columns:1fr; } .bonus-tool-card { padding:14px; gap:8px; } .bonus-example { min-height:0; } }

/* Payment task pages: account-specific facts with compact, mobile-safe tables. */
.payment-visual-wrap { margin:10px 0; }
.payment-visual { display:grid; grid-template-columns:64px minmax(0,1fr); align-items:center; gap:14px; min-height:112px; padding:18px 22px; border:1px solid #dce5dd; border-left:4px solid #367a55; border-radius:4px; background:#fff; }
.payment-visual > span { display:grid; width:52px; height:52px; place-items:center; border:1px solid #d4e2d6; border-radius:50%; background:#f3f7f2; color:#286341; font-size:25px; font-weight:800; }
.payment-visual strong { color:#283b30; font-size:15px; }
.payment-visual small { max-width:580px; color:#718077; font-size:10px; line-height:1.6; }
.payment-table-wrap { overflow:auto; margin-top:12px; border:1px solid var(--line); border-radius:11px; background:#fff; }
.payment-facts-table { width:100%; border-collapse:collapse; text-align:left; }
.payment-facts-table caption { padding:13px 15px; border-bottom:1px solid var(--line); background:#fafcf9; color:#72837a; font-size:10px; font-weight:850; letter-spacing:.08em; text-align:left; text-transform:uppercase; }
.payment-facts-table th,.payment-facts-table td { padding:11px 15px; border-bottom:1px solid #edf1ee; font-size:12px; line-height:1.6; vertical-align:top; }
.payment-facts-table th { width:23%; color:#56675d; font-size:11px; font-weight:800; }
.payment-facts-table td { color:#31463a; }
.payment-facts-table tr:last-child th,.payment-facts-table tr:last-child td { border-bottom:0; }
.payment-source { display:flex; flex-wrap:wrap; align-items:center; gap:8px 13px; margin-top:12px; color:#79877f; font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.payment-source a { color:var(--green); font-size:10px; letter-spacing:0; line-height:1.6; text-transform:none; }
.payment-related { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.payment-related a { display:flex; justify-content:space-between; gap:8px; padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:#fff; color:#256346; font-size:11px; font-weight:800; line-height:1.5; }
.payment-related a:hover { background:#f7faf6; border-color:#cddbcc; }
@media (max-width:700px) { .payment-visual { grid-template-columns:52px 1fr; min-height:106px; gap:4px 12px; padding:15px; } .payment-visual > span { width:45px; height:45px; border-radius:14px; font-size:23px; } .payment-visual strong { font-size:13px; } .payment-visual small { font-size:9px; } .payment-facts-table th,.payment-facts-table td { padding:9px 10px; font-size:10px; } .payment-facts-table th { width:31%; font-size:9px; } .payment-facts-table caption { padding:11px 10px; font-size:8px; } .payment-related { grid-template-columns:1fr; } }

/* Payment cluster: white editorial layout, visible route stages and readable small-screen facts. */
.payment-featured { display:grid; grid-template-columns:minmax(170px,220px) minmax(0,1fr) auto; gap:18px; align-items:center; margin:18px 0 24px; padding:18px 20px; border:1px solid #dce6dc; border-top:3px solid #2e754e; border-radius:5px; background:#fff; }
.payment-featured__art { display:block; width:100%; aspect-ratio:1.9048; overflow:hidden; border:1px solid #d9e6da; border-radius:4px; background:#f5f8f3; }
.payment-featured__art img { display:block; width:100%; height:100%; object-fit:cover; }
.payment-raster { display:block; width:100%; overflow:hidden; border:1px solid #d9e6da; border-radius:4px; background:#f5f8f3; }
.payment-raster img { display:block; width:100%; height:auto; aspect-ratio:1.9048; object-fit:cover; }
.payment-visual-wrap { margin:18px 0 22px; }
.payment-visual-figure { margin:18px 0; }
.payment-featured__copy .eyebrow { color:#67836c; }
.payment-featured__copy h2 { margin:5px 0 7px; color:#26372c; font-size:18px; line-height:1.3; }
.payment-featured__copy p { max-width:740px; margin:0; color:#526357; font-size:12px; line-height:1.6; }
.payment-featured__copy ul { display:flex; flex-wrap:wrap; gap:6px 16px; margin:10px 0 0; padding-left:17px; color:#617266; font-size:10px; line-height:1.55; }
.payment-featured > .button { white-space:nowrap; }
.payment-step-art,.payment-flow-art { display:flex; flex-wrap:wrap; gap:9px; align-items:center; margin:16px 0; padding:14px; border:1px solid #e0e7e0; border-radius:4px; background:#fbfcfa; color:#465b4a; }
.payment-step-art { display:block; }
.payment-step-art .eyebrow { color:#6c836f; }
.payment-step-art ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:10px 0 0; padding:0; list-style:none; counter-reset:payment-stage; }
.payment-step-art li { display:flex; gap:8px; align-items:center; min-height:46px; padding:8px; border-left:2px solid #6f9874; background:#fff; color:#435849; font-size:10px; line-height:1.45; counter-increment:payment-stage; }
.payment-step-art li::before { content:counter(payment-stage,decimal-leading-zero); color:#32724e; font-size:9px; font-weight:900; }
.payment-flow-art { justify-content:space-between; min-height:70px; background:#fff; }
.payment-flow-art__node { padding:9px 12px; border:1px solid #dce5dd; border-radius:4px; background:#f6f8f5; color:#34533e; font-size:11px; font-weight:800; }
.payment-flow-art > span[aria-hidden="true"] { color:#65826a; font-weight:800; }
.payment-failure-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; margin:0; padding:0; list-style:none; counter-reset:failure-check; }
.payment-failure-list li { padding:13px 0; border-top:1px solid #e7ece7; counter-increment:failure-check; }
.payment-failure-list h3 { display:flex; gap:8px; align-items:baseline; margin:0 0 5px; color:#344a39; font-size:12px; }
.payment-failure-list h3::before { content:counter(failure-check,decimal-leading-zero); color:#78917b; font-size:9px; }
.payment-failure-list p { margin:0; color:#5a6a5f; font-size:11px; line-height:1.65; }
.payment-alternatives-table { width:100%; border-collapse:collapse; text-align:left; }
.payment-alternatives-table th,.payment-alternatives-table td { padding:10px 12px; border-bottom:1px solid #e9eee9; color:#4d5f52; font-size:11px; line-height:1.5; vertical-align:top; }
.payment-alternatives-table thead th { color:#526857; background:#f7f9f6; font-size:10px; }
.payment-alternatives-table tbody th { color:#2d6442; font-size:11px; }
.payment-alternatives-table caption { padding:12px; border-bottom:1px solid #e2e9e2; color:#6a786d; font-size:10px; text-align:left; }
.payment-detail-section { margin-top:22px; }
.payment-detail-section .article-section__body > p { color:#4f6154; font-size:12px; line-height:1.75; }
@media (min-width:1200px) { .payment-featured { grid-template-columns:minmax(190px,240px) minmax(0,1fr) auto; } }
@media (max-width:900px) { .payment-featured { grid-template-columns:minmax(145px,190px) minmax(0,1fr); gap:12px; } .payment-featured > .button { grid-column:2; justify-self:start; } }
@media (max-width:700px) {
  .payment-featured { grid-template-columns:minmax(0,1fr); gap:12px; margin:14px 0 19px; padding:14px; }
  .payment-featured__art { width:100%; }
  .payment-featured__art,.payment-raster img { aspect-ratio:1.25; }
  .payment-featured__copy h2 { font-size:15px; }
  .payment-featured__copy p { font-size:11px; }
  .payment-featured__copy ul { grid-column:1 / -1; gap:4px 10px; margin-top:8px; font-size:10px; }
  .payment-featured > .button { grid-column:1; width:100%; justify-content:center; white-space:normal; }
  .payment-step-art ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .payment-flow-art { justify-content:flex-start; }
  .payment-flow-art__node { font-size:10px; }
  .payment-failure-list { grid-template-columns:1fr; }
  .payment-alternatives-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
  .payment-alternatives-table tbody tr { display:block; padding:8px 10px; border-bottom:1px solid #e6ece6; }
  .payment-alternatives-table tbody th,.payment-alternatives-table tbody td { display:grid; grid-template-columns:minmax(88px,35%) minmax(0,1fr); gap:8px; padding:6px 0; border:0; overflow-wrap:anywhere; }
  .payment-alternatives-table tbody th { display:block; padding:3px 0 7px; }
  .payment-alternatives-table tbody td::before { content:attr(data-label); color:#758477; font-size:9px; font-weight:800; }
}

/* VIP and high-roller guides use evidence-led tables, not invented tier badges. */
.vip-status { margin:15px 0 12px; padding:14px 17px; border:1px solid #eee5d1; border-left:3px solid #b99b61; border-radius:0 10px 10px 0; background:#fbf9f3; }
.vip-status p { margin:6px 0 0; color:#536154; font-size:12px; line-height:1.7; }
.vip-visual-wrap { margin:10px 0; }
.vip-visual { --vip-accent:#b49c68; position:relative; display:grid; grid-template-columns:72px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; gap:4px 17px; min-height:132px; padding:20px 24px; overflow:hidden; border:1px solid #e9e5db; border-radius:15px; background:linear-gradient(120deg,#f8f6f0,#fff 70%); }
.vip-visual::after { position:absolute; top:-88px; right:24px; width:220px; height:220px; border:1px solid color-mix(in srgb,var(--vip-accent),transparent 61%); border-radius:50%; box-shadow:0 0 0 22px color-mix(in srgb,var(--vip-accent),transparent 94%),0 0 0 45px color-mix(in srgb,var(--vip-accent),transparent 96%); content:""; }
.vip-visual > span { z-index:1; display:grid; grid-row:span 2; width:57px; height:57px; place-items:center; border:1px solid #fff; border-radius:18px; background:color-mix(in srgb,var(--vip-accent),white 84%); color:#4c4434; font-size:28px; font-weight:800; box-shadow:0 8px 24px rgba(72,62,42,.08); }
.vip-visual strong,.vip-visual small { z-index:1; }
.vip-visual strong { color:#34372f; font-size:16px; }
.vip-visual small { max-width:590px; color:#77766e; font-size:10px; line-height:1.6; }
.vip-visual--matchbook-vip { --vip-accent:#c1a76b; }
.vip-visual--matchbook-vip-high-roller { --vip-accent:#8195a9; background:linear-gradient(120deg,#f1f4f6,#fff 70%); }
.vip-visual--matchbook-vip-limits { --vip-accent:#93aa87; background:linear-gradient(120deg,#f2f6ef,#fff 70%); }
.vip-visual--matchbook-vip-service { --vip-accent:#9a8bb5; background:linear-gradient(120deg,#f5f2f8,#fff 70%); }
.vip-visual--matchbook-vip-payments { --vip-accent:#7ca99f; background:linear-gradient(120deg,#eff7f5,#fff 70%); }
.vip-table-wrap { overflow:auto; margin-top:12px; border:1px solid var(--line); border-radius:11px; background:#fff; }
.vip-facts-table,.vip-comparison-table { width:100%; border-collapse:collapse; text-align:left; }
.vip-facts-table caption,.vip-comparison-table caption { padding:13px 15px; border-bottom:1px solid var(--line); background:#fafbf9; color:#737b6d; font-size:10px; font-weight:850; letter-spacing:.07em; text-align:left; text-transform:uppercase; }
.vip-facts-table th,.vip-facts-table td,.vip-comparison-table th,.vip-comparison-table td { padding:11px 14px; border-bottom:1px solid #edf0eb; font-size:11px; line-height:1.65; vertical-align:top; }
.vip-facts-table th,.vip-comparison-table tbody th { width:22%; color:#586356; font-size:10px; font-weight:850; }
.vip-facts-table td,.vip-comparison-table td { color:#344235; }
.vip-comparison-table thead th { color:#596759; background:#f6f8f5; font-size:10px; font-weight:850; }
.vip-facts-table tr:last-child th,.vip-facts-table tr:last-child td,.vip-comparison-table tr:last-child th,.vip-comparison-table tr:last-child td { border-bottom:0; }
.vip-sources { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.vip-sources a { display:grid; gap:5px; padding:12px 14px; border:1px solid var(--line); border-radius:9px; background:#fff; color:#286345; font-size:11px; font-weight:800; line-height:1.45; }
.vip-sources a small { color:#748078; font-size:10px; font-weight:500; }
.vip-related { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.vip-related a { display:flex; justify-content:space-between; gap:8px; padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:#fff; color:#326047; font-size:11px; font-weight:800; line-height:1.5; }
.vip-related a:hover { border-color:#d8cfb8; background:#fbfaf6; }
@media (max-width:700px) { .vip-status { padding:12px 13px; } .vip-visual { grid-template-columns:50px 1fr; min-height:108px; gap:4px 12px; padding:15px; } .vip-visual > span { width:44px; height:44px; border-radius:14px; font-size:22px; } .vip-visual strong { font-size:13px; } .vip-visual small { font-size:9px; } .vip-facts-table th,.vip-facts-table td,.vip-comparison-table th,.vip-comparison-table td { min-width:105px; padding:9px 10px; font-size:10px; } .vip-facts-table th,.vip-comparison-table tbody th { width:30%; } .vip-facts-table caption,.vip-comparison-table caption { padding:10px; font-size:8px; } .vip-sources,.vip-related { grid-template-columns:1fr; } }
/* Ireland comparison pages */
.comparison-featured { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin: 24px 0 30px; padding: clamp(22px,4vw,38px); border: 1px solid #cfe2d4; border-radius: 20px; background: linear-gradient(125deg,#f3faf4 0%,#fff 70%); box-shadow: 0 16px 40px rgba(18,48,34,.07); }
.comparison-featured__copy { max-width: 700px; }
.comparison-featured h2 { margin: 8px 0 10px; font-size: clamp(24px,3vw,34px); letter-spacing: -.035em; line-height: 1.1; }
.comparison-featured p { margin: 0; color: var(--muted); }
.comparison-featured__score { margin-top: 12px !important; color: var(--ink) !important; font-size: 13px; }
.comparison-featured__score strong { color: var(--green-dark); font-size: 17px; }
.comparison-section > div { min-width: 0; }
.comparison-weights-wrap,.comparison-matrix-wrap { max-width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.comparison-weights,.comparison-matrix { width: 100%; border-collapse: collapse; font-size: 13px; }
.comparison-weights caption,.comparison-matrix caption { padding: 13px 15px; color: var(--muted); text-align: left; font-weight: 650; }
.comparison-weights th,.comparison-weights td,.comparison-matrix th,.comparison-matrix td { padding: 12px 14px; border-top: 1px solid var(--line); text-align: left; vertical-align: top; }
.comparison-weights thead th,.comparison-matrix thead th { background: #f5f8f5; color: #31463a; font-size: 11px; font-weight: 800; }
.comparison-weights tbody th,.comparison-matrix tbody th { color: var(--ink); font-weight: 750; }
.comparison-weights tbody td:nth-child(2),.comparison-score-cell { white-space: nowrap; font-variant-numeric: tabular-nums; }
.comparison-matrix { min-width: 1130px; }
.comparison-matrix th:first-child { min-width: 155px; }
.comparison-total { color: var(--green-dark); white-space: nowrap; font-variant-numeric: tabular-nums; }
.comparison-total strong { font-size: 15px; }
.comparison-sources { min-width: 140px; max-width: 245px; }
.comparison-sources summary { color: var(--green-dark); cursor: pointer; font-weight: 750; }
.comparison-sources p { margin: 9px 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.comparison-sources a { display: block; margin-top: 7px; color: var(--green-dark); font-size: 12px; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.comparison-as-of,.comparison-score-note { margin: 12px 0 0; color: var(--muted); font-size: 12px; }
.comparison-score-scale { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 18px; margin: 18px 0 0; padding: 0; list-style: none; }
.comparison-score-scale li { padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); font-size: 12px; }
.comparison-score-scale strong { margin-right: 5px; color: var(--green-dark); white-space: nowrap; }
.comparison-related { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.comparison-related a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--green-dark); font-size: 13px; font-weight: 750; }
.comparison-related a:hover { border-color: #a9c8b2; background: #f7fbf7; }
@media (max-width: 720px) {
  .comparison-featured { align-items: stretch; flex-direction: column; gap: 18px; margin-top: 18px; padding: 20px; }
  .comparison-featured > .button { width: 100%; }
  .comparison-weights { min-width: 550px; }
  .comparison-score-scale,.comparison-related { grid-template-columns: 1fr; }
}

.page-promo { position: sticky; z-index: 20; top: 88px; display: grid; grid-template-columns: 56px minmax(0,1fr) auto; align-items: center; gap: 15px; width: calc(100% - 48px); max-width: 1312px; margin: 15px auto 20px; padding: 14px 18px; border: 1px solid #dce9dd; border-radius: 14px; background: linear-gradient(105deg,#f5faef 0%,#fff 58%,#f3f8f3 100%); box-shadow: 0 9px 26px rgba(24,55,37,.07); }
.page-promo__art { position: relative; display: grid; width: 54px; height: 54px; place-items: center; overflow: hidden; border: 1px solid rgba(8,116,78,.12); border-radius: 16px; background: radial-gradient(circle at 70% 24%,#e1f28a 0 12%,transparent 13%),linear-gradient(145deg,#e8f5ed,#fff 70%); color: var(--green-dark); }
.page-promo__art::before,.page-promo__art::after { position: absolute; border: 1px solid rgba(8,116,78,.18); border-radius: 50%; content: ""; }
.page-promo__art::before { width: 38px; height: 38px; }
.page-promo__art::after { width: 25px; height: 25px; border-color: rgba(8,116,78,.3); }
.page-promo__art > span { position: relative; z-index: 1; font-size: 24px; font-weight: 800; }
.page-promo--game .page-promo__art { background: radial-gradient(circle at 72% 25%,#f0c77c 0 12%,transparent 13%),linear-gradient(145deg,#e6f3f4,#fff 72%); }
.page-promo--bonus .page-promo__art { background: radial-gradient(circle at 72% 25%,#e1f28a 0 12%,transparent 13%),linear-gradient(145deg,#eff6d7,#fff 72%); }
.page-promo--payment .page-promo__art { background: radial-gradient(circle at 72% 25%,#a8d9c0 0 12%,transparent 13%),linear-gradient(145deg,#e4f2ed,#fff 72%); }
.page-promo--vip .page-promo__art { background: radial-gradient(circle at 72% 25%,#e8d2a5 0 12%,transparent 13%),linear-gradient(145deg,#f7f0e4,#fff 72%); }
.page-promo--top .page-promo__art { background: radial-gradient(circle at 72% 25%,#b3d2c0 0 12%,transparent 13%),linear-gradient(145deg,#e8eff0,#fff 72%); }
.page-promo--safer .page-promo__art,.page-promo--service .page-promo__art { background: radial-gradient(circle at 72% 25%,#d2e6c6 0 12%,transparent 13%),linear-gradient(145deg,#edf4ec,#fff 72%); }
.page-promo__copy { min-width: 0; }
.page-promo__kicker { display: block; margin-bottom: 3px; color: var(--green-dark); font-size: 9px; font-weight: 850; letter-spacing: .11em; line-height: 1.35; text-transform: uppercase; }
.page-promo__copy h2 { margin: 0; color: var(--ink); font-size: 17px; font-weight: 780; letter-spacing: -.025em; line-height: 1.25; }
.page-promo__copy p { margin: 4px 0 0; color: #5f7067; font-size: 11px; line-height: 1.45; }
.page-promo__action { min-height: 44px; padding: 0 15px; font-size: 11px; white-space: normal; }
.page-promo--quiet { border-color: #e2eae4; background: #f8faf8; box-shadow: none; }
.page-promo--quiet .page-promo__action { border-color: #cad8cf; background: #fff; color: var(--green-dark); }
@media (max-width: 1199px) { .page-promo { position: static; top: auto; } }
@media (max-width: 720px) { .page-promo { grid-template-columns: 42px minmax(0,1fr); gap: 10px; width: calc(100% - 30px); margin: 13px auto 17px; padding: 12px; border-radius: 12px; } .page-promo__art { grid-row: 1 / span 2; width: 40px; height: 40px; border-radius: 12px; } .page-promo__art::before { width: 30px; height: 30px; } .page-promo__art::after { width: 20px; height: 20px; } .page-promo__art > span { font-size: 18px; } .page-promo__copy h2 { font-size: 14px; } .page-promo__copy p { font-size: 10px; } .page-promo__action { grid-column: 2; justify-self: start; min-height: 44px; margin-top: 2px; padding: 0 12px; font-size: 11px; } }

/* Context panels: a modal on larger screens, a dismissible inline-height rail on phones. */
dialog.context-popup { position: fixed; width: min(560px,calc(100% - 40px)); max-width: 560px; max-height: min(90vh,720px); margin: auto; padding: 0; overflow: auto; border: 1px solid #d9e6db; border-radius: 20px; background: #fff; color: var(--ink); box-shadow: 0 28px 100px rgba(12,35,23,.28); }
dialog.context-popup::backdrop { background: rgba(17,34,25,.52); backdrop-filter: blur(3px); }
.context-popup__shell { position: relative; display: grid; grid-template-columns: 76px minmax(0,1fr); align-items: center; gap: 8px 18px; padding: clamp(24px,5vw,38px); }
.context-popup__art { display: grid; grid-row: 1 / span 4; width: 72px; height: 72px; place-items: center; border: 1px solid #dcebdd; border-radius: 22px; background: radial-gradient(circle at 74% 24%,#e0f28a 0 12%,transparent 13%),linear-gradient(145deg,#e5f4eb,#fff 74%); color: var(--green-dark); font-size: 28px; font-weight: 850; }
.context-popup--game .context-popup__art { background: radial-gradient(circle at 74% 24%,#f0c77c 0 12%,transparent 13%),linear-gradient(145deg,#e6f3f4,#fff 74%); }
.context-popup--bonus .context-popup__art { background: radial-gradient(circle at 74% 24%,#e1f28a 0 12%,transparent 13%),linear-gradient(145deg,#eff6d7,#fff 74%); }
.context-popup--payment .context-popup__art { background: radial-gradient(circle at 74% 24%,#a8d9c0 0 12%,transparent 13%),linear-gradient(145deg,#e4f2ed,#fff 74%); }
.context-popup--vip .context-popup__art { background: radial-gradient(circle at 74% 24%,#e8d2a5 0 12%,transparent 13%),linear-gradient(145deg,#f7f0e4,#fff 74%); }
.context-popup--top .context-popup__art { background: radial-gradient(circle at 74% 24%,#b3d2c0 0 12%,transparent 13%),linear-gradient(145deg,#e8eff0,#fff 74%); }
.context-popup__close,.context-bottom-bar__close { display: grid; place-items: center; border: 1px solid #dbe5dd; border-radius: 50%; background: #fff; color: #3c5043; cursor: pointer; font: inherit; font-size: 22px; line-height: 1; }
.context-popup__close { position: absolute; top: 14px; right: 14px; width: 42px; height: 42px; }
.context-popup__kicker { display: block; color: var(--green-dark); font-size: 10px; font-weight: 850; letter-spacing: .11em; line-height: 1.45; text-transform: uppercase; }
.context-popup h2 { max-width: 380px; margin: 0; color: var(--ink); font-size: clamp(21px,3vw,30px); letter-spacing: -.035em; line-height: 1.12; }
.context-popup p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.context-popup__action { justify-self: start; min-height: 48px; margin-top: 7px; padding: 0 20px; }
.context-bottom-bar { position: fixed; z-index: 36; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: minmax(0,1fr) auto 42px; align-items: center; gap: 10px; padding: 11px max(12px,env(safe-area-inset-right)) calc(11px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left)); border-top: 1px solid #d8e4da; background: rgba(255,255,255,.98); box-shadow: 0 -8px 28px rgba(22,49,32,.13); }
.context-bottom-bar[hidden] { display: none; }
.context-bottom-bar__copy { display: grid; min-width: 0; gap: 3px; }
.context-bottom-bar__copy span { overflow: hidden; color: var(--green-dark); font-size: 8px; font-weight: 850; letter-spacing: .09em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.context-bottom-bar__copy strong { display: -webkit-box; overflow: hidden; color: var(--ink); font-size: 11px; font-weight: 760; line-height: 1.3; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.context-bottom-bar__action { min-height: 44px; padding: 0 12px; font-size: 10px; white-space: nowrap; }
.context-bottom-bar__close { width: 44px; height: 44px; font-size: 20px; }
body.has-context-bottom-bar { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
body.has-context-bottom-bar .toast { bottom: calc(94px + env(safe-area-inset-bottom)); }
body.context-popup-open [data-page-promo] { visibility: hidden; }
@media (max-width: 767px) { dialog.context-popup { display: none !important; } }
@media (min-width: 768px) { .context-bottom-bar { display: none !important; } }
@media (max-width: 380px) { .context-bottom-bar { grid-template-columns: minmax(0,1fr) auto 44px; gap: 6px; padding-right: max(8px,env(safe-area-inset-right)); padding-left: max(10px,env(safe-area-inset-left)); } .context-bottom-bar__action { padding: 0 9px; font-size: 9px; } }

/* Commercial sidebar and the corresponding tablet/mobile inline offer grid. */
.commercial-page-layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; align-items: start; gap: 34px; margin-top: 24px; }
.commercial-page-main { min-width: 0; }
.editorial-page-layout { margin-top: 24px; }
.commercial-sidebar { position: sticky; z-index: 15; top: 112px; align-self: start; display: grid; width: 320px; gap: 12px; }
.geo-facts-card,.sidebar-offer-card,.sidebar-related-card { min-width: 0; border: 1px solid #e0e9e2; border-radius: 15px; background: #fff; box-shadow: 0 8px 22px rgba(24,55,37,.055); }
.geo-facts-card { padding: 16px 17px 13px; }
.sidebar-eyebrow { display: block; color: #60796a; font-size: 9px; font-weight: 850; letter-spacing: .105em; line-height: 1.45; text-transform: uppercase; }
.geo-facts-card h2 { margin: 5px 0 12px; color: var(--ink); font-size: 17px; font-weight: 780; letter-spacing: -.025em; line-height: 1.25; }
.geo-facts-card dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 12px; margin: 0; }
.geo-facts-card dl div { min-width: 0; }
.geo-facts-card dt { margin-bottom: 3px; color: #78867d; font-size: 9px; font-weight: 650; }
.geo-facts-card dd { margin: 0; color: #263d30; font-size: 11px; font-weight: 780; line-height: 1.35; overflow-wrap: anywhere; }
.geo-facts-card__route { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 39px; margin-top: 12px; padding-top: 9px; border-top: 1px solid #edf1ed; color: var(--green-dark); font-size: 10px; font-weight: 800; }
.geo-facts-card__route span,.sidebar-related-card a span { flex: 0 0 auto; color: #679044; }
.sidebar-offer-card { position: relative; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; padding: 17px; overflow-wrap: anywhere; }
.sidebar-offer-card--featured { border-color: #d3e3d3; background: linear-gradient(155deg,#f4f9f0 0%,#fff 63%); }
.sidebar-featured-brand { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 13px; padding: 7px 9px; border: 1px solid #e5eee5; border-radius: 9px; background: #fff; }
.sidebar-featured-brand__symbol { display: flex; width: 17px; height: 18px; align-items: center; justify-content: center; gap: 2px; transform: skew(-16deg); }
.sidebar-featured-brand__symbol i { display: block; width: 3px; height: 15px; border-radius: 3px; background: var(--green); }
.sidebar-featured-brand__symbol i:nth-child(2) { height: 11px; background: #8ab74f; }
.sidebar-featured-brand__symbol i:nth-child(3) { height: 7px; background: #b1cf6a; }
.sidebar-featured-brand__word { color: #1e3629; font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.sidebar-featured-brand__word span { color: #9bb852; }
.sidebar-offer-card h2 { margin: 6px 0 8px; color: var(--ink); font-size: 17px; font-weight: 800; letter-spacing: -.025em; line-height: 1.25; }
.sidebar-score { display: flex; align-items: baseline; gap: 8px; margin: 0 0 8px; }
.sidebar-score strong { color: var(--green-dark); font-size: 16px; font-variant-numeric: tabular-nums; }
.sidebar-score span { color: #6d7c72; font-size: 9px; line-height: 1.4; }
.sidebar-offer-card__note { margin: 0; color: #56685c; font-size: 11px; line-height: 1.55; }
.sidebar-offer-card ul { display: grid; gap: 7px; width: 100%; margin: 12px 0 14px; padding: 0; list-style: none; }
.sidebar-offer-card li { display: grid; grid-template-columns: 15px minmax(0,1fr); gap: 6px; color: #33483a; font-size: 10px; line-height: 1.45; }
.sidebar-offer-card li span { color: #578b4c; font-weight: 900; }
.sidebar-offer-card__action { display: flex; width: 100%; min-height: 46px; align-items: center; justify-content: center; gap: 8px; margin-top: auto; padding: 8px 11px; font-size: 11px; line-height: 1.35; text-align: center; white-space: normal; }
.sidebar-context-visual { display: grid; width: 48px; height: 48px; flex: 0 0 48px; place-items: center; margin: 0 0 12px; border: 1px solid #dfe9e1; border-radius: 15px; background: linear-gradient(145deg,#e8f4ed,#fff); color: #3b7251; font-size: 22px; font-weight: 800; }
.sidebar-context-visual--game,.sidebar-context-visual--game-hub { border-color: #e9e4d7; background: linear-gradient(145deg,#f6f0df,#fff); color: #916d31; }
.sidebar-context-visual--bonus { border-color: #e4ebcf; background: linear-gradient(145deg,#f2f7df,#fff); color: #7d913e; }
.sidebar-context-visual--payment { border-color: #d8e8e1; background: linear-gradient(145deg,#e4f3ee,#fff); color: #377c65; }
.sidebar-context-visual--vip { border-color: #e9e0cf; background: linear-gradient(145deg,#f5efe3,#fff); color: #927444; }
.sidebar-context-visual--comparison,.sidebar-context-visual--top-hub { border-color: #dce5e6; background: linear-gradient(145deg,#eaf1f1,#fff); color: #557d7c; }
.sidebar-context-brand { display: flex; width: 100%; justify-content: space-between; gap: 10px; margin: 0 0 7px; color: #2d4335; font-size: 12px; line-height: 1.4; }
.sidebar-context-brand span { flex: 0 0 auto; color: #607c68; font-size: 10px; font-variant-numeric: tabular-nums; }
.sidebar-related-card { display: grid; gap: 7px; padding: 14px 16px; }
.sidebar-related-card a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 38px; color: #315c42; font-size: 11px; font-weight: 760; line-height: 1.45; }
.mobile-inline-offers { display: none; }
body.context-popup-open .commercial-sidebar { visibility: hidden; }
@media (max-width: 1199px) {
  .commercial-page-layout { grid-template-columns: minmax(0,1fr); gap: 0; }
  .commercial-sidebar { display: none; }
  .mobile-inline-offers { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; gap: 13px; margin: 22px 0 27px; }
  .mobile-inline-offers .geo-facts-card,.mobile-inline-offers .sidebar-related-card { grid-column: 1 / -1; }
  .mobile-inline-offers .geo-facts-card { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: end; gap: 4px 18px; }
  .mobile-inline-offers .geo-facts-card .sidebar-eyebrow,.mobile-inline-offers .geo-facts-card h2,.mobile-inline-offers .geo-facts-card__route { grid-column: 1 / -1; }
  .mobile-inline-offers .geo-facts-card h2 { margin-bottom: 7px; }
  .mobile-inline-offers .geo-facts-card dl { grid-column: 1 / -1; grid-template-columns: repeat(4,minmax(0,1fr)); }
  .mobile-inline-offers .sidebar-offer-card { height: 100%; }
}
@media (max-width: 767px) {
  .article-page,.directory-page { padding-right: 15px; padding-left: 15px; }
  .mobile-inline-offers { grid-template-columns: minmax(0,1fr); gap: 10px; margin: 18px 0 23px; }
  .mobile-inline-offers .geo-facts-card,.mobile-inline-offers .sidebar-related-card { display: none; }
  .mobile-inline-offers .sidebar-offer-card { height: auto; }
  .mobile-inline-offers .sidebar-offer-card--featured { order: 0; }
  .mobile-inline-offers .sidebar-offer-card--context { order: 1; }
}

.interactive-tool { margin: 24px 0 34px; padding: 22px; border: 1px solid #e2e8df; border-radius: 16px; background: #fff; box-shadow: 0 12px 32px rgba(22, 47, 32, .045); }
.game-finder-tool { padding: 18px; }
.game-finder-controls { display: grid; gap: 15px; }
.finder-filter-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.finder-filter { display: grid; gap: 7px; min-width: 0; color: #42564a; font-size: 12px; font-weight: 750; }
.finder-filter select { width: 100%; min-height: 46px; padding: 9px 34px 9px 11px; border: 1px solid #d2ddd4; border-radius: 9px; background: #fff; color: var(--ink); font: inherit; font-weight: 600; }
.finder-note { margin: 13px 2px 18px; color: #65756a; font-size: 12px; line-height: 1.55; }
.game-finder-tool .game-grid { margin-top: 0; }
.tool-action { display: flex; justify-content: flex-start; margin-top: 20px; }
.tool-action .button, .tool-cta { min-height: 46px; }
.bonus-tool-card [data-tool-cta] { justify-self: start; margin-top: 6px; }
.tool-heading { margin-bottom: 18px; }
.tool-heading h2 { margin: 7px 0 8px; font-size: clamp(22px, 3vw, 30px); }
.tool-heading p { max-width: 690px; margin: 0; color: #5e7064; font-size: 14px; line-height: 1.6; }
.comparison-tool-selects { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 19px 0; }
.rtp-comparison-panels { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.rtp-comparison-panel { min-width: 0; padding: 18px; border: 1px solid #e4e9e3; border-radius: 12px; background: #f8faf7; }
.rtp-comparison-panel h3 { margin: 8px 0 14px; overflow-wrap: anywhere; font-size: 20px; }
.rtp-comparison-panel dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; }
.rtp-comparison-panel dl div { min-width: 0; }
.rtp-comparison-panel dt { margin-bottom: 4px; color: #66756a; font-size: 11px; font-weight: 750; }
.rtp-comparison-panel dd { margin: 0; overflow-wrap: anywhere; color: var(--ink); font-size: 14px; font-weight: 750; }
.rtp-comparison-result { display: block; margin: 14px 0 18px; padding: 13px 15px; border-left: 3px solid #86b96e; border-radius: 0 9px 9px 0; background: #f4f8f2; color: #344c3b; font-size: 13px; line-height: 1.6; }
.rtp-comparison-tool .tool-cta { display: inline-flex; }
@media (max-width: 900px) { .finder-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .interactive-tool { margin: 18px 0 26px; padding: 16px; border-radius: 12px; } .game-finder-tool { padding: 12px; } .finder-filter-grid,.comparison-tool-selects,.rtp-comparison-panels { grid-template-columns: 1fr; } .rtp-comparison-panel { padding: 15px; } .rtp-comparison-panel dl { grid-template-columns: 1fr 1fr; } .tool-action .button,.rtp-comparison-tool .tool-cta { width: 100%; justify-content: center; text-align: center; } }

/* Matchbook Ireland: editorial ledger layout, forest ink, citrus marker and copper detail. */
:root {
  --ink: #16372b;
  --muted: #617169;
  --green: #08744e;
  --green-dark: #064a35;
  --green-soft: #edf4ed;
  --lime: #d7ed78;
  --paper: #fff;
  --canvas: #f4f6f2;
  --line: #dce3dc;
  --shadow: 0 10px 26px rgba(17, 48, 34, .07);
  --display-face: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
}
html { scrollbar-gutter: auto; }
body { color: var(--ink); background: var(--paper); }
.top-strip { display: none !important; }
.site-header { z-index: 50; min-height: 68px; gap: 28px; border-bottom-color: #d9e1da; background: #fff; backdrop-filter: none; }
.brand { gap: 8px; }
.brand-symbol i { border-radius: 1px; transform: none; }
.brand-word { font-size: 16px; letter-spacing: .075em; }
.main-nav { height: 68px; gap: 20px; }
.nav-link { font-size: 12px; }
.nav-link.is-active::after { height: 2px; border-radius: 0; }
.header-tools { gap: 10px; }
.locale-pill { display: none !important; }
.button { border-radius: 4px; }
.button--primary { background: #0c4d38; }
.button--primary:hover { background: #073d2d; }
body.mobile-menu-open { overscroll-behavior: none; }
.menu-toggle { display: none; }
.mobile-nav-overlay { display: none; }
.mobile-nav { display: none; }
.home-hero { max-width: 1360px; min-height: 446px; padding: 46px 38px 40px; }
.home-hero h1,.article-hero h1,.directory-hero h1,.section-heading h2 { font-family: var(--display-face); font-weight: 600; letter-spacing: -.035em; }
.home-hero__visual { min-height: 358px; padding: 20px; background: #f1f3ef; isolation: auto; }
.home-hero__visual::before { display: none; content: none; }
.route-board { position: relative; z-index: 1; width: min(100%, 410px); padding: 17px 20px 14px; border: 1px solid #d4ddd5; border-top: 5px solid #0c4d38; background: #fff; color: var(--ink); }
.route-board__masthead,.route-board__footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; color: #63746a; font-size: 9px; font-weight: 850; letter-spacing: .12em; }
.route-board__masthead { padding-bottom: 12px; border-bottom: 1px solid #e2e8e2; }
.route-board__lead { display: grid; gap: 5px; margin: 13px 0 7px; padding: 16px; border-left: 4px solid var(--lime); background: #0c4d38; color: #fff; }
.route-board__lead > span { color: #d9e8dc; font-size: 8px; font-weight: 850; letter-spacing: .13em; }
.route-board__lead strong { font-family: var(--display-face); font-size: 25px; font-weight: 600; line-height: 1.1; }
.route-board__lead small { color: #e0e9e2; font-size: 10px; }
.route-board__steps { display: grid; margin: 0; padding: 0; list-style: none; }
.route-board__steps li { display: grid; grid-template-columns: 30px minmax(0,1fr) 20px; align-items: center; gap: 9px; padding: 12px 4px; border-bottom: 1px solid #e4e9e4; }
.route-board__steps li > b { color: #b56c30; font-family: var(--display-face); font-size: 17px; font-weight: 600; }
.route-board__steps li > span { display: grid; gap: 2px; }
.route-board__steps li strong { font-size: 11px; }
.route-board__steps li small { color: #67766d; font-size: 9px; }
.route-board__steps li i { color: #0c4d38; font-size: 16px; font-style: normal; }
.route-board__footer { padding-top: 12px; font-size: 8px; }
.route-board__footer strong { color: #0c4d38; }
.route-board__footer strong b { padding: 0 4px; color: #bd763b; }
.route-board__index { position: absolute; right: 7px; bottom: 7px; display: grid; width: 39px; height: 39px; place-content: center; border: 1px solid #d1d9d1; background: #d7ed78; color: #16372b; font-size: 9px; font-weight: 900; line-height: 1.25; text-align: center; }
.responsive-image { display: block; width: 100%; aspect-ratio: var(--image-ratio); overflow: hidden; }
.responsive-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.home-section--soft { background: #f3f5f1; }
.format-card,.game-card,.guide-card { border-radius: 3px; box-shadow: none; }
.format-card { border-top: 2px solid #0c4d38; }
.format-icon { border-radius: 3px; }
.game-card__art { border-radius: 0; }
.game-art,.game-art--1,.game-art--2,.game-art--3,.game-art--4,.game-art--5,.game-art--6 { background-image: none; }
.game-art { background-color: #e7eee2; }
.game-art--1 { background-color: #dce9df; }
.game-art--2 { background-color: #f0e3d5; }
.game-art--3 { background-color: #e5e8df; }
.game-art--4 { background-color: #e9e4d9; }
.game-art--5 { background-color: #eee6d7; }
.game-art--6 { background-color: #e2ead5; }
.game-art__glyph { border-radius: 2px; background: #fff; box-shadow: none; }
.game-art__orb,.game-art__shine { display: none; }
.article-hero,.directory-hero { border-radius: 3px; border-color: #dce3dc; background: #f3f5f1; }
.article-hero__mark { border-radius: 2px; background: #d7ed78; transform: none; }
.article-hero h1,.directory-hero h1 { line-height: 1.12; }
.section-index { border-radius: 2px; background: #e9f0e7; color: #36684f; }
.article-faq details,.game-facts,.aside-card,.page-promo,.interactive-tool { border-radius: 4px; box-shadow: none; }
.article-section { border-color: #e1e6e1; }
.quick-answer { border-radius: 0; background: #f1f4ef; }
.game-stage,.game-stage[class*="game-stage--"] { border-radius: 3px; background-image: none !important; background-color: color-mix(in srgb, var(--stage-accent, #839b63) 10%, white); }
.game-stage::before,.game-stage::after { display: none; }
.game-stage__frame { border-radius: 1px; box-shadow: none; }
.game-stage__glyph { border-radius: 2px; background: #fff; box-shadow: none; transform: none; }
.game-stage__accent { border: 0; border-radius: 2px; box-shadow: none; }
.bonus-visual[class*="bonus-visual--"] { border-radius: 3px; background-image: none !important; background-color: color-mix(in srgb, var(--bonus-accent, #91ad64) 12%, white); }
.page-promo__art,.context-popup__art { border-radius: 3px; background: #e8efe6; }
.page-promo__art::before,.page-promo__art::after { display: none; }
.page-promo--game .page-promo__art,.context-popup--game .context-popup__art { background: #e5e9df; }
.page-promo--bonus .page-promo__art,.context-popup--bonus .context-popup__art { background: #eef2d9; }
.page-promo--payment .page-promo__art,.context-popup--payment .context-popup__art { background: #e2eee7; }
.page-promo--vip .page-promo__art,.context-popup--vip .context-popup__art { background: #f1eadd; }
.page-promo--top .page-promo__art,.context-popup--top .context-popup__art { background: #e5eae6; }
.page-promo--safer .page-promo__art,.page-promo--service .page-promo__art { background: #e7eee3; }
.context-popup__art { border-radius: 3px; }
.route-dialog { border-radius: 3px; }
@media (max-width: 900px) {
  .site-header { min-height: 64px; padding: 0 20px; gap: 14px; }
  .main-nav { display: none; }
  .header-tools { gap: 8px; }
  .header-tools > .button { min-height: 38px; padding: 0 10px; font-size: 10px; }
  .menu-toggle { display: flex; width: 40px; height: 40px; flex-direction: column; justify-content: center; gap: 5px; padding: 9px; border: 1px solid #d7e0d8; border-radius: 3px; background: #fff; cursor: pointer; }
  .menu-toggle span { display: block; width: 100%; height: 2px; background: #16372b; transition: transform .16s ease; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .mobile-nav-overlay:not([hidden]) { position: fixed; z-index: 48; inset: 0; display: block; width: 100%; height: 100%; border: 0; background: rgba(11, 35, 26, .42); }
  .mobile-nav:not([hidden]) { position: fixed; z-index: 51; top: 64px; right: 0; left: 0; display: grid; max-height: calc(100dvh - 64px); gap: 0; overflow-y: auto; padding: 8px 20px 20px; border-bottom: 1px solid #d7e0d8; background: #fff; box-shadow: 0 12px 22px rgba(20,45,30,.08); }
  .mobile-nav .nav-link { min-height: 48px; border-bottom: 1px solid #e6ebe6; font-size: 13px; }
  .mobile-nav .nav-link.is-active::after { display: none; }
  .home-hero { grid-template-columns: 1fr .9fr; min-height: 400px; padding: 34px 24px; }
  .home-hero__visual { min-height: 320px; padding: 14px; transform: none; }
}
@media (max-width: 560px) {
  .site-header { min-height: 60px; padding: 0 14px; }
  .brand-word { font-size: 13px; }
  .brand-symbol { width: 20px; }
  .header-tools { gap: 7px; }
  .header-tools > .button { min-height: 36px; padding: 0 8px; font-size: 9px; }
  .menu-toggle { width: 36px; height: 36px; padding: 8px; }
  .mobile-nav:not([hidden]) { top: 60px; max-height: calc(100dvh - 60px); padding-right: 15px; padding-left: 15px; }
  .home-hero { padding: 30px 17px 23px; }
  .home-hero h1 { font-size: 41px; }
  .home-hero__visual { min-height: 0; margin-top: 24px; padding: 10px; }
  .route-board { padding: 14px 13px 12px; }
  .route-board__lead { padding: 14px; }
  .route-board__lead strong { font-size: 22px; }
  .route-board__index { right: -1px; bottom: -1px; width: 34px; height: 34px; }
  .responsive-image { aspect-ratio: var(--image-mobile-ratio, var(--image-ratio)); }
}
@media (prefers-reduced-motion: reduce) { .menu-toggle span { transition: none; } }
