/*=============================================
              Global Styles
=============================================*/

:root {
    --page-background: #d8d0d9;

    --text-main: #2b2037;
    --text-secondary: #655b70;

    --accent-main: #7c3fc7;
    --accent-dark: #4c287f;
    --accent-light: #b85ee8;

    --gold-main: #d5a85f;
    --gold-light: #efd3a1;

    --surface-light: #ded6df;
    --surface-soft: #c8becd;
    --surface-deep: #382747;

    --container-width: 1240px;

    --header-height: 66px;

    --transition-fast: 0.2s ease;
    --transition-main: 0.35s ease;
}


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


html {
    scroll-behavior: smooth;
}


body {
    margin: 0;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    color: var(--text-main);

    background:
        var(--page-background);

    line-height: 1.6;
}


body.nav-open {
    overflow: hidden;
}


a {
    color: inherit;
    text-decoration: none;
}


button {
    font: inherit;
}


img,
svg {
    display: block;
    max-width: 100%;
}


main {
    overflow: hidden;
}


section {
    scroll-margin-top: 75px;
}


/*=============================================
                Header Start
=============================================*/

.site-header {
    position: fixed;

    top: 0;
    left: 0;

    width: 100%;

    z-index: 1000;

    background:
        rgba(48, 32, 63, 0.94);

    border-bottom:
        1px solid
        rgba(239, 211, 161, 0.16);

    backdrop-filter:
        blur(14px);

    -webkit-backdrop-filter:
        blur(14px);

    transition:
        background var(--transition-main),
        box-shadow var(--transition-main),
        border-color var(--transition-main);
}


.site-header.is-scrolled {
    background:
        rgba(42, 27, 56, 0.985);

    border-color:
        rgba(239, 211, 161, 0.22);

    box-shadow:
        0 8px 26px
        rgba(26, 14, 35, 0.26);
}


.site-header-inner {
    width:
        min(
            calc(100% - 36px),
            var(--container-width)
        );

    height:
        var(--header-height);

    margin:
        0 auto;

    display:
        flex;

    align-items:
        center;

    gap:
        18px;
}


/* Logo */

.site-logo {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        10px;

    flex-shrink:
        0;
}


.site-logo-mark {
    min-width:
        50px;

    height:
        38px;

    padding:
        0 9px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid
        rgba(239, 211, 161, 0.62);

    border-radius:
        11px;

    background:
        linear-gradient(
            135deg,
            var(--accent-light) 0%,
            var(--accent-main) 55%,
            var(--accent-dark) 100%
        );

    color:
        #f6f0ea;

    font-size:
        15px;

    font-weight:
        900;

    line-height:
        1;

    letter-spacing:
        0.06em;

    box-shadow:
        0 6px 18px
        rgba(40, 18, 64, 0.32);
}


.site-logo-text {
    display:
        flex;

    flex-direction:
        column;

    line-height:
        1;
}


.site-logo-text strong {
    color:
        #f7f1eb;

    font-size:
        13px;

    letter-spacing:
        0.13em;
}


.site-logo-text small {
    margin-top:
        4px;

    color:
        #cdbfd3;

    font-size:
        9px;

    font-weight:
        700;

    letter-spacing:
        0.25em;
}


/* Navigation */

.main-navigation {
    margin-left:
        auto;

    display:
        flex;

    align-items:
        center;

    gap:
        2px;
}


.main-navigation a {
    position:
        relative;

    padding:
        8px 8px;

    border-radius:
        9px;

    color:
        #ddd3e2;

    font-size:
        12px;

    font-weight:
        700;

    white-space:
        nowrap;

    transition:
        color var(--transition-fast),
        background var(--transition-fast);
}


.main-navigation a:hover,
.main-navigation a:focus-visible {
    color:
        var(--gold-light);

    background:
        rgba(255, 255, 255, 0.07);
}


.main-navigation a.is-active {
    color:
        var(--gold-light);
}


.main-navigation a.is-active::after {
    content: "";

    position: absolute;

    left: 10px;
    right: 10px;
    bottom: 2px;

    height:
        2px;

    border-radius:
        10px;

    background:
        var(--gold-main);
}


/* Header Button */

.header-play {
    min-height:
        40px;

    padding:
        0 18px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    flex-shrink:
        0;

    border:
        1px solid
        rgba(239, 211, 161, 0.70);

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            var(--accent-light) 0%,
            var(--accent-main) 55%,
            var(--accent-dark) 100%
        );

    color:
        #ffffff;

    font-size:
        13px;

    font-weight:
        900;

    box-shadow:
        0 7px 20px
        rgba(40, 18, 64, 0.32);

    transition:
        transform var(--transition-fast),
        box-shadow var(--transition-fast),
        filter var(--transition-fast);
}


.header-play:hover,
.header-play:focus-visible {
    transform:
        translateY(-2px);

    box-shadow:
        0 11px 26px
        rgba(40, 18, 64, 0.40);

    filter:
        brightness(1.05);
}


/* Mobile Menu Button */

.nav-toggle {
    display:
        none;

    width:
        42px;

    height:
        42px;

    margin-left:
        auto;

    padding:
        10px;

    border:
        1px solid
        rgba(239, 211, 161, 0.18);

    border-radius:
        10px;

    background:
        rgba(255, 255, 255, 0.06);

    cursor:
        pointer;
}


.nav-toggle span {
    display:
        block;

    width:
        100%;

    height:
        2px;

    margin:
        5px 0;

    border-radius:
        10px;

    background:
        #f3eaf5;

    transition:
        transform var(--transition-main),
        opacity var(--transition-main);
}


.nav-toggle.is-active span:nth-child(1) {
    transform:
        translateY(7px)
        rotate(45deg);
}


.nav-toggle.is-active span:nth-child(2) {
    opacity: 0;
}


.nav-toggle.is-active span:nth-child(3) {
    transform:
        translateY(-7px)
        rotate(-45deg);
}


/* Header Tablet */

@media (max-width: 1120px) {

    .site-header-inner {
        gap:
            10px;
    }


    .main-navigation a {
        padding:
            8px 5px;

        font-size:
            11px;
    }


    .header-play {
        padding:
            0 14px;
    }

}


/* Header Mobile */

@media (max-width: 930px) {

    :root {
        --header-height:
            60px;
    }


    .site-header-inner {
        width:
            min(
                calc(100% - 24px),
                var(--container-width)
            );
    }


    .nav-toggle {
        display:
            block;
    }


    .main-navigation {
        position:
            absolute;

        top:
            100%;

        left:
            12px;

        right:
            12px;

        margin:
            0;

        display:
            flex;

        flex-direction:
            column;

        align-items:
            stretch;

        gap:
            2px;

        max-height:
            0;

        padding:
            0 10px;

        overflow:
            hidden;

        opacity:
            0;

        pointer-events:
            none;

        background:
            rgba(48, 32, 63, 0.99);

        border:
            1px solid
            transparent;

        border-radius:
            0 0 16px 16px;

        box-shadow:
            0 16px 36px
            rgba(27, 14, 36, 0.30);

        transition:
            max-height var(--transition-main),
            padding var(--transition-main),
            opacity var(--transition-main);
    }


    .main-navigation.is-open {
        max-height:
            620px;

        padding:
            10px;

        opacity:
            1;

        pointer-events:
            auto;

        border-color:
            rgba(239, 211, 161, 0.15);
    }


    .main-navigation a {
        padding:
            11px 12px;

        font-size:
            13px;
    }


    .main-navigation a.is-active::after {
        display:
            none;
    }

}


/* Header Small Mobile */

@media (max-width: 520px) {

    .site-logo-text {
        display:
            none;
    }


    .site-logo-mark {
        min-width:
            44px;

        height:
            36px;

        font-size:
            14px;
    }


    .header-play {
        min-height:
            36px;

        padding:
            0 12px;

        font-size:
            12px;
    }

}

/*=============================================
                Header End
=============================================*/


/*=============================================
                 Hero Start
=============================================*/

.casino-hero {
    position:
        relative;

    min-height:
        calc(100vh - var(--header-height));

    min-height:
        calc(100svh - var(--header-height));

    margin-top:
        var(--header-height);

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    overflow:
        hidden;

    isolation:
        isolate;
}


/* Hero Background */

.hero-background {
    position:
        absolute;

    inset:
        0;

    z-index:
        -3;

    background-image:
        url("../images/ojo-hero-background.webp");

    background-repeat:
        no-repeat;

    background-position:
        center center;

    background-size:
        cover;
}


/* Hero Overlay */

.hero-overlay {
    position:
        absolute;

    inset:
        0;

    z-index:
        -2;

    background:
        linear-gradient(
            90deg,
            rgba(29, 17, 45, 0.90) 0%,
            rgba(37, 20, 54, 0.78) 28%,
            rgba(45, 24, 61, 0.46) 52%,
            rgba(37, 19, 52, 0.20) 72%,
            rgba(29, 15, 43, 0.18) 100%
        );
}


/* Hero Container */

.hero-container {
    width:
        min(
            calc(100% - 40px),
            var(--container-width)
        );

    min-height:
        calc(100vh - var(--header-height));

    min-height:
        calc(100svh - var(--header-height));

    margin:
        0 auto;

    display:
        flex;

    align-items:
        center;

    justify-content:
        flex-start;
}


/* Hero Content */

.hero-content {
    position:
        relative;

    width:
        min(
            680px,
            100%
        );

    margin:
        0;

    padding:
        54px 0 48px;

    text-align:
        left;
}


/* Hero Bonus */

.hero-bonus-label {
    display:
        inline-block;

    margin-bottom:
        12px;

    padding:
        7px 13px;

    border:
        1px solid
        rgba(239, 211, 161, 0.40);

    border-radius:
        999px;

    background:
        rgba(90, 50, 122, 0.34);

    color:
        var(--gold-light);

    font-size:
        12px;

    font-weight:
        900;

    letter-spacing:
        0.15em;

    line-height:
        1.3;

    text-transform:
        uppercase;

    backdrop-filter:
        blur(8px);

    -webkit-backdrop-filter:
        blur(8px);
}


/* Hero Title */

.hero-content h1 {
    margin:
        0;

    color:
        #f7f1ec;

    font-size:
        clamp(
            48px,
            5vw,
            76px
        );

    font-weight:
        900;

    line-height:
        0.98;

    letter-spacing:
        -0.05em;

    text-shadow:
        0 4px 18px
        rgba(22, 10, 32, 0.42);
}


/* Hero Tagline */

.hero-tagline {
    max-width:
        650px;

    margin:
        18px 0 0;

    color:
        #f0e7f2;

    font-size:
        clamp(
            20px,
            1.8vw,
            26px
        );

    font-weight:
        800;

    line-height:
        1.35;

    text-shadow:
        0 2px 10px
        rgba(19, 8, 29, 0.40);
}


/* Hero Description */

.hero-description {
    max-width:
        650px;

    margin:
        15px 0 0;

    color:
        #d9cedd;

    font-size:
        16px;

    font-weight:
        500;

    line-height:
        1.7;

    text-shadow:
        0 2px 8px
        rgba(19, 8, 29, 0.36);
}


/* Hero Highlights */

.hero-highlights {
    max-width:
        650px;

    margin-top:
        24px;

    display:
        grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap:
        10px;
}


.hero-highlight {
    min-height:
        96px;

    padding:
        14px;

    display:
        flex;

    align-items:
        flex-start;

    gap:
        11px;

    border:
        1px solid
        rgba(239, 211, 161, 0.18);

    border-radius:
        15px;

    background:
        rgba(47, 27, 66, 0.66);

    box-shadow:
        0 12px 30px
        rgba(17, 8, 25, 0.18);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);
}


.hero-highlight-icon {
    width:
        34px;

    height:
        34px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    flex-shrink:
        0;

    border:
        1px solid
        rgba(239, 211, 161, 0.46);

    border-radius:
        10px;

    background:
        linear-gradient(
            135deg,
            rgba(185, 95, 234, 0.92),
            rgba(91, 49, 143, 0.92)
        );

    color:
        #ffffff;

    font-size:
        16px;

    font-weight:
        900;
}


.hero-highlight-copy {
    min-width:
        0;
}


.hero-highlight-copy strong {
    display:
        block;

    color:
        #f5ede7;

    font-size:
        13px;

    font-weight:
        900;

    line-height:
        1.25;
}


.hero-highlight-copy small {
    display:
        block;

    margin-top:
        4px;

    color:
        #cabfd0;

    font-size:
        11px;

    font-weight:
        600;

    line-height:
        1.4;
}


/* Hero Button */

.hero-play {
    min-width:
        200px;

    min-height:
        52px;

    margin-top:
        24px;

    padding:
        0 30px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid
        rgba(239, 211, 161, 0.78);

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            var(--accent-light) 0%,
            var(--accent-main) 52%,
            var(--accent-dark) 100%
        );

    color:
        #ffffff;

    font-size:
        16px;

    font-weight:
        900;

    box-shadow:
        0 13px 30px
        rgba(50, 23, 78, 0.36);

    transition:
        transform var(--transition-fast),
        box-shadow var(--transition-fast),
        filter var(--transition-fast);
}


.hero-play:hover,
.hero-play:focus-visible {
    transform:
        translateY(-3px);

    box-shadow:
        0 18px 36px
        rgba(50, 23, 78, 0.44);

    filter:
        brightness(1.05);
}


/* Hero Offer Details */

