﻿/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Londrina+Shadow&family=Alegreya+Sans+SC&family=Chango&family=Caladea&family=Rubik+Moonrocks&family=Bungee+Inline&family=Alegreya+Sans+SC&family=Rammetto+One&family=Michroma&family=Nosifer&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Londrina+Shadow&family=Alegreya+Sans+SC&family=Chango&family=Caladea&family=Rubik+Moonrocks&family=Bungee+Inline&family=Alegreya+Sans+SC&family=Rammetto+One&family=Michroma&family=Nosifer&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Bowlby+One&family=Days+One&family=Lilita+One&family=Titan+One&display=swap');


body {
    font-family: "Open Sans", sans-serif;
    background: linear-gradient(135deg, #FFB300 0%, #FDD835 100%);
    /* background: linear-gradient(135deg, #88e595 0%, #25fdd3 100%); */
}

a {
    color: #000000;
    text-decoration: none;
}

    a:hover {
        color: #5faee3;
        text-decoration: none;
    }

h1,
h4,
h5,
h6 {
    font-family: "Poppins", sans-serif;
}

h2,
h3 {
    font-family: "Playfair Display", serif;
}

/*--------------------------------------------------------------
# Back to top button - Unique Modern Cool Style
--------------------------------------------------------------*/
.back-to-top {
    position: fixed;
    visibility: hidden;
    right: 10px;
    bottom: 10px;
    z-index: 999;
    width: 44px;
    height: 44px;
    animation: pulse 2s infinite;
    border-radius: 50%;
    background: linear-gradient(135deg, #2c3e50, #3e5c7a);
    color: transparent;
    border: 2px solid #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease-in-out;
    transform: scale(0.8);
    transform-origin: center;
    overflow: hidden;
}

/* Animation for Icons */
@keyframes pulse {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.15);
    }

    100% {
        transform: scale(1);
    }
}

.back-to-top i {
    font-size: 30px;
    color: #ffffff;
    transition: transform 0.3s ease, color 0.3s ease;
    z-index: 1;
}

.back-to-top:hover {
    background: linear-gradient(135deg, #734a09, #2c3e50);
}

    .back-to-top:hover i {
        color: #ffffff;
        transform: translateY(-5px);
        transform: scale(1.1) rotate(-45deg);
    }

.back-to-top:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 300%;
    height: 300%;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.back-to-top:hover:before {
    opacity: 1;
}

.back-to-top.active {
    visibility: visible;
    opacity: 1;
}

.back-to-top i:before {
    content: "\2191";
    /* Unicode for "up arrow" */
    font-size: 30px;
    font-weight: bold;
    z-index: 2;
}


/*--------------------------------------------------------------
# Disable AOS delay on mobile
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
    [data-aos-delay] {
        transition-delay: 0 !important;
    }
}


/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

#header {
    z-index: 997;
    transition: all 0.5s ease;
    padding: 16px 0;
    background: linear-gradient(135deg, #1e2a47, #253f72);
    width: 100%;
    margin: 0px;
}

    #header.header-scrolled {
        box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
        padding: 12px 0;
        top: 0;
        margin-top: 0;
        border-radius: 0;
        width: 100%;
        border: 0;
    }

    #header .logo h1 {
        font-size: 30px;
        margin: 0;
        padding: 0;
        line-height: 1;
        font-weight: 700;
        letter-spacing: 1px;
        color: #ffffff;
    }

        #header .logo h1 a,
        #header .logo h1 a:hover {
            color: #d1ffd3;
            text-decoration: none;
        }

    #header .logo img {
        padding: 0;
        margin: 0;
        max-height: 50px;
    }

/*--------------------------------------------------------------
# Header End
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/
.navbar {
    padding: 0;
}

    .navbar ul {
        margin: 0;
        padding: 0;
        display: flex;
        list-style: none;
        align-items: center;
    }

    .navbar li {
        position: relative;
    }

    .navbar a,
    .navbar a:focus {
        display: inline-block;
        padding: 12px 20px;
        font-size: 16px;
        font-weight: 500;
        color: #f8f9fa;
        white-space: nowrap;
        transition: 0.3s;
        font-family: 'Poppins', sans-serif;
    }

        .navbar a:hover,
        .navbar .active,
        .navbar li:hover > a {
            color: #FFEE58;
            text-decoration: none;
        }

        .navbar a:hover {
            transform: translateY(-2px);
        }

    .navbar .getstarted,
    .navbar .getstarted:focus {
        padding: 10px 30px;
        margin-left: 30px;
        border-radius: 50px;
        color: white;
        background: #25d36600;
        transition: all 0.3s ease;
        border: 2px solid white;
    }

        .navbar .getstarted:hover,
        .navbar .getstarted:focus:hover {
            background: #ffffff;
            border: 2px solid #ffffff;
            color: #033f6c;
        }

    .navbar .dropdown ul {
        display: block;
        position: absolute;
        left: 30px;
        top: calc(100% + 30px);
        margin: 0;
        padding: 10px 0;
        z-index: 99;
        opacity: 0;
        visibility: hidden;
        background: #fff;
        box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.25);
        transition: 0.3s;
        border-radius: 4px;
    }

        .navbar .dropdown ul li {
            min-width: 200px;
        }

        .navbar .dropdown ul a {
            padding: 10px 20px;
            font-size: 14px;
        }

            .navbar .dropdown ul a:hover,
            .navbar .dropdown ul .active:hover,
            .navbar .dropdown ul li:hover > a {
                color: #000000;
            }

    .navbar .dropdown:hover > ul {
        opacity: 1;
        top: 100%;
        visibility: visible;
    }

/* Mobile Navigation */
.mobile-nav-toggle {
    color: #ffffff;
    font-size: 28px;
    cursor: pointer;
    display: none;
    line-height: 0;
    transition: 0.5s;
}

    .mobile-nav-toggle.bi-x {
        color: #fff;
    }

@media (max-width: 1124px) {
    .navbar a,
    .navbar a:focus {
        padding: 12px 7px;
        font-size: 16px;
    }

    .navbar .getstarted,
    .navbar .getstarted:focus {
        padding: 6px 15px;
        margin-left: 15px;
    }
}

@media (max-width: 991px) {
    .mobile-nav-toggle {
        display: block;
    }

    .navbar ul {
        display: none;
    }

    #header {
        box-shadow: 0px 2px 12px rgba(106, 91, 91, 0.0);
        background-color: #1e2a47;
    }
}

.navbar-mobile {
    position: fixed;
    overflow: hidden;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    transition: 0.3s;
    z-index: 999;
}

    .navbar-mobile .mobile-nav-toggle {
        position: absolute;
        top: 15px;
        right: 15px;
    }

    .navbar-mobile ul {
        display: block;
        position: absolute;
        top: 55px;
        right: 15px;
        bottom: 15px;
        left: 15px;
        padding: 10px 0;
        border-radius: 8px;
        background: #1e2a47;
        /* Red gradient background */

        overflow-y: auto;
        transition: 0.3s;
    }

    .navbar-mobile a,
    .navbar-mobile a:focus {
        padding: 30px 20px;
        text-align: center;
        font-size: 28px;
        color: #ffffff;
        border-bottom: 1px solid rgb(255 255 255 / 91%);
    }

    .navbar-mobile ul.list-border li {
        padding: 8px 0px;
        margin: 18px 18px;
    }

    .navbar-mobile a:hover,
    .navbar-mobile .active,
    .navbar-mobile li:hover > a {
        color: #FFEB3B;
    }

    .navbar-mobile .getstarted,
    .navbar-mobile .getstarted:focus {
        margin: 40px 10px;
        background: #000000;
        color: white;
    }

    .navbar-mobile .dropdown ul {
        position: static;
        display: none;
        margin: 10px 20px;
        padding: 10px 0;
        z-index: 99;
        opacity: 1;
        visibility: visible;
        background: #fff;
        box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.25);
    }

        .navbar-mobile .dropdown ul li {
            min-width: 200px;
        }

        .navbar-mobile .dropdown ul a {
            padding: 10px 20px;
        }

            .navbar-mobile .dropdown ul a i {
                font-size: 12px;
            }

            .navbar-mobile .dropdown ul a:hover,
            .navbar-mobile .dropdown ul .active:hover,
            .navbar-mobile .dropdown ul li:hover > a {
                color: #000000;
            }

    .navbar-mobile .dropdown > .dropdown-active {
        display: block;
    }

/*--------------------------------------------------------------
# Navigation Section End
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Hero Section start
--------------------------------------------------------------*/
#hero {
    padding: 120px 0;
    background: #1e2a47;
    /* Dark Blue Background for a sleek, professional look */
    color: #fff;
    position: relative;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.hero-title {
    font-size: 48px;
    font-weight: 900;
    line-height: 1.4;
    color: #f7f7f7;
    /* Lighter color for the title */
    margin-bottom: 15px;
}

    .hero-title .highlight {
        color: #f39c12;
        /* A warm golden color for emphasis */
        font-style: italic;
    }

.hero-description {
    font-size: 18px;
    line-height: 1.6;
    color: #e3e3e3;
    margin-bottom: 30px;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
}

.hero-buttons {
    display: flex;
    gap: 14px;
}

    .hero-buttons .btn {
        font-size: 16px;
        font-weight: 600;
        padding: 12px 30px;
        border-radius: 5px;
        transition: all 0.3s ease-in-out;
        margin: 5px;
    }

    .hero-buttons .btn-primary {
        background: #f39c12;
        color: #fff;
        border: none;
    }

        .hero-buttons .btn-primary:hover {
            background: #e67e22;
            color: #fff;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        }

    .hero-buttons .btn-outline-light {
        background: transparent;
        color: #fff;
        border: 2px solid #fff;
    }

        .hero-buttons .btn-outline-light:hover {
            background: #fff;
            color: #1e2a47;
            border: 2px solid #1e2a47;
        }

/* Image Section */
.hero-image {
    position: relative;
    max-width: 100%;
}

.image-wrapper {
    position: relative;
    overflow: hidden;
    text-align: center;
    border-radius: 15px;
}

    .image-wrapper img {
        width: 70%;
        height: auto;
        transition: transform 0.3s ease;
    }


/* Responsive Adjustments */
@media (max-width: 1024px) {


    .hero-title {
        font-size: 30px;
    }

    .hero-description {
        font-size: 19px;
    }

    .hero-buttons .btn {
        font-size: 16px;
    }

    .hero-buttons {
        justify-content: center;
    }
}


@media (max-width: 991px) {
    #hero {
        text-align: center;
        padding: 60px 15px;
    }

        #hero .row {
            flex-direction: column-reverse;
        }

    .hero-image {
        margin-top: 40px;
    }

    .hero-title {
        font-size: 27px;
    }

    .hero-description {
        font-size: 18px;
    }

    .hero-buttons .btn {
        font-size: 15px;
    }
}

@media (max-width: 768px) {


    .hero-title {
        font-size: 23px;
    }

    .hero-description {
        font-size: 17px;
    }

    .hero-buttons .btn {
        margin-top: 15px;
        font-size: 16px;
        padding: 12px 18px;
    }

    .hero-buttons {
        display: flex;
        gap: 8px;
    }
}


@media (max-width: 468px) {


    .hero-description {
        font-size: 15px;
    }

    .hero-buttons .btn {
        font-size: 15px;
        padding: 12px 17px;
    }
}



/*--------------------------------------------------------------
# Hero Section End
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Features Section for Financial Consulting
--------------------------------------------------------------*/
.features-section {
    padding: 80px 20px;
    background: #fff;
    color: #fff;
    position: relative;
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
}

    .features-section .section-title h1 {
        font-family: 'Playfair Display', serif;
        font-size: 42px;
        color: #1e2a47;
        text-align: center;
        font-weight: 900;
        margin-bottom: 15px;
    }

    .features-section .section-title .subtitle {
        font-family: 'Roboto', sans-serif;
        font-size: 20px;
        color: #b7740a;
        text-align: center;
        margin-bottom: 40px;
        font-weight: 600;
        letter-spacing: 0.5px;
    }

.feature-item {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
    padding: 20px;
}

.feature-card {
    background: #1e2a4700;
    padding: 30px;
    text-align: center;
    border-radius: 15px;
    box-shadow: 0px 10px 20px rgb(0 0 0 / 61%);
    width: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    border-top-left-radius: 60px;
    border-bottom-right-radius: 60px;
    border-left: 10px solid #253d6f;
    border-bottom: 10px solid #253d6f;
    flex-direction: column;
    justify-content: center;
    /* Center content vertically */
    align-items: center;
    /* Center content horizontally */
}

    .feature-card:hover {
        transform: translateY(-8px);
        box-shadow: 0px 20px 40px rgba(0, 0, 0, 0.25);
    }

    .feature-card .icon-box {
        margin-bottom: 20px;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #253d6f;
        padding: 20px;
        border-radius: 50%;
        width: 80px;
        height: 80px;
    }

    .feature-card .icon {
        font-size: 36px;
        color: #1e2a47;
    }

    .feature-card h3 {
        font-family: 'Poppins', sans-serif;
        font-size: 20px;
        font-weight: 600;
        margin-bottom: 10px;
        color: #000000;
    }

    .feature-card p {
        font-family: 'Open Sans', sans-serif;
        font-size: 16px;
        color: #000000;
        line-height: 1.5;
        margin-bottom: 0;
    }

/* Responsive adjustments */
@media (max-width: 1034px) {


    .feature-card .icon-box {
        width: 64px;
        height: 64px;
    }

    .feature-card .icon {
        font-size: 30px;
        color: #1e2a47;
    }
}

@media (max-width: 991px) {
    .features-section {
        padding: 60px 20px;
    }

    .feature-item {
        margin-bottom: 0px;
        padding: 20px;
    }

    .features-section .section-title h1 {
        font-size: 36px;
    }

    .features-section .section-title .subtitle {
        font-size: 18px;
    }

    .feature-card {
        padding: 25px;
    }

        .feature-card h3 {
            font-size: 18px;
        }
}

@media (max-width: 575px) {
    .features-section .section-title h1 {
        font-size: 30px;
    }

    .features-section .section-title .subtitle {
        font-size: 16px;
    }

    .feature-card p {
        font-size: 14px;
    }
}

/*--------------------------------------------------------------
# Features Section End
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Financial Consulting Process Section
--------------------------------------------------------------*/
.financial-schedule {
    padding: 80px 20px;
    background: #1e2a47;
    color: #ffffff;
    position: relative;
}

    .financial-schedule .section-header h2 {
        font-family: 'Playfair Display', serif;
        font-size: 42px;
        color: #ffffff;
        text-align: center;
        font-weight: 900;
        margin-bottom: 15px;
    }

    .financial-schedule .section-header p {
        font-family: 'Roboto', sans-serif;
        font-size: 18px;
        color: #ffffff;
        text-align: center;
        margin-bottom: 40px;
    }

.schedule-timeline {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Timeline items styling */
.timeline-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-bottom: 60px;
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 0 20px;
}

    .timeline-item:nth-child(even) {
        flex-direction: row-reverse;
    }

/* Icons styling */
.timeline-icon {
    background: #f39c12;
    color: white;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    margin: 20px;
    z-index: 1;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    transition: background-color 0.3s ease;
}

    .timeline-icon i {
        color: #fff;
    }

.timeline-item:hover .timeline-icon {
    background-color: #17a079;
}

/* Content cards styling */
.timeline-content {
    flex: 1;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.05);
    position: relative;
    border: 2px solid #1eaf8b;
    transition: border-color 0.3s ease;
    margin-top: 10px;
}

    .timeline-content::before,
    .timeline-content::after {
        content: '';
        position: absolute;
        width: 15px;
        height: 15px;
        background-color: #1eaf8b;
        transition: background-color 0.3s ease;
    }

    .timeline-content::before {
        top: 0;
        left: 0;
        border-top-left-radius: 50%;
    }

    .timeline-content::after {
        bottom: 0;
        right: 0;
        border-bottom-right-radius: 50%;
    }

.timeline-item:hover .timeline-content {
    border-color: #17a079;
}

    .timeline-item:hover .timeline-content::before,
    .timeline-item:hover .timeline-content::after {
        background-color: #17a079;
    }

/* Responsive Design */
@media (max-width: 991px) {
    .schedule-timeline {
        flex-direction: column;
        width: 100%;
    }

    .timeline-item {
        flex-direction: column;
        align-items: center;
        /* Center align */
        padding: 0;
        width: 100%;
        margin-bottom: 40px;
    }

    /* Icon should be at the top in mobile */
    .timeline-icon {
        margin-bottom: 20px;
        margin-left: 0;
        margin-right: 0;
    }

    .timeline-content {
        width: 100%;
        margin: 0 20px;
        text-align: center;
        padding: 20px;
    }

        .timeline-content h4 {
            font-size: 18px;
        }

        .timeline-content p {
            font-size: 14px;
        }

    .schedule-timeline::before {
        top: 10px;
    }

    /* Even timeline items */
    .timeline-item:nth-child(even) {
        flex-direction: column;
    }
}

@media (max-width: 576px) {
    .financial-schedule .section-header h2 {
        font-size: 30px;
    }

    .financial-schedule .section-header p {
        font-size: 16px;
    }

    .timeline-content p {
        font-size: 14px;
    }

    .timeline-item {
        margin-bottom: 30px;
    }

        .timeline-item .timeline-icon {
            margin-top: 20px;
        }
}

/*--------------------------------------------------------------
# About Printing Section
--------------------------------------------------------------*/
/* About Section */
.about-section {
    padding: 80px 0;
    position: relative;
    background: linear-gradient(135deg, #1e2a47 0%, #16a085 100%);
    color: #fff;
    overflow: hidden;
}

.about-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 2;
}

.about-left {
    padding-right: 30px;
}

