@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700&display=swap');

:root {
    --bg: #1a1b23;
    --surface: #252632;
    --card: #2a2e37;
    --accent: #ff6a00;
    --accent-hover: #ffa94d;
    --text: #f0f0f0;
    --text-dim: #f5f5f5;
    --border: rgba(255,255,255,0.1);
    --shadow: 0 4px 20px rgba(0,0,0,0.3);
    --radius: 10px;
    --radius-sm: 6px;
}

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    background-color: var(--bg);
    color: var(--text);
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

a {
    color: var(--accent);
    text-decoration: none;
    transition: color 0.2s;
}

a:hover {
    color: var(--accent-hover);
    text-decoration: underline;
}

/* ─── VEIL ─── */
.veil {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.55);
    z-index: 1400;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

.veil.show {
    opacity: 1;
    visibility: visible;
}

/* ─── HEADER ─── */
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background-color: var(--surface);
    border-bottom: 3px solid var(--accent);
    box-shadow: 0 2px 12px rgba(0,0,0,0.25);
}

.hdr-inner {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    height: 68px;
    display: flex;
    align-items: center;
    gap: 16px;
}

.hdr-logo {
    flex: 1;
}

.logo-mark {
    width: 220px;
    height: 34px;
    background-image: url('../img/logo.svg');
    background-size: contain;
    background-position: left center;
    background-repeat: no-repeat;
}

.hdr-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.btn-login,
.btn-signup {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 9px 18px;
    border-radius: var(--radius-sm);
    border: none;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
    text-decoration: none;
}

.btn-login {
    background: transparent;
    color: var(--text);
    border: 1px solid var(--border);
}

.btn-login:hover {
    background: var(--accent);
    border-color: var(--accent);
    color: #fff;
    text-decoration: none;
}

.btn-signup {
    background: var(--accent);
    color: #fff;
    box-shadow: 0 2px 10px rgba(255,106,0,0.35);
}

.btn-signup:hover {
    background: var(--accent-hover);
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(255,106,0,0.45);
}

.hdr-burger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 40px;
    height: 40px;
    background: transparent;
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    cursor: pointer;
    padding: 0;
}

.hdr-burger span {
    display: block;
    width: 20px;
    height: 2px;
    background: var(--accent);
    border-radius: 2px;
    transition: 0.3s;
}

/* ─── SLIDE PANEL ─── */
.slide-panel {
    position: fixed;
    top: 0;
    left: -310px;
    width: 300px;
    height: 100vh;
    background: var(--surface);
    z-index: 1500;
    transition: left 0.3s ease;
    display: flex;
    flex-direction: column;
    border-right: 1px solid var(--border);
}

.slide-panel.open {
    left: 0;
}

.sp-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px;
    border-bottom: 1px solid var(--border);
}

.sp-tabs {
    display: flex;
    gap: 4px;
}

.sp-tab {
    font-size: 15px;
    font-weight: 600;
    padding: 8px 18px;
    border-radius: 6px 6px 0 0;
    color: var(--text);
    text-decoration: none;
    transition: background 0.2s;
}

.sp-tab--on {
    background: var(--accent);
    color: #fff;
}

.sp-tab:not(.sp-tab--on):hover {
    background: rgba(255,255,255,0.08);
    text-decoration: none;
    color: var(--text);
}

.sp-close {
    background: none;
    border: none;
    font-size: 26px;
    color: var(--text);
    cursor: pointer;
    line-height: 1;
    padding: 0 4px;
}

.sp-nav {
    flex: 1;
    overflow-y: auto;
    padding: 10px 16px;
}

.sp-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sp-list li {
    margin-bottom: 2px;
}

.sp-list a {
    display: block;
    padding: 11px 12px;
    border-radius: var(--radius-sm);
    color: var(--text-dim);
    font-size: 15px;
    text-decoration: none;
    transition: background 0.2s;
}

.sp-list a:hover {
    background: rgba(255,255,255,0.08);
    text-decoration: none;
    color: var(--text);
}

.sp-lang {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 16px;
    padding: 13px 16px;
    background: rgba(255,255,255,0.07);
    border-radius: var(--radius-sm);
    color: var(--text-dim);
    font-size: 14px;
    cursor: pointer;
}

.sp-arrow {
    font-size: 11px;
    opacity: 0.6;
}

/* ─── MAIN ─── */
.site-main {
    padding-top: 71px;
}