.hero-offer-note {
    max-width:
        640px;

    margin:
        15px 0 0;

    color:
        #cabfd0;

    font-size:
        12px;

    font-weight:
        600;

    line-height:
        1.55;
}


/* Hero Tablet */

@media (max-width: 1000px) {

    .hero-content {
        width:
            min(
                650px,
                100%
            );

        padding:
            48px 0 44px;
    }


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

}


/* Hero Mobile */

@media (max-width: 760px) {

    .casino-hero {
        min-height:
            calc(100svh - var(--header-height));

        align-items:
            center;
    }


    .hero-background {
        background-position:
            58% center;

        background-size:
            cover;
    }


    .hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(31, 17, 45, 0.68) 0%,
                rgba(31, 17, 45, 0.82) 48%,
                rgba(31, 17, 45, 0.94) 100%
            );
    }


    .hero-container {
        width:
            calc(100% - 28px);

        min-height:
            calc(100svh - var(--header-height));
    }


    .hero-content {
        width:
            100%;

        padding:
            40px 0 34px;

        text-align:
            center;
    }


    .hero-bonus-label {
        font-size:
            10px;
    }


    .hero-content h1 {
        font-size:
            clamp(
                42px,
                12vw,
                58px
            );
    }


    .hero-tagline {
        margin:
            15px auto 0;

        max-width:
            580px;

        font-size:
            18px;
    }


    .hero-description {
        max-width:
            580px;

        margin:
            13px auto 0;

        font-size:
            14px;

        line-height:
            1.6;
    }


    .hero-highlights {
        max-width:
            560px;

        margin:
            22px auto 0;

        grid-template-columns:
            1fr;
    }


    .hero-highlight {
        min-height:
            0;

        text-align:
            left;
    }


    .hero-play {
        margin-top:
            22px;
    }


    .hero-offer-note {
        max-width:
            560px;

        margin:
            14px auto 0;

        font-size:
            11px;
    }

}


/* Hero Small Mobile */

@media (max-width: 520px) {

    .hero-content {
        padding:
            32px 0 28px;
    }


    .hero-bonus-label {
        padding:
            6px 10px;

        font-size:
            9px;

        letter-spacing:
            0.12em;
    }


    .hero-content h1 {
        font-size:
            39px;
    }


    .hero-tagline {
        font-size:
            16px;

        line-height:
            1.4;
    }


    .hero-description {
        font-size:
            13px;

        line-height:
            1.55;
    }


    .hero-highlights {
        gap:
            8px;
    }


    .hero-highlight {
        padding:
            12px;
    }


    .hero-play {
        width:
            100%;

        max-width:
            270px;

        min-height:
            48px;
    }


    .hero-offer-note {
        font-size:
            10px;
    }

}

/*=============================================
                  Hero End
=============================================*/

/*=============================================
                Bonuses Start
=============================================*/

.bonus-section {
    position: relative;
    padding: 54px 12px 78px;
    overflow: hidden;
    color: #30263a;

    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(97, 72, 121, 0.10),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 72%,
            rgba(193, 151, 83, 0.12),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #ded9dc 0%,
            #e9e5e2 52%,
            #ddd7dc 100%
        );
}


.bonus-section::before {
    content: "";

    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(92, 70, 113, 0.45),
            rgba(199, 157, 87, 0.55),
            transparent
        );
}


.bonus-container {
    position: relative;
    z-index: 1;

    width:
        min(
            calc(100% - 8px),
            1500px
        );

    margin:
        0 auto;
}


/* Bonus Introduction */

.bonus-intro {
    display: grid;

    grid-template-columns:
        minmax(420px, 0.9fr)
        minmax(0, 1.1fr);

    gap:
        48px;

    align-items:
        end;

    margin-bottom:
        30px;
}


.bonus-eyebrow,
.bonus-group-kicker,
.bonus-detail-kicker {
    margin:
        0 0 8px;

    color:
        #7b568e;

    font-size:
        12px;

    font-weight:
        900;

    letter-spacing:
        0.14em;

    text-transform:
        uppercase;
}


.bonus-intro h2 {
    max-width:
        650px;

    margin:
        0;

    color:
        #30243b;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size:
        clamp(
            42px,
            4vw,
            62px
        );

    font-weight:
        900;

    line-height:
        1.02;

    letter-spacing:
        -0.04em;
}


.bonus-intro-copy {
    max-width:
        790px;
}


.bonus-intro-copy p {
    margin:
        0;

    color:
        #5e5663;

    font-size:
        16px;

    line-height:
        1.72;
}


.bonus-intro-copy p + p {
    margin-top:
        12px;
}


.bonus-intro-copy .bonus-intro-lead {
    color:
        #403649;

    font-size:
        18px;

    font-weight:
        750;

    line-height:
        1.6;
}


/* Bonus Explorer */

.bonus-explorer {
    display: grid;

    grid-template-columns:
        280px
        minmax(0, 1fr);

    gap:
        16px;

    align-items:
        stretch;
}


/* Bonus Navigation */

.bonus-options {
    display:
        grid;

    grid-template-rows:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        10px;
}


.bonus-option {
    position:
        relative;

    width:
        100%;

    min-height:
        108px;

    padding:
        17px 16px;

    display:
        flex;

    align-items:
        center;

    gap:
        14px;

    overflow:
        hidden;

    text-align:
        left;

    border:
        1px solid
        rgba(126, 101, 76, 0.20);

    border-radius:
        16px;

    background:
        linear-gradient(
            145deg,
            #f5efe6 0%,
            #eee5d9 100%
        );

    color:
        #3b3340;

    cursor:
        pointer;

    box-shadow:
        0 8px 22px
        rgba(56, 45, 62, 0.08);

    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease,
        color 0.2s ease;
}


.bonus-option::before {
    content:
        "";

    position:
        absolute;

    top:
        0;

    left:
        0;

    width:
        5px;

    height:
        100%;

    background:
        #c59a56;

    opacity:
        0.55;
}


.bonus-option:hover,
.bonus-option:focus-visible {
    transform:
        translateX(5px);

    border-color:
        rgba(21, 96, 92, 0.42);

    box-shadow:
        0 13px 30px
        rgba(48, 57, 58, 0.13);
}


.bonus-option.is-active {
    border-color:
        rgba(223, 187, 123, 0.65);

    background:
        linear-gradient(
            135deg,
            #246360 0%,
            #174a49 100%
        );

    color:
        #ffffff;

    box-shadow:
        0 16px 34px
        rgba(23, 74, 73, 0.24);
}


.bonus-option.is-active::before {
    background:
        #e8c67f;

    opacity:
        1;
}


.bonus-option-icon {
    width:
        46px;

    height:
        46px;

    display:
        grid;

    place-items:
        center;

    flex-shrink:
        0;

    border:
        1px solid
        rgba(129, 93, 53, 0.15);

    border-radius:
        13px;

    background:
        #e6d5bd;

    color:
        #755129;
}


.bonus-option.is-active
.bonus-option-icon {
    border-color:
        rgba(232, 198, 127, 0.36);

    background:
        rgba(255, 255, 255, 0.09);

    color:
        #f1d391;
}


.bonus-option-icon svg {
    width:
        24px;

    height:
        24px;

    fill:
        none;

    stroke:
        currentColor;

    stroke-width:
        1.8;

    stroke-linecap:
        round;

    stroke-linejoin:
        round;
}


.bonus-option > span:last-child {
    min-width:
        0;
}


.bonus-option strong {
    display:
        block;

    color:
        inherit;

    font-size:
        15px;

    font-weight:
        900;

    line-height:
        1.25;
}


.bonus-option small {
    display:
        block;

    margin-top:
        5px;

    color:
        #786d68;

    font-size:
        12px;

    line-height:
        1.42;
}


.bonus-option.is-active small {
    color:
        rgba(255, 255, 255, 0.74);
}


/* Bonus Detail Area */

.bonus-detail-area {
    min-width:
        0;
}


.bonus-detail {
    min-height:
        100%;

    padding:
        32px 36px 30px;

    border:
        1px solid
        rgba(93, 73, 103, 0.13);

    border-radius:
        21px;

    background:
        #f6f2ed;

    box-shadow:
        0 18px 44px
        rgba(59, 47, 65, 0.09);
}


.bonus-detail[hidden] {
    display:
        none;
}


/* Bonus Detail Header */

.bonus-detail-header {
    display:
        flex;

    align-items:
        flex-start;

    justify-content:
        space-between;

    gap:
        28px;

    padding-bottom:
        21px;

    border-bottom:
        1px solid
        rgba(90, 70, 99, 0.12);
}


.bonus-detail-header h3 {
    max-width:
        850px;

    margin:
        0;

    color:
        #30243b;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size:
        clamp(
            34px,
            3vw,
            49px
        );

    font-weight:
        900;

    line-height:
        1.07;

    letter-spacing:
        -0.035em;
}


.bonus-detail-stat {
    min-width:
        145px;

    padding:
        19px 17px;

    flex-shrink:
        0;

    border:
        1px solid
        rgba(213, 175, 102, 0.52);

    border-radius:
        16px;

    background:
        linear-gradient(
            145deg,
            #215d5a 0%,
            #174746 100%
        );

    text-align:
        center;

    box-shadow:
        0 11px 26px
        rgba(28, 76, 74, 0.19);
}


.bonus-detail-stat-wide {
    min-width:
        185px;
}


.bonus-detail-stat strong {
    display:
        block;

    color:
        #f0d08e;

    font-size:
        39px;

    font-weight:
        900;

    line-height:
        1;
}


.bonus-detail-stat span {
    display:
        block;

    margin-top:
        7px;

    color:
        rgba(255, 255, 255, 0.76);

    font-size:
        10px;

    font-weight:
        800;

    letter-spacing:
        0.08em;

    text-transform:
        uppercase;
}


.bonus-detail-lead {
    max-width:
        1080px;

    margin:
        22px 0 0;

    color:
        #413947;

    font-size:
        18px;

    font-weight:
        700;

    line-height:
        1.65;
}


/* Main Content */

.bonus-content-grid {
    display:
        grid;

    grid-template-columns:
        minmax(0, 1fr)
        260px;

    gap:
        32px;

    margin-top:
        26px;
}


.bonus-main-copy h4 {
    margin:
        0 0 11px;

    color:
        #2f3f3e;

    font-size:
        25px;

    font-weight:
        900;

    line-height:
        1.24;
}


.bonus-main-copy p {
    margin:
        0;

    color:
        #5c565e;

    font-size:
        16px;

    line-height:
        1.78;
}


.bonus-main-copy p + p {
    margin-top:
        14px;
}


/* Bonus Facts */

.bonus-facts {
    display:
        grid;

    align-content:
        start;

    overflow:
        hidden;

    border:
        1px solid
        rgba(29, 92, 88, 0.14);

    border-radius:
        15px;

    background:
        #e7efeb;
}


.bonus-facts div {
    padding:
        14px 16px;
}


.bonus-facts div + div {
    border-top:
        1px solid
        rgba(29, 92, 88, 0.11);
}


.bonus-facts span {
    display:
        block;

    color:
        #677b78;

    font-size:
        10px;

    font-weight:
        900;

    letter-spacing:
        0.09em;

    text-transform:
        uppercase;
}


.bonus-facts strong {
    display:
        block;

    margin-top:
        4px;

    color:
        #284744;

    font-size:
        14px;

    line-height:
        1.35;
}


/* Bonus Path */

.bonus-path {
    display:
        grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap:
        12px;

    margin-top:
        27px;
}


.bonus-path > div {
    padding:
        18px;

    border:
        1px solid
        rgba(41, 98, 93, 0.14);

    border-radius:
        14px;

    background:
        linear-gradient(
            145deg,
            #eef3ef 0%,
            #e5ece8 100%
        );
}


.bonus-path strong {
    display:
        block;

    color:
        #294b48;

    font-size:
        15px;

    font-weight:
        900;
}


.bonus-path p {
    margin:
        7px 0 0;

    color:
        #626b69;

    font-size:
        13px;

    line-height:
        1.55;
}


/* Bonus Note */

.bonus-note {
    margin-top:
        21px;

    padding:
        15px 17px;

    border-left:
        4px solid
        #c6984e;

    background:
        #f0e6d8;

    color:
        #62584e;

    font-size:
        13px;

    line-height:
        1.6;
}


.bonus-note strong {
    color:
        #4a3e32;
}


/* Reward Comparison */

.bonus-comparison {
    margin-top:
        42px;
}


.bonus-comparison-heading {
    display:
        grid;

    grid-template-columns:
        minmax(360px, 0.85fr)
        minmax(0, 1.15fr);

    gap:
        42px;

    align-items:
        end;

    margin-bottom:
        18px;
}


.bonus-comparison-heading h3 {
    margin:
        0;

    color:
        #30243b;

    font-size:
        clamp(
            30px,
            3vw,
            43px
        );

    font-weight:
        900;

    line-height:
        1.08;

    letter-spacing:
        -0.03em;
}


.bonus-comparison-heading > p:last-child {
    margin:
        0;

    color:
        #625b63;

    font-size:
        15px;

    line-height:
        1.7;
}


.bonus-comparison-grid {
    display:
        grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        12px;
}


.bonus-comparison-grid article {
    min-height:
        155px;

    padding:
        20px;

    border:
        1px solid
        rgba(47, 94, 90, 0.13);

    border-radius:
        16px;

    background:
        #f3eee7;
}


