:root {
    --atlantic: #0a4859;
    --atlantic-deep: #073846;
    --atlantic-dark: #082f3c;

    --ocean: #176779;

    --coral: #dc8263;
    --coral-light: #f3ae8b;

    --sand: #f2d9bd;
    --cream: #fff1df;

    --text: #f8eee5;
    --muted: #d1d9d7;

    --line: rgba(243, 174, 139, .28);

    --header-height: 86px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: var(--header-height);
}

body {
    min-width: 320px;
    background: var(--atlantic-dark);
    color: var(--text);
    font-family: Arial, Helvetica, sans-serif;
}

button,
a {
    font: inherit;
}

button {
    color: inherit;
}

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

.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;

    height: var(--header-height);

    background:
        linear-gradient(
            90deg,
            rgba(6, 54, 68, .97),
            rgba(8, 73, 88, .94)
        );

    border-bottom: 1px solid rgba(255, 255, 255, .08);

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

    box-shadow: 0 10px 32px rgba(0, 24, 31, .14);
}

.header-inner {
    width: min(1780px, calc(100% - 56px));
    height: 100%;

    margin: 0 auto;

    display: flex;
    align-items: center;

    gap: 34px;
}

.site-logo {
    min-width: 255px;

    display: flex;
    align-items: center;

    gap: 13px;
}

.site-logo-mark {
    width: 48px;
    height: 44px;

    fill: none;

    stroke: var(--coral-light);
    stroke-width: 3;

    stroke-linecap: round;
    stroke-linejoin: round;
}

.site-logo-text {
    display: flex;
    flex-direction: column;

    line-height: 1;

    text-transform: uppercase;
}

.site-logo-text strong {
    color: var(--cream);

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

    font-size: 20px;
    font-weight: 500;

    letter-spacing: .045em;
}

.site-logo-text span {
    margin-top: 7px;

    color: var(--coral-light);

    font-size: 8px;
    font-weight: 800;

    letter-spacing: .42em;
}

.main-navigation {
    flex: 1;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-link {
    position: relative;

    height: 100%;

    padding: 0 19px;

    border: 0;
    background: transparent;

    color: rgba(255, 255, 255, .78);

    cursor: pointer;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: .11em;

    text-transform: uppercase;

    transition: color .22s ease;
}

.nav-link::after {
    content: "";

    position: absolute;

    left: 19px;
    right: 19px;
    bottom: 0;

    height: 2px;

    background: var(--coral-light);

    transform: scaleX(0);

    transition: transform .24s ease;
}

.nav-link:hover,
.nav-link.is-active {
    color: #fff;
}

.nav-link:hover::after,
.nav-link.is-active::after {
    transform: scaleX(1);
}

.play-button {
    min-width: 152px;
    min-height: 50px;

    padding: 0 24px;

    border: 1px solid rgba(255, 220, 199, .55);
    border-radius: 999px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 14px;

    background:
        linear-gradient(
            135deg,
            #f5b18d,
            #d67859
        );

    color: #103642;

    font-size: 12px;
    font-weight: 900;

    letter-spacing: .1em;

    text-transform: uppercase;

    box-shadow: 0 10px 28px rgba(95, 42, 27, .18);

    transition:
        transform .24s ease,
        box-shadow .24s ease,
        filter .24s ease;
}

.play-button:hover {
    transform: translateY(-2px);
    filter: brightness(1.05);

    box-shadow: 0 15px 35px rgba(95, 42, 27, .24);
}

.play-button span {
    font-size: 19px;
}

.nav-toggle {
    display: none;

    width: 44px;
    height: 44px;

    padding: 0;

    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;

    background: rgba(255, 255, 255, .04);

    cursor: pointer;
}

.nav-toggle span {
    display: block;

    width: 17px;
    height: 1px;

    margin: 4px auto;

    background: #fff;
}

.hero {
    position: relative;

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

    overflow: hidden;

    padding-bottom: 175px;
}

.hero-background {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center center;
}

.hero-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5, 42, 53, .88) 0%,
            rgba(5, 42, 53, .71) 28%,
            rgba(5, 42, 53, .29) 51%,
            rgba(5, 42, 53, .07) 76%
        ),
        linear-gradient(
            0deg,
            rgba(4, 38, 49, .54) 0%,
            rgba(4, 38, 49, .06) 45%
        );
}

.hero-main {
    position: relative;
    z-index: 2;

    width: min(1780px, calc(100% - 56px));

    margin: 0 auto;

    padding-top: clamp(115px, 15vh, 180px);
}

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

.hero-kicker {
    display: block;

    margin-bottom: 21px;

    color: var(--coral-light);

    font-size: 11px;
    font-weight: 900;

    letter-spacing: .33em;

    text-transform: uppercase;
}

.hero h1 {
    color: var(--cream);

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

    font-size: clamp(66px, 6.3vw, 112px);

    font-weight: 400;

    line-height: .88;

    letter-spacing: -.045em;
}

.hero h1 em {
    display: block;

    color: var(--coral-light);

    font-style: normal;
}

.hero-lead {
    margin-top: 28px;

    color: #fff8f0;

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

    font-size: clamp(22px, 2vw, 31px);

    line-height: 1.25;
}

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

    margin-top: 17px;

    color: var(--muted);

    font-size: 16px;

    line-height: 1.72;
}

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

.hero-explore {
    position: absolute;

    z-index: 4;

    left: 50%;
    bottom: 26px;

    width: min(1420px, calc(100% - 70px));

    transform: translateX(-50%);

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

    gap: 12px;
}

.explore-item {
    position: relative;

    min-width: 0;

    padding: 12px 14px 12px 12px;

    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            rgba(8, 70, 84, .82),
            rgba(7, 49, 62, .66)
        );

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

    display: grid;

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

    align-items: center;

    gap: 12px;

    cursor: pointer;

    text-align: left;

    box-shadow: 0 12px 30px rgba(0, 28, 35, .14);

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

.explore-item:hover,
.explore-item.is-active {
    transform: translateY(-5px);

    border-color: rgba(243, 174, 139, .62);

    background:
        linear-gradient(
            135deg,
            rgba(12, 90, 103, .92),
            rgba(104, 65, 58, .74)
        );
}

.explore-image {
    width: 68px;
    height: 68px;

    overflow: hidden;

    border-radius: 50%;

    border: 2px solid rgba(243, 174, 139, .76);

    box-shadow:
        0 4px 16px rgba(0, 27, 34, .24);
}

.explore-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform .35s ease;
}

.explore-item:hover .explore-image img {
    transform: scale(1.08);
}

.explore-copy {
    min-width: 0;

    display: flex;
    flex-direction: column;
}

.explore-copy strong {
    color: #fff6ed;

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

    font-size: 17px;
    font-weight: 400;

    line-height: 1.1;
}

.explore-copy small {
    margin-top: 5px;

    overflow: hidden;

    color: rgba(224, 236, 234, .72);

    font-size: 8px;
    font-weight: 800;

    letter-spacing: .09em;

    text-overflow: ellipsis;
    white-space: nowrap;

    text-transform: uppercase;
}

.explore-arrow {
    width: 30px;
    height: 30px;

    border: 1px solid rgba(243, 174, 139, .62);
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--coral-light);

    font-size: 14px;

    transition:
        background .22s ease,
        color .22s ease;
}

.explore-item:hover .explore-arrow {
    background: var(--coral-light);
    color: var(--atlantic-dark);
}

.content-shell {
    min-height: 0;
    background: var(--atlantic-dark);
}

@media (max-width: 1260px) {

    .header-inner {
        gap: 18px;
    }

    .site-logo {
        min-width: 215px;
    }

    .nav-link {
        padding: 0 12px;
    }

    .nav-link::after {
        left: 12px;
        right: 12px;
    }

    .hero-explore {
        width: calc(100% - 40px);
    }

    .explore-item {
        grid-template-columns: 56px minmax(0, 1fr) 28px;

        padding: 10px;
    }

    .explore-image {
        width: 56px;
        height: 56px;
    }

    .explore-copy strong {
        font-size: 15px;
    }
}