.main-wrap {
    max-width: 1240px;
    margin: 0 auto;
    padding: 24px 20px 40px;
}

/* ─── BANNER ─── */
.banner {
    position: relative;
    height: 300px;
    border-radius: var(--radius);
    overflow: hidden;
    margin-bottom: 16px;
}

.banner-bg {
    position: absolute;
    inset: 0;
    background-image: url('../img/welcome-offer.png');
    background-size: cover;
    background-position: 70% center;
    border-radius: var(--radius);
}

.banner-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 40px 40px 36px;
    background: linear-gradient(to top, rgba(26,27,35,0.92) 0%, rgba(26,27,35,0.6) 60%, transparent 100%);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.banner-tag {
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--accent);
    text-transform: uppercase;
    background: rgba(255,106,0,0.15);
    padding: 4px 12px;
    border-radius: 4px;
    border: 1px solid rgba(255,106,0,0.4);
}

.banner-offer {
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 800;
    color: #fff;
    margin: 0;
    text-shadow: 0 2px 8px rgba(0,0,0,0.5);
}

.banner-btn {
    background: var(--accent);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    padding: 10px 24px;
    border-radius: var(--radius-sm);
    text-decoration: none;
    box-shadow: 0 3px 12px rgba(255,106,0,0.4);
    transition: transform 0.2s, box-shadow 0.2s;
}

.banner-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(255,106,0,0.5);
    color: #fff;
    text-decoration: none;
}

/* ─── HIGHLIGHTS STRIP ─── */
.highlights {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 20px;
}

.hl-item {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    border-bottom: 3px solid var(--accent);
    text-align: center;
}

.hl-val {
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: var(--accent);
}