.bonus-comparison-grid span {
    display:
        block;

    color:
        #28716c;

    font-size:
        10px;

    font-weight:
        900;

    letter-spacing:
        0.10em;

    text-transform:
        uppercase;
}


.bonus-comparison-grid strong {
    display:
        block;

    margin-top:
        7px;

    color:
        #344b49;

    font-size:
        16px;
}


.bonus-comparison-grid p {
    margin:
        8px 0 0;

    color:
        #6a6567;

    font-size:
        14px;

    line-height:
        1.58;
}


/* Bonus Tablet */

@media (max-width: 1100px) {

    .bonus-intro {
        grid-template-columns:
            1fr;

        gap:
            15px;
    }


    .bonus-explorer {
        grid-template-columns:
            245px
            minmax(0, 1fr);
    }


    .bonus-content-grid {
        grid-template-columns:
            1fr;
    }


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


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

}


/* Bonus Mobile */

@media (max-width: 760px) {

    .bonus-section {
        padding:
            48px 12px 62px;
    }


    .bonus-explorer {
        grid-template-columns:
            1fr;
    }


    .bonus-options {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

        grid-template-rows:
            auto;
    }


    .bonus-option {
        min-height:
            98px;
    }


    .bonus-detail {
        padding:
            23px 19px;
    }


    .bonus-detail-header {
        display:
            grid;

        grid-template-columns:
            1fr;
    }


    .bonus-detail-stat,
    .bonus-detail-stat-wide {
        width:
            100%;

        min-width:
            0;
    }


    .bonus-path {
        grid-template-columns:
            1fr;
    }


    .bonus-comparison-heading {
        grid-template-columns:
            1fr;

        gap:
            11px;
    }

}


/* Bonus Small Mobile */

@media (max-width: 520px) {

    .bonus-options {
        grid-template-columns:
            1fr;
    }


    .bonus-intro h2 {
        font-size:
            38px;
    }


    .bonus-detail-header h3 {
        font-size:
            31px;
    }


    .bonus-facts {
        grid-template-columns:
            1fr;
    }


    .bonus-comparison-grid {
        grid-template-columns:
            1fr;
    }

}

/*=============================================
                 Bonuses End
=============================================*/
/*=============================================
            Rewards & Loyalty Start
=============================================*/

.rewards-section {
    position: relative;
    padding: 76px 18px 86px;
    overflow: hidden;
    color: #243c3a;

    background:
        radial-gradient(circle at 83% 8%, rgba(213, 171, 91, 0.17), transparent 29%),
        radial-gradient(circle at 7% 84%, rgba(111, 71, 143, 0.13), transparent 31%),
        linear-gradient(145deg, #dce8e2 0%, #cbdcd5 48%, #e7dfd2 100%);
}

.rewards-section::before {
    content: "";
    position: absolute;
    top: -240px;
    right: -170px;
    width: 570px;
    height: 570px;
    border: 1px solid rgba(202, 157, 79, 0.22);
    border-radius: 50%;
    pointer-events: none;
}

.rewards-container {
    position: relative;
    z-index: 1;
    width: min(calc(100% - 8px), 1450px);
    margin: 0 auto;
}


/* Rewards Hero */

.rewards-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(420px, 0.92fr);
    gap: 50px;
    align-items: center;
}

.rewards-kicker,
.rewards-panel-kicker {
    margin: 0 0 9px;
    color: #72518d;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.rewards-hero-copy h2 {
    max-width: 760px;
    margin: 0;
    color: #253d3a;
    font-size: clamp(44px, 4.7vw, 68px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.045em;
}

.rewards-lead {
    max-width: 780px;
    margin: 22px 0 0;
    color: #324d49;
    font-size: 18px;
    font-weight: 750;
    line-height: 1.66;
}

.rewards-copy {
    max-width: 780px;
    margin: 14px 0 0;
    color: #5c6c68;
    font-size: 16px;
    line-height: 1.75;
}

.rewards-hero-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.rewards-hero-stats div {
    min-height: 95px;
    padding: 15px;
    border: 1px solid rgba(49, 91, 85, 0.14);
    border-radius: 14px;
    background: rgba(240, 245, 240, 0.58);
}

.rewards-hero-stats strong {
    display: block;
    color: #1c6660;
    font-size: 21px;
    font-weight: 900;
    line-height: 1.1;
}

.rewards-hero-stats span {
    display: block;
    margin-top: 7px;
    color: #64746f;
    font-size: 11px;
    line-height: 1.42;
}


/* Hero Visual */

.rewards-hero-visual {
    position: relative;
    min-height: 480px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.rewards-hero-visual::before {
    content: "";
    position: absolute;
    width: 82%;
    height: 74%;
    border-radius: 50%;
    background: radial-gradient(
        circle at center,
        rgba(199, 153, 74, 0.24),
        rgba(97, 63, 126, 0.09) 55%,
        transparent 72%
    );
    filter: blur(16px);
}

.rewards-hero-visual img {
    position: relative;
    z-index: 1;
    width: min(100%, 680px);
    max-height: 520px;
    object-fit: contain;
    filter: drop-shadow(0 26px 32px rgba(42, 60, 54, 0.18));
}


/* Rewards Tabs */

.rewards-tabs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 50px;
}

.rewards-tab {
    position: relative;
    min-height: 98px;
    padding: 17px 18px;
    display: flex;
    align-items: center;
    gap: 14px;
    overflow: hidden;
    text-align: left;
    border: 1px solid rgba(58, 90, 84, 0.16);
    border-radius: 17px;
    background: rgba(241, 245, 239, 0.72);
    color: #2d4542;
    cursor: pointer;
    box-shadow: 0 9px 24px rgba(45, 69, 64, 0.06);
    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}

.rewards-tab::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 4px;
    border-radius: 4px 4px 0 0;
    background: transparent;
}

.rewards-tab:hover,
.rewards-tab:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(183, 137, 65, 0.46);
    box-shadow: 0 15px 32px rgba(45, 69, 64, 0.10);
}

.rewards-tab.is-active {
    border-color: rgba(225, 191, 121, 0.64);
    background: linear-gradient(135deg, #315f5a 0%, #214b48 100%);
    color: #ffffff;
    box-shadow: 0 17px 36px rgba(28, 73, 68, 0.22);
}

.rewards-tab.is-active::after {
    background: #e1bd72;
}

.rewards-tab-icon {
    width: 45px;
    height: 45px;
    display: grid;
    place-items: center;
    flex-shrink: 0;
    border-radius: 50%;
    background: #e4d5bb;
    color: #765429;
    font-size: 19px;
    font-weight: 900;
}

.rewards-tab.is-active .rewards-tab-icon {
    background: rgba(255, 255, 255, 0.10);
    color: #f0d08d;
}

.rewards-tab strong {
    display: block;
    font-size: 15px;
    font-weight: 900;
}

.rewards-tab small {
    display: block;
    margin-top: 4px;
    color: #70807b;
    font-size: 11px;
    line-height: 1.4;
}

.rewards-tab.is-active small {
    color: rgba(255, 255, 255, 0.70);
}


/* Rewards Panels */

.rewards-panels {
    margin-top: 12px;
}

.rewards-panel {
    padding: 35px 38px 36px;
    border: 1px solid rgba(45, 83, 77, 0.13);
    border-radius: 22px;
    background: rgba(247, 245, 238, 0.94);
    box-shadow: 0 20px 48px rgba(48, 67, 61, 0.08);
}

.rewards-panel[hidden] {
    display: none;
}

.rewards-panel-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(54, 82, 77, 0.11);
}

.rewards-panel-heading h3 {
    max-width: 830px;
    margin: 0;
    color: #263d3a;
    font-size: clamp(34px, 3.2vw, 50px);
    font-weight: 900;
    line-height: 1.06;
    letter-spacing: -0.035em;
}

