html {
    scroll-behavior: smooth;
}

body {
            background-color: #050505;
            color: #f4f4f5;
        }
        /* Custom scrollbar */
        ::-webkit-scrollbar {
            width: 8px;
        }
        ::-webkit-scrollbar-track {
            background: #0f0f11;
        }
        ::-webkit-scrollbar-thumb {
            background: #222226;
            border-radius: 4px;
        }


/* TOP-30 bookmakers page */
.top30-card {
    position: relative;
    overflow: hidden;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.top30-card:hover {
    transform: translateY(-4px);
    border-color: rgba(234,179,8,.42);
    box-shadow: 0 22px 60px rgba(0,0,0,.28);
}
.top30-card::after {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    border-radius: 999px;
    right: -85px;
    top: -85px;
    background: rgba(234,179,8,.06);
    filter: blur(2px);
    pointer-events: none;
}
.geo-chip {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .34rem .58rem;
    border-radius: 999px;
    border: 1px solid #2a2a2e;
    background: #141417;
    color: #d4d4d8;
    font-size: 11px;
    line-height: 1;
    white-space: nowrap;
}
.rank-medal {
    box-shadow: 0 8px 24px rgba(0,0,0,.25);
}
.top30-logo {
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035);
}
.top30-card.featured-1 {
    border-color: rgba(234,179,8,.5);
    box-shadow: 0 18px 50px rgba(234,179,8,.08);
}
.top30-card.featured-2 {
    border-color: rgba(212,212,216,.28);
}
.top30-card.featured-3 {
    border-color: rgba(180,83,9,.34);
}
@media (max-width: 640px) {
    .top30-actions {
        grid-template-columns: 1fr;
    }
}


/* Premium TOP-10 page */
.premium-card {
    position: relative;
    overflow: hidden;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.premium-card:hover {
    transform: translateY(-6px);
    border-color: rgba(234,179,8,.5);
    box-shadow: 0 26px 70px rgba(0,0,0,.34);
}
.premium-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,.02), transparent 35%, rgba(234,179,8,.025));
    pointer-events: none;
}
.premium-card::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    right: -85px;
    top: -90px;
    border-radius: 999px;
    background: rgba(234,179,8,.07);
    filter: blur(3px);
    pointer-events: none;
}
.premium-card.top1 {
    border-color: rgba(234,179,8,.58);
    box-shadow: 0 24px 70px rgba(234,179,8,.10);
}
.premium-card.top2 {
    border-color: rgba(212,212,216,.32);
}
.premium-card.top3 {
    border-color: rgba(180,83,9,.38);
}
.brand-mark {
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 10px 26px rgba(0,0,0,.22);
}
.rank-badge {
    box-shadow: 0 8px 18px rgba(0,0,0,.28);
}
.geo-pill {
    display: inline-flex;
    align-items: center;
    padding: .4rem .62rem;
    border-radius: 999px;
    border: 1px solid #2a2a2e;
    background: #141417;
    color: #d4d4d8;
    font-size: 11px;
    line-height: 1;
    white-space: nowrap;
}
.soft-stat {
    background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.015));
}
.hero-grid-glow {
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 32px 32px;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,.75), transparent 85%);
}
@media (max-width: 640px) {
    .premium-actions {
        grid-template-columns: 1fr;
    }
}


.logo-img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block;}


/* Logo fitting fix: keep full wordmarks visible inside square tiles */
.logo-img{
    width:100%;
    height:100%;
    object-fit:contain !important;
    object-position:center;
    border-radius:inherit;
    display:block;
    padding:6px;
    box-sizing:border-box;
}
.brand-mark .logo-img{
    padding:7px;
}