.hl-desc {
    font-size: 12px;
    color: rgba(240,240,240,0.7);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ─── LOBBY ─── */
.lobby {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 20px;
}

.lobby-tile {
    position: relative;
    height: 200px;
    border-radius: var(--radius);
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    padding: 20px;
    text-decoration: none;
    transition: transform 0.2s;
}

.lobby-tile:hover {
    transform: scale(1.02);
    text-decoration: none;
}

.lt-img {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    border-radius: var(--radius);
    z-index: 0;
    transition: transform 0.4s ease;
}

.lobby-tile:hover .lt-img {
    transform: scale(1.05);
}

.lt-shade {
    position: absolute;
    inset: 0;
    border-radius: var(--radius);
    z-index: 1;
    background: linear-gradient(to top, rgba(255,106,0,0.55) 0%, rgba(0,0,0,0.15) 60%, transparent 100%);
    transition: background 0.2s;
}

.lobby-tile:hover .lt-shade {
    background: linear-gradient(to top, rgba(255,106,0,0.7) 0%, rgba(0,0,0,0.2) 60%, transparent 100%);
}

.lt-name {
    position: relative;
    z-index: 2;
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 10px;
    text-shadow: 0 2px 6px rgba(0,0,0,0.5);
}

.lt-ico {
    display: inline-block;
    width: 26px;
    height: 26px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.lt-ico--casino {
    background-image: url('../img/casino_icon.png');
}

.lt-ico--sports {
    background-image: url('../img/sports_icon.png');
}

.lt-casino .lt-img {
    background-image: url('../img/Casino-v3.png');
}

.lt-sports .lt-img {
    background-image: url('../img/Sport-v1.png');
}

/* ─── FEATURED ─── */
.featured {
    margin-bottom: 20px;
}

.featured-box {
    background: var(--card);
    border-radius: var(--radius);
    padding: 24px;
}

.fb-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.fb-ico {
    width: 22px;
    height: 22px;
    background-image: url('../img/lightning.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

.fb-label {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    flex: 1;
}

.fb-arrows {
    display: flex;
    gap: 6px;
}

.fb-arr {
    width: 32px;
    height: 32px;
    background: var(--bg);
    border: none;
    border-radius: var(--radius-sm);
    color: #fff;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

.fb-arr:hover {
    background: var(--accent);
}

.fb-scroll {
    overflow-x: auto;
    padding-bottom: 4px;
}

.fb-track {
    display: flex;
    gap: 16px;
    justify-content: center;
    min-width: max-content;
    margin: 0 auto;
}

.fg-card {
    flex-shrink: 0;
    width: 158px;
    background: var(--surface);
    border-radius: var(--radius-sm);
    overflow: hidden;
    position: relative;
}

.fg-img {
    width: 100%;
    height: 120px;
    background-size: cover;
    background-position: center;
    transition: filter 0.25s;
}

.fg-img--1 { background-image: url('../img/slot1.jpg'); }
.fg-img--2 { background-image: url('../img/slot2.jpg'); }
.fg-img--3 { background-image: url('../img/slot3.jpg'); }
.fg-img--4 { background-image: url('../img/slot4.jpg'); }
.fg-img--5 { background-image: url('../img/slot5.jpg'); }
.fg-img--6 { background-image: url('../img/slot6.jpg'); }

.fg-card:hover .fg-img {
    filter: blur(3px) brightness(0.6);
}

.fg-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 120px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s;
    z-index: 2;
}

.fg-card:hover .fg-hover {
    opacity: 1;
    pointer-events: auto;
}

.fg-play {
    background: var(--accent);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    padding: 7px 18px;
    border-radius: var(--radius-sm);
    text-decoration: none;
    transition: filter 0.2s;
}

.fg-play:hover {
    filter: brightness(1.1);
    text-decoration: none;
    color: #fff;
}

.fg-demo {
    background: transparent;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 14px;
    border-radius: var(--radius-sm);
    border: 1.5px solid rgba(255,255,255,0.7);
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
}

.fg-demo:hover {
    background: #fff;
    color: #2a2a2a;
    text-decoration: none;
}

.fg-meta {
    padding: 10px 12px;
    background: var(--surface);
}

.fg-title {
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    line-height: 1.2;
    margin-bottom: 2px;
}

.fg-provider {
    font-size: 10px;
    color: rgba(240,240,240,0.6);
    letter-spacing: 0.5px;
}

/* ─── PROVIDERS STRIP ─── */
.providers-strip {
    display: flex;
    align-items: center;
    gap: 16px;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 14px 20px;
    margin-bottom: 20px;
    overflow: hidden;
}

.ps-label {
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: var(--accent);
    white-space: nowrap;
    flex-shrink: 0;
}

.ps-list {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    scrollbar-width: none;
    flex-wrap: wrap;
}

.ps-list::-webkit-scrollbar {
    display: none;
}

.ps-tag {
    font-size: 12px;
    font-weight: 500;
    color: rgba(240,240,240,0.7);
    background: rgba(255,255,255,0.06);
    border: 1px solid var(--border);
    border-radius: 4px;
    padding: 4px 12px;
    white-space: nowrap;
    transition: all 0.2s;
    cursor: default;
}

.ps-tag:hover {
    background: rgba(255,106,0,0.15);
    border-color: rgba(255,106,0,0.4);
    color: #fff;
}

/* ─── PERKS BLOCK ─── */
.perks-block {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 16px;
}

.perk-item {
    background: var(--surface);
    border-radius: var(--radius);
    padding: 20px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    border-top: 3px solid transparent;
    transition: border-color 0.2s, transform 0.2s;
}

.perk-item:hover {
    border-top-color: var(--accent);
    transform: translateY(-3px);
}

.perk-ico {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255,106,0,0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: 22px;
    background-position: center;
    background-repeat: no-repeat;
    flex-shrink: 0;
}

.perk-ico--shield {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23ff6a00" viewBox="0 0 24 24"><path d="M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm-2 16l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z"/></svg>');
    background-color: rgba(255,106,0,0.15);
}

.perk-ico--bolt {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23ff6a00" viewBox="0 0 24 24"><path d="M7 2v11h3v9l7-12h-4l4-8z"/></svg>');
    background-color: rgba(255,106,0,0.15);
}

.perk-ico--gift {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23ff6a00" viewBox="0 0 24 24"><path d="M20 6h-2.18c.07-.33.18-.65.18-1 0-2.21-1.79-4-4-4-1.05 0-1.96.43-2.64 1.11L10 3.5l-1.36-1.39C7.96.43 7.05 0 6 0 3.79 0 2 1.79 2 4c0 .35.11.67.18 1H0v6h2v10h18V12h2V6zm-9.77-2.15C10.65 3.32 11.28 3 12 3c1.1 0 2 .9 2 2s-.9 2-2 2h-2.21l2.44-3.15zM6 3c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2zm3 17H4v-8h5v8zm6 0h-4v-8h4v8zm4 0h-2v-8h5v8h-3z"/></svg>');
    background-color: rgba(255,106,0,0.15);
}

.perk-ico--mobile {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23ff6a00" viewBox="0 0 24 24"><path d="M17 1.01L7 1c-1.1 0-2 .9-2 2v18c0 1.1.9 2 2 2h10c1.1 0 2-.9 2-2V3c0-1.1-.9-1.99-2-1.99zM17 19H7V5h10v14z"/></svg>');
    background-color: rgba(255,106,0,0.15);
}

.perk-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
}

.perk-text {
    font-size: 12px;
    color: rgba(240,240,240,0.65);
    line-height: 1.5;
    margin: 0;
}

/* ─── RESPONSIBLE GAMBLING BANNER ─── */
.rg-banner {
    background: linear-gradient(135deg, rgba(255,106,0,0.12) 0%, rgba(42,46,55,0.8) 100%);
    border: 1px solid rgba(255,106,0,0.25);
    border-radius: var(--radius);
    margin-bottom: 20px;
}

.rg-inner {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 24px;
}

.rg-icon {
    font-size: 28px;
    flex-shrink: 0;
}

.rg-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.rg-text strong {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
}

.rg-text span {
    font-size: 13px;
    color: rgba(240,240,240,0.65);
}

.rg-btn {
    background: transparent;
    border: 1px solid rgba(255,106,0,0.5);
    color: var(--accent);
    font-size: 13px;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: var(--radius-sm);
    white-space: nowrap;
    text-decoration: none;
    transition: all 0.2s;
    flex-shrink: 0;
}

.rg-btn:hover {
    background: var(--accent);
    border-color: var(--accent);
    color: #fff;
    text-decoration: none;
}

/* ─── PAYMENT BAR ─── */
.payment-bar {
    margin-bottom: 20px;
    padding: 20px 0;
}

.pb-img {
    width: 100%;
    height: 72px;
    background-image: url('../img/payments.jpg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

/* ─── REVIEW SECTION ─── */
.review-wrap {
    background: var(--card);
    border-radius: var(--radius);
    padding: 60px 48px;
}

.review-article {
    max-width: 820px;
    margin: 0 auto;
}

.review-article h1 {
    font-family: 'Montserrat', sans-serif;
    font-size: 36px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 32px;
    line-height: 1.25;
    position: relative;
    padding-bottom: 16px;
}

.article-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: -18px 0 28px;
    padding: 10px 14px;
    background: rgba(255,106,0,0.08);
    border-left: 3px solid var(--accent);
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}

.meta-item {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    color: rgba(240,240,240,0.65);
}

.meta-item time {
    color: rgba(240,240,240,0.9);
    font-weight: 500;
}

.meta-divider {
    color: rgba(255,255,255,0.2);
    font-size: 16px;
}

.meta-icon {
    display: inline-block;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.6;
    flex-shrink: 0;
}

.meta-icon--date {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23ff6a00" viewBox="0 0 24 24"><path d="M20 3h-1V1h-2v2H7V1H5v2H4c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 18H4V8h16v13z"/></svg>');
}

.meta-icon--update {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23ff6a00" viewBox="0 0 24 24"><path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"/></svg>');
}

.meta-icon--author {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="%23ff6a00" viewBox="0 0 24 24"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg>');
}

.review-article h1::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: var(--accent);
    border-radius: 2px;
}

.review-article h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    margin: 36px 0 16px;
    padding-left: 14px;
    border-left: 4px solid var(--accent);
    line-height: 1.3;
}

.review-article h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 19px;
    font-weight: 600;
    color: var(--text-dim);
    margin: 28px 0 12px;
    line-height: 1.4;
}

.review-article p {
    font-size: 15px;
    line-height: 1.7;
    color: rgba(240,240,240,0.88);
    margin: 0 0 16px;
}

.review-article ul,
.review-article ol {
    padding-left: 22px;
    margin: 0 0 16px;
}

.review-article li {
    font-size: 15px;
    line-height: 1.7;
    color: rgba(240,240,240,0.88);
    margin-bottom: 6px;
}

.review-article a {
    color: #fff;
}

.review-article a:hover {
    color: var(--text);
}

.content-img,
.review-article img {
    float: right;
    max-width: 380px;
    max-height: 320px;
    width: auto;
    height: auto;
    border-radius: 12px;
    margin: 0 0 24px 32px;
    border: 2px solid var(--border);
    box-shadow: var(--shadow);
}

/* ─── DATA TABLE ─── */
.review-article div[style*="overflow-x: auto"] {
    margin: 16px 0 24px;
    border-radius: var(--radius);
}

.data-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 560px;
    border-radius: var(--radius);
    overflow: hidden;
}