.rewards-panel-badge {
    min-width: 150px;
    padding: 19px 17px;
    flex-shrink: 0;
    border: 1px solid rgba(220, 180, 100, 0.47);
    border-radius: 16px;
    background: linear-gradient(145deg, #653e7b 0%, #432b55 100%);
    text-align: center;
    box-shadow: 0 12px 27px rgba(60, 37, 73, 0.18);
}

.rewards-panel-badge-gold {
    background: linear-gradient(145deg, #976c29 0%, #704d1e 100%);
}

.rewards-panel-badge strong {
    display: block;
    color: #f1d18e;
    font-size: 34px;
    font-weight: 900;
    line-height: 1;
}

.rewards-panel-badge span {
    display: block;
    margin-top: 7px;
    color: rgba(255, 255, 255, 0.73);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.rewards-panel-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 290px;
    gap: 36px;
    margin-top: 27px;
}

.rewards-panel-lead {
    margin: 0;
    color: #354d49;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.67;
}

.rewards-panel-copy p:not(.rewards-panel-lead) {
    margin: 14px 0 0;
    color: #5e6966;
    font-size: 16px;
    line-height: 1.78;
}


/* Summary */

.rewards-summary {
    overflow: hidden;
    align-self: start;
    border: 1px solid rgba(37, 97, 89, 0.14);
    border-radius: 16px;
    background: #e2ece7;
}

.rewards-summary-gold {
    background: #eee4d2;
    border-color: rgba(150, 107, 42, 0.17);
}

.rewards-summary div {
    padding: 15px 17px;
}

.rewards-summary div + div {
    border-top: 1px solid rgba(46, 91, 84, 0.10);
}

.rewards-summary span {
    display: block;
    color: #687d78;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.rewards-summary strong {
    display: block;
    margin-top: 4px;
    color: #264844;
    font-size: 14px;
    line-height: 1.35;
}


/* Feature Strip */

.rewards-feature-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
}

.rewards-feature-strip div {
    min-height: 110px;
    padding: 17px;
    border: 1px solid rgba(53, 91, 84, 0.12);
    border-radius: 14px;
    background: linear-gradient(145deg, #ebf0e9 0%, #e4eae3 100%);
}

.rewards-feature-strip strong {
    display: block;
    color: #27534e;
    font-size: 14px;
}

.rewards-feature-strip span {
    display: block;
    margin-top: 6px;
    color: #67736f;
    font-size: 12px;
    line-height: 1.5;
}


/* Wheel Cards */

.rewards-wheel-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 11px;
    margin-top: 28px;
}

.rewards-wheel-cards article {
    padding: 21px;
    border-radius: 16px;
    border: 1px solid rgba(107, 76, 124, 0.15);
    background: linear-gradient(145deg, #eee7f0 0%, #e2d7e6 100%);
}

.rewards-wheel-cards article:nth-child(2) {
    background: linear-gradient(145deg, #e8efe9 0%, #dae7e1 100%);
    border-color: rgba(42, 99, 90, 0.15);
}

.rewards-wheel-cards article:nth-child(3) {
    background: linear-gradient(145deg, #eee2cc 0%, #e5d5b7 100%);
    border-color: rgba(156, 112, 46, 0.18);
}

.rewards-wheel-cards span {
    color: #76518f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.12em;
}

.rewards-wheel-cards h4 {
    margin: 7px 0 0;
    color: #344945;
    font-size: 20px;
}

.rewards-wheel-cards p {
    margin: 7px 0 0;
    color: #68736f;
    font-size: 13px;
    line-height: 1.6;
}


/* Prize Types */

.rewards-prize-types {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 27px;
}

.rewards-prize-types span {
    padding: 10px 14px;
    border: 1px solid rgba(151, 108, 43, 0.20);
    border-radius: 999px;
    background: #eee3d1;
    color: #68491f;
    font-size: 12px;
    font-weight: 800;
}


/* Closing Explanation */

.rewards-explanation {
    display: grid;
    grid-template-columns: minmax(340px, 0.82fr) minmax(0, 1.18fr);
    gap: 56px;
    margin-top: 48px;
    padding: 34px 36px;
    border-radius: 20px;
    background: linear-gradient(135deg, #315b57 0%, #254b48 52%, #3f3153 100%);
    box-shadow: 0 17px 40px rgba(35, 66, 61, 0.16);
}

.rewards-explanation .rewards-kicker {
    color: #edc97e;
}

.rewards-explanation h3 {
    max-width: 570px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(30px, 3vw, 43px);
    font-weight: 900;
    line-height: 1.08;
}

.rewards-explanation > div:last-child p {
    margin: 0;
    color: rgba(244, 247, 243, 0.76);
    font-size: 14px;
    line-height: 1.74;
}

.rewards-explanation > div:last-child p + p {
    margin-top: 12px;
}


/* Rewards Tablet */

@media (max-width: 1050px) {
    .rewards-hero {
        grid-template-columns: 1fr;
    }

    .rewards-hero-visual {
        min-height: 370px;
    }

    .rewards-hero-visual img {
        max-height: 420px;
    }

    .rewards-hero-stats,
    .rewards-feature-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rewards-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

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

    .rewards-summary {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rewards-wheel-cards {
        grid-template-columns: 1fr;
    }
}


/* Rewards Mobile */

@media (max-width: 700px) {
    .rewards-section {
        padding: 58px 14px 68px;
    }

    .rewards-hero-copy h2 {
        font-size: clamp(38px, 10vw, 51px);
    }

    .rewards-lead {
        font-size: 16px;
    }

    .rewards-copy {
        font-size: 14px;
    }

    .rewards-hero-stats,
    .rewards-tabs,
    .rewards-feature-strip {
        grid-template-columns: 1fr;
    }

    .rewards-hero-visual {
        min-height: 290px;
    }

    .rewards-panel {
        padding: 24px 19px;
    }

    .rewards-panel-heading {
        display: grid;
        grid-template-columns: 1fr;
    }

    .rewards-panel-badge {
        width: 100%;
        min-width: 0;
    }

    .rewards-panel-heading h3 {
        font-size: 31px;
    }

    .rewards-summary {
        grid-template-columns: 1fr;
    }

    .rewards-explanation {
        grid-template-columns: 1fr;
        gap: 18px;
        padding: 27px 21px;
    }
}

/*=============================================
             Rewards & Loyalty End
=============================================*/
/*=============================================
                 Games Start
=============================================*/

.games-section {
    position: relative;
    padding: 70px 14px 86px;
    overflow: hidden;
    color: #342f3a;
    background:
        radial-gradient(circle at 8% 7%, rgba(111, 75, 139, 0.15), transparent 27%),
        radial-gradient(circle at 92% 88%, rgba(205, 162, 86, 0.15), transparent 29%),
        linear-gradient(145deg, #d8d2db 0%, #e5ddd2 50%, #d4dcda 100%);
}

.games-container {
    width: min(calc(100% - 8px), 1500px);
    margin: 0 auto;
}


/* Introduction */

.games-intro {
    display: grid;
    grid-template-columns: minmax(390px, 0.82fr) minmax(0, 1.18fr);
    gap: 52px;
    align-items: end;
    margin-bottom: 34px;
}

.games-kicker,
.games-panel-kicker {
    margin: 0 0 9px;
    color: #76518f;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.games-intro h2 {
    max-width: 690px;
    margin: 0;
    color: #302738;
    font-size: clamp(42px, 4.3vw, 64px);
    font-weight: 900;
    line-height: 1.01;
    letter-spacing: -0.045em;
}

.games-intro-copy p {
    margin: 0;
    color: #625d65;
    font-size: 16px;
    line-height: 1.74;
}

.games-intro-copy p + p {
    margin-top: 12px;
}

.games-intro-copy .games-intro-lead {
    color: #413b47;
    font-size: 18px;
    font-weight: 750;
    line-height: 1.63;
}


/* Main Navigation */

.games-navigation {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 13px;
}

.games-navigation-button {
    min-height: 96px;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 13px;
    border: 1px solid rgba(74, 59, 82, 0.18);
    border-radius: 17px;
    background: linear-gradient(145deg, #f0e7da, #e8ddd0);
    color: #3d3442;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 9px 24px rgba(54, 45, 59, 0.08);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease,
        background 0.25s ease,
        color 0.25s ease;
}

.games-navigation-button:hover,
.games-navigation-button:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(145, 104, 66, 0.42);
    box-shadow: 0 15px 31px rgba(54, 45, 59, 0.12);
}

.games-navigation-button.is-active {
    color: #fffaf1;
}

.games-navigation-button[data-games-target="slots"].is-active {
    background: linear-gradient(135deg, #22746c, #164f4b);
    border-color: #e4c27b;
}

.games-navigation-button[data-games-target="live"].is-active {
    background: linear-gradient(135deg, #815087, #57365d);
    border-color: #e5c584;
}

.games-navigation-button[data-games-target="tables"].is-active {
    background: linear-gradient(135deg, #496d89, #334e68);
    border-color: #e0c386;
}

.games-navigation-button[data-games-target="instant"].is-active {
    background: linear-gradient(135deg, #5b62a2, #404779);
    border-color: #e0cd91;
}

.games-navigation-button[data-games-target="bingo"].is-active {
    background: linear-gradient(135deg, #955d76, #663f55);
    border-color: #e5c488;
}

.games-nav-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    flex-shrink: 0;
    border-radius: 13px;
    background: rgba(95, 65, 114, 0.11);
    color: #75508c;
    font-size: 17px;
    font-weight: 900;
}

.games-navigation-button.is-active .games-nav-icon {
    background: rgba(255, 255, 255, 0.11);
    color: #f2d18c;
}

.games-navigation-button strong {
    display: block;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.2;
}

.games-navigation-button small {
    display: block;
    margin-top: 5px;
    font-size: 10px;
    font-weight: 650;
    line-height: 1.35;
    opacity: 0.76;
}


/* Stage */

.games-stage {
    --games-accent: #22746c;
    --games-accent-dark: #154d49;
    --games-accent-soft: #d6e5df;

    padding: 32px;
    border: 1px solid rgba(58, 65, 67, 0.14);
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 94% 5%,
            color-mix(in srgb, var(--games-accent) 22%, transparent),
            transparent 28%
        ),
        linear-gradient(145deg, #f4eee4 0%, var(--games-accent-soft) 100%);
    box-shadow: 0 22px 50px rgba(46, 52, 52, 0.10);
    transition: background 0.3s ease;
}

.games-stage[data-games-theme="slots"] {
    --games-accent: #22746c;
    --games-accent-dark: #154d49;
    --games-accent-soft: #d6e5df;
}

.games-stage[data-games-theme="live"] {
    --games-accent: #815087;
    --games-accent-dark: #56365c;
    --games-accent-soft: #e5d7e5;
}

.games-stage[data-games-theme="tables"] {
    --games-accent: #496d89;
    --games-accent-dark: #324e67;
    --games-accent-soft: #d8e2e9;
}

.games-stage[data-games-theme="instant"] {
    --games-accent: #5b62a2;
    --games-accent-dark: #404779;
    --games-accent-soft: #dedfed;
}

.games-stage[data-games-theme="bingo"] {
    --games-accent: #955d76;
    --games-accent-dark: #653f54;
    --games-accent-soft: #e9dce3;
}

.games-panel[hidden],
.games-subpanel[hidden],
.game-detail[hidden],
.games-guide[hidden] {
    display: none;
}


/* Panel Heading */

.games-panel-heading {
    display: grid;
    grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
    gap: 46px;
    align-items: start;
}

.games-panel-kicker {
    color: var(--games-accent);
}

.games-panel-heading h3 {
    max-width: 600px;
    margin: 0;
    color: #313238;
    font-size: clamp(31px, 3.1vw, 46px);
    font-weight: 900;
    line-height: 1.07;
    letter-spacing: -0.035em;
}

.games-panel-copy p {
    margin: 0;
    color: #5e6265;
    font-size: 15px;
    line-height: 1.72;
}

.games-panel-copy p + p {
    margin-top: 11px;
}

.games-panel-copy .games-panel-lead {
    color: #3d4444;
    font-size: 17px;
    font-weight: 750;
    line-height: 1.62;
}


/* Category Interior */

.games-category-layout {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 17px;
    align-items: start;
    margin-top: 27px;
}


/* Left Sub Navigation */

.games-subnav {
    display: grid;
    gap: 8px;
    padding: 9px;
    border-radius: 18px;
    background: #34273e;
    box-shadow: 0 15px 34px rgba(42, 31, 49, 0.18);
}

.games-subnav-button {
    position: relative;
    min-height: 61px;
    padding: 12px 13px 12px 18px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.055);
    color: #ded3e0;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.25;
    text-align: left;
    cursor: pointer;
    transition:
        transform 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
}

.games-subnav-button::before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    bottom: 11px;
    width: 4px;
    border-radius: 0 4px 4px 0;
    background: transparent;
}

.games-subnav-button:hover,
.games-subnav-button:focus-visible {
    transform: translateX(4px);
    border-color:
        color-mix(in srgb, var(--games-accent) 68%, transparent);
}

.games-subnav-button.is-active {
    background: var(--games-accent);
    border-color: rgba(238, 204, 139, 0.68);
    color: #ffffff;
    box-shadow:
        0 8px 20px
        color-mix(in srgb, var(--games-accent) 35%, transparent);
}

.games-subnav-button.is-active::before {
    background: #efcf8e;
}


/* Right Side */

.games-subpanels {
    min-width: 0;
}

.games-subpanel-head {
    min-height: 61px;
    padding: 10px 2px 14px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 25px;
    border-bottom:
        1px solid
        color-mix(in srgb, var(--games-accent) 22%, transparent);
}

.games-subpanel-head strong {
    color: var(--games-accent-dark);
    font-size: 20px;
    font-weight: 900;
}

.games-subpanel-head span {
    max-width: 650px;
    color: #6b686d;
    font-size: 12px;
    line-height: 1.5;
    text-align: right;
}


/* Exactly Six Games */

.games-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    margin-top: 13px;
}


/* Game Card */

.game-card {
    min-width: 0;
    padding: 0;
    overflow: hidden;
    border:
        1px solid
        color-mix(in srgb, var(--games-accent) 18%, transparent);
    border-radius: 14px;
    background: #f8f3ea;
    color: #34353a;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 8px 21px rgba(44, 50, 50, 0.07);
    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.game-card:hover,
.game-card:focus-visible {
    transform: translateY(-4px);
    border-color:
        color-mix(in srgb, var(--games-accent) 58%, transparent);
    box-shadow: 0 14px 29px rgba(44, 50, 50, 0.13);
}

.game-card.is-active {
    transform: translateY(-5px);
    border-color: var(--games-accent);
    box-shadow:
        0 0 0 3px
        color-mix(in srgb, var(--games-accent) 17%, transparent),
        0 16px 32px rgba(44, 50, 50, 0.15);
}

.game-card img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    background: var(--games-accent-soft);
}

.game-card-copy {
    min-height: 67px;
    padding: 10px 10px 12px;
    display: block;
    border-top: 3px solid var(--games-accent);
}

.game-card-copy strong {
    display: block;
    color: #35343a;
    font-size: 11px;
    line-height: 1.3;
}

.game-card-copy small {
    display: block;
    margin-top: 5px;
    color: var(--games-accent-dark);
    font-size: 8px;
    font-weight: 800;
    line-height: 1.3;
}


/* Game Detail */

.game-details {
    width: 100%;
}

.game-detail {
    margin-top: 14px;
    padding: 25px 28px;
    display: grid;
    grid-template-columns: minmax(210px, 0.34fr) minmax(0, 1.66fr);
    gap: 34px;
    border:
        1px solid
        color-mix(in srgb, var(--games-accent) 28%, transparent);
    border-radius: 17px;
    background:
        linear-gradient(
            135deg,
            color-mix(in srgb, var(--games-accent) 9%, #f7f1e7),
            #f6f0e7
        );
    box-shadow: 0 12px 28px rgba(48, 53, 54, 0.08);
}

.game-detail-title span {
    display: block;
    margin-bottom: 7px;
    color: var(--games-accent);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.game-detail-title h4 {
    margin: 0;
    color: #31343a;
    font-size: 26px;
    font-weight: 900;
    line-height: 1.08;
}

.game-detail-copy p {
    margin: 0;
    color: #5e6266;
    font-size: 15px;
    line-height: 1.75;
}

.game-detail-copy p + p {
    margin-top: 11px;
}


/* Guide */

.games-guide-toggle {
    width: 100%;
    min-height: 58px;
    margin-top: 24px;
    padding: 0 19px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border:
        1px solid
        color-mix(in srgb, var(--games-accent) 38%, transparent);
    border-radius: 14px;
    background:
        color-mix(in srgb, var(--games-accent) 9%, #f5eee4);
    color: var(--games-accent-dark);
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}

.games-guide-toggle span {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--games-accent);
    color: #fffaf2;
    font-size: 20px;
    transition: transform 0.25s ease;
}

.games-guide-toggle.is-open span {
    transform: rotate(45deg);
}

.games-guide {
    margin-top: 10px;
    padding: 25px 27px;
    border:
        1px solid
        color-mix(in srgb, var(--games-accent) 18%, transparent);
    border-radius: 16px;
    background: rgba(248, 243, 235, 0.87);
}

.games-guide h4 {
    margin: 0;
    color: var(--games-accent-dark);
    font-size: 23px;
    font-weight: 900;
}

.games-guide p {
    max-width: 1140px;
    margin: 10px 0 0;
    color: #606267;
    font-size: 15px;
    line-height: 1.76;
}


/* Closing */

.games-closing {
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
    gap: 55px;
    margin-top: 44px;
    padding: 31px 34px;
    border-radius: 20px;
    background:
        linear-gradient(
            135deg,
            #3b2c4d 0%,
            #294e4c 100%
        );
    box-shadow: 0 17px 38px rgba(41, 43, 47, 0.15);
}

.games-closing .games-kicker {
    color: #ebca83;
}

.games-closing h3 {
    max-width: 540px;
    margin: 0;
    color: #f6efe7;
    font-size: clamp(29px, 3vw, 43px);
    font-weight: 900;
    line-height: 1.07;
}

.games-closing > div:last-child p {
    margin: 0;
    color: rgba(242, 240, 233, 0.77);
    font-size: 14px;
    line-height: 1.74;
}

.games-closing > div:last-child p + p {
    margin-top: 11px;
}


/* Tablet */

@media (max-width: 1150px) {

    .games-intro,
    .games-panel-heading {
        grid-template-columns: 1fr;
        gap: 18px;
    }

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

    .games-category-layout {
        grid-template-columns: 190px minmax(0, 1fr);
    }

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

    .games-closing {
        grid-template-columns: 1fr;
        gap: 18px;
    }

}


/* Mobile */

@media (max-width: 760px) {

    .games-section {
        padding: 56px 12px 66px;
    }

    .games-intro h2 {
        font-size: clamp(37px, 10vw, 50px);
    }

    .games-navigation {
        grid-template-columns: 1fr 1fr;
    }

    .games-navigation-button {
        min-height: 84px;
    }

    .games-stage {
        padding: 22px 15px;
        border-radius: 19px;
    }

    .games-category-layout {
        grid-template-columns: 1fr;
    }

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

    .games-subpanel-head {
        display: block;
    }

    .games-subpanel-head span {
        display: block;
        margin-top: 5px;
        text-align: left;
    }

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

    .game-detail {
        grid-template-columns: 1fr;
        gap: 13px;
        padding: 20px 18px;
    }

    .games-guide {
        padding: 21px 18px;
    }

    .games-guide p {
        font-size: 14px;
    }

    .games-closing {
        padding: 25px 20px;
    }

}


/* Small Mobile */

@media (max-width: 500px) {

    .games-navigation {
        grid-template-columns: 1fr;
    }

    .games-subnav {
        grid-template-columns: 1fr;
    }

}

/*=============================================
                  Games End
=============================================*/
/*=============================================
                  Bingo Start
=============================================*/

.bingo-section {
    position: relative;
    padding: 74px 16px 86px;
    overflow: hidden;
    color: #332d3d;

    background:
        radial-gradient(circle at 8% 10%, rgba(84, 132, 124, 0.17), transparent 28%),
        radial-gradient(circle at 92% 82%, rgba(207, 161, 78, 0.16), transparent 30%),
        linear-gradient(145deg, #dfd4df 0%, #e7ddd0 48%, #d5e0dc 100%);
}

.bingo-section::before {
    content: "";
    position: absolute;
    top: -300px;
    right: -220px;
    width: 660px;
    height: 660px;
    border: 1px solid rgba(184, 138, 71, 0.17);
    border-radius: 50%;
    pointer-events: none;
}

.bingo-container {
    position: relative;
    z-index: 1;
    width: min(calc(100% - 8px), 1480px);
    margin: 0 auto;
}


/* Hero */

.bingo-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(430px, 0.96fr);
    gap: 46px;
    align-items: center;
}

.bingo-kicker,
.bingo-panel-kicker {
    margin: 0 0 9px;
    color: #77508e;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.bingo-hero h2 {
    max-width: 760px;
    margin: 0;
    color: #32283b;
    font-size: clamp(44px, 4.6vw, 67px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.045em;
}

.bingo-lead {
    max-width: 790px;
    margin: 22px 0 0;
    color: #433a48;
    font-size: 18px;
    font-weight: 750;
    line-height: 1.65;
}

.bingo-copy {
    max-width: 790px;
    margin: 14px 0 0;
    color: #665f68;
    font-size: 16px;
    line-height: 1.74;
}


/* Hero Numbers */

.bingo-hero-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin-top: 27px;
}

.bingo-hero-stats div {
    min-height: 105px;
    padding: 15px;
    border: 1px solid rgba(73, 112, 103, 0.15);
    border-radius: 15px;
    background: rgba(247, 242, 235, 0.67);
    box-shadow: 0 8px 21px rgba(68, 54, 69, 0.05);
}

.bingo-hero-stats strong {
    display: block;
    color: #277167;
    font-size: 24px;
    font-weight: 900;
    line-height: 1.05;
}

.bingo-hero-stats span {
    display: block;
    margin-top: 8px;
    color: #6b676b;
    font-size: 11px;
    line-height: 1.42;
}


/* Hero Visual */

.bingo-hero-visual {
    position: relative;
    min-height: 470px;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 28px;
}

.bingo-hero-visual::before {
    content: "";
    position: absolute;
    inset: 10% 5%;
    border-radius: 50%;
    background:
        radial-gradient(
            circle at center,
            rgba(209, 164, 85, 0.22),
            rgba(105, 66, 131, 0.12) 55%,
            transparent 74%
        );
    filter: blur(15px);
}

.bingo-hero-visual img {
    position: relative;
    z-index: 1;
    width: 100%;
    max-height: 500px;
    object-fit: cover;
    border-radius: 24px;
    box-shadow: 0 24px 44px rgba(52, 39, 61, 0.18);
}


/* Main Tabs */

.bingo-tabs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-top: 48px;
}

.bingo-tab {
    position: relative;
    min-height: 100px;
    padding: 17px;
    display: flex;
    align-items: center;
    gap: 13px;
    overflow: hidden;
    border: 1px solid rgba(77, 62, 83, 0.17);
    border-radius: 17px;

    background:
        linear-gradient(
            145deg,
            #efe3d1 0%,
            #e7d8c4 100%
        );

    color: #403744;
    text-align: left;
    cursor: pointer;

    box-shadow: 0 9px 24px rgba(57, 47, 62, 0.08);

    transition:
        transform 0.2s ease,
        background 0.25s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.bingo-tab:hover,
.bingo-tab:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(38, 113, 103, 0.39);
    box-shadow: 0 15px 31px rgba(57, 47, 62, 0.12);
}

.bingo-tab.is-active {
    border-color: rgba(231, 194, 121, 0.66);
    background:
        linear-gradient(
            135deg,
            #286f67 0%,
            #1c514c 100%
        );
    color: #ffffff;
    box-shadow: 0 16px 35px rgba(29, 82, 76, 0.23);
}

.bingo-tab::after {
    content: "";
    position: absolute;
    left: 17px;
    right: 17px;
    bottom: 0;
    height: 4px;
    border-radius: 4px 4px 0 0;
    background: transparent;
}

.bingo-tab.is-active::after {
    background: #ebca86;
}

.bingo-tab-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    flex-shrink: 0;
    border-radius: 13px;
    background: #dfc9a9;
    color: #704b21;
    font-size: 17px;
    font-weight: 900;
}

.bingo-tab.is-active .bingo-tab-icon {
    background: rgba(255, 255, 255, 0.10);
    color: #f1d493;
}

.bingo-tab strong {
    display: block;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.25;
}

.bingo-tab small {
    display: block;
    margin-top: 5px;
    color: #746b67;
    font-size: 10px;
    line-height: 1.4;
}

.bingo-tab.is-active small {
    color: rgba(255, 255, 255, 0.71);
}


/* Panels */

.bingo-panels {
    margin-top: 13px;
}

.bingo-panel {
    padding: 36px 39px;
    border: 1px solid rgba(63, 88, 83, 0.13);
    border-radius: 23px;
    background:
        linear-gradient(
            145deg,
            rgba(248, 244, 236, 0.96),
            rgba(233, 241, 236, 0.94)
        );
    box-shadow: 0 20px 48px rgba(52, 59, 57, 0.09);
}

.bingo-panel[hidden] {
    display: none;
}

.bingo-panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 30px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(59, 91, 84, 0.11);
}

.bingo-panel-heading h3 {
    max-width: 890px;
    margin: 0;
    color: #2d3937;
    font-size: clamp(34px, 3.25vw, 49px);
    font-weight: 900;
    line-height: 1.06;
    letter-spacing: -0.035em;
}

.bingo-panel-stat {
    min-width: 150px;
    padding: 19px 18px;
    flex-shrink: 0;
    border: 1px solid rgba(226, 190, 115, 0.54);
    border-radius: 16px;
    background:
        linear-gradient(
            145deg,
            #26685f 0%,
            #194b46 100%
        );
    text-align: center;
    box-shadow: 0 12px 27px rgba(26, 76, 69, 0.19);
}

.bingo-panel-stat-gold {
    background:
        linear-gradient(
            145deg,
            #9b7131 0%,
            #704e20 100%
        );
}

.bingo-panel-stat-purple {
    background:
        linear-gradient(
            145deg,
            #725081 0%,
            #50375c 100%
        );
}

.bingo-panel-stat strong {
    display: block;
    color: #f1d08b;
    font-size: 36px;
    font-weight: 900;
    line-height: 1;
}

.bingo-panel-stat span {
    display: block;
    margin-top: 7px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.bingo-panel-lead {
    max-width: 1080px;
    margin: 23px 0 0;
    color: #3d4c49;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.67;
}


/* Formats */

.bingo-format-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 27px;
}

.bingo-format-card {
    min-height: 280px;
    padding: 23px;
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 18px;
    border: 1px solid rgba(39, 112, 101, 0.14);
    border-radius: 18px;
    background: #edf2ec;
}

.bingo-format-number {
    width: 68px;
    height: 68px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #286f67;
    color: #f2d390;
    font-size: 25px;
    font-weight: 900;
}

.bingo-format-card h4 {
    margin: 3px 0 0;
    color: #294c47;
    font-size: 21px;
}

.bingo-format-card p {
    margin: 10px 0 0;
    color: #65706d;
    font-size: 14px;
    line-height: 1.68;
}

.bingo-comparison {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    margin-top: 18px;
}

.bingo-comparison div {
    padding: 17px;
    border-radius: 14px;
    background: #e7ded2;
}

.bingo-comparison span {
    color: #825f2b;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bingo-comparison strong {
    display: block;
    margin-top: 6px;
    color: #3f443f;
    font-size: 15px;
}

.bingo-comparison p {
    margin: 6px 0 0;
    color: #6a6865;
    font-size: 12px;
    line-height: 1.55;
}


/* Welcome & Free */

.bingo-offer-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 34px;
    margin-top: 27px;
}

.bingo-offer-main {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.bingo-offer-main section {
    padding: 22px;
    border-radius: 17px;
    border: 1px solid rgba(74, 87, 81, 0.12);
    background: #f0ebe2;
}

.bingo-offer-label {
    color: #79508f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.bingo-offer-main h4 {
    margin: 7px 0 0;
    color: #3b3e3c;
    font-size: 22px;
}

.bingo-offer-main p {
    margin: 10px 0 0;
    color: #66686a;
    font-size: 14px;
    line-height: 1.7;
}

.bingo-offer-facts,
.bingo-room-points {
    overflow: hidden;
    align-self: start;
    border: 1px solid rgba(41, 102, 93, 0.14);
    border-radius: 16px;
    background: #e2ece7;
}

.bingo-offer-facts div,
.bingo-room-points div {
    padding: 15px 17px;
}

.bingo-offer-facts div + div,
.bingo-room-points div + div {
    border-top: 1px solid rgba(41, 102, 93, 0.10);
}

.bingo-offer-facts span,
.bingo-room-points span {
    display: block;
    color: #697c77;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bingo-offer-facts strong,
.bingo-room-points strong {
    display: block;
    margin-top: 4px;
    color: #285049;
    font-size: 14px;
}


/* Free & Fab */

.free-fab-feature {
    margin-top: 22px;
    padding: 25px;
    border-radius: 19px;
    background:
        linear-gradient(
            135deg,
            #49325b 0%,
            #2c5c57 100%
        );
    color: #ffffff;
}

.free-fab-heading {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    align-items: flex-start;
}

.free-fab-heading .bingo-panel-kicker {
    color: #e9c67e;
}

.free-fab-heading h4 {
    max-width: 750px;
    margin: 0;
    color: #ffffff;
    font-size: 28px;
    line-height: 1.12;
}

.free-fab-number {
    color: #f0cf8b;
    font-size: 42px;
    line-height: 1;
    text-align: center;
}

.free-fab-number small {
    display: block;
    margin-top: 5px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.free-fab-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
    margin-top: 21px;
}

.free-fab-grid div {
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.06);
}

.free-fab-grid strong {
    display: block;
    color: #f0cf8b;
    font-size: 20px;
}

.free-fab-grid span {
    display: block;
    margin-top: 6px;
    color: rgba(255, 255, 255, 0.73);
    font-size: 11px;
    line-height: 1.5;
}


/* Jackpots */

.bingo-jackpot-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 27px;
}

.bingo-jackpot-grid article {
    min-height: 245px;
    padding: 22px;
    border: 1px solid rgba(136, 98, 39, 0.15);
    border-radius: 17px;
    background:
        linear-gradient(
            145deg,
            #efe3cd,
            #e6d5b9
        );
}

.bingo-jackpot-icon {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #9a7133;
    color: #ffffff;
    font-size: 18px;
    font-weight: 900;
}

.bingo-jackpot-grid h4 {
    margin: 15px 0 0;
    color: #57401d;
    font-size: 20px;
}

.bingo-jackpot-grid p {
    margin: 9px 0 0;
    color: #706558;
    font-size: 14px;
    line-height: 1.68;
}

.bingo-jackpot-rules {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    margin-top: 18px;
}

.bingo-jackpot-rules div {
    padding: 17px;
    border-radius: 14px;
    background: #e1ebe6;
}

.bingo-jackpot-rules span {
    display: block;
    color: #277168;
    font-size: 11px;
    font-weight: 900;
}

.bingo-jackpot-rules strong {
    display: block;
    margin-top: 5px;
    color: #44504d;
    font-size: 13px;
    line-height: 1.5;
}

.bingo-information-note {
    margin-top: 19px;
    padding: 18px 20px;
    border-left: 4px solid #b8873d;
    background: #eee3d1;
}

.bingo-information-note strong {
    color: #5b4422;
}

.bingo-information-note p {
    margin: 7px 0 0;
    color: #6d6459;
    font-size: 13px;
    line-height: 1.62;
}


/* Events */

.bingo-event-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px;
    margin-top: 27px;
}

.bingo-event-card {
    padding: 25px;
    border-radius: 19px;
    color: #ffffff;
}

.bingo-event-live {
    background:
        linear-gradient(
            145deg,
            #6d4879 0%,
            #483052 100%
        );
}

.bingo-event-session {
    background:
        linear-gradient(
            145deg,
            #267067 0%,
            #194d48 100%
        );
}

.bingo-event-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.bingo-event-top span {
    color: rgba(255, 255, 255, 0.70);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bingo-event-top strong {
    color: #efcf8b;
    font-size: 28px;
}

.bingo-event-card h4 {
    margin: 13px 0 0;
    font-size: 27px;
}

.bingo-event-card p {
    margin: 11px 0 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 14px;
    line-height: 1.7;
}

.bingo-event-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 18px;
}

.bingo-event-facts span {
    padding: 8px 10px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    font-size: 10px;
}

.bingo-live-comparison {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 18px;
}

.bingo-live-comparison div {
    padding: 18px;
    border-radius: 15px;
    background: #ece6de;
}

.bingo-live-comparison span {
    color: #7b568e;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bingo-live-comparison strong {
    display: block;
    margin-top: 5px;
    color: #3f4441;
    font-size: 15px;
}

.bingo-live-comparison p {
    margin: 6px 0 0;
    color: #69696a;
    font-size: 12px;
    line-height: 1.55;
}


/* Rooms */

.bingo-room-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 35px;
    margin-top: 27px;
}

.bingo-room-copy h4 {
    margin: 0;
    color: #2d554e;
    font-size: 21px;
}

.bingo-room-copy h4:not(:first-child) {
    margin-top: 21px;
}

.bingo-room-copy p {
    margin: 8px 0 0;
    color: #636966;
    font-size: 15px;
    line-height: 1.72;
}

.bingo-room-types {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 22px;
}

.bingo-room-types article {
    padding: 19px;
    border-radius: 15px;
    background: #eee4d5;
    border: 1px solid rgba(140, 100, 45, 0.13);
}

.bingo-room-types span {
    color: #8a622b;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.11em;
}

.bingo-room-types h4 {
    margin: 7px 0 0;
    color: #43423f;
    font-size: 17px;
}

.bingo-room-types p {
    margin: 6px 0 0;
    color: #6b6762;
    font-size: 12px;
    line-height: 1.55;
}


/* Closing */

.bingo-closing {
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
    gap: 55px;
    margin-top: 46px;
    padding: 32px 34px;
    border-radius: 20px;
    background:
        linear-gradient(
            135deg,
            #3e2f50 0%,
            #28534e 100%
        );
    box-shadow: 0 17px 40px rgba(44, 43, 48, 0.15);
}

.bingo-closing .bingo-kicker {
    color: #eac77e;
}

.bingo-closing h3 {
    max-width: 530px;
    margin: 0;
    color: #f7efe7;
    font-size: clamp(29px, 3vw, 43px);
    line-height: 1.07;
}

.bingo-closing > div:last-child p {
    margin: 0;
    color: rgba(243, 241, 234, 0.76);
    font-size: 14px;
    line-height: 1.74;
}

.bingo-closing > div:last-child p + p {
    margin-top: 11px;
}


/* Tablet */

@media (max-width: 1080px) {

    .bingo-hero {
        grid-template-columns: 1fr;
    }

    .bingo-hero-visual {
        min-height: 380px;
    }

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

    .bingo-format-grid,
    .bingo-comparison,
    .bingo-jackpot-grid,
    .bingo-jackpot-rules {
        grid-template-columns: 1fr;
    }

    .bingo-offer-layout,
    .bingo-room-layout {
        grid-template-columns: 1fr;
    }

    .bingo-offer-facts,
    .bingo-room-points {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .free-fab-grid,
    .bingo-room-types {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}


/* Mobile */

@media (max-width: 720px) {

    .bingo-section {
        padding: 56px 12px 68px;
    }

    .bingo-hero h2 {
        font-size: clamp(38px, 10vw, 51px);
    }

    .bingo-lead {
        font-size: 16px;
    }

    .bingo-copy {
        font-size: 14px;
    }

    .bingo-hero-stats {
        grid-template-columns: 1fr 1fr;
    }

    .bingo-tabs {
        grid-template-columns: 1fr;
    }

    .bingo-panel {
        padding: 24px 19px;
    }

    .bingo-panel-heading {
        display: grid;
        grid-template-columns: 1fr;
    }

    .bingo-panel-stat {
        width: 100%;
        min-width: 0;
    }

    .bingo-offer-main,
    .bingo-event-grid,
    .bingo-live-comparison,
    .bingo-closing {
        grid-template-columns: 1fr;
    }

    .bingo-offer-facts,
    .bingo-room-points,
    .free-fab-grid,
    .bingo-room-types {
        grid-template-columns: 1fr;
    }

    .free-fab-heading {
        display: grid;
        grid-template-columns: 1fr;
    }

    .bingo-format-card {
        grid-template-columns: 1fr;
    }

}

/*=============================================
                   Bingo End
=============================================*/

/*=============================================
                 Payments Start
=============================================*/

.payments-section {
    position: relative;
    padding: 76px 14px 88px;
    overflow: hidden;
    color: #322f39;

    background:
        radial-gradient(
            circle at 91% 8%,
            rgba(70, 111, 126, 0.15),
            transparent 28%
        ),
        radial-gradient(
            circle at 7% 87%,
            rgba(190, 142, 72, 0.15),
            transparent 29%
        ),
        linear-gradient(
            145deg,
            #d5ddd9 0%,
            #e7e0d7 48%,
            #d8d1dc 100%
        );
}


.payments-section::before {
    content: "";

    position: absolute;

    top: -300px;
    right: -250px;

    width: 670px;
    height: 670px;

    border:
        1px solid
        rgba(169, 125, 67, 0.16);

    border-radius: 50%;

    pointer-events: none;
}


.payments-container {
    position: relative;

    z-index: 1;

    width:
        min(
            calc(100% - 8px),
            1480px
        );

    margin:
        0 auto;
}


/* Payments Introduction */

.payments-intro {
    display: grid;

    grid-template-columns:
        minmax(400px, 0.84fr)
        minmax(0, 1.16fr);

    gap: 56px;

    align-items: end;
}


.payments-kicker,
.payments-panel-kicker {
    margin:
        0 0 9px;

    color:
        #78528f;

    font-size:
        11px;

    font-weight:
        900;

    letter-spacing:
        0.16em;

    text-transform:
        uppercase;
}


.payments-intro h2 {
    max-width:
        690px;

    margin:
        0;

    color:
        #30263a;

    font-size:
        clamp(
            43px,
            4.5vw,
            66px
        );

    font-weight:
        900;

    line-height:
        1;

    letter-spacing:
        -0.045em;
}


.payments-intro-copy p {
    margin:
        0;

    color:
        #626067;

    font-size:
        16px;

    line-height:
        1.74;
}


.payments-intro-copy p + p {
    margin-top:
        12px;
}


.payments-intro-copy .payments-lead {
    color:
        #403b46;

    font-size:
        18px;

    font-weight:
        750;

    line-height:
        1.64;
}


/* Highlights */

.payments-highlights {
    display: grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        10px;

    margin-top:
        32px;
}


.payments-highlights > div {
    min-height:
        96px;

    padding:
        16px;

    display:
        flex;

    align-items:
        center;

    gap:
        13px;

    border:
        1px solid
        rgba(48, 104, 95, 0.14);

    border-radius:
        15px;

    background:
        rgba(246, 243, 236, 0.68);

    box-shadow:
        0 8px 22px
        rgba(54, 52, 57, 0.05);
}


.payments-highlight-icon {
    width:
        42px;

    height:
        42px;

    display:
        grid;

    place-items:
        center;

    flex-shrink:
        0;

    border-radius:
        12px;

    background:
        #286d65;

    color:
        #f1d18d;

    font-size:
        15px;

    font-weight:
        900;
}


.payments-highlights strong {
    display:
        block;

    color:
        #294a46;

    font-size:
        18px;

    font-weight:
        900;

    line-height:
        1.15;
}


.payments-highlights div div span {
    display:
        block;

    margin-top:
        5px;

    color:
        #68716e;

    font-size:
        11px;

    line-height:
        1.4;
}


/* Main Tabs */

.payments-tabs {
    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap:
        10px;

    margin-top:
        35px;

    padding:
        7px;

    border:
        1px solid
        rgba(78, 62, 86, 0.15);

    border-radius:
        18px;

    background:
        #352841;

    box-shadow:
        0 13px 32px
        rgba(43, 32, 49, 0.14);
}


.payments-tab {
    position:
        relative;

    min-height:
        82px;

    padding:
        14px 18px;

    display:
        flex;

    align-items:
        center;

    gap:
        14px;

    border:
        1px solid
        rgba(255, 255, 255, 0.07);

    border-radius:
        13px;

    background:
        rgba(255, 255, 255, 0.045);

    color:
        #ddd4e1;

    text-align:
        left;

    cursor:
        pointer;

    transition:
        transform 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
}


.payments-tab:hover,
.payments-tab:focus-visible {
    transform:
        translateY(-2px);

    border-color:
        rgba(232, 198, 130, 0.35);
}


.payments-tab.is-active {
    border-color:
        rgba(234, 201, 133, 0.64);

    background:
        linear-gradient(
            135deg,
            #287169 0%,
            #1b504b 100%
        );

    color:
        #ffffff;

    box-shadow:
        0 11px 25px
        rgba(24, 78, 72, 0.26);
}


.payments-tab-icon {
    width:
        42px;

    height:
        42px;

    display:
        grid;

    place-items:
        center;

    flex-shrink:
        0;

    border-radius:
        12px;

    background:
        rgba(255, 255, 255, 0.08);

    color:
        #e8c984;

    font-size:
        20px;

    font-weight:
        900;
}


.payments-tab strong {
    display:
        block;

    font-size:
        15px;

    font-weight:
        900;
}


.payments-tab small {
    display:
        block;

    margin-top:
        4px;

    color:
        rgba(255, 255, 255, 0.60);

    font-size:
        10px;

    line-height:
        1.4;
}


/* Payment Panel */

.payments-panel {
    margin-top:
        13px;

    padding:
        35px;

    border:
        1px solid
        rgba(56, 91, 84, 0.13);

    border-radius:
        22px;

    background:
        linear-gradient(
            145deg,
            rgba(248, 244, 236, 0.96),
            rgba(231, 239, 234, 0.94)
        );

    box-shadow:
        0 20px 48px
        rgba(47, 57, 54, 0.08);
}


.payments-panel[hidden] {
    display:
        none;
}


.payments-panel-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(320px, 1.1fr);

    gap:
        48px;

    align-items:
        end;

    margin-bottom:
        26px;
}


.payments-panel-heading h3 {
    max-width:
        670px;

    margin:
        0;

    color:
        #293e3a;

    font-size:
        clamp(
            31px,
            3.15vw,
            46px
        );

    font-weight:
        900;

    line-height:
        1.06;

    letter-spacing:
        -0.035em;
}


.payments-panel-heading > p {
    margin:
        0;

    color:
        #626a67;

    font-size:
        14px;

    line-height:
        1.72;
}


/* Payment Grid */

.payment-methods-grid {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap:
        12px;

    align-items:
        start;
}


.payment-method-card {
    width:
        100%;

    padding:
        21px;

    align-self:
        start;

    border:
        1px solid
        rgba(52, 102, 94, 0.15);

    border-radius:
        17px;

    background:
        #f2ede5;

    box-shadow:
        0 9px 25px
        rgba(48, 55, 53, 0.06);

    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}


.payment-method-card:hover {
    transform:
        translateY(-3px);

    border-color:
        rgba(43, 111, 101, 0.33);

    box-shadow:
        0 15px 31px
        rgba(48, 55, 53, 0.11);
}


.payment-method-card.is-open {
    border-color:
        #307269;

    background:
        #f4f0e8;

    box-shadow:
        0 0 0 3px
        rgba(48, 114, 105, 0.09),
        0 17px 33px
        rgba(48, 55, 53, 0.11);
}


/* Method Brand */

.payment-method-brand {
    display:
        flex;

    align-items:
        center;

    gap:
        13px;
}


.payment-method-logo {
    width:
        76px;

    height:
        48px;

    padding:
        7px 9px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    flex-shrink:
        0;

    overflow:
        hidden;

    border:
        1px solid
        rgba(70, 91, 85, 0.11);

    border-radius:
        11px;

    background:
        #ffffff;
}


.payment-method-logo-wide {
    width:
        104px;
}


.payment-method-logo img {
    display:
        block;

    width:
        100%;

    height:
        100%;

    object-fit:
        contain;

    object-position:
        center;
}


.payment-method-brand h4 {
    margin:
        0;

    color:
        #303b38;

    font-size:
        20px;

    font-weight:
        900;

    line-height:
        1.15;
}


.payment-method-brand > div:last-child > span {
    display:
        block;

    margin-top:
        4px;

    color:
        #77807d;

    font-size:
        10px;

    font-weight:
        750;
}


/* Method Meta */

.payment-method-meta {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap:
        6px;

    margin-top:
        17px;
}


.payment-method-meta > span {
    min-width:
        0;

    padding:
        9px;

    border-radius:
        10px;

    background:
        #dde9e4;
}


.payment-method-meta small {
    display:
        block;

    color:
        #6c7e78;

    font-size:
        8px;

    font-weight:
        900;

    letter-spacing:
        0.07em;

    text-transform:
        uppercase;
}


.payment-method-meta strong {
    display:
        block;

    margin-top:
        4px;

    color:
        #285049;

    font-size:
        11px;

    line-height:
        1.3;
}


.payment-method-card > p {
    margin:
        16px 0 0;

    color:
        #666763;

    font-size:
        13px;

    line-height:
        1.68;
}


/* Method Toggle */

.payment-method-toggle {
    width:
        100%;

    min-height:
        45px;

    margin-top:
        17px;

    padding:
        0;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        15px;

    border:
        0;

    border-top:
        1px solid
        rgba(50, 98, 90, 0.12);

    background:
        transparent;

    color:
        #286c64;

    font-size:
        11px;

    font-weight:
        900;

    text-align:
        left;

    cursor:
        pointer;
}


.payment-method-toggle span {
    width:
        28px;

    height:
        28px;

    display:
        grid;

    place-items:
        center;

    flex-shrink:
        0;

    border-radius:
        50%;

    background:
        #286d65;

    color:
        #ffffff;

    font-size:
        18px;

    transition:
        transform 0.22s ease;
}


.payment-method-toggle.is-open span {
    transform:
        rotate(45deg);
}


.payment-method-details {
    padding-top:
        2px;
}


.payment-method-details[hidden] {
    display:
        none;
}


.payment-method-details p {
    margin:
        9px 0 0;

    color:
        #686b68;

    font-size:
        12px;

    line-height:
        1.68;
}


/* Withdrawal */

.withdrawal-intro {
    margin-bottom:
        20px;

    padding:
        17px 20px;

    border-left:
        4px solid
        #b88b44;

    background:
        #ede2d2;
}


.withdrawal-intro strong {
    color:
        #57452d;
}


.withdrawal-intro p {
    margin:
        6px 0 0;

    color:
        #6d665d;

    font-size:
        13px;

    line-height:
        1.63;
}


.payment-methods-grid-withdrawals {
    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );
}


.payment-method-card-wide {
    grid-column:
        1 / -1;

    width:
        calc(50% - 6px);

    justify-self:
        center;
}


.withdrawal-speed-note {
    margin-top:
        21px;

    padding:
        22px 24px;

    display:
        grid;

    grid-template-columns:
        190px minmax(0, 1fr);

    gap:
        27px;

    align-items:
        center;

    border-radius:
        17px;

    background:
        linear-gradient(
            135deg,
            #31263e,
            #28544f
        );

    color:
        #ffffff;
}


.withdrawal-speed-note > div {
    text-align:
        center;
}


.withdrawal-speed-note strong {
    display:
        block;

    color:
        #f0cf8b;

    font-size:
        40px;

    line-height:
        1;
}


.withdrawal-speed-note span {
    display:
        block;

    margin-top:
        6px;

    color:
        rgba(255, 255, 255, 0.67);

    font-size:
        10px;

    line-height:
        1.4;
}


.withdrawal-speed-note p {
    margin:
        0;

    color:
        rgba(255, 255, 255, 0.75);

    font-size:
        13px;

    line-height:
        1.68;
}


/* Payment Safety */

.payment-safety {
    margin-top:
        48px;
}


.payment-safety-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 0.88fr)
        minmax(0, 1.12fr);

    gap:
        50px;

    align-items:
        end;

    margin-bottom:
        22px;
}


.payment-safety-heading h3 {
    max-width:
        650px;

    margin:
        0;

    color:
        #302a38;

    font-size:
        clamp(
            30px,
            3.1vw,
            44px
        );

    font-weight:
        900;

    line-height:
        1.07;
}


.payment-safety-heading > p {
    margin:
        0;

    color:
        #646168;

    font-size:
        14px;

    line-height:
        1.7;
}


.payment-safety-grid {
    display: grid;

    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap:
        10px;
}


.payment-safety-grid article {
    min-height:
        190px;

    padding:
        20px;

    border:
        1px solid
        rgba(80, 63, 89, 0.12);

    border-radius:
        16px;

    background:
        rgba(244, 238, 230, 0.74);
}


.payment-safety-icon {
    width:
        39px;

    height:
        39px;

    display:
        grid;

    place-items:
        center;

    border-radius:
        11px;

    background:
        #725085;

    color:
        #f1d28f;

    font-size:
        15px;

    font-weight:
        900;
}


.payment-safety-grid h4 {
    margin:
        14px 0 0;

    color:
        #3e3942;

    font-size:
        17px;
}


.payment-safety-grid p {
    margin:
        8px 0 0;

    color:
        #69666a;

    font-size:
        12px;

    line-height:
        1.64;
}


/* Payments More */

.payments-more {
    margin-top:
        34px;
}


.payments-more-toggle {
    width:
        100%;

    min-height:
        61px;

    padding:
        0 21px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        20px;

    border:
        1px solid
        rgba(107, 73, 126, 0.22);

    border-radius:
        15px;

    background:
        #3b2d49;

    color:
        #f0d08d;

    font-size:
        13px;

    font-weight:
        900;

    cursor:
        pointer;
}


.payments-more-toggle span {
    width:
        32px;

    height:
        32px;

    display:
        grid;

    place-items:
        center;

    flex-shrink:
        0;

    border-radius:
        50%;

    background:
        #d3aa61;

    color:
        #36293f;

    font-size:
        20px;

    transition:
        transform 0.25s ease;
}


.payments-more-toggle.is-open span {
    transform:
        rotate(45deg);
}


.payments-more-content {
    margin-top:
        10px;

    padding:
        27px;

    border:
        1px solid
        rgba(71, 92, 86, 0.12);

    border-radius:
        17px;

    background:
        rgba(244, 240, 233, 0.79);
}


.payments-more-content[hidden] {
    display:
        none;
}


.payments-more-grid {
    display: grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap:
        22px;
}


.payments-more-grid h3 {
    margin:
        0;

    color:
        #34514c;

    font-size:
        18px;

    line-height:
        1.2;
}


.payments-more-grid p {
    margin:
        8px 0 0;

    color:
        #696967;

    font-size:
        12px;

    line-height:
        1.68;
}


/* Closing */

.payments-closing {
    display: grid;

    grid-template-columns:
        minmax(0, 0.78fr)
        minmax(0, 1.22fr);

    gap:
        55px;

    margin-top:
        45px;

    padding:
        31px 34px;

    border-radius:
        20px;

    background:
        linear-gradient(
            135deg,
            #342744 0%,
            #24524d 100%
        );

    box-shadow:
        0 17px 39px
        rgba(42, 41, 46, 0.15);
}


.payments-closing .payments-kicker {
    color:
        #ebc980;
}


.payments-closing h3 {
    max-width:
        520px;

    margin:
        0;

    color:
        #f6eee6;

    font-size:
        clamp(
            29px,
            3vw,
            43px
        );

    font-weight:
        900;

    line-height:
        1.07;
}


.payments-closing > div:last-child p {
    margin:
        0;

    color:
        rgba(242, 240, 233, 0.76);

    font-size:
        14px;

    line-height:
        1.74;
}


.payments-closing > div:last-child p + p {
    margin-top:
        11px;
}


/* Tablet */

@media (max-width: 1050px) {

    .payments-intro,
    .payments-panel-heading,
    .payment-safety-heading {
        grid-template-columns:
            1fr;

        gap:
            18px;
    }


    .payments-highlights {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }


    .payment-methods-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }


    .payment-method-card-wide {
        width:
            calc(50% - 6px);
    }


    .payment-safety-grid,
    .payments-more-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

}


/* Mobile */

@media (max-width: 700px) {

    .payments-section {
        padding:
            56px 12px 68px;
    }


    .payments-intro h2 {
        font-size:
            clamp(
                38px,
                10vw,
                50px
            );
    }


    .payments-intro-copy .payments-lead {
        font-size:
            16px;
    }


    .payments-intro-copy p {
        font-size:
            14px;
    }


    .payments-highlights,
    .payments-tabs,
    .payment-methods-grid,
    .payment-methods-grid-withdrawals,
    .payment-safety-grid,
    .payments-more-grid {
        grid-template-columns:
            1fr;
    }


    .payments-panel {
        padding:
            23px 18px;
    }


    .payment-method-card-wide {
        grid-column:
            auto;

        width:
            100%;
    }


    .payment-method-meta {
        grid-template-columns:
            1fr;
    }


    .withdrawal-speed-note {
        grid-template-columns:
            1fr;

        gap:
            15px;
    }


    .payments-closing {
        grid-template-columns:
            1fr;

        gap:
            18px;

        padding:
            25px 20px;
    }

}

/*=============================================
                  Payments End
=============================================*/





/*=============================================
                 FAQ Start
=============================================*/

.faq-section {
    position: relative;

    padding:
        78px 20px 86px;

    overflow: hidden;

    color:
        #27363c;

    background:
        radial-gradient(
            circle at 90% 8%,
            rgba(175, 145, 98, 0.13),
            transparent 28%
        ),
        radial-gradient(
            circle at 7% 92%,
            rgba(105, 132, 143, 0.12),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #e3e1da 0%,
            #d3d9d8 50%,
            #e8e4dc 100%
        );
}


.faq-container {
    width:
        min(
            100%,
            1240px
        );

    margin:
        0 auto;
}


/* FAQ Introduction */

.faq-intro {
    display: grid;

    grid-template-columns:
        minmax(0, 0.88fr)
        minmax(0, 1.12fr);

    gap:
        60px;

    align-items:
        start;

    margin-bottom:
        36px;
}


.faq-kicker {
    display:
        block;

    margin:
        0 0 9px;

    color:
        #8c692f;

    font-size:
        10px;

    font-weight:
        900;

    letter-spacing:
        0.18em;

    text-transform:
        uppercase;
}


.faq-intro h2 {
    max-width:
        600px;

    margin:
        0;

    color:
        #28373d;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(
            40px,
            4.5vw,
            62px
        );

    line-height:
        0.99;

    letter-spacing:
        -0.04em;
}