.about-heading {
    font-size: 40px;
    font-weight: 700;
    margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.about-subtitle {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 20px;
}

.about-intro {
    font-size: 18px;
    line-height: 1.7;
    margin-bottom: 20px;
}

.about-list {
    list-style: none;
    padding-left: 0;
    margin-bottom: 30px;
}

    .about-list li {
        font-size: 18px;
        line-height: 1.7;
        margin-bottom: 15px;
        position: relative;
        padding-left: 40px;
    }

        .about-list li i {
            position: absolute;
            left: 0;
            top: 0;
            color: #ffffff;
            font-size: 20px;
            transition: transform 0.3s ease;
        }

.about-right {
    text-align: center;
    position: relative;
    z-index: 2;
}

.about-image-container {
    max-width: 100%;
    animation: fadeInRight 1s ease-out;
}

.about-image {
    width: 100%;
    border-radius: 12px;
    transition: transform 0.3s ease;
}

    .about-image:hover {
        transform: scale(1.05);
    }

.abstract-background {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    animation: animateBackground 10s infinite alternate;
}

    .abstract-background:after {
        content: '';
        position: absolute;
        top: 10%;
        left: 10%;
        width: 120%;
        height: 120%;
        background: rgba(255, 255, 255, 0.2);
        border-radius: 50%;
    }

/* Animations */
@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(-50px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(50px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes animateBackground {
    0% {
        width: 200px;
        height: 200px;
        opacity: 0.1;
    }

    100% {
        width: 300px;
        height: 300px;
        opacity: 0.3;
    }
}

/* Responsive Design for Smaller Screens */
@media (max-width: 991px) {

    .about-section {
        padding: 80px 10px;
    }

    .about-row {
        flex-direction: column;
        align-items: left;
        text-align: left;
    }

    .about-left {
        padding-right: 0;
    }

    .about-image-container {
        width: 100%;
    }

    .abstract-background {
        display: none;
    }
}

@media (max-width: 576px) {
    .about-heading {
        font-size: 30px;
    }

    .about-subtitle {
        font-size: 20px;
    }

    .about-intro {
        font-size: 16px;
    }

    .about-list li {
        font-size: 16px;
    }
}


/*--------------------------------------------------------------
# About  Section End
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Call to Action Section (Financial Template)
--------------------------------------------------------------*/
.cta {
    background: linear-gradient(135deg, #1e2a47, #f39c12);
    /* Dark blue to golden gradient */
    color: #fff;
    padding: 60px 0;
    text-align: center;
}

    .cta .cta-content h3 {
        font-size: 32px;
        font-weight: 700;
        color: #fff;
        margin-bottom: 20px;
        font-family: 'Montserrat', sans-serif;
    }

    .cta .cta-description {
        font-size: 18px;
        color: #f1f1f1;
        margin-bottom: 30px;
        font-family: 'Poppins', sans-serif;
        line-height: 1.6;
        max-width: 80%;
        margin-left: auto;
        margin-right: auto;
    }

.cta-btn .btn-contact {
    background-color: #f39c12;
    color: white;
    font-size: 18px;
    padding: 15px 30px;
    border-radius: 50px;
    text-decoration: none;
    display: inline-block;
    margin-top: 20px;
    transition: all 0.3s ease-in-out;
    font-weight: 600;
}

    .cta-btn .btn-contact:hover {
        background-color: #e67e22;
        animation: bounce 0.4s ease-out;
        transform: rotate(-5deg);
        padding: 15px 50px;
    }

/* Responsive Design */
@media (max-width: 767px) {
    .cta .cta-content h3 {
        font-size: 28px;
    }

    .cta .cta-description {
        font-size: 16px;
    }

    .cta .col-lg-12 {
        text-align: center;
    }
}


/*--------------------------------------------------------------
# Services Section
--------------------------------------------------------------*/

.financial-services-section {
    padding: 80px 0;
    background: linear-gradient(135deg, #1e2a47 0%, #16a085 100%);
    color: #ffffff;
    position: relative;
    overflow: hidden;
}

    .financial-services-section .section-title h1 {
        font-family: 'Montserrat', sans-serif;
        font-size: 48px;
        color: #ffffff;
        font-weight: 800;
        margin-bottom: 15px;
        line-height: 1.3;
    }

    .financial-services-section .section-title .subtitle {
        font-family: 'Roboto', sans-serif;
        font-size: 22px;
        color: #ffffff;
        font-weight: 600;
        margin-bottom: 60px;
    }

.service-item {
    background: #ffffff00;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgb(0 0 0);
    text-align: left;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
    border-left: 6px solid #ffffff80;
    border-bottom: 6px solid #ffffff80;
}

.financial-services-section .col-lg-4 {
    margin-top: 20px;
}

.service-item:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

.service-item .icon {
    font-size: 40px;
    color: #ffffff;
    margin-bottom: 20px;
    height: 70px;
    width: 70px;
    background-color: #ffffff69;
    text-align: center;
    border-radius: 50%;
}

.service-item h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 24px;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 15px;
}

.service-item p {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    color: #ffffff;
    line-height: 1.6;
}

@media (max-width: 991px) {


    .finconsult-services-section {
        padding: 60px 20px;
    }


    .financial-services-section .section-title h1 {
        font-size: 30px;
    }

    .finconsult-services-section .service-item {
        padding: 20px;
    }
}

@media (max-width: 768px) {
    .finconsult-services-section .service-item {
        padding: 15px;
    }

    .service-item h3 {
        font-size: 20px;
    }

    .service-item p {
        font-size: 14px;
    }
}


/*--------------------------------------------------------------
 Testimonials Section 
--------------------------------------------------------------*/


.testimonials {
    background: linear-gradient(35deg, #2c3e50, #2c3e50);
    padding: 80px 0;
}

    /* Section Title */
    .testimonials .text-center h4 {
        font-size: 22px;
        color: #ffffff;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 1px;
    }

    .testimonials .text-center h2 {
        font-size: 36px;
        font-weight: bold;
        color: #ffffff;
        letter-spacing: 1px;
    }

/* Testimonial Cards */
.testimonial-card {
    background: linear-gradient(35deg, #0b1325, #2c3e5036);
    box-shadow: 0 5px 30px rgba(0, 0, 0, 0.1);
    padding: 25px;
    border-radius: 15px;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-align: center;
    color: #fff;
}

    .testimonial-card:hover {
        transform: translateY(-10px);
        box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    }

    /* Testimonial Image Styling */
    .testimonial-card .testimonial-image {
        position: relative;
        margin-bottom: 20px;
    }

        .testimonial-card .testimonial-image img {
            border: 5px solid #f6c600;
            width: 100px;
            height: 100px;
            object-fit: cover;
            transition: transform 0.3s ease;
        }

            .testimonial-card .testimonial-image img:hover {
                transform: scale(1.1);
            }

/* Testimonial Text */
.testimonial-text {
    font-size: 16px;
    color: #ffffff;
    font-style: italic;
    line-height: 1.6;
    margin-bottom: 20px;
}

/* Client Information */
.client-info {
    margin-top: 20px;
}

.client-name {
    font-size: 18px;
    font-weight: bold;
    color: #ffffff;
}

.client-position {
    font-size: 14px;
    color: #ffffff;
}

.testimonial-card:hover .testimonial-image img {
    transform: scale(1.2);
}

/* Responsive Design */
@media (max-width: 768px) {
    .testimonials .text-center h2 {
        font-size: 28px;
    }

    .testimonial-card {
        padding: 20px;
    }

    .client-name {
        font-size: 16px;
    }

    .client-position {
        font-size: 12px;
    }

    .testimonial-text {
        font-size: 14px;
    }
}

/*--------------------------------------------------------------
# Testimonials Section End
--------------------------------------------------------------*

  
    
    
/*--------------------------------------------------------------
# Pricing Section
--------------------------------------------------------------*/
.pricing {
    padding: 80px 20px;
    background-color: #f4f7fc;
}

    .pricing .section-header {
        text-align: center;
        margin-bottom: 50px;
    }

        .pricing .section-header h4 {
            font-size: 24px;
            color: #4a6fa5;
            margin-bottom: 5px;
        }

        .pricing .section-header h2 {
            font-size: 40px;
            color: #2a3d6e;
            font-weight: 700;
        }

.pricing-options {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
}

.pricing-card {
    background-color: #ffffff;
    padding: 25px;
    border-radius: 15px;
    width: 22%;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
    transition: all 0.3s ease;
    margin-bottom: 30px;
}

    .pricing-card:hover {
        transform: translateY(-5px);
    }

.card-header {
    margin-bottom: 20px;
}

    .card-header .icon {
        font-size: 40px;
        color: #067e67;
        margin-bottom: 15px;
    }

    .card-header h4 {
        font-size: 24px;
        color: #2a3d6e;
        font-weight: 600;
    }

.price {
    font-size: 36px;
    font-weight: bold;
    color: #1abc9c;
    margin-top: 10px;
}

.currency {
    font-size: 24px;
}

.amount {
    font-size: 48px;
}

.duration {
    font-size: 16px;
    color: #6c757d;
}

.card-details {
    text-align: left;
    margin-top: 20px;
}

    .card-details p {
        font-size: 14px;
        color: #555;
        margin-bottom: 20px;
    }

    .card-details ul {
        list-style: none;
        padding: 0;
        margin-bottom: 10px;
    }

        .card-details ul li {
            font-size: 16px;
            color: #444;
            margin-bottom: 10px;
            display: flex;
            align-items: center;
        }

            .card-details ul li::before {
                content: "✔";
                color: #067e67;
                margin-right: 10px;
            }

.pricing-card.unique-card {
    background-color: #f8f9fa;
    border: 2px solid #067e67;
    box-shadow: 0 6px 30px rgba(0, 0, 0, 0.1);
}

    .pricing-card.unique-card .card-header .icon {
        color: #e67e22;
    }

    .pricing-card.unique-card .price {
        color: #e67e22;
    }

/* Responsive Design */


@media (max-width: 1434px) {

    .pricing-card {
        width: 44%;
        margin-bottom: 30px;
    }

    .pricing-options {
        display: flex;
        justify-content: space-around;
        gap: 0px;
        flex-wrap: wrap;
    }
}


@media (max-width: 758px) {
    .pricing-options {
        flex-direction: column;
        align-items: center;
    }

    .pricing-card {
        width: 100%;
        margin-bottom: 30px;
    }

    .card-header h4 {
        font-size: 20px;
    }

    .price {
        font-size: 30px;
    }
}

@media (max-width: 575px) {
    .pricing .section-header h2 {
        font-size: 28px;
    }

    .pricing-card {
        width: 100%;
    }

    .price {
        font-size: 28px;
    }

    .card-details ul li {
        font-size: 14px;
    }
}


/*--------------------------------------------------------------
# Pricing Section End
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Contact Section start
--------------------------------------------------------------*/
/* Contact Us Section Styles */
.contact-section {
    padding: 100px 0;
    background-color: #2c3e50;
    color: #fff;
    position: relative;
    overflow: hidden;
}

.contact-info {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 50px;
    text-align: center;
}

    .contact-info h3 {
        font-size: 28px;
        color: #ffffff;
        font-weight: 700;
        margin-bottom: 20px;
    }

    .contact-info p {
        font-size: 16px;
        color: #ddd;
        margin-bottom: 25px;
    }

    .contact-info .cta-button {
        margin-top: 20px;
    }

        .contact-info .cta-button .btn-whatsapp {
            background: #27ae60;
            color: #fff;
            padding: 15px 30px;
            border-radius: 50px;
            text-decoration: none;
            font-size: 16px;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            transition: all 0.3s ease-in-out;
            position: relative;
            overflow: hidden;
        }

            .contact-info .cta-button .btn-whatsapp:hover {
                background-color: #1e8449;
                animation: bounce 0.4s ease-out;
                box-shadow: 0 15px 25px rgba(0, 0, 0, 0.2);
            }

/* Bounce Animation */
@keyframes bounce {
    0% {
        transform: translateY(0);
    }

    30% {
        transform: translateY(-5px);
    }

    50% {
        transform: translateY(0);
    }

    70% {
        transform: translateY(-3px);
    }

    100% {
        transform: translateY(0);
    }
}

.contact-info .cta-button .btn-whatsapp:hover {
    transform: rotate(-5deg);
}

.contact-info .cta-button .btn-whatsapp i {
    margin-right: 10px;
}

.contact-form-container {
    background-color: #00000021;
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0 20px 30px rgb(255 255 255 / 20%);
    transition: all 0.3s ease;
}

    .contact-form-container h2 {
        font-size: 32px;
        color: #ffffff;
        font-weight: 700;
        margin-bottom: 40px;
        text-align: center;
    }

.form-description {
    font-size: 16px;
    color: #ffffff;
    text-align: center;
    margin-bottom: 30px;
}

.contact-form .form-row {
    display: flex;
    width: 100%;
    justify-content: space-around;
    gap: 20px;
}

    .contact-form .form-row .form-group {
        width: calc(50% - 10px);
        /* Adjust width to account for the gap */
    }

.contact-form .form-group {
    margin-bottom: 25px;
    position: relative;
}

.contact-form .form-control {
    padding: 20px;
    font-size: 16px;
    width: 100%;
    border: 2px solid #ccc;
    border-radius: 50px;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    background-color: #fafafa0d;
    color: white;
}

    .contact-form .form-control:focus {
        outline: none;
        border-color: #1abc9c;
        box-shadow: 0 0 10px rgba(26, 188, 156, 0.2);
    }

.contact-form textarea.form-control {
    height: 150px;
    resize: vertical;
}

.contact-form .form-group input::placeholder,
.contact-form .form-group textarea::placeholder {
    color: #aaa;
    font-style: italic;
}

.contact-form .btn-submit {
    background: #27ae60;
    color: #fff;
    font-size: 18px;
    padding: 15px 30px;
    width: 100%;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    font-weight: 600;
    text-align: center;
}

    /* Hover Effect: Bounce */
    .contact-form .btn-submit:hover {
        background-color: #1e8449;
        animation: bounce 0.4s ease-out;
        box-shadow: 0 15px 25px rgba(0, 0, 0, 0.2);
    }

.button-area span {
    font-size: 17px;
    display: none;
    margin: 20px 0 0;
    text-align: center;
}

/* Bounce Animation */
@keyframes bounce {
    0% {
        transform: translateY(0);
    }

    30% {
        transform: translateY(-5px);
    }

    50% {
        transform: translateY(0);
    }

    70% {
        transform: translateY(-3px);
    }

    100% {
        transform: translateY(0);
    }
}


/* Responsive Design */
@media (max-width: 968px) {
    .contact-section {
        padding: 50px 12px;
    }

    .contact-form-container {
        box-shadow: 0 20px 40px rgb(82 81 81 / 99%);
    }

    .contact-info {
        padding: 25px;
    }

        .contact-info h3 {
            font-size: 26px;
        }

        .contact-info p {
            font-size: 14px;
        }

    .cta-button .btn-whatsapp {
        padding: 12px 25px;
        font-size: 14px;
    }

    .contact-form-container {
        margin-top: 20px;
        padding: 30px;
    }

        .contact-form-container h2 {
            font-size: 28px;
        }

    .form-description {
        font-size: 14px;
        margin-bottom: 20px;
    }

    .form-control {
        font-size: 15px;
    }

    .btn-submit {
        padding: 12px 25px;
        font-size: 16px;
    }
}

@media (max-width: 600px) {


    .contact-info {
        padding: 20px;
    }

    .contact-form-container {
        padding: 20px;
    }

    .contact-info h3 {
        font-size: 24px;
    }

    .contact-info p {
        font-size: 14px;
    }

    .contact-form .form-control {
        font-size: 14px;
    }

    .contact-form .btn-submit {
        font-size: 14px;
        padding: 12px 25px;
    }
}


/*--------------------------------------------------------------
# Contact Section End
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# faq Section start
--------------------------------------------------------------*/
.faq-section {
    background-color: #f7f7f7;
    padding: 60px 0;
    color: #333;
}

    .faq-section .section-header {
        width: 50%;
    }

        .faq-section .section-header h3 {
            font-size: 2.5rem;
            font-weight: 700;
            color: #2c3e50;
            margin-bottom: 10px;
        }

        .faq-section .section-header p {
            font-size: 1.5rem;
            color: #555;
            font-weight: 600;
            margin-bottom: 40px;
        }

        .faq-section .section-header .line {
            width: 60px;
            height: 3px;
            background-color: #0066cc;
            margin: 20px auto;
        }

/* FAQ List Styles */
.faq-list {
    margin: 0 auto;
    margin-top: 70px;
}

.faq-item {
    border-radius: 8px;
    margin-bottom: 20px;
    transition: transform 0.3s ease;
}

    .faq-item:hover {
        transform: translateY(-5px);
    }

.faq-question {
    display: flex;
    align-items: center;
    padding: 20px;
    cursor: pointer;
    border-bottom: 2px solid #dad6d6;
    transition: background-color 0.3s ease;
}

    .faq-question:hover {
        background-color: #f0f0f0;
    }

    .faq-question h4 {
        font-size: 1.6rem;
        color: #333;
        margin-left: 15px;
        flex: 1;
    }

    .faq-question .faq-icon {
        font-size: 1.8rem;
        color: #0066cc;
    }

    .faq-question .toggle-icon {
        font-size: 2.4rem;
        color: #2c3e50;
        transition: transform 0.3s ease;
    }

    .faq-question.active .toggle-icon {
        transform: rotate(45deg);
    }

/* FAQ Answer Styles */
.faq-answer {
    padding: 15px 20px;
    background-color: #f9f9f9;
    display: none;
}

    .faq-answer p {
        font-size: 1.4rem;
        color: #555;
        margin-bottom: 0;
    }

/* Responsive Layout */
@media (max-width: 1124px) {

    .faq-section .section-header {
        width: 100%;
        text-align: center;
    }
}

@media (max-width: 768px) {


    .faq-section .section-header h3 {
        font-size: 2rem;
        text-align: center;
    }

    .faq-list {
        margin-top: 0px;
    }

    .faq-section .section-header p {
        font-size: 1rem;
        text-align: center;
    }

    .faq-question h4 {
        font-size: 1.1rem;
        padding-right: 10px;
        text-align: left;
    }

    .faq-answer p {
        font-size: 1rem;
    }
}


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.financial-footer {
    background: linear-gradient(35deg, #2c3e50, #2c3e50);
    color: #fff;
    padding: 50px 20px;
    position: relative;
    overflow: hidden;
}

    .financial-footer h4 {
        font-size: 20px;
        font-weight: 600;
        color: #fff;
        margin-bottom: 15px;
    }

    .financial-footer p {
        font-size: 16px;
        line-height: 1.7;
        color: #f1f1f1;
        margin: 0;
    }

.footer-logo {
    max-width: 150px;
    margin-bottom: 15px;
}

.footer-tagline {
    font-size: 16px;
    font-style: italic;
    line-height: 1.5;
    margin-top: 10px;
}

.social-links {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    background: #fff;
    color: #004e92;
    font-size: 20px;
    border-radius: 50%;
    transition: transform 0.3s, background 0.3s, box-shadow 0.3s;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

    .social-icon:hover {
        background: #004e92;
        color: #fff;
        transform: scale(1.1);
        box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2);
    }

.footer-contact p {
    font-size: 16px;
    text-align: end;
}

.footer-bottom {
    background: linear-gradient(45deg, #2b3e50, #3c566c);
    color: #f1f1f1;
    text-align: center;
    padding: 20px 0;
    position: relative;
    font-size: 16px;
    margin-top: 50px;
}

    .footer-bottom .marquee {
        overflow: hidden;
        white-space: nowrap;
    }

        .footer-bottom .marquee p {
            display: inline-block;
            animation: scroll 20s linear infinite;
            font-weight: bold;
            text-transform: uppercase;
            letter-spacing: 2px;
        }

@keyframes scroll {
    0% {
        transform: translateX(100%);
    }

    100% {
        transform: translateX(-100%);
    }
}

/* Responsiveness */

@media (max-width: 968px) {
    .financial-footer {
        padding: 50px 0px;
        text-align: center;
    }


        .financial-footer p,
        h4 {
            text-align: center;
            margin: 20px 0px;
        }

        .financial-footer p {
            margin: 15px 0px;
        }

        .financial-footer .marquee p {
            margin: 0px;
        }

    .social-links {
        justify-content: center;
        margin: 20px;
    }

    .footer-logo {
        margin: 15px;
    }
}

@media (max-width: 768px) {
    .financial-footer {
        text-align: center;
    }

    .footer-social {
        margin-bottom: 20px;
    }

    .footer-contact p,
    .footer-brand p,
    .footer-brand h4 {
        text-align: center;
    }

    .financial-footer .marquee p {
        margin: 0px;
    }

    .social-links {
        justify-content: center;
        margin: 20px;
    }

    .footer-logo {
        margin: 15px auto;
    }
}

/*--------------------------------------------------------------
# PAGES
--------------------------------------------------------------*/

.page-header {
    padding: 130px 0;
    background: linear-gradient(135deg, #0c3c68, #1e507c);
    color: #ffffff;
    text-align: center;
    position: relative;
    box-shadow: 0 10px 30px rgb(0 0 0);
    margin-bottom: 20px;
    overflow: hidden;
}

    .page-header:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.3);
        z-index: 0;
    }

    .page-header h1 {
        font-family: 'Playfair Display', serif;
        font-size: 33px;
        font-weight: 800;
        margin-bottom: 15px;
        color: #f3f4f6;
        letter-spacing: 2px;
        text-transform: uppercase;
        position: relative;
        z-index: 1;
        animation: fadeInUp 1s ease-in-out;
    }

    .page-header .tagline {
        font-family: 'Roboto', sans-serif;
        font-size: 22px;
        font-weight: 400;
        opacity: 0.85;
        margin: auto;
        margin-bottom: 20px;
        width: 80%;
        max-width: 750px;
        line-height: 1.6;
        color: #e0f7fa;
        position: relative;
        z-index: 1;
        animation: fadeInUp 1.7s ease-in-out;
    }

        .page-header .tagline span {
            font-weight: 700;
            color: #f3f4f6;
        }

    .page-header .icon {
        font-size: 48px;
        margin-top: 20px;
        color: #ffffff;
        opacity: 0.7;
        animation: bounce 2s ease-in-out infinite;
    }

        .page-header .icon:hover {
            color: #f3f4f6;
        }

.page-breadcrumb {
    font-size: 18px;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    position: relative;
    z-index: 1;
}

    .page-breadcrumb a {
        color: #f0f0f0;
        text-decoration: none;
        transition: color 0.3s;
        margin: 5px;
    }

        .page-breadcrumb a:hover {
            color: #FFEB3B;
        }

    .page-breadcrumb span {
        color: #f0f0f0;
        margin: 5px;
    }

/* Responsive adjustments */
@media (max-width: 768px) {
    .page-header {
        padding: 80px 0;
    }

        .page-header h1 {
            margin-top: 70px;
            font-size: 22px;
        }

        .page-header .tagline {
            font-size: 19px;
            width: 90%;
        }

    .page-breadcrumb {
        font-size: 16px;
    }
}

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes bounce {

    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

/*--------------------------------------------------------------
# Premium Fixed Header
--------------------------------------------------------------*/

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 997;
    padding: 14px 0;
    background:
        linear-gradient(135deg, rgba(11, 20, 39, 0.96), rgba(25, 40, 73, 0.94)),
        radial-gradient(circle at top left, rgba(210, 172, 91, 0.22), transparent 32%);
    border-bottom: 1px solid rgba(223, 190, 126, 0.28);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    transition: padding 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}

.site-header::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.06),
        transparent
    );
    opacity: 0.65;
}

.header-inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 26px;
}

.brand-logo {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}

.brand-logo img {
    display: block;
    max-height: 54px;
    width: auto;
    filter: drop-shadow(0 8px 18px rgba(0, 0, 0, 0.28));
    transition: transform 0.3s ease, filter 0.3s ease;
}

.brand-logo:hover img {
    transform: translateY(-1px) scale(1.02);
    filter: drop-shadow(0 10px 22px rgba(210, 172, 91, 0.28));
}

.main-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
}

.main-nav ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    margin: 0;
    padding: 7px;
    list-style: none;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.045);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 10px 26px rgba(0, 0, 0, 0.18);
}

.main-nav li {
    position: relative;
}

.main-nav a,
.main-nav a:focus {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 13px;
    color: rgba(255, 255, 255, 0.82);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
    border-radius: 999px;
    text-decoration: none;
    transition:
        color 0.25s ease,
        background 0.25s ease,
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.main-nav a::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 4px;
    width: 18px;
    height: 1px;
    background: linear-gradient(90deg, transparent, #d9b46a, transparent);
    transform: translateX(-50%) scaleX(0);
    transform-origin: center;
    transition: transform 0.25s ease;
}

.main-nav a:hover,
.main-nav .active,
.main-nav li:hover > a {
    color: #ffffff;
    background: rgba(217, 180, 106, 0.12);
    box-shadow: inset 0 0 0 1px rgba(217, 180, 106, 0.26);
    transform: translateY(-1px);
}

.main-nav a:hover::after,
.main-nav .active::after {
    transform: translateX(-50%) scaleX(1);
}

.header-cta {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 13px 28px;
    overflow: hidden;
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
    text-decoration: none;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.85);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    box-shadow:
        0 10px 24px rgba(216, 170, 85, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.75),
        inset 0 -1px 0 rgba(98, 61, 13, 0.18);
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.header-cta::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.65),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.header-cta:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 16px 34px rgba(216, 170, 85, 0.36),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.header-cta:hover::before {
    left: 120%;
}

/* Keeps page content from hiding under fixed header */
body {
    padding-top: 82px;
}

/*--------------------------------------------------------------
# Header Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .header-inner {
        gap: 18px;
    }

    .main-nav a,
    .main-nav a:focus {
        padding: 10px 9px;
        font-size: 12px;
    }

    .header-cta {
        padding: 13px 22px;
    }
}

@media (max-width: 991px) {
    .site-header {
        padding: 12px 0;
    }

    .header-inner {
        gap: 16px;
    }

    .main-nav {
        display: none;
    }

    .brand-logo img {
        max-height: 46px;
    }

    .header-cta {
        min-height: 42px;
        padding: 12px 20px;
        font-size: 12px;
        letter-spacing: 0.03em;
    }

    body {
        padding-top: 70px;
    }
}

@media (max-width: 420px) {
    .brand-logo img {
        max-height: 40px;
    }

    .header-cta {
        padding: 11px 16px;
        font-size: 11px;
    }
}

/*--------------------------------------------------------------
# Premium Hero Section
--------------------------------------------------------------*/

.hero-section {
    position: relative;
    overflow: hidden;
    min-height: calc(100vh - 82px);
    padding: 110px 0 90px;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.16), transparent 28%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.18), transparent 26%),
        linear-gradient(135deg, #0b1427 0%, #12213f 42%, #1a2d57 100%);
    color: #ffffff;
}

.hero-shell {
    position: relative;
    z-index: 2;
}

.hero-background-elements {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(10px);
    opacity: 0.65;
}

.hero-orb-one {
    width: 360px;
    height: 360px;
    top: -80px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.32), rgba(216, 170, 85, 0.02) 70%);
}

.hero-orb-two {
    width: 300px;
    height: 300px;
    right: -60px;
    bottom: -50px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.01) 72%);
}

.hero-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.55), transparent 92%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.55), transparent 92%);
    opacity: 0.28;
}

.hero-copy {
    max-width: 620px;
}

.hero-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    padding: 10px 18px;
    border: 1px solid rgba(217, 180, 106, 0.28);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    color: #e8d4a5;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hero-title {
    margin: 0 0 22px;
    font-family: "Poppins", sans-serif;
    font-size: 56px;
    line-height: 1.08;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -0.02em;
}

.hero-title-accent {
    display: block;
    margin-top: 12px;
    font-size: 24px;
    line-height: 1.35;
    font-weight: 500;
    color: #d9e1f2;
    letter-spacing: 0;
}

.hero-description {
    margin-bottom: 28px;
    max-width: 580px;
    font-size: 18px;
    line-height: 1.85;
    color: rgba(255, 255, 255, 0.82);
}

.hero-feature-list {
    display: grid;
    gap: 14px;
    margin-bottom: 34px;
}

.hero-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
}

.hero-feature-item i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 18px;
}

.hero-feature-item span {
    color: rgba(255, 255, 255, 0.88);
    font-size: 15px;
    line-height: 1.6;
}

.hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
}

.hero-buttons .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 14px 28px;
    border-radius: 999px;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

.hero-btn-primary {
    color: #101827;
    border: 1px solid rgba(255, 232, 184, 0.9);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.hero-btn-primary:hover {
    color: #101827;
    transform: translateY(-2px);
    box-shadow:
        0 18px 36px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.hero-btn-secondary {
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.06);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.hero-btn-secondary:hover {
    color: #ffffff;
    background: rgba(217, 180, 106, 0.10);
    border-color: rgba(217, 180, 106, 0.32);
    transform: translateY(-2px);
}

.hero-visual-column {
    position: relative;
}

.hero-visual-wrap {
    position: relative;
    max-width: 620px;
    margin-left: auto;
}

.hero-image-frame {
    position: relative;
    padding: 18px;
    border-radius: 34px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 30px 70px rgba(0, 0, 0, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.10);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.hero-image-glow {
    position: absolute;
    inset: 12% 10%;
    border-radius: 30px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.26), transparent 68%);
    filter: blur(26px);
    z-index: 0;
}

.hero-main-image {
    position: relative;
    z-index: 1;
    width: 100%;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 20px 42px rgba(0, 0, 0, 0.28),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset;
    transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.hero-image-frame:hover .hero-main-image {
    transform: scale(1.025);
    box-shadow:
        0 26px 56px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(217, 180, 106, 0.14) inset;
}

.hero-floating-card {
    position: absolute;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    max-width: 265px;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(10, 18, 35, 0.82);
    border: 1px solid rgba(217, 180, 106, 0.22);
    box-shadow: 0 20px 38px rgba(0, 0, 0, 0.26);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.hero-floating-card i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.hero-floating-card strong {
    display: block;
    margin-bottom: 4px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
}

.hero-floating-card span {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
    line-height: 1.5;
}

.card-top {
    top: 24px;
    left: -48px;
}

.card-bottom {
    right: -30px;
    bottom: 26px;
}

/* Responsive */
@media (max-width: 1199px) {
    .hero-title {
        font-size: 48px;
    }

    .hero-title-accent {
        font-size: 22px;
    }

    .card-top {
        left: -18px;
    }

    .card-bottom {
        right: -10px;
    }
}

@media (max-width: 991px) {
    .hero-section {
        min-height: auto;
        padding: 80px 0 70px;
        text-align: center;
    }

    .hero-copy {
        max-width: 100%;
    }

    .hero-description {
        max-width: 100%;
    }

    .hero-title {
        font-size: 40px;
    }

    .hero-title-accent {
        font-size: 21px;
    }

    .hero-buttons {
        justify-content: center;
    }

    .hero-feature-item {
        text-align: left;
    }

    .hero-visual-wrap {
        margin: 48px auto 0;
        max-width: 560px;
    }

    .card-top {
        top: 18px;
        left: 10px;
    }

    .card-bottom {
        right: 10px;
        bottom: 18px;
    }
}

@media (max-width: 767px) {
    .hero-section {
        padding: 70px 0 60px;
    }

    .hero-kicker {
        font-size: 11px;
        line-height: 1.5;
    }

    .hero-title {
        font-size: 32px;
    }

    .hero-title-accent {
        font-size: 18px;
    }

    .hero-description {
        font-size: 16px;
        line-height: 1.75;
    }

    .hero-buttons .btn {
        width: 100%;
    }

    .hero-feature-item {
        padding: 14px;
    }

    .hero-floating-card {
        position: static;
        max-width: 100%;
        margin-top: 14px;
        text-align: left;
    }

    .hero-visual-wrap {
        display: flex;
        flex-direction: column;
        gap: 14px;
    }
}

@media (max-width: 480px) {
    .hero-title {
        font-size: 28px;
    }

    .hero-title-accent {
        font-size: 17px;
    }

    .hero-description {
        font-size: 15px;
    }
}

/*--------------------------------------------------------------
# Premium Start Section
--------------------------------------------------------------*/

.start-section {
    position: relative;
    overflow: hidden;
    padding: 100px 0;
    background:
        radial-gradient(circle at 12% 20%, rgba(217, 180, 106, 0.18), transparent 28%),
        radial-gradient(circle at 88% 78%, rgba(255, 255, 255, 0.08), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 45%, #182c56 100%);
    color: #ffffff;
}

.start-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.start-glow {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.62;
}

.start-glow-left {
    top: -110px;
    left: -90px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), rgba(217, 180, 106, 0.02) 70%);
}

.start-glow-right {
    right: -120px;
    bottom: -100px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.01) 72%);
}

.start-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.20;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), transparent 95%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), transparent 95%);
}

.start-section .container {
    position: relative;
    z-index: 2;
}

.section-heading {
    max-width: 880px;
    margin: 0 auto 44px;
}

.section-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    padding: 10px 18px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.045);
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.section-heading h2 {
    margin: 0 0 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 46px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.section-heading p {
    margin: 0 auto;
    max-width: 760px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 17px;
    line-height: 1.8;
}

.bonus-panel {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 22px;
    max-width: 1040px;
    margin: 0 auto 42px;
    padding: 24px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    border-radius: 28px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.035)),
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.16), transparent 42%);
    box-shadow:
        0 24px 58px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.10);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.bonus-panel-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 68px;
    height: 68px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.bonus-panel-icon i {
    font-size: 28px;
}

.bonus-panel-content span {
    display: block;
    margin-bottom: 5px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.bonus-panel-content strong {
    display: block;
    margin-bottom: 7px;
    color: #ffffff;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.bonus-panel-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.74);
    font-size: 15px;
    line-height: 1.7;
}

.bonus-panel-cta {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 14px 26px;
    overflow: hidden;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.88);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.bonus-panel-cta::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.bonus-panel-cta:hover {
    color: #101827;
    transform: translateY(-2px);
    box-shadow:
        0 18px 36px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.bonus-panel-cta:hover::before {
    left: 120%;
}

.start-steps-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1120px;
    margin: 0 auto;
}

.start-step-card {
    position: relative;
    overflow: hidden;
    min-height: 330px;
    padding: 34px 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    border-radius: 30px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 24px 54px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease,
        background 0.35s ease;
}

.start-step-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.35s ease;
}

.start-step-card:hover {
    transform: translateY(-8px);
    border-color: rgba(217, 180, 106, 0.34);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.start-step-card:hover::before {
    opacity: 1;
}

.featured-step {
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
}

.step-number {
    position: absolute;
    top: 24px;
    right: 26px;
    color: rgba(255, 255, 255, 0.10);
    font-family: "Poppins", sans-serif;
    font-size: 56px;
    font-weight: 800;
    line-height: 1;
}

.step-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 68px;
    height: 68px;
    margin-bottom: 26px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    border: 1px solid rgba(217, 180, 106, 0.26);
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.step-icon i {
    font-size: 28px;
}

.start-step-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 750;
    line-height: 1.3;
}

.start-step-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.8;
}

.start-note {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    max-width: 850px;
    margin: 34px auto 0;
    padding: 18px 22px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.075);
}

.start-note i {
    flex-shrink: 0;
    margin-top: 3px;
    color: #d9b46a;
    font-size: 20px;
}

.start-note p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.7;
}

/* Responsive */
@media (max-width: 991px) {
    .start-section {
        padding: 80px 0;
    }

    .section-heading h2 {
        font-size: 38px;
    }

    .bonus-panel {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .bonus-panel-icon {
        margin: 0 auto;
    }

    .bonus-panel-cta {
        width: 100%;
    }

    .start-steps-grid {
        grid-template-columns: 1fr;
    }

    .start-step-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .start-section {
        padding: 70px 0;
    }

    .section-kicker {
        font-size: 11px;
    }

    .section-heading h2 {
        font-size: 30px;
    }

    .section-heading p {
        font-size: 15px;
    }

    .bonus-panel {
        padding: 22px 18px;
        border-radius: 24px;
    }

    .bonus-panel-content strong {
        font-size: 24px;
    }

    .start-step-card {
        padding: 30px 24px;
        border-radius: 24px;
    }

    .step-number {
        font-size: 46px;
    }

    .start-note {
        flex-direction: column;
    }
}

/*--------------------------------------------------------------
# Premium Games Showcase Section
--------------------------------------------------------------*/

.games-showcase-section {
    position: relative;
    overflow: hidden;
    padding: 92px 0;
    background:
        radial-gradient(circle at 14% 16%, rgba(217, 180, 106, 0.15), transparent 27%),
        radial-gradient(circle at 86% 82%, rgba(255, 255, 255, 0.07), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #121f3b 44%, #172c57 100%);
    color: #ffffff;
}

.games-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.games-glow {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.58;
}

.games-glow-left {
    top: -120px;
    left: -100px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), rgba(217, 180, 106, 0.02) 70%);
}

.games-glow-right {
    right: -120px;
    bottom: -110px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.01) 72%);
}

.games-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.games-showcase-section .container {
    position: relative;
    z-index: 2;
}

/* Optional top badges above the grid */
.games-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 920px;
    margin: -10px auto 38px;
}

.games-toolbar-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.045);
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.games-toolbar-item i {
    color: #d9b46a;
    font-size: 15px;
}

/* Compact game grid */
.premium-games-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.premium-game-card {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025));
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.32s ease,
        border-color 0.32s ease,
        box-shadow 0.32s ease;
}

.premium-game-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        linear-gradient(135deg, rgba(217, 180, 106, 0.18), transparent 40%),
        linear-gradient(180deg, transparent 35%, rgba(5, 10, 20, 0.86) 100%);
    opacity: 0;
    transition: opacity 0.32s ease;
}

.premium-game-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.36);
    box-shadow:
        0 26px 56px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.premium-game-card:hover::before {
    opacity: 1;
}

..game-image-box {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border-radius: 22px;
    background:
        radial-gradient(circle at center, rgba(217, 180, 106, 0.12), transparent 58%),
        linear-gradient(180deg, #101b34 0%, #071020 100%);
}

.game-image-box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    padding: 6px;
    transform: scale(1);
    transition:
        transform 0.42s ease,
        filter 0.42s ease;
}

.premium-game-card:hover .game-image-box img {
    transform: scale(1.035);
    filter: brightness(0.78) saturate(1.12);
}

/* Text overlay */
.game-overlay {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 3;
    padding: 72px 15px 15px;
    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(6, 11, 23, 0.66) 38%,
            rgba(6, 11, 23, 0.94) 100%
        );
    transform: translateY(48px);
    transition: transform 0.32s ease;
}

.premium-game-card:hover .game-overlay {
    transform: translateY(0);
}

.game-category {
    display: inline-flex;
    align-items: center;
    margin-bottom: 8px;
    padding: 6px 9px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.34);
    background: rgba(217, 180, 106, 0.13);
    color: #efd59b;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.game-overlay h3 {
    margin: 0 0 6px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.01em;
}

.game-overlay p {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 11px;
    line-height: 1.45;
}

.game-card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 9px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.88);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow:
        0 10px 20px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 0.26s ease,
        transform 0.26s ease,
        box-shadow 0.26s ease;
}

.premium-game-card:hover .game-card-cta {
    opacity: 1;
    transform: translateY(0);
}

.game-card-cta:hover {
    color: #101827;
    box-shadow:
        0 14px 26px rgba(216, 170, 85, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

/*--------------------------------------------------------------
# Games Responsive
--------------------------------------------------------------*/

@media (min-width: 1400px) {
    .premium-games-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 16px;
    }

    .game-overlay h3 {
        font-size: 14px;
    }

    .game-overlay p {
        font-size: 10px;
    }
}

@media (max-width: 1199px) {
    .premium-games-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 16px;
    }
}

@media (max-width: 991px) {
    .games-showcase-section {
        padding: 80px 0;
    }

    .premium-games-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .game-overlay {
        transform: translateY(0);
    }

    .game-card-cta {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .premium-games-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .game-overlay {
        padding: 64px 13px 13px;
    }

    .game-overlay h3 {
        font-size: 14px;
    }

    .game-overlay p {
        font-size: 10px;
    }
}

@media (max-width: 576px) {
    .games-showcase-section {
        padding: 70px 0;
    }

    .games-toolbar {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 30px;
    }

    .games-toolbar-item {
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .premium-games-grid {
        grid-template-columns: 1fr;
    }

    .game-image-box {
        aspect-ratio: 4 / 5;
    }

    .game-overlay h3 {
        font-size: 16px;
    }

    .game-overlay p {
        font-size: 12px;
    }
}

/*--------------------------------------------------------------
# Premium Live Casino Showcase Section
--------------------------------------------------------------*/

.live-showcase-section {
    position: relative;
    overflow: hidden;
    padding: 92px 0;
    background:
        radial-gradient(circle at 14% 16%, rgba(217, 180, 106, 0.14), transparent 27%),
        radial-gradient(circle at 86% 82%, rgba(255, 255, 255, 0.07), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #121f3b 44%, #172c57 100%);
    color: #ffffff;
}

.live-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.live-glow {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.58;
}

.live-glow-left {
    top: -120px;
    left: -100px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), rgba(217, 180, 106, 0.02) 70%);
}

.live-glow-right {
    right: -120px;
    bottom: -110px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.01) 72%);
}

.live-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.live-showcase-section .container {
    position: relative;
    z-index: 2;
}

/* Top badges */
.live-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 920px;
    margin: -10px auto 38px;
}

.live-toolbar-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.045);
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.live-toolbar-item i {
    color: #d9b46a;
    font-size: 15px;
}