.data-table th {
    background: var(--accent);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 14px 20px;
    text-align: left;
    white-space: nowrap;
}

.data-table td {
    padding: 12px 20px;
    font-size: 14px;
    color: var(--text-dim);
    border-bottom: 1px solid rgba(255,255,255,0.06);
    white-space: nowrap;
}

.data-table tr:nth-child(odd) td {
    background: rgba(26,27,35,0.6);
}

.data-table tr:nth-child(even) td {
    background: rgba(42,46,55,0.6);
}

.data-table tbody tr:hover td {
    background: rgba(255,106,0,0.15);
}

.data-table tbody tr:last-child td {
    border-bottom: none;
}

/* ─── FAQ ─── */
.faq-list {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.faq-entry {
    border-radius: var(--radius);
    border: 1px solid var(--border);
    overflow: hidden;
    transition: border-color 0.2s;
}

.faq-entry:hover {
    border-color: rgba(255,106,0,0.4);
}

.faq-q {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px;
    background: rgba(255,106,0,0.12);
    border: none;
    cursor: pointer;
    text-align: left;
    transition: background 0.2s;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;
}

.faq-q:hover {
    background: rgba(255,106,0,0.22);
}

.faq-entry.open .faq-q {
    background: rgba(255,106,0,0.3);
}

.faq-plus {
    font-size: 22px;
    font-weight: 400;
    color: var(--accent);
    flex-shrink: 0;
    line-height: 1;
    transition: transform 0.25s;
}

.faq-entry.open .faq-plus {
    transform: rotate(45deg);
}

.faq-a {
    display: none;
    padding: 16px 20px 20px;
    background: rgba(255,255,255,0.03);
}

.faq-entry.open .faq-a {
    display: block;
}

.faq-a p {
    margin: 0;
    font-size: 14px;
    line-height: 1.65;
    color: rgba(240,240,240,0.85);
}

/* ─── BOTTOM NAV (mobile) ─── */
.bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--accent);
    display: none;
    justify-content: space-around;
    align-items: center;
    padding: 6px 0 calc(6px + env(safe-area-inset-bottom));
    z-index: 1100;
    border-top: 1px solid rgba(255,255,255,0.15);
}