.faq-intro-copy p {
    margin:
        0;

    color:
        #58696f;

    font-size:
        13px;

    line-height:
        1.72;
}


.faq-intro-copy p + p {
    margin-top:
        11px;
}


.faq-intro-copy .faq-lead {
    color:
        #34474e;

    font-size:
        15px;

    font-weight:
        700;

    line-height:
        1.65;
}


/* FAQ Grid */

.faq-grid {
    display:
        grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap:
        14px;

    align-items:
        start;
}


.faq-column {
    display:
        flex;

    flex-direction:
        column;

    gap:
        12px;

    min-width:
        0;
}


/* FAQ Item */

.faq-item {
    width:
        100%;

    align-self:
        flex-start;

    overflow:
        hidden;

    border:
        1px solid
        rgba(65, 81, 87, 0.13);

    border-radius:
        15px;

    background:
        rgba(245, 246, 242, 0.77);

    box-shadow:
        0 8px 24px
        rgba(49, 64, 69, 0.05);

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}


.faq-item.is-open {
    border-color:
        rgba(145, 108, 52, 0.31);

    background:
        rgba(249, 248, 244, 0.96);

    box-shadow:
        0 13px 30px
        rgba(49, 64, 69, 0.08);
}


/* FAQ Toggle */

.faq-toggle {
    width:
        100%;

    min-height:
        104px;

    padding:
        18px 20px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        20px;

    border:
        0;

    background:
        transparent;

    color:
        #2c3c42;

    text-align:
        left;

    cursor:
        pointer;
}