/* Compact live game grid */
.premium-live-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
}

.premium-live-card {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025));
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.32s ease,
        border-color 0.32s ease,
        box-shadow 0.32s ease;
}

.premium-live-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        linear-gradient(135deg, rgba(217, 180, 106, 0.18), transparent 40%),
        linear-gradient(180deg, transparent 35%, rgba(5, 10, 20, 0.86) 100%);
    opacity: 0;
    transition: opacity 0.32s ease;
}

.premium-live-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.36);
    box-shadow:
        0 26px 56px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.premium-live-card:hover::before {
    opacity: 1;
}

.live-image-box {
    position: relative;
    width: 100%;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    border-radius: 22px;
    background:
        radial-gradient(circle at center, rgba(217, 180, 106, 0.12), transparent 58%),
        linear-gradient(180deg, #101b34 0%, #071020 100%);
}

.live-image-box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    padding: 5px;
    transform: scale(1);
    transition:
        transform 0.42s ease,
        filter 0.42s ease;
}

.premium-live-card:hover .live-image-box img {
    transform: scale(1.035);
    filter: brightness(0.74) saturate(1.12);
}

/* Text overlay */
.live-overlay {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 3;
    padding: 72px 14px 14px;
    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(6, 11, 23, 0.66) 38%,
            rgba(6, 11, 23, 0.94) 100%
        );
    transform: translateY(48px);
    transition: transform 0.32s ease;
}

.premium-live-card:hover .live-overlay {
    transform: translateY(0);
}

.live-category {
    display: inline-flex;
    align-items: center;
    margin-bottom: 8px;
    padding: 6px 9px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.34);
    background: rgba(217, 180, 106, 0.13);
    color: #efd59b;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.live-overlay h3 {
    margin: 0 0 6px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.01em;
}

.live-overlay p {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 10px;
    line-height: 1.45;
}

.live-card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 9px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.88);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow:
        0 10px 20px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 0.26s ease,
        transform 0.26s ease,
        box-shadow 0.26s ease;
}

.premium-live-card:hover .live-card-cta {
    opacity: 1;
    transform: translateY(0);
}

.live-card-cta:hover {
    color: #101827;
    box-shadow:
        0 14px 26px rgba(216, 170, 85, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

/*--------------------------------------------------------------
# Live Games Responsive
--------------------------------------------------------------*/

@media (max-width: 1399px) {
    .premium-live-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .live-overlay h3 {
        font-size: 15px;
    }

    .live-overlay p {
        font-size: 11px;
    }
}

@media (max-width: 991px) {
    .live-showcase-section {
        padding: 80px 0;
    }

    .premium-live-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .live-overlay {
        transform: translateY(0);
    }

    .live-card-cta {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .premium-live-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .live-overlay {
        padding: 64px 13px 13px;
    }

    .live-overlay h3 {
        font-size: 14px;
    }

    .live-overlay p {
        font-size: 10px;
    }
}

@media (max-width: 576px) {
    .live-showcase-section {
        padding: 70px 0;
    }

    .live-toolbar {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 30px;
    }

    .live-toolbar-item {
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .premium-live-grid {
        grid-template-columns: 1fr;
    }

    .live-image-box {
        aspect-ratio: 2 / 3;
    }

    .live-overlay h3 {
        font-size: 16px;
    }

    .live-overlay p {
        font-size: 12px;
    }
}

/*--------------------------------------------------------------
# Premium Bonus Buy Slots Showcase Section
--------------------------------------------------------------*/

.bonus-showcase-section {
    position: relative;
    overflow: hidden;
    padding: 92px 0;
    background:
        radial-gradient(circle at 14% 16%, rgba(217, 180, 106, 0.14), transparent 27%),
        radial-gradient(circle at 86% 82%, rgba(255, 255, 255, 0.07), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #121f3b 44%, #172c57 100%);
    color: #ffffff;
}

.bonus-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.bonus-glow {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.58;
}

.bonus-glow-left {
    top: -120px;
    left: -100px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), rgba(217, 180, 106, 0.02) 70%);
}

.bonus-glow-right {
    right: -120px;
    bottom: -110px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.01) 72%);
}

.bonus-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.bonus-showcase-section .container {
    position: relative;
    z-index: 2;
}

/* Top badges */
.bonus-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 920px;
    margin: -10px auto 38px;
}

.bonus-toolbar-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.045);
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.bonus-toolbar-item i {
    color: #d9b46a;
    font-size: 15px;
}

/* Compact bonus game grid */
.premium-bonus-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
}

.premium-bonus-card {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025));
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.32s ease,
        border-color 0.32s ease,
        box-shadow 0.32s ease;
}

.premium-bonus-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        linear-gradient(135deg, rgba(217, 180, 106, 0.18), transparent 40%),
        linear-gradient(180deg, transparent 35%, rgba(5, 10, 20, 0.86) 100%);
    opacity: 0;
    transition: opacity 0.32s ease;
}

.premium-bonus-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.36);
    box-shadow:
        0 26px 56px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.premium-bonus-card:hover::before {
    opacity: 1;
}

.bonus-image-box {
    position: relative;
    width: 100%;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    border-radius: 22px;
    background:
        radial-gradient(circle at center, rgba(217, 180, 106, 0.12), transparent 58%),
        linear-gradient(180deg, #101b34 0%, #071020 100%);
}

.bonus-image-box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    padding: 5px;
    transform: scale(1);
    transition:
        transform 0.42s ease,
        filter 0.42s ease;
}

.premium-bonus-card:hover .bonus-image-box img {
    transform: scale(1.035);
    filter: brightness(0.74) saturate(1.12);
}

/* Text overlay */
.bonus-overlay {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 3;
    padding: 72px 14px 14px;
    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(6, 11, 23, 0.66) 38%,
            rgba(6, 11, 23, 0.94) 100%
        );
    transform: translateY(48px);
    transition: transform 0.32s ease;
}

.premium-bonus-card:hover .bonus-overlay {
    transform: translateY(0);
}

.bonus-category {
    display: inline-flex;
    align-items: center;
    margin-bottom: 8px;
    padding: 6px 9px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.34);
    background: rgba(217, 180, 106, 0.13);
    color: #efd59b;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.bonus-overlay h3 {
    margin: 0 0 6px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.01em;
}

.bonus-overlay p {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 10px;
    line-height: 1.45;
}

.bonus-card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 9px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.88);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow:
        0 10px 20px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 0.26s ease,
        transform 0.26s ease,
        box-shadow 0.26s ease;
}

.premium-bonus-card:hover .bonus-card-cta {
    opacity: 1;
    transform: translateY(0);
}

.bonus-card-cta:hover {
    color: #101827;
    box-shadow:
        0 14px 26px rgba(216, 170, 85, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

/*--------------------------------------------------------------
# Bonus Games Responsive
--------------------------------------------------------------*/

@media (max-width: 1399px) {
    .premium-bonus-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .bonus-overlay h3 {
        font-size: 15px;
    }

    .bonus-overlay p {
        font-size: 11px;
    }
}

@media (max-width: 991px) {
    .bonus-showcase-section {
        padding: 80px 0;
    }

    .premium-bonus-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .bonus-overlay {
        transform: translateY(0);
    }

    .bonus-card-cta {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .premium-bonus-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .bonus-overlay {
        padding: 64px 13px 13px;
    }

    .bonus-overlay h3 {
        font-size: 14px;
    }

    .bonus-overlay p {
        font-size: 10px;
    }
}

@media (max-width: 576px) {
    .bonus-showcase-section {
        padding: 70px 0;
    }

    .bonus-toolbar {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 30px;
    }

    .bonus-toolbar-item {
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .premium-bonus-grid {
        grid-template-columns: 1fr;
    }

    .bonus-image-box {
        aspect-ratio: 2 / 3;
    }

    .bonus-overlay h3 {
        font-size: 16px;
    }

    .bonus-overlay p {
        font-size: 12px;
    }
}

/*--------------------------------------------------------------
# Premium Table Games Showcase Section
--------------------------------------------------------------*/

.table-showcase-section {
    position: relative;
    overflow: hidden;
    padding: 92px 0;
    background:
        radial-gradient(circle at 14% 16%, rgba(217, 180, 106, 0.14), transparent 27%),
        radial-gradient(circle at 86% 82%, rgba(255, 255, 255, 0.07), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #121f3b 44%, #172c57 100%);
    color: #ffffff;
}

.table-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.table-glow {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.58;
}

.table-glow-left {
    top: -120px;
    left: -100px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), rgba(217, 180, 106, 0.02) 70%);
}

.table-glow-right {
    right: -120px;
    bottom: -110px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.01) 72%);
}

.table-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.table-showcase-section .container {
    position: relative;
    z-index: 2;
}

/* Top badges */
.table-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 920px;
    margin: -10px auto 38px;
}

.table-toolbar-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.045);
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.table-toolbar-item i {
    color: #d9b46a;
    font-size: 15px;
}

/* Compact table game grid */
.premium-table-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
}

.premium-table-card {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025));
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.32s ease,
        border-color 0.32s ease,
        box-shadow 0.32s ease;
}

.premium-table-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        linear-gradient(135deg, rgba(217, 180, 106, 0.18), transparent 40%),
        linear-gradient(180deg, transparent 35%, rgba(5, 10, 20, 0.86) 100%);
    opacity: 0;
    transition: opacity 0.32s ease;
}

.premium-table-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.36);
    box-shadow:
        0 26px 56px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.premium-table-card:hover::before {
    opacity: 1;
}

.table-image-box {
    position: relative;
    width: 100%;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    border-radius: 22px;
    background:
        radial-gradient(circle at center, rgba(217, 180, 106, 0.12), transparent 58%),
        linear-gradient(180deg, #101b34 0%, #071020 100%);
}

.table-image-box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    padding: 5px;
    transform: scale(1);
    transition:
        transform 0.42s ease,
        filter 0.42s ease;
}

.premium-table-card:hover .table-image-box img {
    transform: scale(1.035);
    filter: brightness(0.74) saturate(1.12);
}

/* Text overlay */
.table-overlay {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 3;
    padding: 72px 14px 14px;
    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(6, 11, 23, 0.66) 38%,
            rgba(6, 11, 23, 0.94) 100%
        );
    transform: translateY(48px);
    transition: transform 0.32s ease;
}

.premium-table-card:hover .table-overlay {
    transform: translateY(0);
}

.table-category {
    display: inline-flex;
    align-items: center;
    margin-bottom: 8px;
    padding: 6px 9px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.34);
    background: rgba(217, 180, 106, 0.13);
    color: #efd59b;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.table-overlay h3 {
    margin: 0 0 6px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.01em;
}

.table-overlay p {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 10px;
    line-height: 1.45;
}

.table-card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 9px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.88);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow:
        0 10px 20px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 0.26s ease,
        transform 0.26s ease,
        box-shadow 0.26s ease;
}

.premium-table-card:hover .table-card-cta {
    opacity: 1;
    transform: translateY(0);
}

.table-card-cta:hover {
    color: #101827;
    box-shadow:
        0 14px 26px rgba(216, 170, 85, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

/*--------------------------------------------------------------
# Table Games Responsive
--------------------------------------------------------------*/

@media (max-width: 1399px) {
    .premium-table-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .table-overlay h3 {
        font-size: 15px;
    }

    .table-overlay p {
        font-size: 11px;
    }
}

@media (max-width: 991px) {
    .table-showcase-section {
        padding: 80px 0;
    }

    .premium-table-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .table-overlay {
        transform: translateY(0);
    }

    .table-card-cta {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .premium-table-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .table-overlay {
        padding: 64px 13px 13px;
    }

    .table-overlay h3 {
        font-size: 14px;
    }

    .table-overlay p {
        font-size: 10px;
    }
}

@media (max-width: 576px) {
    .table-showcase-section {
        padding: 70px 0;
    }

    .table-toolbar {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 30px;
    }

    .table-toolbar-item {
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .premium-table-grid {
        grid-template-columns: 1fr;
    }

    .table-image-box {
        aspect-ratio: 2 / 3;
    }

    .table-overlay h3 {
        font-size: 16px;
    }

    .table-overlay p {
        font-size: 12px;
    }
}

/*--------------------------------------------------------------
# Premium Jackpot Games Showcase Section
--------------------------------------------------------------*/

.jackpot-showcase-section {
    position: relative;
    overflow: hidden;
    padding: 92px 0;
    background:
        radial-gradient(circle at 14% 16%, rgba(217, 180, 106, 0.14), transparent 27%),
        radial-gradient(circle at 86% 82%, rgba(255, 255, 255, 0.07), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #121f3b 44%, #172c57 100%);
    color: #ffffff;
}

.jackpot-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.jackpot-glow {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.58;
}

.jackpot-glow-left {
    top: -120px;
    left: -100px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), rgba(217, 180, 106, 0.02) 70%);
}

.jackpot-glow-right {
    right: -120px;
    bottom: -110px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.01) 72%);
}

.jackpot-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.jackpot-showcase-section .container {
    position: relative;
    z-index: 2;
}

/* Top badges */
.jackpot-toolbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 920px;
    margin: -10px auto 38px;
}

.jackpot-toolbar-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.045);
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
}

.jackpot-toolbar-item i {
    color: #d9b46a;
    font-size: 15px;
}

/* Compact jackpot game grid */
.premium-jackpot-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 16px;
}

.premium-jackpot-card {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025));
    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.32s ease,
        border-color 0.32s ease,
        box-shadow 0.32s ease;
}

.premium-jackpot-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        linear-gradient(135deg, rgba(217, 180, 106, 0.18), transparent 40%),
        linear-gradient(180deg, transparent 35%, rgba(5, 10, 20, 0.86) 100%);
    opacity: 0;
    transition: opacity 0.32s ease;
}

.premium-jackpot-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.36);
    box-shadow:
        0 26px 56px rgba(0, 0, 0, 0.34),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.premium-jackpot-card:hover::before {
    opacity: 1;
}

.jackpot-image-box {
    position: relative;
    width: 100%;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    border-radius: 22px;
    background:
        radial-gradient(circle at center, rgba(217, 180, 106, 0.12), transparent 58%),
        linear-gradient(180deg, #101b34 0%, #071020 100%);
}

.jackpot-image-box img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    padding: 5px;
    transform: scale(1);
    transition:
        transform 0.42s ease,
        filter 0.42s ease;
}

.premium-jackpot-card:hover .jackpot-image-box img {
    transform: scale(1.035);
    filter: brightness(0.74) saturate(1.12);
}

/* Text overlay */
.jackpot-overlay {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 3;
    padding: 72px 14px 14px;
    background:
        linear-gradient(
            180deg,
            transparent 0%,
            rgba(6, 11, 23, 0.66) 38%,
            rgba(6, 11, 23, 0.94) 100%
        );
    transform: translateY(48px);
    transition: transform 0.32s ease;
}

.premium-jackpot-card:hover .jackpot-overlay {
    transform: translateY(0);
}

.jackpot-category {
    display: inline-flex;
    align-items: center;
    margin-bottom: 8px;
    padding: 6px 9px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.34);
    background: rgba(217, 180, 106, 0.13);
    color: #efd59b;
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.jackpot-overlay h3 {
    margin: 0 0 6px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.22;
    letter-spacing: -0.01em;
}

.jackpot-overlay p {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 10px;
    line-height: 1.45;
}

.jackpot-card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 9px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.88);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow:
        0 10px 20px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 0.26s ease,
        transform 0.26s ease,
        box-shadow 0.26s ease;
}

.premium-jackpot-card:hover .jackpot-card-cta {
    opacity: 1;
    transform: translateY(0);
}

.jackpot-card-cta:hover {
    color: #101827;
    box-shadow:
        0 14px 26px rgba(216, 170, 85, 0.32),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

/*--------------------------------------------------------------
# Jackpot Games Responsive
--------------------------------------------------------------*/

@media (max-width: 1399px) {
    .premium-jackpot-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .jackpot-overlay h3 {
        font-size: 15px;
    }

    .jackpot-overlay p {
        font-size: 11px;
    }
}

@media (max-width: 991px) {
    .jackpot-showcase-section {
        padding: 80px 0;
    }

    .premium-jackpot-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .jackpot-overlay {
        transform: translateY(0);
    }

    .jackpot-card-cta {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .premium-jackpot-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .jackpot-overlay {
        padding: 64px 13px 13px;
    }

    .jackpot-overlay h3 {
        font-size: 14px;
    }

    .jackpot-overlay p {
        font-size: 10px;
    }
}

@media (max-width: 576px) {
    .jackpot-showcase-section {
        padding: 70px 0;
    }

    .jackpot-toolbar {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 30px;
    }

    .jackpot-toolbar-item {
        justify-content: center;
    }
}

@media (max-width: 420px) {
    .premium-jackpot-grid {
        grid-template-columns: 1fr;
    }

    .jackpot-image-box {
        aspect-ratio: 2 / 3;
    }

    .jackpot-overlay h3 {
        font-size: 16px;
    }

    .jackpot-overlay p {
        font-size: 12px;
    }
}

/*--------------------------------------------------------------
# Resort & Casino Overview Section
--------------------------------------------------------------*/

.resort-overview-section {
    position: relative;
    overflow: hidden;
    padding: 110px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 84%, rgba(255, 255, 255, 0.075), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.resort-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.resort-glow {
    position: absolute;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.62;
}

.resort-glow-left {
    top: -130px;
    left: -120px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.resort-glow-right {
    right: -140px;
    bottom: -130px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.01) 72%);
}

.resort-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.resort-overview-section .container {
    position: relative;
    z-index: 2;
}

.resort-hero-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(360px, 0.94fr);
    gap: 46px;
    align-items: center;
    margin-bottom: 42px;
}

.resort-content h2 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 48px;
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.resort-lead {
    margin-bottom: 20px;
    color: rgba(255, 255, 255, 0.86);
    font-size: 19px;
    line-height: 1.8;
}

.resort-content p {
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.85;
}

.resort-content strong {
    color: #f0d89b;
    font-weight: 700;
}

.resort-fact-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-top: 28px;
}

.resort-fact-card {
    padding: 18px;
    border-radius: 22px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 18px 36px rgba(0, 0, 0, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

.resort-fact-card i {
    display: block;
    margin-bottom: 12px;
    color: #d9b46a;
    font-size: 24px;
}

.resort-fact-card span {
    display: block;
    margin-bottom: 5px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.resort-fact-card strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.4;
}

.resort-image-wrap {
    position: relative;
}

.resort-image-frame {
    position: relative;
    overflow: hidden;
    padding: 16px;
    border-radius: 34px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 30px 70px rgba(0, 0, 0, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.10);
}

.resort-image-glow {
    position: absolute;
    inset: 14% 10%;
    border-radius: 30px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.26), transparent 68%);
    filter: blur(26px);
    z-index: 0;
}

.resort-main-image {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    min-height: 430px;
    object-fit: cover;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 20px 42px rgba(0, 0, 0, 0.28),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset;
    transition: transform 0.45s ease, filter 0.45s ease;
}

.resort-image-frame:hover .resort-main-image {
    transform: scale(1.025);
    filter: saturate(1.08) brightness(0.96);
}

.resort-floating-card {
    position: absolute;
    right: -22px;
    bottom: 28px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    max-width: 310px;
    padding: 17px 18px;
    border-radius: 20px;
    background: rgba(10, 18, 35, 0.84);
    border: 1px solid rgba(217, 180, 106, 0.24);
    box-shadow: 0 20px 38px rgba(0, 0, 0, 0.28);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.resort-floating-card i {
    flex-shrink: 0;
    margin-top: 3px;
    color: #d9b46a;
    font-size: 20px;
}

.resort-floating-card strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
}

.resort-floating-card span {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
    line-height: 1.55;
}

/* Casino Highlight */
.casino-highlight-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
    gap: 28px;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.casino-highlight-content h3,
.resort-bottom-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
}

.casino-highlight-content p,
.resort-bottom-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.casino-feature-list {
    display: grid;
    gap: 16px;
}

.casino-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.085);
    background: rgba(255, 255, 255, 0.045);
}

.casino-feature-item i {
    flex-shrink: 0;
    margin-top: 3px;
    color: #d9b46a;
    font-size: 22px;
}

.casino-feature-item h4 {
    margin: 0 0 6px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 800;
}

.casino-feature-item p {
    margin: 0;
    color: rgba(255, 255, 255, 0.68);
    font-size: 14px;
    line-height: 1.65;
}

/* Services */
.resort-services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.resort-service-card {
    position: relative;
    overflow: hidden;
    min-height: 285px;
    padding: 30px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.resort-service-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.resort-service-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.resort-service-card:hover::before {
    opacity: 1;
}

.featured-service-card {
    border-color: rgba(217, 180, 106, 0.32);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.service-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.service-icon i {
    font-size: 26px;
}

.resort-service-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.3;
}

.resort-service-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255, 255, 255, 0.70);
    font-size: 15px;
    line-height: 1.78;
}

/* Bottom CTA */
.resort-bottom-panel {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 28px;
    align-items: center;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.035)),
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 45%);
    box-shadow:
        0 24px 58px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.10);
}

.resort-panel-cta {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 15px 30px;
    overflow: hidden;
    border-radius: 999px;
    border: 1px solid rgba(255, 232, 184, 0.88);
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    color: #101827;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.resort-panel-cta::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.resort-panel-cta:hover {
    color: #101827;
    transform: translateY(-2px);
    box-shadow:
        0 18px 36px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.resort-panel-cta:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Resort Overview Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .resort-hero-panel {
        grid-template-columns: 1fr;
    }

    .resort-image-wrap {
        max-width: 720px;
        margin: 0 auto;
    }

    .resort-floating-card {
        right: 18px;
    }

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

@media (max-width: 991px) {
    .resort-overview-section {
        padding: 85px 0;
    }

    .resort-content h2 {
        font-size: 38px;
    }

    .resort-lead {
        font-size: 17px;
    }

    .resort-fact-grid {
        grid-template-columns: 1fr;
    }

    .casino-highlight-panel {
        grid-template-columns: 1fr;
        padding: 28px;
    }

    .resort-bottom-panel {
        grid-template-columns: 1fr;
    }

    .resort-panel-cta {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .resort-services-grid {
        grid-template-columns: 1fr;
    }

    .resort-main-image {
        min-height: 320px;
    }

    .resort-floating-card {
        position: static;
        max-width: 100%;
        margin-top: 14px;
    }

    .resort-content h2 {
        font-size: 32px;
    }

    .casino-highlight-content h3,
    .resort-bottom-panel h3 {
        font-size: 28px;
    }
}

@media (max-width: 576px) {
    .resort-overview-section {
        padding: 72px 0;
    }

    .resort-content h2 {
        font-size: 29px;
    }

    .resort-hero-panel {
        gap: 34px;
    }

    .resort-image-frame {
        padding: 10px;
        border-radius: 26px;
    }

    .resort-main-image {
        border-radius: 20px;
    }

    .casino-highlight-panel,
    .resort-bottom-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .resort-service-card {
        min-height: auto;
        padding: 26px 22px;
        border-radius: 26px;
    }
}

/*--------------------------------------------------------------
# Location and Transport Section
--------------------------------------------------------------*/

.location-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.location-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.location-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.location-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.location-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.location-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.location-section .container {
    position: relative;
    z-index: 2;
}

.location-main-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.location-content h3,
.location-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.location-content p,
.location-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.location-content strong {
    color: #f0d89b;
    font-weight: 700;
}

.location-fact-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-top: 28px;
}

.location-fact-card {
    padding: 18px;
    border-radius: 22px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 18px 36px rgba(0, 0, 0, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

.location-fact-card i {
    display: block;
    margin-bottom: 12px;
    color: #d9b46a;
    font-size: 24px;
}

.location-fact-card span {
    display: block;
    margin-bottom: 5px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.location-fact-card strong {
    display: block;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.4;
}

.location-map-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.map-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.map-icon i {
    font-size: 28px;
}

.location-map-card h3 {
    margin: 0 0 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.25;
}

.location-map-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.location-map-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.location-map-card li:last-child {
    margin-bottom: 0;
}

.location-map-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 16px;
}

/* Table */
.location-table-wrap {
    overflow: hidden;
    margin-bottom: 28px;
    border-radius: 30px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.location-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.location-info-table th,
.location-info-table td {
    padding: 20px 24px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.location-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.location-info-table td:first-child {
    width: 34%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 750;
}

.location-info-table td:last-child {
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.75;
}

.location-info-table tr:last-child td {
    border-bottom: none;
}

/* Transport cards */
.transport-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.transport-card {
    position: relative;
    overflow: hidden;
    min-height: 280px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.transport-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.transport-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.transport-card:hover::before {
    opacity: 1;
}

.transport-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.transport-icon i {
    font-size: 26px;
}

.transport-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.transport-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255, 255, 255, 0.70);
    font-size: 15px;
    line-height: 1.74;
}

/* Bottom note */
.location-note-panel {
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.035)),
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 45%);
    box-shadow:
        0 24px 58px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.10);
}

/*--------------------------------------------------------------
# Location Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .location-main-panel {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 991px) {
    .location-section {
        padding: 85px 0;
    }

    .location-content h3,
    .location-note-panel h3 {
        font-size: 30px;
    }

    .location-fact-grid {
        grid-template-columns: 1fr;
    }

    .location-table-wrap {
        overflow-x: auto;
    }

    .location-info-table {
        min-width: 720px;
    }
}

@media (max-width: 767px) {
    .transport-grid {
        grid-template-columns: 1fr;
    }

    .transport-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .location-section {
        padding: 72px 0;
    }

    .location-main-panel,
    .location-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .location-map-card,
    .transport-card {
        padding: 26px 22px;
        border-radius: 26px;
    }

    .location-content h3,
    .location-note-panel h3 {
        font-size: 26px;
    }

    .location-info-table th,
    .location-info-table td {
        padding: 18px;
    }
}

/*--------------------------------------------------------------
# Casino Gaming Section
--------------------------------------------------------------*/

.gaming-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.gaming-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.gaming-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.gaming-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.gaming-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.gaming-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.gaming-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.gaming-intro-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.gaming-intro-content h3,
.table-games-content h3,
.hours-heading h3,
.visitor-guidance-column h3,
.gaming-faq-heading h3,
.responsible-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.gaming-intro-content p,
.table-games-content p,
.hours-heading p,
.visitor-guidance-column p,
.responsible-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.gaming-stat-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.gaming-stat-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.gaming-stat-icon i {
    font-size: 28px;
}

.gaming-stat-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gaming-stat-card strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.gaming-stat-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.gaming-stat-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.gaming-stat-card li:last-child {
    margin-bottom: 0;
}

.gaming-stat-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Gaming zones */
.gaming-zones-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.gaming-zone-card,
.machine-card,
.visitor-guidance-column,
.responsible-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.featured-gaming-zone {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.gaming-zone-icon,
.machine-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 22px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.gaming-zone-icon i,
.machine-icon i {
    font-size: 26px;
}

.gaming-zone-label {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.gaming-zone-card h3,
.machine-card h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.22;
}

.gaming-zone-card p,
.machine-card p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.82;
}

/* Table games panel */
.table-games-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.032)),
        radial-gradient(circle at bottom right, rgba(217, 180, 106, 0.13), transparent 45%);
    box-shadow:
        0 24px 58px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.10);
}

.table-games-list {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background: rgba(255, 255, 255, 0.04);
}

.table-game-row {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    transition: background 0.3s ease, color 0.3s ease;
}

.table-game-row:last-child {
    border-bottom: none;
}