@media (max-width: 980px) {

    .header-inner {
        width: calc(100% - 32px);
    }

    .site-logo {
        min-width: 0;
        margin-right: auto;
    }

    .main-navigation {
        position: absolute;

        top: 100%;
        left: 0;
        right: 0;

        height: auto;

        padding: 12px 20px 20px;

        display: none;
        flex-direction: column;

        background: rgba(6, 57, 70, .98);

        border-bottom: 1px solid rgba(255, 255, 255, .08);

        box-shadow: 0 15px 30px rgba(0, 22, 29, .24);
    }

    .main-navigation.is-open {
        display: flex;
    }

    .nav-link {
        width: 100%;
        height: 52px;

        flex: 0 0 52px;
    }

    .nav-toggle {
        display: block;
    }

    .hero {
        min-height: auto;
        padding-bottom: 24px;
    }

    .hero-main {
        width: calc(100% - 32px);

        padding:
            80px
            0
            45px;
    }

    .hero-explore {
        position: relative;

        left: auto;
        bottom: auto;

        width: calc(100% - 32px);

        margin: 0 auto;

        transform: none;

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

@media (max-width: 650px) {

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

    .site-logo-mark {
        width: 38px;
        height: 36px;
    }

    .site-logo-text strong {
        font-size: 15px;
    }

    .site-logo-text span {
        font-size: 6px;
    }

    .header-play {
        display: none;
    }

    .hero-main {
        padding-top: 62px;
    }

    .hero h1 {
        font-size: 55px;
    }

    .hero-lead {
        font-size: 21px;
    }

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

    .hero-explore {
        grid-template-columns: 1fr;

        gap: 8px;
    }

    .explore-item {
        grid-template-columns: 54px 1fr 30px;

        min-height: 70px;
    }

    .explore-image {
        width: 54px;
        height: 54px;
    }

    .explore-copy strong {
        font-size: 17px;
    }
}

/* GAME START */

.content-panel {
    display: none;
}

.content-panel.is-active {
    display: block;
}

.games-section {
    background:
        radial-gradient(circle at 86% 4%, rgba(92, 178, 176, .17), transparent 27%),
        radial-gradient(circle at 6% 63%, rgba(213, 121, 88, .12), transparent 25%),
        linear-gradient(145deg, #174b56 0%, #113e49 48%, #17424b 100%);
    color: #f8eee5;
}

.games-layout {
    width: min(1900px, calc(100% - 44px));
    margin: 0 auto;
    padding: 60px 0 84px;
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 40px;
}

.section-sidebar {
    position: sticky;
    top: calc(var(--header-height) + 22px);
    align-self: start;
}

.sidebar-title {
    display: block;
    margin-bottom: 15px;
    color: rgba(255, 211, 188, .68);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sidebar-link {
    position: relative;
    width: 100%;
    min-height: 51px;
    padding: 0 34px 0 14px;
    border: 2px solid rgba(123, 205, 200, .60);
    border-radius: 11px;
    background: linear-gradient(135deg, #24727a, #1c5d68);
    color: #eff8f5;
    cursor: pointer;
    text-align: left;
    font-size: 12px;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(3, 29, 35, .13);
    transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.sidebar-link::after {
    content: "›";
    position: absolute;
    top: 50%;
    right: 13px;
    color: #ffc09e;
    font-size: 20px;
    transform: translateY(-50%);
}

.sidebar-link:hover {
    transform: translateX(4px);
    border-color: #a8e7e3;
    background: linear-gradient(135deg, #2e858a, #236d78);
    box-shadow: 0 11px 25px rgba(3, 29, 35, .19);
}

.sidebar-link.is-active {
    border-color: #ffd5bf;
    background: linear-gradient(135deg, #f5b18f, #dc7e61);
    color: #103943;
}

.sidebar-link.is-active::after {
    color: #103943;
}

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

.section-kicker,
.detail-label {
    display: block;
    margin-bottom: 13px;
    color: #ffb58e;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.games-intro h2,
.game-panel-heading h3,
.game-panel-story h4,
.game-detail h4,
.faq-heading h3 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: -.035em;
}

.games-intro h2 {
    max-width: 1290px;
    color: #fff1e3;
    font-size: clamp(48px, 4.4vw, 82px);
    line-height: .98;
}

.games-intro h2 em {
    display: block;
    color: #f4af8d;
    font-style: normal;
}

.games-lead {
    max-width: 1450px;
    margin-top: 27px;
    color: #eff5f2;
    font-size: 20px;
    line-height: 1.72;
}

.games-story {
    max-width: 1540px;
    margin-top: 32px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 54px;
}

.games-story h3 {
    color: #ffeadd;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 27px;
    font-weight: 400;
    line-height: 1.15;
}

.games-story p {
    margin-top: 14px;
    color: #c5d7d3;
    font-size: 15px;
    line-height: 1.82;
}

.games-facts {
    max-width: 1540px;
    margin-top: 32px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
    border-radius: 16px;
    background: rgba(7, 52, 62, .32);
    box-shadow: inset 0 0 0 1px rgba(163, 214, 210, .18);
}

.games-facts > div {
    padding: 23px 24px;
    border-right: 1px solid rgba(163, 214, 210, .17);
}

.games-facts > div:last-child {
    border-right: 0;
}

.games-facts strong,
.games-facts span,
.games-facts p {
    display: block;
}

.games-facts strong {
    color: #ffbb99;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 30px;
    font-weight: 400;
}

.games-facts span {
    margin-top: 5px;
    color: #fff1e4;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.games-facts p {
    margin-top: 8px;
    color: #abc5c1;
    font-size: 11px;
    line-height: 1.58;
}

.games-category-grid {
    margin-top: 35px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.games-category-card {
    position: relative;
    min-height: 278px;
    display: grid;
    grid-template-columns: 47% 53%;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 18px;
    cursor: pointer;
    text-align: left;
    box-shadow: 0 15px 34px rgba(3, 27, 33, .18);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.games-card-slots {
    background: linear-gradient(140deg, #774638, #513638);
    border-color: #ef9874;
}

.games-card-tables {
    background: linear-gradient(140deg, #196d73, #12545f);
    border-color: #77d0ca;
}

.games-card-poker {
    background: linear-gradient(140deg, #65506d, #443d56);
    border-color: #cd94c8;
}

.games-card-electronic {
    background: linear-gradient(140deg, #2c607f, #204a66);
    border-color: #84bcec;
}

.games-category-card:hover,
.games-category-card.is-active {
    transform: translateY(-6px);
    box-shadow: 0 22px 46px rgba(2, 24, 30, .28);
}

.games-category-image {
    min-width: 0;
    overflow: hidden;
}

.games-category-image img {
    width: 100%;
    height: 100%;
    min-height: 278px;
    display: block;
    object-fit: cover;
    transition: transform .4s ease;
}

.games-card-slots img {
    object-position: 48% center;
}

.games-card-tables img {
    object-position: center 36%;
}

.games-card-poker img {
    object-position: 42% center;
}

.games-card-electronic img {
    object-position: 52% center;
}

.games-category-card:hover img {
    transform: scale(1.035);
}

.games-category-body {
    min-width: 0;
    padding: 26px 26px 24px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.games-category-body > small {
    color: #ffc09d;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .13em;
    line-height: 1.45;
    text-transform: uppercase;
}

.games-category-body > strong {
    margin-top: 7px;
    color: #fff6ec;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(30px, 2vw, 41px);
    font-weight: 400;
    line-height: 1.03;
}

.games-category-description {
    margin-top: 11px;
    color: rgba(255, 255, 255, .83);
    font-size: 14px;
    line-height: 1.63;
}

.games-category-action {
    min-width: 205px;
    min-height: 46px;
    margin-top: 19px;
    padding: 0 11px 0 18px;
    border: 1px solid rgba(255, 230, 214, .66);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    background: linear-gradient(135deg, #f6bd92, #e38a64);
    color: #123a43;
    box-shadow: 0 8px 20px rgba(63, 26, 18, .18);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.games-category-action b {
    width: 31px;
    height: 31px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #16454e;
    color: #fff4ea;
    font-size: 18px;
    font-weight: 400;
    transition: transform .2s ease;
}

.games-category-card.is-active .games-category-action {
    background: linear-gradient(135deg, #ffe0ca, #f4b08c);
}

.games-category-card.is-active .games-category-action b {
    transform: rotate(45deg);
}

.game-panel {
    display: none;
    max-width: 1540px;
    margin-top: 20px;
    padding: 37px 38px;
    border: 1px solid rgba(167, 216, 212, .28);
    border-radius: 20px;
    background: linear-gradient(135deg, #1b5962, #123f4b);
    box-shadow: 0 19px 45px rgba(3, 27, 33, .17);
}

.game-panel.is-active {
    display: block;
    animation: gameOpen .28s ease;
}

@keyframes gameOpen {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }

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

.game-panel-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 44px;
    gap: 30px;
    align-items: start;
}

.game-panel-heading h3 {
    max-width: 1260px;
    color: #fff1e3;
    font-size: clamp(42px, 3.6vw, 68px);
    line-height: 1.02;
}

.game-panel-close {
    width: 42px;
    height: 42px;
    border: 2px solid #efaa86;
    border-radius: 50%;
    background: #93523f;
    color: #fff;
    cursor: pointer;
    font-size: 24px;
    transition: background .2s ease, transform .2s ease;
}

.game-panel-close:hover {
    background: #dc7b5e;
    transform: rotate(90deg);
}

.game-panel-lead {
    max-width: 1430px;
    margin-top: 23px;
    color: #e8f1ee;
    font-size: 18px;
    line-height: 1.76;
}

.game-panel-story {
    margin-top: 30px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px;
}

.game-panel-story > div {
    padding: 26px 27px;
    border-radius: 14px;
    background: linear-gradient(145deg, #28747a, #205e69);
    box-shadow: inset 0 0 0 1px rgba(168, 220, 216, .25);
}

.game-panel-story h4 {
    color: #fff0e2;
    font-size: 27px;
    line-height: 1.15;
}

.game-panel-story p {
    margin-top: 13px;
    color: #c8dad6;
    font-size: 14px;
    line-height: 1.78;
}

.game-notice {
    margin-top: 25px;
    padding: 21px 23px;
    border-left: 5px solid #f0a37e;
    border-radius: 0 12px 12px 0;
    background: linear-gradient(90deg, #774b40, #225f67);
}

.game-notice strong,
.game-notice span {
    display: block;
}

.game-notice strong {
    color: #fff3e8;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
    font-weight: 400;
}

.game-notice span {
    margin-top: 7px;
    color: #d5e3df;
    font-size: 13px;
    line-height: 1.62;
}

.game-option-grid {
    margin-top: 26px;
    display: grid;
    gap: 11px;
}

.slot-option-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

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

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

.game-option {
    position: relative;
    min-height: 124px;
    padding: 18px 54px 19px 20px;
    border: 2px solid #8dd8d3;
    border-radius: 13px;
    background: linear-gradient(145deg, #2b7b80, #22646f);
    color: #fff4ea;
    cursor: pointer;
    text-align: left;
    box-shadow: 0 8px 20px rgba(3, 28, 34, .16);
    transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.game-option:hover {
    transform: translateY(-3px);
    border-color: #b8f1ed;
    background: linear-gradient(145deg, #358d91, #287580);
    box-shadow: 0 13px 28px rgba(2, 26, 32, .22);
}

.game-option-highlight {
    border-color: #f0a580;
    background: linear-gradient(145deg, #855447, #28656b);
}

.game-option.is-active {
    border-color: #ffdac5;
    background: linear-gradient(135deg, #f4b18e, #dc7e61);
    color: #123943;
}

.game-option-tag {
    display: block;
    margin-bottom: 7px;
    color: #ffc09d;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.game-option strong {
    display: block;
    color: inherit;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.18;
}

.game-option > span:not(.game-option-tag) {
    display: block;
    margin-top: 7px;
    color: #d2e3df;
    font-size: 11px;
    line-height: 1.5;
}

.game-option > b {
    position: absolute;
    right: 15px;
    bottom: 15px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f2a783;
    color: #133d46;
    font-size: 19px;
    font-weight: 400;
    transition: transform .2s ease;
}

.game-option.is-active .game-option-tag,
.game-option.is-active > span:not(.game-option-tag) {
    color: rgba(18, 57, 67, .72);
}

.game-option.is-active > b {
    background: #143e47;
    color: #fff;
    transform: rotate(45deg);
}

.game-detail {
    display: none;
    margin-top: 15px;
    padding: 30px;
    border-top: 3px solid #ef9f79;
    border-radius: 12px;
    background: linear-gradient(135deg, #103c47, #0c333e);
    box-shadow: inset 0 0 0 1px rgba(163, 211, 207, .22);
}

.game-detail.is-active {
    display: block;
    animation: gameOpen .23s ease;
}

.game-detail h4 {
    max-width: 1130px;
    color: #fff1e4;
    font-size: clamp(31px, 2.5vw, 47px);
    line-height: 1.08;
}

.game-detail-grid {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 42px;
}

.game-detail-grid p {
    color: #bed2ce;
    font-size: 14px;
    line-height: 1.8;
}

.slot-name-grid {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.slot-name-grid span {
    padding: 13px 15px;
    border-radius: 9px;
    background: #20616b;
    box-shadow: inset 0 0 0 1px rgba(167, 215, 211, .28);
    color: #e0ebe8;
    font-size: 12px;
}

.game-detail-note {
    margin-top: 19px;
    color: #9fb9b5;
    font-size: 11px;
    line-height: 1.62;
}

.game-schedule {
    margin-top: 25px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border-radius: 13px;
    background: rgba(7, 48, 58, .38);
    box-shadow: inset 0 0 0 1px rgba(164, 212, 208, .24);
}

.game-schedule > div {
    padding: 19px 21px;
    border-right: 1px solid rgba(164, 212, 208, .18);
}

.game-schedule > div:last-child {
    border-right: 0;
}

.game-schedule span,
.game-schedule strong {
    display: block;
}

.game-schedule span {
    color: #99b9b5;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.game-schedule strong {
    margin-top: 6px;
    color: #ffe9da;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 20px;
    font-weight: 400;
}

.games-faq-trigger {
    width: 100%;
    max-width: 1540px;
    margin-top: 32px;
    padding: 23px 25px;
    border: 2px solid #f1a17b;
    border-radius: 15px;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    background: linear-gradient(110deg, #91503d 0%, #a15d47 27%, #226d73 100%);
    color: #fff;
    cursor: pointer;
    text-align: left;
    box-shadow: 0 14px 30px rgba(4, 28, 33, .19);
    transition: transform .22s ease, filter .22s ease;
}

.games-faq-trigger:hover {
    transform: translateY(-3px);
    filter: brightness(1.07);
}

.games-faq-icon {
    width: 48px;
    height: 48px;
    border: 2px solid rgba(255, 230, 216, .80);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffe3d3;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 25px;
}

.games-faq-copy small,
.games-faq-copy strong,
.games-faq-copy span {
    display: block;
}

.games-faq-copy small {
    color: #ffd6c4;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.games-faq-copy strong {
    margin-top: 3px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 26px;
    font-weight: 400;
}

.games-faq-copy span {
    margin-top: 5px;
    max-width: 850px;
    color: #e4efec;
    font-size: 12px;
    line-height: 1.55;
}

.games-faq-trigger > b {
    padding: 11px 14px;
    border: 1px solid rgba(255, 236, 225, .58);
    border-radius: 999px;
    background: rgba(255, 255, 255, .09);
    color: #fff5ee;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.games-faq-panel {
    display: none;
    max-width: 1540px;
    margin-top: 14px;
    padding: 33px;
    border-radius: 15px;
    background: linear-gradient(135deg, #654d49, #185560);
    box-shadow: inset 0 0 0 1px rgba(240, 161, 123, .34);
}

.games-faq-panel.is-active {
    display: block;
    animation: gameOpen .24s ease;
}

.faq-heading {
    max-width: 1000px;
}

.faq-heading h3 {
    color: #fff0e3;
    font-size: clamp(36px, 3vw, 57px);
    line-height: 1.04;
}

.faq-heading p {
    max-width: 700px;
    margin-top: 13px;
    color: #c7d8d4;
    font-size: 14px;
    line-height: 1.68;
}

.faq-grid {
    margin-top: 26px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.faq-item {
    border: 2px solid rgba(139, 207, 202, .60);
    border-radius: 11px;
    background: linear-gradient(135deg, #297179, #205f69);
}

.faq-item summary {
    min-height: 82px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 19px;
    color: #fff2e7;
    cursor: pointer;
    list-style: none;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    line-height: 1.4;
}

.faq-item summary::-webkit-details-marker {
    display: none;
}

.faq-item summary span {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1a582;
    color: #123943;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 19px;
    transition: transform .2s ease;
}

.faq-item[open] {
    border-color: #ffc1a1;
    background: linear-gradient(135deg, #805249, #22656c);
}

.faq-item[open] summary span {
    transform: rotate(45deg);
}

.faq-item > p {
    padding: 0 20px 21px;
    color: #d2e1de;
    font-size: 14px;
    line-height: 1.76;
}

@media (max-width: 1250px) {

    .games-layout {
        grid-template-columns: 140px minmax(0, 1fr);
        gap: 28px;
    }

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

    .games-facts > div:nth-child(2) {
        border-right: 0;
    }

    .games-facts > div:nth-child(-n+2) {
        border-bottom: 1px solid rgba(163, 214, 210, .17);
    }

    .slot-option-grid,
    .table-option-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 950px) {

    .games-layout {
        width: calc(100% - 28px);
        display: block;
        padding: 44px 0 64px;
    }

    .section-sidebar {
        position: relative;
        top: auto;
        margin-bottom: 27px;
    }

    .sidebar-title {
        display: none;
    }

    .sidebar-nav {
        display: grid;
        grid-template-columns: repeat(5, max-content);
        overflow-x: auto;
        padding-bottom: 7px;
    }

    .sidebar-link {
        min-width: 120px;
        text-align: center;
    }

    .sidebar-link::after {
        display: none;
    }

    .games-story,
    .game-panel-story,
    .game-detail-grid,
    .faq-grid {
        grid-template-columns: 1fr;
    }

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

    .games-category-card {
        min-height: 260px;
    }

    .slot-option-grid,
    .table-option-grid,
    .poker-option-grid,
    .electronic-option-grid,
    .game-schedule {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 650px) {

    .games-intro h2 {
        font-size: 43px;
    }

    .games-lead,
    .game-panel-lead {
        font-size: 16px;
    }

    .games-story p,
    .game-panel-story p,
    .game-detail-grid p,
    .faq-item > p {
        font-size: 13px;
    }

    .games-facts,
    .slot-option-grid,
    .table-option-grid,
    .poker-option-grid,
    .electronic-option-grid,
    .game-schedule,
    .slot-name-grid {
        grid-template-columns: 1fr;
    }

    .games-facts > div {
        border-right: 0;
        border-bottom: 1px solid rgba(163, 214, 210, .17);
    }

    .games-facts > div:last-child {
        border-bottom: 0;
    }

    .games-category-card {
        display: block;
        min-height: 0;
    }

    .games-category-image {
        display: block;
        height: 220px;
    }

    .games-category-image img {
        height: 220px;
        min-height: 220px;
    }

    .games-category-body {
        padding: 22px 20px 24px;
    }

    .game-panel,
    .games-faq-panel {
        padding: 24px 18px;
    }

    .game-panel-heading {
        grid-template-columns: 1fr 38px;
        gap: 14px;
    }

    .game-panel-heading h3 {
        font-size: 37px;
    }

    .games-faq-trigger {
        grid-template-columns: 46px 1fr;
    }

    .games-faq-trigger > b {
        grid-column: 2;
        width: max-content;
    }

}

/* GAME END */
/* PLAYER CLUB & OFFERS START */

.club-offers-section {
    display: none;
    position: relative;
    overflow: hidden;

    background:
        radial-gradient(circle at 90% 5%, rgba(102, 122, 146, .12), transparent 29%),
        radial-gradient(circle at 7% 62%, rgba(193, 112, 79, .09), transparent 28%),
        linear-gradient(145deg, #303037 0%, #34343c 48%, #293940 100%);

    color: #f3ebe5;
}

.club-offers-section.is-active {
    display: block;
}

.club-offers-layout {
    width: min(1900px, calc(100% - 44px));
    margin: 0 auto;
    padding: 62px 0 88px;

    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 40px;
}

.club-offers-sidebar {
    position: sticky;
    top: calc(var(--header-height) + 22px);
    align-self: start;
}

.club-offers-sidebar-title {
    display: block;
    margin-bottom: 15px;

    color: #a8a0a0;

    font-size: 9px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.club-offers-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.club-offers-sidebar-link {
    position: relative;

    width: 100%;
    min-height: 51px;

    padding: 0 34px 0 14px;

    border: 2px solid #626a70;
    border-radius: 11px;

    background: linear-gradient(135deg, #41464c, #363d43);

    color: #f0e9e4;

    cursor: pointer;
    text-align: left;

    font-size: 12px;
    font-weight: 800;

    box-shadow: 0 8px 18px rgba(11, 13, 16, .14);

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

.club-offers-sidebar-link::after {
    content: "›";

    position: absolute;
    top: 50%;
    right: 13px;

    color: #eea789;

    font-size: 20px;

    transform: translateY(-50%);
}

.club-offers-sidebar-link:hover {
    transform: translateX(4px);

    border-color: #8e999f;

    background: linear-gradient(135deg, #4e545b, #40484f);
}

.club-offers-sidebar-link.is-active {
    border-color: #ffc0a2;

    background: linear-gradient(135deg, #bd705c, #915765);

    color: #fff;
}

.club-offers-main {
    min-width: 0;
}

.club-offers-kicker,
.player-club-kicker,
.special-offers-kicker {
    display: block;

    margin-bottom: 13px;

    color: #efa889;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .2em;
    text-transform: uppercase;
}

.club-offers-intro h2,
.player-club-intro h3,
.club-status-heading h4,
.club-cycle-copy h4,
.club-benefits-heading h4,
.club-tier-panel h4,
.club-benefit-panel h4,
.special-offers-intro h3,
.offers-number-note strong,
.offer-types-heading h4,
.offer-detail-panel h4 {
    font-family: Georgia, "Times New Roman", serif;

    font-weight: 400;
    letter-spacing: -.035em;
}

.club-offers-intro h2 {
    max-width: 1260px;

    color: #fff2e8;

    font-size: clamp(48px, 4.35vw, 81px);
    line-height: .98;
}

.club-offers-intro h2 em {
    display: block;

    color: #e99f84;

    font-style: normal;
}

.club-offers-lead {
    max-width: 1450px;

    margin-top: 26px;

    color: #cec9c8;

    font-size: 19px;
    line-height: 1.75;
}

.club-offers-entry-grid {
    width: 100%;
    max-width: 1540px;

    margin-top: 36px;

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

    gap: 20px;
}

.club-offers-entry {
    position: relative;

    width: 100%;
    aspect-ratio: 5 / 3;

    min-height: 0;

    overflow: hidden;

    padding: 0;

    border: 3px solid transparent;
    border-radius: 20px;

    cursor: pointer;
    text-align: left;

    background: #202a30;

    box-shadow: 0 18px 42px rgba(6, 9, 13, .25);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.club-entry {
    border-color: #d49674;
}

.offers-entry {
    border-color: #75a9b6;
}

.club-offers-entry:hover,
.club-offers-entry.is-active {
    transform: translateY(-6px);

    border-color: #ffd0b8;

    box-shadow: 0 25px 52px rgba(5, 8, 12, .34);
}

.club-offers-entry-image {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    display: block;
    overflow: hidden;
}

.club-offers-entry-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform .4s ease;
}

.club-offers-entry:hover img {
    transform: scale(1.02);
}

.club-offers-entry-shade {
    position: absolute;
    z-index: 1;
    inset: 0;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            rgba(13, 17, 20, .88) 0%,
            rgba(13, 17, 20, .60) 37%,
            rgba(13, 17, 20, .14) 68%,
            transparent 100%
        ),
        linear-gradient(
            0deg,
            rgba(11, 15, 18, .82) 0%,
            rgba(11, 15, 18, .20) 43%,
            transparent 70%
        );
}

.club-entry .club-offers-entry-shade {
    background:
        linear-gradient(
            90deg,
            rgba(28, 20, 17, .88) 0%,
            rgba(28, 20, 17, .58) 38%,
            rgba(28, 20, 17, .10) 70%,
            transparent 100%
        ),
        linear-gradient(
            0deg,
            rgba(24, 18, 17, .80) 0%,
            rgba(24, 18, 17, .17) 45%,
            transparent 72%
        );
}

.offers-entry .club-offers-entry-shade {
    background:
        linear-gradient(
            90deg,
            rgba(10, 27, 35, .90) 0%,
            rgba(10, 27, 35, .58) 38%,
            rgba(10, 27, 35, .10) 70%,
            transparent 100%
        ),
        linear-gradient(
            0deg,
            rgba(8, 24, 32, .82) 0%,
            rgba(8, 24, 32, .18) 45%,
            transparent 72%
        );
}

.club-offers-entry-copy {
    position: absolute;
    z-index: 2;

    left: 28px;
    right: 28px;
    bottom: 26px;

    max-width: 590px;
}

.club-offers-entry-copy small {
    display: block;

    color: #f2ad8c;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .15em;
    text-transform: uppercase;
}

.offers-entry .club-offers-entry-copy small {
    color: #91d4da;
}

.club-offers-entry-copy > strong {
    display: block;

    margin-top: 7px;

    color: #fff6ed;

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

    font-size: clamp(33px, 2.35vw, 47px);
    font-weight: 400;

    line-height: 1.02;
}

.club-offers-entry-copy > span {
    display: block;

    max-width: 580px;

    margin-top: 10px;

    color: rgba(255,255,255,.85);

    font-size: 14px;
    line-height: 1.62;
}

.club-offers-entry-copy > b {
    width: fit-content;

    min-width: 215px;
    min-height: 44px;

    margin-top: 17px;
    padding: 0 10px 0 17px;

    border-radius: 999px;

    display: inline-flex;
    align-items: center;
    justify-content: space-between;

    gap: 16px;

    background: linear-gradient(135deg, #f6b28d, #df8062);

    color: #273a40;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .08em;
    text-transform: uppercase;
}

.offers-entry .club-offers-entry-copy > b {
    background: linear-gradient(135deg, #9bdde0, #67b8c3);
}

.club-offers-entry-copy > b i {
    width: 28px;
    height: 28px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #34454c;

    color: #fff;

    font-size: 17px;
    font-style: normal;
    font-weight: 400;
}

.club-offers-entry.is-active .club-offers-entry-copy > b i {
    transform: rotate(45deg);
}

.club-offers-panel {
    display: none;

    position: relative;

    max-width: 1540px;

    margin-top: 22px;

    padding: 42px;

    border-radius: 22px;

    box-shadow: 0 22px 50px rgba(7, 8, 11, .24);
}

.club-offers-panel.is-active {
    display: block;

    animation: clubOffersOpen .27s ease;
}

@keyframes clubOffersOpen {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }

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

.player-club-panel {
    border: 1px solid #966e59;

    background:
        radial-gradient(circle at 91% 3%, rgba(201, 143, 99, .12), transparent 27%),
        linear-gradient(145deg, #40312d 0%, #493832 50%, #343338 100%);
}

.special-offers-panel {
    border: 1px solid #5a8290;

    background:
        radial-gradient(circle at 89% 4%, rgba(112, 91, 156, .16), transparent 28%),
        linear-gradient(145deg, #203944 0%, #263f4b 48%, #343449 100%);
}

.club-offers-close {
    position: absolute;

    top: 24px;
    right: 24px;

    z-index: 5;

    width: 43px;
    height: 43px;

    border: 2px solid #e9a181;
    border-radius: 50%;

    background: #66443e;

    color: #fff;

    cursor: pointer;

    font-size: 24px;

    transition:
        transform .2s ease,
        background .2s ease;
}

.club-offers-close:hover {
    transform: rotate(90deg);

    background: #bc6b57;
}

.player-club-intro,
.special-offers-intro {
    padding-right: 70px;
}

.player-club-intro h3,
.special-offers-intro h3 {
    max-width: 1260px;

    color: #fff1e6;

    font-size: clamp(43px, 3.7vw, 69px);
    line-height: 1.02;
}

.player-club-intro h3 em,
.special-offers-intro h3 em {
    display: block;

    color: #efa889;

    font-style: normal;
}

.player-club-intro > p,
.special-offers-intro > p {
    max-width: 1430px;

    margin-top: 24px;

    color: #dacfc9;

    font-size: 18px;
    line-height: 1.77;
}

.special-offers-intro > p {
    color: #d5e0e0;
}

.club-status-heading,
.club-benefits-heading,
.offer-types-heading {
    max-width: 1180px;

    margin-top: 43px;
}

.club-status-heading h4,
.club-benefits-heading h4,
.offer-types-heading h4 {
    color: #fff1e6;

    font-size: clamp(35px, 3vw, 56px);
    line-height: 1.04;
}

.club-status-heading p,
.club-benefits-heading p {
    margin-top: 13px;

    color: #c8bbb6;

    font-size: 14px;
    line-height: 1.72;
}

.club-status-grid {
    margin-top: 25px;

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

    gap: 12px;
}

.club-status-card {
    min-height: 205px;

    padding: 21px;

    border: 3px solid transparent;
    border-radius: 15px;

    color: #fff;

    cursor: pointer;
    text-align: left;

    box-shadow: 0 11px 26px rgba(10, 8, 9, .20);

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.status-bronze {
    background: linear-gradient(145deg, #a36e52, #7f5243);
    border-color: #ce8a66;
}

.status-silver {
    background: linear-gradient(145deg, #748086, #59676e);
    border-color: #a0aaae;
}

.status-gold {
    background: linear-gradient(145deg, #b58c3e, #86652c);
    border-color: #dbaf56;
}

.status-prive {
    background: linear-gradient(145deg, #59485f, #40384e);
    border-color: #8f7098;
}

.club-status-card:hover,
.club-status-card.is-active {
    transform: translateY(-5px);

    border-color: #ffe0c9;

    box-shadow: 0 18px 36px rgba(9, 7, 9, .27);
}

.club-status-card small,
.club-status-card strong,
.club-status-card span,
.club-status-card b {
    display: block;
}

.club-status-card small {
    color: rgba(255,255,255,.86);

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

    font-size: 22px;
}

.club-status-card strong {
    margin-top: 16px;

    color: #fff;

    font-size: clamp(27px, 2vw, 37px);

    line-height: 1;
}

.club-status-card span {
    margin-top: 7px;

    color: rgba(255,255,255,.70);

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .11em;
    text-transform: uppercase;
}

.club-status-card b {
    width: fit-content;

    margin-top: 22px;
    padding: 9px 13px;

    border-radius: 999px;

    background: rgba(255,255,255,.93);

    color: #433b41;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.club-status-note {
    margin-top: 16px;

    padding: 21px 23px;

    border-left: 5px solid #e6a07d;
    border-radius: 0 12px 12px 0;

    background: #563f3a;
}

.club-status-note strong {
    display: block;

    color: #ffe5d6;

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

    font-size: 21px;
    font-weight: 400;
}

.club-status-note p {
    max-width: 1280px;

    margin-top: 7px;

    color: #d1c2bc;

    font-size: 13px;
    line-height: 1.68;
}

.club-tier-panel {
    display: none;

    margin-top: 13px;
    padding: 29px;

    border-radius: 14px;

    background: #f0dfd2;

    color: #443d3c;
}

.club-tier-panel.is-active {
    display: block;

    animation: clubOffersOpen .23s ease;
}

.club-tier-panel > span {
    color: #9b5d55;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.club-tier-panel h4 {
    margin-top: 8px;

    color: #433b3b;

    font-size: 33px;
}

.club-tier-panel > div {
    margin-top: 16px;

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

    gap: 18px 40px;
}

.club-tier-panel p {
    color: #62605f;

    font-size: 14px;
    line-height: 1.78;
}

.club-cycle {
    margin-top: 38px;

    padding: 30px;

    border-radius: 16px;

    display: grid;
    grid-template-columns: .8fr 1.2fr;

    gap: 45px;

    background: #2f3e42;

    box-shadow:
        inset 0 0 0 1px rgba(239, 171, 139, .18);
}

.club-cycle-copy h4 {
    color: #fff1e6;

    font-size: 39px;
    line-height: 1.05;
}

.club-cycle-copy p {
    margin-top: 14px;

    color: #c2cdcb;

    font-size: 14px;
    line-height: 1.72;
}

.club-cycle-flow {
    display: grid;

    gap: 11px;
}

.club-cycle-flow > div {
    padding: 18px 20px;

    display: grid;
    grid-template-columns: 100px 1fr 32px 1.2fr;

    gap: 13px;

    align-items: center;

    border-left: 4px solid #eba583;
    border-radius: 0 10px 10px 0;

    background: #405257;
}

.club-cycle-flow small {
    color: #d3b0a3;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.club-cycle-flow strong {
    color: #fff0e7;

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

    font-size: 20px;
    font-weight: 400;
}

.club-cycle-flow span {
    color: #efa98c;

    font-size: 20px;
}

.club-cycle-flow p {
    color: #becac7;

    font-size: 11px;
    line-height: 1.45;
}

.club-access-facts {
    margin-top: 22px;

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

    overflow: hidden;

    border-radius: 14px;

    background: #523f39;

    box-shadow:
        inset 0 0 0 1px rgba(235, 164, 128, .17);
}

.club-access-facts > div {
    padding: 21px 22px;

    border-right:
        1px solid rgba(235, 164, 128, .15);
}

.club-access-facts > div:last-child {
    border-right: 0;
}

.club-access-facts small,
.club-access-facts strong,
.club-access-facts p {
    display: block;
}

.club-access-facts small {
    color: #cda89b;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.club-access-facts strong {
    margin-top: 6px;

    color: #f2ad8c;

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

    font-size: 29px;
    font-weight: 400;
}

.club-access-facts p {
    margin-top: 7px;

    color: #cfbfba;

    font-size: 11px;
    line-height: 1.55;
}

.club-benefits-grid {
    margin-top: 25px;

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

    gap: 12px;
}

.club-benefit-button {
    position: relative;

    min-height: 152px;

    padding: 21px 58px 21px 22px;

    border: 2px solid #c68d71;
    border-radius: 13px;

    background: linear-gradient(145deg, #704d45, #5b423f);

    color: #fff;

    cursor: pointer;
    text-align: left;

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

.club-benefit-button:hover {
    transform: translateY(-3px);

    border-color: #efbc9e;

    background: linear-gradient(145deg, #81574d, #684a46);
}

.club-benefit-button.is-active {
    border-color: #a9d1d1;

    background: linear-gradient(145deg, #45656a, #38565d);
}

.club-benefit-button small,
.club-benefit-button strong,
.club-benefit-button span {
    display: block;
}

.club-benefit-button small {
    color: #eeb296;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.club-benefit-button strong {
    margin-top: 6px;

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

    font-size: 22px;
    font-weight: 400;
}

.club-benefit-button span {
    margin-top: 8px;

    color: #d6cac6;

    font-size: 12px;
    line-height: 1.55;
}

.club-benefit-button b {
    position: absolute;

    right: 16px;
    bottom: 15px;

    padding: 8px 11px;

    border-radius: 999px;

    background: #f0a783;

    color: #3e3738;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.club-benefit-panel {
    display: none;

    margin-top: 13px;
    padding: 30px;

    border-radius: 14px;

    background: #e9ded6;

    color: #424447;
}

.club-benefit-panel.is-active {
    display: block;

    animation: clubOffersOpen .23s ease;
}

.club-benefit-panel > span {
    color: #9b5b55;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.club-benefit-panel h4 {
    max-width: 1100px;

    margin-top: 8px;

    color: #3d4043;

    font-size: 34px;
    line-height: 1.07;
}

.club-benefit-panel > div {
    margin-top: 18px;

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

    gap: 18px 40px;
}

.club-benefit-panel p {
    color: #606466;

    font-size: 14px;
    line-height: 1.78;
}

.offers-number-grid {
    margin-top: 36px;

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

    gap: 11px;
}

.offer-number {
    min-height: 225px;

    padding: 21px;

    border-radius: 14px;

    color: #fff;

    box-shadow:
        0 11px 25px rgba(8, 17, 21, .19);
}

.offer-free {
    background: #985744;
}

.offer-top {
    background: #5f5875;
}

.offer-points {
    background: #3e7479;
}

.offer-prize {
    background: #826148;
}

.offer-digital {
    background: #4e6680;
}

.offer-number small,
.offer-number strong,
.offer-number span,
.offer-number p {
    display: block;
}

.offer-number small {
    color: rgba(255,255,255,.70);

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .11em;
    text-transform: uppercase;
}

.offer-number strong {
    margin-top: 10px;

    color: #fff;

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

    font-size: clamp(29px, 2.1vw, 40px);

    font-weight: 400;
    line-height: 1;
}

.offer-number span {
    margin-top: 7px;

    color: #ffe4d4;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .08em;
    text-transform: uppercase;
}

.offer-number p {
    margin-top: 11px;

    color: rgba(255,255,255,.78);

    font-size: 11px;
    line-height: 1.58;
}

.offers-number-note {
    margin-top: 17px;

    padding: 23px 25px;

    border-left: 5px solid #86c5cb;
    border-radius: 0 12px 12px 0;

    background: #304b55;
}

.offers-number-note strong {
    display: block;

    color: #edf5f3;

    font-size: 22px;
}

.offers-number-note p {
    max-width: 1260px;

    margin-top: 8px;

    color: #c5d3d2;

    font-size: 13px;
    line-height: 1.7;
}

.offer-types-grid {
    margin-top: 25px;

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

    gap: 10px;
}

.offer-type-button {
    position: relative;

    min-height: 205px;

    padding: 20px 19px 58px;

    border: 2px solid #6ea1ab;
    border-radius: 13px;

    background: linear-gradient(145deg, #315d68, #294e5b);

    color: #fff;

    cursor: pointer;
    text-align: left;

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

.offer-type-button:hover {
    transform: translateY(-3px);

    border-color: #9ccbd1;

    background: linear-gradient(145deg, #3a6d77, #315c68);
}

.offer-type-button.is-active {
    border-color: #f0b092;

    background: linear-gradient(145deg, #8f584b, #704b53);
}

.offer-type-button small,
.offer-type-button strong,
.offer-type-button span {
    display: block;
}

.offer-type-button small {
    color: #dba7c3;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.offer-type-button strong {
    margin-top: 8px;

    color: #fff2e9;

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

    font-size: 21px;
    font-weight: 400;
}

.offer-type-button span {
    margin-top: 8px;

    color: #cbd9d9;

    font-size: 11px;
    line-height: 1.55;
}

.offer-type-button b {
    position: absolute;

    left: 18px;
    bottom: 16px;

    padding: 8px 11px;

    border-radius: 999px;

    background: #84c4c9;

    color: #263e46;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.offer-type-button.is-active b {
    background: #f0ae8e;
}

.offer-detail-panel {
    display: none;

    margin-top: 13px;
    padding: 29px 30px;

    border-radius: 14px;

    background: #e7e1dd;

    color: #41494c;
}

.offer-detail-panel.is-active {
    display: block;

    animation: clubOffersOpen .23s ease;
}

.offer-detail-panel > span {
    color: #93576e;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.offer-detail-panel h4 {
    max-width: 1100px;

    margin-top: 8px;

    color: #3b4245;

    font-size: 34px;
    line-height: 1.08;
}

.offer-detail-panel > div:not(.dining-price-grid) {
    margin-top: 18px;

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

    gap: 17px 39px;
}

.offer-detail-panel p {
    color: #62696b;

    font-size: 14px;
    line-height: 1.78;
}

.dining-offer-lead {
    max-width: 1270px;

    margin-top: 16px;
}

.dining-price-grid {
    margin-top: 22px;

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

    gap: 9px;
}

.dining-price {
    padding: 20px;

    border-radius: 11px;

    color: #fff;
}

.dining-prive {
    background: #59475f;
}

.dining-silver {
    background: #6c797e;
}

.dining-bronze {
    background: #9b6650;
}

.dining-public {
    background: #465b62;
}

.dining-price small,
.dining-price strong,
.dining-price span {
    display: block;
}

.dining-price small {
    color: rgba(255,255,255,.70);

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.dining-price strong {
    margin-top: 8px;

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

    font-size: 32px;
    font-weight: 400;
}

.dining-price span {
    margin-top: 6px;

    color: rgba(255,255,255,.70);

    font-size: 10px;
}

.dining-price-note {
    margin-top: 14px;

    color: #727778 !important;

    font-size: 11px !important;
}

@media (max-width: 1250px) {

    .club-offers-layout {
        grid-template-columns: 140px minmax(0, 1fr);
        gap: 28px;
    }

    .club-status-grid,
    .club-access-facts,
    .dining-price-grid {
        grid-template-columns: repeat(2, 1fr);
    }

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

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

}

@media (max-width: 950px) {

    .club-offers-layout {
        width: calc(100% - 28px);

        display: block;

        padding: 44px 0 66px;
    }

    .club-offers-sidebar {
        position: relative;
        top: auto;

        margin-bottom: 27px;
    }

    .club-offers-sidebar-title {
        display: none;
    }

    .club-offers-sidebar-nav {
        display: grid;
        grid-template-columns: repeat(5, max-content);

        overflow-x: auto;

        padding-bottom: 7px;
    }

    .club-offers-sidebar-link {
        min-width: 120px;
        text-align: center;
    }

    .club-offers-sidebar-link::after {
        display: none;
    }

    .club-offers-entry-grid {
        grid-template-columns: 1fr;
    }

    .club-offers-entry {
        aspect-ratio: 5 / 3;
    }

    .club-cycle,
    .club-tier-panel > div,
    .club-benefit-panel > div,
    .offer-detail-panel > div:not(.dining-price-grid) {
        grid-template-columns: 1fr;
    }

    .club-benefits-grid {
        grid-template-columns: 1fr;
    }

}

@media (max-width: 650px) {

    .club-offers-intro h2 {
        font-size: 43px;
    }

    .club-offers-lead,
    .player-club-intro > p,
    .special-offers-intro > p {
        font-size: 16px;
    }

    .club-offers-entry {
        aspect-ratio: auto;
        min-height: 440px;
    }

    .club-offers-entry-copy {
        left: 20px;
        right: 20px;
        bottom: 20px;
    }

    .club-offers-entry-copy > strong {
        font-size: 34px;
    }

    .club-offers-panel {
        padding: 25px 18px;
    }

    .player-club-intro,
    .special-offers-intro {
        padding-right: 48px;
    }

    .player-club-intro h3,
    .special-offers-intro h3 {
        font-size: 38px;
    }

    .club-status-grid,
    .club-access-facts,
    .offers-number-grid,
    .offer-types-grid,
    .dining-price-grid {
        grid-template-columns: 1fr;
    }

}

/* PLAYER CLUB & OFFERS END */
/* FOOD & NIGHTLIFE START */

.food-nightlife-section {
    display: none;

    position: relative;

    overflow: hidden;

    background:
        radial-gradient(circle at 88% 6%, rgba(127, 113, 64, .14), transparent 28%),
        radial-gradient(circle at 7% 64%, rgba(151, 67, 48, .13), transparent 29%),
        linear-gradient(145deg, #382821 0%, #463029 47%, #303830 100%);

    color: #f7ede3;
}

.food-nightlife-section.is-active {
    display: block;
}

.food-nightlife-layout {
    width: min(1900px, calc(100% - 44px));

    margin: 0 auto;

    padding: 62px 0 88px;

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

    gap: 40px;
}

.food-nightlife-sidebar {
    position: sticky;

    top: calc(var(--header-height) + 22px);

    align-self: start;
}

.food-nightlife-sidebar-title {
    display: block;

    margin-bottom: 15px;

    color: #aa9c92;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .16em;

    text-transform: uppercase;
}

.food-nightlife-sidebar-nav {
    display: flex;
    flex-direction: column;

    gap: 8px;
}

.food-nightlife-sidebar-link {
    position: relative;

    width: 100%;
    min-height: 51px;

    padding: 0 34px 0 14px;

    border: 2px solid #746153;
    border-radius: 11px;

    background:
        linear-gradient(
            135deg,
            #59473b,
            #493b33
        );

    color: #f4e9df;

    cursor: pointer;

    text-align: left;

    font-size: 12px;
    font-weight: 800;

    box-shadow: 0 8px 18px rgba(15, 10, 7, .15);

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

.food-nightlife-sidebar-link::after {
    content: "›";

    position: absolute;

    top: 50%;
    right: 13px;

    color: #e6ae74;

    font-size: 20px;

    transform: translateY(-50%);
}

.food-nightlife-sidebar-link:hover {
    transform: translateX(4px);

    border-color: #a9876e;

    background:
        linear-gradient(
            135deg,
            #685142,
            #554337
        );
}

.food-nightlife-sidebar-link.is-active {
    border-color: #eeb27b;

    background:
        linear-gradient(
            135deg,
            #b96850,
            #8a704d
        );

    color: #fff;
}

.food-nightlife-main {
    min-width: 0;
}

.food-nightlife-kicker {
    display: block;

    margin-bottom: 13px;

    color: #efb076;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .2em;

    text-transform: uppercase;
}

.food-nightlife-intro h2,
.food-nightlife-panel h3,
.food-nightlife-panel h4,
.casino-evening-flow h3,
.food-faq-heading h3 {
    font-family: Georgia, "Times New Roman", serif;

    font-weight: 400;

    letter-spacing: -.035em;
}

.food-nightlife-intro-grid {
    max-width: 1540px;

    display: grid;

    grid-template-columns:
        minmax(0, 1.42fr)
        minmax(340px, .58fr);

    gap: 35px;

    align-items: stretch;
}

.food-nightlife-intro h2 {
    max-width: 1120px;

    color: #fff0e1;

    font-size: clamp(48px, 4.3vw, 80px);

    line-height: .98;
}

.food-nightlife-intro h2 em {
    display: block;

    color: #e6a86e;

    font-style: normal;
}

.food-nightlife-lead {
    max-width: 1230px;

    margin-top: 25px;

    color: #e4d7cc;

    font-size: 19px;

    line-height: 1.75;
}

.food-nightlife-copy {
    margin-top: 27px;

    display: grid;

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

    gap: 18px 42px;
}

.food-nightlife-copy p {
    color: #baa99c;

    font-size: 14px;

    line-height: 1.8;
}

.food-nightlife-photo {
    position: relative;

    min-height: 470px;

    overflow: hidden;

    margin: 0;

    border: 2px solid #8b6c52;
    border-radius: 18px;

    background: #30241e;

    box-shadow:
        0 18px 40px rgba(13, 8, 5, .24);
}

.food-nightlife-photo img {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;
}

.food-nightlife-photo-shade {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(20, 13, 9, .02) 18%,
            rgba(20, 13, 9, .20) 50%,
            rgba(20, 13, 9, .91) 100%
        );
}

.food-nightlife-photo figcaption {
    position: absolute;

    z-index: 2;

    left: 24px;
    right: 24px;
    bottom: 24px;
}

.food-nightlife-photo small {
    display: block;

    color: #d3ac85;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .14em;

    text-transform: uppercase;
}

.food-nightlife-photo strong {
    display: block;

    margin-top: 7px;

    color: #fff0df;

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

    font-size: 29px;
    font-weight: 400;

    line-height: 1.08;
}

.food-nightlife-facts {
    max-width: 1540px;

    margin-top: 32px;

    display: grid;

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

    gap: 11px;
}

.food-nightlife-facts > div {
    min-height: 180px;

    padding: 21px 22px;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            #564237,
            #45372f
        );

    color: #fff;

    box-shadow:
        0 10px 24px rgba(12, 8, 5, .16),
        inset 0 0 0 1px rgba(226, 177, 117, .17);
}

.food-nightlife-facts > div:nth-child(2) {
    background:
        linear-gradient(
            145deg,
            #486450,
            #394d40
        );
}

.food-nightlife-facts > div:nth-child(3) {
    background:
        linear-gradient(
            145deg,
            #86523f,
            #6a4437
        );
}

.food-nightlife-facts > div:nth-child(4) {
    background:
        linear-gradient(
            145deg,
            #5f4055,
            #4a3748
        );
}

.food-nightlife-facts small,
.food-nightlife-facts strong,
.food-nightlife-facts span,
.food-nightlife-facts p {
    display: block;
}

.food-nightlife-facts small {
    color: rgba(255,255,255,.67);

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;

    text-transform: uppercase;
}

.food-nightlife-facts strong {
    margin-top: 8px;

    color: #fff;

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

    font-size: 29px;
    font-weight: 400;
}

.food-nightlife-facts span {
    margin-top: 5px;

    color: #f1c49c;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .08em;

    text-transform: uppercase;
}

.food-nightlife-facts p {
    margin-top: 9px;

    color: rgba(255,255,255,.76);

    font-size: 11px;

    line-height: 1.55;
}

.food-nightlife-note {
    margin-top: 15px;

    padding: 21px 23px;

    border-left: 5px solid #e4a269;
    border-radius: 0 12px 12px 0;

    background: #49362d;
}

.food-nightlife-note strong {
    display: block;

    color: #f9dbc0;

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

    font-size: 21px;
    font-weight: 400;
}

.food-nightlife-note p {
    max-width: 1300px;

    margin-top: 7px;

    color: #c6b5a8;

    font-size: 13px;

    line-height: 1.68;
}

.food-nightlife-choice-grid {
    margin-top: 30px;

    display: grid;

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

    gap: 13px;
}

.food-nightlife-choice {
    position: relative;

    min-height: 205px;

    padding: 22px 22px 65px;

    border: 2px solid transparent;
    border-radius: 15px;

    color: #fff;

    cursor: pointer;

    text-align: left;

    box-shadow:
        0 11px 27px rgba(11, 7, 5, .18);

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.choice-360 {
    border-color: #c48a59;

    background:
        linear-gradient(
            145deg,
            #795139,
            #5d4233
        );
}

.choice-may {
    border-color: #77a27c;

    background:
        linear-gradient(
            145deg,
            #4a6a50,
            #3a5542
        );
}

.choice-buffet {
    border-color: #d28769;

    background:
        linear-gradient(
            145deg,
            #8a4f3d,
            #694035
        );
}

.choice-night {
    border-color: #9a7194;

    background:
        linear-gradient(
            145deg,
            #61455d,
            #4b394d
        );
}

.food-nightlife-choice:hover,
.food-nightlife-choice.is-active {
    transform: translateY(-5px);

    border-color: #ffd0ab;

    box-shadow:
        0 18px 36px rgba(10, 6, 4, .25);
}

.food-nightlife-choice small {
    color: #f1bd8e;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;

    text-transform: uppercase;
}

.choice-may small {
    color: #a8d2a7;
}

.choice-night small {
    color: #d9a8d3;
}

.food-nightlife-choice > strong {
    display: block;

    margin-top: 8px;

    color: #fff1e5;

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

    font-size: 25px;
    font-weight: 400;
}

.food-nightlife-choice > span {
    display: block;

    margin-top: 9px;

    color: #d2c6bd;

    font-size: 12px;

    line-height: 1.62;
}

.food-nightlife-choice > b {
    position: absolute;

    left: 21px;
    bottom: 18px;

    padding: 9px 13px;

    border-radius: 999px;

    background: #efad78;

    color: #38342f;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;

    text-transform: uppercase;
}

.food-nightlife-choice > b i {
    font-style: normal;
}

.food-nightlife-panel {
    display: none;

    position: relative;

    margin-top: 17px;

    padding: 40px;

    border-radius: 19px;

    background:
        radial-gradient(circle at 90% 0%, rgba(182, 124, 69, .09), transparent 28%),
        linear-gradient(145deg, #45342b, #34372f);

    box-shadow:
        0 18px 42px rgba(10, 7, 4, .19);
}

.food-nightlife-panel.is-active {
    display: block;

    animation: foodOpen .25s ease;
}

@keyframes foodOpen {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }

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

.food-nightlife-panel-close {
    position: absolute;

    top: 23px;
    right: 23px;

    width: 42px;
    height: 42px;

    border: 2px solid #e5a36c;
    border-radius: 50%;

    background: #794c39;

    color: #fff;

    cursor: pointer;

    font-size: 24px;

    transition:
        transform .2s ease,
        background .2s ease;
}

.food-nightlife-panel-close:hover {
    transform: rotate(90deg);

    background: #b7674d;
}

.food-nightlife-panel > h3 {
    max-width: 1230px;

    padding-right: 60px;

    color: #fff0e1;

    font-size: clamp(42px, 3.55vw, 66px);

    line-height: 1.02;
}

.food-nightlife-panel > h3 em {
    display: block;

    color: #e8a66e;

    font-style: normal;
}

.food-nightlife-panel-lead {
    max-width: 1400px;

    margin-top: 22px;

    color: #ded2c8;

    font-size: 18px;

    line-height: 1.76;
}

.food-story-grid {
    margin-top: 28px;

    display: grid;

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

    gap: 15px;
}

.food-story-grid article {
    padding: 25px;

    border-radius: 13px;

    background: #514038;

    box-shadow:
        inset 0 0 0 1px rgba(225, 171, 111, .18);
}

.food-story-grid article > span {
    color: #dfa773;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;

    text-transform: uppercase;
}

.food-story-grid h4 {
    margin-top: 7px;

    color: #fff0df;

    font-size: 27px;

    line-height: 1.14;
}

.food-story-grid p {
    margin-top: 12px;

    color: #c1b2a7;

    font-size: 14px;

    line-height: 1.76;
}

.restaurant-mood-grid,
.maygarden-flavour-grid {
    margin-top: 17px;

    display: grid;

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

    gap: 9px;
}

.restaurant-mood-grid > div,
.maygarden-flavour-grid > div {
    padding: 18px;

    border-radius: 10px;

    background: #383b33;

    box-shadow:
        inset 0 0 0 1px rgba(145, 165, 126, .18);
}

.restaurant-mood-grid small,
.restaurant-mood-grid strong,
.restaurant-mood-grid p,
.maygarden-flavour-grid span,
.maygarden-flavour-grid p {
    display: block;
}

.restaurant-mood-grid small {
    color: #aeb691;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .11em;

    text-transform: uppercase;
}

.restaurant-mood-grid strong,
.maygarden-flavour-grid span {
    margin-top: 5px;

    color: #f1dcc8;

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

    font-size: 18px;
    font-weight: 400;
}

.restaurant-mood-grid p,
.maygarden-flavour-grid p {
    margin-top: 6px;

    color: #aaa9a0;

    font-size: 11px;

    line-height: 1.52;
}

.maygarden-flavour-grid > div {
    background: #3b5140;
}

.maygarden-flavour-grid span {
    color: #d9e9d3;
}

.buffet-fact-strip,
.nightlife-number-grid {
    margin-top: 26px;

    display: grid;

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

    overflow: hidden;

    border-radius: 14px;

    background: #503a31;

    box-shadow:
        inset 0 0 0 1px rgba(230, 169, 103, .18);
}

.buffet-fact-strip > div,
.nightlife-number-grid > div {
    padding: 20px 22px;

    border-right:
        1px solid rgba(230, 169, 103, .15);
}

.buffet-fact-strip > div:last-child,
.nightlife-number-grid > div:last-child {
    border-right: 0;
}

.buffet-fact-strip small,
.buffet-fact-strip strong,
.buffet-fact-strip p,
.nightlife-number-grid small,
.nightlife-number-grid strong,
.nightlife-number-grid p {
    display: block;
}

.buffet-fact-strip small,
.nightlife-number-grid small {
    color: #c79c79;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;

    text-transform: uppercase;
}

.buffet-fact-strip strong,
.nightlife-number-grid strong {
    margin-top: 5px;

    color: #f3ba82;

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

    font-size: 28px;
    font-weight: 400;
}

.buffet-fact-strip p,
.nightlife-number-grid p {
    margin-top: 7px;

    color: #bfaea2;

    font-size: 11px;

    line-height: 1.53;
}

.nightlife-panel {
    background:
        radial-gradient(circle at 90% 0%, rgba(140, 91, 135, .13), transparent 28%),
        linear-gradient(145deg, #443245, #30363d);
}

.nightlife-number-grid {
    background: #433644;
}

.casino-evening-flow {
    margin-top: 35px;

    padding: 32px;

    border-radius: 18px;

    background:
        linear-gradient(
            145deg,
            #3d4237,
            #33392f
        );

    box-shadow:
        inset 0 0 0 1px rgba(170, 179, 112, .17);
}

.casino-evening-flow h3 {
    color: #fff0df;

    font-size: clamp(34px, 2.8vw, 53px);

    line-height: 1.05;
}

.casino-evening-flow > p {
    max-width: 1200px;

    margin-top: 13px;

    color: #bbb9a9;

    font-size: 14px;

    line-height: 1.72;
}

.casino-evening-flow-grid {
    margin-top: 24px;

    display: grid;

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

    gap: 9px;
}

.casino-evening-flow-grid article {
    padding: 19px;

    border-top: 3px solid #d8a16e;
    border-radius: 10px;

    background: #48493c;
}

.casino-evening-flow-grid small {
    color: #b8b384;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .11em;

    text-transform: uppercase;
}

.casino-evening-flow-grid strong {
    display: block;

    margin-top: 6px;

    color: #f5dfc9;

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

    font-size: 19px;
    font-weight: 400;
}

.casino-evening-flow-grid p {
    margin-top: 7px;

    color: #b0ad9f;

    font-size: 11px;

    line-height: 1.56;
}

.food-faq-trigger {
    width: 100%;

    margin-top: 29px;

    padding: 22px 24px;

    border: 2px solid #a77b59;
    border-radius: 14px;

    display: grid;

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

    align-items: center;

    gap: 17px;

    background:
        linear-gradient(
            110deg,
            #754634,
            #4e4a37
        );

    color: #fff;

    cursor: pointer;

    text-align: left;

    box-shadow:
        0 12px 28px rgba(11, 7, 4, .18);
}

.food-faq-icon {
    width: 45px;
    height: 45px;

    border: 2px solid #e4a66f;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #f3bd88;

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

    font-size: 23px;
}

.food-faq-copy small,
.food-faq-copy strong,
.food-faq-copy span {
    display: block;
}

.food-faq-copy small {
    color: #d5ad89;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;

    text-transform: uppercase;
}

.food-faq-copy strong {
    margin-top: 3px;

    color: #fff0df;

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

    font-size: 23px;
    font-weight: 400;
}

.food-faq-copy span {
    margin-top: 4px;

    color: #d2c5b9;

    font-size: 11px;
}

.food-faq-trigger > b {
    padding: 9px 13px;

    border-radius: 999px;

    background: #e4a06b;

    color: #38342f;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;

    text-transform: uppercase;
}

.food-faq-panel {
    display: none;

    margin-top: 12px;

    padding: 29px;

    border-radius: 14px;

    background: #3f342e;
}

.food-faq-panel.is-active {
    display: block;

    animation: foodOpen .23s ease;
}

.food-faq-heading h3 {
    color: #fff0df;

    font-size: clamp(33px, 2.7vw, 50px);
}

.food-faq-grid {
    margin-top: 22px;

    display: grid;

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

    gap: 10px;
}

.food-faq-item {
    border: 2px solid #7d6654;
    border-radius: 11px;

    background: #514238;
}

.food-faq-item summary {
    min-height: 75px;

    padding: 16px 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    color: #fff0e1;

    cursor: pointer;

    list-style: none;

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

    font-size: 16px;

    line-height: 1.38;
}

.food-faq-item summary::-webkit-details-marker {
    display: none;
}

.food-faq-item summary span {
    width: 30px;
    height: 30px;

    flex: 0 0 30px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #e3a168;

    color: #3c352f;

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

    font-size: 18px;
}

.food-faq-item[open] {
    border-color: #d9986a;

    background: #64473a;
}

.food-faq-item[open] summary span {
    transform: rotate(45deg);
}

.food-faq-item > p {
    padding: 0 18px 19px;

    color: #d0c0b3;

    font-size: 13px;

    line-height: 1.7;
}

@media (max-width: 1250px) {

    .food-nightlife-layout {
        grid-template-columns:
            140px minmax(0, 1fr);

        gap: 28px;
    }

    .food-nightlife-intro-grid {
        grid-template-columns:
            1fr 300px;
    }

    .food-nightlife-facts {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .restaurant-mood-grid,
    .maygarden-flavour-grid,
    .casino-evening-flow-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}

@media (max-width: 950px) {

    .food-nightlife-layout {
        width: calc(100% - 28px);

        display: block;

        padding: 44px 0 66px;
    }

    .food-nightlife-sidebar {
        position: relative;

        top: auto;

        margin-bottom: 27px;
    }

    .food-nightlife-sidebar-title {
        display: none;
    }

    .food-nightlife-sidebar-nav {
        display: grid;

        grid-template-columns:
            repeat(5, max-content);

        overflow-x: auto;

        padding-bottom: 7px;
    }

    .food-nightlife-sidebar-link {
        min-width: 120px;

        text-align: center;
    }

    .food-nightlife-sidebar-link::after {
        display: none;
    }

    .food-nightlife-intro-grid,
    .food-nightlife-choice-grid {
        grid-template-columns: 1fr;
    }

    .food-nightlife-photo {
        min-height: 360px;
    }

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

}

@media (max-width: 650px) {

    .food-nightlife-intro h2 {
        font-size: 43px;
    }

    .food-nightlife-lead,
    .food-nightlife-panel-lead {
        font-size: 16px;
    }

    .food-nightlife-copy,
    .food-nightlife-facts,
    .restaurant-mood-grid,
    .maygarden-flavour-grid,
    .buffet-fact-strip,
    .nightlife-number-grid,
    .casino-evening-flow-grid {
        grid-template-columns: 1fr;
    }

    .food-nightlife-panel {
        padding: 25px 18px;
    }

    .food-nightlife-panel > h3 {
        padding-right: 48px;

        font-size: 38px;
    }

    .food-faq-trigger {
        grid-template-columns:
            44px 1fr;
    }

    .food-faq-trigger > b {
        grid-column: 2;

        width: fit-content;
    }

}

/* FOOD & NIGHTLIFE END */


/* SHOWS & EVENTS START */

.shows-events-section {
    display: none;
    position: relative;
    overflow: hidden;

    background:
        radial-gradient(circle at 88% 8%, rgba(102, 79, 147, .15), transparent 29%),
        radial-gradient(circle at 8% 68%, rgba(195, 80, 88, .10), transparent 28%),
        linear-gradient(145deg, #171923 0%, #20202c 49%, #17262e 100%);

    color: #f5ece6;
}

.shows-events-section.is-active {
    display: block;
}

.shows-events-layout {
    width: min(1900px, calc(100% - 44px));
    margin: 0 auto;
    padding: 62px 0 88px;

    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 40px;
}

.shows-events-sidebar {
    position: sticky;
    top: calc(var(--header-height) + 22px);
    align-self: start;
}

.shows-events-sidebar-title {
    display: block;
    margin-bottom: 15px;

    color: #9897a3;

    font-size: 9px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.shows-events-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.shows-events-sidebar-link {
    position: relative;

    width: 100%;
    min-height: 51px;

    padding: 0 34px 0 14px;

    border: 2px solid #586a77;
    border-radius: 11px;

    background: linear-gradient(135deg, #293842, #222e37);

    color: #edf0ef;

    cursor: pointer;
    text-align: left;

    font-size: 12px;
    font-weight: 800;

    box-shadow: 0 8px 18px rgba(4, 8, 12, .17);

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

.shows-events-sidebar-link::after {
    content: "›";

    position: absolute;
    top: 50%;
    right: 13px;

    color: #ec9d93;

    font-size: 20px;

    transform: translateY(-50%);
}

.shows-events-sidebar-link:hover {
    transform: translateX(4px);

    border-color: #8198a7;

    background: linear-gradient(135deg, #354753, #2a3944);
}

.shows-events-sidebar-link.is-active {
    border-color: #f0a08e;

    background: linear-gradient(135deg, #b75d67, #7f536d);

    color: #fff;
}

.shows-events-main {
    min-width: 0;
}

.shows-events-kicker {
    display: block;

    margin-bottom: 13px;

    color: #ed9d91;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .2em;
    text-transform: uppercase;
}

.shows-events-intro h2,
.shows-events-panel h3,
.shows-events-panel h4,
.shows-faq-heading h3,
.private-space h4 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: -.035em;
}

.shows-events-intro-grid {
    max-width: 1540px;

    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(330px, .55fr);

    gap: 34px;

    align-items: stretch;
}

.shows-events-intro h2 {
    max-width: 1100px;

    color: #fff1e9;

    font-size: clamp(48px, 4.3vw, 80px);
    line-height: .98;
}

.shows-events-intro h2 em {
    display: block;

    color: #e895a0;

    font-style: normal;
}

.shows-events-lead {
    max-width: 1200px;

    margin-top: 25px;

    color: #e0d8d8;

    font-size: 19px;
    line-height: 1.75;
}

.shows-events-copy {
    margin-top: 27px;

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

    gap: 18px 42px;
}

.shows-events-copy p {
    color: #aaaeb4;

    font-size: 14px;
    line-height: 1.78;
}

.shows-events-feature-image {
    position: relative;

    min-height: 450px;

    overflow: hidden;

    margin: 0;

    border: 2px solid #796b91;
    border-radius: 18px;

    background: #1a1b24;

    box-shadow: 0 17px 38px rgba(4, 6, 10, .24);
}

.shows-events-feature-image img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;
}

.shows-events-image-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(12, 13, 18, .03) 15%,
            rgba(12, 13, 18, .25) 52%,
            rgba(12, 13, 18, .92) 100%
        );
}

.shows-events-feature-image figcaption {
    position: absolute;
    z-index: 2;

    left: 24px;
    right: 24px;
    bottom: 24px;
}

.shows-events-feature-image small {
    display: block;

    color: #c7a7c9;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .14em;
    text-transform: uppercase;
}

.shows-events-feature-image strong {
    display: block;

    margin-top: 7px;

    color: #fff0e7;

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

    font-size: 28px;
    font-weight: 400;
    line-height: 1.08;
}

.shows-events-numbers {
    max-width: 1540px;

    margin-top: 32px;

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

    gap: 11px;
}

.shows-number {
    min-height: 180px;

    padding: 21px 22px;

    border-radius: 14px;

    color: #fff;

    box-shadow: 0 10px 25px rgba(5, 7, 11, .18);
}

.shows-number-theatre {
    background: linear-gradient(145deg, #694d73, #51405e);
}

.shows-number-standing {
    background: linear-gradient(145deg, #884b62, #683d51);
}

.shows-number-dining {
    background: linear-gradient(145deg, #4c6374, #384d5d);
}

.shows-number-music {
    background: linear-gradient(145deg, #3f757a, #315c65);
}

.shows-number small,
.shows-number strong,
.shows-number span,
.shows-number p {
    display: block;
}

.shows-number small {
    color: rgba(255,255,255,.68);

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.shows-number strong {
    margin-top: 8px;

    color: #fff;

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

    font-size: 35px;
    font-weight: 400;
    line-height: 1;
}

.shows-number span {
    margin-top: 7px;

    color: #f4ccd0;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .09em;
    text-transform: uppercase;
}

.shows-number p {
    margin-top: 10px;

    color: rgba(255,255,255,.76);

    font-size: 11px;
    line-height: 1.55;
}

.shows-events-number-note {
    margin-top: 15px;

    padding: 21px 23px;

    border-left: 5px solid #df8796;
    border-radius: 0 12px 12px 0;

    background: #292b38;
}

.shows-events-number-note strong {
    display: block;

    color: #f5dadd;

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

    font-size: 20px;
    font-weight: 400;
}

.shows-events-number-note p {
    max-width: 1300px;

    margin-top: 7px;

    color: #aeb2b8;

    font-size: 13px;
    line-height: 1.67;
}

.shows-events-choice-grid {
    margin-top: 30px;

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

    gap: 13px;
}

.shows-events-choice {
    position: relative;

    min-height: 220px;

    padding: 23px 23px 66px;

    border: 2px solid transparent;
    border-radius: 15px;

    color: #fff;

    cursor: pointer;
    text-align: left;

    box-shadow: 0 11px 27px rgba(5, 7, 10, .18);

    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease;
}

.theatre-choice {
    border-color: #a177b0;
    background: linear-gradient(145deg, #5b4568, #463852);
}

.live-choice {
    border-color: #6ca7ad;
    background: linear-gradient(145deg, #356d74, #2b5862);
}

.private-choice {
    border-color: #c68586;
    background: linear-gradient(145deg, #7b4c58, #613d4b);
}

.shows-events-choice:hover,
.shows-events-choice.is-active {
    transform: translateY(-5px);

    border-color: #ffc0b0;

    box-shadow: 0 17px 36px rgba(4, 6, 9, .27);
}

.shows-events-choice small {
    color: #ec9f9d;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.live-choice small {
    color: #8bd3d4;
}

.shows-events-choice > strong {
    display: block;

    margin-top: 8px;

    color: #fff1e8;

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

    font-size: 26px;
    font-weight: 400;
}

.shows-events-choice > span {
    display: block;

    margin-top: 9px;

    color: #c9c4c8;

    font-size: 12px;
    line-height: 1.62;
}

.shows-events-choice > b {
    position: absolute;

    left: 22px;
    bottom: 18px;

    padding: 9px 13px;

    border-radius: 999px;

    background: #efa090;

    color: #303940;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.live-choice > b {
    background: #80c8cc;
}

.shows-events-choice > b i {
    font-style: normal;
}

.shows-events-panel {
    display: none;

    position: relative;

    margin-top: 17px;
    padding: 40px;

    border-radius: 19px;

    background:
        radial-gradient(circle at 90% 0%, rgba(124, 96, 163, .10), transparent 28%),
        linear-gradient(145deg, #252431, #1e2630);

    box-shadow: 0 18px 42px rgba(4, 6, 9, .20);
}

.shows-events-panel.is-active {
    display: block;

    animation: showsOpen .25s ease;
}

@keyframes showsOpen {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }

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

.shows-events-panel-close {
    position: absolute;

    top: 23px;
    right: 23px;

    width: 42px;
    height: 42px;

    border: 2px solid #df8f98;
    border-radius: 50%;

    background: #693f50;

    color: #fff;

    cursor: pointer;

    font-size: 24px;

    transition:
        transform .2s ease,
        background .2s ease;
}

.shows-events-panel-close:hover {
    transform: rotate(90deg);

    background: #af5a65;
}

.shows-events-panel > h3 {
    max-width: 1230px;

    padding-right: 60px;

    color: #fff1e8;

    font-size: clamp(42px, 3.55vw, 66px);
    line-height: 1.02;
}

.shows-events-panel > h3 em {
    display: block;

    color: #e99aa5;

    font-style: normal;
}

.shows-events-panel-lead {
    max-width: 1400px;

    margin-top: 22px;

    color: #d5d3d5;

    font-size: 18px;
    line-height: 1.75;
}

.theatre-capacity-grid,
.live-music-facts {
    margin-top: 27px;

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

    overflow: hidden;

    border-radius: 14px;

    background: #30303e;

    box-shadow:
        inset 0 0 0 1px rgba(176, 132, 181, .20);
}

.theatre-capacity-grid > div,
.live-music-facts > div {
    padding: 20px 22px;

    border-right:
        1px solid rgba(176, 132, 181, .18);
}

.theatre-capacity-grid > div:last-child,
.live-music-facts > div:last-child {
    border-right: 0;
}

.theatre-capacity-grid small,
.theatre-capacity-grid strong,
.theatre-capacity-grid span,
.live-music-facts small,
.live-music-facts strong,
.live-music-facts p {
    display: block;
}

.theatre-capacity-grid small,
.live-music-facts small {
    color: #ab94af;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.theatre-capacity-grid strong,
.live-music-facts strong {
    margin-top: 5px;

    color: #f1a1a7;

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

    font-size: 30px;
    font-weight: 400;
}

.theatre-capacity-grid span,
.live-music-facts p {
    margin-top: 6px;

    color: #aeb2b7;

    font-size: 11px;
    line-height: 1.52;
}

.shows-events-story-grid {
    margin-top: 28px;

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

    gap: 15px;
}

.shows-events-story-grid article {
    padding: 25px;

    border-radius: 13px;

    background: #30313d;

    box-shadow:
        inset 0 0 0 1px rgba(126, 144, 163, .19);
}

.shows-events-story-grid article > span {
    color: #d58fa4;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.shows-events-story-grid h4 {
    margin-top: 7px;

    color: #fff0e6;

    font-size: 27px;
    line-height: 1.14;
}

.shows-events-story-grid p {
    margin-top: 12px;

    color: #b3b5ba;

    font-size: 14px;
    line-height: 1.76;
}

.theatre-practical {
    margin-top: 17px;

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

    gap: 10px;
}

.theatre-practical > div {
    padding: 19px;

    border-left: 3px solid #da8997;

    background: #292b36;
}

.theatre-practical small,
.theatre-practical strong,
.theatre-practical p {
    display: block;
}

.theatre-practical small {
    color: #a78fa5;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.theatre-practical strong {
    margin-top: 5px;

    color: #f0b0ac;

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

    font-size: 21px;
    font-weight: 400;
}

.theatre-practical p {
    margin-top: 6px;

    color: #aeb1b5;

    font-size: 11px;
    line-height: 1.5;
}

.show-format-buttons {
    margin-top: 24px;

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

    gap: 11px;
}

.show-format-buttons button {
    position: relative;

    min-height: 125px;

    padding: 19px 52px 19px 20px;

    border: 2px solid #826f9b;
    border-radius: 12px;

    background: linear-gradient(145deg, #403650, #343040);

    color: #fff;

    cursor: pointer;
    text-align: left;
}

.show-format-buttons button:hover {
    border-color: #bd99ce;

    transform: translateY(-2px);
}

.show-format-buttons button.is-active {
    border-color: #f1a297;

    background: linear-gradient(145deg, #774a58, #5c4053);
}

.show-format-buttons small,
.show-format-buttons strong,
.show-format-buttons span {
    display: block;
}

.show-format-buttons small {
    color: #d29aad;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.show-format-buttons strong {
    margin-top: 6px;

    color: #fff0e8;

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

    font-size: 20px;
    font-weight: 400;
}

.show-format-buttons span {
    margin-top: 6px;

    color: #b3b2b8;

    font-size: 11px;
}

.show-format-buttons b {
    position: absolute;

    right: 14px;
    bottom: 14px;

    color: #ef9e98;

    font-size: 18px;
}

.show-detail-panel {
    display: none;

    margin-top: 12px;

    padding: 27px 29px;

    border-radius: 13px;

    background: #e5e0dc;
}

.show-detail-panel.is-active {
    display: block;

    animation: showsOpen .22s ease;
}

.show-detail-panel > span {
    color: #94536d;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.show-detail-panel h4 {
    max-width: 1100px;

    margin-top: 7px;

    color: #3d4246;

    font-size: 32px;
}

.show-detail-panel > div {
    margin-top: 17px;

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

    gap: 17px 39px;
}

.show-detail-panel p {
    color: #62686b;

    font-size: 14px;
    line-height: 1.76;
}

.private-space-grid {
    margin-top: 28px;

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

    gap: 14px;
}

.private-space {
    padding: 27px;

    border-radius: 15px;

    background: #30313d;
}

.theatre-space {
    box-shadow:
        inset 0 0 0 2px rgba(164, 119, 170, .36);
}

.compass-space {
    box-shadow:
        inset 0 0 0 2px rgba(102, 166, 171, .36);
}

.private-space > span {
    color: #d990a6;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.private-space h4 {
    margin-top: 8px;

    color: #fff0e7;

    font-size: 28px;
}

.private-space-numbers {
    margin-top: 18px;

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

    gap: 7px;
}

.theatre-space .private-space-numbers {
    grid-template-columns: repeat(3, 1fr);
}

.private-space-numbers > div {
    padding: 13px 10px;

    border-radius: 8px;

    background: #242732;
}

.private-space-numbers strong,
.private-space-numbers small {
    display: block;
}

.private-space-numbers strong {
    color: #eea2a7;

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

    font-size: 22px;
    font-weight: 400;
}

.private-space-numbers small {
    margin-top: 4px;

    color: #989fa5;

    font-size: 8px;
    font-weight: 900;

    text-transform: uppercase;
}

.private-space > p {
    margin-top: 17px;

    color: #b3b6ba;

    font-size: 14px;
    line-height: 1.74;
}

.private-event-types {
    margin-top: 14px;

    display: flex;
    flex-wrap: wrap;

    gap: 8px;
}

.private-event-types span {
    padding: 9px 13px;

    border: 1px solid #687b88;
    border-radius: 999px;

    background: #293740;

    color: #cad3d4;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .06em;
    text-transform: uppercase;
}

.shows-faq-trigger {
    width: 100%;

    margin-top: 29px;
    padding: 22px 24px;

    border: 2px solid #8a6fa0;
    border-radius: 14px;

    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;

    align-items: center;

    gap: 17px;

    background: linear-gradient(110deg, #523d62, #344e59);

    color: #fff;

    cursor: pointer;
    text-align: left;

    box-shadow: 0 12px 28px rgba(4, 7, 10, .19);
}

.shows-faq-icon {
    width: 45px;
    height: 45px;

    border: 2px solid #e599a5;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #f1b0b7;

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

    font-size: 23px;
}

.shows-faq-copy small,
.shows-faq-copy strong,
.shows-faq-copy span {
    display: block;
}

.shows-faq-copy small {
    color: #c5a2bf;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.shows-faq-copy strong {
    margin-top: 3px;

    color: #fff0e9;

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

    font-size: 23px;
    font-weight: 400;
}

.shows-faq-copy span {
    margin-top: 4px;

    color: #c5d0d0;

    font-size: 11px;
}

.shows-faq-trigger > b {
    padding: 9px 13px;

    border-radius: 999px;

    background: #e69a97;

    color: #30383d;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.shows-faq-panel {
    display: none;

    margin-top: 12px;

    padding: 29px;

    border-radius: 14px;

    background: #272b36;
}

.shows-faq-panel.is-active {
    display: block;

    animation: showsOpen .23s ease;
}

.shows-faq-heading h3 {
    color: #fff0e8;

    font-size: clamp(33px, 2.7vw, 50px);
}

.shows-faq-grid {
    margin-top: 22px;

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

    gap: 10px;
}

.shows-faq-item {
    border: 2px solid #617783;
    border-radius: 11px;

    background: #32434d;
}

.shows-faq-item summary {
    min-height: 75px;

    padding: 16px 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    color: #fff0e9;

    cursor: pointer;
    list-style: none;

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

    font-size: 16px;
    line-height: 1.38;
}

.shows-faq-item summary::-webkit-details-marker {
    display: none;
}

.shows-faq-item summary span {
    width: 30px;
    height: 30px;

    flex: 0 0 30px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #e49998;

    color: #313940;

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

    font-size: 18px;
}

.shows-faq-item[open] {
    border-color: #da8f9e;

    background: #433743;
}

.shows-faq-item[open] summary span {
    transform: rotate(45deg);
}

.shows-faq-item > p {
    padding: 0 18px 19px;

    color: #bdc5c7;

    font-size: 13px;
    line-height: 1.7;
}

@media (max-width: 1250px) {

    .shows-events-layout {
        grid-template-columns: 140px minmax(0, 1fr);
        gap: 28px;
    }

    .shows-events-intro-grid {
        grid-template-columns: 1fr 300px;
    }

    .shows-events-numbers {
        grid-template-columns: repeat(2, 1fr);
    }

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

}

@media (max-width: 950px) {

    .shows-events-layout {
        width: calc(100% - 28px);

        display: block;

        padding: 44px 0 66px;
    }

    .shows-events-sidebar {
        position: relative;
        top: auto;

        margin-bottom: 27px;
    }

    .shows-events-sidebar-title {
        display: none;
    }

    .shows-events-sidebar-nav {
        display: grid;
        grid-template-columns: repeat(5, max-content);

        overflow-x: auto;

        padding-bottom: 7px;
    }

    .shows-events-sidebar-link {
        min-width: 120px;

        text-align: center;
    }

    .shows-events-sidebar-link::after {
        display: none;
    }

    .shows-events-intro-grid {
        grid-template-columns: 1fr;
    }

    .shows-events-feature-image {
        min-height: 360px;
    }

    .shows-events-choice-grid,
    .private-space-grid {
        grid-template-columns: 1fr;
    }

    .show-detail-panel > div,
    .club-cycle {
        grid-template-columns: 1fr;
    }

}

@media (max-width: 650px) {

    .shows-events-intro h2 {
        font-size: 43px;
    }

    .shows-events-lead,
    .shows-events-panel-lead {
        font-size: 16px;
    }

    .shows-events-copy,
    .shows-events-numbers,
    .theatre-capacity-grid,
    .live-music-facts,
    .shows-events-story-grid,
    .theatre-practical,
    .show-format-buttons,
    .private-space-numbers,
    .shows-faq-grid {
        grid-template-columns: 1fr;
    }

    .shows-events-panel {
        padding: 25px 18px;
    }

    .shows-events-panel > h3 {
        padding-right: 48px;

        font-size: 38px;
    }

    .shows-faq-trigger {
        grid-template-columns: 44px 1fr;
    }

    .shows-faq-trigger > b {
        grid-column: 2;

        width: fit-content;
    }

}

/* SHOWS & EVENTS END */

/* CASINO START */

.casino-section {
    background:
        radial-gradient(circle at 82% 4%, rgba(38, 66, 86, .12), transparent 31%),
        linear-gradient(145deg, #080d12 0%, #0c151d 50%, #080e13 100%);
}

.casino-layout {
    width: min(1980px, calc(100% - 34px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: 128px minmax(0, 1fr);
    gap: 31px;
    padding: 52px 0 74px;
}

.casino-main {
    min-width: 0;
}

.casino-view {
    display: none;
}

.casino-view.is-active {
    display: block;
    animation: casinoFade .22s ease;
}

@keyframes casinoFade {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

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


/* SIDEBAR */

.casino-sidebar {
    position: sticky;
    top: 22px;
    align-self: start;
}

.casino-sidebar-title {
    display: block;
    margin-bottom: 14px;
    color: #929ba2;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.casino-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.casino-sidebar-link {
    min-height: 46px;
    padding: 0 12px;
    border: 1px solid #405b6e;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(135deg, #15212b, #10181f);
    color: #d0c6bb;
    cursor: pointer;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    transition: .2s ease;
}

.casino-sidebar-link b {
    color: #7590a5;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: 400;
}

.casino-sidebar-link:hover {
    border-color: #7393aa;
    background: linear-gradient(135deg, #1e3242, #152530);
    color: #fff0dd;
    transform: translateX(3px);
}

.casino-sidebar-link.is-active {
    border-color: #efc676;
    background: linear-gradient(135deg, #f0cf84, #ca9147);
    color: #120d08;
    transform: translateX(3px);
}

/* CASINO START */

.casino-section {
    display: none;
    position: relative;
    overflow: visible;

    background:
        radial-gradient(circle at 90% 5%, rgba(223, 138, 100, .13), transparent 28%),
        radial-gradient(circle at 6% 66%, rgba(62, 143, 151, .14), transparent 29%),
        linear-gradient(145deg, #36545c 0%, #3e5960 46%, #56604f 100%);

    color: #f5eee7;
}

.casino-section.is-active {
    display: block;
}

.casino-layout {
    width: min(1900px, calc(100% - 44px));
    margin: 0 auto;
    padding: 62px 0 88px;

    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 40px;
}

.casino-sidebar {
    position: sticky;
    top: calc(var(--header-height) + 18px);
    align-self: start;
    z-index: 80;
}

.casino-sidebar-title {
    display: block;
    margin-bottom: 15px;

    color: #b2c4c3;

    font-size: 9px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.casino-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.casino-sidebar-link {
    position: relative;

    width: 100%;
    min-height: 51px;

    padding: 0 34px 0 14px;

    border: 2px solid #75a0a3;
    border-radius: 11px;

    background:
        linear-gradient(
            135deg,
            #4b777b,
            #41656d
        );

    color: #f2f6f3;

    cursor: pointer;
    text-align: left;

    font-size: 12px;
    font-weight: 800;

    box-shadow:
        0 8px 18px rgba(15, 31, 34, .14);

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

.casino-sidebar-link::after {
    content: "›";

    position: absolute;
    top: 50%;
    right: 13px;

    color: #ffc0a1;

    font-size: 20px;

    transform: translateY(-50%);
}

.casino-sidebar-link:hover {
    transform: translateX(4px);

    border-color: #a2d2d2;

    background:
        linear-gradient(
            135deg,
            #57878b,
            #4a747c
        );
}

.casino-sidebar-link.is-active {
    border-color: #ffceb4;

    background:
        linear-gradient(
            135deg,
            #f0a07e,
            #d8785f
        );

    color: #30494e;
}

.casino-sidebar-link.is-active::after {
    color: #30494e;
}

.casino-main {
    min-width: 0;
}

.casino-kicker {
    display: block;

    margin-bottom: 13px;

    color: #ffb28f;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .2em;
    text-transform: uppercase;
}

.casino-opening h2,
.casino-section-heading h3,
.casino-story h3,
.casino-first-heading h3,
.casino-evening-heading h3,
.casino-practical-heading h3,
.casino-faq-heading h3 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    letter-spacing: -.035em;
}


/* OPENING */

.casino-opening {
    max-width: 1540px;

    display: grid;
    grid-template-columns: minmax(0, 1.38fr) minmax(350px, .62fr);

    gap: 38px;

    align-items: stretch;
}

.casino-opening h2 {
    max-width: 1120px;

    color: #fff2e8;

    font-size: clamp(51px, 4.5vw, 84px);
    line-height: .97;
}

.casino-opening h2 em {
    display: block;

    color: #ffb18d;

    font-style: normal;
}

.casino-opening-lead {
    max-width: 1240px;

    margin-top: 26px;

    color: #f2f2ed;

    font-size: 20px;
    line-height: 1.73;
}

.casino-opening-text {
    max-width: 1240px;

    margin-top: 18px;

    color: #d0dddd;

    font-size: 15px;
    line-height: 1.8;
}

.casino-photo-card {
    position: relative;

    min-height: 455px;

    overflow: hidden;

    margin: 0;

    border: 2px solid #8ab4b5;
    border-radius: 18px;

    background: #34565c;

    box-shadow:
        0 18px 40px rgba(19, 36, 38, .19);
}

.casino-photo-card img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;
}

.casino-photo-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(18, 32, 35, .02) 15%,
            rgba(18, 32, 35, .18) 51%,
            rgba(18, 32, 35, .92) 100%
        );
}

.casino-photo-copy {
    position: absolute;
    z-index: 2;

    left: 24px;
    right: 24px;
    bottom: 24px;
}

.casino-photo-copy small {
    display: block;

    color: #b9d7d6;

    font-size: 9px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.casino-photo-copy strong {
    display: block;

    margin-top: 7px;

    color: #fff2e8;

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

    font-size: 27px;
    font-weight: 400;

    line-height: 1.1;
}

.casino-welcome {
    max-width: 1480px;

    margin-top: 24px;
    padding: 24px 27px;

    border-left: 5px solid #f1a07d;
    border-radius: 0 14px 14px 0;

    background:
        linear-gradient(
            100deg,
            rgba(99, 76, 62, .72),
            rgba(52, 83, 86, .45)
        );
}

.casino-welcome span {
    display: block;

    color: #ffd0b7;

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

    font-size: 23px;
}

.casino-welcome p {
    max-width: 1320px;

    margin-top: 8px;

    color: #dbe4df;

    font-size: 14px;
    line-height: 1.74;
}


/* SECTION HEADINGS */

.casino-section-heading {
    max-width: 1210px;
}

.casino-section-heading h3,
.casino-first-heading h3,
.casino-evening-heading h3,
.casino-practical-heading h3 {
    color: #fff1e8;

    font-size: clamp(37px, 3.1vw, 58px);
    line-height: 1.04;
}

.casino-section-heading h3 em,
.casino-first-heading h3 em,
.casino-evening-heading h3 em {
    display: block;

    color: #ffb08d;

    font-style: normal;
}

.casino-section-heading > p,
.casino-first-heading > p {
    max-width: 1270px;

    margin-top: 14px;

    color: #d0dedd;

    font-size: 15px;
    line-height: 1.75;
}


/* EXPERIENCE */

.casino-experience {
    margin-top: 50px;
}

.casino-experience-grid {
    margin-top: 27px;

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

    gap: 12px;
}

.casino-experience-card {
    min-height: 225px;

    padding: 24px;

    border-radius: 15px;

    color: #fff;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.12),
        0 10px 24px rgba(17, 31, 32, .12);
}

.experience-solo {
    background: #4b7478;
}

.experience-friends {
    background: #8a5d4c;
}

.experience-date {
    background: #6c536d;
}

.experience-colleagues {
    background: #647052;
}

.casino-experience-card small {
    color: rgba(255,255,255,.72);

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.casino-experience-card strong {
    display: block;

    margin-top: 8px;

    color: #fff3e9;

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

    font-size: 25px;
    font-weight: 400;

    line-height: 1.15;
}

.casino-experience-card p {
    margin-top: 11px;

    color: rgba(255,255,255,.79);

    font-size: 13px;
    line-height: 1.7;
}


/* NUMBERS */

.casino-numbers {
    margin-top: 49px;
}

.casino-number-grid {
    margin-top: 25px;

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

    gap: 11px;
}

.casino-number-card {
    min-height: 190px;

    padding: 22px;

    border-radius: 14px;

    color: #fff;

    box-shadow:
        0 10px 25px rgba(18, 31, 32, .14);
}

.number-slots {
    background: #9c604d;
}

.number-tables {
    background: #46777b;
}

.number-weekday {
    background: #665c78;
}

.number-weekend {
    background: #6c714e;
}

.casino-number-card small,
.casino-number-card strong,
.casino-number-card span,
.casino-number-card p {
    display: block;
}

.casino-number-card small {
    color: rgba(255,255,255,.68);

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.casino-number-card strong {
    margin-top: 8px;

    color: #fff;

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

    font-size: 34px;
    font-weight: 400;
    line-height: 1;
}

.casino-number-card span {
    margin-top: 7px;

    color: #ffd4c2;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .09em;
    text-transform: uppercase;
}

.casino-number-card p {
    margin-top: 10px;

    color: rgba(255,255,255,.78);

    font-size: 11px;
    line-height: 1.57;
}


/* STORY */

.casino-story {
    max-width: 1510px;

    margin-top: 50px;
}

.casino-story h3 {
    max-width: 1230px;

    color: #fff1e8;

    font-size: clamp(37px, 3.1vw, 58px);
    line-height: 1.04;
}

.casino-story h3 em {
    display: block;

    color: #ffb08d;

    font-style: normal;
}

.casino-story-lead {
    max-width: 1390px;

    margin-top: 22px;

    color: #eef0ea;

    font-size: 18px;
    line-height: 1.81;
}

.casino-story-columns {
    margin-top: 28px;

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

    gap: 19px 48px;
}

.casino-story-columns p {
    color: #c8d6d4;

    font-size: 15px;
    line-height: 1.8;
}

.casino-statement {
    margin-top: 31px;

    padding: 30px 32px;

    border-left: 5px solid #f0a07e;
    border-radius: 0 14px 14px 0;

    background:
        linear-gradient(
            100deg,
            rgba(106, 77, 64, .75),
            rgba(55, 86, 87, .54)
        );
}

.casino-statement > span {
    display: block;

    color: #ffc8ae;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.casino-statement > strong {
    display: block;

    max-width: 1160px;

    margin-top: 8px;

    color: #fff2e8;

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

    font-size: clamp(29px, 2.5vw, 43px);
    font-weight: 400;

    line-height: 1.17;
}

.casino-statement > p {
    max-width: 1280px;

    margin-top: 13px;

    color: #dce5df;

    font-size: 14px;
    line-height: 1.76;
}


/* ADVANTAGES */

.casino-advantages {
    margin-top: 50px;
}

.casino-advantages-grid {
    margin-top: 27px;

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

    gap: 11px;
}

.casino-advantage {
    min-height: 218px;

    padding: 22px;

    border-radius: 14px;

    color: #fff;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.11);
}

.advantage-games {
    background: #447278;
}

.advantage-budget {
    background: #8b5b49;
}

.advantage-social {
    background: #5d6d7b;
}

.advantage-club {
    background: #68556d;
}

.advantage-food {
    background: #755744;
}

.advantage-shows {
    background: #5e526f;
}

.advantage-waterfront {
    background: #496d69;
}

.advantage-golf {
    background: #63734f;
}

.casino-advantage small {
    color: #ffb795;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.casino-advantage strong {
    display: block;

    margin-top: 8px;

    color: #fff3e9;

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

    font-size: 21px;
    font-weight: 400;

    line-height: 1.2;
}

.casino-advantage p {
    margin-top: 10px;

    color: rgba(255,255,255,.78);

    font-size: 12px;
    line-height: 1.65;
}


/* FIRST VISIT */

.casino-first-visit {
    margin-top: 50px;

    padding: 35px;

    border-radius: 20px;

    background:
        radial-gradient(circle at 90% 0%, rgba(210, 139, 101, .10), transparent 28%),
        linear-gradient(145deg, #35535a, #3f5d61);

    box-shadow:
        inset 0 0 0 1px rgba(173, 216, 215, .18);
}

.casino-first-heading {
    max-width: 1250px;
}

.first-visit-grid {
    margin-top: 28px;

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

    gap: 11px;
}

.first-visit-grid article {
    min-height: 225px;

    padding: 21px;

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            #4d7075,
            #42636a
        );

    box-shadow:
        inset 0 0 0 1px rgba(185, 224, 222, .17);
}

.visit-symbol {
    width: 40px;
    height: 40px;

    margin-bottom: 14px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #f1a582;

    color: #334d52;

    font-size: 12px;
    font-weight: 900;
}

.first-visit-grid small {
    color: #b5cdcd;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.first-visit-grid strong {
    display: block;

    margin-top: 6px;

    color: #fff2e8;

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

    font-size: 20px;
    font-weight: 400;

    line-height: 1.23;
}

.first-visit-grid p {
    margin-top: 9px;

    color: #cedbd9;

    font-size: 12px;
    line-height: 1.66;
}

.first-visit-advice {
    margin-top: 13px;

    padding: 20px 22px;

    border-left: 4px solid #efa080;

    background: #405e62;
}

.first-visit-advice strong {
    display: block;

    color: #ffe0d0;

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

    font-size: 20px;
    font-weight: 400;
}

.first-visit-advice p {
    max-width: 1290px;

    margin-top: 7px;

    color: #d0ddda;

    font-size: 13px;
    line-height: 1.68;
}


/* EVENING IDEAS */

.casino-evening {
    margin-top: 50px;
}

.casino-evening-heading {
    max-width: 1150px;
}

.casino-evening-grid {
    margin-top: 26px;

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

    gap: 10px;
}

.casino-evening-grid article {
    min-height: 190px;

    padding: 21px;

    border-top: 3px solid #f0a17f;
    border-radius: 11px;

    background: #4b6265;
}

.evening-social {
    background: #71534a !important;
}

.evening-date {
    background: #62536b !important;
}

.evening-late {
    background: #465a69 !important;
}

.casino-evening-grid small {
    color: #ffc0a4;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.casino-evening-grid strong {
    display: block;

    margin-top: 7px;

    color: #fff2e9;

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

    font-size: 20px;
    font-weight: 400;

    line-height: 1.2;
}

.casino-evening-grid p {
    margin-top: 9px;

    color: rgba(255,255,255,.77);

    font-size: 12px;
    line-height: 1.62;
}


/* PRACTICAL */

.casino-practical {
    margin-top: 50px;

    padding-top: 37px;

    border-top: 1px solid rgba(215, 232, 229, .18);
}

.casino-practical-grid {
    margin-top: 25px;

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

    gap: 10px;
}

.casino-practical-grid article {
    min-height: 145px;

    padding: 19px;

    border-radius: 11px;

    background: #50696c;

    box-shadow:
        inset 0 0 0 1px rgba(189, 219, 217, .15);
}

.casino-address {
    background: #77584b !important;
}

.casino-practical-grid small,
.casino-practical-grid strong,
.casino-practical-grid p {
    display: block;
}

.casino-practical-grid small {
    color: #bcd1d0;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;
    text-transform: uppercase;
}

.casino-address small {
    color: #ffc2a5;
}

.casino-practical-grid strong {
    margin-top: 7px;

    color: #fff2e9;

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

    font-size: 20px;
    font-weight: 400;

    line-height: 1.3;
}

.casino-practical-grid p {
    margin-top: 7px;

    color: #cedad8;

    font-size: 11px;
    line-height: 1.54;
}


/* FAQ */

.casino-faq-trigger {
    width: 100%;

    margin-top: 30px;

    padding: 22px 24px;

    border: 2px solid #91b2b3;
    border-radius: 14px;

    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;

    align-items: center;

    gap: 17px;

    background:
        linear-gradient(
            110deg,
            #4b7477,
            #78574c
        );

    color: #fff;

    cursor: pointer;
    text-align: left;

    box-shadow:
        0 12px 28px rgba(17, 29, 31, .16);
}

.casino-faq-icon {
    width: 45px;
    height: 45px;

    border: 2px solid #f0aa8a;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffd7c4;

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

    font-size: 23px;
}

.casino-faq-trigger-copy small,
.casino-faq-trigger-copy strong,
.casino-faq-trigger-copy span {
    display: block;
}

.casino-faq-trigger-copy small {
    color: #ffc4aa;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;
    text-transform: uppercase;
}

.casino-faq-trigger-copy strong {
    margin-top: 3px;

    color: #fff2e9;

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

    font-size: 23px;
    font-weight: 400;
}

.casino-faq-trigger-copy span {
    margin-top: 4px;

    color: #d8e2de;

    font-size: 11px;
}

.casino-faq-trigger > b {
    padding: 9px 13px;

    border-radius: 999px;

    background: #f0a17f;

    color: #34484d;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.casino-faq-panel {
    display: none;

    margin-top: 12px;

    padding: 29px;

    border-radius: 14px;

    background: #425d61;
}

.casino-faq-panel.is-active {
    display: block;

    animation: casinoOpen .23s ease;
}

@keyframes casinoOpen {
    from {
        opacity: 0;
        transform: translateY(-7px);
    }

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

.casino-faq-heading h3 {
    color: #fff1e8;

    font-size: clamp(33px, 2.7vw, 50px);
}

.casino-faq-grid {
    margin-top: 22px;

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

    gap: 10px;

    align-items: start;
}

.casino-faq-item {
    align-self: start;

    border: 2px solid #78a2a4;
    border-radius: 11px;

    background: #4e7074;
}

.casino-faq-item summary {
    min-height: 76px;

    padding: 16px 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    color: #fff2e9;

    cursor: pointer;

    list-style: none;

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

    font-size: 16px;

    line-height: 1.38;
}

.casino-faq-item summary::-webkit-details-marker {
    display: none;
}

.casino-faq-item summary span {
    width: 30px;
    height: 30px;

    flex: 0 0 30px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #efa482;

    color: #35494e;

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

    font-size: 18px;
}

.casino-faq-item[open] {
    border-color: #efad90;

    background: #675852;
}

.casino-faq-item[open] summary span {
    transform: rotate(45deg);
}

.casino-faq-item > p {
    padding: 0 18px 19px;

    color: #d4dfdc;

    font-size: 13px;

    line-height: 1.7;
}


/* RESPONSIVE */

@media (max-width: 1250px) {

    .casino-layout {
        grid-template-columns: 140px minmax(0, 1fr);
        gap: 28px;
    }

    .casino-opening {
        grid-template-columns: 1fr 330px;
    }

    .casino-number-grid,
    .casino-advantages-grid,
    .casino-practical-grid {
        grid-template-columns: repeat(2, 1fr);
    }

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

}

@media (max-width: 950px) {

    .casino-layout {
        width: calc(100% - 28px);

        display: block;

        padding: 44px 0 66px;
    }

    .casino-sidebar {
        position: relative !important;

        top: auto !important;

        margin-bottom: 27px;

        max-height: none;
    }

    .casino-sidebar-title {
        display: none;
    }

    .casino-sidebar-nav {
        display: grid;

        grid-template-columns: repeat(5, max-content);

        overflow-x: auto;

        padding-bottom: 7px;
    }

    .casino-sidebar-link {
        min-width: 120px;
        text-align: center;
    }

    .casino-sidebar-link::after {
        display: none;
    }

    .casino-opening,
    .casino-story-columns {
        grid-template-columns: 1fr;
    }

    .casino-photo-card {
        min-height: 380px;
    }

    .casino-experience-grid,
    .casino-evening-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 650px) {

    .casino-opening h2 {
        font-size: 44px;
    }

    .casino-opening-lead,
    .casino-story-lead {
        font-size: 16px;
    }

    .casino-number-grid,
    .casino-experience-grid,
    .casino-advantages-grid,
    .first-visit-grid,
    .casino-evening-grid,
    .casino-practical-grid,
    .casino-faq-grid {
        grid-template-columns: 1fr;
    }

    .casino-first-visit {
        padding: 25px 18px;
    }

    .casino-photo-card {
        min-height: 340px;
    }

    .casino-faq-trigger {
        grid-template-columns: 44px 1fr;
    }

    .casino-faq-trigger > b {
        grid-column: 2;

        width: fit-content;
    }

}

/* CASINO END */


/* FOOTER START */

.site-footer {
    position: relative;
    margin-top: 0;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 8% 10%,
            rgba(224, 129, 94, .10),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 24%,
            rgba(68, 133, 141, .12),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            #173d46 0%,
            #21434a 46%,
            #3d4943 100%
        );

    color: #dbe5e1;

    border-top: 1px solid rgba(243, 174, 139, .20);

    box-shadow:
        0 -18px 48px rgba(7, 34, 40, .18);
}


.footer-accent-line {
    width: 100%;
    height: 3px;

    background:
        linear-gradient(
            90deg,
            transparent 0%,
            #4c969c 14%,
            #ee9e7a 42%,
            #f3ae8b 58%,
            #4c969c 86%,
            transparent 100%
        );
}


.footer-main {
    width: min(1700px, calc(100% - 70px));

    margin: 0 auto;

    padding: 36px 0 25px;

    display: grid;

    grid-template-columns:
        minmax(300px, .88fr)
        minmax(0, 2.55fr);

    gap: 38px;
}


.footer-brand-column {
    max-width: 405px;
}


.footer-logo {
    display: inline-flex;

    align-items: center;

    gap: 13px;
}


.footer-logo-mark {
    width: 50px;
    height: 44px;

    fill: none;

    stroke: #f3ae8b;
    stroke-width: 3;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.footer-logo-text {
    display: flex;
    flex-direction: column;

    line-height: 1;

    text-transform: uppercase;
}


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

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

    font-size: 21px;
    font-weight: 500;

    letter-spacing: .05em;
}


.footer-logo-text span {
    margin-top: 6px;

    color: #f3ae8b;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: .4em;
}


.footer-intro {
    max-width: 395px;

    margin-top: 15px;

    color: #b6c8c5;

    font-size: 13px;

    line-height: 1.66;
}


.footer-address {
    margin-top: 15px;

    padding: 10px 0 1px 16px;

    border-left: 3px solid #df8769;

    font-style: normal;
}


.footer-address small {
    display: block;

    color: #92abad;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;

    text-transform: uppercase;
}


.footer-address strong {
    display: block;

    margin-top: 6px;

    color: #f2e9df;

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

    font-size: 15px;
    font-weight: 400;

    line-height: 1.48;
}


.footer-phone {
    display: inline-block;

    margin-top: 6px;

    color: #f2aa87;

    font-size: 12px;
    font-weight: 800;
}


.footer-navigation {
    display: grid;

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

    gap: 14px 30px;

    align-content: start;
}


.footer-link-group {
    min-width: 0;
}


.footer-heading {
    display: block;

    margin-bottom: 10px;

    color: #ffb28e;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .16em;

    text-transform: uppercase;
}


.footer-link-group a {
    position: relative;

    display: table;

    margin-bottom: 7px;

    color: #b9c9c6;

    font-size: 12px;

    line-height: 1.38;

    transition:
        color .2s ease,
        transform .2s ease;
}


.footer-link-group a::before {
    content: "";

    position: absolute;

    left: -10px;
    top: 50%;

    width: 4px;
    height: 1px;

    background: #f1a17d;

    opacity: 0;

    transform: translateY(-50%);

    transition:
        opacity .2s ease;
}


.footer-link-group a:hover {
    color: #fff2e8;

    transform: translateX(6px);
}


.footer-link-group a:hover::before {
    opacity: 1;
}


.footer-legal {
    padding-left: 18px;

    border-left:
        1px solid rgba(243, 174, 139, .16);
}


.footer-responsibility {
    width: min(1700px, calc(100% - 70px));

    margin: 0 auto;

    padding: 11px 0;

    border-top:
        1px solid rgba(184, 214, 211, .14);

    border-bottom:
        1px solid rgba(184, 214, 211, .14);

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 28px;
}


.footer-age {
    display: flex;

    align-items: center;

    gap: 11px;
}


.footer-age > strong {
    width: 40px;
    height: 40px;

    flex: 0 0 40px;

    border: 2px solid #e99a79;
    border-radius: 50%;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #ffc5aa;

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

    font-size: 13px;
    font-weight: 400;
}


.footer-age span {
    display: block;

    color: #e6b9a5;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .12em;

    text-transform: uppercase;
}


.footer-age p {
    max-width: 720px;

    margin-top: 2px;

    color: #91a6a4;

    font-size: 10px;

    line-height: 1.45;
}


.footer-property {
    text-align: right;
}


.footer-property span,
.footer-property strong {
    display: block;
}


.footer-property span {
    color: #91a8a7;

    font-size: 8px;
    font-weight: 900;

    letter-spacing: .13em;

    text-transform: uppercase;
}


.footer-property strong {
    margin-top: 4px;

    color: #d6dfdc;

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

    font-size: 14px;
    font-weight: 400;
}


.footer-bottom {
    width: min(1700px, calc(100% - 70px));

    min-height: 43px;

    margin: 0 auto;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 28px;

    color: #7b918f;

    font-size: 9px;

    letter-spacing: .04em;
}


.footer-bottom > span:last-child {
    letter-spacing: .09em;

    text-transform: uppercase;
}


@media (max-width: 1250px) {

    .footer-main {
        grid-template-columns:
            minmax(250px, .8fr)
            minmax(0, 2.2fr);

        gap: 28px;
    }


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

        gap: 12px 26px;
    }

}


@media (max-width: 850px) {

    .footer-main {
        width: calc(100% - 32px);

        display: block;

        padding: 32px 0 24px;
    }


    .footer-brand-column {
        max-width: 620px;
    }


    .footer-navigation {
        margin-top: 28px;

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

        gap: 18px 22px;
    }


    .footer-legal {
        padding-left: 0;

        border-left: 0;
    }


    .footer-responsibility {
        width: calc(100% - 32px);

        align-items: flex-start;

        flex-direction: column;

        gap: 13px;
    }


    .footer-property {
        text-align: left;
    }


    .footer-bottom {
        width: calc(100% - 32px);
    }

}


@media (max-width: 560px) {

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

        gap: 0;
    }


    .footer-link-group {
        padding-top: 15px;

        border-top:
            1px solid rgba(184, 214, 211, .11);
    }


    .footer-navigation .footer-link-group:first-child {
        padding-top: 0;

        border-top: 0;
    }


    .footer-heading {
        margin-bottom: 9px;
    }


    .footer-link-group a {
        margin-bottom: 7px;
    }


    .footer-age {
        align-items: flex-start;
    }


    .footer-bottom {
        min-height: 0;

        padding: 13px 0;

        display: block;
    }


    .footer-bottom > span {
        display: block;
    }


    .footer-bottom > span + span {
        margin-top: 6px;
    }

}

/* FOOTER END */
/* LEGAL PAGES START */

.legal-page {
    background:
        radial-gradient(circle at 82% 4%, rgba(85, 62, 31, .09), transparent 28%),
        linear-gradient(180deg, #080b0d 0%, #0a0d0f 45%, #07090b 100%);
    color: var(--text);
}


/* HEADER */

.legal-site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
}

.legal-navigation .nav-link {
    display: flex;
    align-items: center;
    justify-content: center;
}


/* MAIN */

.legal-main {
    min-height: calc(100vh - var(--header-height));
}


/* HERO */

.legal-hero {
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid rgba(226, 185, 107, .18);
    background:
        radial-gradient(
            circle at 80% 20%,
            rgba(210, 161, 75, .11),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #111419 0%,
            #0b1014 48%,
            #090b0e 100%
        );
}

.legal-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(216, 170, 87, .05) 1px,
            transparent 1px
        ),
        linear-gradient(
            rgba(216, 170, 87, .035) 1px,
            transparent 1px
        );
    background-size: 58px 58px;
    mask-image:
        linear-gradient(
            90deg,
            transparent,
            rgba(0, 0, 0, .42),
            transparent
        );
}

.legal-hero-inner {
    position: relative;
    z-index: 2;
    width: min(1500px, calc(100% - 70px));
    margin: 0 auto;
    padding: 88px 0 70px;
}

.legal-kicker {
    display: block;
    margin-bottom: 16px;
    color: #d9ae60;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.legal-hero h1 {
    max-width: 1050px;
    color: #f4ecdf;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 5vw, 82px);
    font-weight: 400;
    line-height: .98;
    letter-spacing: -.045em;
}

.legal-intro {
    max-width: 1050px;
    margin-top: 24px;
    color: #c5bdb3;
    font-size: 17px;
    line-height: 1.75;
}

.legal-update {
    width: fit-content;
    margin-top: 31px;
    padding: 12px 16px;
    border: 1px solid rgba(213, 166, 82, .32);
    border-left: 3px solid #d9aa57;
    background: rgba(255, 255, 255, .018);
}

.legal-update span,
.legal-update time {
    display: block;
}

.legal-update span {
    color: #8f877e;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.legal-update time {
    margin-top: 4px;
    color: #e0c087;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
}


/* CONTENT */

.legal-content-shell {
    position: relative;
    padding: 62px 0 84px;
    background:
        radial-gradient(
            circle at 10% 0%,
            rgba(57, 74, 83, .09),
            transparent 24%
        ),
        linear-gradient(
            180deg,
            #0b0f12 0%,
            #080b0e 100%
        );
}

.legal-content {
    width: min(1380px, calc(100% - 70px));
    margin: 0 auto;
}

.legal-section {
    position: relative;
    padding: 34px 0 38px;
    border-bottom: 1px solid rgba(226, 185, 107, .12);
}

.legal-section:first-child {
    padding-top: 0;
}

.legal-section:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.legal-section::before {
    content: "";
    position: absolute;
    top: 38px;
    left: -25px;
    width: 7px;
    height: 7px;
    border: 1px solid rgba(222, 177, 94, .58);
    transform: rotate(45deg);
}

.legal-section:first-child::before {
    top: 4px;
}

.legal-section h2 {
    max-width: 920px;
    color: #ead7b4;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(27px, 2.2vw, 38px);
    font-weight: 400;
    line-height: 1.14;
    letter-spacing: -.025em;
}

.legal-section p {
    max-width: 1180px;
    margin-top: 14px;
    color: #aaa39a;
    font-size: 15px;
    line-height: 1.82;
}

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

.legal-section strong {
    color: #ded2c1;
    font-weight: 600;
}

.legal-section a {
    color: #dcb46d;
    text-decoration: underline;
    text-decoration-color: rgba(220, 180, 109, .35);
    text-underline-offset: 3px;
}


/* FOOTER COMPATIBILITY */

.legal-page .footer-phone {
    display: inline-block;
    margin-top: 9px;
    color: #dcad5e;
    font-size: 12px;
}

.legal-page .footer-link-group a {
    cursor: pointer;
}


/* RESPONSIVE */

@media (max-width: 900px) {

    .legal-hero-inner,
    .legal-content {
        width: calc(100% - 32px);
    }

    .legal-hero-inner {
        padding: 65px 0 54px;
    }

    .legal-section::before {
        display: none;
    }

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

    .legal-content-shell {
        padding: 48px 0 65px;
    }

    .legal-section {
        padding: 29px 0 32px;
    }
}


@media (max-width: 650px) {

    .legal-hero h1 {
        font-size: 44px;
    }

    .legal-hero-inner {
        padding: 52px 0 44px;
    }

    .legal-intro {
        margin-top: 19px;
        font-size: 15px;
    }

    .legal-update {
        margin-top: 25px;
    }

    .legal-section h2 {
        font-size: 29px;
    }

    .legal-section p {
        font-size: 14px;
        line-height: 1.75;
    }
}

/* LEGAL PAGES END */

/* GLOBAL STICKY SECTION NAV START */

.games-section,
.club-offers-section,
.shows-events-section,
.food-nightlife-section,
.casino-section,
.about-section {
    overflow: visible !important;
}


.section-sidebar,
.club-offers-sidebar,
.shows-events-sidebar,
.food-nightlife-sidebar,
.casino-sidebar,
.about-sidebar {
    position: sticky !important;

    top: calc(var(--header-height) + 18px) !important;

    align-self: start !important;

    z-index: 80;

    max-height: calc(100vh - var(--header-height) - 36px);

    overflow-y: auto;
    overflow-x: visible;

    scrollbar-width: none;
}


.section-sidebar::-webkit-scrollbar,
.club-offers-sidebar::-webkit-scrollbar,
.shows-events-sidebar::-webkit-scrollbar,
.food-nightlife-sidebar::-webkit-scrollbar,
.casino-sidebar::-webkit-scrollbar,
.about-sidebar::-webkit-scrollbar {
    display: none;
}


@media (max-width: 950px) {

    .section-sidebar,
    .club-offers-sidebar,
    .shows-events-sidebar,
    .food-nightlife-sidebar,
    .casino-sidebar,
    .about-sidebar {
        position: relative !important;

        top: auto !important;

        max-height: none;

        overflow: visible;

        z-index: auto;
    }

}

/* GLOBAL STICKY SECTION NAV END */