.faq-toggle > span {
    display:
        block;

    min-width:
        0;
}


.faq-toggle small {
    display:
        block;

    margin-bottom:
        6px;

    color:
        #8d692f;

    font-size:
        9px;

    font-weight:
        900;

    letter-spacing:
        0.13em;

    text-transform:
        uppercase;
}


.faq-toggle strong {
    display:
        block;

    color:
        #2b3a40;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        17px;

    line-height:
        1.28;
}


.faq-toggle i {
    width:
        32px;

    height:
        32px;

    display:
        grid;

    place-items:
        center;

    flex-shrink:
        0;

    border-radius:
        50%;

    background:
        #34525b;

    color:
        #ffffff;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size:
        19px;

    font-style:
        normal;

    transition:
        transform 0.22s ease,
        background 0.22s ease;
}


.faq-toggle[aria-expanded="true"] i {
    transform:
        rotate(45deg);

    background:
        #96702f;
}


/* FAQ Panel */

.faq-panel {
    width:
        100%;
}


.faq-panel[hidden] {
    display:
        none !important;
}


.faq-answer {
    padding:
        0 20px 21px;
}


.faq-answer::before {
    content:
        "";

    display:
        block;

    height:
        1px;

    margin-bottom:
        15px;

    background:
        rgba(66, 82, 88, 0.10);
}


