:root {
  color-scheme: light;
  --ink: #17231d;
  --muted: #65736b;
  --line: #e1e9e3;
  --soft: #f7faf7;
  --mint: #e8f6ed;
  --green: #16764b;
  --green-dark: #105b3a;
  --lime: #d8f171;
  --white: #fff;
  --shadow: 0 18px 50px rgba(22, 53, 36, .09);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body { margin: 0; color: var(--ink); background: var(--white); font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
a { color: var(--green-dark); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: #0b4b2d; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 5px #9b5b00; }
.container { width: min(1160px, calc(100% - 48px)); margin-inline: auto; }
.skip-link { position: absolute; left: 12px; top: -60px; z-index: 20; padding: 10px 16px; color: #fff; background: var(--green-dark); border-radius: 6px; }
.skip-link:focus { top: 12px; color: #fff; }
.site-header { position: sticky; top: 0; z-index: 10; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--line); backdrop-filter: blur(14px); }
.header-inner { width: min(1280px, calc(100% - 48px)); min-height: 78px; margin: auto; display: flex; align-items: center; gap: 34px; }
.brand { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; color: var(--ink); text-decoration: none; }
.brand:hover { color: var(--ink); }
.brand-mark { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 13px 13px 13px 5px; background: var(--green-dark); color: var(--lime); font-size: 25px; line-height: 1; font-weight: 800; letter-spacing: -3px; }
.brand-name { display: grid; font-size: 24px; line-height: 1; letter-spacing: -1.4px; font-weight: 800; }
.brand-name > span { margin-top: 5px; color: var(--muted); font-size: 8px; line-height: 1; letter-spacing: 1.5px; font-weight: 750; }
.main-nav { display: flex; align-items: center; justify-content: center; gap: clamp(14px, 2.2vw, 30px); margin-left: auto; }
.nav-link, .help-link { color: #526158; text-decoration: none; font-size: 13px; font-weight: 650; white-space: nowrap; }
.nav-link:hover, .nav-link.is-active, .help-link:hover { color: var(--green-dark); }
.nav-link.is-active { position: relative; }
.nav-link.is-active::after { position: absolute; content: ""; bottom: -29px; left: 0; right: 0; height: 2px; background: var(--green); }
.header-actions { display: flex; align-items: center; gap: 20px; }
.button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 13px; padding: 10px 19px; border: 1px solid transparent; border-radius: 7px; text-decoration: none; font-size: 13px; line-height: 1.2; font-weight: 720; transition: transform .16s ease, background .16s ease, box-shadow .16s ease; }
.button:hover { transform: translateY(-1px); }
.button-primary { color: #fff; background: var(--green-dark); box-shadow: 0 5px 12px rgba(16,91,58,.12); }
.button-primary:hover { color: #fff; background: #0b4b2f; box-shadow: 0 8px 20px rgba(16,91,58,.2); }
.button-secondary { color: var(--green-dark); background: #fff; border-color: #cbd9cf; }
.button-secondary:hover { color: var(--green-dark); background: var(--mint); }
.button-small { min-height: 40px; padding: 9px 14px; font-size: 12px; }
.button span, .text-link span, .support-link span { font-size: 16px; }
.menu-toggle { display: none; width: 42px; height: 42px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.menu-toggle span { display: block; width: 20px; height: 2px; margin: 4px auto; background: var(--ink); }
.home-hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--line); background: #fff; }
.home-hero::before { position: absolute; content: ""; width: 570px; height: 570px; right: -155px; top: -270px; border-radius: 50%; border: 1px solid rgba(22,118,75,.1); box-shadow: 0 0 0 54px rgba(22,118,75,.025), 0 0 0 108px rgba(22,118,75,.02); }
.hero-inner { min-height: 535px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 7%; padding-block: 76px 80px; }
.home-copy { position: relative; z-index: 1; max-width: 620px; }
.eyebrow-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.eyebrow, .section-kicker { color: var(--green); font-size: 10px; line-height: 1.4; letter-spacing: 1.45px; font-weight: 800; text-transform: uppercase; }
.verified-chip { display: inline-flex; align-items: center; gap: 7px; padding: 5px 9px; color: #55655b; border: 1px solid #e2eae3; border-radius: 99px; background: #fff; font-size: 10px; font-weight: 650; letter-spacing: .4px; }
.verified-chip i, .visual-status::before { width: 7px; height: 7px; display: inline-block; border-radius: 50%; background: #4baf67; box-shadow: 0 0 0 3px #e8f6ed; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--ink); letter-spacing: -.045em; }
.home-copy h1 { margin: 24px 0 17px; font-size: clamp(44px, 5.4vw, 68px); line-height: 1.04; font-weight: 780; }
.home-copy h1 span { color: var(--green); }
.hero-lede { max-width: 520px; margin-bottom: 24px; color: #56645b; font-size: 17px; line-height: 1.7; }
.hero-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.hero-offer-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 15px; color: var(--green); font-size: 13px; font-weight: 720; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.hero-offer-link:focus-visible { outline: 3px solid #8cd0a3; outline-offset: 4px; border-radius: 3px; }
.preview-note { margin: 13px 0 0; color: #56645b; font-size: 11px; line-height: 1.5; }
.hero-visual { position: relative; min-height: 335px; padding: 24px 27px; display: flex; flex-direction: column; justify-content: space-between; color: #f6fff8; border-radius: 18px; background: #fff; box-shadow: 0 26px 60px rgba(17,65,42,.18); }
.hero-visual::before, .hero-visual::after { position: absolute; content: ""; border: 1px solid rgba(216,241,113,.19); border-radius: 50%; }
.hero-visual::before { width: 290px; height: 290px; right: -78px; top: -96px; }
.hero-visual::after { width: 200px; height: 200px; right: -34px; top: -51px; }
.visual-top, .visual-bottom { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 12px; color: #cae0d0; font-size: 10px; letter-spacing: 1.1px; font-weight: 750; text-transform: uppercase; }
.visual-status { display: flex; align-items: center; gap: 8px; }
.visual-wordmark { position: relative; z-index: 1; padding: 20px 0 0; color: #fff; font-size: clamp(52px,6vw,78px); line-height: .9; font-weight: 800; letter-spacing: -6px; }
.visual-wordmark span { display: block; margin-top: 16px; color: var(--lime); font-size: 11px; letter-spacing: 2px; }
.visual-pattern { position: relative; z-index: 1; height: 90px; display: flex; align-items: center; justify-content: center; gap: clamp(15px,3vw,38px); color: rgba(216,241,113,.86); font-size: 32px; }
.visual-pattern span:nth-child(2), .visual-pattern span:nth-child(4) { transform: translateY(-15px); color: rgba(255,255,255,.76); }
.visual-pattern span:nth-child(3) { color: #a3d5a8; }
.visual-bottom { padding-top: 16px; border-top: 1px solid rgba(255,255,255,.17); color: #d3e3d7; text-transform: none; letter-spacing: .1px; font-size: 12px; }
.quick-answer { display: grid; grid-template-columns: .85fr 1.45fr auto; align-items: center; gap: 32px; padding-block: 31px; border-bottom: 1px solid var(--line); }
.quick-answer h2 { max-width: 300px; margin: 7px 0 0; font-size: 22px; line-height: 1.22; }
.quick-answer p { margin: 0; color: #5e6a62; font-size: 13px; line-height: 1.7; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--green-dark); font-size: 12px; font-weight: 750; text-decoration: none; white-space: nowrap; }
.text-link:hover { text-decoration: underline; }
.section { padding-block: 75px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 25px; }
.section-heading h2 { margin: 8px 0 7px; font-size: clamp(28px,3.2vw,38px); line-height: 1.13; }
.section-heading p { max-width: 630px; margin-bottom: 0; color: var(--muted); font-size: 13px; }
.feature-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.guide-card { position: relative; min-height: 172px; padding: 18px 19px 39px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; color: var(--ink); border: 1px solid var(--line); border-radius: 10px; background: #fff; text-decoration: none; transition: transform .17s ease, box-shadow .17s ease, border .17s ease; }
.guide-card:hover { color: var(--ink); border-color: #bad8c4; transform: translateY(-2px); box-shadow: var(--shadow); }
.guide-tag { color: var(--green); font-size: 9px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }
.guide-card b { max-width: 90%; font-size: 17px; line-height: 1.27; letter-spacing: -.35px; }
.guide-desc { display: -webkit-box; overflow: hidden; color: #6d7971; font-size: 11px; line-height: 1.5; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.guide-card > i { position: absolute; right: 17px; bottom: 16px; color: var(--green); font-size: 16px; font-style: normal; }
.game-section { padding-block: 69px; background: var(--soft); border-block: 1px solid var(--line); }
.game-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; }
.game-tile { min-height: 144px; padding: 14px; display: flex; flex-direction: column; justify-content: space-between; color: var(--ink); border: 1px solid #e0e8e1; border-radius: 9px; background: #fff; text-decoration: none; }
.game-tile:hover { color: var(--ink); border-color: #9ec8aa; box-shadow: var(--shadow); }
.game-glyph { width: 42px; height: 42px; display: grid; place-items: center; color: var(--green-dark); border-radius: 12px; background: var(--mint); font-size: 12px; font-weight: 800; }
.game-tile b { margin: 12px 0 8px; font-size: 12px; line-height: 1.3; }
.game-tile > span:last-child { color: #56645b; font-size: 10px; }
.payments-home { padding-top: 70px; }
.data-table-wrap { width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: 9px; background: white; }
.data-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 12px; }
.data-table caption { padding: 12px 16px; color: var(--muted); text-align: left; font-size: 11px; background: #fbfdfb; }
.data-table th, .data-table td { padding: 13px 16px; border-top: 1px solid var(--line); vertical-align: top; }
.data-table thead th { color: #506157; background: #f5f9f5; font-size: 10px; letter-spacing: .7px; text-transform: uppercase; }
.data-table tbody th { min-width: 120px; color: #25362b; font-size: 12px; }
.fine-print { margin: 13px 0 0; color: #56645b; font-size: 11px; line-height: 1.65; }
.source-inline { margin: 14px 0 0; color: var(--muted); font-size: 11px; }
.source-inline a { font-weight: 700; }
.offer-section { padding-block: 56px; background: #eff7ed; border-block: 1px solid #e0ecde; }
.offer-inner { display: grid; grid-template-columns: 1.3fr .7fr; align-items: center; gap: 56px; }
.offer-inner h2 { margin: 8px 0; font-size: 35px; line-height: 1.15; }
.offer-inner p { max-width: 620px; margin-bottom: 18px; color: #5c6a60; font-size: 13px; }
.offer-card { padding: 21px; border: 1px solid #dce8da; border-radius: 10px; background: #fff; box-shadow: 0 12px 32px rgba(33,65,36,.06); }
.offer-card > span, .offer-placeholder b { display: block; color: var(--muted); font-size: 9px; letter-spacing: 1.2px; font-weight: 800; }
.offer-card strong, .offer-placeholder strong { display: block; margin: 6px 0 0; color: var(--green-dark); font-size: 27px; letter-spacing: -.6px; }
.offer-card p { margin: 3px 0 17px; font-size: 11px; }
.safer-home { padding-block: 58px; }
.safer-card { display: grid; grid-template-columns: 54px 1fr auto; align-items: center; gap: 21px; padding: 23px 26px; border: 1px solid #e5eae5; border-radius: 10px; background: #fbfcfa; }
.safer-mark, .age-mark { width: 48px; height: 48px; display: grid; place-items: center; color: var(--green-dark); border: 1px solid #c8dfce; border-radius: 50%; background: #eff8f0; font-size: 15px; font-weight: 800; }
.safer-card h2 { margin: 5px 0; font-size: 23px; }
.safer-card p { margin: 0 0 8px; color: var(--muted); font-size: 12px; }
.support-link { display: inline-flex; align-items: center; gap: 9px; padding: 12px 15px; color: var(--green-dark); border: 1px solid #cddbcf; border-radius: 7px; background: #fff; font-size: 11px; font-weight: 750; text-decoration: none; white-space: nowrap; }
.faq-home { padding-top: 46px; }
.faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px 23px; }
details { border-bottom: 1px solid var(--line); }
summary { position: relative; padding: 14px 28px 14px 0; color: #28392e; cursor: pointer; list-style: none; font-size: 13px; font-weight: 700; }
summary::-webkit-details-marker { display: none; }
summary::after { position: absolute; right: 5px; content: "+"; color: var(--green); font-size: 19px; font-weight: 400; }
details[open] summary::after { content: "−"; }
details p { margin: 0; padding: 0 26px 15px 0; color: var(--muted); font-size: 12px; }
.guide-directory { padding-block: 50px 26px; }
.topic-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.topic-chip { min-height: 38px; display: inline-flex; align-items: center; gap: 12px; padding: 7px 12px; color: #405148; border: 1px solid var(--line); border-radius: 99px; background: white; text-decoration: none; font-size: 11px; font-weight: 680; }
.topic-chip:hover { border-color: #a9cbb2; color: var(--green-dark); background: #f7fbf7; }
.topic-chip span { color: var(--green); font-size: 10px; }
.topic-list { padding-bottom: 80px; }
.topic-section { padding-block: 29px; border-top: 1px solid var(--line); scroll-margin-top: 98px; }
.topic-heading { margin-bottom: 16px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.topic-heading h3 { margin: 4px 0 0; font-size: 24px; }
.topic-heading a, .more-guides { color: var(--green-dark); font-size: 11px; font-weight: 750; text-decoration: none; }
.guide-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; list-style: none; margin: 0; padding: 0; }
.content-group, .closing-cta-copy, .bonus-fit-copy, .bonus-start-copy, .top-featured-copy, .top-weights-copy, .top-evidence-copy, .game-fact, .game-launch-copy, .home-fact-copy, .calculator-heading-copy, .home-offer-final-copy, .section-heading-copy, .rtp-fact-row, .game-path-copy, .quick-start-copy, .quick-step-copy, .vip-card-copy, .final-cta-copy, .payment-focus-copy, .payment-flow-copy, .review-stat, .vip-status-copy, .vip-verification-copy, .vip-next-copy { min-width: 0; }
.guide-grid .guide-card { min-height: 153px; padding: 15px; }
.guide-grid .guide-card b { font-size: 14px; }
.guide-grid .guide-desc { font-size: 10px; }
.more-guides { display: inline-flex; margin-top: 14px; }
.site-footer { color: #e7f2e9; background: #102f21; }
.footer-main { padding-block: 44px 36px; display: grid; grid-template-columns: 1.35fr .8fr 1fr 1.05fr; gap: 32px; }
.footer-brand .brand { color: white; }
.footer-brand .brand-name > span { color: #afc6b4; }
.footer-brand .brand-mark { color: #183525; background: var(--lime); }
.footer-brand p { max-width: 280px; margin: 17px 0 11px; color: #c0d1c3; font-size: 11px; }
.market-chip { color: #d0e4d4; font-size: 10px; }
.market-chip i { color: var(--lime); font-style: normal; }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.footer-column h2 { margin: 2px 0 6px; color: white; font-size: 11px; letter-spacing: .6px; }
.footer-column a { color: #c5d5c9; font-size: 10px; text-decoration: none; }
.footer-column a:hover, .footer-cta:hover { color: white; text-decoration: underline; }
.footer-note { color: #c4d6c8; font-size: 10px; }
.footer-note p { margin: 0; }
.footer-note a { color: var(--lime); }
.footer-note .age-mark { width: 37px; height: 37px; margin-bottom: 12px; color: var(--lime); border-color: #496956; background: #1d4932; font-size: 11px; }
.footer-cta { display: inline-flex; margin-top: 12px; color: var(--lime); font-size: 11px; font-weight: 750; text-decoration: none; }
.footer-bottom { padding-block: 15px; display: flex; justify-content: space-between; gap: 25px; border-top: 1px solid rgba(255,255,255,.13); color: #a9bfaf; font-size: 9px; }
.breadcrumbs { padding-block: 19px; display: flex; align-items: center; gap: 9px; color: #58675e; font-size: 10px; }
.breadcrumbs a { color: #66746b; text-decoration: none; }
.breadcrumbs span[aria-current] { overflow: hidden; color: #536157; text-overflow: ellipsis; white-space: nowrap; }
.article-hero { padding-block: 28px 47px; display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 7%; }
.article-copy h1 { margin: 15px 0 12px; font-size: clamp(35px,4.4vw,52px); line-height: 1.08; }
.article-intro { max-width: 600px; margin-bottom: 19px; color: #58675e; font-size: 15px; line-height: 1.65; }
.answer-card { padding: 23px 25px; border: 1px solid #dce8de; border-radius: 11px; background: #fff; box-shadow: 0 10px 35px rgba(32,75,43,.05); }
.answer-label { display: flex; align-items: center; gap: 8px; color: var(--green); font-size: 9px; letter-spacing: 1.3px; font-weight: 800; }
.answer-label span { font-size: 15px; }
.answer-card p { margin: 13px 0; color: #304238; font-size: 14px; line-height: 1.7; }
.inline-link { color: var(--green-dark); font-size: 11px; font-weight: 750; text-decoration: none; }
.article-layout { width: min(1320px,calc(100% - 64px)); margin-inline: auto; display: grid; grid-template-columns: minmax(0,1fr) 320px; grid-template-areas: "main sidebar"; align-items: start; gap: 32px; padding-bottom: 84px; }
.article-body { grid-area: main; min-width: 0; }
.article-rail { grid-area: sidebar; align-self: start; position: sticky; top: 98px; display: grid; gap: 12px; }
.mobile-inline-offers { display: none; }
.sidebar-card { min-width: 0; padding: 15px; border: 1px solid #e0e9e2; border-radius: 13px; background: #fff; box-shadow: 0 7px 22px rgba(23,55,35,.045); }
.geo-facts-card { background: #fff; }
.sidebar-kicker { display: block; margin-bottom: 7px; color: #627369; font-size: 8px; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
.sidebar-card h2 { margin: 0 0 9px; font-size: 15px; line-height: 1.24; letter-spacing: -.02em; }
.geo-facts-list { margin: 0; }
.geo-facts-route { display: inline-flex; align-items: center; gap: 5px; margin-top: 10px; color: var(--green-dark); font-size: 11px; font-weight: 750; text-decoration: none; }
.geo-facts-route:hover { text-decoration: underline; }
.geo-fact-row { display: grid; grid-template-columns: minmax(72px,.7fr) minmax(0,1.3fr); gap: 9px; padding: 6px 0; border-top: 1px solid #edf1ed; }
.geo-fact-row dt { color: #68776c; font-size: 9px; line-height: 1.45; }
.geo-fact-row dd { margin: 0; color: #273a2e; font-size: 9px; font-weight: 720; line-height: 1.45; }
.sidebar-offer-card--featured { border-color: #cbded0; background: #fff; }
.sidebar-offer-top { min-height: 40px; margin-bottom: 11px; display: flex; align-items: center; gap: 10px; }
.sidebar-featured-badge { color: #376147; font-size: 8px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.sidebar-brand-mark { width: 40px; height: 40px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 13px 13px 13px 4px; background: var(--green-dark); color: var(--lime); font-size: 25px; font-weight: 850; letter-spacing: -3px; }
.sidebar-context-visual { position: relative; width: 40px; height: 40px; flex: 0 0 auto; overflow: hidden; display: block; border: 1px solid #dbe8df; border-radius: 12px; background: #fff; }
.sidebar-context-visual i,.sidebar-context-visual b,.sidebar-context-visual em { position: absolute; display: block; border-radius: 50%; background: #4d9b68; }
.sidebar-context-visual i { width: 19px; height: 19px; top: 6px; left: 6px; opacity: .82; }
.sidebar-context-visual b { width: 12px; height: 12px; right: 4px; bottom: 5px; background: #d4e870; }
.sidebar-context-visual em { width: 8px; height: 8px; right: 8px; top: 5px; background: #fff; }
.sidebar-context-visual[data-image-key^="game-"] i { border-radius: 3px; transform: rotate(35deg); }
.sidebar-context-visual[data-image-key^="payment-"] i { width: 23px; height: 15px; border-radius: 4px; }
.sidebar-context-visual[data-image-key^="bonus-"] i { width: 17px; height: 20px; border-radius: 3px; transform: rotate(-20deg); }
.sidebar-context-visual[data-image-key^="vip-"] i { width: 18px; height: 18px; clip-path: polygon(50% 0,62% 34%,100% 38%,72% 62%,80% 100%,50% 78%,20% 100%,28% 62%,0 38%,38% 34%); border-radius: 0; }
.sidebar-context-visual[data-image-key^="mobile-"] i { width: 13px; height: 22px; left: 12px; border: 2px solid #4d9b68; border-radius: 4px; background: transparent; }
.sidebar-context-visual[data-image-key^="comparison-"] i { width: 23px; height: 5px; top: 9px; left: 8px; border-radius: 4px; box-shadow: 0 8px 0 #4d9b68,0 16px 0 #d4e870; }
.sidebar-offer-message { margin: 0 0 10px; color: #5c6a60; font-size: 10px; line-height: 1.5; }
.sidebar-evidence-score { margin: -2px 0 10px; color: #285e3d; font-size: 9px; font-weight: 800; }
.sidebar-benefits { margin: 0 0 13px; padding: 0; display: grid; gap: 6px; list-style: none; }
.sidebar-benefits li { position: relative; padding-left: 14px; color: #405449; font-size: 9px; line-height: 1.45; }
.sidebar-benefits li::before { position: absolute; top: .48em; left: 0; width: 6px; height: 6px; border-radius: 50%; background: #6ba27b; content: ""; }
.sidebar-cta { width: 100%; min-height: 39px; padding: 9px 11px; justify-content: center; font-size: 10px; }
.sidebar-related-card { position: relative; display: grid; gap: 3px; padding-right: 36px; color: var(--ink); text-decoration: none; }
.sidebar-related-card:hover { border-color: #b9d1c0; color: var(--green-dark); }
.sidebar-related-card b { font-size: 11px; line-height: 1.35; }
.sidebar-related-arrow { position: absolute; top: 50%; right: 15px; color: var(--green); font-size: 17px; transform: translateY(-50%); }
.article-toc { margin: 0 0 16px; padding: 10px 12px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; border: 1px solid #e5ece6; border-radius: 9px; background: #fbfdfb; }
.article-toc .rail-label { margin-right: 3px; }
.article-toc a { color: #58675e; font-size: 9px; font-weight: 650; text-decoration: none; }
.article-toc a:hover { color: var(--green-dark); }
.page-promo { --promo-wash:#f1f7f2; --promo-line:#d8e6da; margin: 18px auto 26px; padding: 16px 18px; display: grid; grid-template-columns: 62px minmax(0,1fr); align-items: center; gap: 16px; position: relative; overflow: hidden; border: 1px solid var(--promo-line); border-radius: 13px; background: #fff; }
.page-promo--game { --promo-wash:#eef6f1; --promo-line:#d6e6da; }
.page-promo--bonus { --promo-wash:#f7f6eb; --promo-line:#e9e4c9; }
.page-promo--payment { --promo-wash:#eef5f7; --promo-line:#d8e6e9; }
.page-promo--top { --promo-wash:#f3f2f8; --promo-line:#e2dfec; }
.page-promo--vip { --promo-wash:#f6f3eb; --promo-line:#e8dfcc; }
.page-promo--help, .page-promo--information { --promo-wash:#f4f6f7; --promo-line:#e0e6e8; }
.page-promo-visual { width: 58px; height: 58px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid rgba(32,94,56,.14); border-radius: 16px; background: #fff; color: #28633d; box-shadow: inset 0 0 0 5px rgba(255,255,255,.45); }
.page-promo-visual span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 10px; background: rgba(255,255,255,.78); font-size: 15px; font-weight: 850; }
.page-promo-kicker { display: block; margin-bottom: 4px; color: #54705b; font-size: 8px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.page-promo h2 { margin: 0 0 5px; font-size: 16px; line-height: 1.25; letter-spacing: -.025em; }
.page-promo p { max-width: 720px; margin: 0; color: #59675e; font-size: 11px; line-height: 1.55; }
.page-promo-cta { margin-top: 9px; min-height: 37px; padding: 9px 13px; font-size: 10px; }
.page-promo--rail { margin: 0; padding: 13px; grid-template-columns: 1fr; gap: 10px; }
.page-promo--rail .page-promo-visual { width: 42px; height: 42px; border-radius: 12px; }
.page-promo--rail .page-promo-visual span { width: 25px; height: 25px; font-size: 12px; }
.page-promo--rail h2 { font-size: 14px; }
.page-promo--rail p { font-size: 10px; }
.page-promo--rail .page-promo-cta { width: 100%; justify-content: center; }
.page-promo--rail { position: relative; }
body.popup-open .page-promo--rail, body:has(dialog[open]) .page-promo { visibility: hidden; pointer-events: none; }
.context-popup:not([open]) { display: none; }
.context-popup[open] { position: fixed; inset: 0; z-index: 1000; width: min(520px,calc(100% - 34px)); max-width: none; max-height: calc(100% - 36px); margin: auto; padding: 0; overflow: visible; border: 0; border-radius: 20px; background: transparent; color: var(--ink); }
.context-popup::backdrop { background: rgba(19,34,25,.46); backdrop-filter: blur(3px); }
.context-popup-card { position: relative; overflow: hidden; padding: clamp(25px,5vw,42px); border: 1px solid #d7e5d9; border-radius: 20px; background: #fff; box-shadow: 0 24px 76px rgba(12,42,23,.22); }
.context-popup-card::before { position: absolute; top: -60px; right: -25px; width: 150px; height: 150px; border: 1px solid rgba(52,117,76,.18); border-radius: 38px; content: ""; transform: rotate(34deg); pointer-events: none; }
.context-popup-kicker { display: block; margin-bottom: 10px; color: var(--green); font-size: 9px; font-weight: 850; letter-spacing: .14em; }
.context-popup h2 { max-width: 400px; margin: 0 30px 10px 0; font-size: clamp(24px,4vw,33px); line-height: 1.12; }
.context-popup p { max-width: 420px; margin: 0 0 21px; color: #5b6d61; font-size: 13px; line-height: 1.65; }
.context-popup .button { min-height: 45px; }
.context-popup-close { position: absolute; z-index: 1; top: 13px; right: 13px; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid #dbe6dc; border-radius: 50%; background: rgba(255,255,255,.92); color: #405449; cursor: pointer; font-size: 23px; }
.mobile-context-bar { display: none; }
.mobile-context-bar[hidden] { display: none !important; }
.mobile-context-copy { min-width: 0; display: grid; gap: 4px; }
.mobile-context-copy strong { color: #183927; font-size: 11px; line-height: 1.25; }
.mobile-context-copy span { color: #637368; font-size: 9px; line-height: 1.4; }
.mobile-context-bar .button { max-width: min(44vw,195px); min-height: 38px; padding: 9px 12px; font-size: 9px; line-height: 1.25; text-align: center; white-space: normal; }
.mobile-context-close { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid #dce7de; border-radius: 50%; background: white; color: #53645a; cursor: pointer; font-size: 21px; }
.mobile-nudge-open { padding-bottom: calc(var(--mobile-context-height, 94px) + env(safe-area-inset-bottom)); }
body:has(.main-nav.is-open) .mobile-context-bar { display: none !important; }
.game-hero + .page-promo { max-width: 1030px; }
.home-page-promo { padding-top: 14px; }
.index-page > .page-promo { margin: 20px 0 28px; }
.service-heading + .page-promo { margin: 20px 0 26px; }
.article-rail { align-self: start; position: sticky; top: 103px; display: grid; gap: 12px; }
.rail-card { padding: 16px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.rail-label { color: #56645b; font-size: 9px; font-weight: 800; letter-spacing: 1px; }
.rail-card > a { font-size: 10px; text-decoration: none; }
.rail-disclosure { background: #fafcf9; }
.rail-disclosure p { margin: 0; color: #69766e; font-size: 10px; line-height: 1.5; }
.article-body { min-width: 0; }
.content-section { padding-block: 26px; border-top: 1px solid var(--line); scroll-margin-top: 104px; }
.content-section h2, .closing-cta h2 { margin: 6px 0 13px; font-size: clamp(22px,2.5vw,29px); line-height: 1.2; }
.content-section > p { color: #55635b; font-size: 13px; line-height: 1.75; }
.answer-detail { padding-top: 0; border-top: 0; }
.answer-detail h2 { font-size: 27px; }
.standfirst { color: #26392e !important; font-size: 15px !important; font-weight: 650; }
.category-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.category-link, .related-card { position: relative; min-height: 65px; padding: 12px 34px 12px 12px; display: grid; grid-template-columns: 28px 1fr; align-items: center; gap: 10px; color: var(--ink); border: 1px solid var(--line); border-radius: 7px; background: white; text-decoration: none; }
.category-link:hover, .related-card:hover { color: var(--ink); border-color: #a9cbb2; background: #f9fcf9; }
.category-link > span { color: #55645a; font-size: 9px; font-weight: 800; }
.category-link b { font-size: 11px; }
.category-link i, .related-card i { position: absolute; right: 12px; color: var(--green); font-size: 13px; font-style: normal; }
.game-fact-grid, .review-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.game-fact-grid > div, .review-grid > div { min-height: 65px; padding: 11px 13px; display: flex; flex-direction: column; justify-content: center; gap: 4px; border: 1px solid var(--line); border-radius: 7px; background: #fbfdfb; }
.game-fact-grid span, .review-grid span { color: #56645b; font-size: 9px; font-weight: 750; letter-spacing: .6px; text-transform: uppercase; }
.game-fact-grid b, .review-grid b { color: #33473a; font-size: 11px; line-height: 1.35; }
.steps-list { margin: 15px 0 0; padding: 0; list-style: none; counter-reset: steps; }
.steps-list li { position: relative; min-height: 45px; padding: 10px 0 10px 39px; border-bottom: 1px solid #edf1ed; color: #526157; font-size: 12px; counter-increment: steps; }
.steps-list li::before { position: absolute; left: 0; top: 8px; width: 26px; height: 26px; display: grid; place-items: center; content: counter(steps,decimal-leading-zero); color: var(--green); border-radius: 50%; background: var(--mint); font-size: 9px; font-weight: 800; }
.offer-placeholder { margin: 16px 0; padding: 16px; display: flex; gap: 15px; align-items: center; border: 1px dashed #afc9b5; border-radius: 8px; background: #f8fcf8; }
.offer-placeholder > span { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; color: var(--green); border-radius: 9px; background: var(--mint); font-size: 18px; }
.offer-placeholder strong { font-size: 20px; }
.offer-placeholder p { margin: 3px 0 0; color: var(--muted); font-size: 10px; }
.check-list, .source-list { margin: 12px 0 18px; padding: 0; list-style: none; }
.check-list li { padding: 8px 0; display: flex; gap: 10px; border-bottom: 1px solid #edf1ed; color: #536158; font-size: 12px; }
.check-list li span { color: var(--green); font-weight: 800; }
.editorial-note { margin-top: 18px; padding: 15px 17px; border-left: 3px solid #8fb79a; background: #f5f9f5; }
.editorial-note b { color: #405348; font-size: 10px; }
.editorial-note p { margin: 3px 0 0; color: #68756c; font-size: 10px; }
.faq-block { padding-inline: 18px; border: 1px solid var(--line); border-radius: 8px; background: #fbfdfb; }
.faq-block h2 { font-size: 19px; }
.faq-block p { margin-bottom: 15px; }
.source-list { display: flex; flex-wrap: wrap; gap: 8px; }
.source-list li { list-style: none; }
.source-list a { display: inline-flex; padding: 9px 11px; border: 1px solid var(--line); border-radius: 6px; font-size: 10px; font-weight: 650; text-decoration: none; }
.related-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; }
.related-card { min-height: 73px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 4px; }
.related-card span { color: var(--green); font-size: 8px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; }
.related-card b { max-width: 90%; font-size: 11px; line-height: 1.3; }
.last-checked { margin: 0 0 22px; color: #56645b; font-size: 9px; }
.closing-cta { margin-top: 24px; padding: 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #dce9de; border-radius: 9px; background: #f3f9f3; }
.closing-cta h2 { margin-bottom: 5px; font-size: 21px; }
.closing-cta p { margin: 0; color: var(--muted); font-size: 11px; }
.closing-cta .button { flex: 0 0 auto; }
.index-page { padding-bottom: 80px; }
.index-heading { max-width: 760px; padding: 22px 0 34px; }
.index-heading h1 { margin: 9px 0; font-size: clamp(36px,4vw,50px); line-height: 1.1; }
.index-heading > p { color: var(--muted); font-size: 13px; }
.index-heading label { display: block; margin: 21px 0 7px; color: #425349; font-size: 11px; font-weight: 750; }
.index-heading input { width: min(100%,540px); height: 46px; padding: 0 14px; color: var(--ink); border: 1px solid #ccd9cf; border-radius: 7px; background: #fff; font-size: 13px; }
.index-heading input:focus { border-color: var(--green); }
.index-heading input:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 5px #9b5b00; }
.search-status { min-height: 18px; margin: 7px 0 0; font-size: 10px !important; }
.directory-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
.index-group { padding: 17px; border: 1px solid var(--line); border-radius: 8px; }
.index-group h2 { margin: 0 0 8px; font-size: 16px; }
.index-group ul { margin: 0; padding: 0; list-style: none; }
.index-group li { padding: 8px 0; display: flex; flex-direction: column; gap: 2px; border-top: 1px solid #edf1ed; }
.index-group li a { font-size: 11px; font-weight: 700; text-decoration: none; }
.index-group li span { color: #56645b; font-size: 9px; }
.gold-placeholder { width: min(600px,calc(100% - 36px)); min-height: 75vh; margin: auto; padding-block: 12vh; }
.gold-placeholder h1 { margin: 18px 0 9px; font-size: clamp(32px,5vw,48px); line-height: 1.1; }
.gold-placeholder p { color: #5f6d63; font-size: 14px; }
.gold-placeholder code { color: var(--green-dark); }
@media (max-width: 1050px) {
  .header-inner { gap: 20px; }
  .main-nav { gap: 15px; }
  .header-actions { gap: 12px; }
  .help-link { display: none; }
  .article-layout { grid-template-columns: minmax(0,1fr); grid-template-areas:"side" "main"; gap: 15px; }
  .payment-hero { grid-template-columns:minmax(0,1fr); gap:20px; }
  .article-layout-side { grid-area:side; }
  .payment-article-body { grid-area:main; }
  .article-rail { position: static; grid-template-columns: minmax(175px,.45fr) minmax(0,1fr); align-self: stretch; align-items: start; }
  .article-rail > .page-promo--rail { grid-template-columns: 52px minmax(0,1fr); align-items: center; }
  .article-rail > .page-promo--rail .page-promo-cta { width: auto; }
  .guide-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .game-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .footer-main { grid-template-columns: 1.2fr .8fr 1fr; }
  .footer-note { grid-column: 1/-1; display: flex; align-items: center; gap: 14px; }
  .footer-note .age-mark { margin: 0; flex: 0 0 auto; }
}
@media (max-width: 760px) {
  .context-popup, .context-popup[open] { display: none !important; }
  .mobile-context-bar:not([hidden]) { position: fixed; inset: auto 0 env(safe-area-inset-bottom); z-index: 9; display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 9px; padding: 11px max(15px,env(safe-area-inset-right)) 11px max(15px,env(safe-area-inset-left)); border-top: 1px solid #dbe6dd; background: rgba(255,255,255,.98); box-shadow: 0 -9px 28px rgba(24,61,37,.12); }
  body:has(.main-nav.is-open) .mobile-context-bar { display: none !important; }
  html { scroll-padding-top: 74px; }
  .container { width: min(100% - 34px,600px); }
  .header-inner { width: calc(100% - 32px); min-height: 68px; gap: 12px; }
  .brand-mark { width: 36px; height: 36px; border-radius: 11px 11px 11px 4px; font-size: 23px; }
  .brand-name { font-size: 21px; }
  .brand-name > span { font-size: 7px; letter-spacing: 1.2px; }
  .menu-toggle { order: 3; display: block; flex: 0 0 auto; margin-left: 2px; }
  .main-nav { position: absolute; top: calc(100% + 1px); left: 0; right: 0; display: none; padding: 10px 17px 17px; flex-direction: column; align-items: stretch; gap: 0; border-bottom: 1px solid var(--line); background: white; box-shadow: 0 14px 22px rgba(20,48,30,.07); }
  .main-nav.is-open { display: flex; }
  .nav-link { padding: 12px 5px; border-bottom: 1px solid #eef2ee; font-size: 13px; }
  .nav-link.is-active::after { display: none; }
  .header-actions { margin-left: auto; }
  .header-actions .button-small { min-height: 38px; padding: 8px 11px; font-size: 10px; }
  .hero-inner { min-height: auto; grid-template-columns: 1fr; gap: 30px; padding-block: 49px 39px; }
  .home-copy h1 { margin: 20px 0 13px; font-size: clamp(42px,11vw,58px); }
  .hero-lede { font-size: 15px; }
  .hero-visual { min-height: 265px; padding: 20px; }
  .visual-wordmark { font-size: 61px; }
  .visual-pattern { height: 65px; font-size: 25px; }
  .quick-answer { grid-template-columns: 1fr; gap: 10px; padding-block: 24px; }
  .quick-answer h2 { max-width: 500px; }
  .quick-answer p { font-size: 12px; }
  .section { padding-block: 51px; }
  .section-heading { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 19px; }
  .section-heading h2 { font-size: 29px; }
  .feature-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
  .feature-grid .guide-card { min-height: 166px; padding: 14px; }
  .feature-grid .guide-card b { font-size: 14px; }
  .game-section { padding-block: 49px; }
  .game-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .game-tile { min-height: 126px; }
  .offer-inner { grid-template-columns: 1fr; gap: 20px; }
  .offer-inner h2 { font-size: 29px; }
  .safer-card { grid-template-columns: 43px 1fr; gap: 14px; padding: 18px; }
  .safer-mark { width: 40px; height: 40px; font-size: 12px; }
  .safer-card h2 { font-size: 19px; }
  .safer-card p { font-size: 11px; }
  .support-link { grid-column: 2; justify-self: start; }
  .faq-grid { grid-template-columns: 1fr; gap: 0; }
  .guide-directory { padding-top: 31px; }
  .topic-section { padding-block: 23px; }
  .topic-heading h3 { font-size: 21px; }
  .guide-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .guide-grid .guide-card { min-height: 151px; padding: 12px; }
  .guide-grid .guide-card b { font-size: 12px; }
  .guide-grid .guide-desc { font-size: 9px; }
  .footer-main { padding-block: 34px 27px; grid-template-columns: 1fr 1fr; gap: 25px 17px; }
  .footer-brand { grid-column: 1/-1; }
  .footer-note { align-items: flex-start; flex-wrap: wrap; }
  .footer-note p { flex: 1 1 calc(100% - 55px); }
  .footer-note .age-mark { margin-top: 1px; }
  .footer-cta { margin-left: 51px; }
  .footer-bottom { flex-direction: column; gap: 5px; font-size: 8px; }
  .article-hero { grid-template-columns: 1fr; gap: 21px; padding-block: 15px 31px; }
  .article-copy h1 { margin-top: 12px; font-size: 37px; }
  .article-intro { font-size: 13px; }
  .answer-card { padding: 17px 19px; }
  .answer-card p { font-size: 12px; }
  .article-layout { display: block; padding-bottom: 58px; }
  .payment-hero { gap:17px; padding-block:13px 22px; }
  .payment-hero-copy h1 { font-size:clamp(2rem,10vw,3rem); }
  .payment-featured-card { padding:14px; }
  .payment-answer { padding:12px 13px; }
  .payment-facts,.payment-alternatives,.payment-method-matrix,.payment-troubleshooting,.payment-documents,.payment-faq,.payment-final,.payment-official { padding:16px 0; }
  .payment-related { padding-block:16px; }
  .payment-final { align-items:flex-start; flex-direction:column; gap:13px; }
  .payment-final > .button { width:100%; }
  .payment-facts-table,.payment-alternative-table { display:block; width:100%; }
  .payment-facts-table thead,.payment-alternative-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .payment-facts-table tbody,.payment-alternative-table tbody { display:grid; gap:8px; }
  .payment-facts-table tr,.payment-alternative-table tr { display:grid; grid-template-columns:minmax(0,1fr); border:1px solid #e4e9de; background:#fff; }
  .payment-facts-table th,.payment-facts-table td,.payment-alternative-table th,.payment-alternative-table td { display:block; width:auto; padding:9px 11px; border:0; font-size:.82rem; line-height:1.45; text-align:left; }
  .payment-facts-table th,.payment-alternative-table th { padding-bottom:3px; color:#253025; }
  .payment-alternative-table td::before { display:block; margin-bottom:3px; color:#6a7566; font-size:.68rem; font-weight:750; content:attr(data-label); }
  .payment-table-wrap { overflow:visible; }
  .article-rail { position: static; margin-bottom: 19px; grid-template-columns: 1fr; gap: 8px; }
  .page-promo { margin: 14px 0 20px; padding: 14px; grid-template-columns: 42px minmax(0,1fr); gap: 10px; }
  .page-promo-visual { width: 40px; height: 40px; border-radius: 11px; }
  .page-promo-visual span { width: 23px; height: 23px; font-size: 11px; }
  .page-promo h2 { font-size: 14px; }
  .page-promo p { font-size: 10px; }
  .page-promo-cta { width: 100%; justify-content: center; }
  .article-rail > .page-promo--rail { grid-template-columns: 42px minmax(0,1fr); }
  .rail-card { padding: 12px; gap: 7px; }
  .rail-card > a, .rail-disclosure p { font-size: 9px; }
  .rail-disclosure > a { font-size: 9px; }
  .content-section { padding-block: 21px; }
  .content-section h2 { font-size: 23px; }
  .category-grid { grid-template-columns: 1fr 1fr; }
  .game-fact-grid, .review-grid { grid-template-columns: 1fr 1fr; }
  .related-grid { grid-template-columns: 1fr; }
  .closing-cta { align-items: flex-start; flex-direction: column; padding: 18px; }
  .directory-grid { grid-template-columns: 1fr; gap: 10px; }
  .index-heading { padding-top: 10px; }
}
@media (max-width: 390px) {
  .mobile-context-bar:not([hidden]) { grid-template-columns: minmax(0,1fr) auto auto; gap: 8px; padding: 10px 12px; }
  .mobile-context-bar .button { min-height: 35px; }
  .container { width: calc(100% - 28px); }
  .header-inner { width: calc(100% - 24px); gap: 8px; }
  .header-actions .button-small { padding-inline: 8px; gap: 6px; }
  .brand { gap: 7px; }
  .brand-name { font-size: 19px; }
  .feature-grid, .guide-grid { grid-template-columns: 1fr; }
  .feature-grid .guide-card, .guide-grid .guide-card { min-height: 136px; }
  .game-grid { grid-template-columns: 1fr 1fr; }
  .article-rail { grid-template-columns: 1fr; }
  .category-grid { grid-template-columns: 1fr; }
  .topic-heading { align-items: flex-start; }
  .topic-heading h3 { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
.service-page { padding-top: 20px; padding-bottom: 88px; }
.service-heading { max-width: 820px; margin: 0 auto; padding: clamp(34px, 7vw, 76px) 0 28px; }
.service-heading h1 { margin: 14px 0 12px; font-size: clamp(34px, 5vw, 54px); line-height: 1.06; letter-spacing: -.045em; }
.service-heading p { max-width: 650px; color: var(--muted); font-size: 18px; line-height: 1.65; }
.service-content { max-width: 820px; margin: 0 auto; }
.service-content .content-section { padding: 24px 28px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
@media (max-width: 760px) {
  .service-page { padding-bottom: 56px; }
  .service-content .content-section { padding: 20px; }
  .service-heading p { font-size: 16px; }
}

/* Homepage routes: a white canvas with distinct offer, game and quick-start paths. */
.home-page { overflow: clip; }
.home-page .home-hero { background: #fff; }
.home-page .hero-inner { min-height: 495px; padding-block: 64px; }
.home-page .home-copy h1 { max-width: 650px; margin-top: 19px; font-size: clamp(44px,5.2vw,66px); }
.home-page .home-copy h1 span { color: var(--green); }
.home-page .hero-lede { max-width: 570px; font-size: 16px; }
.home-page .hero-small-print { max-width: 510px; margin: 14px 0 0; color: #5e6a62; font-size: 10px; line-height: 1.55; }
.home-page .home-hero-visual { min-height: 335px; border-radius: 20px; background: #fff; box-shadow: 0 18px 45px rgba(29,70,43,.09); color: var(--ink); }
.home-page .home-hero-visual::before, .home-page .home-hero-visual::after { border-color: rgba(22,118,75,.13); }
.home-page .home-hero-visual .visual-top, .home-page .home-hero-visual .visual-bottom { color: #506257; }
.hero-visual-content { position: relative; z-index: 1; display: grid; grid-template-columns: 118px 1fr; align-items: center; gap: 20px; }
.hero-visual-content strong { color: #1b3c2a; font-size: clamp(28px,3.4vw,42px); line-height: 1.05; letter-spacing: -.06em; }
.hero-visual-content > span:last-child { grid-column: 1/-1; color: #4f6255; font-size: 11px; }
.hero-orbit { width: 108px; height: 108px; display: grid; place-items: center; color: #f9fff9; border: 1px solid #85ad91; border-radius: 34px; background: #fff; box-shadow: 10px 10px 0 #d9e9dc; font-size: 64px; font-weight: 800; letter-spacing: -.1em; }
.home-facts { margin-block: 22px 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: 0 10px 30px rgba(30,60,38,.04); }
.home-fact { min-height: 82px; padding: 15px 19px; display: flex; align-items: center; gap: 12px; border-right: 1px solid var(--line); }
.home-fact:last-child { border-right: 0; }
.home-fact > span { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; color: var(--green-dark); border-radius: 10px; background: #edf6ef; font-size: 17px; font-weight: 800; }
.home-fact b, .home-fact small { display: block; }
.home-fact b { color: #28392e; font-size: 12px; }
.home-fact small { margin-top: 3px; color: #647168; font-size: 9px; }
.home-intro-section { display: grid; grid-template-columns: .72fr 1.28fr; gap: 55px; padding-block: 64px; }
.home-intro-copy h2, .home-section-heading h2, .quick-start-heading h2, .home-final-cta h2 { margin: 8px 0 0; font-size: clamp(28px,3.2vw,39px); line-height: 1.13; }
.home-intro-body { columns: 2; column-gap: 28px; }
.home-intro-body p { break-inside: avoid; color: #536159; font-size: 12px; line-height: 1.8; }
.home-intro-body .text-link { break-inside: avoid; }
.home-bonus { padding-block: 60px; background: #f7f8f0; border-color: #e6e9d8; }
.home-section-heading { max-width: 830px; margin-bottom: 21px; }
.home-section-heading h2 { margin: 8px 0 10px; }
.home-section-heading p { max-width: 790px; margin: 0; color: #566258; font-size: 13px; line-height: 1.75; }
.bonus-path { margin: 24px 0; padding: 12px 15px; display: flex; justify-content: center; align-items: center; gap: 17px; color: #41513f; border: 1px solid #e3e6d6; border-radius: 9px; background: rgba(255,255,255,.68); font-size: 10px; font-weight: 750; }
.bonus-path i { color: #799261; font-style: normal; }
.home-offer-inner { grid-template-columns: 1fr 1fr; align-items: stretch; gap: 22px; }
.bonus-checklist { padding: 24px; border: 1px solid #e4e7da; border-radius: 12px; background: #fff; }
.home-bonus-entry { margin-top: 16px; }
.home-offer-final { margin-top: 20px; padding: 19px 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #e4e7da; border-radius: 11px; background: rgba(255,255,255,.84); }
.home-offer-final h3 { margin: 5px 0 4px; font-size: 17px; }
.home-offer-final p { margin: 0; color: #59665d; font-size: 11px; line-height: 1.6; }
.home-offer-final .button { flex: 0 0 auto; }
.bonus-checklist h3, .bonus-calculator h3 { margin: 0; font-size: 20px; line-height: 1.25; }
.offer-term-list { margin: 16px 0; padding: 0; list-style: none; }
.offer-term-list li { padding: 11px 0; display: grid; grid-template-columns: 125px 1fr; gap: 14px; border-bottom: 1px solid #eef0e8; }
.offer-term-list b { color: #314439; font-size: 11px; }
.offer-term-list span, .bonus-checklist > p { color: #59665d; font-size: 11px; line-height: 1.6; }
.bonus-calculator { padding: 23px; border: 1px solid #dce7dc; border-radius: 12px; background: #fff; box-shadow: 0 12px 35px rgba(41,66,40,.07); }
.calculator-heading { margin-bottom: 11px; display: flex; align-items: center; gap: 12px; }
.calculator-heading .section-kicker { display: block; margin-bottom: 4px; font-size: 8px; }
.calculator-icon { width: 43px; height: 43px; display: grid; place-items: center; flex: 0 0 auto; color: #24633d; border-radius: 13px; background: #edf6ef; font-size: 22px; font-weight: 800; }
.bonus-calculator > p { color: #5b685e; font-size: 10px; line-height: 1.6; }
.bonus-calculator label { margin: 12px 0 5px; display: block; color: #394b3e; font-size: 10px; font-weight: 750; }
.bonus-calculator input, .bonus-calculator select, .game-finder input { width: 100%; min-height: 41px; padding: 9px 11px; color: #24352a; border: 1px solid #cbd8cc; border-radius: 6px; background: #fff; font: inherit; font-size: 12px; }
.bonus-calculator input:focus-visible, .bonus-calculator select:focus-visible, .game-finder input:focus-visible { outline: 3px solid #a9cbb2; outline-offset: 2px; }
.calculator-submit { margin-top: 17px; cursor: pointer; font: inherit; }
.calculator-result { min-height: 44px; margin: 12px 0 0; padding: 11px 12px; display: block; color: #24442e; border-radius: 7px; background: #eff7ef; font-size: 12px; font-weight: 750; line-height: 1.5; }
.calculator-note { margin: 9px 0 13px !important; color: #5d695f !important; font-size: 9px !important; }
.bonus-final-cta { min-height: 42px; }
.home-games { padding-block: 65px; background: #fbfdfb; }
.home-games .section-heading { align-items: center; }
.home-game-grid { grid-template-columns: repeat(5,minmax(0,1fr)); align-items: stretch; }
.home-game-tile { min-width: 0; min-height: 254px; padding: 14px; display: flex; flex-direction: column; justify-content: flex-start; gap: 9px; }
.game-card-top { display: flex; align-items: center; justify-content: space-between; gap: 7px; }
.game-type { color: #52645a; font-size: 9px; font-weight: 700; }
.home-game-tile h3 { margin: 4px 0 0; font-size: 14px; line-height: 1.25; }
.home-game-tile > p { margin: 0; color: #5c6961; font-size: 10px; line-height: 1.55; }
.game-card-facts { display: flex; flex-wrap: wrap; gap: 5px; }
.game-fact-chip { max-width: 100%; padding: 4px 6px; color: #4b5d51; border: 1px solid #e3ebe4; border-radius: 5px; background: #f8fbf8; font-size: 8px; line-height: 1.35; }
.game-card-actions { margin-top: auto; padding-top: 8px; display: grid; gap: 7px; }
.game-guide-link { color: var(--green-dark); font-size: 10px; font-weight: 750; text-decoration: none; }
.game-operator-link { min-height: 35px; padding: 8px 9px; display: flex; align-items: center; justify-content: center; gap: 6px; color: #22422d; border: 1px solid #c9dacd; border-radius: 6px; background: #f5faf5; font-size: 9px; font-weight: 750; text-decoration: none; }
.game-operator-link:hover { border-color: #82ac8d; background: #ebf6ed; }
.game-finder-tool { margin: 22px 0 14px; padding: 16px; border: 1px solid #e1e9e2; border-radius: 12px; background: #fff; }
.game-finder { margin: 0; }
.game-finder-controls { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); align-items: end; gap: 10px; }
.game-finder-field { min-width: 0; display: grid; gap: 6px; color: #3e5045; font-size: 10px; font-weight: 750; }
.game-finder-search-field { grid-column: span 2; }
.game-finder input, .game-finder select { width: 100%; min-width: 0; min-height: 40px; padding: 8px 9px; color: #24352a; border: 1px solid #cbd8cc; border-radius: 6px; background: #fff; font: inherit; font-size: 11px; }
.game-finder input:focus-visible, .game-finder select:focus-visible, .game-filter-reset:focus-visible { outline: 3px solid #a9cbb2; outline-offset: 2px; }
.game-finder-footer { margin-top: 11px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.game-search-status { color: #5f6c63; font-size: 10px; }
.game-filter-reset { padding: 6px 9px; color: #375342; border: 1px solid #d6e2d8; border-radius: 6px; background: #f8fbf8; font: inherit; font-size: 10px; cursor: pointer; }
.home-game-context { margin: 14px 0 0; }
.game-finder-note { margin: 16px 0; color: #59665d; font-size: 10px; line-height: 1.6; }
.rtp-volatility-tool { margin: 25px 0 28px; padding: 23px; display: grid; gap: 16px; border: 1px solid #dce7dd; border-radius: 13px; background: #fff; }
.rtp-tool-heading h2 { margin: 5px 0 7px; font-size: clamp(19px,2.5vw,25px); }
.rtp-tool-heading p,.rtp-tool-note { margin: 0; color: #59665d; font-size: 11px; line-height: 1.6; }
.rtp-tool-selectors { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.rtp-tool-selectors label { display: grid; gap: 6px; color: #3e5045; font-size: 10px; font-weight: 750; }
.rtp-tool-selectors select { width: 100%; min-height: 42px; padding: 8px 10px; color: #24352a; border: 1px solid #cbd8cc; border-radius: 7px; background: #fff; font: inherit; font-size: 12px; }
.rtp-tool-selectors select:focus-visible { outline: 3px solid #a9cbb2; outline-offset: 2px; }
.rtp-result-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
.rtp-result-card { min-width: 0; padding: 15px; border: 1px solid #e0e9e2; border-radius: 9px; background: #fff; }
.rtp-result-kicker { color: #64746a; font-size: 8px; font-weight: 800; letter-spacing: .09em; }
.rtp-result-card h3 { margin: 5px 0 11px; font-size: 15px; }
.rtp-result-card dl { margin: 0 0 11px; display: grid; gap: 8px; }
.rtp-result-card dl div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 10px; }
.rtp-result-card dt { color: #66746a; font-size: 10px; }
.rtp-result-card dd { margin: 0; color: #24442e; font-size: 10px; font-weight: 750; text-align: right; }
.rtp-result-card .text-link { font-size: 10px; }
.rtp-comparison-summary { margin: 0; padding: 11px 12px; color: #2e4936; border-radius: 7px; background: #eaf4eb; font-size: 11px; font-weight: 700; line-height: 1.55; }
.rtp-volatility-tool > .button { justify-self: start; }
.game-path-card { margin-top: 27px; padding: 20px 23px; display: flex; align-items: center; justify-content: space-between; gap: 22px; border: 1px solid #dce7dd; border-radius: 11px; background: #f1f7f2; }
.game-path-card h3 { margin: 5px 0; font-size: 19px; }
.game-path-card p { max-width: 650px; margin: 0; color: #5d695f; font-size: 11px; line-height: 1.6; }
.game-path-card .button { flex: 0 0 auto; }
.home-quick-start { padding-block: 68px; }
.quick-start-heading { margin-bottom: 27px; display: flex; justify-content: space-between; align-items: center; gap: 25px; }
.quick-start-heading > div:first-child { max-width: 770px; }
.quick-start-heading p { margin: 10px 0 0; color: #58665d; font-size: 12px; line-height: 1.65; }
.quick-start-stamp { width: 76px; height: 76px; display: grid; place-content: center; color: #d8f074; border: 1px solid #315b40; border-radius: 20px; background: #153a26; text-align: center; font-size: 15px; font-weight: 800; line-height: 1.25; transform: rotate(4deg); }
.quick-start-list { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; list-style: none; }
.quick-start-list li { min-height: 215px; padding: 17px; display: flex; flex-direction: column; align-items: flex-start; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.quick-step-number { width: 32px; height: 32px; display: grid; place-items: center; color: #244b31; border-radius: 10px; background: #eaf4ec; font-size: 10px; font-weight: 800; }
.quick-start-list h3 { margin: 15px 0 7px; font-size: 15px; }
.quick-start-list p { margin: 0; color: #5c6961; font-size: 10px; line-height: 1.55; }
.quick-step-link { margin-top: auto; padding-top: 14px; color: var(--green-dark); font-size: 9px; font-weight: 750; text-decoration: none; }
.quick-start-bottom { margin-top: 17px; padding: 17px 19px; display: flex; justify-content: space-between; align-items: center; gap: 20px; border-radius: 9px; background: #153a26; }
.quick-start-bottom p { max-width: 760px; margin: 0; color: #e2eee4; font-size: 10px; line-height: 1.6; }
.quick-start-bottom .button { flex: 0 0 auto; color: #173a25; border-color: #d8f074; background: #d8f074; }
.home-comparison-section { padding-block: 58px; background: #f7faf7; border-block: 1px solid var(--line); }
.home-comparison-section .section-heading { margin-bottom: 17px; }
.home-comparison-table td, .home-comparison-table th { font-size: 11px; }
.home-comparison-table tbody th { width: 20%; }
.table-link { color: var(--green-dark); font-weight: 750; text-decoration: none; }
.home-payments { padding-block: 66px; }
.home-payments .section-heading { margin-bottom: 18px; }
.home-payments .source-inline { line-height: 1.6; }
.payment-actions { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 9px; }
.home-mobile-section { padding-block: 55px; background: #f7faf7; border-block: 1px solid var(--line); }
.mobile-route-card { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 55px; }
.mobile-route-art { min-height: 275px; position: relative; display: grid; place-items: center; overflow: hidden; border-radius: 18px; background: #fff; }
.device-frame { width: 126px; height: 218px; position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 19px; color: #f7fff8; border: 5px solid #274934; border-radius: 25px; background: #fff; box-shadow: 15px 17px 0 rgba(35,75,48,.13); }
.device-frame i { width: 37px; height: 4px; position: absolute; top: 9px; border-radius: 6px; background: #b5cfb9; }
.device-frame b { font-size: 60px; letter-spacing: -.1em; }
.device-frame small { color: #d7e7da; font-size: 8px; letter-spacing: 1px; }
.device-orbit { position: absolute; right: 12%; bottom: 19%; color: #45664c; font-size: 10px; font-weight: 800; letter-spacing: 2px; transform: rotate(-90deg); }
.mobile-route-copy h2 { margin: 7px 0 10px; font-size: clamp(27px,3vw,36px); line-height: 1.15; }
.mobile-route-copy p { color: #56645b; font-size: 12px; line-height: 1.75; }
.mobile-route-copy .hero-actions { margin-top: 17px; }
.home-vip-section { padding-block: 59px; }
.vip-card { padding: 26px; display: grid; grid-template-columns: 58px 1fr 145px; align-items: center; gap: 23px; border: 1px solid #e1e8e2; border-radius: 13px; background: #fff; box-shadow: 0 12px 30px rgba(31,63,39,.045); }
.vip-emblem { width: 58px; height: 58px; display: grid; place-items: center; color: #d7ed7a; border: 1px solid #315b40; border-radius: 18px; background: #173d29; font-size: 31px; font-weight: 800; }
.vip-card h2 { margin: 7px 0; font-size: clamp(22px,2.6vw,29px); }
.vip-card p { max-width: 690px; margin-bottom: 11px; color: #58665e; font-size: 11px; line-height: 1.65; }
.vip-side-note { padding: 13px 15px; display: grid; gap: 7px; border-left: 1px solid #e1e9e2; }
.vip-side-note b { color: #374a3c; font-size: 10px; }
.vip-side-note span { color: #5f6d63; font-size: 9px; line-height: 1.7; }
.home-hubs-section { padding-block: 57px 67px; background: #f9fbf9; border-block: 1px solid var(--line); }
.home-hubs-section .section-heading { margin-bottom: 17px; }
.home-topic-chips { margin-bottom: 21px; }
.home-hubs-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.home-hub-card { min-width: 0; padding: 15px; border: 1px solid #e1e8e2; border-radius: 9px; background: #fff; scroll-margin-top: 90px; }
.hub-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 7px; }
.hub-count { color: #617066; font-size: 8px; font-weight: 750; letter-spacing: .5px; text-transform: uppercase; }
.hub-open-link { color: var(--green-dark); font-size: 9px; font-weight: 750; text-decoration: none; white-space: nowrap; }
.home-hub-card h3 { margin: 13px 0 9px; font-size: 15px; }
.hub-example-links { display: grid; gap: 7px; }
.hub-example-link { display: block; color: #526158; font-size: 9px; line-height: 1.45; text-decoration: none; }
.hub-example-link:hover, .hub-open-link:hover { color: var(--green-dark); text-decoration: underline; }
.home-page .faq-home { padding-block: 59px; }
.home-page .faq-grid { gap: 0 25px; }
.home-final-cta { padding-block: 46px; background: #f2f7f2; border-top: 1px solid #dfe9e0; }
.final-cta-inner { display: flex; justify-content: space-between; align-items: center; gap: 25px; }
.home-final-cta h2 { margin: 7px 0; font-size: clamp(25px,3vw,34px); }
.home-final-cta p { margin: 0; color: #56645b; font-size: 12px; }
.button-large { min-height: 47px; padding: 13px 20px; font-size: 12px; }

@media (max-width: 1050px) {
  .home-page .hero-inner { gap: 4%; }
  .home-game-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .game-finder-controls { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .game-finder-search-field { grid-column: span 2; }
  .home-hubs-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .home-page .hero-inner { padding-block: 43px 35px; }
  .home-page .home-copy h1 { font-size: clamp(40px,10vw,56px); }
  .home-page .hero-lede { font-size: 14px; }
  .home-page .home-hero-visual { min-height: 265px; padding: 20px; }
  .hero-visual-content { grid-template-columns: 91px 1fr; gap: 15px; }
  .hero-orbit { width: 82px; height: 82px; border-radius: 25px; font-size: 50px; }
  .hero-visual-content strong { font-size: 31px; }
  .home-facts { grid-template-columns: 1fr 1fr; }
  .home-fact { min-height: 70px; padding: 11px; border-bottom: 1px solid var(--line); }
  .home-fact:nth-child(2) { border-right: 0; }
  .home-fact:nth-child(3), .home-fact:nth-child(4) { border-bottom: 0; }
  .home-intro-section { grid-template-columns: 1fr; gap: 18px; padding-block: 43px; }
  .home-intro-body { columns: 1; }
  .home-offer-inner { grid-template-columns: 1fr; }
  .bonus-path { justify-content: flex-start; flex-wrap: wrap; gap: 9px; }
  .offer-term-list li { grid-template-columns: 105px 1fr; }
  .home-game-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .home-game-tile { min-height: 265px; }
  .game-finder-controls { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .game-finder-search-field { grid-column: span 2; }
  .game-finder-footer { align-items: flex-start; flex-direction: column; }
  .game-filter-reset { min-height: 38px; }
  .rtp-volatility-tool { padding: 17px; }
  .rtp-tool-selectors, .rtp-result-grid { grid-template-columns: minmax(0,1fr); }
  .game-path-card, .quick-start-bottom, .final-cta-inner, .home-offer-final { align-items: flex-start; flex-direction: column; }
  .quick-start-list { grid-template-columns: 1fr 1fr; }
  .quick-start-list li { min-height: 200px; }
  .mobile-route-card { grid-template-columns: 1fr; gap: 25px; }
  .mobile-route-art { min-height: 230px; }
  .vip-card { grid-template-columns: 45px 1fr; gap: 14px; padding: 19px; }
  .vip-emblem { width: 44px; height: 44px; border-radius: 13px; font-size: 24px; }
  .vip-side-note { grid-column: 2; padding: 10px 0 0; border-left: 0; border-top: 1px solid #e1e9e2; }
  .home-hubs-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 390px) {
  .home-page .hero-actions .button { width: 100%; justify-content: center; }
  .home-fact { padding: 9px 7px; gap: 8px; }
  .home-fact > span { width: 29px; height: 29px; }
  .home-fact b { font-size: 10px; }
  .bonus-checklist, .bonus-calculator { padding: 17px; }
  .offer-term-list li { grid-template-columns: 1fr; gap: 3px; }
  .home-game-grid { grid-template-columns: 1fr; }
  .home-game-tile { min-height: 0; }
  .game-finder-controls { grid-template-columns: minmax(0,1fr); }
  .game-finder-search-field { grid-column: auto; }
  .quick-start-list { grid-template-columns: 1fr; }
  .quick-start-list li { min-height: 165px; }
  .home-comparison-table { min-width: 570px; }
  .vip-card { grid-template-columns: 1fr; }
  .vip-side-note { grid-column: 1; }
  .home-hubs-grid { grid-template-columns: 1fr; }
  .bonus-calculator .button, .game-path-card .button, .quick-start-bottom .button, .final-cta-inner .button, .home-offer-final .button { width: 100%; justify-content: center; }
}

/* Title-specific game pages: white editorial canvas and original CSS artwork. */
.game-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr); gap:clamp(24px,5vw,64px); align-items:center; padding-top:28px; padding-bottom:46px; }
.game-hero-copy { min-width:0; }
.game-hero h1 { max-width:760px; margin:12px 0 14px; font-size:clamp(2.35rem,5vw,4.55rem); line-height:.99; letter-spacing:-.055em; }
.game-answer { max-width:680px; margin:20px 0 0; padding:16px 18px; border-left:3px solid #58c89b; border-radius:0 14px 14px 0; background:#f3faf7; color:#263c34; font-size:1.04rem; line-height:1.7; }
.game-availability-chip { display:inline-flex; margin-top:15px; padding:7px 11px; border:1px solid #dce9e2; border-radius:999px; color:#557065; background:#fff; font-size:.82rem; }
.game-art { --game-a:#174d45; --game-b:#76cdb4; --game-c:#e8ce90; min-height:345px; position:relative; overflow:hidden; display:grid; place-items:center; isolation:isolate; border:1px solid rgba(23,77,69,.12); border-radius:30px; background:#fff; box-shadow:0 24px 60px rgba(36,74,60,.08); }
.game-art::before,.game-art::after { content:""; position:absolute; z-index:-1; border-radius:50%; }
.game-art::before { width:72%; aspect-ratio:1; border:1px solid color-mix(in srgb,var(--game-a) 26%,transparent); transform:rotate(-17deg) scaleY(.54); }
.game-art::after { width:58%; aspect-ratio:1; border:1px dashed color-mix(in srgb,var(--game-a) 20%,transparent); transform:rotate(28deg) scaleY(.68); }
.game-art-orbit { position:absolute; width:42%; aspect-ratio:1; border-radius:50%; background:#fff; filter:drop-shadow(0 22px 28px color-mix(in srgb,var(--game-a) 18%,transparent)); }
.game-art-core { position:relative; display:grid; place-items:center; width:40%; aspect-ratio:1; padding:20px; border:1px solid color-mix(in srgb,var(--game-a) 21%,white); border-radius:28% 50% 34% 50%; color:var(--game-a); background:#fff; box-shadow:0 16px 32px rgba(34,66,53,.12); font-size:clamp(1.3rem,3.2vw,2.5rem); font-weight:850; letter-spacing:-.06em; text-align:center; transform:rotate(-8deg); }
.game-art-caption { position:absolute; left:22px; right:22px; bottom:20px; color:color-mix(in srgb,var(--game-a) 76%,#25352f); font-size:.76rem; font-weight:750; letter-spacing:.13em; text-align:center; text-transform:uppercase; }
.game-art-book-of-dead { --game-a:#66502a; --game-b:#d9b75f; --game-c:#f6e6ad; }
.game-art-big-bass-bonanza { --game-a:#135e77; --game-b:#67bfd0; --game-c:#f5c861; }
.game-art-sugar-rush { --game-a:#a63f82; --game-b:#f08ec3; --game-c:#f7d47f; }
.game-art-gates-of-olympus { --game-a:#5b4b86; --game-b:#9e8de1; --game-c:#edd194; }
.game-art-starburst { --game-a:#285592; --game-b:#69a9e7; --game-c:#f8d974; }
.game-art-sweet-bonanza { --game-a:#db6394; --game-b:#f1a2bc; --game-c:#f8d673; }
.game-art-immortal-romance { --game-a:#54384f; --game-b:#ab7292; --game-c:#e8c5af; }
.game-art-legacy-of-dead { --game-a:#5e4a28; --game-b:#c2a45d; --game-c:#eee0ae; }
.game-art-gold-blitz { --game-a:#725019; --game-b:#d6ab49; --game-c:#f7e3a0; }
.game-art-gold-cash-free-spins { --game-a:#615322; --game-b:#c8b853; --game-c:#f1e8bd; }
.game-art-fishin-frenzy { --game-a:#246879; --game-b:#76bec3; --game-c:#ebcb87; }
.game-art-fishin-pots-o-gold { --game-a:#23745e; --game-b:#75c6a1; --game-c:#eac95f; }
.game-art-gold-blitz-ultimate { --game-a:#623f13; --game-b:#e0a62e; --game-c:#f6e08b; }
.game-art-blazing-bison-gold-blitz { --game-a:#743d2a; --game-b:#dc7650; --game-c:#f2c16d; }
.game-art-fishin-pots-gold-blitz { --game-a:#257c70; --game-b:#8bd0b8; --game-c:#edcd58; }
.game-art-ufc-gold-blitz-ultimate { --game-a:#4c3c3a; --game-b:#9f8176; --game-c:#e7b966; }
.game-art-gold-cash-big-spins { --game-a:#6a561d; --game-b:#d9be55; --game-c:#f5e3a1; }
.game-art-gold-cash-free-spins-megaways { --game-a:#5e4e25; --game-b:#b9a558; --game-c:#e8d897; }
.game-art-gold-cash-free-spins-rising-wins { --game-a:#71601d; --game-b:#c9d26d; --game-c:#f3d07a; }
.game-art-immortal-romance-ii { --game-a:#533953; --game-b:#a26b9b; --game-c:#ead0e3; }
.game-art-immortal-romance-vein-of-gold { --game-a:#704d29; --game-b:#b98b4e; --game-c:#eed492; }
.game-article-layout { max-width:1030px; }
.game-facts-wrap { max-width:780px; margin-top:20px; border:1px solid #e7ece8; border-radius:18px; background:#fff; }
.game-facts { width:100%; border-collapse:collapse; }
.game-facts caption { padding:15px 18px; color:#66776e; text-align:left; font-size:.84rem; }
.game-facts th,.game-facts td { padding:13px 18px; border-top:1px solid #edf0ee; text-align:left; vertical-align:top; }
.game-facts th { width:33%; color:#45594f; font-weight:700; }
.game-facts td { color:#24332b; }
.game-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin:28px 0; }
.game-detail-grid>section,.game-example { padding:24px; border:1px solid #e8eee9; border-radius:20px; background:#fbfdfb; }
.game-detail-grid h2,.game-example h2,.game-launch h2,.similar-games h2 { margin:4px 0 14px; font-size:clamp(1.35rem,2.5vw,1.9rem); letter-spacing:-.035em; }
.game-bullet-list { margin:0; padding-left:20px; color:#394a41; line-height:1.75; }
.game-bullet-list li+li { margin-top:8px; }
.game-symbol-list { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 18px; }
.game-symbol-chip { display:inline-flex; padding:7px 10px; border:1px solid #e3ece5; border-radius:999px; color:#43594d; background:#fff; font-size:.84rem; }
.game-detail-grid p,.game-example p,.game-launch p { color:#47594f; line-height:1.75; }
.game-example { margin:28px 0; border-color:#dfece5; background:#fff; }
.game-launch { display:flex; justify-content:space-between; align-items:center; gap:24px; margin:28px 0; padding:26px; border-radius:22px; background:#f4f7f4; }
.game-launch>div:first-child { max-width:690px; }
.game-launch .steps-list { margin-bottom:0; }
.game-launch-cta { flex:0 0 auto; }
.similar-games { margin:34px 0; }
.game-context-links { display:flex; flex-wrap:wrap; gap:10px 18px; margin:30px 0; padding:16px 0; border-top:1px solid #e8ede9; border-bottom:1px solid #e8ede9; }
.game-context-links a { color:#176c50; font-weight:700; text-underline-offset:3px; }
.game-availability-note { margin:22px 0 0; color:#68776f; font-size:.86rem; line-height:1.6; }
.game-closing-cta { margin:30px 0 15px; }

/* Bonus pages use terms-first layouts and separate calculators for each offer mechanic. */
.bonus-detail { display:grid; gap:34px; }
.bonus-fit-card { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr); gap:22px; padding:26px; border:1px solid #e3ebe5; border-radius:22px; background:#fff; }
.bonus-fit-card h2,.bonus-terms-section h2,.bonus-examples h2,.bonus-calculator-wrap h2,.bonus-start h2,.bonus-linked-topics h2,.bonus-operator-source h2 { margin:5px 0 13px; font-size:clamp(1.35rem,2.5vw,1.9rem); letter-spacing:-.035em; }
.bonus-fit-card p,.bonus-terms-section>p,.bonus-examples>p,.bonus-calculator-wrap>p,.bonus-operator-source>p { color:#4c5d54; line-height:1.7; }
.bonus-status { align-self:stretch; padding:18px; border-left:2px solid #60a987; border-radius:0 14px 14px 0; background:#fff; }
.bonus-status>span { color:#577064; font-size:.8rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.bonus-status p { margin:8px 0 0; font-size:.94rem; }
.bonus-fit-cashback { background:#fff; }
.bonus-fit-spins { background:#fff; }
.bonus-fit-code { background:#fff; }
.bonus-fit-reload { background:#fff; }
.bonus-fit-wagering { background:#fff; }
.bonus-terms-section,.bonus-examples,.bonus-calculator-wrap,.bonus-start,.bonus-linked-topics,.bonus-operator-source { padding:24px; border:1px solid #e6ece7; border-radius:21px; background:#fff; }
.bonus-table-wrap { margin-top:17px; border:1px solid #e6ece7; border-radius:16px; background:#fff; }
.bonus-terms-table { width:100%; border-collapse:collapse; }
.bonus-terms-table caption { padding:15px 18px; color:#65756c; text-align:left; font-size:.84rem; }
.bonus-terms-table th,.bonus-terms-table td { padding:13px 18px; border-top:1px solid #edf0ee; text-align:left; vertical-align:top; line-height:1.6; }
.bonus-terms-table th { width:24%; color:#34483d; font-weight:750; }
.bonus-terms-table td { color:#526158; }
.bonus-source-note { margin:13px 0 0; color:#66766d; font-size:.84rem; }
.bonus-examples .data-table th,.bonus-examples .data-table td { padding:14px 16px; vertical-align:top; }
.bonus-examples .data-table td span { color:#66766d; font-size:.85rem; }
.bonus-calculator-wrap { background:#f6faf7; border-color:#dce9e0; }
.bonus-page-calculator { display:grid; gap:18px; margin-top:18px; }
.bonus-calculator-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.bonus-page-calculator .bonus-input { display:grid; gap:7px; color:#34483d; font-size:.88rem; font-weight:700; }
.bonus-page-calculator .bonus-input input,.bonus-page-calculator .bonus-input select { min-width:0; width:100%; min-height:46px; padding:10px 12px; border:1px solid #cddbd1; border-radius:10px; background:#fff; color:#23352b; font:inherit; }
.bonus-page-calculator .bonus-input small { color:#66766d; font-size:.78rem; font-weight:450; line-height:1.45; }
.bonus-page-calculator .button { width:max-content; }
.bonus-page-calculator .calculator-result { display:block; min-height:45px; padding:13px 15px; border-radius:12px; background:#fff; color:#294839; line-height:1.6; }
.bonus-start { display:flex; align-items:center; justify-content:space-between; gap:24px; background:#f8faf8; }
.bonus-start>div { max-width:770px; }
.bonus-start .steps-list { margin-bottom:0; }
.bonus-start .button { flex:0 0 auto; }
.bonus-linked-topics .related-grid { margin-top:17px; }
.bonus-operator-source { background:#fbfcfb; }

/* Payment routes use a plain white fact sheet with a method-specific action. */
.payment-detail { display:grid; gap:24px; }
.payment-focus { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:24px; border:1px solid #dfe9e1; border-radius:20px; background:#fff; }
.payment-focus h2,.payment-facts h2,.payment-flow h2,.payment-method-matrix h2,.payment-official h2 { margin:5px 0 12px; font-size:clamp(1.3rem,2.4vw,1.8rem); letter-spacing:-.03em; }
.payment-focus p,.payment-flow-cta p { max-width:760px; margin:0; color:#4c5d54; line-height:1.7; }
.payment-checked,.payment-cta-label { display:inline-flex; flex:0 0 auto; padding:8px 11px; border:1px solid #dce8df; border-radius:999px; color:#405b4c; background:#fff; font-size:.76rem; font-weight:750; }
.payment-facts,.payment-method-matrix,.payment-official { padding:23px; border:1px solid #e6ece7; border-radius:19px; background:#fff; }
.payment-table-wrap { margin-top:14px; }
.payment-facts-table { width:100%; border-collapse:collapse; }
.payment-facts-table th,.payment-facts-table td { padding:13px 16px; border-bottom:1px solid #edf0ee; text-align:left; vertical-align:top; line-height:1.6; }
.payment-facts-table th { width:24%; color:#34483d; font-weight:750; }
.payment-facts-table td { color:#526158; }
.payment-note { margin:13px 0 0; color:#66766d; font-size:.84rem; line-height:1.6; }
.payment-flow { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr); gap:24px; padding:24px; border:1px solid #e5ebe6; border-radius:20px; background:#f8faf8; }
.payment-flow .steps-list { margin:8px 0 0; }
.payment-flow-cta { align-self:center; padding:20px; border:1px solid #dfe9e1; border-radius:16px; background:#fff; }
.payment-flow-cta p { margin:12px 0 16px; font-size:.9rem; }
.payment-method-matrix .data-table-wrap { margin-top:14px; }
.payment-method-matrix .fine-print { color:#65756c; line-height:1.65; }
.payment-official .source-list { margin-bottom:0; }
.payment-related .related-grid { margin-top:14px; }
.payment-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr); align-items:center; gap:36px; padding-block:22px 34px; }
.payment-hero-copy { min-width:0; }
.payment-hero-copy h1 { max-width:760px; margin:14px 0 12px; font-size:clamp(2.35rem,5vw,4.25rem); line-height:1.02; letter-spacing:-.055em; }
.payment-answer { margin-top:19px; padding:14px 17px; border-left:4px solid var(--lime); background:#f6f8f2; }
.payment-answer p { margin:7px 0 0; color:#354038; line-height:1.62; }
.payment-featured-card { min-width:0; padding:19px; border:1px solid #dce3d7; border-left:5px solid var(--lime); border-radius:2px 20px 2px 2px; background:#fff; box-shadow:0 12px 35px rgba(31,42,25,.055); }
.payment-featured-card h2 { margin:7px 0 12px; font-size:1.25rem; line-height:1.2; }
.payment-hero-visual { margin:0 0 13px; overflow:hidden; aspect-ratio:8/5; background:#f7f9f5; }
.payment-figure-picture,.payment-figure-picture img { display:block; width:100%; height:auto; }
.payment-hero-visual .payment-figure-picture,.payment-hero-visual .payment-figure-picture img { height:100%; object-fit:cover; }
.payment-proof-list { display:grid; gap:7px; margin:0 0 14px; padding:0; list-style:none; }
.payment-proof-list li { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding-top:7px; border-top:1px solid #edf0e8; font-size:.82rem; }
.payment-proof-list li span { color:#657063; }
.payment-proof-list li b { color:#222a22; text-align:right; }
.payment-featured-card > .button { width:100%; }
.article-layout-side { grid-area:sidebar; min-width:0; }
.payment-article-body { grid-area:main; min-width:0; }
.payment-figure { margin:18px 0 0; overflow:hidden; border:1px solid #e5e9e1; background:#f7f9f5; }
.payment-figure picture,.payment-figure img { display:block; width:100%; height:auto; }
.payment-figure figcaption { padding:8px 11px; color:#626b5f; font-size:.72rem; line-height:1.45; }
.payment-facts,.payment-alternatives,.payment-method-matrix,.payment-troubleshooting,.payment-documents,.payment-faq,.payment-final,.payment-official,.payment-related { min-width:0; padding:23px; border-top:2px solid #e4e9de; background:#fff; }
.payment-troubleshooting { border-top-color:#e1c29b; }
.payment-documents { background:#f8f9f5; }
.payment-faq details { padding:13px 0; border-top:1px solid #e6e9e2; }
.payment-faq summary { color:#263025; font-weight:760; cursor:pointer; }
.payment-faq details p { margin:10px 0 0; color:#586456; line-height:1.6; }
.payment-problem-list,.payment-doc-list { display:grid; gap:13px; margin:12px 0 0; padding-left:20px; }
.payment-problem-list li::marker,.payment-doc-list li::marker { color:#748263; }
.payment-problem-list h3 { margin:0 0 5px; font-size:1rem; }
.payment-problem-list p,.payment-doc-list li { margin:0; color:#526052; line-height:1.62; }
.payment-final { display:flex; align-items:center; justify-content:space-between; gap:20px; border-left:5px solid var(--lime); background:#f6f8f2; }
.payment-final h2 { margin:5px 0 8px; font-size:1.45rem; }
.payment-final p { margin:0; max-width:680px; color:#566254; line-height:1.6; }
.payment-related { padding-inline:0; }
.payment-related > .text-link { display:inline-block; margin-top:14px; }
.payment-table-wrap { max-width:100%; overflow-x:clip; }
.payment-facts-table { table-layout:fixed; }
.payment-facts-table th,.payment-facts-table td { overflow-wrap:anywhere; }

/* VIP pages keep account terms visible and premium routes text-led. */
.vip-detail { display:grid; gap:24px; }
.vip-status-card { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:24px; border:1px solid #dfe9e1; border-radius:20px; background:#fff; }
.vip-status-card h2,.vip-facts h2,.vip-compare h2,.vip-next-route h2,.vip-payment-matrix h2,.vip-official h2 { margin:5px 0 12px; font-size:clamp(1.3rem,2.4vw,1.8rem); letter-spacing:-.03em; }
.vip-status-card p,.vip-verification p { max-width:780px; margin:0; color:#4c5d54; line-height:1.7; }
.vip-status-chip { display:inline-flex; flex:0 0 auto; padding:8px 11px; border:1px solid #dce8df; border-radius:999px; color:#405b4c; background:#fff; font-size:.76rem; font-weight:750; }
.vip-facts,.vip-compare,.vip-next-route,.vip-payment-matrix,.vip-official { padding:23px; border:1px solid #e6ece7; border-radius:19px; background:#fff; }
.vip-table-wrap { margin-top:14px; }
.vip-facts-table,.vip-compare-table { width:100%; border-collapse:collapse; }
.vip-facts-table th,.vip-facts-table td,.vip-compare-table th,.vip-compare-table td { padding:13px 16px; border-bottom:1px solid #edf0ee; text-align:left; vertical-align:top; line-height:1.6; }
.vip-facts-table th,.vip-compare-table tbody th { width:24%; color:#34483d; font-weight:750; }
.vip-facts-table td,.vip-compare-table td { color:#526158; }
.vip-compare-table thead th { color:#34483d; background:#f6faf7; }
.vip-source-note { margin:13px 0 0; color:#66766d; font-size:.84rem; line-height:1.6; }
.vip-verification { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:24px; border:1px solid #dce9e0; border-radius:20px; background:#f6faf7; }
.vip-verification .text-link { flex:0 0 auto; font-weight:750; }
.vip-next-route .steps-list { margin-top:8px; }
.vip-payment-matrix .data-table-wrap { margin-top:14px; }
.vip-official .source-list { margin-bottom:0; }
.vip-related .related-grid { margin-top:14px; }
@media (max-width:760px) {
  .bonus-fit-card { grid-template-columns:minmax(0,1fr); }
  .bonus-start { align-items:flex-start; flex-direction:column; }
  .payment-flow { grid-template-columns:minmax(0,1fr); }
  .vip-verification { align-items:flex-start; flex-direction:column; }
}
@media (max-width:620px) {
  .bonus-fit-card,.bonus-terms-section,.bonus-examples,.bonus-calculator-wrap,.bonus-start,.bonus-linked-topics,.bonus-operator-source { padding:18px; border-radius:17px; }
  .bonus-status { padding:14px; }
  .bonus-terms-table th,.bonus-terms-table td { padding:11px 13px; }
  .bonus-terms-table th { width:32%; }
  .bonus-calculator-fields { grid-template-columns:minmax(0,1fr); }
  .bonus-page-calculator .button { width:100%; justify-content:center; }
  .bonus-examples .data-table { min-width:610px; }
  .payment-focus { flex-direction:column; padding:18px; }
  .payment-facts,.payment-method-matrix,.payment-official,.payment-flow { padding:18px; border-radius:17px; }
  .payment-facts-table { min-width:600px; }
  .payment-facts-table th,.payment-facts-table td { padding:11px 13px; }
  .payment-facts-table th { width:33%; }
  .payment-flow-cta .button { width:100%; justify-content:center; }
  .vip-status-card { flex-direction:column; padding:18px; }
  .vip-facts,.vip-compare,.vip-next-route,.vip-payment-matrix,.vip-official,.vip-verification { padding:18px; border-radius:17px; }
  .vip-facts-table,.vip-compare-table { min-width:640px; }
  .vip-facts-table th,.vip-facts-table td,.vip-compare-table th,.vip-compare-table td { padding:11px 13px; }
  .vip-facts-table th,.vip-compare-table tbody th { width:32%; }
}
@media (max-width:850px) {
  .game-hero { grid-template-columns:minmax(0,1fr); gap:25px; }
  .game-art { min-height:270px; order:-1; }
  .game-launch { align-items:flex-start; flex-direction:column; }
}
@media (max-width:620px) {
  .game-hero { padding-top:15px; padding-bottom:30px; }
  .game-hero h1 { font-size:clamp(2.15rem,11vw,3.4rem); }
  .game-art { min-height:230px; border-radius:22px; }
  .game-art-core { width:45%; border-radius:25% 48% 29% 50%; }
  .game-detail-grid { grid-template-columns:minmax(0,1fr); gap:14px; }
  .game-detail-grid>section,.game-example,.game-launch { padding:19px; }
  .game-facts th,.game-facts td { padding:11px 13px; }
  .game-facts th { width:39%; }
  .game-context-links { gap:12px 16px; }
}

/* Ireland top and comparison pages */
.top-detail { display:grid; gap:24px; }
.top-featured { display:grid; grid-template-columns:minmax(0,1fr) 92px; gap:24px; align-items:center; padding:28px 32px; border:1px solid #cce8d8; border-radius:22px; background:#fff; }
.top-featured h2,.top-ranking h2,.top-weights h2,.top-method h2,.top-index h2,.top-brand-evidence h2 { margin:8px 0 12px; color:#153d2b; }
.top-featured p,.top-ranking>p,.top-method p,.top-weights p { max-width:760px; color:#596b60; line-height:1.7; }
.top-featured-focus { margin-top:10px; }
.top-featured-mark { display:grid; width:78px; height:78px; place-items:center; border:1px solid #c8e4d2; border-radius:25px; background:#fff; color:#147943; font-size:36px; font-weight:800; box-shadow:0 15px 35px #1e563514; }
.top-index,.top-ranking,.top-method,.top-brand-evidence { padding:26px; border:1px solid #e0ebe4; border-radius:20px; background:#fff; }
.top-guide-grid { margin-top:20px; }
.top-table-wrap { margin-top:18px; }
.top-score-table { min-width:1120px; }
.top-score-table th,.top-score-table td { padding:13px 14px; white-space:nowrap; }
.top-score-table abbr { cursor:help; text-decoration:none; }
.top-score-table abbr small,.top-total small { display:block; margin-top:3px; color:#718177; font-size:10px; font-weight:600; }
.top-rank { display:inline-grid; width:24px; height:24px; margin-right:5px; place-items:center; border-radius:50%; background:#eaf6ef; color:#146f3e; font-size:12px; font-weight:800; }
.top-score-table td span { color:#315542; font-weight:700; }
.top-score-table .top-total strong { color:#176b3e; font-size:18px; }
.top-weights { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.65fr); gap:24px; align-items:start; padding:26px; border:1px solid #e0ebe4; border-radius:20px; background:#f8fbf9; }
.top-weight-wrap { max-width:440px; }
.top-weight-wrap table { width:100%; }
.top-evidence-card { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:20px; padding:20px 0; border-top:1px solid #e7eee9; }
.top-evidence-card h3 { margin:7px 0; color:#153d2b; }
.top-evidence-card p,.top-evidence-list span { color:#5c6b62; line-height:1.6; }
.top-evidence-card details { min-width:0; }
.top-evidence-card summary { color:#1c6440; cursor:pointer; font-weight:700; }
.top-evidence-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 20px; margin:16px 0; padding:0; list-style:none; }
.top-evidence-list li { display:grid; gap:4px; font-size:13px; }
.top-evidence-list b { color:#294a37; }
.top-brand-evidence .source-list { margin-top:14px; }
.top-related { padding:8px 0 24px; }
@media (max-width:760px) {
  .top-featured,.top-weights,.top-evidence-card { grid-template-columns:minmax(0,1fr); }
  .top-featured,.top-index,.top-ranking,.top-method,.top-weights,.top-brand-evidence { padding:19px; border-radius:17px; }
  .top-featured-mark { order:-1; width:58px; height:58px; border-radius:18px; font-size:28px; }
  .top-evidence-list { grid-template-columns:minmax(0,1fr); }
  .top-score-table { min-width:1060px; }
  .top-weight-wrap { max-width:none; }
}
.answer-card .button-small { margin: 0 0 12px; }
.article-position-cta { display: flex; justify-content: flex-start; margin: 20px 0 28px; }
.home-answer-route { display: flex; justify-content: flex-end; margin: -26px auto 22px; max-width: 1180px; padding-inline: 22px; }
.home-comparison-section > .container > .button { margin-top: 18px; }
@media (max-width: 760px) {
  .home-answer-route { justify-content: stretch; margin: -8px auto 18px; padding-inline: 17px; }
  .home-answer-route .button { width: 100%; justify-content: center; }
}

/* Page-specific offer stack: two-column editorial composition from desktop widths. */
body:has(dialog[open]) .commercial-sidebar,
body:has(dialog[open]) .mobile-inline-offers { visibility: hidden; pointer-events: none; }
@media (min-width: 1200px) {
  .article-layout, .game-article-layout, .service-layout, .index-layout { width: min(1320px,calc(100% - 64px)); margin-inline: auto; display: grid; grid-template-columns: minmax(0,1fr) 320px; grid-template-areas: "main sidebar"; align-items: start; gap: 32px; }
  .article-layout { padding-bottom: 84px; }
  .article-body, .game-article-body, .service-main, .index-main { grid-area: main; min-width: 0; }
  .commercial-sidebar { grid-area: sidebar; width: 100%; min-width: 0; align-self: start; position: sticky; top: 98px; display: grid; gap: 12px; }
  .mobile-inline-offers { display: none; }
  .service-page, .index-page { width: min(1320px,calc(100% - 64px)); max-width: none; }
  .service-layout, .index-layout { width: 100%; }
  .game-article-layout { max-width: none; padding-bottom: 84px; }
  .game-hero + .page-promo { width: min(1320px,calc(100% - 64px)); max-width: none; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .article-layout, .game-article-layout, .service-layout, .index-layout { width: min(1080px,calc(100% - 40px)); margin-inline: auto; display: grid; grid-template-columns: minmax(0,1fr); grid-template-areas: "main"; gap: 0; }
  .article-layout { padding-bottom: 68px; }
  .commercial-sidebar { display: none; }
  .article-body, .game-article-body, .service-main, .index-main { grid-area: main; min-width: 0; }
  .mobile-inline-offers { margin: 18px 0 26px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; gap: 12px; }
  .mobile-inline-offers > * { min-width: 0; }
  .service-page, .index-page { width: min(1080px,calc(100% - 40px)); max-width: none; }
  .service-layout, .index-layout { width: 100%; }
  .game-article-layout { max-width: none; padding-bottom: 68px; }
  .article-toc { margin-top: 12px; }
}
@media (max-width: 767px) {
  .article-layout, .game-article-layout, .service-layout, .index-layout { width: min(100% - 34px,620px); margin-inline: auto; display: block; }
  .commercial-sidebar { display: none; }
  .mobile-inline-offers { margin: 16px 0 22px; display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; }
  .mobile-inline-offers [data-sidebar-card="quick-facts"],
  .mobile-inline-offers [data-sidebar-card="related"] { display: none; }
  .sidebar-card { padding: 14px; }
  .sidebar-card h2 { font-size: 16px; }
  .sidebar-offer-message { font-size: 11px; }
  .sidebar-benefits li { font-size: 10px; }
  .article-toc { gap: 8px 12px; }
  .article-layout { padding-bottom: 58px; }
  .game-article-layout { padding-bottom: 58px; }
  .service-page, .index-page { width: min(100% - 34px,620px); max-width: none; }
  .service-layout, .index-layout { width: 100%; }
  .service-heading { padding-top: 28px; }
}

/* Kwiff Ireland fingerprint: white editorial canvas, lime score marks and sharp game-table geometry. */
:root {
  --ink: #171914;
  --muted: #63665d;
  --line: #e1e4d8;
  --soft: #f6f7f1;
  --mint: #eff5d7;
  --green: #526c0b;
  --green-dark: #202519;
  --lime: #d6f45c;
  --electric-violet: #7355c8;
  --white: #fff;
  --shadow: 0 12px 28px rgba(25, 31, 14, .08);
  --display: "Arial Narrow", "Roboto Condensed", "Aptos Narrow", sans-serif;
  font-family: Arial, Helvetica, sans-serif;
}
html { scroll-padding-top: 76px; }
body { color: var(--ink); background: #fff; font-size: 15px; line-height: 1.68; }
h1, h2, h3 { font-family: var(--display); letter-spacing: -.035em; }
a { color: #334808; }
a:hover { color: #583ab8; }
:focus-visible { outline: 3px solid #fff; outline-offset: 2px; box-shadow: 0 0 0 5px #6845b8; }
.container { width: min(1240px, calc(100% - 64px)); }
.site-header { position: sticky; z-index: 40; isolation: isolate; background: #fff; border-bottom: 1px solid #dfe2d7; backdrop-filter: none; }
.header-inner { position: relative; width: min(1320px, calc(100% - 64px)); min-height: 66px; gap: clamp(22px, 3.5vw, 52px); }
.brand { gap: 0; }
.brand-name { font-family: var(--display); font-size: 27px; font-weight: 900; letter-spacing: -.09em; }
.brand-name > span { margin-top: 4px; color: #777a70; font-size: 7px; letter-spacing: 1.15px; }
.main-nav { gap: clamp(18px, 2.5vw, 34px); }
.nav-link { color: #45483e; font-size: 12px; font-weight: 700; }
.nav-link:hover, .nav-link.is-active { color: #526c0b; }
.nav-link.is-active::after { bottom: -25px; height: 3px; background: var(--lime); }
.header-actions { gap: 0; }
.button { min-height: 45px; border-radius: 3px 15px 3px 3px; font-size: 12px; font-weight: 800; }
.button-primary { color: #171914; background: var(--lime); box-shadow: none; }
.button-primary:hover { color: #171914; background: #c7e94a; box-shadow: none; }
.button-secondary { color: #202519; border-color: #bfc2b4; background: #fff; }
.button-secondary:hover { color: #202519; border-color: #526c0b; background: #f5f8e9; }
.menu-toggle, .menu-overlay { display: none; }
body.menu-is-open { overflow: hidden; padding-inline-end: var(--menu-scrollbar-width, 0px); }
.home-page .home-hero { overflow: hidden; border-bottom: 1px solid var(--line); background: #fff; }
.home-page .home-hero::before, .home-page .home-hero-visual::before, .home-page .home-hero-visual::after { display: none; }
.home-page .hero-inner { min-height: 480px; grid-template-columns: minmax(0,1.1fr) minmax(350px,.9fr); gap: clamp(32px,5vw,72px); padding-block: 58px 62px; }
.home-page .home-copy h1 { max-width: 680px; margin: 18px 0 15px; font-family: var(--display); font-size: clamp(48px,6.3vw,76px); line-height: .98; letter-spacing: -.065em; font-weight: 900; }
.home-page .home-copy h1 span { color: #526c0b; }
.eyebrow, .section-kicker { color: #5a7510; font-size: 9px; letter-spacing: .14em; }
.verified-chip { border-color: #d9dfc7; border-radius: 2px; color: #44483d; background: #f7f9f0; }
.verified-chip i, .visual-status::before { background: #7b9e10; box-shadow: 0 0 0 3px #eef4d9; }
.hero-lede { color: #52564b; font-size: 15px; line-height: 1.72; }
.home-page .home-hero-visual { min-height: 330px; padding: 23px 25px 19px; overflow: hidden; color: #fff; border: 0; border-bottom: 8px solid var(--lime); border-radius: 2px 28px 2px 2px; background: #191b16; box-shadow: none; }
.home-page .home-hero-visual .visual-top, .home-page .home-hero-visual .visual-bottom { color: #d9ddcf; }
.hero-board { min-height: 190px; display: grid; grid-template-columns: auto minmax(0,1fr) 68px; align-items: end; gap: 18px; padding-block: 24px 17px; border-bottom: 1px solid #494b43; }
.hero-board-index { align-self: start; color: var(--lime); font-family: var(--display); font-size: clamp(82px,10vw,126px); font-weight: 900; line-height: .78; letter-spacing: -.11em; }
.hero-board-copy { padding-bottom: 4px; }
.hero-board-copy > span { color: #c8ceba; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
.hero-board-copy strong { display: block; margin-top: 10px; color: #fff; font-family: var(--display); font-size: clamp(27px,3.1vw,39px); line-height: .98; letter-spacing: -.045em; }
.hero-board-bars { height: 132px; display: flex; align-items: end; justify-content: end; gap: 5px; border-left: 1px solid #494b43; padding-left: 11px; }
.hero-board-bars i { width: 6px; height: 24%; display: block; background: #8ba51d; }
.hero-board-bars i:nth-child(2) { height: 56%; background: #d6f45c; }
.hero-board-bars i:nth-child(3) { height: 39%; background: #8ba51d; }
.hero-board-bars i:nth-child(4) { height: 78%; background: #b9d83d; }
.hero-board-bars i:nth-child(5) { height: 48%; background: #7856c8; }
.hero-board-bars i:nth-child(6) { height: 96%; background: #d6f45c; }
.hero-board-bars i:nth-child(7) { height: 67%; background: #8ba51d; }
.hero-board-categories { display: flex; flex-wrap: wrap; gap: 8px 17px; padding: 16px 0 13px; color: #f2f2ec; font-size: 10px; font-weight: 750; }
.hero-board-categories span { padding-left: 8px; border-left: 2px solid var(--lime); }
.visual-bottom { border-top-color: #494b43; font-size: 10px; }
.home-facts { margin-top: 22px; border: 0; border-top: 3px solid var(--lime); border-bottom: 1px solid var(--line); border-radius: 0; background: #fff; box-shadow: none; }
.home-fact { min-height: 72px; gap: 10px; border-right: 1px solid var(--line); }
.home-fact > span { width: 30px; height: 30px; color: #25291c; border-radius: 2px 9px 2px 2px; background: var(--lime); }
.home-fact b { font-size: 11px; }
.home-fact small { font-size: 8px; }
.home-page-promo .page-promo { margin-top: 18px; }
.page-promo { border-radius: 2px 18px 2px 2px; border-left: 5px solid var(--electric-violet); background: #f7f8f2; }
.page-promo-visual { border-radius: 2px 14px 2px 2px; background: var(--lime); color: #1b1d16; box-shadow: none; }
.page-promo-visual span { border-radius: 2px 8px 2px 2px; background: #fff; }
.home-intro-section { gap: 42px; padding-block: 62px; }
.home-intro-copy h2, .home-section-heading h2, .quick-start-heading h2, .home-final-cta h2 { font-family: var(--display); font-size: clamp(30px,3.5vw,43px); font-weight: 800; letter-spacing: -.045em; }
.home-intro-body p { color: #53574c; font-size: 12px; }
.home-bonus { background: #f6f7ee; border-color: #e4e8d4; }
.home-bonus .bonus-path { border: 0; border-radius: 0; border-block: 1px solid #dfe3d0; background: transparent; }
.bonus-path i { color: var(--electric-violet); }
.bonus-checklist { padding: 7px 24px 7px 0; border: 0; border-right: 1px solid #d8ddca; border-radius: 0; background: transparent; }
.bonus-checklist h3, .bonus-calculator h3 { font-family: var(--display); font-size: 22px; }
.bonus-calculator { padding: 22px 24px; border: 1px solid #dfe3d0; border-top: 4px solid var(--lime); border-radius: 2px 18px 2px 2px; background: #fff; box-shadow: none; }
.calculator-heading { margin-bottom: 12px; }
.calculator-icon { border-radius: 2px 9px 2px 2px; background: var(--lime); }
.home-offer-final { border: 0; border-top: 1px solid #d8ddca; border-radius: 0; background: transparent; }
.home-games { background: #f7f8f3; border-block: 1px solid #e5e7df; }
.home-games .section-heading { align-items: start; }
.home-games .section-heading h2 { font-family: var(--display); font-size: clamp(30px,3.5vw,42px); }
.game-finder { border: 0; border-top: 3px solid #202519; border-radius: 0; background: #fff; box-shadow: none; }
.game-finder-controls { grid-template-columns: minmax(180px,1.45fr) repeat(5,minmax(100px,1fr)); gap: 10px; }
.game-finder-field input, .game-finder-field select { min-height: 40px; border-color: #daddd2; border-radius: 2px 9px 2px 2px; background: #fff; }
.game-filter-reset { min-height: 37px; border-radius: 2px 10px 2px 2px; }
.game-grid.home-game-grid { gap: 0 14px; border-top: 1px solid #dfe2d8; }
.home-game-tile { min-height: 0; padding: 16px 8px 14px 0; border: 0; border-bottom: 1px solid #dfe2d8; border-radius: 0; background: transparent; box-shadow: none; }
.home-game-tile:hover { border-color: #aab77d; background: #f0f4df; box-shadow: none; }
.game-glyph { width: 31px; height: 31px; border-radius: 2px 8px 2px 2px; color: #1d2117; background: var(--lime); font-size: 10px; }
.game-type { color: #64685e; font-size: 9px; font-weight: 750; }
.home-game-tile h3 { margin: 12px 0 5px; font-family: var(--display); font-size: 16px; }
.home-game-tile > p { color: #5c6056; font-size: 10px; line-height: 1.55; }
.game-fact-chip { border-color: #dce0d2; border-radius: 2px 8px 2px 2px; background: #fff; }
.game-operator-link { color: #334808; }
.home-game-context { border-top: 0; }
.rtp-volatility-tool { border: 1px solid #dfe2d8; border-left: 5px solid var(--electric-violet); border-radius: 2px 18px 2px 2px; background: #fff; }
.rtp-result-card { padding: 14px 16px; border: 0; border-top: 2px solid var(--lime); border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; }
.rtp-result-card h3 { font-family: var(--display); }
.rtp-tool-selectors select { border-radius: 2px 9px 2px 2px; }
.game-path-card { border-radius: 2px 18px 2px 2px; background: #eaf0cf; }
.home-quick-start { padding-block: 66px; }
.quick-start-stamp { border-radius: 2px 16px 2px 2px; background: var(--lime); color: #242819; }
.quick-start-list li { border-top: 1px solid var(--line); }
.quick-step-number { color: var(--electric-violet); font-family: var(--display); font-size: 30px; }
.home-comparison-section { padding-block: 58px; background: #f7f8f3; border-block: 1px solid var(--line); }
.data-table-wrap { border-radius: 2px 14px 2px 2px; }
.data-table caption { background: #f6f7f1; }
.data-table thead th { color: #34372d; background: #eef1e3; }
.home-mobile-section { background: #fff; border-block: 0; }
.mobile-route-art { border-radius: 2px 26px 2px 2px; border-left: 7px solid var(--lime); background: #f2f4e8; }
.mobile-route-art::before { content: ""; position: absolute; inset: 22px; border: 1px solid #d7dcc7; clip-path: polygon(0 0,100% 0,100% 84%,84% 100%,0 100%); }
.device-frame { border: 4px solid #22251d; border-radius: 3px 20px 3px 3px; background: #22251d; box-shadow: 9px 10px 0 var(--lime); }
.device-frame b { color: var(--lime); font-family: var(--display); }
.device-orbit { color: var(--electric-violet); }
.vip-card { border: 0; border-top: 3px solid var(--lime); border-radius: 0; box-shadow: none; }
.vip-emblem { border-radius: 2px 16px 2px 2px; color: #1a1c16; background: var(--lime); }
.home-hubs-section { padding-block: 60px; background: #f7f8f3; }
.home-hubs-grid { gap: 0 20px; }
.home-hub-card { padding: 19px 0; border: 0; border-top: 2px solid #dfe2d8; border-radius: 0; background: transparent; }
.hub-count { color: var(--electric-violet); }
.home-topic-chips .topic-chip { border-radius: 2px 12px 2px 2px; background: #fff; }
.faq-home details { border-color: #dfe2d8; }
.faq-home summary::after { color: var(--electric-violet); }
.home-final-cta { background: #1b1d17; }
.home-final-cta h2, .home-final-cta p, .home-final-cta .section-kicker { color: #fff; }
.home-final-cta .section-kicker { color: var(--lime); }
.article-hero { gap: clamp(24px,4vw,52px); }
.article-copy h1, .game-hero h1, .service-heading h1 { font-family: var(--display); font-weight: 850; letter-spacing: -.05em; }
.answer-card { border: 0; border-left: 5px solid var(--lime); border-radius: 2px 17px 2px 2px; background: #f5f6ef; box-shadow: none; }
.answer-label { color: #526c0b; }
.article-toc { border: 0; border-block: 1px solid var(--line); border-radius: 0; background: #fff; }
.content-section { padding-block: 27px; border-color: #e3e5dc; }
.guide-card { border: 0; border-top: 2px solid #d9ddce; border-bottom: 1px solid #e5e7df; border-radius: 0; background: transparent; box-shadow: none; }
.guide-card:hover { border-top-color: var(--lime); background: #f5f7ed; box-shadow: none; transform: none; }
.category-link, .related-card { border-radius: 2px 12px 2px 2px; }
.sidebar-card { border-radius: 2px 16px 2px 2px; box-shadow: none; }
.geo-facts-card { background: #f5f6ef; }
.sidebar-offer-card--featured { border-left: 5px solid var(--lime); background: #fff; }
.sidebar-context-visual { border-radius: 2px 12px 2px 2px; background: #eff3dd; }
.page-promo--rail { border-radius: 2px 14px 2px 2px; }
.context-popup[open] { border-radius: 2px 20px 2px 2px; }
.context-popup-card { border: 0; border-top: 6px solid var(--lime); border-radius: 2px 20px 2px 2px; background: #fff; box-shadow: 0 20px 65px rgba(16,19,12,.22); }
.context-popup-card::before { display: none; }
.mobile-context-bar:not([hidden]) { border-top: 3px solid var(--lime); box-shadow: 0 -8px 22px rgba(25,31,14,.1); }
.bonus-fit-card { border: 0; border-top: 3px solid var(--lime); border-radius: 0; background: #f6f7f1; }
.bonus-fit-cashback, .bonus-fit-spins, .bonus-fit-code, .bonus-fit-reload, .bonus-fit-wagering { background: #f6f7f1; }
.bonus-status { border-radius: 0; background: transparent; }
.payment-flow-cta { padding: 0; border: 0; border-radius: 0; background: transparent; }
.bonus-terms-section, .bonus-examples, .bonus-calculator-wrap, .bonus-start, .bonus-linked-topics, .bonus-operator-source { border-color: #e1e4d8; border-radius: 2px 16px 2px 2px; }
.bonus-table-wrap { border-radius: 2px 12px 2px 2px; }
.bonus-calculator-wrap { border-top: 3px solid var(--lime); background: #f6f7f1; }
.game-detail-grid { gap: 25px 34px; }
.game-detail-grid > section, .game-example { padding: 21px 0; border: 0; border-top: 2px solid #dfe2d8; border-radius: 0; background: transparent; }
.game-example { border-top-color: var(--lime); }
.game-launch { border-radius: 2px 18px 2px 2px; background: #f3f5e8; }
.game-symbol-chip, .game-availability-chip { border-radius: 2px 9px 2px 2px; }
.game-art { border: 0; border-left: 8px solid var(--game-a); border-radius: 2px 28px 2px 2px; background: color-mix(in srgb,var(--game-c) 18%,white); box-shadow: none; }
.game-art::before, .game-art::after, .game-art-orbit { display: none; }
.game-art-core { width: min(42%,230px); border: 0; border-radius: 2px 24px 2px 2px; color: #fff; background: var(--game-a); box-shadow: 9px 9px 0 var(--game-b); transform: rotate(-4deg); }
.top-featured { border: 0; border-left: 6px solid var(--lime); border-radius: 2px 22px 2px 2px; background: #f5f6ef; }
.top-featured-mark { border: 0; border-radius: 2px 16px 2px 2px; background: var(--lime); color: #202519; box-shadow: none; }
.top-index, .top-ranking, .top-method, .top-brand-evidence, .top-weights { border-color: #e1e4d8; border-radius: 2px 16px 2px 2px; }
.top-weights { background: #f6f7f1; }
.top-rank { border-radius: 2px 7px 2px 2px; color: #202519; background: var(--lime); }
.service-content .content-section { border-radius: 2px 14px 2px 2px; }
.page-promo-visual, .context-popup-visual, .mobile-context-visual { position: relative; overflow: hidden; }
.page-promo-raster, .context-popup-raster, .mobile-context-raster, .hero-visual-raster, .mobile-route-raster, .game-art-raster { display: block; width: 100%; height: 100%; }
.page-promo-raster img, .context-popup-raster img, .mobile-context-raster img, .hero-visual-raster img, .mobile-route-raster img, .game-art-raster img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sidebar-brand-raster, .sidebar-context-raster { width: 40px; height: 40px; flex: 0 0 auto; display: block; overflow: hidden; border-radius: 2px 12px 2px 2px; }
.sidebar-brand-raster img { object-fit: contain; }
.page-promo-visual:has(.page-promo-raster) > .page-promo-raster, .context-popup-visual:has(.context-popup-raster) > .context-popup-raster, .mobile-context-visual:has(.mobile-context-raster) > .mobile-context-raster { position: absolute; inset: 0; }
.hero-visual-raster { position: absolute; inset: 0; z-index: 3; }
.mobile-route-raster { position: absolute; inset: 0; z-index: 2; }
.game-art-raster { position: absolute; inset: 0; z-index: 2; }
.context-popup-visual { width: 42px; height: 42px; margin: 0 0 14px; display: grid; place-items: center; border-radius: 2px 14px 2px 2px; background: var(--lime); }
.context-popup-visual > i { width: 22px; height: 22px; display: block; border: 3px solid #202519; border-right: 0; border-bottom: 0; transform: skew(-18deg); }
.mobile-context-visual { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 2px 9px 2px 2px; background: var(--lime); }
.mobile-context-visual > i { width: 16px; height: 16px; display: block; border: 2px solid #202519; border-right: 0; border-bottom: 0; transform: skew(-18deg); }
.mobile-context-bar:not([hidden]) { grid-template-columns: 30px minmax(0,1fr) auto auto; gap: 7px; padding-inline: max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-left)); }
.game-art:has(.game-art-raster) { background: #fff; }

@media (max-width: 1050px) {
  .header-inner { gap: 18px; }
  .main-nav { gap: 13px; }
  .home-page .hero-inner { grid-template-columns: minmax(0,1.05fr) minmax(300px,.95fr); gap: 30px; }
  .game-finder-controls { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  html { scroll-padding-top: 68px; }
  .container { width: min(100% - 34px, 620px); }
  .site-header { position: sticky; }
  .header-inner { width: calc(100% - 32px); min-height: 64px; display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 8px; }
  .brand { grid-column: 1; min-width: 0; }
  .brand-name { font-size: 24px; }
  .brand-name > span { font-size: 6px; }
  .header-actions { grid-column: 2; }
  .header-actions .button { min-height: 38px; padding: 8px 11px; font-size: 10px; }
  .menu-toggle { grid-column: 3; display: block; width: 38px; height: 38px; padding: 8px; border: 1px solid #cfd3c3; border-radius: 2px 11px 2px 2px; background: #fff; cursor: pointer; }
  .menu-toggle span { width: 19px; background: #202519; }
  .main-nav { position: absolute; top: 100%; left: 0; right: 0; z-index: 43; display: none; padding: 7px 17px 14px; flex-direction: column; align-items: stretch; gap: 0; border: 0; border-bottom: 1px solid #dfe2d8; background: #fff; box-shadow: none; }
  .main-nav.is-open { display: flex; }
  .nav-link { min-height: 48px; padding: 13px 3px; border-bottom: 1px solid #eceee8; font-size: 14px; }
  .nav-link:last-child { border-bottom: 0; }
  .nav-link.is-active::after { display: none; }
  .menu-overlay:not([hidden]) { position: fixed; inset: 64px 0 0; z-index: 41; display: block; width: 100%; padding: 0; border: 0; background: rgba(18,20,15,.42); cursor: default; }
  .home-page .hero-inner { min-height: 0; padding-block: 38px 35px; grid-template-columns: minmax(0,1fr); gap: 28px; }
  .home-page .home-copy h1 { font-size: clamp(46px,12vw,65px); }
  .home-page .home-hero-visual { min-height: 275px; padding: 18px 18px 14px; }
  .mobile-route-art:has(.mobile-route-raster) .device-frame, .mobile-route-art:has(.mobile-route-raster) .device-orbit { display: none; }
  .hero-board { min-height: 150px; grid-template-columns: auto minmax(0,1fr) 48px; gap: 12px; padding-block: 21px 13px; }
  .hero-board-index { font-size: clamp(70px,20vw,104px); }
  .hero-board-copy strong { font-size: clamp(27px,7vw,36px); }
  .hero-board-bars { height: 110px; gap: 3px; padding-left: 8px; }
  .hero-board-bars i { width: 5px; }
  .hero-board-categories { gap: 7px 11px; padding-block: 13px; font-size: 9px; }
  .home-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .home-fact { min-height: 67px; padding: 11px 8px; border-bottom: 1px solid var(--line); }
  .home-fact:nth-child(2) { border-right: 0; }
  .home-fact:nth-last-child(-n+2) { border-bottom: 0; }
  .home-intro-section { display: block; padding-block: 43px; }
  .home-intro-body { columns: 1; margin-top: 18px; }
  .home-bonus { padding-block: 43px; }
  .home-bonus .bonus-path { flex-wrap: wrap; gap: 8px; font-size: 9px; }
  .home-offer-inner { grid-template-columns: minmax(0,1fr); gap: 19px; }
  .bonus-checklist { padding: 0 0 17px; border: 0; border-bottom: 1px solid #d8ddca; }
  .bonus-calculator { padding: 17px; }
  .home-offer-final { align-items: flex-start; flex-direction: column; padding-top: 17px; }
  .home-offer-final .button { width: 100%; }
  .home-games { padding-block: 43px; }
  .game-finder-controls { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .game-finder-search-field { grid-column: 1/-1; }
  .game-grid.home-game-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 12px; }
  .home-game-tile { padding-right: 3px; }
  .game-path-card { align-items: flex-start; flex-direction: column; padding: 20px; }
  .game-path-card .button { width: 100%; }
  .quick-start-heading { grid-template-columns: minmax(0,1fr) auto; }
  .home-hubs-grid { grid-template-columns: minmax(0,1fr); }
  .home-final-cta { padding-block: 37px; }
  .article-hero { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 390px) {
  .header-inner { width: calc(100% - 24px); gap: 6px; }
  .brand-name { font-size: 21px; }
  .brand-name > span { display: none; }
  .header-actions .button { padding-inline: 9px; font-size: 9px; }
  .menu-toggle { width: 36px; height: 36px; }
  .mobile-context-bar:not([hidden]) { grid-template-columns: 26px minmax(0,1fr) auto auto; gap: 5px; padding-inline: 8px; }
  .mobile-context-visual { width: 26px; height: 26px; }
}

@media (max-width: 1199px) {
  .article-layout-side { display:none; }
}
@media (max-width: 1050px) {
  .payment-hero { grid-template-columns:minmax(0,1fr); gap:20px; }
}
@media (max-width: 760px) {
  .payment-hero { gap:17px; padding-block:13px 22px; }
  .payment-hero-copy h1 { font-size:clamp(2rem,10vw,3rem); }
  .payment-featured-card { padding:14px; }
  .payment-answer { padding:12px 13px; }
  .payment-facts,.payment-alternatives,.payment-method-matrix,.payment-troubleshooting,.payment-documents,.payment-faq,.payment-final,.payment-official { padding:16px 0; }
  .payment-related { padding-block:16px; }
  .payment-final { align-items:flex-start; flex-direction:column; gap:13px; }
  .payment-final > .button { width:100%; }
  .payment-facts-table,.payment-alternative-table { display:block; width:100%; }
  .payment-facts-table thead,.payment-alternative-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .payment-facts-table tbody,.payment-alternative-table tbody { display:grid; gap:8px; }
  .payment-facts-table tr,.payment-alternative-table tr { display:grid; grid-template-columns:minmax(0,1fr); border:1px solid #e4e9de; background:#fff; }
  .payment-facts-table th,.payment-facts-table td,.payment-alternative-table th,.payment-alternative-table td { display:block; width:auto; padding:9px 11px; border:0; font-size:.82rem; line-height:1.45; text-align:left; }
  .payment-facts-table th,.payment-alternative-table th { padding-bottom:3px; color:#253025; }
  .payment-alternative-table td::before { display:block; margin-bottom:3px; color:#6a7566; font-size:.68rem; font-weight:750; content:attr(data-label); }
  .payment-table-wrap { overflow:visible; }
}

/* Kwiff Ireland slot directory: bright paper, botanical green, and mechanic-led art. */
.slot-game-hero { align-items:center; }
.slot-game-hero .game-art { min-height:0; aspect-ratio:5/3; }
.slot-showcase { width:min(1240px,calc(100% - 64px)); margin:18px auto 26px; padding:22px 26px; display:grid; grid-template-columns:minmax(200px,.85fr) minmax(0,1.4fr) auto; align-items:center; gap:24px; border-top:3px solid #345b3e; border-bottom:1px solid #dfe8dc; background:#f7faf5; }
.slot-showcase h2 { margin:4px 0 7px; font-size:1.35rem; }
.slot-showcase p { margin:5px 0; color:#506054; line-height:1.55; }
.slot-showcase ul { margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 16px; list-style:none; }
.slot-showcase li a { display:grid; gap:3px; color:#24372a; text-decoration:none; }
.slot-showcase li span { color:#687568; font-size:.8rem; }
.slot-availability { color:#596959; font-size:.88rem; }
.slot-directory-note,.slot-lobby-note { max-width:760px; color:#59675b; line-height:1.65; }
.slot-filter-nav { display:flex; flex-wrap:wrap; gap:10px; margin:20px 0 24px; }
.slot-filter-group { min-width:180px; padding:12px 15px; border-left:2px solid #c4d4c3; background:#f7faf5; }
.slot-filter-group h3 { margin:0 0 7px; font-size:.9rem; }
.slot-filter-group ul { display:flex; flex-wrap:wrap; gap:6px; margin:0; padding:0; list-style:none; }
.slot-filter-group a { display:inline-flex; padding:5px 9px; border:1px solid #dce6dc; border-radius:2px 10px 2px 2px; background:#fff; color:#31573b; font-size:.82rem; text-decoration:none; }
.slot-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:0; padding:0; list-style:none; }
.slot-card { min-width:0; display:grid; grid-template-columns:minmax(130px,.8fr) minmax(0,1fr); border-bottom:1px solid #dce5dc; }
.slot-card-visual { display:block; overflow:hidden; aspect-ratio:5/3; background:#f1f5ee; }
.slot-card-image,.slot-card-image img { display:block; width:100%; height:100%; object-fit:cover; }
.slot-card-copy { align-self:center; padding:16px; }
.slot-card-copy h2 { margin:5px 0; font-size:1.15rem; line-height:1.25; }
.slot-card-copy h2 a { color:#23352a; text-decoration:none; }
.slot-card-copy p { margin:6px 0; color:#536256; font-size:.88rem; line-height:1.5; }
.slot-provider { color:#6b784f; font-size:.72rem; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.slot-card-data { color:#31573b!important; font-weight:650; }
.slot-filter-results { margin-top:30px; padding-top:14px; border-top:1px solid #e2e8df; }
.slot-filter-result { margin:12px 0 20px; }
.slot-filter-result h3 { margin:0 0 7px; font-size:1rem; }
.slot-filter-list { margin:0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 18px; list-style:none; }
.slot-filter-list li { display:flex; flex-wrap:wrap; gap:5px 9px; align-items:baseline; }
.slot-filter-list a { color:#2d5a37; font-weight:700; }
.slot-filter-list span { color:#647065; font-size:.8rem; }
.slot-fact-section { padding-block:20px; }
.slot-demo { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:22px; padding:20px 0; border-top:1px solid #e1e7df; border-bottom:1px solid #e1e7df; }
.slot-demo p { max-width:680px; color:#59665b; line-height:1.65; }
.slot-demo-frame { width:min(100%,800px); margin-top:14px; aspect-ratio:16/9; overflow:hidden; background:#111; }
.slot-demo-frame:empty { display:none; }
.slot-demo-frame iframe { display:block; width:100%; height:100%; border:0; }
.slot-demo-fallback>div { display:grid; grid-template-columns:minmax(220px,.9fr) minmax(0,1fr); align-items:center; gap:20px; }
.slot-secondary-visual { position:relative; overflow:hidden; margin:0; aspect-ratio:5/3; background:#f4f7f0; }
.slot-secondary-visual img { display:block; width:100%; height:100%; object-fit:cover; }
.slot-secondary-visual figcaption { position:absolute; inset:auto 0 0; padding:9px 12px; background:#fffdf0e8; color:#34463a; font-size:.76rem; font-weight:700; letter-spacing:.06em; }
.slot-mechanics,.slot-bonus,.slot-session,.slot-faq { padding-block:19px; border-bottom:1px solid #e1e7df; }
.slot-related-list { margin:0; padding:0; list-style:none; }
.slot-related-list .related-card { min-height:100%; }
.slot-faq details { padding:13px 0; border-top:1px solid #e5e9e2; }
.slot-faq summary { cursor:pointer; color:#26392d; font-weight:700; }
.slot-faq details p { max-width:760px; color:#556356; line-height:1.65; }
@media (max-width: 1000px) {
  .slot-showcase { width:min(1080px,calc(100% - 40px)); grid-template-columns:minmax(0,1fr); }
  .slot-showcase ul { max-width:700px; }
  .slot-card-grid { gap:14px; }
}
@media (max-width: 760px) {
  .slot-game-hero { gap:12px; }
  .slot-showcase { width:calc(100% - 34px); margin:12px auto 19px; padding:16px; }
  .slot-showcase ul { grid-template-columns:minmax(0,1fr); }
  .slot-card-grid { grid-template-columns:minmax(0,1fr); gap:10px; }
  .slot-card { grid-template-columns:minmax(105px,.75fr) minmax(0,1fr); }
  .slot-card-copy { padding:10px 12px; }
  .slot-card-copy h2 { font-size:1rem; }
  .slot-filter-nav { display:grid; grid-template-columns:minmax(0,1fr); }
  .slot-filter-group { min-width:0; }
  .slot-filter-list { grid-template-columns:minmax(0,1fr); }
  .slot-demo { grid-template-columns:minmax(0,1fr); }
  .slot-demo .button { width:100%; }
  .slot-demo-fallback>div { grid-template-columns:minmax(0,1fr); }
  .slot-secondary-visual { max-width:540px; width:100%; }
}