.bnav-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    background: none;
    border: none;
    color: #fff;
    cursor: pointer;
    padding: 6px 10px;
    border-radius: var(--radius-sm);
    transition: background 0.2s;
    min-width: 52px;
}

.bnav-item:hover {
    background: rgba(255,255,255,0.12);
}

.bnav-ico {
    width: 20px;
    height: 20px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.9;
}

.bnav-ico--menu {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 24 24"><path d="M3 5h18v3H3zm0 6h18v3H3zm0 6h18v3H3z"/></svg>');
}

.bnav-ico--search {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" viewBox="0 0 24 24"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.35-4.35"/></svg>');
}

.bnav-ico--casino {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 24 24"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM7.5 18C6.67 18 6 17.33 6 16.5S6.67 15 7.5 15s1.5.67 1.5 1.5S8.33 18 7.5 18zM7.5 9C6.67 9 6 8.33 6 7.5S6.67 6 7.5 6 9 6.67 9 7.5 8.33 9 7.5 9zm4.5 4.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM16.5 18c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM16.5 9c-.83 0-1.5-.67-1.5-1.5S15.67 6 16.5 6 18 6.67 18 7.5 17.33 9 16.5 9z"/></svg>');
}

.bnav-ico--support {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 24 24"><path d="M12 1c-4.97 0-9 4.03-9 9v7c0 1.66 1.34 3 3 3h3v-8H5v-2c0-3.87 3.13-7 7-7s7 3.13 7 7v2h-4v8h3c1.66 0 3-1.34 3-3v-7c0-4.97-4.03-9-9-9z"/></svg>');
}

.bnav-lbl {
    font-size: 10px;
    font-weight: 500;
}

/* ─── FOOTER ─── */
.site-footer {
    background: var(--surface);
    margin-top: 40px;
    padding: 48px 0 24px;
}

.ft-wrap {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
}

.ft-cols {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 32px;
    margin-bottom: 36px;
}

.ft-heading {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 2px solid rgba(255,106,0,0.4);
}

.ft-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ft-col li {
    margin-bottom: 9px;
}

.ft-col a {
    font-size: 13px;
    color: rgba(240,240,240,0.7);
    text-decoration: none;
    transition: color 0.2s;
}

.ft-col a:hover {
    color: #fff;
    text-decoration: none;
}