.faq-answer p {
    margin:
        0;

    color:
        #5b6b71;

    font-size:
        12px;

    line-height:
        1.75;
}


.faq-answer p + p {
    margin-top:
        11px;
}


/* FAQ Closing */

.faq-closing {
    display:
        grid;

    grid-template-columns:
        minmax(0, 0.78fr)
        minmax(0, 1.22fr);

    gap:
        58px;

    margin-top:
        44px;

    padding-top:
        32px;

    border-top:
        1px solid
        rgba(62, 77, 83, 0.13);
}


.faq-closing h3 {
    max-width:
        520px;

    margin:
        0;

    color:
        #2b3a40;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(
            29px,
            3.1vw,
            43px
        );

    line-height:
        1.04;
}


.faq-closing > p {
    margin:
        0;

    color:
        #596a70;

    font-size:
        12px;

    line-height:
        1.76;
}


/* FAQ Tablet */

@media (max-width: 950px) {

    .faq-intro {
        grid-template-columns:
            1fr;

        gap:
            19px;
    }


    .faq-grid {
        grid-template-columns:
            1fr;
    }


    .faq-closing {
        grid-template-columns:
            1fr;

        gap:
            18px;
    }

}


/* FAQ Mobile */

@media (max-width: 700px) {

    .faq-section {
        padding:
            60px 14px 68px;
    }


    .faq-intro h2 {
        font-size:
            clamp(
                37px,
                10vw,
                49px
            );
    }


    .faq-toggle {
        min-height:
            92px;

        padding:
            16px;
    }


    .faq-toggle strong {
        font-size:
            16px;
    }


    .faq-answer {
        padding:
            0 16px 18px;
    }

}