.table-game-row span {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.table-game-row strong {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 850;
    line-height: 1.25;
    text-transform: uppercase;
}

.table-game-row i {
    color: #d9b46a;
    font-size: 18px;
}

.table-game-row:hover,
.table-game-row.active-row {
    background: rgba(217, 180, 106, 0.13);
}

/* Machine panel */
.machine-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

/* Hours */
.hours-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.hours-heading {
    max-width: 820px;
    margin-bottom: 26px;
}

.hours-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.hours-card {
    padding: 24px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background: rgba(255, 255, 255, 0.045);
}

.hours-card h4 {
    margin: 0 0 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 850;
    line-height: 1.3;
}

.hours-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.hours-card li {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.hours-card li:last-child {
    border-bottom: none;
}

.hours-card li span {
    color: rgba(255, 255, 255, 0.68);
    font-size: 14px;
    line-height: 1.45;
}

.hours-card li strong {
    color: #f0d89b;
    font-size: 14px;
    line-height: 1.45;
    white-space: nowrap;
}

/* Visitor guidance */
.visitor-guidance-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

/* FAQ table */
.gaming-faq-panel {
    margin-bottom: 28px;
}

.gaming-faq-heading {
    margin-bottom: 20px;
}

.gaming-table-wrap {
    overflow: hidden;
    border-radius: 30px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.gaming-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.gaming-info-table th,
.gaming-info-table td {
    padding: 20px 24px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.gaming-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.gaming-info-table td:first-child {
    width: 34%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 750;
}

.gaming-info-table td:last-child {
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.75;
}

.gaming-info-table tr:last-child td {
    border-bottom: none;
}

/*--------------------------------------------------------------
# Casino Gaming Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .gaming-intro-panel,
    .table-games-panel {
        grid-template-columns: 1fr;
    }

    .machine-panel,
    .visitor-guidance-panel {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {
    .gaming-section {
        padding: 85px 0;
    }

    .gaming-zones-grid,
    .hours-grid {
        grid-template-columns: 1fr;
    }

    .gaming-intro-content h3,
    .table-games-content h3,
    .hours-heading h3,
    .visitor-guidance-column h3,
    .gaming-faq-heading h3,
    .responsible-note-panel h3 {
        font-size: 30px;
    }

    .gaming-table-wrap {
        overflow-x: auto;
    }

    .gaming-info-table {
        min-width: 760px;
    }
}

@media (max-width: 576px) {
    .gaming-section {
        padding: 72px 0;
    }

    .gaming-intro-panel,
    .table-games-panel,
    .hours-panel,
    .gaming-zone-card,
    .machine-card,
    .visitor-guidance-column,
    .responsible-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .gaming-stat-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .table-game-row {
        padding: 18px;
        grid-template-columns: 38px 1fr auto;
    }

    .table-game-row strong {
        font-size: 14px;
    }

    .gaming-intro-content h3,
    .table-games-content h3,
    .hours-heading h3,
    .visitor-guidance-column h3,
    .gaming-faq-heading h3,
    .responsible-note-panel h3 {
        font-size: 26px;
    }

    .hours-card li {
        flex-direction: column;
        gap: 6px;
    }

    .hours-card li strong {
        white-space: normal;
    }
}

/*--------------------------------------------------------------
# Table Games Guide Section
--------------------------------------------------------------*/

.table-guide-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.table-guide-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.table-guide-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.table-guide-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.table-guide-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.table-guide-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.table-guide-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.table-guide-intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.table-guide-content h3,
.comparison-heading h3,
.table-guide-note h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.table-guide-content p,
.comparison-heading p,
.table-guide-note p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.table-guide-summary {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.summary-icon i {
    font-size: 28px;
}

.table-guide-summary > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.table-guide-summary strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.table-guide-summary ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.table-guide-summary li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.table-guide-summary li:last-child {
    margin-bottom: 0;
}

.table-guide-summary li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Game cards */
.table-guide-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 18px;
    margin-bottom: 28px;
}

.table-guide-card {
    position: relative;
    overflow: hidden;
    min-height: 430px;
    padding: 26px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.table-guide-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.table-guide-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.table-guide-card:hover::before {
    opacity: 1;
}

.featured-table-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.table-guide-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 22px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.table-guide-icon i {
    font-size: 26px;
}

.table-guide-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.table-guide-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.25;
}

.table-guide-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

.table-guide-meta {
    position: relative;
    z-index: 1;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.085);
}

.table-guide-meta span {
    display: block;
    margin-bottom: 5px;
    color: rgba(255, 255, 255, 0.48);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.table-guide-meta strong {
    display: block;
    color: #f0d89b;
    font-size: 13px;
    line-height: 1.45;
}

/* Comparison */
.table-comparison-panel,
.table-guide-note {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.comparison-heading {
    max-width: 860px;
    margin-bottom: 24px;
}

.comparison-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.comparison-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.comparison-table th,
.comparison-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.comparison-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.comparison-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.65;
}

.comparison-table td:first-child {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

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

/*--------------------------------------------------------------
# Table Games Guide Responsive
--------------------------------------------------------------*/

@media (max-width: 1399px) {
    .table-guide-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .table-guide-card {
        min-height: 390px;
    }
}

@media (max-width: 1199px) {
    .table-guide-intro {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {
    .table-guide-section {
        padding: 85px 0;
    }

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

    .table-guide-content h3,
    .comparison-heading h3,
    .table-guide-note h3 {
        font-size: 30px;
    }

    .comparison-table-wrap {
        overflow-x: auto;
    }

    .comparison-table {
        min-width: 840px;
    }
}

@media (max-width: 767px) {
    .table-guide-grid {
        grid-template-columns: 1fr;
    }

    .table-guide-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .table-guide-section {
        padding: 72px 0;
    }

    .table-guide-intro,
    .table-comparison-panel,
    .table-guide-note {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .table-guide-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .table-guide-content h3,
    .comparison-heading h3,
    .table-guide-note h3 {
        font-size: 26px;
    }

    .comparison-table th,
    .comparison-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Gaming Machines Section
--------------------------------------------------------------*/

.machines-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.machines-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.machines-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.machines-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.machines-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.machines-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.machines-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.machines-intro-panel,
.machine-types-panel,
.machine-count-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.machines-intro-content h3,
.machine-types-content h3,
.machine-count-card h3,
.machines-hours-heading h3,
.machines-beginner-column h3,
.machines-faq-heading h3,
.machines-responsible-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.machines-intro-content p,
.machine-types-content p,
.machine-count-card p,
.machines-hours-heading p,
.machines-beginner-column p,
.machines-responsible-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.machines-intro-content strong,
.machine-count-card strong {
    color: #f0d89b;
    font-weight: 750;
}

.machines-snapshot-card,
.machine-count-side {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.machines-snapshot-icon,
.machine-count-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.machines-snapshot-icon i,
.machine-count-icon i {
    font-size: 28px;
}

.machines-snapshot-card > span,
.machine-count-side > strong {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.machines-snapshot-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.machines-snapshot-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.machines-snapshot-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.machines-snapshot-card li:last-child {
    margin-bottom: 0;
}

.machines-snapshot-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

.machine-count-side p {
    margin: 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: 15px;
    line-height: 1.75;
}

/* Zones */
.machines-zones-panel,
.machines-beginner-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.machines-zone-card,
.machines-beginner-column,
.machines-responsible-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.featured-machine-zone {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.machines-zone-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 22px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.machines-zone-icon i {
    font-size: 26px;
}

.machines-zone-label {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.machines-zone-card h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.22;
}

.machines-zone-card p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.82;
}

/* Feature cards */
.machines-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.machine-feature-card {
    position: relative;
    overflow: hidden;
    min-height: 285px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.machine-feature-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.machine-feature-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.machine-feature-card:hover::before {
    opacity: 1;
}

.machine-feature-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.machine-feature-icon i {
    font-size: 26px;
}

.machine-feature-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.machine-feature-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255, 255, 255, 0.70);
    font-size: 15px;
    line-height: 1.74;
}

/* Machine type list */
.machine-types-list {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background: rgba(255, 255, 255, 0.04);
}

.machine-type-row {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    transition: background 0.3s ease, color 0.3s ease;
}

.machine-type-row:last-child {
    border-bottom: none;
}

.machine-type-row span {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.machine-type-row strong {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 850;
    line-height: 1.25;
    text-transform: uppercase;
}

.machine-type-row i {
    color: #d9b46a;
    font-size: 18px;
}

.machine-type-row:hover,
.machine-type-row.active-row {
    background: rgba(217, 180, 106, 0.13);
}

/* Hours */
.machines-hours-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.machines-hours-heading {
    max-width: 820px;
    margin-bottom: 26px;
}

.machines-hours-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.machines-hours-card {
    padding: 24px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background: rgba(255, 255, 255, 0.045);
}

.machines-hours-card h4 {
    margin: 0 0 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 850;
    line-height: 1.3;
}

.machines-hours-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.machines-hours-card li {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.machines-hours-card li:last-child {
    border-bottom: none;
}

.machines-hours-card li span {
    color: rgba(255, 255, 255, 0.68);
    font-size: 14px;
    line-height: 1.45;
}

.machines-hours-card li strong {
    color: #f0d89b;
    font-size: 14px;
    line-height: 1.45;
    white-space: nowrap;
}

/* FAQ table */
.machines-faq-panel {
    margin-bottom: 28px;
}

.machines-faq-heading {
    margin-bottom: 20px;
}

.machines-table-wrap {
    overflow: hidden;
    border-radius: 30px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.machines-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.machines-info-table th,
.machines-info-table td {
    padding: 20px 24px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.machines-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.machines-info-table td:first-child {
    width: 34%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 750;
}

.machines-info-table td:last-child {
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.75;
}

.machines-info-table tr:last-child td {
    border-bottom: none;
}

/*--------------------------------------------------------------
# Gaming Machines Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .machines-intro-panel,
    .machine-types-panel,
    .machine-count-panel {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 991px) {
    .machines-section {
        padding: 85px 0;
    }

    .machines-zones-panel,
    .machines-beginner-panel,
    .machines-hours-grid {
        grid-template-columns: 1fr;
    }

    .machines-intro-content h3,
    .machine-types-content h3,
    .machine-count-card h3,
    .machines-hours-heading h3,
    .machines-beginner-column h3,
    .machines-faq-heading h3,
    .machines-responsible-panel h3 {
        font-size: 30px;
    }

    .machines-table-wrap {
        overflow-x: auto;
    }

    .machines-info-table {
        min-width: 760px;
    }
}

@media (max-width: 767px) {
    .machines-feature-grid {
        grid-template-columns: 1fr;
    }

    .machine-feature-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .machines-section {
        padding: 72px 0;
    }

    .machines-intro-panel,
    .machine-types-panel,
    .machine-count-panel,
    .machines-hours-panel,
    .machines-zone-card,
    .machines-beginner-column,
    .machines-responsible-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .machines-snapshot-card,
    .machine-count-side,
    .machine-feature-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .machine-type-row {
        padding: 18px;
        grid-template-columns: 38px 1fr auto;
    }

    .machine-type-row strong {
        font-size: 14px;
    }

    .machines-intro-content h3,
    .machine-types-content h3,
    .machine-count-card h3,
    .machines-hours-heading h3,
    .machines-beginner-column h3,
    .machines-faq-heading h3,
    .machines-responsible-panel h3 {
        font-size: 26px;
    }

    .machines-hours-card li {
        flex-direction: column;
        gap: 6px;
    }

    .machines-hours-card li strong {
        white-space: normal;
    }

    .machines-info-table th,
    .machines-info-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Casino Areas Comparison Section
--------------------------------------------------------------*/

.areas-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.areas-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.areas-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.areas-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.areas-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.areas-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.areas-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.areas-intro-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.areas-intro-content h3,
.areas-comparison-heading h3,
.areas-hours-heading h3,
.areas-guidance-column h3,
.areas-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.areas-intro-content p,
.areas-comparison-heading p,
.areas-hours-heading p,
.areas-guidance-column p,
.areas-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.areas-intro-content strong {
    color: #f0d89b;
    font-weight: 750;
}

.areas-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.areas-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.areas-summary-icon i {
    font-size: 28px;
}

.areas-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.areas-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.areas-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.areas-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.areas-summary-card li:last-child {
    margin-bottom: 0;
}

.areas-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Area cards */
.areas-dual-grid,
.areas-guidance-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.area-profile-card,
.areas-guidance-column,
.areas-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.featured-area-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.area-profile-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 22px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.area-profile-icon i {
    font-size: 26px;
}

.area-label {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.area-profile-card h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.22;
}

.area-profile-card p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.82;
}

.area-feature-list {
    display: grid;
    gap: 12px;
    margin-top: 22px;
}

.area-feature-list div {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.075);
}

.area-feature-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 17px;
}

.area-feature-list span {
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

/* Comparison table */
.areas-comparison-panel,
.areas-hours-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.areas-comparison-heading,
.areas-hours-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.areas-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.areas-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.areas-info-table th,
.areas-info-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.areas-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.areas-info-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.areas-info-table td:first-child {
    width: 23%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.areas-info-table tr:last-child td {
    border-bottom: none;
}

/* Hours */
.areas-hours-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.areas-hours-card {
    padding: 24px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background: rgba(255, 255, 255, 0.045);
}

.areas-hours-card h4 {
    margin: 0 0 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 850;
    line-height: 1.3;
}

.areas-hours-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.areas-hours-card li {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.areas-hours-card li:last-child {
    border-bottom: none;
}

.areas-hours-card li span {
    color: rgba(255, 255, 255, 0.68);
    font-size: 14px;
    line-height: 1.45;
}

.areas-hours-card li strong {
    color: #f0d89b;
    font-size: 14px;
    line-height: 1.45;
    white-space: nowrap;
}

/*--------------------------------------------------------------
# Casino Areas Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .areas-intro-panel {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {
    .areas-section {
        padding: 85px 0;
    }

    .areas-dual-grid,
    .areas-guidance-panel,
    .areas-hours-grid {
        grid-template-columns: 1fr;
    }

    .areas-intro-content h3,
    .areas-comparison-heading h3,
    .areas-hours-heading h3,
    .areas-guidance-column h3,
    .areas-note-panel h3 {
        font-size: 30px;
    }

    .areas-table-wrap {
        overflow-x: auto;
    }

    .areas-info-table {
        min-width: 820px;
    }
}

@media (max-width: 576px) {
    .areas-section {
        padding: 72px 0;
    }

    .areas-intro-panel,
    .areas-comparison-panel,
    .areas-hours-panel,
    .area-profile-card,
    .areas-guidance-column,
    .areas-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .areas-summary-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .areas-intro-content h3,
    .areas-comparison-heading h3,
    .areas-hours-heading h3,
    .areas-guidance-column h3,
    .areas-note-panel h3 {
        font-size: 26px;
    }

    .areas-hours-card li {
        flex-direction: column;
        gap: 6px;
    }

    .areas-hours-card li strong {
        white-space: normal;
    }

    .areas-info-table th,
    .areas-info-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Casino Atmosphere and Dress Code Section
--------------------------------------------------------------*/

.dress-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.dress-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.dress-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.dress-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.dress-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.dress-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.dress-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.dress-intro-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.dress-intro-content h3,
.dress-table-heading h3,
.dress-atmosphere-column h3,
.dress-faq-heading h3,
.dress-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.dress-intro-content p,
.dress-table-heading p,
.dress-atmosphere-column p,
.dress-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.dress-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.dress-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.dress-summary-icon i {
    font-size: 28px;
}

.dress-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dress-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.dress-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.dress-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.dress-summary-card li:last-child {
    margin-bottom: 0;
}

.dress-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Guidance cards */
.dress-guidance-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.dress-guidance-card {
    position: relative;
    overflow: hidden;
    min-height: 390px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.dress-guidance-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.dress-guidance-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.dress-guidance-card:hover::before {
    opacity: 1;
}

.featured-dress-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.dress-card-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.dress-card-icon i {
    font-size: 26px;
}

.dress-card-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.dress-guidance-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.dress-guidance-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Tables and panels */
.dress-table-panel,
.dress-faq-panel,
.dress-note-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.dress-table-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.dress-table-wrap,
.dress-faq-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.dress-info-table,
.dress-faq-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.dress-info-table th,
.dress-info-table td,
.dress-faq-table th,
.dress-faq-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.dress-info-table th,
.dress-faq-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.dress-info-table td,
.dress-faq-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.dress-info-table td:first-child,
.dress-faq-table td:first-child {
    width: 26%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.dress-info-table tr:last-child td,
.dress-faq-table tr:last-child td {
    border-bottom: none;
}

/* Atmosphere columns */
.dress-atmosphere-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.dress-atmosphere-column {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# Dress Code Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .dress-intro-panel {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 991px) {
    .dress-section {
        padding: 85px 0;
    }

    .dress-atmosphere-panel {
        grid-template-columns: 1fr;
    }

    .dress-intro-content h3,
    .dress-table-heading h3,
    .dress-atmosphere-column h3,
    .dress-faq-heading h3,
    .dress-note-panel h3 {
        font-size: 30px;
    }

    .dress-table-wrap,
    .dress-faq-table-wrap {
        overflow-x: auto;
    }

    .dress-info-table,
    .dress-faq-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .dress-guidance-grid {
        grid-template-columns: 1fr;
    }

    .dress-guidance-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .dress-section {
        padding: 72px 0;
    }

    .dress-intro-panel,
    .dress-table-panel,
    .dress-faq-panel,
    .dress-note-panel,
    .dress-atmosphere-column {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .dress-summary-card,
    .dress-guidance-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .dress-intro-content h3,
    .dress-table-heading h3,
    .dress-atmosphere-column h3,
    .dress-faq-heading h3,
    .dress-note-panel h3 {
        font-size: 26px;
    }

    .dress-info-table th,
    .dress-info-table td,
    .dress-faq-table th,
    .dress-faq-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Entry Requirements Section
--------------------------------------------------------------*/

.entry-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.entry-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.entry-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.entry-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.entry-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.entry-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.entry-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.entry-intro-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.entry-intro-content h3,
.entry-rules-heading h3,
.entry-info-column h3,
.entry-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.entry-intro-content p,
.entry-rules-heading p,
.entry-info-column p,
.entry-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.entry-intro-content strong {
    color: #f0d89b;
    font-weight: 750;
}

.entry-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.entry-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.entry-summary-icon i {
    font-size: 28px;
}

.entry-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.entry-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.entry-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.entry-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.entry-summary-card li:last-child {
    margin-bottom: 0;
}

.entry-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Cards */
.entry-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.entry-card,
.entry-guidance-card {
    position: relative;
    overflow: hidden;
    min-height: 350px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.entry-card::before,
.entry-guidance-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.entry-card:hover,
.entry-guidance-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.entry-card:hover::before,
.entry-guidance-card:hover::before {
    opacity: 1;
}

.featured-entry-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.entry-card-icon,
.entry-guidance-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.entry-card-icon i,
.entry-guidance-icon i {
    font-size: 26px;
}

.entry-card-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.entry-card h3,
.entry-guidance-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.entry-card p,
.entry-guidance-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Info columns */
.entry-info-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.entry-info-column,
.entry-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/* Table */
.entry-rules-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.entry-rules-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.entry-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.entry-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.entry-info-table th,
.entry-info-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.entry-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.entry-info-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.entry-info-table td:first-child {
    width: 32%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.entry-info-table tr:last-child td {
    border-bottom: none;
}

/* Guidance */
.entry-guidance-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.entry-guidance-card {
    min-height: 250px;
}

/*--------------------------------------------------------------
# Entry Requirements Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .entry-intro-panel {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 991px) {
    .entry-section {
        padding: 85px 0;
    }

    .entry-info-panel,
    .entry-guidance-grid {
        grid-template-columns: 1fr;
    }

    .entry-intro-content h3,
    .entry-rules-heading h3,
    .entry-info-column h3,
    .entry-note-panel h3 {
        font-size: 30px;
    }

    .entry-table-wrap {
        overflow-x: auto;
    }

    .entry-info-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .entry-card-grid {
        grid-template-columns: 1fr;
    }

    .entry-card,
    .entry-guidance-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .entry-section {
        padding: 72px 0;
    }

    .entry-intro-panel,
    .entry-rules-panel,
    .entry-info-column,
    .entry-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .entry-summary-card,
    .entry-card,
    .entry-guidance-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .entry-intro-content h3,
    .entry-rules-heading h3,
    .entry-info-column h3,
    .entry-note-panel h3 {
        font-size: 26px;
    }

    .entry-info-table th,
    .entry-info-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Casino Payments and Player Information Section
--------------------------------------------------------------*/

.player-info-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.player-info-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.player-info-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.player-info-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.player-info-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.player-info-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.player-info-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.player-info-intro,
.player-limits-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.player-info-content h3,
.player-money-column h3,
.player-comparison-heading h3,
.player-limits-content h3,
.player-faq-heading h3,
.player-responsible-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.player-info-content p,
.player-money-column p,
.player-comparison-heading p,
.player-limits-content p,
.player-responsible-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.player-limits-content strong {
    color: #f0d89b;
    font-weight: 750;
}

.player-info-summary,
.player-limits-note {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.player-info-summary-icon,
.player-limits-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.player-info-summary-icon i,
.player-limits-icon i {
    font-size: 28px;
}

.player-info-summary > span,
.player-limits-note > strong {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.player-info-summary > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.player-info-summary ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.player-info-summary li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.player-info-summary li:last-child {
    margin-bottom: 0;
}

.player-info-summary li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

.player-limits-note p {
    margin: 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: 15px;
    line-height: 1.75;
}

/* Cards */
.player-info-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.player-info-card {
    position: relative;
    overflow: hidden;
    min-height: 390px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.player-info-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.player-info-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.player-info-card:hover::before {
    opacity: 1;
}

.featured-player-info-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.player-info-card-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.player-info-card-icon i {
    font-size: 26px;
}

.player-info-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.player-info-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.player-info-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Columns */
.player-money-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.player-money-column,
.player-responsible-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/* Tables */
.player-comparison-panel,
.player-faq-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.player-comparison-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.player-comparison-table-wrap,
.player-faq-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.player-comparison-table,
.player-faq-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.player-comparison-table th,
.player-comparison-table td,
.player-faq-table th,
.player-faq-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.player-comparison-table th,
.player-faq-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.player-comparison-table td,
.player-faq-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.player-comparison-table td:first-child,
.player-faq-table td:first-child {
    width: 28%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.player-comparison-table tr:last-child td,
.player-faq-table tr:last-child td {
    border-bottom: none;
}

/*--------------------------------------------------------------
# Casino Payments Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .player-info-intro,
    .player-limits-panel {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 991px) {
    .player-info-section {
        padding: 85px 0;
    }

    .player-money-panel {
        grid-template-columns: 1fr;
    }

    .player-info-content h3,
    .player-money-column h3,
    .player-comparison-heading h3,
    .player-limits-content h3,
    .player-faq-heading h3,
    .player-responsible-panel h3 {
        font-size: 30px;
    }

    .player-comparison-table-wrap,
    .player-faq-table-wrap {
        overflow-x: auto;
    }

    .player-comparison-table,
    .player-faq-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .player-info-grid {
        grid-template-columns: 1fr;
    }

    .player-info-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .player-info-section {
        padding: 72px 0;
    }

    .player-info-intro,
    .player-limits-panel,
    .player-comparison-panel,
    .player-faq-panel,
    .player-money-column,
    .player-responsible-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .player-info-summary,
    .player-limits-note,
    .player-info-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .player-info-content h3,
    .player-money-column h3,
    .player-comparison-heading h3,
    .player-limits-content h3,
    .player-faq-heading h3,
    .player-responsible-panel h3 {
        font-size: 26px;
    }

    .player-comparison-table th,
    .player-comparison-table td,
    .player-faq-table th,
    .player-faq-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Federal Rewards Club Section
--------------------------------------------------------------*/

.rewards-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.rewards-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.rewards-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.rewards-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.rewards-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.rewards-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.rewards-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.rewards-intro-panel,
.rewards-tier-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.rewards-intro-content h3,
.rewards-steps-heading h3,
.rewards-tier-content h3,
.rewards-table-heading h3,
.rewards-advice-column h3,
.rewards-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.rewards-intro-content p,
.rewards-steps-heading p,
.rewards-tier-content p,
.rewards-table-heading p,
.rewards-advice-column p,
.rewards-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.rewards-summary-card,
.rewards-tier-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.rewards-summary-icon,
.rewards-tier-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.rewards-summary-icon i,
.rewards-tier-icon i {
    font-size: 28px;
}

.rewards-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.rewards-summary-card > strong,
.rewards-tier-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.rewards-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.rewards-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.rewards-summary-card li:last-child {
    margin-bottom: 0;
}

.rewards-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

.rewards-tier-card p {
    margin: 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: 15px;
    line-height: 1.75;
}

/* Steps */
.rewards-steps-panel,
.rewards-table-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.rewards-steps-heading,
.rewards-table-heading {
    max-width: 900px;
    margin-bottom: 26px;
}

.rewards-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.rewards-step-card {
    position: relative;
    overflow: hidden;
    min-height: 280px;
    padding: 26px;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.060), rgba(255, 255, 255, 0.026));
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
}

.rewards-step-number {
    position: absolute;
    top: 20px;
    right: 22px;
    color: rgba(217, 180, 106, 0.18);
    font-family: "Poppins", sans-serif;
    font-size: 46px;
    font-weight: 900;
    line-height: 1;
}

.rewards-step-icon,
.rewards-benefit-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    margin-bottom: 22px;
    border-radius: 19px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.rewards-step-icon i,
.rewards-benefit-icon i {
    font-size: 25px;
}

.rewards-step-card h3,
.rewards-benefit-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
}

.rewards-step-card p,
.rewards-benefit-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Benefits */
.rewards-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.rewards-benefit-card {
    position: relative;
    overflow: hidden;
    min-height: 390px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.rewards-benefit-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.rewards-benefit-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.rewards-benefit-card:hover::before {
    opacity: 1;
}

.featured-rewards-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.rewards-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

/* Table */
.rewards-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.rewards-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.rewards-info-table th,
.rewards-info-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.rewards-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.rewards-info-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.rewards-info-table td:first-child {
    width: 30%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.rewards-info-table tr:last-child td {
    border-bottom: none;
}

/* Advice */
.rewards-advice-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.rewards-advice-column,
.rewards-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# Federal Rewards Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .rewards-intro-panel,
    .rewards-tier-panel {
        grid-template-columns: 1fr;
    }

    .rewards-steps-grid,
    .rewards-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {
    .rewards-section {
        padding: 85px 0;
    }

    .rewards-advice-panel {
        grid-template-columns: 1fr;
    }

    .rewards-intro-content h3,
    .rewards-steps-heading h3,
    .rewards-tier-content h3,
    .rewards-table-heading h3,
    .rewards-advice-column h3,
    .rewards-note-panel h3 {
        font-size: 30px;
    }

    .rewards-table-wrap {
        overflow-x: auto;
    }

    .rewards-info-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .rewards-steps-grid,
    .rewards-benefits-grid {
        grid-template-columns: 1fr;
    }

    .rewards-step-card,
    .rewards-benefit-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .rewards-section {
        padding: 72px 0;
    }

    .rewards-intro-panel,
    .rewards-tier-panel,
    .rewards-steps-panel,
    .rewards-table-panel,
    .rewards-advice-column,
    .rewards-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .rewards-summary-card,
    .rewards-tier-card,
    .rewards-step-card,
    .rewards-benefit-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .rewards-intro-content h3,
    .rewards-steps-heading h3,
    .rewards-tier-content h3,
    .rewards-table-heading h3,
    .rewards-advice-column h3,
    .rewards-note-panel h3 {
        font-size: 26px;
    }

    .rewards-info-table th,
    .rewards-info-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Stay Section
--------------------------------------------------------------*/

.stay-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.stay-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.stay-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.stay-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.stay-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.stay-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.stay-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.stay-intro-panel,
.stay-room-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.stay-intro-content h3,
.stay-room-content h3,
.stay-comparison-heading h3,
.stay-planning-column h3,
.stay-faq-heading h3,
.stay-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.stay-intro-content p,
.stay-room-content p,
.stay-comparison-heading p,
.stay-planning-column p,
.stay-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.stay-intro-content strong {
    color: #f0d89b;
    font-weight: 750;
}

.stay-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.stay-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.stay-summary-icon i {
    font-size: 28px;
}

.stay-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.stay-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.stay-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.stay-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.stay-summary-card li:last-child {
    margin-bottom: 0;
}

.stay-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Options */
.stay-options-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.stay-option-card,
.stay-benefit-card {
    position: relative;
    overflow: hidden;
    min-height: 330px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.stay-option-card::before,
.stay-benefit-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.stay-option-card:hover,
.stay-benefit-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.stay-option-card:hover::before,
.stay-benefit-card:hover::before {
    opacity: 1;
}

.featured-stay-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.stay-option-icon,
.stay-benefit-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.stay-option-icon i,
.stay-benefit-icon i {
    font-size: 26px;
}

.stay-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.stay-option-card h3,
.stay-benefit-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.stay-option-card p,
.stay-benefit-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Room list */
.stay-room-list {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background: rgba(255, 255, 255, 0.04);
}

.stay-room-row {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    transition: background 0.3s ease, color 0.3s ease;
}

.stay-room-row:last-child {
    border-bottom: none;
}

.stay-room-row span {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.stay-room-row strong {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.35;
    text-transform: uppercase;
}

.stay-room-row i {
    color: #d9b46a;
    font-size: 18px;
}

.stay-room-row:hover,
.stay-room-row.active-row {
    background: rgba(217, 180, 106, 0.13);
}

/* Benefits */
.stay-benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.stay-benefit-card {
    min-height: 285px;
}

/* Tables and panels */
.stay-comparison-panel,
.stay-faq-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.stay-comparison-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.stay-table-wrap,
.stay-faq-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.stay-info-table,
.stay-faq-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.stay-info-table th,
.stay-info-table td,
.stay-faq-table th,
.stay-faq-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.stay-info-table th,
.stay-faq-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.stay-info-table td,
.stay-faq-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.stay-info-table td:first-child,
.stay-faq-table td:first-child {
    width: 28%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.stay-info-table tr:last-child td,
.stay-faq-table tr:last-child td {
    border-bottom: none;
}

/* Planning */
.stay-planning-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.stay-planning-column,
.stay-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# Stay Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .stay-intro-panel,
    .stay-room-panel {
        grid-template-columns: 1fr;
    }

    .stay-options-grid,
    .stay-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {
    .stay-section {
        padding: 85px 0;
    }

    .stay-planning-panel {
        grid-template-columns: 1fr;
    }

    .stay-intro-content h3,
    .stay-room-content h3,
    .stay-comparison-heading h3,
    .stay-planning-column h3,
    .stay-faq-heading h3,
    .stay-note-panel h3 {
        font-size: 30px;
    }

    .stay-table-wrap,
    .stay-faq-table-wrap {
        overflow-x: auto;
    }

    .stay-info-table,
    .stay-faq-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .stay-options-grid,
    .stay-benefits-grid {
        grid-template-columns: 1fr;
    }

    .stay-option-card,
    .stay-benefit-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .stay-section {
        padding: 72px 0;
    }

    .stay-intro-panel,
    .stay-room-panel,
    .stay-comparison-panel,
    .stay-faq-panel,
    .stay-planning-column,
    .stay-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .stay-summary-card,
    .stay-option-card,
    .stay-benefit-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .stay-room-row {
        padding: 18px;
        grid-template-columns: 38px 1fr auto;
    }

    .stay-room-row strong {
        font-size: 13px;
    }

    .stay-intro-content h3,
    .stay-room-content h3,
    .stay-comparison-heading h3,
    .stay-planning-column h3,
    .stay-faq-heading h3,
    .stay-note-panel h3 {
        font-size: 26px;
    }

    .stay-info-table th,
    .stay-info-table td,
    .stay-faq-table th,
    .stay-faq-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Dining Section
--------------------------------------------------------------*/

.dining-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.dining-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.dining-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.dining-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.dining-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.dining-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.dining-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.dining-intro-panel,
.dining-bars-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.dining-intro-content h3,
.dining-bars-content h3,
.dining-comparison-heading h3,
.dining-planning-column h3,
.dining-faq-heading h3,
.dining-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.dining-intro-content p,
.dining-bars-content p,
.dining-comparison-heading p,
.dining-planning-column p,
.dining-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.dining-intro-content strong {
    color: #f0d89b;
    font-weight: 750;
}

.dining-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.dining-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.dining-summary-icon i {
    font-size: 28px;
}

.dining-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dining-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.dining-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.dining-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.dining-summary-card li:last-child {
    margin-bottom: 0;
}

.dining-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Venue cards */
.dining-venues-grid,
.dining-scenarios-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.dining-venue-card,
.dining-scenario-card {
    position: relative;
    overflow: hidden;
    min-height: 350px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.dining-venue-card::before,
.dining-scenario-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.dining-venue-card:hover,
.dining-scenario-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.dining-venue-card:hover::before,
.dining-scenario-card:hover::before {
    opacity: 1;
}

.featured-dining-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.dining-venue-icon,
.dining-scenario-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.dining-venue-icon i,
.dining-scenario-icon i {
    font-size: 26px;
}

.dining-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.dining-venue-card h3,
.dining-scenario-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.dining-venue-card p,
.dining-scenario-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Bar list */
.dining-bars-list {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background: rgba(255, 255, 255, 0.04);
}

.dining-bar-row {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    transition: background 0.3s ease, color 0.3s ease;
}

.dining-bar-row:last-child {
    border-bottom: none;
}

.dining-bar-row span {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.dining-bar-row strong {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.35;
    text-transform: uppercase;
}

.dining-bar-row i {
    color: #d9b46a;
    font-size: 18px;
}

.dining-bar-row:hover,
.dining-bar-row.active-row {
    background: rgba(217, 180, 106, 0.13);
}

/* Tables and planning */
.dining-comparison-panel,
.dining-faq-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.dining-comparison-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.dining-table-wrap,
.dining-faq-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.dining-info-table,
.dining-faq-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.dining-info-table th,
.dining-info-table td,
.dining-faq-table th,
.dining-faq-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.dining-info-table th,
.dining-faq-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.dining-info-table td,
.dining-faq-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.dining-info-table td:first-child,
.dining-faq-table td:first-child {
    width: 28%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.dining-info-table tr:last-child td,
.dining-faq-table tr:last-child td {
    border-bottom: none;
}

/* Planning */
.dining-planning-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.dining-planning-column,
.dining-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# Dining Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .dining-intro-panel,
    .dining-bars-panel {
        grid-template-columns: 1fr;
    }

    .dining-venues-grid,
    .dining-scenarios-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {
    .dining-section {
        padding: 85px 0;
    }

    .dining-planning-panel {
        grid-template-columns: 1fr;
    }

    .dining-intro-content h3,
    .dining-bars-content h3,
    .dining-comparison-heading h3,
    .dining-planning-column h3,
    .dining-faq-heading h3,
    .dining-note-panel h3 {
        font-size: 30px;
    }

    .dining-table-wrap,
    .dining-faq-table-wrap {
        overflow-x: auto;
    }

    .dining-info-table,
    .dining-faq-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .dining-venues-grid,
    .dining-scenarios-grid {
        grid-template-columns: 1fr;
    }

    .dining-venue-card,
    .dining-scenario-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .dining-section {
        padding: 72px 0;
    }

    .dining-intro-panel,
    .dining-bars-panel,
    .dining-comparison-panel,
    .dining-faq-panel,
    .dining-planning-column,
    .dining-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .dining-summary-card,
    .dining-venue-card,
    .dining-scenario-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .dining-bar-row {
        padding: 18px;
        grid-template-columns: 38px 1fr auto;
    }

    .dining-bar-row strong {
        font-size: 13px;
    }

    .dining-intro-content h3,
    .dining-bars-content h3,
    .dining-comparison-heading h3,
    .dining-planning-column h3,
    .dining-faq-heading h3,
    .dining-note-panel h3 {
        font-size: 26px;
    }

    .dining-info-table th,
    .dining-info-table td,
    .dining-faq-table th,
    .dining-faq-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Golf, Leisure and Entertainment Section
--------------------------------------------------------------*/

.leisure-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.leisure-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.leisure-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.leisure-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.leisure-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.leisure-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.leisure-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.leisure-intro-panel,
.leisure-range-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.leisure-intro-content h3,
.leisure-range-content h3,
.leisure-comparison-heading h3,
.leisure-planning-column h3,
.leisure-faq-heading h3,
.leisure-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.leisure-intro-content p,
.leisure-range-content p,
.leisure-comparison-heading p,
.leisure-planning-column p,
.leisure-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.leisure-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.leisure-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.leisure-summary-icon i {
    font-size: 28px;
}

.leisure-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.leisure-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.leisure-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.leisure-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.leisure-summary-card li:last-child {
    margin-bottom: 0;
}

.leisure-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Cards */
.leisure-feature-grid,
.leisure-scenarios-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.leisure-feature-card,
.leisure-scenario-card {
    position: relative;
    overflow: hidden;
    min-height: 350px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.leisure-feature-card::before,
.leisure-scenario-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.leisure-feature-card:hover,
.leisure-scenario-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.leisure-feature-card:hover::before,
.leisure-scenario-card:hover::before {
    opacity: 1;
}

.featured-leisure-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.leisure-feature-icon,
.leisure-scenario-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.leisure-feature-icon i,
.leisure-scenario-icon i {
    font-size: 26px;
}

.leisure-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.leisure-feature-card h3,
.leisure-scenario-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.leisure-feature-card p,
.leisure-scenario-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Range list */
.leisure-range-list {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background: rgba(255, 255, 255, 0.04);
}

.leisure-range-row {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    transition: background 0.3s ease, color 0.3s ease;
}

.leisure-range-row:last-child {
    border-bottom: none;
}

.leisure-range-row span {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.leisure-range-row strong {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.35;
    text-transform: uppercase;
}

.leisure-range-row i {
    color: #d9b46a;
    font-size: 18px;
}

.leisure-range-row:hover,
.leisure-range-row.active-row {
    background: rgba(217, 180, 106, 0.13);
}

/* Tables */
.leisure-comparison-panel,
.leisure-faq-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.leisure-comparison-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.leisure-table-wrap,
.leisure-faq-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.leisure-info-table,
.leisure-faq-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.leisure-info-table th,
.leisure-info-table td,
.leisure-faq-table th,
.leisure-faq-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.leisure-info-table th,
.leisure-faq-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.leisure-info-table td,
.leisure-faq-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.leisure-info-table td:first-child,
.leisure-faq-table td:first-child {
    width: 28%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.leisure-info-table tr:last-child td,
.leisure-faq-table tr:last-child td {
    border-bottom: none;
}

/* Planning */
.leisure-planning-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.leisure-planning-column,
.leisure-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# Leisure Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .leisure-intro-panel,
    .leisure-range-panel {
        grid-template-columns: 1fr;
    }

    .leisure-feature-grid,
    .leisure-scenarios-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {
    .leisure-section {
        padding: 85px 0;
    }

    .leisure-planning-panel {
        grid-template-columns: 1fr;
    }

    .leisure-intro-content h3,
    .leisure-range-content h3,
    .leisure-comparison-heading h3,
    .leisure-planning-column h3,
    .leisure-faq-heading h3,
    .leisure-note-panel h3 {
        font-size: 30px;
    }

    .leisure-table-wrap,
    .leisure-faq-table-wrap {
        overflow-x: auto;
    }

    .leisure-info-table,
    .leisure-faq-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .leisure-feature-grid,
    .leisure-scenarios-grid {
        grid-template-columns: 1fr;
    }

    .leisure-feature-card,
    .leisure-scenario-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .leisure-section {
        padding: 72px 0;
    }

    .leisure-intro-panel,
    .leisure-range-panel,
    .leisure-comparison-panel,
    .leisure-faq-panel,
    .leisure-planning-column,
    .leisure-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .leisure-summary-card,
    .leisure-feature-card,
    .leisure-scenario-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .leisure-range-row {
        padding: 18px;
        grid-template-columns: 38px 1fr auto;
    }

    .leisure-range-row strong {
        font-size: 13px;
    }

    .leisure-intro-content h3,
    .leisure-range-content h3,
    .leisure-comparison-heading h3,
    .leisure-planning-column h3,
    .leisure-faq-heading h3,
    .leisure-note-panel h3 {
        font-size: 26px;
    }

    .leisure-info-table th,
    .leisure-info-table td,
    .leisure-faq-table th,
    .leisure-faq-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Who Should Visit Section
--------------------------------------------------------------*/

.audience-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.audience-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.audience-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.audience-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.audience-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.audience-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.audience-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.audience-intro-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.audience-intro-content h3,
.audience-fit-heading h3,
.audience-planning-column h3,
.audience-faq-heading h3,
.audience-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.audience-intro-content p,
.audience-fit-heading p,
.audience-planning-column p,
.audience-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.audience-intro-content strong {
    color: #f0d89b;
    font-weight: 750;
}

.audience-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.audience-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.audience-summary-icon i {
    font-size: 28px;
}

.audience-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.audience-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.audience-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.audience-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.audience-summary-card li:last-child {
    margin-bottom: 0;
}

.audience-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Cards */
.audience-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.audience-card {
    position: relative;
    overflow: hidden;
    min-height: 370px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.audience-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.audience-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.audience-card:hover::before {
    opacity: 1;
}

.featured-audience-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.audience-card-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.audience-card-icon i {
    font-size: 26px;
}

.audience-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.audience-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.audience-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

/* Fit table */
.audience-fit-panel,
.audience-faq-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.audience-fit-heading {
    max-width: 900px;
    margin-bottom: 24px;
}

.audience-table-wrap,
.audience-faq-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.audience-info-table,
.audience-faq-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.audience-info-table th,
.audience-info-table td,
.audience-faq-table th,
.audience-faq-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.audience-info-table th,
.audience-faq-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.audience-info-table td,
.audience-faq-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.audience-info-table td:first-child,
.audience-faq-table td:first-child {
    width: 28%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.audience-info-table tr:last-child td,
.audience-faq-table tr:last-child td {
    border-bottom: none;
}

/* Planning */
.audience-planning-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.audience-planning-column,
.audience-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# Who Should Visit Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .audience-intro-panel {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 991px) {
    .audience-section {
        padding: 85px 0;
    }

    .audience-planning-panel {
        grid-template-columns: 1fr;
    }

    .audience-intro-content h3,
    .audience-fit-heading h3,
    .audience-planning-column h3,
    .audience-faq-heading h3,
    .audience-note-panel h3 {
        font-size: 30px;
    }

    .audience-table-wrap,
    .audience-faq-table-wrap {
        overflow-x: auto;
    }

    .audience-info-table,
    .audience-faq-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .audience-grid {
        grid-template-columns: 1fr;
    }

    .audience-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .audience-section {
        padding: 72px 0;
    }

    .audience-intro-panel,
    .audience-fit-panel,
    .audience-faq-panel,
    .audience-planning-column,
    .audience-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .audience-summary-card,
    .audience-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .audience-intro-content h3,
    .audience-fit-heading h3,
    .audience-planning-column h3,
    .audience-faq-heading h3,
    .audience-note-panel h3 {
        font-size: 26px;
    }

    .audience-info-table th,
    .audience-info-table td,
    .audience-faq-table th,
    .audience-faq-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# First Visit Guide Section
--------------------------------------------------------------*/

.first-visit-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.first-visit-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.first-visit-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.first-visit-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.first-visit-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.first-visit-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.first-visit-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.first-visit-intro-panel,
.first-visit-confidence-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.first-visit-intro-content h3,
.first-visit-flow-heading h3,
.first-visit-confidence-content h3,
.first-visit-itinerary-heading h3,
.first-visit-table-heading h3,
.first-visit-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.first-visit-intro-content p,
.first-visit-flow-heading p,
.first-visit-confidence-content p,
.first-visit-itinerary-heading p,
.first-visit-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.first-visit-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.first-visit-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.first-visit-summary-icon i {
    font-size: 28px;
}

.first-visit-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.first-visit-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.first-visit-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.first-visit-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.first-visit-summary-card li:last-child {
    margin-bottom: 0;
}

.first-visit-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Flow */
.first-visit-flow-panel,
.first-visit-itinerary-panel,
.first-visit-table-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.first-visit-flow-heading,
.first-visit-itinerary-heading {
    max-width: 920px;
    margin-bottom: 26px;
}

.first-visit-steps,
.first-visit-planning-grid,
.first-visit-itinerary-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.first-visit-step,
.first-visit-card,
.first-visit-itinerary-card {
    position: relative;
    overflow: hidden;
    min-height: 300px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.060), rgba(255, 255, 255, 0.026));
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.first-visit-step::before,
.first-visit-card::before,
.first-visit-itinerary-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.first-visit-step:hover,
.first-visit-card:hover,
.first-visit-itinerary-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.first-visit-step:hover::before,
.first-visit-card:hover::before,
.first-visit-itinerary-card:hover::before {
    opacity: 1;
}

.first-visit-step-number {
    position: absolute;
    top: 20px;
    right: 22px;
    color: rgba(217, 180, 106, 0.18);
    font-family: "Poppins", sans-serif;
    font-size: 46px;
    font-weight: 900;
    line-height: 1;
}

.first-visit-step-icon,
.first-visit-card-icon,
.first-visit-itinerary-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.first-visit-step-icon i,
.first-visit-card-icon i,
.first-visit-itinerary-icon i {
    font-size: 26px;
}

.first-visit-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.first-visit-step h3,
.first-visit-card h3,
.first-visit-itinerary-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.first-visit-step p,
.first-visit-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

.featured-first-visit-card,
.featured-itinerary-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

/* Confidence list */
.first-visit-confidence-list {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background: rgba(255, 255, 255, 0.04);
}

.first-visit-confidence-row {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    transition: background 0.3s ease, color 0.3s ease;
}

.first-visit-confidence-row:last-child {
    border-bottom: none;
}

.first-visit-confidence-row span {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.first-visit-confidence-row strong {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.35;
    text-transform: uppercase;
}

.first-visit-confidence-row i {
    color: #d9b46a;
    font-size: 18px;
}

.first-visit-confidence-row:hover,
.first-visit-confidence-row.active-row {
    background: rgba(217, 180, 106, 0.13);
}

/* Itinerary */
.first-visit-itinerary-card ul {
    position: relative;
    z-index: 1;
    margin: 0;
    padding-left: 18px;
}

.first-visit-itinerary-card li {
    margin-bottom: 10px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.65;
}

.first-visit-itinerary-card li:last-child {
    margin-bottom: 0;
}

/* Table */
.first-visit-table-heading {
    margin-bottom: 22px;
}

.first-visit-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.first-visit-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.first-visit-info-table th,
.first-visit-info-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.first-visit-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.first-visit-info-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.first-visit-info-table td:first-child {
    width: 30%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.first-visit-info-table tr:last-child td {
    border-bottom: none;
}

/* Note */
.first-visit-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# First Visit Guide Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .first-visit-intro-panel,
    .first-visit-confidence-panel {
        grid-template-columns: 1fr;
    }

    .first-visit-steps,
    .first-visit-planning-grid,
    .first-visit-itinerary-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {
    .first-visit-section {
        padding: 85px 0;
    }

    .first-visit-intro-content h3,
    .first-visit-flow-heading h3,
    .first-visit-confidence-content h3,
    .first-visit-itinerary-heading h3,
    .first-visit-table-heading h3,
    .first-visit-note-panel h3 {
        font-size: 30px;
    }

    .first-visit-table-wrap {
        overflow-x: auto;
    }

    .first-visit-info-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .first-visit-steps,
    .first-visit-planning-grid,
    .first-visit-itinerary-grid {
        grid-template-columns: 1fr;
    }

    .first-visit-step,
    .first-visit-card,
    .first-visit-itinerary-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .first-visit-section {
        padding: 72px 0;
    }

    .first-visit-intro-panel,
    .first-visit-flow-panel,
    .first-visit-confidence-panel,
    .first-visit-itinerary-panel,
    .first-visit-table-panel,
    .first-visit-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .first-visit-summary-card,
    .first-visit-step,
    .first-visit-card,
    .first-visit-itinerary-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .first-visit-confidence-row {
        padding: 18px;
        grid-template-columns: 38px 1fr auto;
    }

    .first-visit-confidence-row strong {
        font-size: 13px;
    }

    .first-visit-intro-content h3,
    .first-visit-flow-heading h3,
    .first-visit-confidence-content h3,
    .first-visit-itinerary-heading h3,
    .first-visit-table-heading h3,
    .first-visit-note-panel h3 {
        font-size: 26px;
    }

    .first-visit-info-table th,
    .first-visit-info-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# Safe, Licensed and Responsible Casino Gaming Section
--------------------------------------------------------------*/

.protection-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.protection-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.protection-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.protection-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.protection-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.protection-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.protection-section .container {
    position: relative;
    z-index: 2;
}

/* Intro */
.protection-intro-panel,
.protection-support-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.protection-intro-content h3,
.protection-support-content h3,
.protection-process-heading h3,
.protection-table-heading h3,
.protection-contact-column h3,
.protection-note-panel h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.protection-intro-content p,
.protection-support-content p,
.protection-process-heading p,
.protection-contact-column p,
.protection-note-panel p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.protection-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.protection-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.protection-summary-icon i {
    font-size: 28px;
}

.protection-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.protection-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.protection-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.protection-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.protection-summary-card li:last-child {
    margin-bottom: 0;
}

.protection-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/* Core cards */
.protection-core-grid,
.protection-info-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 28px;
}

.protection-core-card,
.protection-info-card {
    position: relative;
    overflow: hidden;
    min-height: 380px;
    padding: 28px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
    transition:
        transform 0.34s ease,
        border-color 0.34s ease,
        box-shadow 0.34s ease;
}

.protection-core-card::before,
.protection-info-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%);
    opacity: 0;
    transition: opacity 0.34s ease;
}

.protection-core-card:hover,
.protection-info-card:hover {
    transform: translateY(-7px);
    border-color: rgba(217, 180, 106, 0.32);
    box-shadow:
        0 30px 64px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08) inset;
}

.protection-core-card:hover::before,
.protection-info-card:hover::before {
    opacity: 1;
}

.featured-protection-card {
    border-color: rgba(217, 180, 106, 0.34);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.035));
}

.protection-card-icon,
.protection-info-icon,
.protection-step-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        linear-gradient(135deg, rgba(248, 231, 176, 0.18), rgba(216, 170, 85, 0.08));
    color: #e7c47c;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.protection-card-icon i,
.protection-info-icon i,
.protection-step-icon i {
    font-size: 26px;
}

.protection-label {
    position: relative;
    z-index: 1;
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background: rgba(217, 180, 106, 0.11);
    color: #e7d0a0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.protection-core-card h3,
.protection-info-card h3,
.protection-step-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.3;
}

.protection-core-card p,
.protection-info-card p,
.protection-step-card p {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.70);
    font-size: 14px;
    line-height: 1.72;
}

.protection-core-card strong,
.protection-contact-column strong {
    color: #f0d89b;
}

/* Support list */
.protection-support-list {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background: rgba(255, 255, 255, 0.04);
}

.protection-support-row {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    gap: 14px;
    align-items: center;
    padding: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
    transition: background 0.3s ease, color 0.3s ease;
}

.protection-support-row:last-child {
    border-bottom: none;
}

.protection-support-row span {
    color: rgba(255, 255, 255, 0.42);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.protection-support-row strong {
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.35;
    text-transform: uppercase;
}

.protection-support-row i {
    color: #d9b46a;
    font-size: 18px;
}

.protection-support-row:hover,
.protection-support-row.active-row {
    background: rgba(217, 180, 106, 0.13);
}

/* Process */
.protection-process-panel,
.protection-table-panel {
    margin-bottom: 28px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.protection-process-heading {
    max-width: 900px;
    margin-bottom: 26px;
}

.protection-process-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.protection-step-card {
    position: relative;
    overflow: hidden;
    min-height: 300px;
    padding: 26px;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.060), rgba(255, 255, 255, 0.026));
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.075);
}

.protection-step-number {
    position: absolute;
    top: 20px;
    right: 22px;
    color: rgba(217, 180, 106, 0.18);
    font-family: "Poppins", sans-serif;
    font-size: 46px;
    font-weight: 900;
    line-height: 1;
}

/* Table */
.protection-table-heading {
    margin-bottom: 22px;
}

.protection-table-wrap {
    overflow: hidden;
    border-radius: 26px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.protection-info-table {
    width: 100%;
    border-collapse: collapse;
    color: #ffffff;
}

.protection-info-table th,
.protection-info-table td {
    padding: 20px 22px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.protection-info-table th {
    background: rgba(217, 180, 106, 0.12);
    color: #f0d89b;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.protection-info-table td {
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.68;
}

.protection-info-table td:first-child {
    width: 30%;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.protection-info-table tr:last-child td {
    border-bottom: none;
}

/* Contact and note */
.protection-contact-panel {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 28px;
}

.protection-contact-column,
.protection-note-panel {
    position: relative;
    overflow: hidden;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/*--------------------------------------------------------------
# Protection Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .protection-intro-panel,
    .protection-support-panel {
        grid-template-columns: 1fr;
    }

    .protection-core-grid,
    .protection-info-grid,
    .protection-process-steps {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {
    .protection-section {
        padding: 85px 0;
    }

    .protection-contact-panel {
        grid-template-columns: 1fr;
    }

    .protection-intro-content h3,
    .protection-support-content h3,
    .protection-process-heading h3,
    .protection-table-heading h3,
    .protection-contact-column h3,
    .protection-note-panel h3 {
        font-size: 30px;
    }

    .protection-table-wrap {
        overflow-x: auto;
    }

    .protection-info-table {
        min-width: 820px;
    }
}

@media (max-width: 767px) {
    .protection-core-grid,
    .protection-info-grid,
    .protection-process-steps {
        grid-template-columns: 1fr;
    }

    .protection-core-card,
    .protection-info-card,
    .protection-step-card {
        min-height: auto;
    }
}

@media (max-width: 576px) {
    .protection-section {
        padding: 72px 0;
    }

    .protection-intro-panel,
    .protection-support-panel,
    .protection-process-panel,
    .protection-table-panel,
    .protection-contact-column,
    .protection-note-panel {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .protection-summary-card,
    .protection-core-card,
    .protection-info-card,
    .protection-step-card {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .protection-support-row {
        padding: 18px;
        grid-template-columns: 38px 1fr auto;
    }

    .protection-support-row strong {
        font-size: 13px;
    }

    .protection-intro-content h3,
    .protection-support-content h3,
    .protection-process-heading h3,
    .protection-table-heading h3,
    .protection-contact-column h3,
    .protection-note-panel h3 {
        font-size: 26px;
    }

    .protection-info-table th,
    .protection-info-table td {
        padding: 16px;
    }
}

/*--------------------------------------------------------------
# FAQ Section
--------------------------------------------------------------*/

.faq-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.faq-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.faq-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.faq-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.faq-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.faq-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.faq-section .container {
    position: relative;
    z-index: 2;
}

/*--------------------------------------------------------------
# FAQ Intro
--------------------------------------------------------------*/

.faq-intro-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 28px;
    align-items: stretch;
    margin: 0 auto 34px;
    padding: 34px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.14), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 26px 60px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.faq-intro-content h3,
.faq-group-heading h3,
.faq-final-note h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.01em;
}

.faq-intro-content p,
.faq-final-note p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

.faq-summary-card {
    position: relative;
    overflow: hidden;
    padding: 28px;
    border-radius: 28px;
    border: 1px solid rgba(217, 180, 106, 0.30);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.20), transparent 45%),
        linear-gradient(180deg, rgba(217, 180, 106, 0.13), rgba(255, 255, 255, 0.04));
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.faq-summary-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin-bottom: 20px;
    border-radius: 22px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    color: #101827;
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.74);
}

.faq-summary-icon i {
    font-size: 28px;
}

.faq-summary-card > span {
    display: block;
    margin-bottom: 7px;
    color: #e7d0a0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.faq-summary-card > strong {
    display: block;
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.25;
}

.faq-summary-card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.faq-summary-card li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.55;
}

.faq-summary-card li:last-child {
    margin-bottom: 0;
}

.faq-summary-card li i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

/*--------------------------------------------------------------
# FAQ Layout
--------------------------------------------------------------*/

.faq-layout {
    display: block;
}

/* Centered category anchors */
.faq-category-list {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    max-width: 1040px;
    margin: 0 auto 36px;
    padding: 18px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.22);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.faq-category-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 13px 20px;
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.78);
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 850;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.045em;
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.090);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    transition:
        color 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.faq-category-link:hover {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 48%, #fff0bd 100%);
    border-color: rgba(217, 180, 106, 0.60);
    transform: translateY(-2px);
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.70);
}

.faq-content {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
    align-items: start;
}

/*--------------------------------------------------------------
# FAQ Groups
--------------------------------------------------------------*/

.faq-group,
.faq-final-note {
    position: relative;
    overflow: hidden;
    padding: 30px;
    border-radius: 32px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.faq-group::before,
.faq-final-note::before {
    content: "";
    position: absolute;
    top: -120px;
    right: -120px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.14), transparent 68%);
    pointer-events: none;
}

.faq-group-heading {
    position: relative;
    z-index: 1;
    margin-bottom: 22px;
}

.faq-group-heading h3 {
    font-size: 28px;
}

/* Last note full width */
.faq-final-note {
    grid-column: 1 / -1;
    max-width: 100%;
}

/*--------------------------------------------------------------
# FAQ Accordion
--------------------------------------------------------------*/

.faq-accordion {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
}

.faq-item {
    overflow: hidden;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.095);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.062), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.055);
    transition:
        border-color 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.faq-item:hover {
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(217, 180, 106, 0.105), rgba(255, 255, 255, 0.038));
    box-shadow:
        0 16px 36px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

.faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    width: 100%;
    min-height: 58px;
    padding: 18px 20px;
    border: 0;
    outline: 0;
    cursor: pointer;
    text-align: left;
    color: #ffffff;
    background: transparent;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 850;
    line-height: 1.38;
}

.faq-question span {
    display: block;
}

.faq-question i {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    color: #d9b46a;
    font-size: 14px;
    background: rgba(217, 180, 106, 0.09);
    border: 1px solid rgba(217, 180, 106, 0.16);
    transition:
        transform 0.3s ease,
        color 0.3s ease,
        background 0.3s ease;
}

.faq-answer {
    display: none;
    padding: 0 20px 20px;
}

.faq-answer p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.78;
}

.faq-item.active {
    border-color: rgba(217, 180, 106, 0.38);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.14), transparent 45%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.074), rgba(255, 255, 255, 0.035));
}

.faq-item.active .faq-answer {
    display: block;
}

.faq-item.active .faq-question i {
    transform: rotate(180deg);
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 55%, #fff0bd 100%);
    border-color: rgba(217, 180, 106, 0.45);
}

/* Optional fallback */
.faq-item.open .faq-answer {
    display: block;
}

/*--------------------------------------------------------------
# FAQ Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .faq-intro-panel {
        grid-template-columns: 1fr;
    }

    .faq-category-list {
        border-radius: 30px;
        max-width: 900px;
    }

    .faq-content {
        gap: 24px;
    }
}

@media (max-width: 991px) {
    .faq-section {
        padding: 85px 0;
    }

    .faq-content {
        grid-template-columns: 1fr;
    }

    .faq-category-list {
        max-width: 100%;
        padding: 16px;
        border-radius: 28px;
    }

    .faq-category-link {
        flex: 1 1 calc(50% - 12px);
    }

    .faq-intro-content h3,
    .faq-final-note h3 {
        font-size: 30px;
    }

    .faq-group-heading h3 {
        font-size: 26px;
    }
}

@media (max-width: 767px) {
    .faq-category-list {
        display: grid;
        grid-template-columns: 1fr;
    }

    .faq-category-link {
        flex: unset;
        width: 100%;
    }
}

@media (max-width: 576px) {
    .faq-section {
        padding: 72px 0;
    }

    .faq-intro-panel,
    .faq-group,
    .faq-final-note {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .faq-summary-card,
    .faq-category-list {
        padding: 20px;
        border-radius: 24px;
    }

    .faq-intro-content h3,
    .faq-final-note h3 {
        font-size: 26px;
    }

    .faq-group-heading h3 {
        font-size: 24px;
    }

    .faq-question {
        min-height: 56px;
        padding: 16px;
        font-size: 13px;
    }

    .faq-answer {
        padding: 0 16px 16px;
    }

    .faq-answer p {
        font-size: 13px;
    }
}

/*--------------------------------------------------------------
# FAQ Answer Visibility Fix
--------------------------------------------------------------*/

.faq-item,
.faq-item.active {
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.12), transparent 46%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.032)) !important;
}

.faq-answer {
    background: transparent !important;
    color: rgba(255, 255, 255, 0.76) !important;
}

.faq-answer p {
    color: rgba(255, 255, 255, 0.76) !important;
}

.faq-item.active .faq-answer {
    display: block;
    background:
        linear-gradient(180deg, rgba(11, 20, 39, 0.12), rgba(11, 20, 39, 0.20)) !important;
    border-top: 1px solid rgba(217, 180, 106, 0.16);
}

.faq-item.active .faq-question {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.060), rgba(255, 255, 255, 0.020)) !important;
}

/*--------------------------------------------------------------
# FAQ Hover Contrast Fix
--------------------------------------------------------------*/

.faq-item:hover,
.faq-item.active:hover {
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.13), transparent 46%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.080), rgba(255, 255, 255, 0.034)) !important;
    border-color: rgba(217, 180, 106, 0.34) !important;
}

.faq-item:hover .faq-question,
.faq-item.active:hover .faq-question,
.faq-question:hover,
.faq-question:focus {
    color: #ffffff !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)) !important;
}

.faq-item:hover .faq-question span,
.faq-item.active:hover .faq-question span,
.faq-question:hover span,
.faq-question:focus span {
    color: #ffffff !important;
}

.faq-item:hover .faq-answer,
.faq-item.active:hover .faq-answer {
    background:
        linear-gradient(180deg, rgba(11, 20, 39, 0.10), rgba(11, 20, 39, 0.22)) !important;
}

.faq-item:hover .faq-answer p,
.faq-item.active:hover .faq-answer p {
    color: rgba(255, 255, 255, 0.78) !important;
}

.faq-item:hover .faq-question i,
.faq-question:hover i,
.faq-question:focus i {
    color: #101827 !important;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 55%, #fff0bd 100%) !important;
    border-color: rgba(217, 180, 106, 0.45) !important;
}

/*--------------------------------------------------------------
# Guest Reviews Section
--------------------------------------------------------------*/

.reviews-section {
    position: relative;
    overflow: hidden;
    padding: 105px 0;
    background:
        radial-gradient(circle at 12% 16%, rgba(217, 180, 106, 0.15), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.07), transparent 30%),
        linear-gradient(135deg, #0b1427 0%, #111f3c 44%, #172c57 100%);
    color: #ffffff;
}

.reviews-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.reviews-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.60;
}

.reviews-glow-left {
    top: -120px;
    left: -110px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.30), rgba(217, 180, 106, 0.02) 70%);
}

.reviews-glow-right {
    right: -130px;
    bottom: -120px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.reviews-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px);
    background-size: 46px 46px;
    opacity: 0.18;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.72), transparent 96%);
}

.reviews-section .container {
    position: relative;
    z-index: 2;
}

/* Main layout */
.reviews-shell {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: 42px;
    align-items: center;
    margin-top: 34px;
    padding: 34px;
    border-radius: 38px;
    border: 1px solid rgba(217, 180, 106, 0.26);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.13), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.032));
    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/* Left image */
.reviews-visual {
    position: relative;
    min-height: 560px;
}

.reviews-image-frame {
    position: relative;
    overflow: hidden;
    height: 100%;
    min-height: 560px;
    border-radius: 34px;
    border: 1px solid rgba(217, 180, 106, 0.32);
    background:
        radial-gradient(circle at 50% 18%, rgba(217, 180, 106, 0.16), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.072), rgba(255, 255, 255, 0.030));
    box-shadow:
        0 28px 58px rgba(0, 0, 0, 0.30),
        inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

.reviews-image-frame::before {
    content: "";
    position: absolute;
    inset: 18px;
    z-index: 1;
    border-radius: 26px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    pointer-events: none;
}

.reviews-image-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        linear-gradient(180deg, rgba(11, 20, 39, 0.02), rgba(11, 20, 39, 0.28)),
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 46%);
    pointer-events: none;
}

.reviews-image-glow {
    position: absolute;
    left: 50%;
    bottom: 10%;
    width: 260px;
    height: 260px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), transparent 68%);
    filter: blur(14px);
}