.ft-social {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 4px;
}

.ft-soc-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    background: rgba(255,255,255,0.08);
    border-radius: var(--radius-sm);
    color: var(--text);
    text-decoration: none;
    transition: background 0.2s, transform 0.2s;
}

.ft-soc-btn:hover {
    background: var(--accent);
    color: #fff;
    transform: translateY(-2px);
    text-decoration: none;
}

.ft-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-top: 24px;
    border-top: 1px solid var(--border);
}

.ft-lic-img {
    display: block;
    width: 80px;
    height: 40px;
    background-image: url('../img/razed-licence.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.ft-copy {
    flex: 1;
    text-align: center;
}

.ft-copy p {
    font-size: 12px;
    color: rgba(240,240,240,0.55);
    margin: 0;
    line-height: 1.5;
}

.ft-copy p + p {
    margin-top: 4px;
}

.ft-copy a {
    color: rgba(240,240,240,0.55);
}

.ft-copy a:hover {
    color: var(--text);
}

.age-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: #fff;
    color: #1a1a1a;
    font-weight: 700;
    font-size: 13px;
    border-radius: 50%;
}

/* ─── RESPONSIVE ─── */
@media (max-width: 900px) {
    .highlights {
        grid-template-columns: repeat(2, 1fr);
    }

    .perks-block {
        grid-template-columns: repeat(2, 1fr);
    }

    .ft-cols {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .hdr-actions {
        display: none;
    }

    .hdr-burger {
        display: flex;
    }

    .bottom-nav {
        display: flex;
    }

    body {
        padding-bottom: 60px;
    }

    .main-wrap {
        padding: 16px 14px 32px;
    }

    .banner {
        height: 220px;
    }

    .banner-content {
        padding: 24px 20px 20px;
    }

    .banner-offer {
        font-size: 19px;
    }

    .highlights {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }

    .hl-item {
        padding: 14px 10px;
    }

    .hl-val {
        font-size: 18px;
    }

    .lobby {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .lobby-tile {
        height: 150px;
    }

    .featured-box {
        padding: 16px;
    }

    .providers-strip {
        flex-wrap: wrap;
        gap: 10px;
    }

    .perks-block {
        grid-template-columns: repeat(2, 1fr);
    }

    .rg-inner {
        flex-wrap: wrap;
        padding: 14px 16px;
    }

    .rg-btn {
        width: 100%;
        text-align: center;
    }

    .review-wrap {
        padding: 36px 20px;
    }

    .review-article h1 {
        font-size: 26px;
    }

    .review-article h2 {
        font-size: 20px;
    }

    .review-article h3 {
        font-size: 17px;
    }

    .content-img,
    .review-article img {
        float: none;
        max-width: 100%;
        margin: 16px auto 20px;
        display: block;
    }

    .ft-cols {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .ft-bottom {
        flex-direction: column;
        text-align: center;
        gap: 14px;
    }

    .review-article div[style*="overflow-x: auto"] {
        scrollbar-width: thin;
        scrollbar-color: var(--accent) var(--card);
    }

    .review-article div[style*="overflow-x: auto"]::-webkit-scrollbar {
        height: 6px;
    }

    .review-article div[style*="overflow-x: auto"]::-webkit-scrollbar-track {
        background: var(--card);
        border-radius: 4px;
    }

    .review-article div[style*="overflow-x: auto"]::-webkit-scrollbar-thumb {
        background: var(--accent);
        border-radius: 4px;
    }
}

@media (max-width: 480px) {
    .highlights {
        grid-template-columns: repeat(2, 1fr);
    }

    .banner {
        height: 190px;
    }

    .banner-tag {
        font-size: 11px;
    }

    .banner-offer {
        font-size: 16px;
    }

    .banner-btn {
        font-size: 13px;
        padding: 8px 18px;
    }

    .perks-block {
        grid-template-columns: 1fr 1fr;
    }

    .ft-cols {
        grid-template-columns: 1fr;
    }

    .ft-col {
        text-align: center;
    }

    .ft-social {
        justify-content: center;
    }

    .review-wrap {
        padding: 28px 14px;
    }

    .review-article h1 {
        font-size: 22px;
    }

    .review-article h2 {
        font-size: 18px;
    }

    .faq-q {
        font-size: 14px;
        padding: 14px 16px;
    }

    .data-table th,
    .data-table td {
        padding: 10px 14px;
        font-size: 13px;
    }
}