/*=============================================
                  FAQ End
=============================================*/
/*=============================================
                    Footer Start
=============================================*/

.site-footer {
    position: relative;

    padding:
        56px 20px 25px;

    overflow: hidden;

    color:
        #dce8e5;

    background:
        radial-gradient(
            circle at 8% 0%,
            rgba(191, 144, 67, 0.10),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 100%,
            rgba(117, 69, 153, 0.08),
            transparent 28%
        ),
        linear-gradient(
            145deg,
            #18363a 0%,
            #102b2f 52%,
            #0b2327 100%
        );

    border-top:
        1px solid
        rgba(220, 181, 110, 0.22);
}


.site-footer::before {
    content: "";

    position: absolute;

    top: 0;
    left: 50%;

    width:
        min(
            100%,
            1240px
        );

    height: 1px;

    transform:
        translateX(-50%);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(225, 188, 115, 0.40),
            transparent
        );

    pointer-events: none;
}


.footer-container {
    position: relative;

    z-index: 1;

    width:
        min(
            100%,
            1240px
        );

    margin:
        0 auto;
}


/* Footer Main */

.footer-main {
    display: grid;

    grid-template-columns:
        minmax(320px, 1.45fr)
        minmax(150px, 0.55fr)
        minmax(170px, 0.62fr)
        minmax(180px, 0.68fr);

    gap:
        42px;

    align-items:
        start;
}


/* Footer Brand */

.footer-brand {
    max-width:
        440px;
}


.footer-logo {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        11px;
}


.footer-logo-mark {
    min-width:
        52px;

    height:
        42px;

    padding:
        0 9px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid
        rgba(239, 211, 161, 0.72);

    border-radius:
        11px;

    background:
        linear-gradient(
            135deg,
            var(--accent-light) 0%,
            var(--accent-main) 55%,
            var(--accent-dark) 100%
        );

    color:
        #ffffff;

    font-size:
        16px;

    font-weight:
        900;

    line-height:
        1;

    letter-spacing:
        0.06em;

    box-shadow:
        0 8px 20px
        rgba(63, 30, 91, 0.30);
}


.footer-logo-text {
    display:
        flex;

    flex-direction:
        column;

    line-height:
        1;
}


.footer-logo-text strong {
    color:
        #ffffff;

    font-size:
        14px;

    letter-spacing:
        0.14em;
}


.footer-logo-text small {
    margin-top:
        5px;

    color:
        #d8bc82;

    font-size:
        10px;

    font-weight:
        700;

    letter-spacing:
        0.25em;
}


/* Brand Copy */

.footer-brand p {
    max-width:
        420px;

    margin:
        14px 0 0;

    color:
        rgba(219, 232, 229, 0.72);

    font-size:
        13px;

    line-height:
        1.72;
}


.footer-brand .footer-brand-lead {
    margin-top:
        19px;

    color:
        rgba(236, 242, 240, 0.88);

    font-size:
        14px;

    font-weight:
        650;

    line-height:
        1.7;
}


/* Footer Badges */

.footer-badges {
    display:
        flex;

    flex-wrap:
        wrap;

    gap:
        8px;

    margin-top:
        19px;
}


.footer-badges span {
    padding:
        7px 11px;

    border:
        1px solid
        rgba(221, 184, 112, 0.24);

    border-radius:
        999px;

    background:
        rgba(221, 184, 112, 0.055);

    color:
        #e0c284;

    font-size:
        10px;

    font-weight:
        800;

    line-height:
        1;
}


/* Footer Links */

.footer-links h3 {
    margin:
        3px 0 18px;

    color:
        #ffffff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        20px;

    line-height:
        1.1;
}


.footer-links ul {
    margin:
        0;

    padding:
        0;

    list-style:
        none;
}


.footer-links li {
    margin:
        0;
}


.footer-links li + li {
    margin-top:
        11px;
}


.footer-links a {
    position: relative;

    display:
        inline-block;

    color:
        rgba(222, 234, 231, 0.72);

    font-size:
        13px;

    font-weight:
        500;

    line-height:
        1.45;

    transition:
        color 0.2s ease,
        transform 0.2s ease;
}


.footer-links a:hover,
.footer-links a:focus-visible {
    color:
        #e6c681;

    transform:
        translateX(4px);
}


/* Footer Responsible Gambling */

.footer-responsible {
    display: grid;

    grid-template-columns:
        auto 1fr;

    gap:
        19px;

    align-items:
        center;

    margin-top:
        40px;

    padding:
        21px 0;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.09);

    border-bottom:
        1px solid
        rgba(255, 255, 255, 0.09);
}


.footer-age {
    width:
        52px;

    height:
        52px;

    display:
        grid;

    place-items:
        center;

    border:
        2px solid
        #d4b16b;

    border-radius:
        50%;

    color:
        #e5c37d;

    font-size:
        15px;

    font-weight:
        900;

    line-height:
        1;
}


.footer-responsible-content strong {
    display:
        block;

    color:
        #ffffff;

    font-size:
        14px;
}


.footer-responsible-content p {
    max-width:
        980px;

    margin:
        6px 0 0;

    color:
        rgba(220, 232, 229, 0.68);

    font-size:
        12px;

    line-height:
        1.65;
}


.footer-responsible-content a {
    color:
        #e4c47f;

    font-weight:
        800;

    text-decoration:
        underline;

    text-decoration-thickness:
        1px;

    text-underline-offset:
        3px;
}


.footer-responsible-content a:hover,
.footer-responsible-content a:focus-visible {
    color:
        #f0d69e;
}


/* Footer Bottom */

.footer-bottom {
    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        25px;

    padding-top:
        20px;
}


.footer-bottom p {
    margin:
        0;

    color:
        rgba(218, 230, 227, 0.54);

    font-size:
        11px;

    line-height:
        1.5;
}


.footer-bottom-links {
    display:
        flex;

    flex-wrap:
        wrap;

    justify-content:
        flex-end;

    gap:
        17px;
}


.footer-bottom-links a {
    color:
        rgba(221, 232, 230, 0.64);

    font-size:
        11px;

    transition:
        color 0.2s ease;
}


.footer-bottom-links a:hover,
.footer-bottom-links a:focus-visible {
    color:
        #e3c381;
}


/* Footer Tablet */

@media (max-width: 950px) {

    .footer-main {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

        gap:
            34px 40px;
    }


    .footer-brand {
        max-width:
            none;
    }


    .footer-brand p {
        max-width:
            560px;
    }

}


/* Footer Mobile */

@media (max-width: 620px) {

    .site-footer {
        padding:
            44px 14px 22px;
    }


    .footer-main {
        grid-template-columns:
            1fr;

        gap:
            30px;
    }


    .footer-brand p {
        max-width:
            none;

        font-size:
            13px;
    }


    .footer-links h3 {
        margin-bottom:
            13px;

        font-size:
            19px;
    }


    .footer-links li + li {
        margin-top:
            9px;
    }


    .footer-links a {
        font-size:
            13px;
    }


    .footer-responsible {
        align-items:
            start;
    }


    .footer-responsible-content p {
        font-size:
            11px;
    }


    .footer-bottom {
        flex-direction:
            column;

        align-items:
            flex-start;

        gap:
            13px;
    }


    .footer-bottom-links {
        justify-content:
            flex-start;

        gap:
            14px;
    }

}

/*=============================================
                     Footer End
=============================================*/

/*=============================================
                Legal Pages Start
=============================================*/

.legal-page {
    position: relative;

    min-height:
        calc(
            100vh -
            var(--header-height)
        );

    margin-top:
        var(--header-height);

    padding:
        74px 20px 88px;

    overflow:
        hidden;

    color:
        #354147;

    background:
        radial-gradient(
            circle at 88% 5%,
            rgba(178, 144, 82, 0.12),
            transparent 27%
        ),
        radial-gradient(
            circle at 8% 92%,
            rgba(87, 123, 138, 0.10),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #e8e4dc 0%,
            #dce1df 50%,
            #ebe6dd 100%
        );
}


.legal-page::before {
    content:
        "";

    position:
        absolute;

    top:
        0;

    left:
        0;

    width:
        100%;

    height:
        1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(170, 128, 61, 0.38),
            transparent
        );

    pointer-events:
        none;
}


.legal-page-container {
    position:
        relative;

    z-index:
        1;

    width:
        min(
            100%,
            1040px
        );

    margin:
        0 auto;
}


/* Legal Header */

.legal-page-head {
    max-width:
        900px;

    margin:
        0 auto 42px;

    padding-bottom:
        34px;

    border-bottom:
        1px solid
        rgba(60, 78, 85, 0.13);
}


.legal-page-kicker {
    display:
        block;

    margin:
        0 0 10px;

    color:
        #936c2f;

    font-size:
        10px;

    font-weight:
        900;

    letter-spacing:
        0.18em;

    text-transform:
        uppercase;
}


.legal-page-head h1 {
    max-width:
        800px;

    margin:
        0;

    color:
        #28383f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(
            43px,
            5.2vw,
            70px
        );

    line-height:
        0.98;

    letter-spacing:
        -0.045em;
}


.legal-page-intro {
    max-width:
        850px;

    margin:
        22px 0 0;

    color:
        #506168;

    font-size:
        15px;

    font-weight:
        600;

    line-height:
        1.75;
}


.legal-last-updated {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        5px;

    margin:
        19px 0 0;

    padding:
        7px 11px;

    border:
        1px solid
        rgba(137, 101, 47, 0.16);

    border-radius:
        999px;

    background:
        rgba(235, 225, 207, 0.54);

    color:
        #75654d;

    font-size:
        9px;

    font-weight:
        800;
}


.legal-last-updated span {
    color:
        #8e672d;
}


/* Legal Content */

.legal-content {
    width:
        min(
            100%,
            900px
        );

    margin:
        0 auto;
}


.legal-section {
    position:
        relative;

    padding:
        27px 29px;

    border:
        1px solid
        rgba(60, 78, 85, 0.11);

    border-radius:
        16px;

    background:
        rgba(245, 244, 239, 0.64);

    box-shadow:
        0 9px 25px
        rgba(49, 65, 70, 0.045);
}


.legal-section + .legal-section {
    margin-top:
        12px;
}


.legal-section::before {
    content:
        "";

    position:
        absolute;

    top:
        0;

    left:
        28px;

    width:
        46px;

    height:
        2px;

    border-radius:
        999px;

    background:
        linear-gradient(
            90deg,
            #9b7132,
            #c49a51
        );
}


.legal-section h2 {
    max-width:
        760px;

    margin:
        0;

    color:
        #2e3e44;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(
            23px,
            2.2vw,
            30px
        );

    line-height:
        1.12;

    letter-spacing:
        -0.015em;
}


.legal-section p {
    margin:
        13px 0 0;

    color:
        #596a70;

    font-size:
        12px;

    line-height:
        1.78;
}


.legal-section p + p {
    margin-top:
        10px;
}


/* Legal Internal Links */

.legal-section a {
    color:
        #8e6427;

    font-weight:
        800;

    text-decoration:
        underline;

    text-decoration-thickness:
        1px;

    text-underline-offset:
        3px;

    transition:
        color 0.2s ease;
}


.legal-section a:hover,
.legal-section a:focus-visible {
    color:
        #bf1731;
}


/* Current Legal Page in Footer */

.footer-links a[aria-current="page"],
.footer-bottom-links a[aria-current="page"] {
    color:
        #e3c381;

    font-weight:
        800;
}


/* Legal Tablet */

@media (max-width: 900px) {

    .legal-page {
        padding:
            64px 18px 76px;
    }


    .legal-page-container {
        width:
            min(
                100%,
                920px
            );
    }


    .legal-page-head,
    .legal-content {
        max-width:
            100%;
    }

}


/* Legal Mobile */

@media (max-width: 620px) {

    .legal-page {
        padding:
            50px 14px 64px;
    }


    .legal-page-head {
        margin-bottom:
            28px;

        padding-bottom:
            27px;
    }


    .legal-page-head h1 {
        font-size:
            clamp(
                38px,
                11vw,
                50px
            );
    }


    .legal-page-intro {
        margin-top:
            18px;

        font-size:
            14px;

        line-height:
            1.68;
    }


    .legal-section {
        padding:
            24px 18px 22px;

        border-radius:
            14px;
    }


    .legal-section::before {
        left:
            18px;
    }


    .legal-section h2 {
        font-size:
            23px;
    }


    .legal-section p {
        font-size:
            12px;

        line-height:
            1.72;
    }

}

/*=============================================
                 Legal Pages End
=============================================*/