.reviews-main-image {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    min-height: 560px;
    display: block;
    object-fit: contain;
    object-position: center bottom;
    padding: 24px;
    filter:
        drop-shadow(0 28px 42px rgba(0, 0, 0, 0.38))
        saturate(1.04)
        contrast(1.03);
    transform: scale(1.01);
    transition: transform 0.55s ease, filter 0.55s ease;
}

.reviews-image-frame:hover .reviews-main-image {
    transform: scale(1.035);
    filter:
        drop-shadow(0 34px 50px rgba(0, 0, 0, 0.44))
        saturate(1.08)
        contrast(1.05);
}

.reviews-floating-badge {
    position: absolute;
    z-index: 4;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    max-width: 310px;
    padding: 16px 18px;
    border-radius: 22px;
    border: 1px solid rgba(217, 180, 106, 0.28);
    background:
        linear-gradient(180deg, rgba(15, 27, 52, 0.88), rgba(15, 27, 52, 0.70));
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow:
        0 20px 40px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.reviews-floating-badge i {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border-radius: 16px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 55%, #fff0bd 100%);
    font-size: 20px;
}

.reviews-floating-badge strong {
    display: block;
    margin-bottom: 4px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 15px;
    font-weight: 850;
    line-height: 1.25;
}

.reviews-floating-badge span {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    font-size: 13px;
    line-height: 1.45;
}

.badge-top {
    top: 30px;
    left: -18px;
}

.badge-bottom {
    right: -18px;
    bottom: 34px;
}

/* Right content */
.reviews-content {
    min-width: 0;
}

.reviews-content h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 38px;
    font-weight: 850;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.reviews-lead {
    margin: 0 0 26px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.82;
}

/* Slider */
.reviews-slider {
    position: relative;
    overflow: hidden;
}

.reviews-track {
    position: relative;
    min-height: 360px;
}

.review-card {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 34px;
    border-radius: 32px;
    border: 1px solid rgba(217, 180, 106, 0.28);
    background:
        radial-gradient(circle at top right, rgba(217, 180, 106, 0.16), transparent 44%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.082), rgba(255, 255, 255, 0.034));
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.085);
    opacity: 0;
    visibility: hidden;
    transform: translateX(28px) scale(0.985);
    transition:
        opacity 0.48s ease,
        visibility 0.48s ease,
        transform 0.48s ease;
}