/* TOP-10 horizontal list */
.bookmaker-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.bookmaker-row {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: minmax(240px, 1.15fr) minmax(210px, .9fr) minmax(210px, .9fr) auto;
    gap: 20px;
    align-items: center;
    padding: 18px 20px;
    border: 1px solid #242428;
    border-radius: 22px;
    background: linear-gradient(135deg, #111114 0%, #0d0d10 100%);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.bookmaker-row:hover {
    transform: translateY(-2px);
    border-color: rgba(234,179,8,.45);
    box-shadow: 0 18px 48px rgba(0,0,0,.28);
}
.bookmaker-row::after {
    content:"";
    position:absolute;
    width:170px;
    height:170px;
    border-radius:999px;
    right:-100px;
    top:-100px;
    background:rgba(234,179,8,.06);
    pointer-events:none;
}
.bookmaker-row.top-1 { border-color: rgba(234,179,8,.5); }
.bookmaker-row.top-2 { border-color: rgba(212,212,216,.28); }
.bookmaker-row.top-3 { border-color: rgba(180,83,9,.34); }

.list-brand {
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
}
.list-logo {
    width:72px;
    height:56px;
    flex:0 0 auto;
    border-radius:14px;
    border:1px solid #2a2a2e;
    background:#f5f5f5;
    padding:6px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}
.list-logo img {
    width:100%;
    height:100%;
    object-fit:contain !important;
    border-radius:8px;
}
.list-rank {
    position:absolute;
    left:10px;
    top:10px;
    min-width:26px;
    height:26px;
    padding:0 7px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:10px;
    font-weight:900;
    z-index:4;
}
.list-meta-title {
    color:#71717a;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.12em;
    margin-bottom:7px;
}
.list-bonus {
    font-size:15px;
    line-height:1.25;
    font-weight:800;
    color:#fff;
}
.list-geos {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}
.list-actions {
    display:flex;
    align-items:center;
    gap:8px;
    position:relative;
    z-index:2;
}
.list-actions a {
    min-width:94px;
}
@media (max-width: 1100px) {
    .bookmaker-row {
        grid-template-columns: minmax(240px,1.2fr) minmax(190px,.8fr) 1fr;
    }
    .list-actions {
        grid-column: 1 / -1;
        justify-content:flex-end;
        border-top:1px solid #232327;
        padding-top:14px;
    }
}
@media (max-width: 720px) {
    .bookmaker-row {
        grid-template-columns: 1fr;
        gap:14px;
        padding:18px;
    }
    .list-logo {
        width:86px;
        height:62px;
    }
    .list-actions {
        grid-column:auto;
        justify-content:stretch;
    }
    .list-actions a {
        flex:1;
    }
}


/* ULTRA PREMIUM bookmakers list */
.bookmakers-stage {
    position: relative;
}
.bookmakers-stage::before {
    content: "";
    position: absolute;
    inset: -60px -20px auto -20px;
    height: 420px;
    background:
        radial-gradient(circle at 20% 15%, rgba(234,179,8,.09), transparent 34%),
        radial-gradient(circle at 85% 25%, rgba(255,255,255,.035), transparent 28%);
    pointer-events: none;
    filter: blur(2px);
}

.catalog-meta {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
}
.catalog-meta span {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 10px;
    border-radius:999px;
    border:1px solid #26262a;
    background:#101013;
    color:#a1a1aa;
    font-size:11px;
    font-weight:700;
}

.ultra-row {
    --accent:#eab308;
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(300px,1.25fr) minmax(200px,.75fr) minmax(220px,.9fr) auto;
    gap:22px;
    align-items:center;
    padding:20px 22px 20px 26px;
    border:1px solid #242428;
    border-radius:24px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.025), transparent 38%),
        linear-gradient(135deg,#101013 0%,#0b0b0e 100%);
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.ultra-row::before {
    content:"";
    position:absolute;
    left:0; top:0; bottom:0;
    width:4px;
    background:var(--accent);
    box-shadow:0 0 18px color-mix(in srgb, var(--accent) 60%, transparent);
}
.ultra-row::after {
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    right:-120px;
    top:-125px;
    border-radius:50%;
    background:var(--accent);
    opacity:.055;
    filter:blur(6px);
}
.ultra-row:hover {
    transform:translateY(-3px);
    border-color:color-mix(in srgb, var(--accent) 45%, #242428);
    box-shadow:0 22px 60px rgba(0,0,0,.30);
}

.ultra-row.rank1 {
    grid-template-columns:minmax(340px,1.35fr) minmax(230px,.85fr) minmax(240px,.95fr) auto;
    min-height:152px;
    padding:26px 26px 26px 30px;
    border-color:rgba(234,179,8,.55);
    background:
        linear-gradient(135deg, rgba(234,179,8,.085), transparent 35%),
        linear-gradient(135deg,#13130f 0%,#0b0b0e 100%);
    box-shadow:0 24px 70px rgba(234,179,8,.08);
}
.ultra-row.rank2 { border-color:rgba(212,212,216,.30); }
.ultra-row.rank3 { border-color:rgba(180,83,9,.36); }

.brand-cluster {
    display:flex;
    align-items:center;
    gap:16px;
    min-width:0;
}
.brand-logo-box {
    width:92px;
    height:66px;
    border-radius:16px;
    padding:8px;
    flex:0 0 auto;
    background:#f5f5f5;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.rank1 .brand-logo-box {
    width:116px;
    height:82px;
}
.brand-logo-box img {
    width:100%;
    height:100%;
    object-fit:contain !important;
    border-radius:9px;
}

.rank-orb {
    width:34px;
    height:34px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:11px;
    font-weight:900;
    flex:0 0 auto;
    box-shadow:0 10px 20px rgba(0,0,0,.28);
}
.badge-unique {
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:7px;
    padding:5px 8px;
    border-radius:8px;
    border:1px solid color-mix(in srgb, var(--accent) 30%, #252529);
    background:color-mix(in srgb, var(--accent) 9%, #111114);
    color:var(--accent);
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.rating-pill {
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:5px 8px;
    border-radius:999px;
    background:rgba(234,179,8,.09);
    border:1px solid rgba(234,179,8,.18);
    color:#eab308;
    font-size:11px;
    font-weight:800;
}

.bonus-panel {
    position:relative;
    overflow:hidden;
    border:1px solid #29292e;
    border-radius:16px;
    padding:13px 14px 13px 42px;
    background:linear-gradient(180deg,#17171b,#121215);
}
.bonus-panel i {
    position:absolute;
    left:14px;
    top:50%;
    transform:translateY(-50%);
    color:var(--accent);
    font-size:15px;
}
.bonus-panel .label {
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:#71717a;
    font-weight:800;
}
.bonus-panel .value {
    margin-top:3px;
    color:white;
    font-size:15px;
    line-height:1.25;
    font-weight:900;
}

.geo-wrap {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.geo-premium {
    display:inline-flex;
    align-items:center;
    padding:6px 9px;
    border-radius:999px;
    border:1px solid #2b2b30;
    background:#151518;
    color:#d4d4d8;
    font-size:10px;
    font-weight:700;
}

.row-actions {
    display:flex;
    align-items:center;
    gap:8px;
    position:relative;
    z-index:2;
}
.btn-review {
    min-width:92px;
    border:1px solid #303036;
    background:#151518;
    color:#e4e4e7;
}
.btn-main {
    min-width:108px;
    background:var(--accent);
    color:#050505;
    box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 18%, transparent);
}
.btn-review,.btn-main {
    text-align:center;
    border-radius:12px;
    padding:12px 14px;
    font-size:11px;
    font-weight:900;
    transition:transform .18s ease,filter .18s ease,background .18s ease;
}
.btn-review:hover,.btn-main:hover { transform:translateY(-1px); filter:brightness(1.05); }

.hero-premium-grid {
    background-image:
        linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
    background-size:34px 34px;
    mask-image:linear-gradient(to bottom,black 0%,rgba(0,0,0,.8) 55%,transparent 100%);
}
.hero-glass {
    background:linear-gradient(180deg,rgba(20,20,23,.82),rgba(12,12,14,.88));
    border:1px solid #27272b;
    box-shadow:0 24px 70px rgba(0,0,0,.30);
    backdrop-filter:blur(12px);
}

@media (max-width:1120px){
    .ultra-row,.ultra-row.rank1{
        grid-template-columns:minmax(280px,1.15fr) minmax(220px,.85fr) 1fr;
    }
    .row-actions{
        grid-column:1/-1;
        justify-content:flex-end;
        padding-top:12px;
        border-top:1px solid #242428;
    }
}
@media (max-width:760px){
    .ultra-row,.ultra-row.rank1{
        grid-template-columns:1fr;
        gap:15px;
        padding:20px;
    }
    .rank1 .brand-logo-box{
        width:104px;height:74px;
    }
    .brand-logo-box{
        width:88px;height:64px;
    }
    .row-actions{
        grid-column:auto;
        justify-content:stretch;
    }
    .row-actions a{flex:1}
}


/* Shared mobile navigation polish */
#mobile-menu {
    animation: mobileMenuIn .18s ease-out;
}
@keyframes mobileMenuIn {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}


/* =========================================================
   STRICT TWO-COLOR THEME: BLACK + GOLD
   ========================================================= */

:root {
    --bg-black: #050505;
    --bg-panel: #0f0f11;
    --bg-panel-2: #141417;
    --gold: #eab308;
}

/* No silver/bronze/brand-color accents in UI */
.ultra-row,
.ultra-row.rank1,
.ultra-row.rank2,
.ultra-row.rank3 {
    --accent: var(--gold) !important;
    border-color: #242428 !important;
}
.ultra-row.rank1,
.ultra-row.rank2,
.ultra-row.rank3 {
    border-color: rgba(234,179,8,.42) !important;
}

.ultra-row::before {
    background: var(--gold) !important;
    box-shadow: 0 0 18px rgba(234,179,8,.28) !important;
}
.ultra-row::after {
    background: var(--gold) !important;
}

.rank-orb {
    background: var(--gold) !important;
    color: #050505 !important;
    border: none !important;
}

.badge-unique,
.rating-pill {
    color: var(--gold) !important;
    border-color: rgba(234,179,8,.22) !important;
    background: rgba(234,179,8,.08) !important;
}

.bonus-panel i,
.text-brandYellow {
    color: var(--gold) !important;
}

.btn-main,
.bg-brandYellow,
.bg-yellow-500 {
    background: var(--gold) !important;
    color: #050505 !important;
}

.btn-main {
    box-shadow: 0 10px 24px rgba(234,179,8,.15) !important;
}

/* Logos become monochrome so the page stays literally black + gold */
.brand-logo-box,
.list-logo {
    background: #0b0b0d !important;
    border-color: rgba(234,179,8,.22) !important;
}

.brand-logo-box img,
.list-logo img,
.logo-img {
    filter:
        grayscale(1)
        brightness(.9)
        sepia(1)
        saturate(8)
        hue-rotate(2deg)
        brightness(1.08) !important;
    mix-blend-mode: screen;
}

/* Keep content/text neutral white/gray, but all decorative color is gold */
.geo-premium,
.geo-pill,
.catalog-meta span,
.bonus-panel,
.hero-glass,
.bookmaker-row,
.ultra-row {
    border-color: #26262a;
}

.geo-premium,
.geo-pill {
    background: #141417 !important;
    color: #d4d4d8 !important;
}

.hero-premium-grid {
    background-image:
        linear-gradient(rgba(234,179,8,.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(234,179,8,.018) 1px, transparent 1px) !important;
}

#mobile-menu a {
    border-color: transparent;
}
#mobile-menu a.bg-yellow-500\/10,
#mobile-menu a[class*="yellow"] {
    background: rgba(234,179,8,.08) !important;
    border-color: rgba(234,179,8,.20) !important;
}

/* Remove color variation from any special top positions */
.top-1,
.top-2,
.top-3,
.featured-1,
.featured-2,
.featured-3 {
    border-color: rgba(234,179,8,.30) !important;
}


/* =========================================================
   BALANCED PREMIUM THEME
   Structure unchanged.
   UI: black + gold + neutral whites/grays.
   Images/logos: original colors preserved.
   ========================================================= */

:root {
    --bg-black: #050505;
    --panel: #0f0f11;
    --panel-soft: #141417;
    --line: #26262a;
    --gold: #eab308;
    --text-main: #f4f4f5;
    --text-soft: #a1a1aa;
}

/* Restore original visual assets */
.brand-logo-box img,
.list-logo img,
.logo-img,
img {
    filter: none !important;
    mix-blend-mode: normal !important;
}

/* Logos keep their real colors, while container stays premium and neutral */
.brand-logo-box,
.list-logo {
    background: linear-gradient(180deg, #f8f8f8 0%, #ececec 100%) !important;
    border-color: rgba(255,255,255,.10) !important;
    box-shadow:
        0 10px 30px rgba(0,0,0,.25),
        inset 0 0 0 1px rgba(0,0,0,.04) !important;
}

/* Keep all page accents restrained */
.ultra-row,
.ultra-row.rank1,
.ultra-row.rank2,
.ultra-row.rank3 {
    --accent: var(--gold) !important;
    border-color: #252529 !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,.028), transparent 42%),
        linear-gradient(135deg,#111114 0%,#0b0b0d 100%) !important;
}

.ultra-row.rank1 {
    border-color: rgba(234,179,8,.48) !important;
    background:
        linear-gradient(135deg, rgba(234,179,8,.065), transparent 34%),
        linear-gradient(135deg,#121210 0%,#0b0b0d 100%) !important;
    box-shadow: 0 24px 70px rgba(234,179,8,.07) !important;
}

.ultra-row.rank2,
.ultra-row.rank3 {
    border-color: #2a2a2f !important;
}

.ultra-row::before {
    background: var(--gold) !important;
    box-shadow: 0 0 16px rgba(234,179,8,.20) !important;
}
.ultra-row::after {
    background: radial-gradient(circle, rgba(234,179,8,.12), transparent 68%) !important;
    opacity: .6 !important;
}

/* Rank numbers: uniform premium gold */
.rank-orb {
    background: linear-gradient(180deg, #f4c430 0%, #d9a800 100%) !important;
    color: #070707 !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.28) !important;
}

/* Badge / rating = gold, but calmer */
.badge-unique {
    color: #e8c54a !important;
    background: rgba(234,179,8,.055) !important;
    border-color: rgba(234,179,8,.18) !important;
}
.rating-pill {
    color: #f0c84b !important;
    background: rgba(234,179,8,.07) !important;
    border-color: rgba(234,179,8,.16) !important;
}

/* Bonus blocks gain depth via neutral grays rather than extra colors */
.bonus-panel {
    background:
        linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018)),
        #121215 !important;
    border-color: #2a2a2f !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
}
.bonus-panel i {
    color: var(--gold) !important;
}

/* GEO stays neutral */
.geo-premium,
.geo-pill {
    background: linear-gradient(180deg,#17171a,#131316) !important;
    border-color: #2a2a2f !important;
    color: #d4d4d8 !important;
}

/* Buttons */
.btn-main,
.bg-brandYellow,
.bg-yellow-500 {
    background: linear-gradient(180deg, #f1c232 0%, #d9a900 100%) !important;
    color: #070707 !important;
}
.btn-main {
    box-shadow: 0 10px 24px rgba(234,179,8,.13) !important;
}
.btn-review {
    background: linear-gradient(180deg,#18181b,#141417) !important;
    border-color: #303036 !important;
    color: #f4f4f5 !important;
}

/* Hero depth without adding colors */
.hero-glass {
    background:
        linear-gradient(180deg, rgba(255,255,255,.035), transparent 35%),
        rgba(15,15,17,.92) !important;
    border-color: #29292e !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.34) !important;
}

.hero-premium-grid {
    background-image:
        linear-gradient(rgba(255,255,255,.020) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.020) 1px, transparent 1px) !important;
}

/* Mobile menu */
#mobile-menu {
    background: rgba(15,15,17,.98) !important;
}
#mobile-menu a {
    background: transparent;
}
#mobile-menu a.bg-yellow-500\/10,
#mobile-menu a[class*="yellow"] {
    background: rgba(234,179,8,.065) !important;
    border-color: rgba(234,179,8,.16) !important;
}

/* Main text hierarchy */
.text-zinc-600 { color: #71717a !important; }
.text-zinc-500 { color: #8f8f97 !important; }
.text-zinc-400 { color: #b1b1b8 !important; }

/* Keep country / CTA imagery untouched */
section img {
    filter: none !important;
}


/* =========================================================
   PREMIUM BONUSES PAGE
   ========================================================= */

.bonus-hero-card {
    position: relative;
    overflow: hidden;
    border: 1px solid #2b2b30;
    background:
        linear-gradient(135deg, rgba(234,179,8,.09), transparent 42%),
        linear-gradient(180deg,#121214,#0b0b0d);
    box-shadow: 0 26px 70px rgba(0,0,0,.30);
}
.bonus-hero-card::after {
    content:"";
    position:absolute;
    width:280px;
    height:280px;
    right:-120px;
    top:-130px;
    border-radius:999px;
    background:rgba(234,179,8,.12);
    filter:blur(10px);
    pointer-events:none;
}

.offer-card {
    position: relative;
    overflow: hidden;
    border: 1px solid #252529;
    border-radius: 26px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.025), transparent 42%),
        linear-gradient(180deg,#111114,#0c0c0f);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.offer-card:hover {
    transform: translateY(-4px);
    border-color: rgba(234,179,8,.42);
    box-shadow: 0 22px 60px rgba(0,0,0,.28);
}
.offer-card.featured {
    border-color: rgba(234,179,8,.48);
    box-shadow: 0 22px 60px rgba(234,179,8,.07);
}
.offer-card::after {
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    border-radius:999px;
    right:-90px;
    top:-90px;
    background:rgba(234,179,8,.06);
    pointer-events:none;
}

.offer-logo {
    width:88px;
    height:62px;
    border-radius:16px;
    background:linear-gradient(180deg,#fafafa,#ececec);
    border:1px solid rgba(255,255,255,.10);
    padding:7px;
    box-shadow:0 10px 28px rgba(0,0,0,.22);
}
.offer-logo img {
    width:100%;
    height:100%;
    object-fit:contain;
    border-radius:8px;
}

.offer-badge {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 9px;
    border-radius:999px;
    border:1px solid rgba(234,179,8,.18);
    background:rgba(234,179,8,.07);
    color:#e8c54a;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.offer-value {
    font-size: clamp(28px, 4vw, 46px);
    line-height:1;
    font-weight:950;
    color:#fff;
    letter-spacing:-.035em;
}
.offer-sub {
    color:#eab308;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.offer-meta-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
}
.offer-meta {
    border:1px solid #29292e;
    background:#141417;
    border-radius:14px;
    padding:11px 12px;
}
.offer-meta .k {
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.11em;
    color:#71717a;
    font-weight:800;
}
.offer-meta .v {
    margin-top:4px;
    color:#f4f4f5;
    font-size:12px;
    font-weight:800;
}

.claim-btn {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    border-radius:14px;
    padding:14px 16px;
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#070707;
    font-size:13px;
    font-weight:950;
    box-shadow:0 12px 26px rgba(234,179,8,.16);
    transition:transform .18s ease, filter .18s ease;
}
.claim-btn:hover {
    transform:translateY(-1px);
    filter:brightness(1.04);
}
.secondary-link {
    color:#d4d4d8;
    font-size:12px;
    font-weight:800;
    text-align:center;
}
.secondary-link:hover { color:#fff; }

.condition-item {
    display:flex;
    align-items:flex-start;
    gap:9px;
    color:#a1a1aa;
    font-size:11px;
    line-height:1.45;
}
.condition-item i {
    color:#eab308;
    margin-top:2px;
}

.mini-offer-row {
    display:grid;
    grid-template-columns:minmax(240px,1fr) minmax(180px,.7fr) minmax(180px,.8fr) auto;
    gap:18px;
    align-items:center;
    padding:17px 18px;
    border:1px solid #252529;
    border-radius:20px;
    background:linear-gradient(180deg,#101013,#0d0d10);
    transition:transform .18s ease,border-color .18s ease;
}
.mini-offer-row:hover {
    transform:translateY(-2px);
    border-color:rgba(234,179,8,.38);
}
.mini-logo {
    width:68px;
    height:48px;
    border-radius:12px;
    background:#f5f5f5;
    padding:5px;
    flex:0 0 auto;
}
.mini-logo img {
    width:100%;
    height:100%;
    object-fit:contain;
    border-radius:7px;
}

@media (max-width: 900px) {
    .offer-meta-grid { grid-template-columns:1fr; }
    .mini-offer-row {
        grid-template-columns:1fr 1fr;
    }
    .mini-offer-actions {
        grid-column:1/-1;
    }
}
@media (max-width: 640px) {
    .mini-offer-row { grid-template-columns:1fr; }
    .mini-offer-actions { grid-column:auto; }
}


/* PREMIUM COUNTRIES PAGE */
.country-hero-card{position:relative;overflow:hidden;min-height:360px;border-radius:30px;border:1px solid #29292e;background:#0f0f11;box-shadow:0 26px 70px rgba(0,0,0,.30)}
.country-hero-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.country-hero-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,5,5,.96) 0%,rgba(5,5,5,.58) 48%,rgba(5,5,5,.16) 100%)}
.country-hero-content{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:24px}
.country-card{position:relative;overflow:hidden;min-height:330px;border-radius:28px;border:1px solid #26262a;background:#0f0f11;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.country-card:hover{transform:translateY(-5px);border-color:rgba(234,179,8,.42);box-shadow:0 24px 65px rgba(0,0,0,.31)}
.country-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.country-card:hover img{transform:scale(1.035)}
.country-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,5,5,.97) 0%,rgba(5,5,5,.75) 35%,rgba(5,5,5,.22) 75%,rgba(5,5,5,.06) 100%)}
.country-card-inner{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;padding:20px}
.country-flag{display:inline-flex;align-items:center;gap:8px;width:max-content;padding:8px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(15,15,17,.78);backdrop-filter:blur(10px);color:#fff;font-size:11px;font-weight:800}
.country-stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.country-stat{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:10px;background:rgba(20,20,23,.82);border:1px solid rgba(255,255,255,.08);color:#d4d4d8;font-size:10px;font-weight:700;backdrop-filter:blur(8px)}
.country-cta{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:16px;padding:12px 14px;border-radius:12px;background:linear-gradient(180deg,#f1c232,#d9a900);color:#060606;font-size:12px;font-weight:950;box-shadow:0 10px 24px rgba(234,179,8,.13)}
.country-info-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.country-info-box{border:1px solid #29292e;background:linear-gradient(180deg,#161619,#121215);border-radius:14px;padding:12px}
.country-info-box .k{color:#71717a;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.country-info-box .v{margin-top:4px;color:#f4f4f5;font-size:12px;font-weight:800}
@media(max-width:640px){.country-info-strip{grid-template-columns:1fr}.country-card{min-height:300px}}


/* FEATURED GEO LAYOUT */
.geo-featured-grid{
    display:grid;
    grid-template-columns:1.45fr .75fr .75fr;
    grid-template-rows:repeat(2,minmax(220px,1fr));
    gap:18px;
}
.geo-featured-main{
    grid-row:1 / span 2;
    min-height:470px;
}
.geo-small{
    min-height:225px;
}
.geo-card{
    position:relative;
    overflow:hidden;
    border-radius:28px;
    border:1px solid #26262a;
    background:#0f0f11;
    transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}
.geo-card:hover{
    transform:translateY(-4px);
    border-color:rgba(234,179,8,.42);
    box-shadow:0 24px 65px rgba(0,0,0,.30);
}
.geo-card img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .45s ease;
}
.geo-card:hover img{transform:scale(1.035)}
.geo-card::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top,rgba(5,5,5,.98) 0%,rgba(5,5,5,.72) 36%,rgba(5,5,5,.18) 76%,rgba(5,5,5,.04) 100%);
}
.geo-card-content{
    position:absolute;
    inset:0;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    padding:22px;
}
.geo-small .geo-card-content{padding:18px}
.geo-chip-top{
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:max-content;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(15,15,17,.80);
    border:1px solid rgba(255,255,255,.12);
    backdrop-filter:blur(10px);
    color:#fff;
    font-size:11px;
    font-weight:800;
}
.geo-kpis{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:13px;
}
.geo-kpi{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 9px;
    border-radius:10px;
    background:rgba(20,20,23,.82);
    border:1px solid rgba(255,255,255,.08);
    color:#d4d4d8;
    font-size:10px;
    font-weight:700;
    backdrop-filter:blur(8px);
}
.geo-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    margin-top:16px;
    padding:12px 14px;
    border-radius:12px;
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#060606;
    font-size:12px;
    font-weight:950;
    box-shadow:0 10px 24px rgba(234,179,8,.13);
}
.geo-trust-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}
.geo-trust-card{
    border:1px solid #28282d;
    border-radius:20px;
    background:linear-gradient(180deg,#111114,#0d0d10);
    padding:18px;
}
.geo-trust-icon{
    width:38px;
    height:38px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.08);
    border:1px solid rgba(234,179,8,.16);
    color:#eab308;
}
.geo-stats-bar{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
}
.geo-stats-box{
    border:1px solid #29292e;
    background:linear-gradient(180deg,#161619,#121215);
    border-radius:14px;
    padding:13px 14px;
}
.geo-stats-box .num{
    color:#fff;
    font-size:20px;
    font-weight:900;
}
.geo-stats-box .lab{
    color:#71717a;
    font-size:10px;
    margin-top:3px;
}
@media(max-width:980px){
    .geo-featured-grid{
        grid-template-columns:1fr 1fr;
        grid-template-rows:auto;
    }
    .geo-featured-main{
        grid-column:1 / -1;
        grid-row:auto;
        min-height:420px;
    }
    .geo-trust-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
    .geo-featured-grid{grid-template-columns:1fr}
    .geo-featured-main{grid-column:auto;min-height:360px}
    .geo-small{min-height:290px}
    .geo-stats-bar{grid-template-columns:1fr}
}


/* =========================================================
   LIGHT COUNTRIES SELECTOR
   ========================================================= */
.country-select-wrap{
    position:relative;
}
.country-select-wrap::before{
    content:"";
    position:absolute;
    inset:-60px -20px auto -20px;
    height:330px;
    pointer-events:none;
    background:
        radial-gradient(circle at 20% 20%,rgba(234,179,8,.08),transparent 32%),
        radial-gradient(circle at 80% 10%,rgba(255,255,255,.025),transparent 26%);
}

.country-choice-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}
.country-choice{
    position:relative;
    overflow:hidden;
    min-height:245px;
    padding:22px;
    border-radius:26px;
    border:1px solid #27272c;
    background:
        linear-gradient(145deg,rgba(255,255,255,.025),transparent 44%),
        linear-gradient(180deg,#111114,#0d0d10);
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.country-choice:hover{
    transform:translateY(-4px);
    border-color:rgba(234,179,8,.40);
    box-shadow:0 22px 55px rgba(0,0,0,.28);
}
.country-choice::after{
    content:"";
    position:absolute;
    width:150px;
    height:150px;
    border-radius:50%;
    right:-80px;
    top:-80px;
    background:rgba(234,179,8,.06);
    pointer-events:none;
}
.country-choice-flag{
    width:84px;
    height:84px;
    border-radius:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#17171a;
    border:1px solid #2b2b30;
    font-size:48px;
    box-shadow:0 12px 30px rgba(0,0,0,.22);
}
.country-choice-title{
    margin-top:22px;
    color:#fff;
    font-size:22px;
    font-weight:900;
    letter-spacing:-.02em;
}
.country-choice-text{
    margin-top:7px;
    color:#8f8f97;
    font-size:12px;
    line-height:1.55;
}
.country-choice-meta{
    margin-top:auto;
    padding-top:18px;
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.country-choice-count{
    color:#eab308;
    font-size:11px;
    font-weight:900;
}
.country-choice-arrow{
    width:38px;
    height:38px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.09);
    border:1px solid rgba(234,179,8,.17);
    color:#eab308;
    transition:background .2s ease,color .2s ease;
}
.country-choice:hover .country-choice-arrow{
    background:#eab308;
    color:#050505;
}

.country-simple-note{
    border:1px solid #26262a;
    border-radius:24px;
    background:linear-gradient(180deg,#111114,#0d0d10);
    padding:24px;
}
.country-coming-list{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}
.country-coming{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:9px 12px;
    border-radius:999px;
    border:1px solid #2b2b30;
    background:#151518;
    color:#c4c4ca;
    font-size:11px;
    font-weight:800;
}
@media(max-width:1000px){
    .country-choice-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
    .country-choice-grid{grid-template-columns:1fr}
    .country-choice{min-height:210px}
}


/* =========================================================
   PREMIUM FLAG / GEO CARDS
   ========================================================= */
.geo-pass-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}
.geo-pass{
    position:relative;
    overflow:hidden;
    min-height:290px;
    border-radius:28px;
    border:1px solid #27272c;
    background:
        linear-gradient(145deg,rgba(255,255,255,.028),transparent 44%),
        linear-gradient(180deg,#111114,#0c0c0f);
    transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}
.geo-pass:hover{
    transform:translateY(-5px);
    border-color:rgba(234,179,8,.42);
    box-shadow:0 26px 65px rgba(0,0,0,.30);
}
.geo-pass::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
        linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
    background-size:28px 28px;
    mask-image:linear-gradient(to right,black,transparent 78%);
    pointer-events:none;
}
.geo-pass::after{
    content:"";
    position:absolute;
    width:240px;
    height:240px;
    border-radius:50%;
    right:-110px;
    top:-110px;
    background:rgba(234,179,8,.075);
    filter:blur(4px);
    pointer-events:none;
}
.geo-pass-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:auto 1fr;
    gap:22px;
    min-height:290px;
    padding:24px;
    align-items:center;
}
.geo-flag-orb{
    position:relative;
    width:128px;
    height:128px;
    border-radius:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:
        linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
        #151518;
    border:1px solid #2c2c31;
    box-shadow:
        0 18px 45px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.04);
    font-size:70px;
}
.geo-flag-orb::after{
    content:"";
    position:absolute;
    inset:9px;
    border-radius:27px;
    border:1px solid rgba(234,179,8,.12);
    pointer-events:none;
}
.geo-code{
    position:absolute;
    right:22px;
    top:18px;
    color:rgba(255,255,255,.035);
    font-size:74px;
    line-height:1;
    font-weight:950;
    letter-spacing:-.06em;
    user-select:none;
}
.geo-pass-label{
    color:#eab308;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.14em;
}
.geo-pass-title{
    margin-top:7px;
    color:#fff;
    font-size:30px;
    line-height:1.05;
    font-weight:950;
    letter-spacing:-.035em;
}
.geo-pass-desc{
    margin-top:10px;
    max-width:430px;
    color:#9b9ba3;
    font-size:13px;
    line-height:1.55;
}
.geo-pass-bottom{
    margin-top:18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.geo-pass-meta{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.geo-pass-chip{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 9px;
    border-radius:9px;
    border:1px solid #2b2b30;
    background:#151518;
    color:#c7c7cd;
    font-size:10px;
    font-weight:750;
}
.geo-pass-arrow{
    width:44px;
    height:44px;
    flex:0 0 auto;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#050505;
    box-shadow:0 11px 26px rgba(234,179,8,.14);
    transition:transform .2s ease;
}
.geo-pass:hover .geo-pass-arrow{
    transform:translateX(3px);
}

.geo-pass.kazakhstan{
    border-color:rgba(234,179,8,.42);
    background:
        linear-gradient(135deg,rgba(234,179,8,.055),transparent 40%),
        linear-gradient(180deg,#121210,#0c0c0f);
}
.geo-pass.kazakhstan .geo-flag-orb{
    box-shadow:0 20px 50px rgba(234,179,8,.09), inset 0 1px 0 rgba(255,255,255,.04);
}

.geo-intro-strip{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:16px 18px;
    border:1px solid #26262a;
    border-radius:18px;
    background:linear-gradient(180deg,#111114,#0d0d10);
}
.geo-intro-stat{
    display:flex;
    align-items:center;
    gap:9px;
    color:#9a9aa2;
    font-size:11px;
    font-weight:700;
}
.geo-intro-stat strong{
    color:#fff;
    font-size:14px;
}
.geo-intro-icon{
    width:34px;
    height:34px;
    border-radius:11px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.08);
    border:1px solid rgba(234,179,8,.15);
    color:#eab308;
}

@media(max-width:900px){
    .geo-pass-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
    .geo-pass-inner{grid-template-columns:1fr;gap:16px}
    .geo-flag-orb{width:96px;height:96px;font-size:54px;border-radius:26px}
    .geo-flag-orb::after{border-radius:20px}
    .geo-code{font-size:58px}
    .geo-pass-title{font-size:26px}
    .geo-pass-bottom{align-items:flex-end}
    .geo-intro-strip{flex-direction:column;align-items:flex-start}
}


/* =========================================================
   COUNTRY DETAIL PAGE
   ========================================================= */
.country-detail-shell{
    max-width:1180px;
    margin:0 auto;
    padding:40px 16px 56px;
}
.country-breadcrumbs{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    color:#71717a;
    font-size:12px;
    font-weight:700;
}
.country-breadcrumbs a{color:#a1a1aa}
.country-breadcrumbs a:hover{color:#fff}

.country-hero-panel{
    margin-top:16px;
    border:1px solid #252529;
    border-radius:28px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.028),transparent 42%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:28px;
    box-shadow:0 20px 60px rgba(0,0,0,.28);
}
.country-hero-panel h1{
    color:#fff;
    font-size:clamp(34px,4.4vw,58px);
    line-height:1.02;
    font-weight:950;
    letter-spacing:-.04em;
}
.country-hero-panel p{
    max-width:860px;
    margin-top:16px;
    color:#9b9ba3;
    font-size:15px;
    line-height:1.7;
}
.country-hero-tags{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}
.country-hero-tag{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:9px 12px;
    border-radius:999px;
    background:#151518;
    border:1px solid #2a2a2f;
    color:#d4d4d8;
    font-size:11px;
    font-weight:800;
}
.country-hero-tag i{color:#eab308}

.country-promo{
    position:relative;
    overflow:hidden;
    margin-top:18px;
    border-radius:22px;
    border:1px solid rgba(234,179,8,.20);
    background:
        radial-gradient(circle at 85% 25%, rgba(234,179,8,.16), transparent 28%),
        linear-gradient(90deg,#0d1220 0%,#0d1320 34%,#111114 100%);
    padding:18px 22px;
}
.country-promo::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(120deg, transparent 0%, transparent 56%, rgba(234,179,8,.08) 100%);
    pointer-events:none;
}
.country-promo-inner{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}
.country-promo-label{
    color:#7ddc67;
    font-size:13px;
    font-weight:900;
    letter-spacing:.02em;
}
.country-promo-text{
    color:#fff;
    font-size:18px;
    font-weight:900;
}
.country-promo-sub{
    margin-top:5px;
    color:#8e99b4;
    font-size:12px;
}
.country-promo-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:146px;
    padding:13px 18px;
    border-radius:999px;
    background:linear-gradient(180deg,#8fd367,#6fc554);
    color:#081108;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.country-section{
    margin-top:22px;
    border:1px solid #252529;
    border-radius:28px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.024),transparent 44%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:22px;
    box-shadow:0 18px 52px rgba(0,0,0,.24);
}
.country-section h2{
    color:#fff;
    font-size:26px;
    font-weight:900;
    letter-spacing:-.02em;
}
.country-section-intro{
    margin-top:8px;
    color:#8f8f97;
    font-size:13px;
}

.rank-table-wrap{
    margin-top:18px;
    border:1px solid #28282d;
    border-radius:22px;
    overflow:hidden;
    background:#0f0f11;
}
.rank-table-head,.rank-table-row{
    display:grid;
    grid-template-columns:64px minmax(240px,1.6fr) 110px 110px 120px 170px 56px;
    gap:14px;
    align-items:center;
    padding:14px 18px;
}
.rank-table-head{
    background:linear-gradient(180deg,#17171a,#131316);
    border-bottom:1px solid #27272c;
    color:#7b7b84;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.rank-table-row{
    border-bottom:1px solid #1f1f24;
}
.rank-table-row:last-child{border-bottom:none}
.rank-table-row:hover{
    background:rgba(255,255,255,.02);
}
.rank-col-rank{
    display:flex;
    align-items:center;
    gap:10px;
    color:#fff;
    font-weight:900;
}
.rank-dot{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#eab308;
}
.bookmaker-cell{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}
.bookmaker-logo{
    width:64px;
    height:38px;
    border-radius:12px;
    background:#f5f5f5;
    border:1px solid rgba(255,255,255,.10);
    padding:5px 7px;
    flex:0 0 auto;
}
.bookmaker-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.bookmaker-meta{
    min-width:0;
}
.bookmaker-name{
    color:#fff;
    font-size:14px;
    font-weight:900;
    line-height:1.1;
}
.bookmaker-sub{
    margin-top:3px;
    color:#71717a;
    font-size:11px;
}
.rating-badge{
    display:inline-flex;
    align-items:center;
    gap:5px;
    color:#fff;
    font-weight:900;
}
.rating-badge i{color:#eab308}
.review-link{
    color:#c8c8ce;
    font-size:12px;
    font-weight:800;
}
.review-link:hover{color:#fff}
.like-pill{
    display:inline-flex;
    align-items:center;
    gap:6px;
    justify-content:center;
    padding:6px 10px;
    border-radius:999px;
    border:1px solid #2c2c32;
    background:#151518;
    color:#b5b5bc;
    font-size:11px;
    font-weight:800;
}
.like-pill i{color:#8a8a92}
.bonus-cell{
    display:flex;
    flex-direction:column;
    gap:3px;
}
.bonus-main{
    color:#fff;
    font-size:13px;
    font-weight:900;
}
.bonus-sub{
    color:#71717a;
    font-size:10px;
}
.rank-go{
    width:40px;
    height:40px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.08);
    border:1px solid rgba(234,179,8,.16);
    color:#eab308;
    transition:all .18s ease;
}
.rank-table-row:hover .rank-go{
    background:#eab308;
    color:#050505;
}

.country-detail-grid{
    margin-top:22px;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:22px;
}
.country-article-card,
.country-facts-card{
    border:1px solid #252529;
    border-radius:28px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.024),transparent 44%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:24px;
    box-shadow:0 18px 52px rgba(0,0,0,.24);
}
.country-article-card h2,
.country-facts-card h2{
    color:#fff;
    font-size:26px;
    font-weight:900;
    letter-spacing:-.02em;
}
.country-article-card p{
    margin-top:14px;
    color:#a0a0a8;
    font-size:14px;
    line-height:1.75;
}
.country-article-card strong{
    color:#fff;
}
.facts-table{
    margin-top:18px;
    border:1px solid #28282d;
    border-radius:20px;
    overflow:hidden;
}
.facts-row{
    display:grid;
    grid-template-columns:1fr 1.2fr;
    gap:14px;
    padding:14px 16px;
    border-bottom:1px solid #212126;
}
.facts-row:last-child{border-bottom:none}
.facts-key{
    color:#fff;
    font-size:12px;
    font-weight:800;
}
.facts-val{
    color:#a3a3ab;
    font-size:12px;
    line-height:1.55;
}
.facts-val a{color:#eab308}
@media(max-width:1080px){
    .rank-table-head,.rank-table-row{
        grid-template-columns:58px minmax(220px,1.6fr) 95px 90px 100px 150px 50px;
        gap:10px;
        padding:12px 14px;
    }
}
@media(max-width:860px){
    .country-detail-grid{grid-template-columns:1fr}
    .country-promo-inner{flex-direction:column;align-items:flex-start}
    .rank-table-head{display:none}
    .rank-table-row{
        grid-template-columns:1fr;
        gap:12px;
        padding:16px;
    }
    .rank-table-row > div,
    .rank-table-row > a{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
    }
    .rank-table-row .bookmaker-cell{
        justify-content:flex-start;
    }
    .rank-table-row .rank-go{
        width:100%;
        justify-content:center;
    }
}


/* =========================================================
   GERMANY PAGE — MOBILE POLISH
   Desktop layout stays unchanged.
   ========================================================= */
@media (max-width: 860px) {
    .country-detail-shell{
        padding:22px 12px 42px;
    }

    .country-breadcrumbs{
        gap:6px;
        font-size:10px;
        padding:0 2px;
    }

    .country-hero-panel{
        margin-top:12px;
        border-radius:22px;
        padding:20px 17px;
    }

    .country-hero-panel h1{
        font-size:32px;
        line-height:1.04;
        letter-spacing:-.035em;
    }

    .country-hero-panel p{
        margin-top:13px;
        font-size:13px;
        line-height:1.65;
    }

    .country-hero-tags{
        margin-top:17px;
        gap:7px;
    }

    .country-hero-tag{
        padding:8px 10px;
        font-size:10px;
    }

    .country-promo{
        margin-top:12px;
        padding:17px;
        border-radius:20px;
    }

    .country-promo-inner{
        gap:16px;
    }

    .country-promo-label{
        font-size:10px;
    }

    .country-promo-text{
        margin-top:4px;
        font-size:18px;
        line-height:1.2;
    }

    .country-promo-sub{
        font-size:11px;
        line-height:1.5;
    }

    .country-promo-btn{
        width:100%;
        min-width:0;
        padding:13px 16px;
    }

    .country-section{
        margin-top:14px;
        padding:16px 12px 12px;
        border-radius:22px;
    }

    .country-section h2{
        padding:0 4px;
        font-size:22px;
    }

    .country-section-intro{
        padding:0 4px;
        font-size:11px;
        line-height:1.5;
    }

    .rank-table-wrap{
        margin-top:14px;
        border:none;
        border-radius:0;
        background:transparent;
        overflow:visible;
    }

    .rank-table-head{
        display:none;
    }

    .rank-table-row{
        position:relative;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:10px;
        padding:14px;
        margin-bottom:10px;
        border:1px solid #28282d;
        border-radius:18px;
        background:
            linear-gradient(145deg,rgba(255,255,255,.026),transparent 48%),
            linear-gradient(180deg,#141417,#101013);
    }

    .rank-table-row:last-child{
        border-bottom:1px solid #28282d;
        margin-bottom:0;
    }

    .rank-table-row > div,
    .rank-table-row > a{
        display:flex;
        align-items:center;
        justify-content:flex-start;
        min-width:0;
    }

    /* Rank becomes a small floating label */
    .rank-col-rank{
        position:absolute;
        top:12px;
        right:12px;
        width:auto;
        min-width:32px;
        height:32px;
        padding:0 9px;
        justify-content:center !important;
        border-radius:10px;
        background:rgba(234,179,8,.08);
        border:1px solid rgba(234,179,8,.16);
        color:#eab308;
        font-size:11px;
        z-index:2;
    }

    .rank-col-rank .rank-dot{
        display:none;
    }

    /* Bookmaker header occupies full card width */
    .bookmaker-cell{
        grid-column:1 / -1;
        padding-right:48px;
        justify-content:flex-start !important;
        min-height:48px;
    }

    .bookmaker-logo{
        width:72px;
        height:44px;
        border-radius:12px;
    }

    .bookmaker-name{
        font-size:15px;
    }

    .bookmaker-sub{
        font-size:10px;
    }

    /* Mobile field cards */
    .rating-badge,
    .rank-table-row > .review-link,
    .rank-table-row > div:nth-child(5),
    .bonus-cell{
        min-height:54px;
        padding:10px 11px;
        border-radius:13px;
        border:1px solid #29292e;
        background:#161619;
        flex-direction:column;
        align-items:flex-start !important;
        justify-content:center !important;
        gap:4px;
    }

    .rating-badge::before{
        content:"Рейтинг";
        display:block;
        color:#71717a;
        font-size:8px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.1em;
    }

    .rank-table-row > .review-link::before{
        content:"Обзор";
        display:block;
        color:#71717a;
        font-size:8px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.1em;
    }

    .rank-table-row > .review-link{
        color:#fff;
    }

    .rank-table-row > .review-link::after{
        content:"Открыть";
        color:#fff;
        font-size:12px;
        font-weight:900;
    }

    .rank-table-row > .review-link{
        font-size:0;
    }

    .rank-table-row > div:nth-child(5)::before{
        content:"Лайки";
        display:block;
        color:#71717a;
        font-size:8px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.1em;
    }

    .like-pill{
        padding:0;
        border:none;
        background:transparent;
        font-size:12px;
    }

    .bonus-cell{
        grid-column:1 / -1;
        flex-direction:row !important;
        align-items:center !important;
        justify-content:space-between !important;
    }

    .bonus-cell::before{
        content:"Бонус";
        color:#71717a;
        font-size:8px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.1em;
    }

    .bonus-main{
        margin-left:auto;
        font-size:15px;
    }

    .bonus-sub{
        display:none;
    }

    /* Full width CTA at the bottom */
    .rank-table-row .rank-go{
        grid-column:1 / -1;
        width:100%;
        height:44px;
        border-radius:13px;
        background:linear-gradient(180deg,#f1c232,#d9a900);
        border:none;
        color:#050505;
        justify-content:center !important;
    }

    .rank-table-row .rank-go::before{
        content:"Перейти к букмекеру";
        margin-right:8px;
        font-size:11px;
        font-weight:950;
    }

    .country-detail-grid{
        grid-template-columns:1fr;
        gap:14px;
        margin-top:14px;
    }

    .country-article-card,
    .country-facts-card{
        padding:18px 16px;
        border-radius:22px;
    }

    .country-article-card h2,
    .country-facts-card h2{
        font-size:22px;
    }

    .country-article-card p{
        margin-top:12px;
        font-size:13px;
        line-height:1.7;
    }

    .facts-table{
        margin-top:14px;
        border-radius:16px;
    }

    .facts-row{
        grid-template-columns:1fr;
        gap:6px;
        padding:13px 14px;
    }

    .facts-key{
        font-size:10px;
        color:#777780;
        text-transform:uppercase;
        letter-spacing:.07em;
    }

    .facts-val{
        color:#e4e4e7;
        font-size:12px;
    }
}

@media (max-width: 390px) {
    .country-detail-shell{
        padding-left:9px;
        padding-right:9px;
    }

    .country-hero-panel h1{
        font-size:29px;
    }

    .country-hero-tag{
        width:100%;
        justify-content:flex-start;
    }

    .rank-table-row{
        padding:12px;
    }

    .bookmaker-logo{
        width:64px;
        height:40px;
    }
}


/* =========================================================
   GERMANY — LARGE BOOKMAKER CARDS
   ========================================================= */
.germany-shell{
    max-width:1180px;
    margin:0 auto;
    padding:36px 16px 56px;
}
.germany-top{
    border:1px solid #252529;
    border-radius:28px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.025),transparent 45%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:26px;
}
.germany-top h1{
    color:#fff;
    font-size:clamp(34px,4.4vw,56px);
    line-height:1.03;
    font-weight:950;
    letter-spacing:-.04em;
}
.germany-top p{
    max-width:900px;
    margin-top:14px;
    color:#96969f;
    font-size:14px;
    line-height:1.7;
}
.germany-meta{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:18px;
}
.germany-meta span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 11px;
    border-radius:999px;
    border:1px solid #2a2a2f;
    background:#151518;
    color:#c9c9cf;
    font-size:10px;
    font-weight:800;
}
.germany-meta i{color:#eab308}

.bookmaker-toolbar{
    margin-top:18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:14px 18px;
    border:1px solid #26262a;
    border-radius:18px;
    background:linear-gradient(180deg,#141417,#101013);
}
.bookmaker-toolbar-count{
    color:#d4d4d8;
    font-size:12px;
    font-weight:850;
}
.bookmaker-toolbar-sort{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}
.sort-btn{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 10px;
    border-radius:10px;
    color:#8d8d96;
    font-size:10px;
    font-weight:800;
}
.sort-btn.active{
    color:#eab308;
    background:rgba(234,179,8,.07);
    border:1px solid rgba(234,179,8,.14);
}

.bk-card-list{
    margin-top:18px;
    display:flex;
    flex-direction:column;
    gap:16px;
}
.bk-country-card{
    display:grid;
    grid-template-columns:220px minmax(0,1fr) 240px;
    min-height:300px;
    overflow:hidden;
    border-radius:24px;
    border:1px solid #27272c;
    background:linear-gradient(180deg,#111114,#0d0d10);
    box-shadow:0 18px 54px rgba(0,0,0,.24);
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.bk-country-card:hover{
    transform:translateY(-3px);
    border-color:rgba(234,179,8,.36);
    box-shadow:0 24px 64px rgba(0,0,0,.31);
}
.bk-brand-side{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:24px 18px;
    background:
        linear-gradient(180deg,rgba(255,255,255,.025),transparent),
        #0a0a0c;
    border-right:1px solid #232328;
}
.bk-brand-side::after{
    content:"";
    position:absolute;
    inset:auto 18px 18px;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(234,179,8,.32),transparent);
}
.bk-big-logo{
    width:150px;
    height:80px;
    padding:9px 12px;
    border-radius:18px;
    background:#f4f4f4;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 14px 30px rgba(0,0,0,.24);
}
.bk-big-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.bk-score-big{
    margin-top:24px;
    color:#fff;
    font-size:25px;
    font-weight:950;
}
.bk-score-stars{
    margin-top:8px;
    color:#eab308;
    font-size:17px;
    letter-spacing:2px;
}

.bk-main-side{
    padding:22px 24px;
}
.bk-title-line{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
}
.bk-title-line h2{
    color:#fff;
    font-size:27px;
    font-weight:950;
    letter-spacing:-.025em;
}
.bk-rating-orb{
    width:58px;
    height:58px;
    border-radius:50%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#050505;
    font-size:17px;
    font-weight:950;
    box-shadow:0 12px 28px rgba(234,179,8,.14);
}
.bk-rating-label{
    margin-top:8px;
    text-align:right;
    color:#eab308;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.09em;
}
.bk-feature-list{
    margin-top:18px;
    display:grid;
    gap:10px;
}
.bk-feature{
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:#d4d4d8;
    font-size:12px;
    line-height:1.45;
}
.bk-feature-icon{
    width:24px;
    height:24px;
    border-radius:50%;
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.10);
    border:1px solid rgba(234,179,8,.15);
    color:#eab308;
    font-size:10px;
}
.bk-feature.negative .bk-feature-icon{
    background:rgba(239,68,68,.08);
    border-color:rgba(239,68,68,.14);
    color:#ef4444;
}
.bk-geo-line{
    margin-top:16px;
    display:flex;
    align-items:center;
    gap:9px;
    color:#d4d4d8;
    font-size:12px;
    font-weight:800;
}
.bk-geo-flag{
    font-size:21px;
}
.bk-actions{
    display:flex;
    gap:10px;
    margin-top:18px;
}
.bk-action-main,
.bk-action-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    padding:0 18px;
    border-radius:12px;
    font-size:12px;
    font-weight:950;
}
.bk-action-main{
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#050505;
}
.bk-action-secondary{
    background:#17171a;
    border:1px solid #2b2b30;
    color:#fff;
}

.bk-info-side{
    padding:22px 20px;
    border-left:1px solid #232328;
    background:linear-gradient(180deg,#101013,#0d0d10);
}
.bk-info-block + .bk-info-block{
    margin-top:18px;
}
.bk-info-title{
    color:#8f8f97;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.bk-info-icons{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:9px;
}
.flag-chip{
    width:34px;
    height:25px;
    border-radius:6px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#17171a;
    border:1px solid #2b2b30;
    font-size:17px;
}
.pay-chip,
.bet-chip{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 8px;
    border-radius:8px;
    background:#17171a;
    border:1px solid #2b2b30;
    color:#c9c9cf;
    font-size:10px;
    font-weight:800;
}
.pay-chip i,
.bet-chip i{color:#eab308}

@media(max-width:980px){
    .bk-country-card{
        grid-template-columns:190px minmax(0,1fr);
    }
    .bk-info-side{
        grid-column:1 / -1;
        border-left:none;
        border-top:1px solid #232328;
        display:grid;
        grid-template-columns:repeat(3,1fr);
        gap:16px;
    }
    .bk-info-block + .bk-info-block{margin-top:0}
}
@media(max-width:680px){
    .germany-shell{padding:22px 10px 44px}
    .germany-top{padding:19px 16px;border-radius:22px}
    .germany-top h1{font-size:31px}
    .germany-top p{font-size:12px}
    .bookmaker-toolbar{
        align-items:flex-start;
        flex-direction:column;
        padding:12px 13px;
    }
    .bk-country-card{
        grid-template-columns:1fr;
        border-radius:20px;
    }
    .bk-brand-side{
        min-height:180px;
        border-right:none;
        border-bottom:1px solid #232328;
    }
    .bk-big-logo{width:140px;height:72px}
    .bk-score-big{margin-top:16px;font-size:22px}
    .bk-main-side{padding:18px 16px}
    .bk-title-line h2{font-size:23px}
    .bk-rating-orb{width:50px;height:50px;font-size:15px}
    .bk-feature-list{gap:8px}
    .bk-feature{font-size:11px}
    .bk-actions{flex-direction:column}
    .bk-action-main,.bk-action-secondary{width:100%}
    .bk-info-side{
        grid-template-columns:1fr;
        gap:15px;
        padding:17px 16px;
    }
}

.europe-hero{border-bottom:1px solid #222226;background:radial-gradient(circle at 85% 10%,rgba(234,179,8,.10),transparent 28%),linear-gradient(180deg,#050505 0%,#0a0a0c 55%,#0f0f11 100%)}
.europe-hero-inner,.europe-shell{max-width:1180px;margin:0 auto;padding-left:16px;padding-right:16px}
.europe-hero-inner{padding-top:62px;padding-bottom:54px}
.europe-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;border:1px solid rgba(234,179,8,.18);background:rgba(234,179,8,.07);color:#eab308;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.europe-hero h1{max-width:900px;margin-top:18px;color:#fff;font-size:clamp(40px,6vw,72px);line-height:1.01;font-weight:950;letter-spacing:-.045em}
.europe-hero p{max-width:820px;margin-top:18px;color:#9b9ba3;font-size:15px;line-height:1.75}
.europe-hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.europe-stat{min-width:145px;padding:12px 14px;border:1px solid #28282d;border-radius:14px;background:#121215}
.europe-stat strong{display:block;color:#fff;font-size:19px;font-weight:950}.europe-stat span{display:block;margin-top:2px;color:#71717a;font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.europe-shell{padding-top:34px;padding-bottom:56px}
.europe-section{border:1px solid #252529;border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.024),transparent 46%),linear-gradient(180deg,#111114,#0c0c0f);padding:22px}.europe-section+.europe-section{margin-top:18px}
.europe-section h2{color:#fff;font-size:27px;font-weight:950;letter-spacing:-.025em}.europe-section p.section-lead{margin-top:8px;max-width:830px;color:#8f8f97;font-size:13px;line-height:1.65}
.europe-top-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.europe-bk-card{border:1px solid #29292e;border-radius:20px;background:linear-gradient(180deg,#151518,#101013);padding:18px}.europe-bk-logo{width:82px;height:48px;border-radius:12px;background:#f5f5f5;padding:6px}.europe-bk-logo img{width:100%;height:100%;object-fit:contain}.europe-bk-name{margin-top:15px;color:#fff;font-size:18px;font-weight:900}.europe-bk-meta{margin-top:7px;color:#8f8f97;font-size:11px}.europe-bk-rating{margin-top:14px;display:flex;align-items:center;gap:7px;color:#fff;font-size:12px;font-weight:900}.europe-bk-rating i{color:#eab308}
.europe-country-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:18px}.europe-country{position:relative;min-height:158px;padding:16px;border-radius:18px;border:1px solid #29292e;background:linear-gradient(180deg,#151518,#101013);transition:.2s}.europe-country:hover{transform:translateY(-3px);border-color:rgba(234,179,8,.38)}.europe-country-flag{font-size:38px}.europe-country-name{margin-top:18px;color:#fff;font-size:16px;font-weight:900}.europe-country-sub{margin-top:4px;color:#71717a;font-size:10px}.europe-country-arrow{position:absolute;right:14px;bottom:14px;width:34px;height:34px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(234,179,8,.08);border:1px solid rgba(234,179,8,.16);color:#eab308}
.europe-copy{margin-top:18px;display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.europe-copy-card{border:1px solid #29292e;border-radius:20px;background:#121215;padding:18px}.europe-copy-card h3{color:#fff;font-size:18px;font-weight:900}.europe-copy-card p{margin-top:10px;color:#9898a1;font-size:12px;line-height:1.75}.europe-language{display:flex;align-items:flex-start;gap:12px}.europe-language-icon{width:42px;height:42px;border-radius:13px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:rgba(234,179,8,.08);border:1px solid rgba(234,179,8,.15);color:#eab308}
.europe-faq{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.europe-faq-item{border:1px solid #29292e;border-radius:17px;background:#121215;padding:16px}.europe-faq-item h3{color:#fff;font-size:14px;font-weight:900}.europe-faq-item p{margin-top:8px;color:#8f8f97;font-size:11px;line-height:1.65}
@media(max-width:900px){.europe-top-grid{grid-template-columns:1fr}.europe-country-grid{grid-template-columns:repeat(2,1fr)}.europe-copy{grid-template-columns:1fr}}
@media(max-width:600px){.europe-hero-inner{padding:44px 12px 38px}.europe-hero h1{font-size:38px}.europe-shell{padding:24px 10px 44px}.europe-section{padding:16px;border-radius:21px}.europe-country-grid{grid-template-columns:1fr}.europe-faq{grid-template-columns:1fr}}


/* =========================================================
   BONUS PAGE — LARGE OFFER CARDS
   Inspired by Germany country cards, adapted for bonuses
   ========================================================= */
.bonus-page-shell{
    max-width:1180px;
    margin:0 auto;
    padding:36px 16px 56px;
}
.bonus-page-hero{
    border:1px solid #252529;
    border-radius:28px;
    background:
        radial-gradient(circle at 88% 12%,rgba(234,179,8,.11),transparent 27%),
        linear-gradient(145deg,rgba(255,255,255,.025),transparent 44%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:28px;
    box-shadow:0 22px 64px rgba(0,0,0,.28);
}
.bonus-page-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 10px;
    border-radius:999px;
    border:1px solid rgba(234,179,8,.18);
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}
.bonus-page-hero h1{
    max-width:900px;
    margin-top:16px;
    color:#fff;
    font-size:clamp(36px,5vw,60px);
    line-height:1.02;
    font-weight:950;
    letter-spacing:-.04em;
}
.bonus-page-hero p{
    max-width:840px;
    margin-top:14px;
    color:#9797a0;
    font-size:14px;
    line-height:1.7;
}
.bonus-page-stats{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}
.bonus-page-stat{
    min-width:150px;
    padding:11px 13px;
    border:1px solid #29292e;
    border-radius:13px;
    background:#141417;
}
.bonus-page-stat strong{
    display:block;
    color:#fff;
    font-size:18px;
    font-weight:950;
}
.bonus-page-stat span{
    display:block;
    margin-top:2px;
    color:#71717a;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.bonus-toolbar{
    margin-top:18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:14px 18px;
    border:1px solid #26262a;
    border-radius:18px;
    background:linear-gradient(180deg,#141417,#101013);
}
.bonus-toolbar-count{
    color:#d4d4d8;
    font-size:12px;
    font-weight:850;
}
.bonus-toolbar-filters{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.bonus-filter{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 10px;
    border-radius:10px;
    color:#85858f;
    font-size:10px;
    font-weight:800;
    border:1px solid transparent;
}
.bonus-filter.active{
    color:#eab308;
    background:rgba(234,179,8,.07);
    border-color:rgba(234,179,8,.14);
}

.bonus-card-list{
    margin-top:18px;
    display:flex;
    flex-direction:column;
    gap:16px;
}
.bonus-offer-card{
    display:grid;
    grid-template-columns:220px minmax(0,1fr) 250px;
    min-height:310px;
    overflow:hidden;
    border-radius:24px;
    border:1px solid #27272c;
    background:linear-gradient(180deg,#111114,#0d0d10);
    box-shadow:0 18px 54px rgba(0,0,0,.24);
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.bonus-offer-card:hover{
    transform:translateY(-3px);
    border-color:rgba(234,179,8,.40);
    box-shadow:0 24px 64px rgba(0,0,0,.31);
}
.bonus-offer-card.featured{
    border-color:rgba(234,179,8,.42);
    box-shadow:0 24px 64px rgba(234,179,8,.07);
}

.bonus-brand-side{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:24px 18px;
    background:
        linear-gradient(180deg,rgba(255,255,255,.025),transparent),
        #0a0a0c;
    border-right:1px solid #232328;
}
.bonus-big-logo{
    width:150px;
    height:80px;
    padding:9px 12px;
    border-radius:18px;
    background:#f5f5f5;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 14px 30px rgba(0,0,0,.24);
}
.bonus-big-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.bonus-brand-badge{
    margin-top:19px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(234,179,8,.08);
    border:1px solid rgba(234,179,8,.16);
    color:#eab308;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.bonus-main-side{
    padding:22px 24px;
}
.bonus-title-line{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
}
.bonus-bookmaker-name{
    color:#fff;
    font-size:26px;
    font-weight:950;
    letter-spacing:-.025em;
}
.bonus-type{
    margin-top:3px;
    color:#777780;
    font-size:11px;
    font-weight:800;
}
.bonus-value-box{
    flex:0 0 auto;
    text-align:right;
}
.bonus-value{
    color:#fff;
    font-size:30px;
    line-height:1;
    font-weight:950;
    letter-spacing:-.03em;
}
.bonus-value-label{
    margin-top:7px;
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.bonus-feature-list{
    margin-top:18px;
    display:grid;
    gap:10px;
}
.bonus-feature{
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:#d4d4d8;
    font-size:12px;
    line-height:1.45;
}
.bonus-feature-icon{
    width:24px;
    height:24px;
    border-radius:50%;
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.10);
    border:1px solid rgba(234,179,8,.15);
    color:#eab308;
    font-size:10px;
}
.bonus-geo-line{
    margin-top:16px;
    display:flex;
    align-items:center;
    gap:9px;
    color:#d4d4d8;
    font-size:12px;
    font-weight:800;
}
.bonus-actions{
    display:flex;
    gap:10px;
    margin-top:18px;
}
.bonus-action-main,
.bonus-action-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    padding:0 18px;
    border-radius:12px;
    font-size:12px;
    font-weight:950;
}
.bonus-action-main{
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#050505;
    box-shadow:0 10px 24px rgba(234,179,8,.12);
}
.bonus-action-secondary{
    background:#17171a;
    border:1px solid #2b2b30;
    color:#fff;
}

.bonus-info-side{
    padding:22px 20px;
    border-left:1px solid #232328;
    background:linear-gradient(180deg,#101013,#0d0d10);
}
.bonus-info-block + .bonus-info-block{
    margin-top:18px;
}
.bonus-info-title{
    color:#8f8f97;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.bonus-info-value{
    margin-top:7px;
    color:#fff;
    font-size:14px;
    font-weight:900;
}
.bonus-info-sub{
    margin-top:4px;
    color:#71717a;
    font-size:10px;
    line-height:1.45;
}
.bonus-tag-row{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:8px;
}
.bonus-tag{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 8px;
    border-radius:8px;
    background:#17171a;
    border:1px solid #2b2b30;
    color:#c9c9cf;
    font-size:10px;
    font-weight:800;
}
.bonus-tag i{color:#eab308}

.bonus-note{
    margin-top:20px;
    border:1px solid #252529;
    border-radius:22px;
    background:linear-gradient(180deg,#111114,#0d0d10);
    padding:20px;
}
.bonus-note h2{
    color:#fff;
    font-size:22px;
    font-weight:950;
}
.bonus-note p{
    margin-top:9px;
    color:#8f8f97;
    font-size:12px;
    line-height:1.7;
}

@media(max-width:980px){
    .bonus-offer-card{
        grid-template-columns:190px minmax(0,1fr);
    }
    .bonus-info-side{
        grid-column:1 / -1;
        border-left:none;
        border-top:1px solid #232328;
        display:grid;
        grid-template-columns:repeat(3,1fr);
        gap:16px;
    }
    .bonus-info-block + .bonus-info-block{margin-top:0}
}
@media(max-width:680px){
    .bonus-page-shell{padding:22px 10px 44px}
    .bonus-page-hero{padding:19px 16px;border-radius:22px}
    .bonus-page-hero h1{font-size:32px}
    .bonus-page-hero p{font-size:12px}
    .bonus-toolbar{
        align-items:flex-start;
        flex-direction:column;
        padding:12px 13px;
    }
    .bonus-offer-card{
        grid-template-columns:1fr;
        border-radius:20px;
    }
    .bonus-brand-side{
        min-height:170px;
        border-right:none;
        border-bottom:1px solid #232328;
    }
    .bonus-big-logo{width:140px;height:72px}
    .bonus-main-side{padding:18px 16px}
    .bonus-title-line{gap:10px}
    .bonus-bookmaker-name{font-size:23px}
    .bonus-value{font-size:25px}
    .bonus-feature{font-size:11px}
    .bonus-actions{flex-direction:column}
    .bonus-action-main,.bonus-action-secondary{width:100%}
    .bonus-info-side{
        grid-template-columns:1fr;
        gap:15px;
        padding:17px 16px;
    }
}


/* =========================================================
   EUROPE PREMIUM PAGE
   ========================================================= */
.eu-page{
    max-width:1180px;
    margin:0 auto;
    padding:38px 16px 56px;
}
.eu-hero{
    position:relative;
    overflow:hidden;
    border:1px solid #27272c;
    border-radius:30px;
    background:
        radial-gradient(circle at 82% 18%,rgba(234,179,8,.13),transparent 27%),
        linear-gradient(145deg,rgba(255,255,255,.026),transparent 46%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:30px;
    box-shadow:0 24px 70px rgba(0,0,0,.30);
}
.eu-hero::after{
    content:"EU";
    position:absolute;
    right:24px;
    bottom:-18px;
    color:rgba(255,255,255,.025);
    font-size:180px;
    line-height:1;
    font-weight:950;
    letter-spacing:-.08em;
    pointer-events:none;
}
.eu-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 10px;
    border-radius:999px;
    border:1px solid rgba(234,179,8,.18);
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}
.eu-hero h1{
    position:relative;
    z-index:2;
    max-width:860px;
    margin-top:18px;
    color:#fff;
    font-size:clamp(38px,5vw,64px);
    line-height:1.01;
    font-weight:950;
    letter-spacing:-.045em;
}
.eu-hero p{
    position:relative;
    z-index:2;
    max-width:840px;
    margin-top:16px;
    color:#9b9ba3;
    font-size:14px;
    line-height:1.75;
}
.eu-stat-row{
    position:relative;
    z-index:2;
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}
.eu-stat{
    min-width:145px;
    padding:11px 13px;
    border:1px solid #29292e;
    border-radius:14px;
    background:#141417;
}
.eu-stat strong{
    display:block;
    color:#fff;
    font-size:20px;
    font-weight:950;
}
.eu-stat span{
    display:block;
    margin-top:2px;
    color:#71717a;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.eu-section{
    margin-top:18px;
    border:1px solid #252529;
    border-radius:26px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.022),transparent 46%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:22px;
}
.eu-section h2{
    color:#fff;
    font-size:27px;
    font-weight:950;
    letter-spacing:-.025em;
}
.eu-lead{
    margin-top:8px;
    max-width:840px;
    color:#8f8f97;
    font-size:13px;
    line-height:1.7;
}

/* Top 3 */
.eu-top-grid{
    display:grid;
    grid-template-columns:1.1fr 1fr 1fr;
    gap:14px;
    margin-top:18px;
}
.eu-top-card{
    position:relative;
    overflow:hidden;
    min-height:240px;
    border:1px solid #29292e;
    border-radius:22px;
    background:linear-gradient(180deg,#151518,#101013);
    padding:18px;
    transition:.22s ease;
}
.eu-top-card:hover{
    transform:translateY(-3px);
    border-color:rgba(234,179,8,.36);
}
.eu-top-card.featured{
    border-color:rgba(234,179,8,.42);
    background:
        linear-gradient(135deg,rgba(234,179,8,.06),transparent 40%),
        linear-gradient(180deg,#151510,#101013);
}
.eu-top-rank{
    position:absolute;
    right:16px;
    top:14px;
    color:rgba(255,255,255,.05);
    font-size:54px;
    font-weight:950;
}
.eu-top-logo{
    width:88px;
    height:52px;
    border-radius:13px;
    background:#f4f4f4;
    padding:6px;
}
.eu-top-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.eu-top-name{
    margin-top:16px;
    color:#fff;
    font-size:20px;
    font-weight:950;
}
.eu-top-sub{
    margin-top:4px;
    color:#7c7c85;
    font-size:10px;
}
.eu-top-score{
    margin-top:16px;
    display:flex;
    align-items:center;
    gap:7px;
    color:#fff;
    font-size:13px;
    font-weight:900;
}
.eu-top-score i{color:#eab308}
.eu-top-tags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:14px;
}
.eu-top-tag{
    padding:6px 8px;
    border-radius:8px;
    border:1px solid #2b2b30;
    background:#17171a;
    color:#c9c9cf;
    font-size:9px;
    font-weight:800;
}

/* Countries */
.eu-country-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:12px;
    margin-top:18px;
}
.eu-country-card{
    position:relative;
    overflow:hidden;
    min-height:190px;
    padding:16px;
    border-radius:20px;
    border:1px solid #29292e;
    background:
        linear-gradient(145deg,rgba(255,255,255,.02),transparent),
        linear-gradient(180deg,#151518,#101013);
    transition:.22s ease;
}
.eu-country-card:hover{
    transform:translateY(-3px);
    border-color:rgba(234,179,8,.40);
}
.eu-country-code{
    position:absolute;
    right:12px;
    top:10px;
    color:rgba(255,255,255,.035);
    font-size:46px;
    font-weight:950;
}
.eu-country-flag{
    font-size:42px;
}
.eu-country-name{
    margin-top:18px;
    color:#fff;
    font-size:17px;
    font-weight:950;
}
.eu-country-desc{
    margin-top:5px;
    color:#74747d;
    font-size:10px;
    line-height:1.45;
}
.eu-country-arrow{
    position:absolute;
    right:14px;
    bottom:14px;
    width:36px;
    height:36px;
    border-radius:11px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.08);
    border:1px solid rgba(234,179,8,.16);
    color:#eab308;
}

/* Language/facts */
.eu-info-grid{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:16px;
    margin-top:18px;
}
.eu-info-card{
    border:1px solid #29292e;
    border-radius:20px;
    background:#121215;
    padding:18px;
}
.eu-info-card h3{
    color:#fff;
    font-size:18px;
    font-weight:950;
}
.eu-info-card p{
    margin-top:9px;
    color:#96969f;
    font-size:12px;
    line-height:1.75;
}
.eu-facts{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:14px;
}
.eu-fact{
    border:1px solid #29292e;
    border-radius:14px;
    background:#151518;
    padding:12px;
}
.eu-fact .k{
    color:#71717a;
    font-size:8px;
    text-transform:uppercase;
    letter-spacing:.1em;
    font-weight:900;
}
.eu-fact .v{
    margin-top:5px;
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.eu-faq{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:18px;
}
.eu-faq-item{
    border:1px solid #29292e;
    border-radius:17px;
    background:#121215;
    padding:16px;
}
.eu-faq-item h3{
    color:#fff;
    font-size:14px;
    font-weight:900;
}
.eu-faq-item p{
    margin-top:8px;
    color:#8f8f97;
    font-size:11px;
    line-height:1.65;
}

@media(max-width:900px){
    .eu-top-grid{grid-template-columns:1fr}
    .eu-country-grid{grid-template-columns:repeat(2,1fr)}
    .eu-info-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
    .eu-page{padding:24px 10px 44px}
    .eu-hero{padding:20px 16px;border-radius:22px}
    .eu-hero h1{font-size:34px}
    .eu-hero p{font-size:12px}
    .eu-section{padding:16px;border-radius:21px}
    .eu-country-grid{grid-template-columns:1fr}
    .eu-facts{grid-template-columns:1fr}
    .eu-faq{grid-template-columns:1fr}
}


/* =========================================================
   COUNTRIES HUB — compact ranking + multi-column country list
   ========================================================= */
.ch-page{
    max-width:1180px;
    margin:0 auto;
    padding:36px 16px 56px;
}
.ch-hero{
    position:relative;
    overflow:hidden;
    border:1px solid #27272c;
    border-radius:30px;
    background:
        radial-gradient(circle at 84% 14%,rgba(234,179,8,.12),transparent 28%),
        linear-gradient(145deg,rgba(255,255,255,.026),transparent 46%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:28px;
    box-shadow:0 24px 70px rgba(0,0,0,.30);
}
.ch-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 10px;
    border-radius:999px;
    border:1px solid rgba(234,179,8,.18);
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}
.ch-hero h1{
    max-width:860px;
    margin-top:18px;
    color:#fff;
    font-size:clamp(36px,5vw,58px);
    line-height:1.03;
    font-weight:950;
    letter-spacing:-.04em;
}
.ch-hero p{
    max-width:860px;
    margin-top:14px;
    color:#9a9aa3;
    font-size:14px;
    line-height:1.75;
}
.ch-hero-stats{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}
.ch-stat{
    min-width:150px;
    padding:11px 13px;
    border:1px solid #29292e;
    border-radius:14px;
    background:#141417;
}
.ch-stat strong{
    display:block;
    color:#fff;
    font-size:18px;
    font-weight:950;
}
.ch-stat span{
    display:block;
    margin-top:2px;
    color:#71717a;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.ch-section{
    margin-top:18px;
    border:1px solid #252529;
    border-radius:26px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.022),transparent 46%),
        linear-gradient(180deg,#111114,#0c0c0f);
    padding:22px;
}
.ch-section h2{
    color:#fff;
    font-size:26px;
    font-weight:950;
    letter-spacing:-.025em;
}
.ch-lead{
    margin-top:8px;
    max-width:860px;
    color:#8f8f97;
    font-size:13px;
    line-height:1.7;
}

/* Mini rating board */
.ch-mini-board{
    margin-top:16px;
    overflow:hidden;
    border:1px solid #2a2a2f;
    border-radius:22px;
    background:#121215;
}
.ch-mini-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px;
    border-bottom:1px solid #232328;
    background:linear-gradient(180deg,#151518,#111114);
}
.ch-mini-title{
    color:#fff;
    font-size:16px;
    font-weight:900;
}
.ch-mini-sort{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.ch-mini-sort span{
    color:#8a8a92;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.ch-mini-sort .active{
    color:#eab308;
}
.ch-mini-table{
    width:100%;
}
.ch-mini-head,
.ch-mini-row{
    display:grid;
    grid-template-columns:52px 1.6fr .9fr .8fr .9fr;
    gap:10px;
    align-items:center;
    padding:12px 16px;
}
.ch-mini-head{
    color:#75757e;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.1em;
    border-bottom:1px solid #202025;
}
.ch-mini-row{
    border-bottom:1px solid #1d1d22;
}
.ch-mini-row:last-child{
    border-bottom:none;
}
.ch-rank{
    color:#eab308;
    font-size:12px;
    font-weight:950;
}
.ch-bk{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
}
.ch-bk-logo{
    width:38px;
    height:26px;
    padding:3px 5px;
    border-radius:8px;
    background:#f4f4f4;
    flex:0 0 auto;
}
.ch-bk-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.ch-bk-name{
    color:#fff;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.ch-score{
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.ch-score i{color:#eab308;margin-right:6px}
.ch-link{
    color:#8f8f97;
    font-size:11px;
    font-weight:800;
}
.ch-bonus{
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    gap:6px;
    color:#fff;
    font-size:11px;
    font-weight:900;
}
.ch-bonus i{color:#eab308}

/* Countries directory */
.ch-directory{
    margin-top:16px;
    border:1px solid #2a2a2f;
    border-radius:22px;
    background:#121215;
    padding:18px;
}
.ch-directory-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:6px 24px;
}
.ch-country-link{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:34px;
    padding:6px 0;
    border-bottom:1px dashed rgba(255,255,255,.05);
    color:#d4d4d8;
    font-size:12px;
    font-weight:700;
    transition:.18s ease;
}
.ch-country-link:hover{
    color:#eab308;
    transform:translateX(2px);
}
.ch-country-link small{
    color:#6f6f78;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.ch-country-link:hover small{
    color:#b9b9c0;
}

.ch-bottom-copy{
    margin-top:16px;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:16px;
}
.ch-copy-card{
    border:1px solid #2a2a2f;
    border-radius:20px;
    background:#121215;
    padding:18px;
}
.ch-copy-card h3{
    color:#fff;
    font-size:18px;
    font-weight:950;
}
.ch-copy-card p{
    margin-top:10px;
    color:#9898a1;
    font-size:12px;
    line-height:1.75;
}
.ch-chip-wrap{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:12px;
}
.ch-chip{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 10px;
    border-radius:10px;
    border:1px solid #2b2b30;
    background:#17171a;
    color:#d4d4d8;
    font-size:10px;
    font-weight:800;
}
.ch-chip i{color:#eab308}

@media(max-width:980px){
    .ch-mini-head,.ch-mini-row{
        grid-template-columns:48px 1.5fr .8fr .8fr;
    }
    .ch-mini-head div:nth-child(5),
    .ch-mini-row div:nth-child(5){
        display:none;
    }
    .ch-directory-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .ch-bottom-copy{
        grid-template-columns:1fr;
    }
}
@media(max-width:640px){
    .ch-page{padding:22px 10px 44px}
    .ch-hero{padding:20px 16px;border-radius:22px}
    .ch-hero h1{font-size:31px}
    .ch-hero p{font-size:12px}
    .ch-section{padding:16px;border-radius:21px}
    .ch-mini-top{
        align-items:flex-start;
        flex-direction:column;
    }
    .ch-mini-head{
        display:none;
    }
    .ch-mini-row{
        grid-template-columns:1fr;
        gap:8px;
        padding:14px 14px;
    }
    .ch-rank{font-size:11px}
    .ch-bk-name{font-size:13px}
    .ch-score,.ch-link,.ch-bonus{font-size:11px}
    .ch-directory-grid{
        grid-template-columns:1fr;
        gap:0;
    }
}


/* =========================================================
   COUNTRIES PAGE — bookmaker list unified with Bookmakers page
   ========================================================= */
.ch-bookmakers-list{
    margin-top:18px;
    display:flex;
    flex-direction:column;
    gap:12px;
}
.ch-bookmaker-row{
    display:grid;
    grid-template-columns:180px minmax(0,1fr) 170px;
    align-items:center;
    gap:18px;
    min-height:118px;
    padding:16px 18px;
    border:1px solid #29292e;
    border-radius:20px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.02),transparent 48%),
        linear-gradient(180deg,#151518,#101013);
    transition:transform .2s ease,border-color .2s ease;
}
.ch-bookmaker-row:hover{
    transform:translateY(-2px);
    border-color:rgba(234,179,8,.34);
}
.ch-bookmaker-brand{
    display:flex;
    align-items:center;
    gap:12px;
}
.ch-bookmaker-logo{
    width:86px;
    height:54px;
    flex:0 0 auto;
    border-radius:13px;
    padding:7px;
    background:#f4f4f4;
}
.ch-bookmaker-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.ch-bookmaker-rank{
    color:#eab308;
    font-size:12px;
    font-weight:950;
}
.ch-bookmaker-info h3{
    color:#fff;
    font-size:18px;
    font-weight:950;
}
.ch-bookmaker-meta{
    margin-top:5px;
    color:#777780;
    font-size:10px;
}
.ch-bookmaker-tags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:10px;
}
.ch-bookmaker-tag{
    padding:6px 8px;
    border-radius:8px;
    border:1px solid #2b2b30;
    background:#17171a;
    color:#c8c8ce;
    font-size:9px;
    font-weight:800;
}
.ch-bookmaker-side{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:8px;
}
.ch-bookmaker-score{
    color:#fff;
    font-size:15px;
    font-weight:950;
}
.ch-bookmaker-score i{
    color:#eab308;
    margin-right:6px;
}
.ch-bookmaker-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:132px;
    min-height:38px;
    padding:0 14px;
    border-radius:10px;
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#050505;
    font-size:10px;
    font-weight:950;
}
.ch-bookmaker-btn.secondary{
    background:#17171a;
    border:1px solid #2b2b30;
    color:#fff;
}
.ch-country-static{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    min-height:34px;
    padding:6px 0;
    border-bottom:1px dashed rgba(255,255,255,.05);
    color:#d4d4d8;
    font-size:12px;
    font-weight:700;
    cursor:default;
}
.ch-country-static small{
    color:#6f6f78;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}

@media(max-width:780px){
    .ch-bookmaker-row{
        grid-template-columns:1fr;
        align-items:start;
    }
    .ch-bookmaker-side{
        align-items:stretch;
    }
    .ch-bookmaker-btn{
        width:100%;
    }
}


/* =========================================================
   HOMEPAGE EDITORIAL ARTICLE — OFFSHORE BOOKMAKERS
   ========================================================= */
.srp-editorial-wrap{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:0 16px 56px;
}
.srp-editorial{
    border:1px solid #252529;
    border-radius:28px;
    background:
        radial-gradient(circle at 92% 4%,rgba(234,179,8,.08),transparent 25%),
        linear-gradient(145deg,rgba(255,255,255,.02),transparent 44%),
        linear-gradient(180deg,#111114,#0d0d10);
    padding:26px;
    box-shadow:0 22px 60px rgba(0,0,0,.22);
}
.srp-editorial-head{
    max-width:930px;
}
.srp-editorial-kicker{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 9px;
    border:1px solid rgba(234,179,8,.18);
    border-radius:999px;
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.srp-editorial h2{
    margin-top:14px;
    color:#fff;
    font-size:clamp(28px,4vw,42px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}
.srp-editorial h3{
    color:#fff;
    font-size:18px;
    line-height:1.25;
    font-weight:950;
}
.srp-editorial p{
    margin-top:10px;
    color:#9a9aa3;
    font-size:13px;
    line-height:1.78;
}
.srp-editorial-intro{
    font-size:14px !important;
    color:#b1b1b8 !important;
}
.srp-editorial-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
}
.srp-editorial-card,
.srp-editorial-wide{
    display:flex;
    align-items:flex-start;
    gap:14px;
    border:1px solid #29292e;
    border-radius:20px;
    background:#121215;
    padding:18px;
}
.srp-editorial-icon{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(234,179,8,.16);
    border-radius:12px;
    background:rgba(234,179,8,.08);
    color:#eab308;
}
.srp-editorial blockquote{
    margin-top:13px;
    padding:13px 15px;
    border-left:3px solid #eab308;
    border-radius:0 12px 12px 0;
    background:rgba(234,179,8,.055);
    color:#d5d5da;
    font-size:12px;
    line-height:1.7;
}
.srp-editorial-wide{
    margin-top:14px;
}
.srp-checklist{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px 14px;
    margin-top:13px;
}
.srp-checklist li{
    position:relative;
    padding:10px 11px 10px 31px;
    border:1px solid #29292e;
    border-radius:12px;
    background:#161619;
    color:#a7a7af;
    font-size:11px;
    line-height:1.55;
}
.srp-checklist li::before{
    content:"✓";
    position:absolute;
    left:11px;
    top:10px;
    color:#eab308;
    font-weight:950;
}
.srp-checklist strong{
    color:#fff;
}
.srp-faq{
    margin-top:22px;
    padding-top:20px;
    border-top:1px solid #26262b;
}
.srp-faq-head h3{
    margin-top:10px;
    font-size:22px;
}
.srp-faq-item{
    margin-top:10px;
    overflow:hidden;
    border:1px solid #29292e;
    border-radius:14px;
    background:#121215;
}
.srp-faq-item summary{
    position:relative;
    cursor:pointer;
    list-style:none;
    padding:14px 44px 14px 15px;
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.srp-faq-item summary::-webkit-details-marker{display:none}
.srp-faq-item summary::after{
    content:"+";
    position:absolute;
    right:15px;
    top:50%;
    transform:translateY(-50%);
    color:#eab308;
    font-size:20px;
    font-weight:500;
}
.srp-faq-item[open] summary::after{content:"−"}
.srp-faq-item p{
    margin:0;
    padding:0 15px 15px;
    color:#96969f;
    font-size:12px;
    line-height:1.7;
}
@media(max-width:760px){
    .srp-editorial-wrap{padding:0 10px 44px}
    .srp-editorial{padding:17px 14px;border-radius:21px}
    .srp-editorial-grid{grid-template-columns:1fr}
    .srp-editorial-card,.srp-editorial-wide{padding:15px;gap:11px}
    .srp-checklist{grid-template-columns:1fr}
    .srp-editorial-icon{width:34px;height:34px;flex-basis:34px}
}


/* =========================================================
   EUROPE PAGE EDITORIAL ARTICLE
   ========================================================= */
.eu-article-wrap{
    max-width:1180px;
    margin:0 auto;
    padding:0 16px 56px;
}
.eu-article{
    border:1px solid #252529;
    border-radius:28px;
    background:
        radial-gradient(circle at 92% 3%,rgba(234,179,8,.08),transparent 24%),
        linear-gradient(145deg,rgba(255,255,255,.02),transparent 44%),
        linear-gradient(180deg,#111114,#0d0d10);
    padding:26px;
    box-shadow:0 22px 60px rgba(0,0,0,.22);
}
.eu-article-head{
    max-width:930px;
}
.eu-article-kicker{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 9px;
    border:1px solid rgba(234,179,8,.18);
    border-radius:999px;
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.eu-article h2{
    margin-top:14px;
    color:#fff;
    font-size:clamp(28px,4vw,42px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}
.eu-article h3{
    color:#fff;
    font-size:18px;
    line-height:1.25;
    font-weight:950;
}
.eu-article p{
    margin-top:10px;
    color:#9a9aa3;
    font-size:13px;
    line-height:1.78;
}
.eu-article-intro{
    font-size:14px !important;
    color:#b1b1b8 !important;
}
.eu-article-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
}
.eu-article-card,
.eu-article-wide{
    display:flex;
    align-items:flex-start;
    gap:14px;
    border:1px solid #29292e;
    border-radius:20px;
    background:#121215;
    padding:18px;
}
.eu-article-icon{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(234,179,8,.16);
    border-radius:12px;
    background:rgba(234,179,8,.08);
    color:#eab308;
}
.eu-article blockquote{
    margin-top:13px;
    padding:13px 15px;
    border-left:3px solid #eab308;
    border-radius:0 12px 12px 0;
    background:rgba(234,179,8,.055);
    color:#d5d5da;
    font-size:12px;
    line-height:1.7;
}
.eu-article-checklist{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px 14px;
    margin-top:13px;
}
.eu-article-checklist li{
    position:relative;
    padding:10px 11px 10px 31px;
    border:1px solid #29292e;
    border-radius:12px;
    background:#161619;
    color:#a7a7af;
    font-size:11px;
    line-height:1.55;
}
.eu-article-checklist li::before{
    content:"✓";
    position:absolute;
    left:11px;
    top:10px;
    color:#eab308;
    font-weight:950;
}
.eu-article-checklist strong{
    color:#fff;
}
.eu-article-wide{
    margin-top:14px;
}
.eu-article-faq{
    margin-top:22px;
    padding-top:20px;
    border-top:1px solid #26262b;
}
.eu-article-faq-head h3{
    margin-top:10px;
    font-size:22px;
}
.eu-article-faq-item{
    margin-top:10px;
    overflow:hidden;
    border:1px solid #29292e;
    border-radius:14px;
    background:#121215;
}
.eu-article-faq-item summary{
    position:relative;
    cursor:pointer;
    list-style:none;
    padding:14px 44px 14px 15px;
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.eu-article-faq-item summary::-webkit-details-marker{display:none}
.eu-article-faq-item summary::after{
    content:"+";
    position:absolute;
    right:15px;
    top:50%;
    transform:translateY(-50%);
    color:#eab308;
    font-size:20px;
}
.eu-article-faq-item[open] summary::after{content:"−"}
.eu-article-faq-item p{
    margin:0;
    padding:0 15px 15px;
    color:#96969f;
    font-size:12px;
    line-height:1.7;
}
@media(max-width:760px){
    .eu-article-wrap{padding:0 10px 44px}
    .eu-article{padding:17px 14px;border-radius:21px}
    .eu-article-grid{grid-template-columns:1fr}
    .eu-article-card,.eu-article-wide{padding:15px;gap:11px}
    .eu-article-checklist{grid-template-columns:1fr}
    .eu-article-icon{width:34px;height:34px;flex-basis:34px}
}


/* =========================================================
   GERMANY EDITORIAL ARTICLE
   ========================================================= */
.de-article-wrap{
    max-width:1180px;
    margin:0 auto;
    padding:0 16px 56px;
}
.de-article{
    border:1px solid #252529;
    border-radius:28px;
    background:
        radial-gradient(circle at 92% 3%,rgba(234,179,8,.08),transparent 24%),
        linear-gradient(145deg,rgba(255,255,255,.02),transparent 44%),
        linear-gradient(180deg,#111114,#0d0d10);
    padding:26px;
    box-shadow:0 22px 60px rgba(0,0,0,.22);
}
.de-article-head{
    max-width:930px;
}
.de-article-kicker{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 9px;
    border:1px solid rgba(234,179,8,.18);
    border-radius:999px;
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.de-article h2{
    margin-top:14px;
    color:#fff;
    font-size:clamp(28px,4vw,42px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}
.de-article h3{
    color:#fff;
    font-size:18px;
    line-height:1.25;
    font-weight:950;
}
.de-article p{
    margin-top:10px;
    color:#9a9aa3;
    font-size:13px;
    line-height:1.78;
}
.de-article-intro{
    font-size:14px !important;
    color:#b1b1b8 !important;
}
.de-article-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
}
.de-article-card,
.de-article-wide{
    display:flex;
    align-items:flex-start;
    gap:14px;
    border:1px solid #29292e;
    border-radius:20px;
    background:#121215;
    padding:18px;
}
.de-tax-card{
    background:
        linear-gradient(145deg,rgba(234,179,8,.035),transparent 55%),
        #121215;
}
.de-article-icon{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(234,179,8,.16);
    border-radius:12px;
    background:rgba(234,179,8,.08);
    color:#eab308;
}
.de-checklist{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px 14px;
    margin-top:13px;
}
.de-checklist li{
    position:relative;
    padding:10px 11px 10px 31px;
    border:1px solid #29292e;
    border-radius:12px;
    background:#161619;
    color:#a7a7af;
    font-size:11px;
    line-height:1.55;
}
.de-checklist li::before{
    content:"✓";
    position:absolute;
    left:11px;
    top:10px;
    color:#eab308;
    font-weight:950;
}
.de-checklist strong{color:#fff}
.de-article-wide{margin-top:14px}

/* Ranking comparison */
.de-ranking-compare{
    margin-top:22px;
    padding-top:20px;
    border-top:1px solid #26262b;
}
.de-ranking-head p{
    max-width:860px;
}
.de-ranking-list{
    margin-top:14px;
    overflow:hidden;
    border:1px solid #29292e;
    border-radius:18px;
    background:#111114;
}
.de-ranking-row{
    display:grid;
    grid-template-columns:56px minmax(0,1fr) 260px;
    gap:16px;
    align-items:center;
    padding:14px 16px;
    border-bottom:1px solid #202025;
}
.de-ranking-row:last-child{border-bottom:none}
.de-rank-num{
    color:#eab308;
    font-size:12px;
    font-weight:950;
}
.de-rank-brand strong{
    display:block;
    color:#fff;
    font-size:13px;
    font-weight:950;
}
.de-rank-brand span{
    display:block;
    margin-top:4px;
    color:#85858e;
    font-size:10px;
    line-height:1.5;
}
.de-rank-flags{
    display:flex;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:7px;
}
.de-rank-flags span{
    padding:6px 8px;
    border:1px solid #2b2b30;
    border-radius:8px;
    background:#17171a;
    color:#d0d0d5;
    font-size:9px;
    font-weight:850;
}

/* FAQ */
.de-faq{
    margin-top:22px;
    padding-top:20px;
    border-top:1px solid #26262b;
}
.de-faq-head h3{
    margin-top:10px;
    font-size:22px;
}
.de-faq-item{
    margin-top:10px;
    overflow:hidden;
    border:1px solid #29292e;
    border-radius:14px;
    background:#121215;
}
.de-faq-item summary{
    position:relative;
    cursor:pointer;
    list-style:none;
    padding:14px 44px 14px 15px;
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.de-faq-item summary::-webkit-details-marker{display:none}
.de-faq-item summary::after{
    content:"+";
    position:absolute;
    right:15px;
    top:50%;
    transform:translateY(-50%);
    color:#eab308;
    font-size:20px;
}
.de-faq-item[open] summary::after{content:"−"}
.de-faq-item p{
    margin:0;
    padding:0 15px 15px;
    color:#96969f;
    font-size:12px;
    line-height:1.7;
}

@media(max-width:820px){
    .de-ranking-row{
        grid-template-columns:46px minmax(0,1fr);
    }
    .de-rank-flags{
        grid-column:2;
        justify-content:flex-start;
    }
}
@media(max-width:760px){
    .de-article-wrap{padding:0 10px 44px}
    .de-article{padding:17px 14px;border-radius:21px}
    .de-article-grid{grid-template-columns:1fr}
    .de-article-card,.de-article-wide{padding:15px;gap:11px}
    .de-checklist{grid-template-columns:1fr}
    .de-article-icon{width:34px;height:34px;flex-basis:34px}
}


/* =========================================================
   BOOKMAKERS — ARTICLES
   ========================================================= */
.bk-articles-shell{
    border:1px solid #252529;
    border-radius:26px;
    background:
        radial-gradient(circle at 92% 8%,rgba(234,179,8,.07),transparent 25%),
        linear-gradient(180deg,#111114,#0d0d10);
    padding:22px;
}
.bk-articles-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
}
.bk-articles-kicker{
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.13em;
}
.bk-articles-head h2{
    margin-top:6px;
    color:#fff;
    font-size:26px;
    font-weight:950;
    letter-spacing:-.025em;
}
.bk-articles-head p{
    margin-top:6px;
    color:#7f7f88;
    font-size:12px;
}
.bk-articles-grid{
    margin-top:16px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.bk-article-card{
    display:grid;
    grid-template-columns:54px minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
    min-height:120px;
    padding:16px;
    border:1px solid #29292e;
    border-radius:18px;
    background:linear-gradient(180deg,#151518,#101013);
}
.bk-article-icon{
    width:52px;
    height:52px;
    border-radius:15px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(234,179,8,.08);
    border:1px solid rgba(234,179,8,.16);
    color:#eab308;
    font-size:23px;
}
.bk-article-label{
    color:#eab308;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.bk-article-content h3{
    margin-top:4px;
    color:#fff;
    font-size:16px;
    font-weight:950;
}
.bk-article-content p{
    margin-top:5px;
    color:#85858e;
    font-size:10px;
    line-height:1.55;
}
.bk-article-status{
    display:flex;
    align-items:center;
    gap:8px;
    color:#b5b5bc;
    font-size:10px;
    font-weight:850;
}
.bk-article-status i{
    color:#eab308;
}
@media(max-width:760px){
    .bk-articles-grid{grid-template-columns:1fr}
    .bk-article-card{
        grid-template-columns:46px minmax(0,1fr);
    }
    .bk-article-status{
        grid-column:2;
    }
    .bk-article-icon{
        width:44px;
        height:44px;
        font-size:20px;
    }
}


/* =========================================================
   GERMANY — TOP 5 DUPLICATE OF FULL RANKING
   ========================================================= */
.de-top5-wrap{
    max-width:1180px;
    margin:0 auto;
    padding:18px 16px 0;
}
.de-top5-shell{
    border:1px solid #252529;
    border-radius:24px;
    background:
        radial-gradient(circle at 92% 5%,rgba(234,179,8,.07),transparent 24%),
        linear-gradient(180deg,#111114,#0d0d10);
    padding:20px;
}
.de-top5-kicker{
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.12em;
}
.de-top5-head h2{
    margin-top:5px;
    color:#fff;
    font-size:25px;
    font-weight:950;
    letter-spacing:-.025em;
}
.de-top5-head p{
    margin-top:5px;
    color:#7f7f88;
    font-size:11px;
}
.de-top5-list{
    margin-top:15px;
    display:flex;
    flex-direction:column;
    gap:10px;
}
.de-top5-card{
    display:grid;
    grid-template-columns:44px 88px minmax(0,1fr) auto auto;
    gap:14px;
    align-items:center;
    min-height:82px;
    padding:12px 14px;
    border:1px solid #29292e;
    border-radius:16px;
    background:linear-gradient(180deg,#151518,#101013);
}
.de-top5-rank{
    color:#eab308;
    font-size:12px;
    font-weight:950;
}
.de-top5-logo{
    width:78px;
    height:46px;
    padding:5px;
    border-radius:10px;
    background:#f4f4f4;
    display:flex;
    align-items:center;
    justify-content:center;
}
.de-top5-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.de-top5-textlogo{
    color:#111;
    font-size:10px;
    font-weight:950;
}
.de-top5-info h3{
    color:#fff;
    font-size:14px;
    font-weight:950;
}
.de-top5-info p{
    margin-top:3px;
    color:#7f7f88;
    font-size:9px;
    line-height:1.45;
}
.de-top5-tags{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:6px;
}
.de-top5-tags span{
    padding:5px 7px;
    border-radius:7px;
    border:1px solid #2b2b30;
    background:#17171a;
    color:#d0d0d5;
    font-size:8px;
    font-weight:850;
}
.de-top5-action{
    min-width:98px;
    min-height:36px;
    padding:0 12px;
    border-radius:9px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#050505;
    font-size:9px;
    font-weight:950;
}
@media(max-width:860px){
    .de-top5-card{
        grid-template-columns:38px 76px minmax(0,1fr);
    }
    .de-top5-tags{
        grid-column:3;
        justify-content:flex-start;
    }
    .de-top5-action{
        grid-column:3;
        width:100%;
    }
}
@media(max-width:560px){
    .de-top5-wrap{padding:14px 10px 0}
    .de-top5-shell{padding:15px;border-radius:20px}
    .de-top5-card{
        grid-template-columns:34px 68px minmax(0,1fr);
        gap:10px;
        padding:11px;
    }
    .de-top5-logo{
        width:64px;
        height:40px;
    }
}


/* =========================================================
   NODEPOSIT BONUS ARTICLE
   ========================================================= */
.nd-article-wrap{
    max-width:1180px;
    margin:0 auto;
    padding:0 16px 56px;
}
.nd-article{
    border:1px solid #252529;
    border-radius:28px;
    background:
        radial-gradient(circle at 92% 3%,rgba(234,179,8,.08),transparent 24%),
        linear-gradient(145deg,rgba(255,255,255,.02),transparent 44%),
        linear-gradient(180deg,#111114,#0d0d10);
    padding:26px;
    box-shadow:0 22px 60px rgba(0,0,0,.22);
}
.nd-article-head{max-width:930px}
.nd-kicker{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:6px 9px;
    border:1px solid rgba(234,179,8,.18);
    border-radius:999px;
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.nd-article h2{
    margin-top:14px;
    color:#fff;
    font-size:clamp(28px,4vw,42px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}
.nd-article h3{
    color:#fff;
    font-size:18px;
    line-height:1.25;
    font-weight:950;
}
.nd-article p{
    margin-top:10px;
    color:#9a9aa3;
    font-size:13px;
    line-height:1.78;
}
.nd-intro{
    font-size:14px !important;
    color:#b1b1b8 !important;
}
.nd-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
}
.nd-card{
    display:flex;
    align-items:flex-start;
    gap:14px;
    border:1px solid #29292e;
    border-radius:20px;
    background:#121215;
    padding:18px;
}
.nd-warning{
    background:
        linear-gradient(145deg,rgba(234,179,8,.04),transparent 55%),
        #121215;
}
.nd-icon{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(234,179,8,.16);
    border-radius:12px;
    background:rgba(234,179,8,.08);
    color:#eab308;
}
.nd-bullets,
.nd-checklist{
    margin-top:12px;
    display:grid;
    gap:8px;
}
.nd-bullets li,
.nd-checklist li{
    position:relative;
    padding:9px 10px 9px 30px;
    border:1px solid #29292e;
    border-radius:11px;
    background:#161619;
    color:#a7a7af;
    font-size:11px;
    line-height:1.5;
}
.nd-bullets li::before,
.nd-checklist li::before{
    content:"✓";
    position:absolute;
    left:10px;
    top:9px;
    color:#eab308;
    font-weight:950;
}
.nd-bullets strong{color:#fff}
.nd-note{
    margin-top:12px;
    padding:10px 12px;
    border-left:3px solid #eab308;
    border-radius:0 10px 10px 0;
    background:rgba(234,179,8,.055);
    color:#d4d4d8;
    font-size:11px;
    line-height:1.55;
}
.nd-two-questions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:12px;
}
.nd-two-questions span{
    padding:10px;
    border:1px solid rgba(234,179,8,.15);
    border-radius:10px;
    background:rgba(234,179,8,.05);
    color:#fff;
    font-size:10px;
    font-weight:900;
}


.nd-rank-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:14px 16px;
    border-bottom:1px solid #202025;
}
.nd-rank-row:last-child{border-bottom:none}
.nd-rank-brand strong{
    display:block;
    color:#fff;
    font-size:13px;
    font-weight:950;
}
.nd-rank-brand span{
    display:block;
    margin-top:4px;
    color:#85858e;
    font-size:10px;
}
.nd-rank-status{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:7px;
}
.nd-rank-status span{
    padding:6px 8px;
    border:1px solid #2b2b30;
    border-radius:8px;
    background:#17171a;
    color:#d0d0d5;
    font-size:9px;
    font-weight:850;
}

/* FAQ */
.nd-faq{
    margin-top:22px;
    padding-top:20px;
    border-top:1px solid #26262b;
}
.nd-faq-head h3{
    margin-top:10px;
    font-size:22px;
}
.nd-faq-item{
    margin-top:10px;
    overflow:hidden;
    border:1px solid #29292e;
    border-radius:14px;
    background:#121215;
}
.nd-faq-item summary{
    position:relative;
    cursor:pointer;
    list-style:none;
    padding:14px 44px 14px 15px;
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.nd-faq-item summary::-webkit-details-marker{display:none}
.nd-faq-item summary::after{
    content:"+";
    position:absolute;
    right:15px;
    top:50%;
    transform:translateY(-50%);
    color:#eab308;
    font-size:20px;
}
.nd-faq-item[open] summary::after{content:"−"}
.nd-faq-item p{
    margin:0;
    padding:0 15px 15px;
    color:#96969f;
    font-size:12px;
    line-height:1.7;
}

@media(max-width:760px){
    .nd-article-wrap{padding:0 10px 44px}
    .nd-article{padding:17px 14px;border-radius:21px}
    .nd-grid{grid-template-columns:1fr}
    .nd-card{padding:15px;gap:11px}
    .nd-icon{width:34px;height:34px;flex-basis:34px}
    .nd-two-questions{grid-template-columns:1fr}
    .nd-rank-row{grid-template-columns:1fr}
    .nd-rank-status{justify-content:flex-start}
}


/* =========================================================
   CRYPTO BOOKMAKERS ARTICLE
   ========================================================= */
.crypto-hero{
    border-bottom:1px solid #222226;
    background:
      radial-gradient(circle at 86% 18%,rgba(234,179,8,.10),transparent 28%),
      linear-gradient(180deg,#050505,#0e0e11);
}
.crypto-shell{
    max-width:1180px;
    margin:0 auto;
    padding-left:16px;
    padding-right:16px;
}
.crypto-hero .crypto-shell{padding-top:56px;padding-bottom:48px}
.crypto-kicker{
    display:inline-flex;align-items:center;gap:7px;
    padding:6px 9px;border:1px solid rgba(234,179,8,.18);
    border-radius:999px;background:rgba(234,179,8,.07);
    color:#eab308;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;
}
.crypto-hero h1{
    max-width:940px;margin-top:16px;color:#fff;
    font-size:clamp(36px,5vw,60px);line-height:1.02;font-weight:950;letter-spacing:-.04em;
}
.crypto-hero p{
    max-width:900px;margin-top:15px;color:#9a9aa3;font-size:14px;line-height:1.75;
}
.crypto-content{padding:30px 0 56px}
.crypto-intro{
    border:1px solid #29292e;border-radius:20px;background:#121215;padding:18px;
}
.crypto-intro p{color:#aaaab2;font-size:13px;line-height:1.75}
.crypto-intro p+p{margin-top:9px}
.crypto-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;
}
.crypto-card{
    display:flex;gap:14px;align-items:flex-start;
    border:1px solid #29292e;border-radius:20px;background:#121215;padding:18px;
}
.crypto-wide{grid-column:1/-1}
.crypto-icon{
    width:38px;height:38px;flex:0 0 38px;
    display:flex;align-items:center;justify-content:center;
    border:1px solid rgba(234,179,8,.16);border-radius:12px;
    background:rgba(234,179,8,.08);color:#eab308;
}
.crypto-card h2{
    color:#fff;font-size:18px;line-height:1.25;font-weight:950;
}
.crypto-card p{
    margin-top:9px;color:#96969f;font-size:12px;line-height:1.72;
}
.crypto-checklist,.crypto-steps{
    display:grid;gap:8px;margin-top:12px;
}
.crypto-checklist li,.crypto-steps li{
    position:relative;padding:9px 10px 9px 30px;
    border:1px solid #29292e;border-radius:11px;background:#161619;
    color:#aaaab2;font-size:11px;line-height:1.5;
}
.crypto-checklist li::before{
    content:"✓";position:absolute;left:10px;top:9px;color:#eab308;font-weight:950;
}
.crypto-steps{counter-reset:cryptoStep}
.crypto-steps li{counter-increment:cryptoStep}
.crypto-steps li::before{
    content:counter(cryptoStep);
    position:absolute;left:10px;top:8px;color:#eab308;font-weight:950;
}
.crypto-warning{
    margin-top:12px;padding:10px 12px;border-left:3px solid #eab308;
    border-radius:0 10px 10px 0;background:rgba(234,179,8,.055);
    color:#d4d4d8;font-size:11px;line-height:1.55;
}

/* Ranking */
.crypto-ranking{
    margin-top:22px;padding-top:20px;border-top:1px solid #26262b;
}
.crypto-ranking-head h2,.crypto-faq-head h2{
    margin-top:10px;color:#fff;font-size:24px;font-weight:950;
}
.crypto-ranking-list{
    margin-top:14px;overflow:hidden;border:1px solid #29292e;border-radius:18px;background:#111114;
}
.crypto-rank-row{
    display:grid;grid-template-columns:48px 170px 270px minmax(0,1fr);
    gap:14px;align-items:center;padding:14px 16px;border-bottom:1px solid #202025;
}
.crypto-rank-row:last-child{border-bottom:none}
.crypto-num{color:#eab308;font-size:11px;font-weight:950}
.crypto-brand strong{display:block;color:#fff;font-size:13px;font-weight:950}
.crypto-brand span{display:block;margin-top:3px;color:#75757e;font-size:9px}
.crypto-tags{display:flex;flex-wrap:wrap;gap:6px}
.crypto-tags span{
    padding:5px 7px;border:1px solid #2b2b30;border-radius:8px;
    background:#17171a;color:#d0d0d5;font-size:8px;font-weight:850;
}
.crypto-reason{color:#92929a;font-size:10px;line-height:1.45}

/* FAQ */
.crypto-faq{margin-top:22px;padding-top:20px;border-top:1px solid #26262b}
.crypto-faq-item{
    margin-top:10px;overflow:hidden;border:1px solid #29292e;border-radius:14px;background:#121215;
}
.crypto-faq-item summary{
    position:relative;cursor:pointer;list-style:none;padding:14px 44px 14px 15px;
    color:#fff;font-size:12px;font-weight:900;
}
.crypto-faq-item summary::-webkit-details-marker{display:none}
.crypto-faq-item summary::after{
    content:"+";position:absolute;right:15px;top:50%;transform:translateY(-50%);
    color:#eab308;font-size:20px;
}
.crypto-faq-item[open] summary::after{content:"−"}
.crypto-faq-item p{
    margin:0;padding:0 15px 15px;color:#96969f;font-size:12px;line-height:1.7;
}

/* make article card clickable cleanly */
a.bk-article-card{text-decoration:none;color:inherit}

@media(max-width:900px){
    .crypto-grid{grid-template-columns:1fr}
    .crypto-wide{grid-column:auto}
    .crypto-rank-row{grid-template-columns:42px minmax(0,1fr)}
    .crypto-tags,.crypto-reason{grid-column:2}
}
@media(max-width:600px){
    .crypto-shell{padding-left:10px;padding-right:10px}
    .crypto-hero .crypto-shell{padding-top:42px;padding-bottom:36px}
    .crypto-hero h1{font-size:32px}
    .crypto-card{padding:15px;gap:11px}
    .crypto-icon{width:34px;height:34px;flex-basis:34px}
}


/* =========================================================
   COUNTRY DETAIL HERO — reusable for Poland/Czech/Kyrgyzstan
   ========================================================= */
.country-detail-hero{
    border-bottom:1px solid #222226;
    background:
        radial-gradient(circle at 88% 12%,rgba(234,179,8,.10),transparent 28%),
        linear-gradient(180deg,#050505,#0e0e11);
}
.country-detail-shell{
    max-width:1180px;
    margin:0 auto;
    padding:34px 16px 36px;
}
.country-detail-breadcrumbs{
    display:flex;
    align-items:center;
    gap:8px;
    color:#6f6f78;
    font-size:10px;
}
.country-detail-breadcrumbs a{color:#a0a0a8}
.country-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) 210px;
    gap:28px;
    align-items:center;
    margin-top:18px;
}
.country-detail-kicker{
    display:inline-flex;
    align-items:center;
    padding:6px 9px;
    border:1px solid rgba(234,179,8,.18);
    border-radius:999px;
    background:rgba(234,179,8,.07);
    color:#eab308;
    font-size:9px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.10em;
}
.country-detail-grid h1{
    max-width:820px;
    margin-top:14px;
    color:#fff;
    font-size:clamp(34px,5vw,58px);
    line-height:1.02;
    font-weight:950;
    letter-spacing:-.04em;
}
.country-detail-grid p{
    max-width:820px;
    margin-top:14px;
    color:#96969f;
    font-size:13px;
    line-height:1.72;
}
.country-detail-badges{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:16px;
}
.country-detail-badges span{
    padding:7px 9px;
    border:1px solid #2b2b30;
    border-radius:9px;
    background:#151518;
    color:#d0d0d5;
    font-size:9px;
    font-weight:850;
}
.country-detail-side{
    min-height:160px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid #29292e;
    border-radius:22px;
    background:linear-gradient(180deg,#151518,#101013);
}
.country-detail-side-flag{font-size:58px}
.country-detail-side strong{
    margin-top:8px;
    color:#fff;
    font-size:18px;
    font-weight:950;
}
.country-detail-side span{
    margin-top:3px;
    color:#75757e;
    font-size:10px;
}
.de-article blockquote{
    margin-top:13px;
    padding:13px 15px;
    border-left:3px solid #eab308;
    border-radius:0 12px 12px 0;
    background:rgba(234,179,8,.055);
    color:#d5d5da;
    font-size:12px;
    line-height:1.7;
}
@media(max-width:760px){
    .country-detail-shell{padding:26px 10px 28px}
    .country-detail-grid{grid-template-columns:1fr}
    .country-detail-side{min-height:130px}
}


/* Bookmakers page — full crypto article inline */
.bk-crypto-inline{
    padding-top:18px;
}
.crypto-inline-head{
    margin-bottom:16px;
    padding:24px;
    border:1px solid #252529;
    border-radius:24px;
    background:
      radial-gradient(circle at 88% 10%,rgba(234,179,8,.08),transparent 28%),
      linear-gradient(180deg,#111114,#0d0d10);
}
.crypto-inline-head h2{
    margin-top:12px;
    color:#fff;
    font-size:clamp(28px,4vw,42px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}
.crypto-inline-head p{
    max-width:900px;
    margin-top:12px;
    color:#9a9aa3;
    font-size:13px;
    line-height:1.75;
}
.crypto-card h3{
    color:#fff;
    font-size:18px;
    line-height:1.25;
    font-weight:950;
}

.crypto-rank-cta{
 display:inline-flex;align-items:center;justify-content:center;
 min-width:84px;padding:7px 10px;border-radius:8px;
 background:linear-gradient(180deg,#f1c232,#d9a900);
 color:#050505!important;font-size:9px;font-weight:950;text-decoration:none;
}


/* =========================================================
   BOOKMAKERS PREMIUM TOP
   ========================================================= */
.bk-premium-top{
    max-width:1180px;
    margin:0 auto;
    padding:20px 16px 34px;
}
.bk-premium-shell{
    border:1px solid #26262b;
    border-radius:28px;
    padding:22px;
    background:
        radial-gradient(circle at 88% 4%,rgba(234,179,8,.10),transparent 26%),
        linear-gradient(145deg,rgba(255,255,255,.025),transparent 42%),
        linear-gradient(180deg,#111114,#0c0c0f);
    box-shadow:0 24px 70px rgba(0,0,0,.28);
}
.bk-premium-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    padding-bottom:18px;
    border-bottom:1px solid #242429;
}
.bk-premium-kicker{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#eab308;
    font-size:9px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.13em;
}
.bk-premium-head h2{
    margin-top:7px;
    color:#fff;
    font-size:clamp(26px,4vw,38px);
    line-height:1.08;
    font-weight:950;
    letter-spacing:-.035em;
}
.bk-premium-head p{
    max-width:760px;
    margin-top:7px;
    color:#85858e;
    font-size:11px;
    line-height:1.6;
}
.bk-premium-badge{
    min-width:76px;
    height:76px;
    border-radius:20px;
    border:1px solid rgba(234,179,8,.20);
    background:rgba(234,179,8,.07);
    color:#eab308;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:13px;
    font-weight:950;
}
.bk-premium-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:16px;
}
.bk-premium-card{
    position:relative;
    display:grid;
    grid-template-columns:44px 170px minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
    min-height:112px;
    padding:14px;
    border:1px solid #29292e;
    border-radius:18px;
    background:linear-gradient(180deg,#151518,#101013);
    overflow:hidden;
}
.bk-premium-card-featured{
    grid-column:1/-1;
    border-color:rgba(234,179,8,.26);
    background:
        radial-gradient(circle at 80% 30%,rgba(234,179,8,.08),transparent 28%),
        linear-gradient(180deg,#171719,#101013);
}
.bk-premium-card::after{
    content:"";
    position:absolute;
    inset:auto -40px -70px auto;
    width:150px;
    height:150px;
    border-radius:50%;
    background:rgba(234,179,8,.03);
    pointer-events:none;
}
.bk-premium-rank{
    position:relative;
    z-index:1;
    color:#eab308;
    font-size:13px;
    font-weight:950;
    letter-spacing:.04em;
}
.bk-premium-brand{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
}
.bk-premium-logo{
    width:70px;
    height:46px;
    flex:0 0 70px;
    border-radius:11px;
    padding:5px;
    background:#f4f4f4;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}
.bk-premium-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}
.bk-premium-textlogo{
    color:#101010;
    font-size:10px;
    font-weight:950;
}
.bk-premium-brand h3{
    color:#fff;
    font-size:14px;
    font-weight:950;
}
.bk-premium-label{
    display:block;
    margin-bottom:2px;
    color:#7e7e87;
    font-size:7px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.09em;
}
.bk-premium-features{
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}
.bk-premium-features span{
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:6px 8px;
    border:1px solid #2b2b30;
    border-radius:8px;
    background:#17171a;
    color:#b8b8c0;
    font-size:8px;
    font-weight:800;
}
.bk-premium-features i{color:#eab308}
.bk-premium-cta{
    position:relative;
    z-index:1;
    min-width:102px;
    min-height:38px;
    padding:0 13px;
    border-radius:10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    background:linear-gradient(180deg,#f1c232,#d9a900);
    color:#050505!important;
    font-size:9px;
    font-weight:950;
    text-decoration:none;
    box-shadow:0 8px 24px rgba(234,179,8,.10);
}
.bk-premium-cta:hover{
    transform:translateY(-1px);
    filter:brightness(1.04);
}
@media(max-width:900px){
    .bk-premium-grid{grid-template-columns:1fr}
    .bk-premium-card-featured{grid-column:auto}
    .bk-premium-card{
        grid-template-columns:38px 150px minmax(0,1fr);
    }
    .bk-premium-cta{
        grid-column:3;
        width:100%;
    }
}
@media(max-width:620px){
    .bk-premium-top{padding:14px 10px 28px}
    .bk-premium-shell{padding:15px;border-radius:21px}
    .bk-premium-head{align-items:flex-start}
    .bk-premium-badge{display:none}
    .bk-premium-card{
        grid-template-columns:34px minmax(0,1fr);
        gap:10px;
        padding:12px;
    }
    .bk-premium-brand,
    .bk-premium-features,
    .bk-premium-cta{
        grid-column:2;
    }
    .bk-premium-logo{
        width:64px;
        height:42px;
        flex-basis:64px;
    }
}


/* =========================================================
   UNIFORM BETSGEO FOOTER
   ========================================================= */
.site-footer{
  margin-top:64px;
  border-top:1px solid #222226;
  background:
    radial-gradient(circle at 12% 0%,rgba(234,179,8,.055),transparent 26%),
    linear-gradient(180deg,#0d0d10 0%,#09090b 100%);
}
.site-footer-inner{
  max-width:1280px;
  margin:0 auto;
  padding:42px 16px 20px;
}
.site-footer-top{
  display:grid;
  grid-template-columns:minmax(260px,1.1fr) minmax(0,2fr);
  gap:48px;
  align-items:start;
}
.site-footer-brand p{
  max-width:440px;
  margin:16px 0 0;
  color:#777780;
  font-size:13px;
  line-height:1.75;
}
.site-footer-logo{
  display:inline-flex;
  align-items:center;
  gap:11px;
  text-decoration:none;
}
.site-footer-logo-mark{
  width:40px;
  height:40px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#f5cc36,#c89000);
  color:#080808;
  font-size:20px;
  font-weight:950;
  box-shadow:0 10px 24px rgba(234,179,8,.10);
}
.site-footer-logo-text{
  color:#fff;
  font-size:22px;
  font-weight:950;
  letter-spacing:-.03em;
}
.site-footer-logo-text span{color:#eab308}
.site-footer-editor{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:20px;
  padding:10px 12px;
  border:1px solid #26262b;
  border-radius:12px;
  background:#111114;
}
.site-footer-editor i{
  color:#eab308;
  font-size:13px;
}
.site-footer-editor div{
  display:flex;
  flex-direction:column;
  gap:1px;
}
.site-footer-editor span{
  color:#666670;
  font-size:9px;
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:.08em;
}
.site-footer-editor a{
  color:#d7d7dc;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
}
.site-footer-editor a:hover{color:#eab308}

.site-footer-columns{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:30px;
}
.site-footer-col{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.site-footer-col h3{
  margin:0 0 3px;
  color:#fff;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.11em;
}
.site-footer-col a{
  color:#85858e;
  font-size:12px;
  line-height:1.45;
  text-decoration:none;
  transition:.18s ease;
}
.site-footer-col a:hover{
  color:#eab308;
  transform:translateX(2px);
}
.site-footer-age{
  margin-top:4px;
  width:max-content;
  min-width:42px;
  height:26px;
  padding:0 9px;
  border-radius:8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#eab308;
  color:#09090b;
  font-size:11px;
  font-weight:950;
}
.site-footer-bottom{
  margin-top:36px;
  padding-top:18px;
  border-top:1px solid #1e1e22;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:#575760;
  font-size:10px;
  line-height:1.6;
}
.site-footer-bottom span:last-child{
  max-width:620px;
  text-align:right;
}

@media(max-width:900px){
  .site-footer-top{
    grid-template-columns:1fr;
    gap:34px;
  }
}
@media(max-width:680px){
  .site-footer{
    margin-top:44px;
  }
  .site-footer-inner{
    padding:32px 14px 18px;
  }
  .site-footer-columns{
    grid-template-columns:1fr;
    gap:26px;
  }
  .site-footer-col{
    padding-top:20px;
    border-top:1px solid #1f1f23;
  }
  .site-footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
  .site-footer-bottom span:last-child{
    text-align:left;
  }
}

/* ===== COOKIE CONSENT ===== */
.cookie-consent[hidden],.cookie-modal[hidden]{display:none!important}
.cookie-consent{position:fixed;left:0;right:0;bottom:0;z-index:9998;padding:14px}
.cookie-consent-card{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 18px;border:1px solid #2a2a2f;border-radius:18px;background:rgba(15,15,17,.97);backdrop-filter:blur(18px);box-shadow:0 24px 70px rgba(0,0,0,.46)}
.cookie-consent-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(234,179,8,.10);border:1px solid rgba(234,179,8,.18);color:#eab308}
.cookie-consent-copy strong{display:block;color:#fff;font-size:13px;font-weight:950}
.cookie-consent-copy p{margin:4px 0 5px;color:#8b8b94;font-size:11px;line-height:1.55}
.cookie-policy-link{color:#eab308;font-size:10px;font-weight:800;text-decoration:none}
.cookie-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.cookie-btn{border:0;min-height:36px;padding:0 12px;border-radius:9px;font-size:10px;font-weight:900;cursor:pointer}
.cookie-btn-primary{background:linear-gradient(180deg,#f1c232,#d7a900);color:#070707}
.cookie-btn-secondary{background:#17171b;color:#d2d2d8;border:1px solid #303036}
.cookie-close{display:none}

.cookie-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px}
.cookie-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(7px)}
.cookie-modal-panel{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;border:1px solid #29292e;border-radius:22px;background:#101013;box-shadow:0 30px 100px rgba(0,0,0,.55);padding:20px}
.cookie-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:15px;border-bottom:1px solid #242429}
.cookie-modal-kicker{color:#eab308;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.12em}
.cookie-modal-head h2{margin-top:4px;color:#fff;font-size:24px;font-weight:950}
.cookie-modal-x{width:34px;height:34px;border-radius:9px;border:1px solid #2b2b30;background:#17171a;color:#aaa;font-size:20px;cursor:pointer}
.cookie-option{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid #202024}
.cookie-option strong{display:block;color:#fff;font-size:12px;font-weight:900}
.cookie-option p{margin-top:4px;color:#7c7c85;font-size:10px;line-height:1.55;max-width:440px}
.cookie-always{color:#eab308;font-size:9px;font-weight:900;white-space:nowrap}
.cookie-option input{position:absolute;opacity:0;pointer-events:none}
.cookie-switch{width:42px;height:24px;border-radius:999px;background:#2a2a2f;position:relative;flex:0 0 42px;cursor:pointer;transition:.2s}
.cookie-switch:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#8f8f96;transition:.2s}
.cookie-option input:checked + .cookie-switch{background:#eab308}
.cookie-option input:checked + .cookie-switch:after{left:21px;background:#09090b}
.cookie-modal-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding-top:18px}

@media(max-width:760px){
 .cookie-consent-card{grid-template-columns:auto 1fr;padding:14px}
 .cookie-actions{grid-column:1/-1;justify-content:stretch}
 .cookie-actions .cookie-btn{flex:1 1 auto}
}


/* BetsGeo stable bk-info-icons fix */
.bk-info-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.bk-info-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 6px 10px;
  border-radius: 10px;
  border: 1px solid #2a2a2f;
  background: #151519;
  color: #d4d4d8;
  font-size: 11px;
  line-height: 1;
  font-weight: 700;
  white-space: nowrap;
}

.bk-info-chip:hover {
  border-color: rgba(245, 196, 81, .45);
  color: #f5c451;
}

.bk-info-icons .flag-chip,
.bk-info-icons .pay-chip,
.bk-info-icons .bet-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 6px 10px;
  border-radius: 10px;
  border: 1px solid #2a2a2f;
  background: #151519;
  color: #d4d4d8;
  font-size: 11px;
  line-height: 1;
  font-weight: 700;
  white-space: nowrap;
}

.bk-info-icons i {
  color: #f5c451;
  margin-right: 5px;
}

/* BetsGeo English design parity */
html:lang(en),html:lang(en) body{background:#0c0c0f!important;color:#f4f4f5!important}
html:lang(en) main{background:#0c0c0f;color:#f4f4f5}
html:lang(en) .bk-premium-section,html:lang(en) .en-premium-section{color:#f4f4f5;background:#101013;border:1px solid #28282d;border-radius:24px;padding:28px;margin:32px auto;max-width:1200px}
html:lang(en) .bk-premium-card{color:#f4f4f5;background:#151519;border:1px solid #323237;border-radius:20px;margin-bottom:16px;padding:20px}
html:lang(en) .bk-premium-card a{color:#f2b900}
html:lang(en) .de-article-card{color:#f4f4f5}
html:lang(en) .de-article-card p{color:#c8c8d0;line-height:1.8}
html:lang(en) .de-article-section{background:transparent}
html:lang(en) .de-faq-item{background:#141418}
html:lang(en) a:focus-visible{outline:2px solid #eab308}
@media(max-width:600px){html:lang(en) .bk-premium-section{padding:16px;margin:20px 8px}}