.review-card.active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) scale(1);
}

.review-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 28px;
}

.review-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 20px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 55%, #fff0bd 100%);
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.70);
}

.review-icon i {
    font-size: 26px;
}

.review-rating {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #d9b46a;
    font-size: 15px;
}

.review-card p {
    margin: 0 0 32px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 20px;
    line-height: 1.65;
    font-weight: 500;
}

.review-author {
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.review-author strong {
    display: block;
    margin-bottom: 5px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 850;
}

.review-author span {
    display: block;
    color: rgba(255, 255, 255, 0.62);
    font-size: 14px;
    line-height: 1.45;
}

/* Controls */
.reviews-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 22px;
}

.reviews-control {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 50%;
    border: 1px solid rgba(217, 180, 106, 0.26);
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 55%, #fff0bd 100%);
    cursor: pointer;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.reviews-control:hover {
    transform: translateY(-2px);
    box-shadow:
        0 14px 30px rgba(216, 170, 85, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.70);
}

.reviews-control i {
    font-size: 18px;
}

.reviews-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex: 1;
}

.review-dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border-radius: 999px;
    border: 0;
    background: rgba(255, 255, 255, 0.28);
    cursor: pointer;
    transition:
        width 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.review-dot.active {
    width: 34px;
    background: #d9b46a;
    box-shadow: 0 0 18px rgba(217, 180, 106, 0.34);
}

.reviews-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 24px;
    padding: 16px 18px;
    border-radius: 20px;
    border: 1px solid rgba(217, 180, 106, 0.18);
    background: rgba(255, 255, 255, 0.045);
}

.reviews-note i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
}

.reviews-note span {
    color: rgba(255, 255, 255, 0.66);
    font-size: 13px;
    line-height: 1.6;
}

/*--------------------------------------------------------------
# Guest Reviews Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .reviews-shell {
        grid-template-columns: 1fr;
    }

    .reviews-visual,
    .reviews-image-frame,
    .reviews-main-image {
        min-height: 480px;
    }

    .reviews-content h3 {
        font-size: 34px;
    }
}

@media (max-width: 991px) {
    .reviews-section {
        padding: 85px 0;
    }

    .reviews-shell {
        padding: 28px;
        border-radius: 32px;
    }

    .reviews-visual,
    .reviews-image-frame,
    .reviews-main-image {
        min-height: 420px;
    }

    .badge-top {
        left: 18px;
    }

    .badge-bottom {
        right: 18px;
    }
}

@media (max-width: 767px) {
    .reviews-floating-badge {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        max-width: 100%;
        margin-top: 14px;
    }

    .reviews-visual {
        min-height: auto;
    }

    .reviews-image-frame,
    .reviews-main-image {
        min-height: 360px;
    }

    .reviews-track {
        min-height: 420px;
    }

    .review-card p {
        font-size: 17px;
    }
}

@media (max-width: 576px) {
    .reviews-section {
        padding: 72px 0;
    }

    .reviews-shell {
        padding: 22px;
        border-radius: 26px;
        gap: 28px;
    }

    .reviews-image-frame {
        border-radius: 24px;
    }

    .reviews-image-frame,
    .reviews-main-image {
        min-height: 310px;
    }

    .reviews-main-image {
        padding: 14px;
    }

    .reviews-content h3 {
        font-size: 28px;
    }

    .reviews-lead {
        font-size: 15px;
    }

    .reviews-track {
        min-height: 460px;
    }

    .review-card {
        padding: 24px 20px;
        border-radius: 24px;
    }

    .review-card p {
        font-size: 16px;
        line-height: 1.62;
    }

    .reviews-controls {
        gap: 12px;
    }

    .reviews-control {
        width: 44px;
        height: 44px;
    }
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.site-footer {
    position: relative;
    overflow: hidden;
    padding: 80px 0 34px;
    background:
        radial-gradient(circle at 10% 20%, rgba(217, 180, 106, 0.14), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 255, 255, 0.065), transparent 30%),
        linear-gradient(135deg, #081225 0%, #101e3a 48%, #172b54 100%);
    color: #ffffff;
}

.footer-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.footer-glow {
    position: absolute;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    filter: blur(18px);
    opacity: 0.55;
}

.footer-glow-left {
    top: -140px;
    left: -120px;
    background: radial-gradient(circle, rgba(217, 180, 106, 0.28), rgba(217, 180, 106, 0.02) 70%);
}

.footer-glow-right {
    right: -130px;
    bottom: -150px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.01) 72%);
}

.footer-pattern {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.030) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.030) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: 0.16;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.74), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.74), transparent 96%);
}

.site-footer .container {
    position: relative;
    z-index: 2;
}

.footer-main {
    display: grid;
    grid-template-columns: 1.35fr 0.78fr 0.92fr 1.05fr;
    gap: 34px;
    align-items: start;
    padding: 34px;
    border-radius: 36px;
    border: 1px solid rgba(217, 180, 106, 0.24);
    background:
        radial-gradient(circle at top left, rgba(217, 180, 106, 0.12), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.070), rgba(255, 255, 255, 0.028));
    box-shadow:
        0 26px 64px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.footer-logo-link {
    display: inline-flex;
    align-items: center;
    margin-bottom: 22px;
}

.footer-logo {
    display: block;
    max-width: 190px;
    height: auto;
    filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.30));
}

.footer-tagline {
    max-width: 430px;
    margin: 0 0 22px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 15px;
    line-height: 1.78;
}

.footer-responsible-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    max-width: 430px;
    padding: 16px 18px;
    border-radius: 22px;
    border: 1px solid rgba(217, 180, 106, 0.20);
    background: rgba(217, 180, 106, 0.075);
}

.footer-note-marker {
    flex-shrink: 0;
    width: 11px;
    height: 11px;
    margin-top: 7px;
    border-radius: 50%;
    background: #d9b46a;
    box-shadow: 0 0 18px rgba(217, 180, 106, 0.45);
}

.footer-responsible-note p {
    margin: 0;
    color: rgba(255, 255, 255, 0.70);
    font-size: 13px;
    line-height: 1.62;
}

.footer-column h4,
.footer-contact h4 {
    margin: 0 0 20px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 18px;
    font-weight: 850;
    line-height: 1.25;
}

.footer-column h4::after,
.footer-contact h4::after {
    content: "";
    display: block;
    width: 42px;
    height: 2px;
    margin-top: 12px;
    border-radius: 999px;
    background: linear-gradient(90deg, #d9b46a, rgba(217, 180, 106, 0));
}

.footer-links {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.footer-links a {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 14px;
    line-height: 1.45;
    text-decoration: none;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.footer-links a::before {
    content: "";
    flex-shrink: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 1px solid rgba(217, 180, 106, 0.65);
    background: rgba(217, 180, 106, 0.12);
    transition:
        background 0.3s ease,
        box-shadow 0.3s ease;
}

.footer-links a:hover {
    color: #f0d89b;
    transform: translateX(4px);
}

.footer-links a:hover::before {
    background: #d9b46a;
    box-shadow: 0 0 16px rgba(217, 180, 106, 0.40);
}

.footer-contact-list {
    display: grid;
    gap: 14px;
}

.footer-contact-item {
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-contact-item:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.footer-contact-label {
    display: block;
    margin-bottom: 6px;
    color: #e7d0a0;
    font-family: "Poppins", sans-serif;
    font-size: 11px;
    font-weight: 850;
    line-height: 1.2;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.footer-contact-item p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.65;
}

.footer-contact-item a {
    color: rgba(255, 255, 255, 0.76);
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-contact-item a:hover {
    color: #f0d89b;
}

.footer-middle {
    margin-top: 24px;
    padding: 20px;
    border-radius: 999px;
    border: 1px solid rgba(217, 180, 106, 0.18);
    background: rgba(255, 255, 255, 0.040);
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.footer-quick-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 18px;
}

.footer-quick-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 9px 15px;
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.72);
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.08);
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        color 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;
}

.footer-quick-links a:hover {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 55%, #fff0bd 100%);
    border-color: rgba(217, 180, 106, 0.55);
    transform: translateY(-2px);
}

.footer-bottom {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 24px;
    align-items: center;
    margin-top: 24px;
    padding: 22px 4px 0;
}

.footer-bottom p {
    margin: 0;
    color: rgba(255, 255, 255, 0.62);
    font-size: 13px;
    line-height: 1.65;
}

.footer-bottom strong {
    color: #ffffff;
    font-weight: 800;
}

.footer-disclaimer {
    text-align: right;
}

/*--------------------------------------------------------------
# Footer Responsive
--------------------------------------------------------------*/

@media (max-width: 1199px) {
    .footer-main {
        grid-template-columns: 1fr 1fr;
    }

    .footer-brand {
        grid-column: 1 / -1;
    }

    .footer-tagline,
    .footer-responsible-note {
        max-width: 100%;
    }
}

@media (max-width: 991px) {
    .site-footer {
        padding: 72px 0 30px;
    }

    .footer-main {
        gap: 28px;
        padding: 28px;
        border-radius: 30px;
    }

    .footer-middle {
        border-radius: 28px;
    }

    .footer-bottom {
        grid-template-columns: 1fr;
        gap: 12px;
        text-align: center;
    }

    .footer-disclaimer {
        text-align: center;
    }
}

@media (max-width: 767px) {
    .footer-main {
        grid-template-columns: 1fr;
    }

    .footer-quick-links {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-quick-links a {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .site-footer {
        padding: 64px 0 28px;
    }

    .footer-main {
        padding: 24px 20px;
        border-radius: 26px;
    }

    .footer-logo {
        max-width: 165px;
    }

    .footer-tagline {
        font-size: 14px;
    }

    .footer-middle {
        padding: 16px;
        border-radius: 24px;
    }

    .footer-quick-links {
        grid-template-columns: 1fr;
    }
}

/*--------------------------------------------------------------
# What Are Monzo Slots Section
--------------------------------------------------------------*/

.monzo-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.16), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.18), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.monzo-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.monzo-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.68;
}

.monzo-slots-orb-one {
    width: 360px;
    height: 360px;
    top: -90px;
    left: -110px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.30), rgba(216, 170, 85, 0.02) 70%);
}

.monzo-slots-orb-two {
    width: 320px;
    height: 320px;
    right: -90px;
    bottom: -70px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.01) 72%);
}

.monzo-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.62), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.62), transparent 90%);
    opacity: 0.28;
}

.monzo-slots-section .container {
    position: relative;
    z-index: 2;
}

.monzo-slots-section .section-heading {
    max-width: 930px;
    margin: 0 auto 46px;
}

.monzo-slots-section .section-kicker,
.monzo-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.monzo-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.monzo-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.monzo-slots-intro-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
    border-radius: 30px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 24px 70px rgba(0, 0, 0, 0.30),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.monzo-slots-intro-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.monzo-slots-intro-content h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 28px;
    font-weight: 800;
}

.monzo-slots-intro-content p {
    margin-bottom: 14px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.75;
}

.monzo-slots-intro-content p:last-child {
    margin-bottom: 0;
}

.monzo-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.monzo-feature-card,
.monzo-mini-card {
    position: relative;
    height: 100%;
    padding: 30px;
    overflow: hidden;
    border-radius: 26px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.monzo-feature-card::before,
.monzo-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 24px;
    right: 24px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.monzo-feature-card:hover,
.monzo-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.monzo-feature-icon,
.monzo-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.monzo-feature-card h3,
.monzo-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.monzo-feature-card p,
.monzo-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.monzo-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.monzo-slots-content-box,
.monzo-slots-side-panel,
.monzo-slots-table-wrap,
.monzo-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.monzo-slots-content-box {
    padding: 34px;
}

.monzo-slots-content-box h3,
.table-heading h3,
.monzo-slots-cta-box h3 {
    margin-bottom: 16px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.monzo-slots-content-box p,
.monzo-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.monzo-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.monzo-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.monzo-check-list li:last-child {
    margin-bottom: 0;
}

.monzo-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.monzo-check-list strong {
    color: #ffffff;
}

.monzo-slots-side-panel {
    padding: 28px;
}

.side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
    box-shadow:
        0 12px 28px rgba(216, 170, 85, 0.20),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.side-stat-list {
    display: grid;
    gap: 14px;
}

.side-stat-item {
    padding: 18px;
    border-radius: 18px;
    background: rgba(11, 20, 39, 0.42);
    border: 1px solid rgba(255, 255, 255, 0.075);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.side-stat-item strong {
    display: block;
    margin-bottom: 6px;
    color: #e8d4a5;
    font-family: "Poppins", sans-serif;
}

.side-stat-item span {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    line-height: 1.55;
    font-size: 15px;
}

.monzo-slots-table-wrap {
    padding: 30px;
    margin-bottom: 38px;
}

.table-heading {
    margin-bottom: 22px;
}

.monzo-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.monzo-slots-table th,
.monzo-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.monzo-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.monzo-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.monzo-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.monzo-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.monzo-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.monzo-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.monzo-slots-cta-box p {
    margin-bottom: 0;
}

.monzo-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.monzo-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.monzo-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.monzo-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# What Are Monzo Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .monzo-slots-section {
        padding: 86px 0;
    }

    .monzo-slots-intro-card {
        flex-direction: column;
    }

    .monzo-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .monzo-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .monzo-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .monzo-slots-section {
        padding: 72px 0;
    }

    .monzo-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .monzo-slots-section .section-heading p {
        font-size: 16px;
    }

    .monzo-slots-intro-card,
    .monzo-slots-content-box,
    .monzo-slots-side-panel,
    .monzo-slots-table-wrap,
    .monzo-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .monzo-slots-intro-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .monzo-slots-content-box h3,
    .table-heading h3,
    .monzo-slots-cta-box h3 {
        font-size: 24px;
    }

    .monzo-slots-table th,
    .monzo-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .monzo-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Classic Slots at Monzo Casino Section
--------------------------------------------------------------*/

.classic-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.classic-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.classic-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.classic-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.classic-slots-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.classic-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.classic-slots-section .container {
    position: relative;
    z-index: 2;
}

.classic-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.classic-slots-section .section-kicker,
.classic-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.classic-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.classic-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.classic-slots-hero-card,
.classic-slots-main-box,
.classic-slots-side-box,
.classic-games-showcase,
.classic-slots-table-wrap,
.classic-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.classic-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.classic-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.classic-slots-hero-content h3,
.classic-slots-main-box h3,
.classic-games-showcase h3,
.classic-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.classic-slots-hero-content p,
.classic-slots-main-box p,
.classic-games-showcase p,
.classic-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.classic-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.classic-feature-card,
.classic-game-card,
.classic-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.classic-feature-card::before,
.classic-game-card::before,
.classic-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.classic-feature-card:hover,
.classic-game-card:hover,
.classic-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.classic-feature-icon,
.classic-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.classic-feature-card h3,
.classic-game-card h4,
.classic-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.classic-feature-card p,
.classic-game-card p,
.classic-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.classic-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.classic-slots-main-box,
.classic-slots-side-box,
.classic-games-showcase,
.classic-slots-table-wrap {
    padding: 34px;
}

.classic-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.classic-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.classic-check-list li:last-child {
    margin-bottom: 0;
}

.classic-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.classic-check-list strong {
    color: #ffffff;
}

.classic-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.classic-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.classic-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.classic-games-showcase {
    margin-bottom: 38px;
}

.classic-game-card-grid {
    row-gap: 24px;
}

.game-provider {
    display: inline-flex;
    margin-bottom: 14px;
    padding: 7px 12px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.classic-slots-table-wrap {
    margin-bottom: 38px;
}

.classic-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.classic-slots-table th,
.classic-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.classic-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.classic-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.classic-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.classic-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.classic-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.classic-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.classic-slots-cta-box p {
    margin-bottom: 0;
}

.classic-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.classic-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.classic-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.classic-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Classic Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .classic-slots-section {
        padding: 86px 0;
    }

    .classic-slots-hero-card {
        flex-direction: column;
    }

    .classic-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .classic-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .classic-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .classic-slots-section {
        padding: 72px 0;
    }

    .classic-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .classic-slots-section .section-heading p {
        font-size: 16px;
    }

    .classic-slots-hero-card,
    .classic-slots-main-box,
    .classic-slots-side-box,
    .classic-games-showcase,
    .classic-slots-table-wrap,
    .classic-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .classic-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .classic-slots-hero-content h3,
    .classic-slots-main-box h3,
    .classic-games-showcase h3,
    .classic-slots-cta-box h3 {
        font-size: 24px;
    }

    .classic-slots-table th,
    .classic-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .classic-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Video Slots at Monzo Casino Section
--------------------------------------------------------------*/

.video-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.video-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.video-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.video-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.video-slots-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.video-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.video-slots-section .container {
    position: relative;
    z-index: 2;
}

.video-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.video-slots-section .section-kicker,
.video-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.video-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.video-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.video-slots-hero-card,
.video-slots-main-box,
.video-slots-side-box,
.video-games-showcase,
.video-slots-table-wrap,
.video-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.video-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.video-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.video-slots-hero-content h3,
.video-slots-main-box h3,
.video-games-showcase h3,
.video-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.video-slots-hero-content p,
.video-slots-main-box p,
.video-games-showcase p,
.video-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.video-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.video-feature-card,
.video-game-card,
.video-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.video-feature-card::before,
.video-game-card::before,
.video-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.video-feature-card:hover,
.video-game-card:hover,
.video-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.video-feature-icon,
.video-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.video-feature-card h3,
.video-game-card h4,
.video-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.video-feature-card p,
.video-game-card p,
.video-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.video-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.video-slots-main-box,
.video-slots-side-box,
.video-games-showcase,
.video-slots-table-wrap {
    padding: 34px;
}

.video-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.video-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.video-check-list li:last-child {
    margin-bottom: 0;
}

.video-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.video-check-list strong {
    color: #ffffff;
}

.video-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.video-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.video-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.video-games-showcase {
    margin-bottom: 38px;
}

.video-game-card-grid {
    row-gap: 24px;
}

.game-provider {
    display: inline-flex;
    margin-bottom: 14px;
    padding: 7px 12px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.video-slots-table-wrap {
    margin-bottom: 38px;
}

.video-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.video-slots-table th,
.video-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.video-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.video-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.video-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.video-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.video-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.video-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.video-slots-cta-box p {
    margin-bottom: 0;
}

.video-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.video-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.video-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.video-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Video Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .video-slots-section {
        padding: 86px 0;
    }

    .video-slots-hero-card {
        flex-direction: column;
    }

    .video-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .video-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .video-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .video-slots-section {
        padding: 72px 0;
    }

    .video-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .video-slots-section .section-heading p {
        font-size: 16px;
    }

    .video-slots-hero-card,
    .video-slots-main-box,
    .video-slots-side-box,
    .video-games-showcase,
    .video-slots-table-wrap,
    .video-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .video-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .video-slots-hero-content h3,
    .video-slots-main-box h3,
    .video-games-showcase h3,
    .video-slots-cta-box h3 {
        font-size: 24px;
    }

    .video-slots-table th,
    .video-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .video-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Payline Slots at Monzo Casino Section
--------------------------------------------------------------*/

.payline-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.payline-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.payline-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.payline-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.payline-slots-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.payline-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.payline-slots-section .container {
    position: relative;
    z-index: 2;
}

.payline-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.payline-slots-section .section-kicker,
.payline-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.payline-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.payline-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.payline-slots-hero-card,
.payline-slots-main-box,
.payline-slots-side-box,
.payline-games-showcase,
.payline-slots-table-wrap,
.payline-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.payline-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.payline-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.payline-slots-hero-content h3,
.payline-slots-main-box h3,
.payline-games-showcase h3,
.payline-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.payline-slots-hero-content p,
.payline-slots-main-box p,
.payline-games-showcase p,
.payline-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.payline-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.payline-feature-card,
.payline-game-card,
.payline-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.payline-feature-card::before,
.payline-game-card::before,
.payline-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.payline-feature-card:hover,
.payline-game-card:hover,
.payline-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.payline-feature-icon,
.payline-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.payline-feature-card h3,
.payline-game-card h4,
.payline-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.payline-feature-card p,
.payline-game-card p,
.payline-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.payline-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.payline-slots-main-box,
.payline-slots-side-box,
.payline-games-showcase,
.payline-slots-table-wrap {
    padding: 34px;
}

.payline-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.payline-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.payline-check-list li:last-child {
    margin-bottom: 0;
}

.payline-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.payline-check-list strong {
    color: #ffffff;
}

.payline-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.payline-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.payline-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.payline-games-showcase {
    margin-bottom: 38px;
}

.payline-game-card-grid {
    row-gap: 24px;
}

.payline-slots-table-wrap {
    margin-bottom: 38px;
}

.payline-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.payline-slots-table th,
.payline-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.payline-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.payline-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.payline-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.payline-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.payline-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.payline-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.payline-slots-cta-box p {
    margin-bottom: 0;
}

.payline-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.payline-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.payline-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.payline-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Payline Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .payline-slots-section {
        padding: 86px 0;
    }

    .payline-slots-hero-card {
        flex-direction: column;
    }

    .payline-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .payline-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .payline-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .payline-slots-section {
        padding: 72px 0;
    }

    .payline-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .payline-slots-section .section-heading p {
        font-size: 16px;
    }

    .payline-slots-hero-card,
    .payline-slots-main-box,
    .payline-slots-side-box,
    .payline-games-showcase,
    .payline-slots-table-wrap,
    .payline-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .payline-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .payline-slots-hero-content h3,
    .payline-slots-main-box h3,
    .payline-games-showcase h3,
    .payline-slots-cta-box h3 {
        font-size: 24px;
    }

    .payline-slots-table th,
    .payline-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .payline-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Ways-to-Win Slots at Monzo Casino Section
--------------------------------------------------------------*/

.ways-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.ways-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.ways-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.ways-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.ways-slots-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.ways-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.ways-slots-section .container {
    position: relative;
    z-index: 2;
}

.ways-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.ways-slots-section .section-kicker,
.ways-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ways-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.ways-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.ways-slots-hero-card,
.ways-slots-main-box,
.ways-slots-side-box,
.ways-games-showcase,
.ways-slots-table-wrap,
.ways-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.ways-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.ways-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.ways-slots-hero-content h3,
.ways-slots-main-box h3,
.ways-games-showcase h3,
.ways-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.ways-slots-hero-content p,
.ways-slots-main-box p,
.ways-games-showcase p,
.ways-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.ways-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.ways-feature-card,
.ways-game-card,
.ways-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.ways-feature-card::before,
.ways-game-card::before,
.ways-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.ways-feature-card:hover,
.ways-game-card:hover,
.ways-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.ways-feature-icon,
.ways-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.ways-feature-card h3,
.ways-game-card h4,
.ways-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.ways-feature-card p,
.ways-game-card p,
.ways-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.ways-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.ways-slots-main-box,
.ways-slots-side-box,
.ways-games-showcase,
.ways-slots-table-wrap {
    padding: 34px;
}

.ways-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.ways-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.ways-check-list li:last-child {
    margin-bottom: 0;
}

.ways-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.ways-check-list strong {
    color: #ffffff;
}

.ways-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.ways-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.ways-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.ways-games-showcase {
    margin-bottom: 38px;
}

.ways-game-card-grid {
    row-gap: 24px;
}

.ways-slots-table-wrap {
    margin-bottom: 38px;
}

.ways-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.ways-slots-table th,
.ways-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.ways-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.ways-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.ways-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.ways-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.ways-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.ways-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.ways-slots-cta-box p {
    margin-bottom: 0;
}

.ways-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.ways-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.ways-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.ways-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Ways-to-Win Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .ways-slots-section {
        padding: 86px 0;
    }

    .ways-slots-hero-card {
        flex-direction: column;
    }

    .ways-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .ways-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .ways-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .ways-slots-section {
        padding: 72px 0;
    }

    .ways-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .ways-slots-section .section-heading p {
        font-size: 16px;
    }

    .ways-slots-hero-card,
    .ways-slots-main-box,
    .ways-slots-side-box,
    .ways-games-showcase,
    .ways-slots-table-wrap,
    .ways-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .ways-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .ways-slots-hero-content h3,
    .ways-slots-main-box h3,
    .ways-games-showcase h3,
    .ways-slots-cta-box h3 {
        font-size: 24px;
    }

    .ways-slots-table th,
    .ways-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .ways-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Monzo Megaways Slots Section
--------------------------------------------------------------*/

.monzo-megaways-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.monzo-megaways-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.monzo-megaways-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.monzo-megaways-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.monzo-megaways-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.monzo-megaways-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.monzo-megaways-section .container {
    position: relative;
    z-index: 2;
}

.monzo-megaways-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.monzo-megaways-section .section-kicker,
.monzo-megaways-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.monzo-megaways-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.monzo-megaways-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.monzo-megaways-hero-card,
.monzo-megaways-main-box,
.monzo-megaways-side-box,
.monzo-megaways-games-showcase,
.monzo-megaways-table-wrap,
.monzo-megaways-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.monzo-megaways-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.monzo-megaways-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.monzo-megaways-hero-content h3,
.monzo-megaways-main-box h3,
.monzo-megaways-games-showcase h3,
.monzo-megaways-table-wrap h3,
.monzo-megaways-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.monzo-megaways-hero-content p,
.monzo-megaways-main-box p,
.monzo-megaways-games-showcase p,
.monzo-megaways-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.monzo-megaways-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.megaways-feature-card,
.megaways-game-card,
.megaways-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.megaways-feature-card::before,
.megaways-game-card::before,
.megaways-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.megaways-feature-card:hover,
.megaways-game-card:hover,
.megaways-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.megaways-feature-icon,
.megaways-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.megaways-feature-card h3,
.megaways-game-card h4,
.megaways-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.megaways-feature-card p,
.megaways-game-card p,
.megaways-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.monzo-megaways-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.monzo-megaways-main-box,
.monzo-megaways-side-box,
.monzo-megaways-games-showcase,
.monzo-megaways-table-wrap {
    padding: 34px;
}

.megaways-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.megaways-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.megaways-check-list li:last-child {
    margin-bottom: 0;
}

.megaways-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.megaways-check-list strong {
    color: #ffffff;
}

.monzo-megaways-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.monzo-megaways-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.monzo-megaways-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.monzo-megaways-games-showcase {
    margin-bottom: 38px;
}

.megaways-game-card-grid {
    row-gap: 24px;
}

.monzo-megaways-table-wrap {
    margin-bottom: 38px;
}

.monzo-megaways-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.monzo-megaways-table th,
.monzo-megaways-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.monzo-megaways-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.monzo-megaways-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.monzo-megaways-table tbody tr:last-child td {
    border-bottom: 0;
}

.monzo-megaways-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.monzo-megaways-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.monzo-megaways-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.monzo-megaways-cta-box p {
    margin-bottom: 0;
}

.monzo-megaways-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.monzo-megaways-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.monzo-megaways-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.monzo-megaways-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Monzo Megaways Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .monzo-megaways-section {
        padding: 86px 0;
    }

    .monzo-megaways-hero-card {
        flex-direction: column;
    }

    .monzo-megaways-content-layout {
        grid-template-columns: 1fr;
    }

    .monzo-megaways-bottom-grid {
        grid-template-columns: 1fr;
    }

    .monzo-megaways-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .monzo-megaways-section {
        padding: 72px 0;
    }

    .monzo-megaways-section .section-heading h2 {
        font-size: 32px;
    }

    .monzo-megaways-section .section-heading p {
        font-size: 16px;
    }

    .monzo-megaways-hero-card,
    .monzo-megaways-main-box,
    .monzo-megaways-side-box,
    .monzo-megaways-games-showcase,
    .monzo-megaways-table-wrap,
    .monzo-megaways-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .monzo-megaways-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .monzo-megaways-hero-content h3,
    .monzo-megaways-main-box h3,
    .monzo-megaways-games-showcase h3,
    .monzo-megaways-table-wrap h3,
    .monzo-megaways-cta-box h3 {
        font-size: 24px;
    }

    .monzo-megaways-table th,
    .monzo-megaways-table td {
        padding: 14px;
        font-size: 14px;
    }

    .monzo-megaways-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Cluster Pays and Grid Slots Section
--------------------------------------------------------------*/

.cluster-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.cluster-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.cluster-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.cluster-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.cluster-slots-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.cluster-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.cluster-slots-section .container {
    position: relative;
    z-index: 2;
}

.cluster-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.cluster-slots-section .section-kicker,
.cluster-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cluster-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.cluster-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.cluster-slots-hero-card,
.cluster-slots-main-box,
.cluster-slots-side-box,
.cluster-games-showcase,
.cluster-slots-table-wrap,
.cluster-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.cluster-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.cluster-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.cluster-slots-hero-content h3,
.cluster-slots-main-box h3,
.cluster-games-showcase h3,
.cluster-slots-table-wrap h3,
.cluster-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.cluster-slots-hero-content p,
.cluster-slots-main-box p,
.cluster-games-showcase p,
.cluster-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.cluster-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.cluster-feature-card,
.cluster-game-card,
.cluster-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.cluster-feature-card::before,
.cluster-game-card::before,
.cluster-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.cluster-feature-card:hover,
.cluster-game-card:hover,
.cluster-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.cluster-feature-icon,
.cluster-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.cluster-feature-card h3,
.cluster-game-card h4,
.cluster-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.cluster-feature-card p,
.cluster-game-card p,
.cluster-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.cluster-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.cluster-slots-main-box,
.cluster-slots-side-box,
.cluster-games-showcase,
.cluster-slots-table-wrap {
    padding: 34px;
}

.cluster-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.cluster-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.cluster-check-list li:last-child {
    margin-bottom: 0;
}

.cluster-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.cluster-check-list strong {
    color: #ffffff;
}

.cluster-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.cluster-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.cluster-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.cluster-games-showcase {
    margin-bottom: 38px;
}

.cluster-game-card-grid {
    row-gap: 24px;
}

.cluster-slots-table-wrap {
    margin-bottom: 38px;
}

.cluster-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.cluster-slots-table th,
.cluster-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.cluster-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.cluster-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.cluster-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.cluster-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.cluster-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.cluster-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.cluster-slots-cta-box p {
    margin-bottom: 0;
}

.cluster-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.cluster-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.cluster-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.cluster-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Cluster Pays Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .cluster-slots-section {
        padding: 86px 0;
    }

    .cluster-slots-hero-card {
        flex-direction: column;
    }

    .cluster-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .cluster-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .cluster-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .cluster-slots-section {
        padding: 72px 0;
    }

    .cluster-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .cluster-slots-section .section-heading p {
        font-size: 16px;
    }

    .cluster-slots-hero-card,
    .cluster-slots-main-box,
    .cluster-slots-side-box,
    .cluster-games-showcase,
    .cluster-slots-table-wrap,
    .cluster-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .cluster-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .cluster-slots-hero-content h3,
    .cluster-slots-main-box h3,
    .cluster-games-showcase h3,
    .cluster-slots-table-wrap h3,
    .cluster-slots-cta-box h3 {
        font-size: 24px;
    }

    .cluster-slots-table th,
    .cluster-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .cluster-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Cascading Slots Section
--------------------------------------------------------------*/

.cascading-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.cascading-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.cascading-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.cascading-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.cascading-slots-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.cascading-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.cascading-slots-section .container {
    position: relative;
    z-index: 2;
}

.cascading-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.cascading-slots-section .section-kicker,
.cascading-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cascading-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.cascading-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.cascading-slots-hero-card,
.cascading-slots-main-box,
.cascading-slots-side-box,
.cascading-games-showcase,
.cascading-slots-table-wrap,
.cascading-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.cascading-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.cascading-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.cascading-slots-hero-content h3,
.cascading-slots-main-box h3,
.cascading-games-showcase h3,
.cascading-slots-table-wrap h3,
.cascading-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.cascading-slots-hero-content p,
.cascading-slots-main-box p,
.cascading-games-showcase p,
.cascading-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.cascading-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.cascading-feature-card,
.cascading-game-card,
.cascading-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.cascading-feature-card::before,
.cascading-game-card::before,
.cascading-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.cascading-feature-card:hover,
.cascading-game-card:hover,
.cascading-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.cascading-feature-icon,
.cascading-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.cascading-feature-card h3,
.cascading-game-card h4,
.cascading-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.cascading-feature-card p,
.cascading-game-card p,
.cascading-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.cascading-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.cascading-slots-main-box,
.cascading-slots-side-box,
.cascading-games-showcase,
.cascading-slots-table-wrap {
    padding: 34px;
}

.cascading-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.cascading-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.cascading-check-list li:last-child {
    margin-bottom: 0;
}

.cascading-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.cascading-check-list strong {
    color: #ffffff;
}

.cascading-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.cascading-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.cascading-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.cascading-games-showcase {
    margin-bottom: 38px;
}

.cascading-game-card-grid {
    row-gap: 24px;
}

.cascading-slots-table-wrap {
    margin-bottom: 38px;
}

.cascading-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.cascading-slots-table th,
.cascading-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.cascading-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.cascading-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.cascading-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.cascading-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.cascading-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.cascading-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.cascading-slots-cta-box p {
    margin-bottom: 0;
}

.cascading-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.cascading-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.cascading-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.cascading-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Cascading Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .cascading-slots-section {
        padding: 86px 0;
    }

    .cascading-slots-hero-card {
        flex-direction: column;
    }

    .cascading-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .cascading-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .cascading-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .cascading-slots-section {
        padding: 72px 0;
    }

    .cascading-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .cascading-slots-section .section-heading p {
        font-size: 16px;
    }

    .cascading-slots-hero-card,
    .cascading-slots-main-box,
    .cascading-slots-side-box,
    .cascading-games-showcase,
    .cascading-slots-table-wrap,
    .cascading-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .cascading-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .cascading-slots-hero-content h3,
    .cascading-slots-main-box h3,
    .cascading-games-showcase h3,
    .cascading-slots-table-wrap h3,
    .cascading-slots-cta-box h3 {
        font-size: 24px;
    }

    .cascading-slots-table th,
    .cascading-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .cascading-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Free Spins Slots Section
--------------------------------------------------------------*/

.free-spins-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.free-spins-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.free-spins-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.free-spins-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.free-spins-slots-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.free-spins-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.free-spins-slots-section .container {
    position: relative;
    z-index: 2;
}

.free-spins-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.free-spins-slots-section .section-kicker,
.free-spins-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.free-spins-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.free-spins-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.free-spins-slots-hero-card,
.free-spins-slots-main-box,
.free-spins-slots-side-box,
.free-spins-games-showcase,
.free-spins-slots-table-wrap,
.free-spins-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.free-spins-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.free-spins-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.free-spins-slots-hero-content h3,
.free-spins-slots-main-box h3,
.free-spins-games-showcase h3,
.free-spins-slots-table-wrap h3,
.free-spins-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.free-spins-slots-hero-content p,
.free-spins-slots-main-box p,
.free-spins-games-showcase p,
.free-spins-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.free-spins-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.free-spins-feature-card,
.free-spins-game-card,
.free-spins-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.free-spins-feature-card::before,
.free-spins-game-card::before,
.free-spins-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.free-spins-feature-card:hover,
.free-spins-game-card:hover,
.free-spins-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.free-spins-feature-icon,
.free-spins-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.free-spins-feature-card h3,
.free-spins-game-card h4,
.free-spins-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.free-spins-feature-card p,
.free-spins-game-card p,
.free-spins-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.free-spins-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.free-spins-slots-main-box,
.free-spins-slots-side-box,
.free-spins-games-showcase,
.free-spins-slots-table-wrap {
    padding: 34px;
}

.free-spins-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.free-spins-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.free-spins-check-list li:last-child {
    margin-bottom: 0;
}

.free-spins-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.free-spins-check-list strong {
    color: #ffffff;
}

.free-spins-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.free-spins-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.free-spins-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.free-spins-games-showcase {
    margin-bottom: 38px;
}

.free-spins-game-card-grid {
    row-gap: 24px;
}

.free-spins-slots-table-wrap {
    margin-bottom: 38px;
}

.free-spins-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.free-spins-slots-table th,
.free-spins-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.free-spins-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.free-spins-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.free-spins-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.free-spins-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.free-spins-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.free-spins-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.free-spins-slots-cta-box p {
    margin-bottom: 0;
}

.free-spins-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.free-spins-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.free-spins-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.free-spins-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Free Spins Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .free-spins-slots-section {
        padding: 86px 0;
    }

    .free-spins-slots-hero-card {
        flex-direction: column;
    }

    .free-spins-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .free-spins-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .free-spins-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .free-spins-slots-section {
        padding: 72px 0;
    }

    .free-spins-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .free-spins-slots-section .section-heading p {
        font-size: 16px;
    }

    .free-spins-slots-hero-card,
    .free-spins-slots-main-box,
    .free-spins-slots-side-box,
    .free-spins-games-showcase,
    .free-spins-slots-table-wrap,
    .free-spins-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .free-spins-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .free-spins-slots-hero-content h3,
    .free-spins-slots-main-box h3,
    .free-spins-games-showcase h3,
    .free-spins-slots-table-wrap h3,
    .free-spins-slots-cta-box h3 {
        font-size: 24px;
    }

    .free-spins-slots-table th,
    .free-spins-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .free-spins-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Wild Slots Section
--------------------------------------------------------------*/

.wild-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.wild-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.wild-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.wild-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.wild-slots-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.wild-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.wild-slots-section .container {
    position: relative;
    z-index: 2;
}

.wild-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.wild-slots-section .section-kicker,
.wild-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.wild-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.wild-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.wild-slots-hero-card,
.wild-slots-main-box,
.wild-slots-side-box,
.wild-games-showcase,
.wild-slots-table-wrap,
.wild-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.wild-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.wild-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.wild-slots-hero-content h3,
.wild-slots-main-box h3,
.wild-games-showcase h3,
.wild-slots-table-wrap h3,
.wild-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.wild-slots-hero-content p,
.wild-slots-main-box p,
.wild-games-showcase p,
.wild-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.wild-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.wild-feature-card,
.wild-game-card,
.wild-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.wild-feature-card::before,
.wild-game-card::before,
.wild-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.wild-feature-card:hover,
.wild-game-card:hover,
.wild-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.wild-feature-icon,
.wild-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.wild-feature-card h3,
.wild-game-card h4,
.wild-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.wild-feature-card p,
.wild-game-card p,
.wild-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.wild-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.wild-slots-main-box,
.wild-slots-side-box,
.wild-games-showcase,
.wild-slots-table-wrap {
    padding: 34px;
}

.wild-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.wild-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.wild-check-list li:last-child {
    margin-bottom: 0;
}

.wild-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.wild-check-list strong {
    color: #ffffff;
}

.wild-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.wild-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.wild-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.wild-games-showcase {
    margin-bottom: 38px;
}

.wild-game-card-grid {
    row-gap: 24px;
}

.wild-slots-table-wrap {
    margin-bottom: 38px;
}

.wild-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.wild-slots-table th,
.wild-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.wild-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.wild-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.wild-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.wild-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.wild-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.wild-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.wild-slots-cta-box p {
    margin-bottom: 0;
}

.wild-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.wild-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.wild-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.wild-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Wild Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .wild-slots-section {
        padding: 86px 0;
    }

    .wild-slots-hero-card {
        flex-direction: column;
    }

    .wild-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .wild-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .wild-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .wild-slots-section {
        padding: 72px 0;
    }

    .wild-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .wild-slots-section .section-heading p {
        font-size: 16px;
    }

    .wild-slots-hero-card,
    .wild-slots-main-box,
    .wild-slots-side-box,
    .wild-games-showcase,
    .wild-slots-table-wrap,
    .wild-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .wild-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .wild-slots-hero-content h3,
    .wild-slots-main-box h3,
    .wild-games-showcase h3,
    .wild-slots-table-wrap h3,
    .wild-slots-cta-box h3 {
        font-size: 24px;
    }

    .wild-slots-table th,
    .wild-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .wild-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Hold & Spin Slots Section
--------------------------------------------------------------*/

.hold-spin-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.hold-spin-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.hold-spin-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.hold-spin-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.hold-spin-slots-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.hold-spin-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.hold-spin-slots-section .container {
    position: relative;
    z-index: 2;
}

.hold-spin-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.hold-spin-slots-section .section-kicker,
.hold-spin-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hold-spin-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.hold-spin-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.hold-spin-slots-hero-card,
.hold-spin-slots-main-box,
.hold-spin-slots-side-box,
.hold-spin-games-showcase,
.hold-spin-slots-table-wrap,
.hold-spin-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.hold-spin-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.hold-spin-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.hold-spin-slots-hero-content h3,
.hold-spin-slots-main-box h3,
.hold-spin-games-showcase h3,
.hold-spin-slots-table-wrap h3,
.hold-spin-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.hold-spin-slots-hero-content p,
.hold-spin-slots-main-box p,
.hold-spin-games-showcase p,
.hold-spin-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.hold-spin-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.hold-spin-feature-card,
.hold-spin-game-card,
.hold-spin-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.hold-spin-feature-card::before,
.hold-spin-game-card::before,
.hold-spin-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.hold-spin-feature-card:hover,
.hold-spin-game-card:hover,
.hold-spin-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.hold-spin-feature-icon,
.hold-spin-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.hold-spin-feature-card h3,
.hold-spin-game-card h4,
.hold-spin-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.hold-spin-feature-card p,
.hold-spin-game-card p,
.hold-spin-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.hold-spin-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.hold-spin-slots-main-box,
.hold-spin-slots-side-box,
.hold-spin-games-showcase,
.hold-spin-slots-table-wrap {
    padding: 34px;
}

.hold-spin-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.hold-spin-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.hold-spin-check-list li:last-child {
    margin-bottom: 0;
}

.hold-spin-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.hold-spin-check-list strong {
    color: #ffffff;
}

.hold-spin-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.hold-spin-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.hold-spin-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.hold-spin-games-showcase {
    margin-bottom: 38px;
}

.hold-spin-game-card-grid {
    row-gap: 24px;
}

.hold-spin-slots-table-wrap {
    margin-bottom: 38px;
}

.hold-spin-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.hold-spin-slots-table th,
.hold-spin-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.hold-spin-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.hold-spin-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.hold-spin-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.hold-spin-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.hold-spin-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.hold-spin-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.hold-spin-slots-cta-box p {
    margin-bottom: 0;
}

.hold-spin-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.hold-spin-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.hold-spin-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.hold-spin-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Hold & Spin Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .hold-spin-slots-section {
        padding: 86px 0;
    }

    .hold-spin-slots-hero-card {
        flex-direction: column;
    }

    .hold-spin-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .hold-spin-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .hold-spin-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .hold-spin-slots-section {
        padding: 72px 0;
    }

    .hold-spin-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .hold-spin-slots-section .section-heading p {
        font-size: 16px;
    }

    .hold-spin-slots-hero-card,
    .hold-spin-slots-main-box,
    .hold-spin-slots-side-box,
    .hold-spin-games-showcase,
    .hold-spin-slots-table-wrap,
    .hold-spin-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .hold-spin-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .hold-spin-slots-hero-content h3,
    .hold-spin-slots-main-box h3,
    .hold-spin-games-showcase h3,
    .hold-spin-slots-table-wrap h3,
    .hold-spin-slots-cta-box h3 {
        font-size: 24px;
    }

    .hold-spin-slots-table th,
    .hold-spin-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .hold-spin-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Jackpot Slots Section
--------------------------------------------------------------*/

.jackpot-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.jackpot-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.jackpot-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.jackpot-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.jackpot-slots-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.jackpot-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.jackpot-slots-section .container {
    position: relative;
    z-index: 2;
}

.jackpot-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.jackpot-slots-section .section-kicker,
.jackpot-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.jackpot-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.jackpot-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.jackpot-slots-hero-card,
.jackpot-slots-main-box,
.jackpot-slots-side-box,
.jackpot-games-showcase,
.jackpot-slots-table-wrap,
.jackpot-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.jackpot-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.jackpot-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.jackpot-slots-hero-content h3,
.jackpot-slots-main-box h3,
.jackpot-games-showcase h3,
.jackpot-slots-table-wrap h3,
.jackpot-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.jackpot-slots-hero-content p,
.jackpot-slots-main-box p,
.jackpot-games-showcase p,
.jackpot-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.jackpot-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.jackpot-feature-card,
.jackpot-game-card,
.jackpot-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.jackpot-feature-card::before,
.jackpot-game-card::before,
.jackpot-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.jackpot-feature-card:hover,
.jackpot-game-card:hover,
.jackpot-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.jackpot-feature-icon,
.jackpot-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.jackpot-feature-card h3,
.jackpot-game-card h4,
.jackpot-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.jackpot-feature-card p,
.jackpot-game-card p,
.jackpot-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.jackpot-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.jackpot-slots-main-box,
.jackpot-slots-side-box,
.jackpot-games-showcase,
.jackpot-slots-table-wrap {
    padding: 34px;
}

.jackpot-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.jackpot-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.jackpot-check-list li:last-child {
    margin-bottom: 0;
}

.jackpot-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.jackpot-check-list strong {
    color: #ffffff;
}

.jackpot-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.jackpot-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.jackpot-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.jackpot-games-showcase {
    margin-bottom: 38px;
}

.jackpot-game-card-grid {
    row-gap: 24px;
}

.jackpot-slots-table-wrap {
    margin-bottom: 38px;
}

.jackpot-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.jackpot-slots-table th,
.jackpot-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.jackpot-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.jackpot-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.jackpot-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.jackpot-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.jackpot-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.jackpot-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.jackpot-slots-cta-box p {
    margin-bottom: 0;
}

.jackpot-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.jackpot-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.jackpot-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.jackpot-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Jackpot Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .jackpot-slots-section {
        padding: 86px 0;
    }

    .jackpot-slots-hero-card {
        flex-direction: column;
    }

    .jackpot-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .jackpot-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .jackpot-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .jackpot-slots-section {
        padding: 72px 0;
    }

    .jackpot-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .jackpot-slots-section .section-heading p {
        font-size: 16px;
    }

    .jackpot-slots-hero-card,
    .jackpot-slots-main-box,
    .jackpot-slots-side-box,
    .jackpot-games-showcase,
    .jackpot-slots-table-wrap,
    .jackpot-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .jackpot-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .jackpot-slots-hero-content h3,
    .jackpot-slots-main-box h3,
    .jackpot-games-showcase h3,
    .jackpot-slots-table-wrap h3,
    .jackpot-slots-cta-box h3 {
        font-size: 24px;
    }

    .jackpot-slots-table th,
    .jackpot-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .jackpot-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Bonus Buy Slots Section
--------------------------------------------------------------*/

.bonus-buy-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.bonus-buy-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.bonus-buy-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.bonus-buy-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.bonus-buy-slots-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.bonus-buy-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.bonus-buy-slots-section .container {
    position: relative;
    z-index: 2;
}

.bonus-buy-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.bonus-buy-slots-section .section-kicker,
.bonus-buy-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.bonus-buy-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.bonus-buy-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.bonus-buy-slots-hero-card,
.bonus-buy-slots-main-box,
.bonus-buy-slots-side-box,
.bonus-buy-games-showcase,
.bonus-buy-slots-table-wrap,
.bonus-buy-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.bonus-buy-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.bonus-buy-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.bonus-buy-slots-hero-content h3,
.bonus-buy-slots-main-box h3,
.bonus-buy-games-showcase h3,
.bonus-buy-slots-table-wrap h3,
.bonus-buy-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.bonus-buy-slots-hero-content p,
.bonus-buy-slots-main-box p,
.bonus-buy-games-showcase p,
.bonus-buy-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.bonus-buy-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.bonus-buy-feature-card,
.bonus-buy-game-card,
.bonus-buy-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.bonus-buy-feature-card::before,
.bonus-buy-game-card::before,
.bonus-buy-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.bonus-buy-feature-card:hover,
.bonus-buy-game-card:hover,
.bonus-buy-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.bonus-buy-feature-icon,
.bonus-buy-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.bonus-buy-feature-card h3,
.bonus-buy-game-card h4,
.bonus-buy-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.bonus-buy-feature-card p,
.bonus-buy-game-card p,
.bonus-buy-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.bonus-buy-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.bonus-buy-slots-main-box,
.bonus-buy-slots-side-box,
.bonus-buy-games-showcase,
.bonus-buy-slots-table-wrap {
    padding: 34px;
}

.bonus-buy-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.bonus-buy-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.bonus-buy-check-list li:last-child {
    margin-bottom: 0;
}

.bonus-buy-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.bonus-buy-check-list strong {
    color: #ffffff;
}

.bonus-buy-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.bonus-buy-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.bonus-buy-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.bonus-buy-games-showcase {
    margin-bottom: 38px;
}

.bonus-buy-game-card-grid {
    row-gap: 24px;
}

.bonus-buy-slots-table-wrap {
    margin-bottom: 38px;
}

.bonus-buy-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.bonus-buy-slots-table th,
.bonus-buy-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.bonus-buy-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.bonus-buy-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.bonus-buy-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.bonus-buy-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.bonus-buy-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.bonus-buy-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.bonus-buy-slots-cta-box p {
    margin-bottom: 0;
}

.bonus-buy-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.bonus-buy-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.bonus-buy-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.bonus-buy-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Bonus Buy Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .bonus-buy-slots-section {
        padding: 86px 0;
    }

    .bonus-buy-slots-hero-card {
        flex-direction: column;
    }

    .bonus-buy-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .bonus-buy-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .bonus-buy-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .bonus-buy-slots-section {
        padding: 72px 0;
    }

    .bonus-buy-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .bonus-buy-slots-section .section-heading p {
        font-size: 16px;
    }

    .bonus-buy-slots-hero-card,
    .bonus-buy-slots-main-box,
    .bonus-buy-slots-side-box,
    .bonus-buy-games-showcase,
    .bonus-buy-slots-table-wrap,
    .bonus-buy-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .bonus-buy-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .bonus-buy-slots-hero-content h3,
    .bonus-buy-slots-main-box h3,
    .bonus-buy-games-showcase h3,
    .bonus-buy-slots-table-wrap h3,
    .bonus-buy-slots-cta-box h3 {
        font-size: 24px;
    }

    .bonus-buy-slots-table th,
    .bonus-buy-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .bonus-buy-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Monzo Slots by RTP Section
--------------------------------------------------------------*/

.rtp-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.rtp-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.rtp-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.rtp-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.rtp-slots-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.rtp-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.rtp-slots-section .container {
    position: relative;
    z-index: 2;
}

.rtp-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.rtp-slots-section .section-kicker,
.rtp-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.rtp-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.rtp-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.rtp-slots-hero-card,
.rtp-slots-main-box,
.rtp-slots-side-box,
.rtp-games-showcase,
.rtp-slots-table-wrap,
.rtp-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.rtp-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.rtp-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.rtp-slots-hero-content h3,
.rtp-slots-main-box h3,
.rtp-games-showcase h3,
.rtp-slots-table-wrap h3,
.rtp-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.rtp-slots-hero-content p,
.rtp-slots-main-box p,
.rtp-games-showcase p,
.rtp-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.rtp-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.rtp-feature-card,
.rtp-game-card,
.rtp-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.rtp-feature-card::before,
.rtp-game-card::before,
.rtp-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.rtp-feature-card:hover,
.rtp-game-card:hover,
.rtp-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.rtp-feature-icon,
.rtp-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.rtp-feature-card h3,
.rtp-game-card h4,
.rtp-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.rtp-feature-card p,
.rtp-game-card p,
.rtp-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.rtp-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.rtp-slots-main-box,
.rtp-slots-side-box,
.rtp-games-showcase,
.rtp-slots-table-wrap {
    padding: 34px;
}

.rtp-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.rtp-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.rtp-check-list li:last-child {
    margin-bottom: 0;
}

.rtp-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.rtp-check-list strong {
    color: #ffffff;
}

.rtp-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.rtp-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.rtp-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.rtp-games-showcase {
    margin-bottom: 38px;
}

.rtp-game-card-grid {
    row-gap: 24px;
}

.rtp-slots-table-wrap {
    margin-bottom: 38px;
}

.rtp-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.rtp-slots-table th,
.rtp-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.rtp-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.rtp-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.rtp-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.rtp-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.rtp-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.rtp-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.rtp-slots-cta-box p {
    margin-bottom: 0;
}

.rtp-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.rtp-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.rtp-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.rtp-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# RTP Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .rtp-slots-section {
        padding: 86px 0;
    }

    .rtp-slots-hero-card {
        flex-direction: column;
    }

    .rtp-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .rtp-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .rtp-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .rtp-slots-section {
        padding: 72px 0;
    }

    .rtp-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .rtp-slots-section .section-heading p {
        font-size: 16px;
    }

    .rtp-slots-hero-card,
    .rtp-slots-main-box,
    .rtp-slots-side-box,
    .rtp-games-showcase,
    .rtp-slots-table-wrap,
    .rtp-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .rtp-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .rtp-slots-hero-content h3,
    .rtp-slots-main-box h3,
    .rtp-games-showcase h3,
    .rtp-slots-table-wrap h3,
    .rtp-slots-cta-box h3 {
        font-size: 24px;
    }

    .rtp-slots-table th,
    .rtp-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .rtp-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Monzo Slots by Volatility Section
--------------------------------------------------------------*/

.volatility-slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.volatility-slots-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.volatility-slots-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.volatility-slots-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.volatility-slots-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.volatility-slots-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.volatility-slots-section .container {
    position: relative;
    z-index: 2;
}

.volatility-slots-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.volatility-slots-section .section-kicker,
.volatility-slots-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.volatility-slots-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.volatility-slots-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.volatility-slots-hero-card,
.volatility-slots-main-box,
.volatility-slots-side-box,
.volatility-games-showcase,
.volatility-slots-table-wrap,
.volatility-slots-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.volatility-slots-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.volatility-slots-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.volatility-slots-hero-content h3,
.volatility-slots-main-box h3,
.volatility-games-showcase h3,
.volatility-slots-table-wrap h3,
.volatility-slots-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.volatility-slots-hero-content p,
.volatility-slots-main-box p,
.volatility-games-showcase p,
.volatility-slots-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.volatility-slots-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.volatility-feature-card,
.volatility-game-card,
.volatility-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.volatility-feature-card::before,
.volatility-game-card::before,
.volatility-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.volatility-feature-card:hover,
.volatility-game-card:hover,
.volatility-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.volatility-feature-icon,
.volatility-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.volatility-feature-card h3,
.volatility-game-card h4,
.volatility-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.volatility-feature-card p,
.volatility-game-card p,
.volatility-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.volatility-slots-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.volatility-slots-main-box,
.volatility-slots-side-box,
.volatility-games-showcase,
.volatility-slots-table-wrap {
    padding: 34px;
}

.volatility-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.volatility-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.volatility-check-list li:last-child {
    margin-bottom: 0;
}

.volatility-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.volatility-check-list strong {
    color: #ffffff;
}

.volatility-slots-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.volatility-slots-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.volatility-slots-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.volatility-games-showcase {
    margin-bottom: 38px;
}

.volatility-game-card-grid {
    row-gap: 24px;
}

.volatility-slots-table-wrap {
    margin-bottom: 38px;
}

.volatility-slots-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.volatility-slots-table th,
.volatility-slots-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.volatility-slots-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.volatility-slots-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.volatility-slots-table tbody tr:last-child td {
    border-bottom: 0;
}

.volatility-slots-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.volatility-slots-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.volatility-slots-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.volatility-slots-cta-box p {
    margin-bottom: 0;
}

.volatility-slots-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.volatility-slots-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.volatility-slots-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.volatility-slots-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Volatility Slots Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .volatility-slots-section {
        padding: 86px 0;
    }

    .volatility-slots-hero-card {
        flex-direction: column;
    }

    .volatility-slots-content-layout {
        grid-template-columns: 1fr;
    }

    .volatility-slots-bottom-grid {
        grid-template-columns: 1fr;
    }

    .volatility-slots-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .volatility-slots-section {
        padding: 72px 0;
    }

    .volatility-slots-section .section-heading h2 {
        font-size: 32px;
    }

    .volatility-slots-section .section-heading p {
        font-size: 16px;
    }

    .volatility-slots-hero-card,
    .volatility-slots-main-box,
    .volatility-slots-side-box,
    .volatility-games-showcase,
    .volatility-slots-table-wrap,
    .volatility-slots-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .volatility-slots-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .volatility-slots-hero-content h3,
    .volatility-slots-main-box h3,
    .volatility-games-showcase h3,
    .volatility-slots-table-wrap h3,
    .volatility-slots-cta-box h3 {
        font-size: 24px;
    }

    .volatility-slots-table th,
    .volatility-slots-table td {
        padding: 14px;
        font-size: 14px;
    }

    .volatility-slots-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Monzo Slots by Theme Section
--------------------------------------------------------------*/

.slot-themes-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.slot-themes-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.slot-themes-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.slot-themes-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.slot-themes-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.slot-themes-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.slot-themes-section .container {
    position: relative;
    z-index: 2;
}

.slot-themes-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.slot-themes-section .section-kicker,
.slot-themes-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.slot-themes-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.slot-themes-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.slot-themes-hero-card,
.slot-themes-main-box,
.slot-themes-side-box,
.slot-themes-showcase,
.slot-themes-table-wrap,
.slot-themes-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.slot-themes-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.slot-themes-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.slot-themes-hero-content h3,
.slot-themes-main-box h3,
.slot-themes-showcase h3,
.slot-themes-table-wrap h3,
.slot-themes-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.slot-themes-hero-content p,
.slot-themes-main-box p,
.slot-themes-showcase p,
.slot-themes-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.slot-themes-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.theme-feature-card,
.theme-game-card,
.theme-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.theme-feature-card::before,
.theme-game-card::before,
.theme-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.theme-feature-card:hover,
.theme-game-card:hover,
.theme-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.theme-feature-icon,
.theme-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.theme-feature-card h3,
.theme-game-card h4,
.theme-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.theme-feature-card p,
.theme-game-card p,
.theme-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.slot-themes-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.slot-themes-main-box,
.slot-themes-side-box,
.slot-themes-showcase,
.slot-themes-table-wrap {
    padding: 34px;
}

.theme-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.theme-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.theme-check-list li:last-child {
    margin-bottom: 0;
}

.theme-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.theme-check-list strong {
    color: #ffffff;
}

.slot-themes-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.slot-themes-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.slot-themes-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.slot-themes-showcase {
    margin-bottom: 38px;
}

.theme-card-grid {
    row-gap: 24px;
}

.slot-themes-table-wrap {
    margin-bottom: 38px;
}

.slot-themes-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.slot-themes-table th,
.slot-themes-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.slot-themes-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.slot-themes-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.slot-themes-table tbody tr:last-child td {
    border-bottom: 0;
}

.slot-themes-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.slot-themes-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.slot-themes-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.slot-themes-cta-box p {
    margin-bottom: 0;
}

.slot-themes-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.slot-themes-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.slot-themes-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.slot-themes-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Slot Themes Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .slot-themes-section {
        padding: 86px 0;
    }

    .slot-themes-hero-card {
        flex-direction: column;
    }

    .slot-themes-content-layout {
        grid-template-columns: 1fr;
    }

    .slot-themes-bottom-grid {
        grid-template-columns: 1fr;
    }

    .slot-themes-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .slot-themes-section {
        padding: 72px 0;
    }

    .slot-themes-section .section-heading h2 {
        font-size: 32px;
    }

    .slot-themes-section .section-heading p {
        font-size: 16px;
    }

    .slot-themes-hero-card,
    .slot-themes-main-box,
    .slot-themes-side-box,
    .slot-themes-showcase,
    .slot-themes-table-wrap,
    .slot-themes-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .slot-themes-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .slot-themes-hero-content h3,
    .slot-themes-main-box h3,
    .slot-themes-showcase h3,
    .slot-themes-table-wrap h3,
    .slot-themes-cta-box h3 {
        font-size: 24px;
    }

    .slot-themes-table th,
    .slot-themes-table td {
        padding: 14px;
        font-size: 14px;
    }

    .slot-themes-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Monzo Slots by Provider Section
--------------------------------------------------------------*/

.slot-providers-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.slot-providers-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.slot-providers-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.slot-providers-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.slot-providers-orb-two {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.slot-providers-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.slot-providers-section .container {
    position: relative;
    z-index: 2;
}

.slot-providers-section .section-heading {
    max-width: 960px;
    margin: 0 auto 46px;
}

.slot-providers-section .section-kicker,
.slot-providers-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.slot-providers-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.slot-providers-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.slot-providers-hero-card,
.slot-providers-main-box,
.slot-providers-side-box,
.slot-providers-showcase,
.slot-providers-table-wrap,
.slot-providers-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.slot-providers-hero-card {
    display: flex;
    gap: 28px;
    padding: 34px;
    margin-bottom: 34px;
}

.slot-providers-hero-icon {
    flex: 0 0 76px;
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.slot-providers-hero-content h3,
.slot-providers-main-box h3,
.slot-providers-showcase h3,
.slot-providers-table-wrap h3,
.slot-providers-cta-box h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.slot-providers-hero-content p,
.slot-providers-main-box p,
.slot-providers-showcase p,
.slot-providers-cta-box p {
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.slot-providers-feature-grid {
    row-gap: 24px;
    margin-bottom: 38px;
}

.provider-feature-card,
.provider-game-card,
.provider-mini-card {
    position: relative;
    height: 100%;
    padding: 28px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.095);
    box-shadow:
        0 18px 48px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.provider-feature-card::before,
.provider-game-card::before,
.provider-mini-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(217, 180, 106, 0.55), transparent);
    opacity: 0.85;
}

.provider-feature-card:hover,
.provider-game-card:hover,
.provider-mini-card:hover {
    transform: translateY(-6px);
    border-color: rgba(217, 180, 106, 0.30);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.105), rgba(255, 255, 255, 0.045));
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.30),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.provider-feature-icon,
.provider-mini-card i {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.22);
    font-size: 28px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.provider-feature-card h3,
.provider-game-card h4,
.provider-mini-card h4 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.provider-feature-card p,
.provider-game-card p,
.provider-mini-card p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.74);
    line-height: 1.7;
}

.slot-providers-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
    gap: 28px;
    margin-bottom: 38px;
}

.slot-providers-main-box,
.slot-providers-side-box,
.slot-providers-showcase,
.slot-providers-table-wrap {
    padding: 34px;
}

.provider-check-list {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
}

.provider-check-list li {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.6;
}

.provider-check-list li:last-child {
    margin-bottom: 0;
}

.provider-check-list i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.provider-check-list strong {
    color: #ffffff;
}

.slot-providers-side-box .side-panel-header {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.slot-providers-side-box .side-panel-header i {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    font-size: 24px;
}

.slot-providers-side-box .side-panel-header h3 {
    margin: 0;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 800;
}

.slot-providers-showcase {
    margin-bottom: 38px;
}

.provider-card-grid {
    row-gap: 24px;
}

.slot-providers-table-wrap {
    margin-bottom: 38px;
}

.slot-providers-table {
    width: 100%;
    overflow: hidden;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 20px;
}

.slot-providers-table th,
.slot-providers-table td {
    padding: 18px 20px;
    vertical-align: top;
    border-bottom: 1px solid rgba(255, 255, 255, 0.075);
}

.slot-providers-table th {
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 44%, #fff0bd 100%);
    font-family: "Poppins", sans-serif;
    font-weight: 800;
}

.slot-providers-table td {
    color: rgba(255, 255, 255, 0.76);
    background: rgba(255, 255, 255, 0.045);
    line-height: 1.6;
}

.slot-providers-table tbody tr:last-child td {
    border-bottom: 0;
}

.slot-providers-table tbody tr:hover td {
    background: rgba(217, 180, 106, 0.075);
}

.slot-providers-bottom-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 38px;
}

.slot-providers-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.slot-providers-cta-box p {
    margin-bottom: 0;
}

.slot-providers-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.slot-providers-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.slot-providers-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.slot-providers-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# Slot Providers Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .slot-providers-section {
        padding: 86px 0;
    }

    .slot-providers-hero-card {
        flex-direction: column;
    }

    .slot-providers-content-layout {
        grid-template-columns: 1fr;
    }

    .slot-providers-bottom-grid {
        grid-template-columns: 1fr;
    }

    .slot-providers-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .slot-providers-section {
        padding: 72px 0;
    }

    .slot-providers-section .section-heading h2 {
        font-size: 32px;
    }

    .slot-providers-section .section-heading p {
        font-size: 16px;
    }

    .slot-providers-hero-card,
    .slot-providers-main-box,
    .slot-providers-side-box,
    .slot-providers-showcase,
    .slot-providers-table-wrap,
    .slot-providers-cta-box {
        padding: 24px;
        border-radius: 22px;
    }

    .slot-providers-hero-icon {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
        font-size: 28px;
    }

    .slot-providers-hero-content h3,
    .slot-providers-main-box h3,
    .slot-providers-showcase h3,
    .slot-providers-table-wrap h3,
    .slot-providers-cta-box h3 {
        font-size: 24px;
    }

    .slot-providers-table th,
    .slot-providers-table td {
        padding: 14px;
        font-size: 14px;
    }

    .slot-providers-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Provider Logo Strip - Full Dark Section
--------------------------------------------------------------*/

.provider-logo-strip {
    position: relative;
    width: 100%;
    margin: 0 !important;
    padding: 110px 0 96px;
    overflow: hidden;
    border-radius: 0 !important;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.15), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.17), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%) !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #ffffff;
    isolation: isolate;
}

/* перекрывает возможный жёлтый фон вокруг блока */
.provider-logo-strip::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -3;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.15), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.17), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%) !important;
}

/* декоративная сетка */
.provider-logo-strip::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    opacity: 0.24;
    pointer-events: none;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.65), transparent 92%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.65), transparent 92%);
}

/* если блок лежит внутри жёлтой секции, убираем визуальный просвет */
.provider-logo-strip,
.provider-logo-strip * {
    box-sizing: border-box;
}

/* внутренний контейнер */
.provider-logo-strip-header {
    position: relative;
    z-index: 2;
    max-width: 1180px;
    margin: 0 auto 44px;
    padding: 0 20px;
    text-align: center;
}

.provider-logo-strip-header .section-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 22px;
    padding: 11px 20px;
    border-radius: 999px;
    color: #f8e7b0;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.36);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 12px 28px rgba(0, 0, 0, 0.18);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.provider-logo-strip-header h3 {
    max-width: 1000px;
    margin: 0 auto 22px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(36px, 4.4vw, 64px);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: -0.04em;
    text-shadow: 0 14px 34px rgba(0, 0, 0, 0.34);
}

.provider-logo-strip-header p {
    max-width: 1120px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.82);
    font-size: 19px;
    line-height: 1.85;
    letter-spacing: 0.01em;
}

/*--------------------------------------------------------------
# Provider Logo Marquee
--------------------------------------------------------------*/

.provider-logo-marquee {
    position: relative;
    z-index: 2;
    width: 100%;
    overflow: hidden;
    padding: 8px 0;
    mask-image: linear-gradient(
        to right,
        transparent 0%,
        #000 7%,
        #000 93%,
        transparent 100%
    );
    -webkit-mask-image: linear-gradient(
        to right,
        transparent 0%,
        #000 7%,
        #000 93%,
        transparent 100%
    );
}

.provider-logo-track {
    display: flex;
    align-items: center;
    gap: 20px;
    width: max-content;
    animation: providerLogoScroll 40s linear infinite;
    will-change: transform;
}

.provider-logo-marquee:hover .provider-logo-track {
    animation-play-state: paused;
}

.provider-logo-item {
    position: relative;
    flex: 0 0 auto;
    width: 210px;
    height: 96px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px 24px;
    overflow: hidden;
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.038));
    border: 1px solid rgba(217, 180, 106, 0.24);
    box-shadow:
        0 18px 44px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.provider-logo-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22px;
    right: 22px;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(248, 231, 176, 0.62),
        transparent
    );
    opacity: 0.85;
}

.provider-logo-item::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 10px;
    height: 20px;
    border-radius: 999px;
    background: rgba(216, 170, 85, 0.16);
    filter: blur(14px);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.provider-logo-item:hover {
    transform: translateY(-5px);
    border-color: rgba(217, 180, 106, 0.44);
    background:
        radial-gradient(circle at top, rgba(216, 170, 85, 0.16), transparent 58%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.055));
    box-shadow:
        0 24px 52px rgba(0, 0, 0, 0.32),
        0 0 0 1px rgba(217, 180, 106, 0.08);
}

.provider-logo-item:hover::after {
    opacity: 1;
}

.provider-logo-item img {
    position: relative;
    z-index: 2;
    max-width: 154px;
    max-height: 46px;
    width: auto;
    height: auto;
    object-fit: contain;
    opacity: 0.95;
    filter:
        grayscale(100%)
        brightness(1.85)
        contrast(1.08);
    transition:
        opacity 0.25s ease,
        filter 0.25s ease,
        transform 0.25s ease;
}

.provider-logo-item:hover img {
    opacity: 1;
    filter:
        grayscale(0%)
        brightness(1.06)
        contrast(1.02);
    transform: scale(1.05);
}

/* бесконечное движение */
@keyframes providerLogoScroll {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/*--------------------------------------------------------------
# Remove Yellow Gaps Around Provider Strip
--------------------------------------------------------------*/

/* если лента стоит внутри жёлтой секции, этот блок перекрывает фон */
.slot-providers-section .provider-logo-strip {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    width: 100vw !important;
}

/* если перед лентой есть жёлтый отступ у соседних элементов */
.provider-logo-strip {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* если жёлтый фон идёт от родителя */
section:has(.provider-logo-strip) {
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.15), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.17), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%) !important;
}

/*--------------------------------------------------------------
# Provider Logo Strip Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .provider-logo-strip {
        padding: 86px 0 78px;
    }

    .provider-logo-strip-header {
        margin-bottom: 34px;
        padding: 0 22px;
    }

    .provider-logo-strip-header h3 {
        font-size: 40px;
    }

    .provider-logo-strip-header p {
        font-size: 17px;
        line-height: 1.75;
    }

    .provider-logo-track {
        gap: 16px;
        animation-duration: 34s;
    }

    .provider-logo-item {
        width: 180px;
        height: 86px;
        padding: 15px 20px;
        border-radius: 20px;
    }

    .provider-logo-item img {
        max-width: 136px;
        max-height: 40px;
    }
}

@media (max-width: 575px) {
    .provider-logo-strip {
        padding: 72px 0 64px;
    }

    .provider-logo-strip-header {
        margin-bottom: 28px;
        padding: 0 16px;
    }

    .provider-logo-strip-header .section-kicker {
        padding: 9px 14px;
        font-size: 10px;
        letter-spacing: 0.10em;
    }

    .provider-logo-strip-header h3 {
        font-size: 30px;
        line-height: 1.15;
    }

    .provider-logo-strip-header p {
        font-size: 15px;
        line-height: 1.7;
    }

    .provider-logo-marquee {
        mask-image: linear-gradient(
            to right,
            transparent 0%,
            #000 4%,
            #000 96%,
            transparent 100%
        );
        -webkit-mask-image: linear-gradient(
            to right,
            transparent 0%,
            #000 4%,
            #000 96%,
            transparent 100%
        );
    }

    .provider-logo-track {
        gap: 14px;
        animation-duration: 28s;
    }

    .provider-logo-item {
        width: 150px;
        height: 74px;
        padding: 12px 16px;
        border-radius: 17px;
    }

    .provider-logo-item img {
        max-width: 112px;
        max-height: 32px;
    }
}

/*--------------------------------------------------------------
# Monzo Casino FAQ Section
--------------------------------------------------------------*/

.monzo-faq-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
    color: #ffffff;
}

.monzo-faq-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.monzo-faq-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.66;
}

.monzo-faq-orb-one {
    width: 340px;
    height: 340px;
    top: -90px;
    left: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.28), rgba(216, 170, 85, 0.02) 70%);
}

.monzo-faq-orb-two {
    width: 300px;
    height: 300px;
    right: -90px;
    bottom: -80px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.095), rgba(255, 255, 255, 0.01) 72%);
}

.monzo-faq-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.58), transparent 90%);
    opacity: 0.26;
}

.monzo-faq-section .container {
    position: relative;
    z-index: 2;
}

.monzo-faq-section .section-heading {
    max-width: 960px;
    margin: 0 auto 48px;
}

.monzo-faq-section .section-kicker,
.monzo-faq-section .content-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 9px 16px;
    border-radius: 999px;
    color: #e8d4a5;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(217, 180, 106, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.monzo-faq-section .section-heading h2 {
    margin-bottom: 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.monzo-faq-section .section-heading p {
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.78;
}

.monzo-faq-layout {
    display: grid;
    grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.45fr);
    gap: 30px;
    align-items: flex-start;
    margin-bottom: 38px;
}

.monzo-faq-intro-card,
.monzo-faq-accordion,
.monzo-faq-cta-box {
    border-radius: 28px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 22px 66px rgba(0, 0, 0, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.monzo-faq-intro-card {
    position: sticky;
    top: 110px;
    padding: 34px;
}

.monzo-faq-intro-icon {
    width: 76px;
    height: 76px;
    display: grid;
    place-items: center;
    margin-bottom: 22px;
    border-radius: 24px;
    color: #101827;
    font-size: 34px;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.82);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.monzo-faq-intro-card h3 {
    margin-bottom: 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.25;
}

.monzo-faq-intro-card p {
    margin-bottom: 22px;
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.monzo-faq-note {
    display: flex;
    gap: 12px;
    padding: 18px;
    border-radius: 20px;
    color: rgba(255, 255, 255, 0.78);
    background: rgba(217, 180, 106, 0.08);
    border: 1px solid rgba(217, 180, 106, 0.18);
    line-height: 1.6;
}

.monzo-faq-note i {
    flex-shrink: 0;
    margin-top: 2px;
    color: #d9b46a;
    font-size: 20px;
}

.monzo-faq-accordion {
    padding: 20px;
}

.monzo-faq-item {
    overflow: hidden;
    margin-bottom: 14px;
    border-radius: 22px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.064), rgba(255, 255, 255, 0.025));
    border: 1px solid rgba(255, 255, 255, 0.085);
    box-shadow:
        0 12px 34px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    transition:
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;
}

.monzo-faq-item:last-child {
    margin-bottom: 0;
}

.monzo-faq-item:hover,
.monzo-faq-item.active {
    border-color: rgba(217, 180, 106, 0.28);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.092), rgba(255, 255, 255, 0.036));
    box-shadow:
        0 16px 42px rgba(0, 0, 0, 0.24),
        0 0 0 1px rgba(217, 180, 106, 0.06);
}

.monzo-faq-question {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px;
    border: 0;
    outline: 0;
    color: #ffffff;
    background: transparent;
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.4;
    text-align: left;
    cursor: pointer;
}

.monzo-faq-question i {
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: #d9b46a;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.20);
    font-size: 16px;
    transition:
        transform 0.25s ease,
        color 0.25s ease,
        background 0.25s ease;
}

.monzo-faq-item.active .monzo-faq-question i {
    transform: rotate(45deg);
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
}

.monzo-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease;
}

.monzo-faq-item.active .monzo-faq-answer {
    max-height: 260px;
}

.monzo-faq-answer p {
    margin: 0;
    padding: 0 24px 24px;
    color: rgba(255, 255, 255, 0.75);
    line-height: 1.75;
}

.monzo-faq-cta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(216, 170, 85, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035));
}

.monzo-faq-cta-box h3 {
    margin-bottom: 12px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.monzo-faq-cta-box p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.76);
    line-height: 1.75;
}

.monzo-faq-cta-btn {
    position: relative;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 15px 26px;
    overflow: hidden;
    border-radius: 999px;
    color: #101827;
    background:
        linear-gradient(135deg, #f8e7b0 0%, #d8aa55 42%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    box-shadow:
        0 14px 34px rgba(216, 170, 85, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        color 0.25s ease;
}

.monzo-faq-cta-btn::before {
    content: "";
    position: absolute;
    top: -60%;
    left: -45%;
    width: 38%;
    height: 220%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.62),
        transparent
    );
    transform: rotate(24deg);
    transition: left 0.65s ease;
}

.monzo-faq-cta-btn:hover {
    color: #0b1427;
    transform: translateY(-2px);
    box-shadow:
        0 18px 38px rgba(216, 170, 85, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.monzo-faq-cta-btn:hover::before {
    left: 120%;
}

/*--------------------------------------------------------------
# FAQ Responsive
--------------------------------------------------------------*/

@media (max-width: 991px) {
    .monzo-faq-section {
        padding: 86px 0;
    }

    .monzo-faq-layout {
        grid-template-columns: 1fr;
    }

    .monzo-faq-intro-card {
        position: relative;
        top: auto;
    }

    .monzo-faq-cta-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 575px) {
    .monzo-faq-section {
        padding: 72px 0;
    }

    .monzo-faq-section .section-heading h2 {
        font-size: 32px;
    }

    .monzo-faq-section .section-heading p {
        font-size: 16px;
    }

    .monzo-faq-intro-card,
    .monzo-faq-accordion,
    .monzo-faq-cta-box {
        padding: 22px;
        border-radius: 22px;
    }

    .monzo-faq-intro-icon {
        width: 64px;
        height: 64px;
        font-size: 28px;
    }

    .monzo-faq-intro-card h3,
    .monzo-faq-cta-box h3 {
        font-size: 24px;
    }

    .monzo-faq-question {
        padding: 18px;
        font-size: 15px;
    }

    .monzo-faq-question i {
        width: 30px;
        height: 30px;
        font-size: 14px;
    }

    .monzo-faq-answer p {
        padding: 0 18px 20px;
        font-size: 15px;
    }

    .monzo-faq-cta-btn {
        width: 100%;
    }
}

/*--------------------------------------------------------------
# Legal Pages
--------------------------------------------------------------*/
body.legal-page {
    background: #0b1427 !important;
    color: #ffffff;
}

.legal-hero-section,
.legal-content-section {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(circle at top left, rgba(213, 174, 93, 0.14), transparent 30%),
        radial-gradient(circle at bottom right, rgba(132, 92, 31, 0.16), transparent 28%),
        linear-gradient(135deg, #0b1427 0%, #12213f 44%, #1a2d57 100%);
}

.legal-hero-section {
    padding: 170px 0 80px;
}

.legal-content-section {
    padding: 0 0 110px;
}

.legal-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.legal-bg::before,
.legal-bg::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    filter: blur(14px);
    opacity: 0.62;
}

.legal-bg::before {
    width: 340px;
    height: 340px;
    top: -110px;
    right: -90px;
    background: radial-gradient(circle, rgba(216, 170, 85, 0.26), rgba(216, 170, 85, 0.02) 70%);
}

.legal-bg::after {
    width: 300px;
    height: 300px;
    left: -90px;
    bottom: -90px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.01) 72%);
}

.legal-hero-section::after,
.legal-content-section::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
    background-size: 42px 42px;
    opacity: 0.20;
    pointer-events: none;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.62), transparent 96%);
    -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.62), transparent 96%);
}

.legal-hero-section .container,
.legal-content-section .container {
    position: relative;
    z-index: 2;
}

.legal-hero-card,
.legal-content-card,
.legal-toc-card,
.legal-support-card {
    border-radius: 30px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.078), rgba(255, 255, 255, 0.032));
    border: 1px solid rgba(255, 255, 255, 0.10);
    box-shadow:
        0 24px 66px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.legal-hero-card {
    max-width: 1020px;
    margin: 0 auto;
    padding: 46px;
    text-align: center;
}

.legal-kicker,
.legal-content-card .content-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 18px;
    padding: 10px 17px;
    border-radius: 999px;
    color: #f8e7b0;
    background: rgba(217, 180, 106, 0.10);
    border: 1px solid rgba(217, 180, 106, 0.30);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.legal-hero-card h1 {
    margin: 0 0 20px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: clamp(38px, 5vw, 64px);
    font-weight: 900;
    line-height: 1.08;
    letter-spacing: -0.04em;
}

.legal-hero-card p {
    max-width: 900px;
    margin: 0 auto 16px;
    color: rgba(255, 255, 255, 0.80);
    font-size: 18px;
    line-height: 1.8;
}

.legal-updated {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    padding: 12px 18px;
    border-radius: 999px;
    color: #0b1427;
    background: linear-gradient(135deg, #f8e7b0 0%, #d8aa55 45%, #fff0bd 100%);
    border: 1px solid rgba(255, 232, 184, 0.86);
    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 850;
}

.legal-layout {
    display: grid;
    grid-template-columns: minmax(260px, 0.35fr) minmax(0, 1fr);
    gap: 30px;
    align-items: start;
}

.legal-toc-card,
.legal-support-card {
    padding: 28px;
}

.legal-toc-card {
    position: sticky;
    top: 110px;
}

.legal-toc-card h3,
.legal-support-card h3 {
    margin: 0 0 18px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 850;
}

.legal-toc-card ul,
.legal-support-card ul {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.legal-toc-card a,
.legal-support-card a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.45;
    text-decoration: none;
    transition: color 0.25s ease, transform 0.25s ease;
}

.legal-toc-card a::before,
.legal-support-card a::before {
    content: "";
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 1px solid rgba(217, 180, 106, 0.65);
    background: rgba(217, 180, 106, 0.12);
}

.legal-toc-card a:hover,
.legal-support-card a:hover {
    color: #f0d89b;
    transform: translateX(4px);
}

.legal-content-card {
    padding: 38px;
}

.legal-content-card h2 {
    margin: 34px 0 14px;
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 28px;
    font-weight: 850;
    line-height: 1.25;
}

.legal-content-card h2:first-child {
    margin-top: 0;
}

.legal-content-card p,
.legal-content-card li {
    color: rgba(255, 255, 255, 0.76);
    font-size: 16px;
    line-height: 1.78;
}

.legal-content-card p {
    margin: 0 0 16px;
}

.legal-content-card ul,
.legal-content-card ol {
    display: grid;
    gap: 10px;
    margin: 0 0 20px;
    padding-left: 22px;
}

.legal-content-card strong {
    color: #ffffff;
}

.legal-notice-box {
    margin: 26px 0;
    padding: 22px;
    border-radius: 22px;
    color: rgba(255, 255, 255, 0.78);
    background: rgba(217, 180, 106, 0.08);
    border: 1px solid rgba(217, 180, 106, 0.18);
}

.legal-notice-box p:last-child {
    margin-bottom: 0;
}

.legal-page .site-footer {
    margin-top: 0;
}

@media (max-width: 991px) {
    .legal-hero-section {
        padding: 140px 0 64px;
    }

    .legal-content-section {
        padding-bottom: 86px;
    }

    .legal-layout {
        grid-template-columns: 1fr;
    }

    .legal-toc-card {
        position: relative;
        top: auto;
    }

    .legal-hero-card,
    .legal-content-card,
    .legal-toc-card,
    .legal-support-card {
        border-radius: 24px;
    }
}

@media (max-width: 575px) {
    .legal-hero-section {
        padding: 124px 0 50px;
    }

    .legal-hero-card,
    .legal-content-card,
    .legal-toc-card,
    .legal-support-card {
        padding: 24px;
        border-radius: 22px;
    }

    .legal-hero-card h1 {
        font-size: 34px;
    }

    .legal-hero-card p,
    .legal-content-card p,
    .legal-content-card li {
        font-size: 15px;
    }

    .legal-content-card h2 {
        font-size: 24px;
    }
}
