/* =========================================================
   SUDBURY CASINO — GLOBAL DESIGN SYSTEM START
========================================================= */

:root {
    --ink: #171216;
    --ink-soft: #272026;
    --wine: #641b30;
    --wine-deep: #380d1a;
    --copper: #bd7147;
    --copper-light: #efb87d;
    --silver: #d8d3d7;
    --paper: #f8f3ec;

    --header-height: 82px;
    --container: 1540px;
    --gutter: clamp(18px, 4vw, 64px);
    --transition: 220ms ease;

    --page-home: #171216;
    --page-games: #30283d;
    --page-rewards: #56321f;
    --page-promotions: #6e2434;
    --page-dining: #3f4938;
    --page-stay: #253945;
    --page-visit: #705943;
    --page-about: #373136;
    --page-faq: #514354;
}

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

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    min-width: 320px;
    color: var(--paper);
    background: var(--ink);
    font-family: Arial, Helvetica, sans-serif;
    overflow-x: clip;
    -webkit-font-smoothing: antialiased;
}

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

button {
    font: inherit;
}

a,
button {
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

img,
picture,
svg {
    display: block;
}

img {
    max-width: 100%;
}

svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

[hidden] {
    display: none !important;
}

:focus-visible {
    outline: 3px solid var(--copper-light);
    outline-offset: 4px;
}

::selection {
    color: #1b1115;
    background: var(--copper-light);
}

/* =========================================================
   SUDBURY CASINO — GLOBAL DESIGN SYSTEM END
========================================================= */


/* =========================================================
   ACCESSIBILITY START
========================================================= */

.icon-library {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

.skip-link {
    position: fixed;
    z-index: 9999;
    top: -100px;
    left: 20px;
    padding: 11px 18px;
    color: var(--ink);
    background: var(--copper-light);
    font-weight: 800;
}

.skip-link:focus {
    top: 14px;
}

/* =========================================================
   ACCESSIBILITY END
========================================================= */


/* =========================================================
   PAGE VIEW SYSTEM START
========================================================= */

.page-view {
    display: none;
}

.page-view.is-active {
    display: block;
}

/* =========================================================
   PAGE VIEW SYSTEM END
========================================================= */


/* =========================================================
   HEADER START
========================================================= */

.site-header {
    position: relative;
    z-index: 1000;
    min-height: var(--header-height);
    background: rgba(18, 15, 19, .98);
    border-bottom: 1px solid rgba(239, 184, 125, .25);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
}

.header-inner {
    width: 100%;
    max-width: var(--container);
    min-height: var(--header-height);
    margin: 0 auto;
    padding: 0 var(--gutter);
    display: flex;
    align-items: center;
    gap: clamp(14px, 2vw, 30px);
}

.site-brand {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 11px;
}

.brand-mark {
    position: relative;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    color: #221116;
    background: linear-gradient(145deg, #f0bf84, #b76941);
    border-radius: 13px;
    transform: rotate(45deg);
}

.brand-mark__diamond {
    position: absolute;
    inset: 5px;
    border: 1px solid rgba(55, 20, 28, .32);
    border-radius: 9px;
}

.brand-mark__letter {
    position: relative;
    z-index: 1;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
    font-weight: 700;
    transform: rotate(-45deg);
}

.brand-name {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.brand-name strong {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 21px;
    line-height: 1;
    letter-spacing: .075em;
}

.brand-name small {
    color: var(--copper-light);
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .34em;
}

.header-nav {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: clamp(8px, 1vw, 17px);
}

.header-nav .nav-link {
    position: relative;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    color: #ddd7dc;
    font-size: clamp(10px, .76vw, 12px);
    font-weight: 700;
    white-space: nowrap;
    transition: color var(--transition);
}

.header-nav .nav-link:hover,
.header-nav .nav-link.is-active {
    color: var(--copper-light);
}

.header-nav .nav-link.is-active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 2px;
    height: 2px;
    background: var(--copper);
}

.header-nav .nav-link[aria-disabled="true"] {
    color: rgba(221, 215, 220, .55);
    cursor: default;
}

.header-actions {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 8px;
}

/* =========================================================
   HEADER END
========================================================= */


/* =========================================================
   PLAY NOW BUTTONS START
========================================================= */

.play-now {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #fff6ef;
    background: linear-gradient(135deg, #7d1e34, #b52d41 55%, #781526);
    border: 1px solid #d35b69;
    border-radius: 999px;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
    box-shadow: 0 8px 26px rgba(77, 10, 24, .30);
    transition: transform var(--transition), filter var(--transition);
}

.play-now:hover {
    transform: translateY(-2px);
    filter: brightness(1.08);
}

.play-now--header {
    min-height: 44px;
    padding: 0 18px;
    font-size: 11px;
}

.play-now--hero {
    min-height: 58px;
    padding: 0 30px;
    font-size: 13px;
}

/* =========================================================
   PLAY NOW BUTTONS END
========================================================= */


/* =========================================================
   MOBILE MENU START
========================================================= */

.menu-toggle {
    display: none;
    width: 42px;
    height: 42px;
    padding: 0;
    align-items: center;
    justify-content: center;
    color: var(--copper-light);
    background: #2a2026;
    border: 1px solid rgba(239, 184, 125, .40);
    border-radius: 50%;
    cursor: pointer;
}

.menu-toggle .close-icon {
    display: none;
}

.menu-toggle[aria-expanded="true"] .menu-icon {
    display: none;
}

.menu-toggle[aria-expanded="true"] .close-icon {
    display: block;
}

/* =========================================================
   MOBILE MENU END
========================================================= */


/* =========================================================
   PRIMARY PAGE SWITCHER START
========================================================= */

.page-switcher {
    position: fixed;
    z-index: 900;
    left: 50%;
    bottom: 18px;
    width: min(930px, calc(100% - 32px));
    transform: translateX(-50%);
}

.page-switcher__inner {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: 4px;
    padding: 6px;
    background: rgba(21, 16, 20, .92);
    border: 1px solid rgba(239, 184, 125, .30);
    border-radius: 18px;
    box-shadow: 0 18px 48px rgba(0, 0, 0, .34);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.switcher-link {
    min-width: 0;
    min-height: 56px;
    padding: 6px 4px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    color: #cfc8cd;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 12px;
    font-size: 8px;
    font-weight: 800;
    text-align: center;
    transition:
        color var(--transition),
        background var(--transition),
        border-color var(--transition),
        transform var(--transition);
}

.switcher-link svg {
    width: 17px;
    height: 17px;
}

.switcher-link.is-active {
    color: #211318;
    background: linear-gradient(145deg, #f0bd7d, #bd7048);
    border-color: #ffd8a2;
}

.switcher-link[aria-disabled="true"] {
    opacity: .50;
    cursor: default;
}

@media (hover: hover) and (pointer: fine) {

    .switcher-link:not([aria-disabled="true"]):hover {
        color: #ffffff;
        background: #4b2530;
        border-color: rgba(239, 184, 125, .34);
        transform: translateY(-2px);
    }

}

/* =========================================================
   PRIMARY PAGE SWITCHER END
========================================================= */


/* =========================================================
   HOME HERO START
========================================================= */

.home-page {
    position: relative;
    min-height: calc(100svh - var(--header-height));
    background: var(--page-home);
    overflow: hidden;
    isolation: isolate;
}

.hero-background,
.hero-overlay {
    position: absolute;
    inset: 0;
}

.hero-background {
    z-index: -2;
}

.hero-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hero-overlay {
    z-index: -1;
    background:
        linear-gradient(
            90deg,
            rgba(17, 12, 16, .98) 0%,
            rgba(24, 13, 19, .86) 40%,
            rgba(24, 13, 19, .33) 70%,
            rgba(24, 13, 19, .06) 100%
        ),
        linear-gradient(
            180deg,
            transparent 68%,
            rgba(28, 8, 14, .68) 100%
        );
}

.hero-content {
    width: 100%;
    max-width: var(--container);
    min-height: inherit;
    margin: 0 auto;
    padding: clamp(75px, 8vh, 110px) var(--gutter) 132px;
    display: flex;
    align-items: center;
}

.hero-content__inner {
    width: min(700px, 62vw);
}

.hero-eyebrow {
    margin: 0 0 18px;
    color: var(--copper-light);
    font-size: 10px;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: .18em;
}

#homeTitle {
    margin: 0;
    color: #fff9f2;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(58px, 6.2vw, 96px);
    line-height: .99;
    letter-spacing: -.05em;
    text-wrap: balance;
}

#homeTitle span {
    display: block;
    margin-top: 7px;
    color: var(--copper-light);
}

.hero-description {
    max-width: 610px;
    margin: 24px 0 0;
    color: #ddd5da;
    font-size: clamp(15px, 1.1vw, 18px);
    line-height: 1.72;
}

.hero-actions {
    margin-top: 28px;
    display: flex;
}

.hero-facts {
    max-width: 780px;
    margin-top: 36px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid rgba(239, 184, 125, .31);
    border-bottom: 1px solid rgba(239, 184, 125, .20);
}

.hero-facts > div {
    min-width: 0;
    padding: 16px 17px;
}

.hero-facts > div + div {
    border-left: 1px solid rgba(239, 184, 125, .20);
}

.hero-facts strong {
    display: block;
    color: #f3bc7c;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    line-height: 1.1;
}

.hero-facts span {
    display: block;
    margin-top: 4px;
    color: #c9c1c7;
    font-size: 9px;
    line-height: 1.35;
}

/* =========================================================
   HOME HERO END
========================================================= */


/* =========================================================
   RESPONSIVE DESIGN START
========================================================= */

@media (max-width: 1220px) {

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

    .header-nav {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 2px;
        max-height: calc(100svh - 145px);
        margin: 0;
        padding: 14px var(--gutter) 18px;
        overflow-y: auto;
        background: #171419;
        border-bottom: 1px solid rgba(239, 184, 125, .30);
        box-shadow: 0 18px 38px rgba(0, 0, 0, .30);
    }

    .header-nav.is-open {
        display: flex;
    }

    .header-nav .nav-link {
        min-height: 42px;
        padding: 0 10px;
        font-size: 13px;
    }

    .menu-toggle {
        display: flex;
    }

}


@media (max-width: 900px) {

    .page-switcher {
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        transform: none;
    }

    .page-switcher__inner {
        display: flex;
        gap: 4px;
        padding: 7px 6px calc(7px + env(safe-area-inset-bottom, 0px));
        overflow-x: auto;
        background: rgba(20, 16, 20, .98);
        border: 0;
        border-top: 1px solid rgba(239, 184, 125, .34);
        border-radius: 0;
        box-shadow: none;
        scrollbar-width: none;
    }

    .page-switcher__inner::-webkit-scrollbar {
        display: none;
    }

    .switcher-link {
        flex: 0 0 72px;
        min-height: 56px;
    }

    .hero-content {
        padding-bottom: 116px;
    }

}


@media (max-width: 700px) {

    :root {
        --header-height: 68px;
        --gutter: 18px;
    }

    .brand-mark {
        width: 35px;
        height: 35px;
    }

    .brand-mark__letter {
        font-size: 20px;
    }

    .brand-name strong {
        font-size: 15px;
    }

    .brand-name small {
        font-size: 7px;
    }

    .play-now--header {
        min-height: 39px;
        padding: 0 11px;
        font-size: 9px;
    }

    .home-page {
        display: flex;
        flex-direction: column;
        min-height: 0;
    }

    .hero-background {
        position: relative;
        z-index: auto;
        height: clamp(290px, 44svh, 405px);
        flex: 0 0 auto;
        background: #24181d;
    }

    .hero-background img {
        object-position: center 38%;
    }

    .hero-overlay {
        display: none;
    }

    .hero-content {
        min-height: 0;
        padding: 31px var(--gutter) 98px;
        background:
            radial-gradient(
                circle at 90% 0%,
                rgba(126, 31, 54, .24),
                transparent 34%
            ),
            linear-gradient(
                160deg,
                #1b171c,
                #2b1820 60%,
                #151318
            );
    }

    .hero-content__inner {
        width: 100%;
    }

    .hero-eyebrow {
        margin-bottom: 14px;
        font-size: 8px;
        letter-spacing: .14em;
    }

    #homeTitle {
        font-size: clamp(43px, 12vw, 62px);
        line-height: 1;
    }

    .hero-description {
        margin-top: 19px;
        font-size: 13px;
        line-height: 1.68;
    }

    .hero-actions {
        margin-top: 23px;
    }

    .play-now--hero {
        min-height: 50px;
    }

    .hero-facts {
        margin-top: 28px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hero-facts > div {
        padding: 13px 12px;
    }

    .hero-facts > div:nth-child(3) {
        border-left: 0;
        border-top: 1px solid rgba(239, 184, 125, .20);
    }

    .hero-facts > div:nth-child(4) {
        border-top: 1px solid rgba(239, 184, 125, .20);
    }

    .hero-facts strong {
        font-size: 20px;
    }

}


@media (max-width: 390px) {

    :root {
        --gutter: 14px;
    }

    .brand-name {
        display: none;
    }

    .header-inner {
        gap: 7px;
    }

    .header-actions {
        margin-left: auto;
    }

    .hero-background {
        height: 265px;
    }

    .hero-content {
        padding: 27px 14px 94px;
    }

    .switcher-link {
        flex-basis: 68px;
    }

}

/* =========================================================
   RESPONSIVE DESIGN END
========================================================= */


/* =========================================================
   REDUCED MOTION START
========================================================= */

@media (prefers-reduced-motion: reduce) {

    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }

}

/* =========================================================
   REDUCED MOTION END
========================================================= */
/* =========================================================
   SUDBURY CASINO — CASINO GAMES PAGE START
========================================================= */

.games-page {
    --games-night: #21172b;
    --games-plum: #392443;
    --games-plum-light: #56325d;

    --games-gold: #c88a4f;
    --games-gold-light: #efbd80;

    --games-cream: #f8eee1;
    --games-paper: #fff9f0;
    --games-paper-soft: #f2e7d9;

    --games-ink: #312b35;
    --games-copy: #645e66;
    --games-border: #d0ad88;

    color: var(--games-ink);
    background: var(--games-paper-soft);
}

.games-shell {
    width: min(calc(100% - (var(--gutter) * 2)), 1320px);
    margin-inline: auto;
}

.games-kicker,
.games-feature__label,
.games-practical__label {
    margin: 0;
    color: var(--games-gold-light);
    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.games-kicker--dark {
    color: #995f42;
}


/* =========================================================
   GAMES INTRO START
========================================================= */

.games-intro {
    position: relative;
    padding: clamp(58px, 6vw, 90px) 0 clamp(46px, 5vw, 72px);
    color: #fff8f0;
    background:
        radial-gradient(circle at 84% 12%, rgba(151, 74, 139, .24), transparent 34%),
        linear-gradient(125deg, #18121f 0%, #2b1a35 53%, #4a263f 100%);
    overflow: hidden;
}

.games-intro::before {
    content: "";
    position: absolute;
    width: 440px;
    height: 440px;
    right: -210px;
    bottom: -250px;
    border: 1px solid rgba(239, 189, 128, .20);
    border-radius: 50%;
}

.games-intro__layout {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    grid-template-areas:
        "heading copy"
        "selector selector";
    gap: clamp(34px, 5vw, 70px) clamp(45px, 6vw, 88px);
}

.games-intro__heading {
    grid-area: heading;
}

.games-intro__heading h2 {
    max-width: 600px;
    margin: 14px 0 0;
    color: #fff9f4;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(47px, 5vw, 75px);
    line-height: 1.02;
    letter-spacing: -.045em;
}

.games-intro__heading h2 span {
    display: block;
    color: var(--games-gold-light);
}

.games-intro__copy {
    grid-area: copy;
    padding-left: clamp(22px, 3vw, 35px);
    border-left: 2px solid rgba(239, 189, 128, .62);
}

.games-intro__copy p {
    max-width: 680px;
    margin: 0 0 12px;
    color: #d9d1db;
    font-size: 14px;
    line-height: 1.75;
}

.games-intro__copy p:last-child {
    margin-bottom: 0;
}

.games-intro__copy .games-intro__lead {
    color: #fff7ee;
    font-size: clamp(16px, 1.2vw, 18px);
}

/* =========================================================
   GAMES INTRO END
========================================================= */


/* =========================================================
   GAME SELECTOR START
========================================================= */

.games-selector {
    grid-area: selector;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.games-selector__card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 0;
    overflow: hidden;
    color: #fff;
    background: #1d1721;
    border: 1px solid rgba(239, 189, 128, .28);
    border-radius: 15px;
    cursor: pointer;
    text-align: left;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .20);
    transition:
        transform 220ms ease,
        border-color 220ms ease,
        background 220ms ease,
        box-shadow 220ms ease;
}

.games-selector__media {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 8;
    overflow: hidden;
    background: #151116;
}

.games-selector__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, rgba(17, 12, 18, .30));
}

.games-selector__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 38%;
    transition: transform 380ms ease, filter 380ms ease;
}

.games-selector__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 20px 21px 22px;
}

.games-selector__eyebrow {
    color: #daa065;
    font-size: 8px;
    font-weight: 900;
    line-height: 1.4;
    letter-spacing: .12em;
}

.games-selector__body > strong {
    margin-top: 7px;
    color: #fff8ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(26px, 2.4vw, 34px);
    line-height: 1.08;
}

.games-selector__text {
    margin-top: 8px;
    color: #d3cad4;
    font-size: 12px;
    line-height: 1.6;
}

.games-selector__action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    align-self: flex-start;
    margin-top: auto;
    padding-top: 18px;
    color: var(--games-gold-light);
    font-size: 10px;
    font-weight: 900;
}

.games-selector__action svg {
    width: 15px;
    height: 15px;
    transition: transform 220ms ease;
}

.games-selector__card[aria-selected="true"] {
    color: #2a1b24;
    background: linear-gradient(145deg, #f2d3a8, #c98859);
    border-color: #ffdbad;
    box-shadow:
        0 0 0 3px rgba(239, 189, 128, .15),
        0 17px 36px rgba(0, 0, 0, .24);
}

.games-selector__card[aria-selected="true"] .games-selector__eyebrow,
.games-selector__card[aria-selected="true"] .games-selector__action {
    color: #73392b;
}

.games-selector__card[aria-selected="true"] .games-selector__body > strong {
    color: #291a20;
}

.games-selector__card[aria-selected="true"] .games-selector__text {
    color: #5f4d4d;
}

@media (hover: hover) and (pointer: fine) {

    .games-selector__card:hover {
        transform: translateY(-4px);
        border-color: #dca263;
        box-shadow: 0 18px 40px rgba(0, 0, 0, .27);
    }

    .games-selector__card:hover .games-selector__media img {
        transform: scale(1.035);
        filter: saturate(1.08);
    }

    .games-selector__card:hover .games-selector__action svg {
        transform: translateX(4px);
    }

}

/* =========================================================
   GAME SELECTOR END
========================================================= */


/* =========================================================
   GAME DETAILS START
========================================================= */

.games-details {
    background:
        linear-gradient(155deg, #f1e5d6, #e5d2bd 54%, #dbc2a8);
}

.games-panel {
    padding: clamp(52px, 6vw, 80px) 0 clamp(62px, 7vw, 94px);
}

.games-panel__intro {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(34px, 6vw, 78px);
    margin-bottom: clamp(32px, 4vw, 50px);
}

.games-panel__title h3 {
    max-width: 650px;
    margin: 10px 0 0;
    color: #322731;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(40px, 4.5vw, 62px);
    line-height: 1.05;
    letter-spacing: -.04em;
}

.games-panel__title h3 span {
    display: block;
    color: #94533f;
}

.games-panel__intro-copy {
    padding-left: clamp(20px, 3vw, 33px);
    border-left: 2px solid #c48b64;
}

.games-panel__intro-copy p {
    margin: 0 0 12px;
    color: var(--games-copy);
    font-size: 14px;
    line-height: 1.75;
}

.games-panel__intro-copy p:last-child {
    margin-bottom: 0;
}

.games-panel__intro-copy .games-panel__lead {
    color: #40343e;
    font-size: 17px;
}

/* =========================================================
   GAME DETAILS END
========================================================= */


/* =========================================================
   FEATURE BLOCK START
========================================================= */

.games-feature,
.games-guide {
    display: grid;
    grid-template-columns: minmax(260px, .75fr) minmax(0, 1.25fr);
    overflow: hidden;
    margin-bottom: 35px;
    color: #f8f1f5;
    background: #261b2d;
    border-radius: 14px;
    box-shadow: 0 14px 32px rgba(63, 43, 54, .14);
}

.games-feature__heading,
.games-guide__heading {
    padding: clamp(24px, 3vw, 34px);
    background:
        radial-gradient(circle at 80% 15%, rgba(196, 111, 84, .24), transparent 38%),
        linear-gradient(145deg, #241829, #432541);
}

.games-feature--tables .games-feature__heading {
    background: linear-gradient(145deg, #2b1c35, #5a2d42);
}

.games-feature--electronic .games-feature__heading {
    background: linear-gradient(145deg, #211c35, #49335a);
}

.games-guide--roulette .games-guide__heading {
    background: linear-gradient(145deg, #331d2d, #59313d);
}

.games-feature__heading h4,
.games-guide__heading h4 {
    max-width: 400px;
    margin: 11px 0 0;
    color: #fff7ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.13;
}

.games-feature__copy,
.games-guide__copy {
    padding: clamp(24px, 3vw, 34px);
}

.games-feature__copy p,
.games-guide__copy p {
    margin: 0 0 12px;
    color: #ddd4dd;
    font-size: 14px;
    line-height: 1.74;
}

.games-feature__copy p:last-child,
.games-guide__copy p:last-child {
    margin-bottom: 0;
}

/* =========================================================
   FEATURE BLOCK END
========================================================= */


/* =========================================================
   TOPIC CARDS START
========================================================= */

.games-topic-section {
    margin-top: 36px;
}

.games-topic-section__heading {
    max-width: 800px;
    margin-bottom: 19px;
}

.games-topic-section__heading h4 {
    margin: 8px 0 0;
    color: #342a34;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(30px, 3.3vw, 45px);
    line-height: 1.1;
    letter-spacing: -.025em;
}

.games-topic-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.games-topic-card {
    min-height: 250px;
    padding: 24px 22px;
    background: var(--games-paper);
    border: 1px solid var(--games-border);
    border-top: 4px solid #77496d;
    border-radius: 11px;
}

.games-topic-card:nth-child(2) {
    background: #f3ede4;
    border-top-color: #a56048;
}

.games-topic-card:nth-child(3) {
    border-top-color: #bd804c;
}

.games-topic-card__tag {
    display: block;
    margin-bottom: 22px;
    color: #965b40;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .14em;
}

.games-topic-card h5 {
    margin: 0 0 10px;
    color: #372b35;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
    line-height: 1.15;
}

.games-topic-card p {
    margin: 0 0 9px;
    color: var(--games-copy);
    font-size: 13px;
    line-height: 1.68;
}

.games-topic-card p:last-child {
    margin-bottom: 0;
}

/* =========================================================
   TOPIC CARDS END
========================================================= */


/* =========================================================
   PRACTICAL BLOCK START
========================================================= */

.games-practical {
    display: grid;
    grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
    gap: clamp(30px, 5vw, 68px);
    margin-top: 36px;
    padding: clamp(28px, 4vw, 42px);
    color: #f8f0f4;
    background:
        radial-gradient(circle at 88% 10%, rgba(199, 112, 80, .24), transparent 35%),
        linear-gradient(135deg, #21172a, #4b293f);
    border-radius: 14px;
}

.games-practical h4 {
    margin: 9px 0 0;
    color: #fff7ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(28px, 3vw, 39px);
    line-height: 1.13;
}

.games-practical__list p {
    margin: 0;
    padding: 13px 0;
    color: #ded4dc;
    border-bottom: 1px solid rgba(255, 255, 255, .13);
    font-size: 13px;
    line-height: 1.65;
}

.games-practical__list p:first-child {
    padding-top: 0;
}

.games-practical__list p:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.games-practical__list strong {
    display: block;
    margin-bottom: 3px;
    color: var(--games-gold-light);
    font-size: 14px;
}

/* =========================================================
   PRACTICAL BLOCK END
========================================================= */


/* =========================================================
   TABLE COMPARISON START
========================================================= */

.games-table-comparison {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
    margin-bottom: 34px;
}

.games-table-comparison article {
    min-height: 240px;
    padding: 22px 20px;
    background: #fff9f0;
    border: 1px solid #cfad88;
    border-top: 4px solid #704866;
    border-radius: 10px;
}

.games-table-comparison article:nth-child(even) {
    background: #f3ece3;
    border-top-color: #ad694d;
}

.games-table-comparison span {
    display: block;
    margin-bottom: 21px;
    color: #985c41;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: .14em;
}

.games-table-comparison h4 {
    margin: 0 0 10px;
    color: #372b34;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    line-height: 1.15;
}

.games-table-comparison p {
    margin: 0;
    color: var(--games-copy);
    font-size: 13px;
    line-height: 1.68;
}

/* =========================================================
   TABLE COMPARISON END
========================================================= */


/* =========================================================
   BLACKJACK EXPERIENCE START
========================================================= */

.games-blackjack-experience {
    display: grid;
    grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
    gap: clamp(30px, 5vw, 68px);
    margin: 35px 0;
    padding: clamp(28px, 4vw, 42px);
    background: #f9f1e6;
    border: 1px solid #cfae8d;
    border-radius: 14px;
}

.games-blackjack-experience h4 {
    margin: 9px 0 0;
    color: #342a34;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(28px, 3vw, 40px);
    line-height: 1.13;
}

.games-blackjack-experience p {
    margin: 0 0 11px;
    color: var(--games-copy);
    font-size: 14px;
    line-height: 1.72;
}

.games-blackjack-experience p:last-child {
    margin-bottom: 0;
}

.games-blackjack-experience__lead {
    color: #40343e !important;
    font-size: 16px !important;
}

/* =========================================================
   BLACKJACK EXPERIENCE END
========================================================= */


/* =========================================================
   GAMES FAQ START
========================================================= */

.games-faq {
    padding: clamp(50px, 6vw, 78px) 0 clamp(64px, 7vw, 96px);
    background:
        linear-gradient(155deg, #33253a, #251b2d 58%, #1b161f);
}

.games-faq__heading {
    max-width: 820px;
    margin-bottom: 24px;
}

.games-faq__heading h3 {
    margin: 8px 0 11px;
    color: #fff8ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(34px, 4vw, 50px);
    line-height: 1.08;
    letter-spacing: -.03em;
}

.games-faq__heading > p:last-child {
    margin: 0;
    color: #d0c7d0;
    font-size: 14px;
    line-height: 1.68;
}

.games-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 9px;
}

.games-faq__item {
    overflow: hidden;
    background: #f8efe3;
    border: 1px solid #a77a65;
    border-radius: 10px;
}

.games-faq__item[open] {
    border-color: #e3aa6c;
    box-shadow: 0 0 0 3px rgba(227, 170, 108, .10);
}

.games-faq__item summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 32px;
    align-items: center;
    gap: 14px;
    min-height: 82px;
    padding: 14px 16px;
    cursor: pointer;
    list-style: none;
}

.games-faq__item summary::-webkit-details-marker {
    display: none;
}

.games-faq__item summary > span:first-child {
    color: #372b34;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.38;
}

.games-faq__icon {
    position: relative;
    width: 31px;
    height: 31px;
    background: #4b2a41;
    border-radius: 50%;
}

.games-faq__icon::before,
.games-faq__icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #f2bd7d;
    transform: translate(-50%, -50%);
}

.games-faq__icon::before {
    width: 12px;
    height: 2px;
}

.games-faq__icon::after {
    width: 2px;
    height: 12px;
}

.games-faq__item[open] .games-faq__icon::after {
    display: none;
}

.games-faq__item[open] summary {
    background: #eedcc8;
}

.games-faq__item > div {
    padding: 15px 16px 19px;
    border-top: 1px solid #d7bba0;
}

.games-faq__item p {
    margin: 0;
    color: #615b61;
    font-size: 13px;
    line-height: 1.7;
}

/* =========================================================
   GAMES FAQ END
========================================================= */


/* =========================================================
   GAMES TABLET START
========================================================= */

@media (max-width: 980px) {

    .games-selector {
        gap: 11px;
    }

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

    .games-topic-card:last-child {
        grid-column: 1 / -1;
    }

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

}

/* =========================================================
   GAMES TABLET END
========================================================= */


/* =========================================================
   GAMES MOBILE START
========================================================= */

@media (max-width: 700px) {

    .games-shell {
        width: calc(100% - 30px);
    }


    .games-intro {
        padding: 37px 0 43px;
    }

    .games-intro__layout {
        grid-template-columns: 1fr;
        grid-template-areas:
            "heading"
            "selector"
            "copy";
        gap: 24px;
    }

    .games-intro__heading h2 {
        font-size: clamp(39px, 11vw, 54px);
    }

    .games-intro__copy {
        padding: 19px 0 0;
        border-left: 0;
        border-top: 1px solid rgba(239, 189, 128, .42);
    }

    .games-intro__copy p {
        font-size: 13px;
        line-height: 1.68;
    }


    .games-selector {
        grid-template-columns: 1fr;
        gap: 9px;
    }

    .games-selector__card {
        display: grid;
        grid-template-columns: 35% minmax(0, 1fr);
        min-height: 150px;
        border-radius: 11px;
    }

    .games-selector__media {
        height: 100%;
        aspect-ratio: auto;
    }

    .games-selector__media img {
        height: 100%;
    }

    .games-selector__body {
        padding: 13px 14px 14px;
    }

    .games-selector__eyebrow {
        font-size: 7px;
        letter-spacing: .08em;
    }

    .games-selector__body > strong {
        margin-top: 5px;
        font-size: 23px;
    }

    .games-selector__text {
        margin-top: 5px;
        font-size: 10px;
        line-height: 1.45;
    }

    .games-selector__action {
        margin-top: 8px;
        padding-top: 0;
        font-size: 9px;
    }


    .games-panel {
        padding: 38px 0 50px;
    }

    .games-panel__intro {
        grid-template-columns: 1fr;
        gap: 21px;
        margin-bottom: 26px;
    }

    .games-panel__title h3 {
        font-size: clamp(34px, 9vw, 46px);
    }

    .games-panel__intro-copy {
        padding: 16px 0 0;
        border-left: 0;
        border-top: 2px solid #c48b64;
    }

    .games-panel__intro-copy p {
        font-size: 13px;
    }


    .games-feature,
    .games-guide,
    .games-practical,
    .games-blackjack-experience {
        grid-template-columns: 1fr;
    }

    .games-feature__heading,
    .games-feature__copy,
    .games-guide__heading,
    .games-guide__copy {
        padding: 20px;
    }

    .games-feature__heading h4,
    .games-guide__heading h4,
    .games-practical h4,
    .games-blackjack-experience h4 {
        font-size: 29px;
    }


    .games-topic-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .games-topic-card,
    .games-topic-card:last-child {
        grid-column: auto;
        min-height: 0;
        padding: 19px;
    }

    .games-topic-card__tag {
        margin-bottom: 13px;
    }

    .games-topic-card h5 {
        font-size: 22px;
    }


    .games-practical,
    .games-blackjack-experience {
        gap: 22px;
        padding: 20px;
    }


    .games-table-comparison {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .games-table-comparison article {
        min-height: 0;
        padding: 18px;
    }

    .games-table-comparison span {
        margin-bottom: 12px;
    }


    .games-faq {
        padding: 40px 0 54px;
    }

    .games-faq__heading h3 {
        font-size: 32px;
    }

    .games-faq__grid {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .games-faq__item summary {
        grid-template-columns: minmax(0, 1fr) 29px;
        min-height: 73px;
        padding: 12px 13px;
    }

    .games-faq__item summary > span:first-child {
        font-size: 15px;
    }

    .games-faq__icon {
        width: 28px;
        height: 28px;
    }

    .games-faq__item > div {
        padding: 13px 14px 17px;
    }

    .games-faq__item p {
        font-size: 12px;
    }

}

/* =========================================================
   GAMES MOBILE END
========================================================= */


/* =========================================================
   GAMES SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .games-shell {
        width: calc(100% - 24px);
    }

    .games-selector__card {
        grid-template-columns: 32% minmax(0, 1fr);
        min-height: 145px;
    }

    .games-selector__body {
        padding: 11px 10px 12px;
    }

    .games-selector__body > strong {
        font-size: 20px;
    }

    .games-selector__text {
        font-size: 9px;
    }

}

/* =========================================================
   GAMES SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — CASINO GAMES PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — MY CLUB REWARDS PAGE START
========================================================= */

.rewards-page {
    --rw-deep: #071f1d;
    --rw-green: #0c342f;
    --rw-green-2: #175347;
    --rw-gold: #c68a4b;
    --rw-gold-light: #efc57e;
    --rw-cream: #f5ecdf;
    --rw-paper: #fffaf2;
    --rw-copy: #c8d6d1;

    color: var(--rw-cream);
    background:
        radial-gradient(circle at 90% 25%, rgba(56, 112, 95, .16), transparent 28%),
        linear-gradient(180deg, #071f1d 0%, #0c332e 48%, #0b2926 100%);
}

.rewards-shell {
    width: min(calc(100% - (var(--gutter) * 2)), 1320px);
    margin-inline: auto;
}

.rewards-kicker {
    margin: 0;
    color: var(--rw-gold-light);
    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: .16em;
    text-transform: uppercase;
}


/* =========================================================
   REWARDS HERO START
========================================================= */

.rewards-hero {
    position: relative;
    min-height: 620px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}

.rewards-hero__background,
.rewards-hero__overlay {
    position: absolute;
    inset: 0;
}

.rewards-hero__background {
    z-index: -2;
}

.rewards-hero__background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.rewards-hero__overlay {
    z-index: -1;
    background:
        linear-gradient(
            90deg,
            rgba(4, 27, 25, .98) 0%,
            rgba(5, 37, 33, .93) 40%,
            rgba(5, 37, 33, .48) 66%,
            rgba(3, 23, 21, .12) 100%
        ),
        linear-gradient(
            180deg,
            transparent 58%,
            rgba(4, 27, 24, .72) 100%
        );
}

.rewards-hero__content {
    padding: clamp(74px, 8vw, 112px) 0 88px;
}

.rewards-hero h2 {
    max-width: 780px;
    margin: 13px 0 0;
    color: #fff9f0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(51px, 5.7vw, 81px);
    line-height: 1;
    letter-spacing: -.045em;
}

.rewards-hero h2 span {
    display: block;
    color: var(--rw-gold-light);
}

.rewards-hero__lead {
    max-width: 670px;
    margin: 23px 0 0;
    color: #deebe6;
    font-size: 17px;
    line-height: 1.72;
}

.rewards-hero__note {
    max-width: 620px;
    margin: 13px 0 0;
    color: #b9cbc5;
    font-size: 12px;
    line-height: 1.65;
}

.rewards-hero__metrics {
    max-width: 780px;
    margin-top: 30px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid rgba(239, 197, 126, .34);
    border-bottom: 1px solid rgba(239, 197, 126, .24);
}

.rewards-hero__metrics > div {
    padding: 15px 15px;
}

.rewards-hero__metrics > div + div {
    border-left: 1px solid rgba(239, 197, 126, .20);
}

.rewards-hero__metrics strong {
    display: block;
    color: var(--rw-gold-light);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
}

.rewards-hero__metrics span {
    display: block;
    margin-top: 4px;
    color: #c4d3ce;
    font-size: 9px;
}

/* =========================================================
   REWARDS HERO END
========================================================= */


/* =========================================================
   REWARDS INTRO START
========================================================= */

.rewards-intro {
    padding: clamp(54px, 6vw, 82px) 0;
    background:
        radial-gradient(circle at 8% 100%, rgba(198, 138, 75, .11), transparent 27%),
        #0b2d29;
}

.rewards-intro__layout {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: clamp(40px, 7vw, 90px);
}

.rewards-intro h3 {
    margin: 9px 0 0;
    color: #fff8ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(39px, 4.3vw, 58px);
    line-height: 1.05;
}

.rewards-intro h3 span {
    display: block;
    color: var(--rw-gold-light);
}

.rewards-intro__copy {
    padding-left: 28px;
    border-left: 2px solid rgba(239, 197, 126, .56);
}

.rewards-intro__copy p {
    margin: 0 0 12px;
    color: #becfca;
    font-size: 14px;
    line-height: 1.73;
}

.rewards-intro__copy p:last-child {
    margin-bottom: 0;
}

.rewards-intro__copy .rewards-intro__lead {
    color: #f3ede5;
    font-size: 17px;
}

/* =========================================================
   REWARDS INTRO END
========================================================= */


/* =========================================================
   MEMBERSHIP JOURNEY START
========================================================= */

.rewards-journey {
    padding: clamp(54px, 6vw, 84px) 0;
    background:
        linear-gradient(
            135deg,
            rgba(4, 27, 24, .66),
            rgba(20, 72, 61, .54)
        );
}

.rewards-journey__heading {
    max-width: 850px;
    margin-bottom: 26px;
}

.rewards-journey__heading h3 {
    margin: 8px 0 10px;
    color: #fff9ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(37px, 4.1vw, 54px);
    line-height: 1.06;
}

.rewards-journey__heading h3 span {
    display: block;
    color: var(--rw-gold-light);
}

.rewards-journey__heading > p {
    max-width: 670px;
    margin: 0;
    color: #bccdc7;
    font-size: 13px;
    line-height: 1.65;
}

.rewards-levels {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: stretch;
    gap: 10px;
}


/* DESKTOP LEVELS */

.rewards-level {
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 12px 27px rgba(0, 0, 0, .19);
}

.rewards-level__toggle {
    width: 100%;
    flex: 0 0 auto;
    min-height: 145px;
    padding: 20px 18px;
    color: inherit;
    background: transparent;
    border: 0;
    text-align: left;
    cursor: default;
}

.rewards-level__toggle small {
    display: block;
    font-size: 7px;
    font-weight: 900;
    letter-spacing: .13em;
}

.rewards-level__toggle strong {
    display: block;
    margin-top: 8px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(25px, 2.1vw, 31px);
    line-height: 1;
}

.rewards-level__toggle em {
    display: block;
    margin-top: 9px;
    font-size: 10px;
    font-style: normal;
    line-height: 1.5;
}

.rewards-level__symbol {
    display: none;
}

.rewards-level__details {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 0 18px 20px;
}

.rewards-level__details p {
    margin: 0;
    font-size: 11px;
    line-height: 1.62;
}

.rewards-level__fact {
    margin-top: auto;
    padding-top: 19px;
}

.rewards-level__fact span {
    display: block;
    font-size: 7px;
    font-weight: 900;
    letter-spacing: .12em;
}

.rewards-level__fact strong {
    display: block;
    margin-top: 4px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
}


/* UNIQUE TIER PALETTES */

.rewards-level--base {
    color: #2a413a;
    background: linear-gradient(160deg, #fff9ef, #eadac3);
    border-top: 5px solid #a76b3e;
}

.rewards-level--base small,
.rewards-level--base .rewards-level__fact span {
    color: #9a603b;
}

.rewards-level--silver {
    color: #263a37;
    background: linear-gradient(160deg, #dfe6e1, #aebcb6);
    border-top: 5px solid #6f8580;
}

.rewards-level--silver small,
.rewards-level--silver .rewards-level__fact span {
    color: #50645f;
}

.rewards-level--gold {
    color: #493722;
    background: linear-gradient(160deg, #f2d590, #cda057);
    border-top: 5px solid #8b6030;
}

.rewards-level--gold small,
.rewards-level--gold .rewards-level__fact span {
    color: #744a24;
}

.rewards-level--elite {
    color: #f4eee4;
    background: linear-gradient(160deg, #375d52, #203f39);
    border-top: 5px solid #d4ad70;
}

.rewards-level--elite small,
.rewards-level--elite .rewards-level__fact span {
    color: #e0b974;
}

.rewards-level--ultra {
    color: #fff5e8;
    background: linear-gradient(160deg, #3b332a, #151d1c);
    border-top: 5px solid #e3ba73;
}

.rewards-level--ultra small,
.rewards-level--ultra .rewards-level__fact span {
    color: #e4b96f;
}

/* =========================================================
   MEMBERSHIP JOURNEY END
========================================================= */


/* =========================================================
   REWARDS VALUE START
========================================================= */

.rewards-value {
    padding: clamp(54px, 6vw, 84px) 0;
    background: #092723;
}

.rewards-value__layout {
    display: grid;
    grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr);
    gap: clamp(42px, 7vw, 90px);
}

.rewards-value__statement h3 {
    margin: 9px 0 17px;
    color: #fff9ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(37px, 4vw, 52px);
    line-height: 1.06;
}

.rewards-value__statement h3 span {
    display: block;
    color: var(--rw-gold-light);
}

.rewards-value__statement > p:last-child {
    margin: 0;
    color: #bdcec8;
    font-size: 13px;
    line-height: 1.7;
}

.rewards-value__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid rgba(239, 197, 126, .33);
    border-left: 1px solid rgba(239, 197, 126, .23);
}

.rewards-value__cards article {
    min-height: 190px;
    padding: 21px;
    border-right: 1px solid rgba(239, 197, 126, .23);
    border-bottom: 1px solid rgba(239, 197, 126, .23);
}

.rewards-value__cards small {
    color: var(--rw-gold-light);
    font-size: 7px;
    font-weight: 900;
    letter-spacing: .12em;
}

.rewards-value__cards strong {
    display: block;
    margin-top: 10px;
    color: #fff7ec;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 21px;
    line-height: 1.15;
}

.rewards-value__cards p {
    margin: 9px 0 0;
    color: #b9cbc5;
    font-size: 11px;
    line-height: 1.62;
}

/* =========================================================
   REWARDS VALUE END
========================================================= */


/* =========================================================
   NUMBER STRIP START
========================================================= */

.rewards-numbers {
    padding: 31px 0 27px;
    background: linear-gradient(90deg, #f1e4d3, #d9c6aa);
    color: #293f39;
}

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

.rewards-numbers__grid > div {
    padding: 8px 24px;
}

.rewards-numbers__grid > div + div {
    border-left: 1px solid rgba(108, 72, 43, .25);
}

.rewards-numbers__grid strong {
    display: block;
    color: #9b6039;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(33px, 3.2vw, 46px);
    line-height: 1;
}

.rewards-numbers__grid span {
    display: block;
    margin-top: 7px;
    color: #46544f;
    font-size: 10px;
}

.rewards-numbers__note {
    margin: 17px 0 0;
    color: #71695f;
    font-size: 9px;
    line-height: 1.5;
}

/* =========================================================
   NUMBER STRIP END
========================================================= */


/* =========================================================
   EXPERIENCE START
========================================================= */

.rewards-experience {
    padding: clamp(56px, 6vw, 86px) 0;
    background:
        radial-gradient(circle at 9% 18%, rgba(198, 138, 75, .10), transparent 30%),
        #103b34;
}

.rewards-experience__layout {
    display: grid;
    grid-template-columns: minmax(380px, .95fr) minmax(0, 1.05fr);
    align-items: center;
    gap: clamp(42px, 7vw, 92px);
}

.rewards-experience__visual {
    margin: 0;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: 0 20px 46px rgba(0, 0, 0, .28);
}

.rewards-experience__visual img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.rewards-experience__copy h3 {
    margin: 9px 0 17px;
    color: #fff9ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(37px, 4vw, 52px);
    line-height: 1.06;
}

.rewards-experience__copy h3 span {
    display: block;
    color: var(--rw-gold-light);
}

.rewards-experience__copy p {
    margin: 0 0 11px;
    color: #c1d1cc;
    font-size: 13px;
    line-height: 1.7;
}

.rewards-experience__copy .rewards-experience__lead {
    color: #fff2e3;
    font-size: 16px;
}

/* =========================================================
   EXPERIENCE END
========================================================= */


/* =========================================================
   JOIN START
========================================================= */

.rewards-join {
    padding: clamp(50px, 6vw, 76px) 0 clamp(78px, 8vw, 110px);
    background: #071f1d;
}

.rewards-join__layout {
    display: grid;
    grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
    align-items: center;
    gap: clamp(40px, 7vw, 90px);
}

.rewards-join h3 {
    margin: 8px 0 0;
    color: #fff9ef;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(36px, 4vw, 51px);
    line-height: 1.07;
}

.rewards-join h3 span {
    display: block;
    color: var(--rw-gold-light);
}

.rewards-join__copy {
    padding: 24px 0 24px 28px;
    border-left: 2px solid rgba(239, 197, 126, .55);
}

.rewards-join__copy strong {
    color: #fff4e5;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
}

.rewards-join__copy p {
    max-width: 650px;
    margin: 9px 0 0;
    color: #bdcec8;
    font-size: 13px;
    line-height: 1.66;
}

/* =========================================================
   JOIN END
========================================================= */


/* =========================================================
   TABLET START
========================================================= */

@media (max-width: 1000px) {

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

    .rewards-numbers__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 19px;
    }

}

/* =========================================================
   TABLET END
========================================================= */


/* =========================================================
   MOBILE START
========================================================= */

@media (max-width: 700px) {

    .rewards-shell {
        width: calc(100% - 30px);
    }


    /* HERO */

    .rewards-hero {
        min-height: 0;
        display: flex;
        flex-direction: column;
    }

    .rewards-hero__background {
        position: relative;
        z-index: auto;
        width: 100%;
        height: 285px;
    }

    .rewards-hero__background img {
        object-position: 73% center;
    }

    .rewards-hero__overlay {
        display: none;
    }

    .rewards-hero__content {
        width: 100%;
        padding: 29px 0 37px;
        background:
            radial-gradient(circle at 85% 0%, rgba(198, 138, 75, .12), transparent 34%),
            #0a2c28;
    }

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

    .rewards-hero__lead {
        margin-top: 17px;
        font-size: 13px;
    }

    .rewards-hero__note {
        font-size: 10px;
    }

    .rewards-hero__metrics {
        margin-top: 22px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rewards-hero__metrics > div:nth-child(3) {
        border-left: 0;
        border-top: 1px solid rgba(239, 197, 126, .20);
    }

    .rewards-hero__metrics > div:nth-child(4) {
        border-top: 1px solid rgba(239, 197, 126, .20);
    }


    /* INTRO */

    .rewards-intro {
        padding: 35px 0;
    }

    .rewards-intro__layout {
        grid-template-columns: 1fr;
        gap: 18px;
    }

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

    .rewards-intro__copy {
        padding: 14px 0 0;
        border-left: 0;
        border-top: 2px solid rgba(239, 197, 126, .50);
    }

    .rewards-intro__copy p {
        font-size: 11px;
        line-height: 1.64;
    }

    .rewards-intro__copy .rewards-intro__lead {
        font-size: 14px;
    }


    /* MOBILE JOURNEY ACCORDION */

    .rewards-journey {
        padding: 35px 0 42px;
    }

    .rewards-journey__heading {
        margin-bottom: 18px;
    }

    .rewards-journey__heading h3 {
        font-size: 30px;
    }

    .rewards-journey__heading > p {
        font-size: 10px;
    }

    .rewards-levels {
        display: block;
    }

    .rewards-level {
        display: block;
        margin-bottom: 9px;
        border-radius: 10px;
        box-shadow: none;
    }

    .rewards-level__toggle {
        position: relative;
        min-height: 0;
        padding: 15px 52px 15px 16px;
        cursor: pointer;
    }

    .rewards-level__toggle strong {
        margin-top: 4px;
        font-size: 24px;
    }

    .rewards-level__toggle em {
        margin-top: 4px;
        font-size: 9px;
    }

    .rewards-level__symbol {
        position: absolute;
        top: 50%;
        right: 15px;
        width: 28px;
        height: 28px;
        display: block;
        border: 1px solid currentColor;
        border-radius: 50%;
        transform: translateY(-50%);
    }

    .rewards-level__symbol::before,
    .rewards-level__symbol::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        background: currentColor;
        transform: translate(-50%, -50%);
    }

    .rewards-level__symbol::before {
        width: 10px;
        height: 1px;
    }

    .rewards-level__symbol::after {
        width: 1px;
        height: 10px;
    }

    .rewards-level__toggle[aria-expanded="true"]
    .rewards-level__symbol::after {
        display: none;
    }

    .rewards-level__details {
        display: block;
        padding: 0 16px 17px;
    }

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

    .rewards-level__details p {
        padding-top: 13px;
        border-top: 1px solid currentColor;
        font-size: 10px;
        line-height: 1.6;
    }

    .rewards-level__fact {
        margin-top: 13px;
        padding-top: 0;
    }


    /* VALUE */

    .rewards-value {
        padding: 38px 0;
    }

    .rewards-value__layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .rewards-value__statement h3 {
        font-size: 30px;
    }

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

    .rewards-value__cards article {
        min-height: 0;
        padding: 17px;
    }


    /* NUMBERS */

    .rewards-numbers {
        padding: 25px 0 22px;
    }

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

    .rewards-numbers__grid > div {
        padding: 14px 12px;
    }

    .rewards-numbers__grid > div:nth-child(3) {
        border-left: 0;
        border-top: 1px solid rgba(108, 72, 43, .20);
    }

    .rewards-numbers__grid > div:nth-child(4) {
        border-top: 1px solid rgba(108, 72, 43, .20);
    }

    .rewards-numbers__grid strong {
        font-size: 32px;
    }

    .rewards-numbers__grid span {
        font-size: 9px;
    }


    /* EXPERIENCE */

    .rewards-experience {
        padding: 37px 0 43px;
    }

    .rewards-experience__layout {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .rewards-experience__visual img {
        aspect-ratio: 16 / 9;
    }

    .rewards-experience__copy h3 {
        font-size: 30px;
    }

    .rewards-experience__copy p {
        font-size: 11px;
    }

    .rewards-experience__copy .rewards-experience__lead {
        font-size: 14px;
    }


    /* JOIN */

    .rewards-join {
        padding: 37px 0 88px;
    }

    .rewards-join__layout {
        grid-template-columns: 1fr;
        gap: 21px;
    }

    .rewards-join h3 {
        font-size: 30px;
    }

    .rewards-join__copy {
        padding: 14px 0 0;
        border-left: 0;
        border-top: 2px solid rgba(239, 197, 126, .50);
    }

}

/* =========================================================
   MOBILE END
========================================================= */


/* =========================================================
   SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .rewards-shell {
        width: calc(100% - 24px);
    }

    .rewards-hero__background {
        height: 260px;
    }

}

/* =========================================================
   SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — MY CLUB REWARDS PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — PROMOTIONS PAGE START
========================================================= */

.promotions-page {
    --promo-night: #1d0910;
    --promo-night-soft: #32101a;
    --promo-wine: #5d1e2d;
    --promo-wine-light: #7b2a35;
    --promo-rust: #a34f31;
    --promo-copper: #c97945;
    --promo-gold: #e7b46b;
    --promo-gold-light: #f3cf91;

    --promo-cream: #fff6ea;
    --promo-paper: #f7ead9;
    --promo-paper-soft: #ead8c2;

    --promo-ink: #402a2e;
    --promo-copy: #675d5d;
    --promo-border: #cfa77e;

    color: var(--promo-cream);
    background: var(--promo-night);
}

.promotions-shell {
    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );
    margin-inline: auto;
}

.promotions-kicker {
    margin: 0;

    color: var(--promo-gold-light);

    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;

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

.promotions-kicker--dark {
    color: #9f5938;
}


/* =========================================================
   PROMOTIONS HERO START
========================================================= */

.promotions-hero {
    position: relative;

    min-height: 760px;

    display: flex;
    align-items: stretch;

    overflow: hidden;

    isolation: isolate;

    background:
        linear-gradient(
            135deg,
            #210a12,
            #461522
        );
}

.promotions-hero__background,
.promotions-hero__overlay {
    position: absolute;
    inset: 0;
}

.promotions-hero__background {
    z-index: -2;
}

.promotions-hero__background img {
    width: 100%;
    height: 100%;

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

.promotions-hero__overlay {
    z-index: -1;

    background:
        linear-gradient(
            90deg,
            rgba(20, 5, 10, .99) 0%,
            rgba(34, 8, 15, .96) 24%,
            rgba(43, 10, 18, .82) 43%,
            rgba(40, 9, 16, .36) 66%,
            rgba(16, 4, 8, .06) 100%
        ),
        linear-gradient(
            180deg,
            rgba(15, 3, 7, .06) 50%,
            rgba(22, 5, 10, .70) 100%
        );
}

.promotions-hero__content {
    position: relative;

    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );

    min-height: 760px;

    margin-inline: auto;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding:
        72px
        0
        105px
        340px;
}

.promotions-hero__content > .promotions-kicker,
.promotions-hero__content > h2,
.promotions-hero__lead,
.promotions-hero__copy {
    width: min(100%, 650px);
}

.promotions-hero h2 {
    margin: 13px 0 0;

    color: #fff9f1;

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

    font-size:
        clamp(46px, 4.8vw, 72px);

    line-height: 1;
    letter-spacing: -.045em;
}

.promotions-hero h2 span {
    display: block;

    color: var(--promo-gold-light);
}

.promotions-hero__lead {
    margin: 22px 0 0;

    color: #f2e6e3;

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

.promotions-hero__copy {
    margin: 12px 0 0;

    padding-left: 15px;

    color: #d5c3c5;

    border-left:
        2px solid
        rgba(239, 196, 121, .65);

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


/* =========================================================
   DESKTOP PROMOTION NAV START
========================================================= */

.promotions-hero__nav {
    position: absolute;

    top: 50%;
    left: 0;

    width: 285px;

    display: flex;
    flex-direction: column;

    gap: 7px;

    margin: 0;

    transform:
        translateY(-50%);
}

.promo-nav {
    position: relative;

    width: 100%;

    min-width: 0;
    min-height: 82px;

    padding:
        11px
        44px
        11px
        14px;

    overflow: hidden;

    color: #fff5ed;

    background:
        rgba(43, 13, 20, .91);

    border:
        1px solid
        rgba(238, 187, 111, .38);

    border-radius: 9px;

    cursor: pointer;
    text-align: left;

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

    backdrop-filter:
        blur(8px);

    transition:
        transform 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        background 180ms ease;
}

.promo-nav::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 4px;
    height: 100%;

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

.promo-nav small {
    display: block;

    overflow: hidden;

    color: #dfa65d;

    font-size: 6px;
    font-weight: 900;
    line-height: 1.35;

    letter-spacing: .11em;

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

.promo-nav strong {
    display: block;

    margin-top: 4px;

    color: #f3c479;

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

    font-size: 24px;
    line-height: 1;
}

.promo-nav span {
    display: block;

    margin-top: 3px;

    overflow: hidden;

    color: #ddcfcd;

    font-size: 7px;
    line-height: 1.35;

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

.promo-nav i {
    position: absolute;

    top: 50%;
    right: 11px;

    width: 25px;
    height: 25px;

    display: grid;
    place-items: center;

    color: #39131b;

    background:
        var(--promo-gold);

    border-radius: 50%;

    font-family:
        Arial,
        sans-serif;

    font-size: 16px;
    font-style: normal;

    line-height: 1;

    transform:
        translateY(-50%);
}


/* DEAL */

.promo-nav--deal {
    background:
        linear-gradient(
            105deg,
            rgba(91, 20, 34, .96),
            rgba(121, 36, 38, .91)
        );
}


/* KLINKO */

.promo-nav--klinko {
    background:
        linear-gradient(
            105deg,
            rgba(17, 69, 66, .96),
            rgba(28, 92, 78, .91)
        );
}

.promo-nav--klinko::before {
    background: #69baaa;
}

.promo-nav--klinko small {
    color: #a4d8cd;
}


/* JACKPOT */

.promo-nav--jackpot {
    background:
        linear-gradient(
            105deg,
            rgba(88, 40, 21, .96),
            rgba(135, 65, 29, .91)
        );
}

.promo-nav--jackpot::before {
    background: #efa765;
}


/* HALLOWEEN */

.promo-nav--halloween {
    background:
        linear-gradient(
            105deg,
            rgba(67, 27, 18, .97),
            rgba(158, 70, 27, .92)
        );
}

.promo-nav--halloween::before {
    background: #ef8b39;
}


/* EMAIL */

.promo-nav--email {
    background:
        linear-gradient(
            105deg,
            rgba(43, 42, 57, .96),
            rgba(100, 66, 86, .92)
        );
}

.promo-nav--email::before {
    background: #bd92b0;
}


/* BREAKFAST */

.promo-nav--breakfast {
    color: #3d2b23;

    background:
        linear-gradient(
            105deg,
            rgba(241, 210, 158, .97),
            rgba(207, 150, 83, .94)
        );
}

.promo-nav--breakfast::before {
    background: #753b27;
}

.promo-nav--breakfast small,
.promo-nav--breakfast strong,
.promo-nav--breakfast span {
    color: #432d24;
}

.promo-nav--breakfast i {
    color: #f8ead6;

    background:
        #683223;
}


/* ACTIVE */

.promo-nav[aria-selected="true"] {
    transform:
        translateX(8px);

    border-color:
        #fff0cf;

    box-shadow:
        0 0 0 3px
        rgba(234, 181, 102, .14),
        0 14px 26px
        rgba(0, 0, 0, .25);
}

.promo-nav[aria-selected="true"] i {
    font-size: 0;
}

.promo-nav[aria-selected="true"] i::before {
    content: "−";

    font-size: 16px;
}


@media (hover: hover) and (pointer: fine) {

    .promo-nav:hover {
        transform:
            translateX(6px);

        border-color:
            #e7b56c;

        box-shadow:
            0 12px 24px
            rgba(0, 0, 0, .23);
    }

}

/* =========================================================
   DESKTOP PROMOTION NAV END
========================================================= */


/* =========================================================
   PROMOTION DETAILS START
========================================================= */

.promotions-details {
    padding: 0;

    color:
        var(--promo-ink);

    background:
        linear-gradient(
            145deg,
            #f4eadc,
            #e6d4bf
        );
}

.promotions-details:has(
    .promotion-panel:not([hidden])
) {
    padding:
        clamp(34px, 4vw, 54px)
        0;
}

.promotion-panel {
    display: grid;

    grid-template-columns:
        minmax(330px, .86fr)
        minmax(0, 1.14fr);

    width: 100%;

    overflow: hidden;

    color:
        var(--promo-ink);

    background:
        #fff9f0;

    border:
        1px solid
        var(--promo-border);

    border-radius:
        15px;

    box-shadow:
        0 17px 38px
        rgba(65, 36, 35, .14);
}

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

.promotion-panel__visual {
    position: relative;

    min-height: 420px;

    margin: 0;

    overflow: hidden;

    background:
        #2d1d25;
}

.promotion-panel__visual::after {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    background:
        linear-gradient(
            90deg,
            transparent 65%,
            rgba(255, 249, 240, .08)
        );
}

.promotion-panel__visual img {
    width: 100%;
    height: 100%;

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

.promotion-panel__content {
    align-self: center;

    padding:
        clamp(30px, 4vw, 48px);
}

.promotion-panel__content h3 {
    max-width: 680px;

    margin: 8px 0 16px;

    color:
        #432c31;

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

    font-size:
        clamp(35px, 3.8vw, 50px);

    line-height: 1.06;
    letter-spacing: -.025em;
}

.promotion-panel__content h3 span {
    display: block;

    color:
        #a65a37;
}

.promotion-panel__content p {
    max-width: 710px;

    margin: 0 0 11px;

    color:
        var(--promo-copy);

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

.promotion-panel__content
.promotion-panel__lead {
    color:
        #473a3e;

    font-size: 16px;
    line-height: 1.65;
}


/* =========================================================
   PROMOTION FACTS START
========================================================= */

.promotion-panel__facts {
    display: grid;

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

    margin-top: 24px;

    border-top:
        2px solid
        #ad6741;

    border-bottom:
        2px solid
        #ad6741;
}

.promotion-panel__facts > div {
    min-width: 0;

    padding:
        17px
        14px;
}

.promotion-panel__facts > div + div {
    border-left:
        1px solid
        #d4b99d;
}

.promotion-panel__facts small {
    display: block;

    color:
        #9a5938;

    font-size: 7px;
    font-weight: 900;
    line-height: 1.4;

    letter-spacing: .11em;
}

.promotion-panel__facts strong {
    display: block;

    margin-top: 6px;

    color:
        #443234;

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

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

/* =========================================================
   PROMOTION FACTS END
========================================================= */


/* =========================================================
   PROMOTION DETAILS END
========================================================= */


/* =========================================================
   PROMOTIONS CLOSING START
========================================================= */

.promotions-closing {
    padding:
        clamp(48px, 5.5vw, 72px)
        0
        clamp(78px, 8vw, 108px);

    color:
        #f8eee9;

    background:
        radial-gradient(
            circle at 88% 8%,
            rgba(202, 98, 53, .18),
            transparent 29%
        ),
        linear-gradient(
            130deg,
            #210b13,
            #551c29
        );
}

.promotions-closing__layout {
    display: grid;

    grid-template-columns:
        minmax(0, .8fr)
        minmax(0, 1.2fr);

    gap:
        clamp(40px, 7vw, 90px);
}

.promotions-closing h3 {
    margin: 8px 0 0;

    color:
        #fff6ed;

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

    font-size:
        clamp(35px, 4vw, 51px);

    line-height: 1.07;
}

.promotions-closing h3 span {
    display: block;

    color:
        var(--promo-gold-light);
}

.promotions-closing__layout >
div:last-child {
    padding-left: 27px;

    border-left:
        2px solid
        rgba(231, 180, 107, .53);
}

.promotions-closing p {
    margin: 0 0 11px;

    color:
        #d8c7c8;

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

.promotions-closing
.promotions-closing__lead {
    color:
        #fff0e5;

    font-size: 16px;
}

/* =========================================================
   PROMOTIONS CLOSING END
========================================================= */


/* =========================================================
   PROMOTIONS DESKTOP COMPACT START
========================================================= */

@media (min-width: 1101px) {

    .promotions-hero__content {
        padding-left:
            340px;
    }

    .promotions-hero__nav {
        width:
            285px;
    }

}

/* =========================================================
   PROMOTIONS DESKTOP COMPACT END
========================================================= */


/* =========================================================
   PROMOTIONS TABLET START
========================================================= */

@media (max-width: 1100px) and (min-width: 701px) {

    .promotions-hero {
        min-height:
            720px;
    }

    .promotions-hero__content {
        min-height:
            720px;

        padding:
            65px
            0
            95px
            290px;
    }

    .promotions-hero__nav {
        width:
            245px;
    }

    .promo-nav {
        min-height:
            78px;
    }

    .promo-nav strong {
        font-size:
            21px;
    }

    .promotions-hero h2 {
        font-size:
            clamp(42px, 5vw, 60px);
    }

    .promotions-hero__lead {
        font-size:
            13px;
    }

    .promotion-panel {
        grid-template-columns:
            minmax(300px, .82fr)
            minmax(0, 1.18fr);
    }

}

/* =========================================================
   PROMOTIONS TABLET END
========================================================= */


/* =========================================================
   PROMOTIONS MOBILE START
========================================================= */

@media (max-width: 700px) {

    .promotions-shell {
        width:
            calc(100% - 30px);
    }


    /* HERO */

    .promotions-hero {
        min-height: 0;

        display: flex;
        flex-direction: column;

        align-items: stretch;

        overflow: visible;
    }

    .promotions-hero__background {
        position: relative;

        z-index: auto;

        width: 100%;
        height: 265px;

        flex: 0 0 auto;
    }

    .promotions-hero__background img {
        object-position:
            68% center;
    }

    .promotions-hero__overlay {
        display: none;
    }

    .promotions-hero__content {
        position: relative;

        width:
            calc(100% - 30px);

        min-height: 0;

        margin-inline: auto;

        display: block;

        padding:
            28px
            0
            36px;
    }

    .promotions-hero::after {
        content: "";

        position: absolute;

        z-index: -1;

        top: 265px;
        right: 0;
        bottom: 0;
        left: 0;

        background:
            radial-gradient(
                circle at 88% 0%,
                rgba(190, 74, 40, .15),
                transparent 37%
            ),
            linear-gradient(
                150deg,
                #2c0e18,
                #491823
            );
    }

    .promotions-hero__content >
    .promotions-kicker,
    .promotions-hero__content > h2,
    .promotions-hero__lead,
    .promotions-hero__copy {
        width: 100%;
    }

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

    .promotions-hero__lead {
        margin-top:
            17px;

        font-size:
            13px;

        line-height:
            1.66;
    }

    .promotions-hero__copy {
        padding-left: 0;

        border-left: 0;

        font-size:
            10px;

        line-height:
            1.58;
    }


    /* MOBILE PROMO NAV */

    .promotions-hero__nav {
        position: static;

        width: 100%;

        display: block;

        margin-top:
            23px;

        transform: none;
    }

    .promo-nav {
        width: 100%;

        min-height:
            88px;

        margin-bottom:
            8px;

        padding:
            13px
            46px
            13px
            15px;

        border-radius:
            10px;

        backdrop-filter:
            none;
    }

    .promo-nav small {
        font-size:
            7px;

        white-space:
            normal;

        text-overflow:
            clip;
    }

    .promo-nav strong {
        margin-top:
            4px;

        font-size:
            27px;
    }

    .promo-nav span {
        margin-top:
            3px;

        font-size:
            8px;

        white-space:
            normal;

        text-overflow:
            clip;
    }

    .promo-nav i {
        right:
            13px;

        width:
            28px;

        height:
            28px;
    }

    .promo-nav[aria-selected="true"],
    .promo-nav[aria-selected="true"]:hover {
        margin-bottom: 0;

        transform: none;

        border-radius:
            10px
            10px
            0
            0;
    }


    /* MOBILE ACTIVE PROMOTION PANEL */

    .promotions-details {
        padding: 0;
    }

    .promotions-details:has(
        .promotion-panel:not([hidden])
    ) {
        padding: 0;
    }

    .promotions-hero__nav >
    .promotion-panel {
        display: block;

        width: 100%;

        margin:
            0
            0
            8px;

        color:
            var(--promo-ink);

        background:
            #fff9f0;

        border:
            2px solid
            #bd7045;

        border-top:
            0;

        border-radius:
            0
            0
            10px
            10px;

        box-shadow:
            none;
    }

    .promotions-hero__nav >
    .promotion-panel[hidden] {
        display:
            none;
    }

    .promotions-hero__nav >
    .promotion-panel
    .promotion-panel__visual {
        display:
            none;
    }

    .promotions-hero__nav >
    .promotion-panel
    .promotion-panel__content {
        padding:
            18px
            14px
            20px;
    }

    .promotion-panel__content h3 {
        margin-bottom:
            12px;

        font-size:
            27px;

        line-height:
            1.08;
    }

    .promotion-panel__content p {
        margin-bottom:
            9px;

        font-size:
            10px;

        line-height:
            1.61;
    }

    .promotion-panel__content
    .promotion-panel__lead {
        font-size:
            13px;
    }

    .promotion-panel__facts {
        grid-template-columns:
            1fr;

        margin-top:
            17px;
    }

    .promotion-panel__facts >
    div {
        padding:
            10px
            1px;
    }

    .promotion-panel__facts >
    div + div {
        border-left:
            0;

        border-top:
            1px solid
            #d4b99d;
    }

    .promotion-panel__facts strong {
        font-size:
            16px;
    }


    /* CLOSING */

    .promotions-closing {
        padding:
            36px
            0
            88px;
    }

    .promotions-closing__layout {
        grid-template-columns:
            1fr;

        gap:
            18px;
    }

    .promotions-closing h3 {
        font-size:
            30px;
    }

    .promotions-closing__layout >
    div:last-child {
        padding:
            13px
            0
            0;

        border-left:
            0;

        border-top:
            2px solid
            rgba(231, 180, 107, .50);
    }

    .promotions-closing p {
        font-size:
            11px;
    }

    .promotions-closing
    .promotions-closing__lead {
        font-size:
            14px;
    }

}

/* =========================================================
   PROMOTIONS MOBILE END
========================================================= */


/* =========================================================
   PROMOTIONS SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .promotions-shell {
        width:
            calc(100% - 24px);
    }

    .promotions-hero__content {
        width:
            calc(100% - 24px);
    }

    .promotions-hero__background {
        height:
            245px;
    }

    .promotions-hero::after {
        top:
            245px;
    }

    .promo-nav {
        min-height:
            84px;
    }

    .promo-nav strong {
        font-size:
            25px;
    }

}

/* =========================================================
   PROMOTIONS SMALL MOBILE END
========================================================= */


/* =========================================================
   PROMOTIONS REDUCED MOTION START
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .promo-nav {
        transition:
            none;
    }

}

/* =========================================================
   PROMOTIONS REDUCED MOTION END
========================================================= */


/* =========================================================
   SUDBURY CASINO — PROMOTIONS PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — DINING PAGE START
========================================================= */

.dining-page {
    --d-forest: #173129;
    --d-forest-2: #294a3d;
    --d-forest-3: #496756;
    --d-wine: #66383b;
    --d-rust: #a65e3d;
    --d-gold: #dda45f;
    --d-gold-light: #f1ca8b;
    --d-cream: #f5ecdf;
    --d-paper: #fff9f0;
    --d-sand: #e6d8c7;
    --d-ink: #2d4037;
    --d-copy: #626a65;

    color: var(--d-ink);
    background: var(--d-cream);
}

.dining-shell {
    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );
    margin-inline: auto;
}

.dining-kicker {
    margin: 0;
    color: var(--d-gold-light);
    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.dining-kicker--dark {
    color: #9d613d;
}


/* =========================================================
   HERO START
========================================================= */

.dining-hero {
    position: relative;
    min-height: 625px;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}

.dining-hero__background,
.dining-hero__overlay {
    position: absolute;
    inset: 0;
}

.dining-hero__background {
    z-index: -2;
}

.dining-hero__background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 52% center;
}

.dining-hero__overlay {
    z-index: -1;
    background:
        linear-gradient(
            90deg,
            rgba(12, 29, 24, .94) 0%,
            rgba(15, 35, 29, .85) 25%,
            rgba(19, 40, 33, .55) 43%,
            rgba(20, 41, 34, .19) 61%,
            rgba(10, 22, 18, .02) 80%
        ),
        linear-gradient(
            180deg,
            rgba(11, 24, 20, .02) 54%,
            rgba(11, 25, 20, .37) 100%
        );
}

.dining-hero__content {
    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );

    margin-inline: auto;

    padding:
        clamp(104px, 10vw, 145px)
        0
        72px;

    /*
       Moves the copy away from the browser edge without
       covering the people in the centre of the photograph.
    */
    padding-left:
        clamp(30px, 4.5vw, 76px);
}

.dining-hero h2 {
    max-width: 690px;
    margin: 13px 0 19px;

    color: #fff9f1;

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

    font-size:
        clamp(47px, 5vw, 70px);

    line-height: 1;
    letter-spacing: -.045em;
}

.dining-hero h2 span {
    display: block;
    color: var(--d-gold-light);
}

.dining-hero__lead {
    max-width: 650px;
    margin: 0;

    color: #fff1e6;

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

.dining-hero__copy {
    max-width: 625px;

    margin: 12px 0 0;

    color: #cedbd4;

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

/* =========================================================
   HERO END
========================================================= */


/* =========================================================
   DESKTOP MOSAIC START
========================================================= */

.dining-mosaic {
    padding:
        clamp(42px, 5vw, 62px)
        0
        clamp(48px, 5vw, 68px);

    background:
        linear-gradient(
            145deg,
            #f7efe5,
            #e8dccd
        );
}

.dining-mosaic__heading {
    display: grid;

    grid-template-columns:
        minmax(0, .9fr)
        minmax(0, 1.1fr);

    align-items: end;

    gap:
        clamp(38px, 6vw, 76px);

    margin-bottom: 25px;
}

.dining-mosaic__heading h3 {
    margin: 8px 0 0;

    color: #2e4037;

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

    font-size:
        clamp(35px, 3.7vw, 49px);

    line-height: 1.06;
}

.dining-mosaic__heading h3 span {
    display: block;
    color: #a76240;
}

.dining-mosaic__heading > p {
    max-width: 640px;
    margin: 0;

    color: #626965;

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


/* =========================================================
   DINING THREE-COLUMN EDITORIAL GRID
========================================================= */

.dining-mosaic__grid {
    display: grid;

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

    gap: 10px;
}

.dining-tile {
    position: relative;

    min-width: 0;
    min-height: 330px;

    display: flex;
    flex-direction: column;

    padding: 25px;

    overflow: hidden;

    border-radius: 10px;
}

.dining-tile__label {
    position: static;

    margin-bottom: 30px;

    color: inherit;

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

    font-size: 18px;
    font-weight: 700;

    opacity: .72;
}

.dining-tile__content {
    position: relative;
    z-index: 2;

    margin-top: auto;
}

.dining-tile__content small {
    display: block;

    color: #dda661;

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

    line-height: 1.4;
    letter-spacing: .12em;
}

.dining-tile__content h4 {
    max-width: 450px;

    margin:
        7px
        0
        12px;

    color: inherit;

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

    font-size:
        clamp(25px, 2.45vw, 33px);

    line-height: 1.08;
}

.dining-tile__content h4 span {
    display: block;
}

.dining-tile__content p {
    max-width: 520px;

    margin:
        0
        0
        8px;

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

.dining-tile__content p:last-child {
    margin-bottom: 0;
}


/* LIGHT MEAL */

.dining-tile--meal {
    grid-column: auto;
    grid-row: auto;

    min-height: 330px;

    color: #fff5eb;

    background:
        radial-gradient(
            circle at 82% 10%,
            rgba(216, 168, 103, .12),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            #173129,
            #365244
        );
}

.dining-tile--meal::after {
    display: none;
}

.dining-tile--meal
.dining-tile__content h4 span {
    color: var(--d-gold-light);
}

.dining-tile--meal
.dining-tile__content p {
    color: #d6e0db;
}


/* SAVOURY */

.dining-tile--snack {
    grid-column: auto;
    grid-row: auto;

    min-height: 330px;

    color: #304139;

    background: #fffaf3;

    border:
        1px solid #d1bea8;
}

.dining-tile--snack::after {
    display: none;
}

.dining-tile--snack
.dining-tile__content small {
    color: #9d613d;
}

.dining-tile--snack
.dining-tile__content h4 span {
    color: #a76240;
}

.dining-tile--snack
.dining-tile__content p {
    color: #626965;
}


/* DRINK */

.dining-tile--drink {
    grid-column: auto;
    grid-row: auto;

    min-height: 330px;

    color: #fff4e9;

    background:
        linear-gradient(
            145deg,
            #66383b,
            #805047
        );
}

.dining-tile--drink::after {
    display: none;
}

.dining-tile--drink
.dining-tile__content h4 span {
    color: var(--d-gold-light);
}

.dining-tile--drink
.dining-tile__content p {
    color: #eadbd8;
}


/* =========================================================
   BREAKFAST TEASER
========================================================= */

.dining-tile--breakfast {
    grid-column: 1 / -1;
    grid-row: auto;

    min-height: 135px;

    display: grid;

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

    align-items: center;

    gap: 28px;

    color: #422f26;

    background:
        linear-gradient(
            110deg,
            #f1d19b,
            #daa05d
        );
}

.dining-tile__price {
    color: #7b412d;

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

    font-size:
        clamp(58px, 6vw, 84px);

    font-weight: 700;

    line-height: .8;

    text-align: center;
}

.dining-tile--breakfast
.dining-tile__content {
    margin-top: 0;
}

.dining-tile--breakfast
.dining-tile__content small {
    color: #7b432f;
}

.dining-tile--breakfast
.dining-tile__content h4 {
    margin-bottom: 5px;

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

.dining-tile--breakfast
.dining-tile__content h4 span {
    color: #73402e;
}

.dining-tile--breakfast
.dining-tile__content p {
    max-width: 760px;

    color: #5c493d;
}

/* =========================================================
   DESKTOP MOSAIC END
========================================================= */


/* =========================================================
   MOBILE MENU DEFAULT START
========================================================= */

.dining-mobile {
    display: none;
}

/* =========================================================
   MOBILE MENU DEFAULT END
========================================================= */


/* =========================================================
   BREAKFAST FEATURE START
========================================================= */

.dining-breakfast {
    padding:
        clamp(50px, 5.5vw, 76px)
        0;

    color: #f8f0e8;

    background:
        linear-gradient(
            145deg,
            #66383b,
            #7c4b3d
        );
}

.dining-breakfast__layout {
    display: grid;

    grid-template-columns:
        minmax(350px, .88fr)
        minmax(0, 1.12fr);

    align-items: center;

    gap:
        clamp(40px, 6vw, 80px);
}

.dining-breakfast__visual {
    margin: 0;

    overflow: hidden;

    border-radius:
        16px
        16px
        72px
        16px;

    box-shadow:
        0 17px 40px
        rgba(42, 17, 17, .25);
}

.dining-breakfast__visual img {
    width: 100%;

    aspect-ratio:
        4 / 3;

    object-fit: cover;
}

.dining-breakfast__price {
    margin-top: 11px;

    color: var(--d-gold-light);

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

    font-size:
        clamp(57px, 6vw, 84px);

    font-weight: 700;

    line-height: .86;
}

.dining-breakfast__content h3 {
    margin:
        14px
        0
        13px;

    color: #fff8ef;

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

    font-size:
        clamp(33px, 3.5vw, 46px);

    line-height: 1.06;
}

.dining-breakfast__content h3 span {
    display: block;
    color: var(--d-gold-light);
}

.dining-breakfast__content p {
    max-width: 630px;

    margin:
        0
        0
        9px;

    color: #e5d4d1;

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

.dining-breakfast__content
.dining-breakfast__lead {
    color: #fff0e4;

    font-size: 15px;
}

.dining-breakfast__facts {
    display: grid;

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

    margin-top: 19px;

    border-top:
        1px solid
        rgba(241, 203, 142, .38);

    border-bottom:
        1px solid
        rgba(241, 203, 142, .28);
}

.dining-breakfast__facts > div {
    padding:
        12px
        8px;
}

.dining-breakfast__facts > div + div {
    border-left:
        1px solid
        rgba(241, 203, 142, .20);
}

.dining-breakfast__facts small {
    color: #e0ae65;

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

    letter-spacing: .1em;
}

.dining-breakfast__facts strong {
    display: block;

    margin-top: 5px;

    color: #fff1df;

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

    font-size: 14px;

    line-height: 1.18;
}

/* =========================================================
   BREAKFAST FEATURE END
========================================================= */


/* =========================================================
   SOCIAL START
========================================================= */

.dining-social {
    padding:
        clamp(42px, 5vw, 65px)
        0
        clamp(60px, 6vw, 80px);

    color: #f5eee8;

    background:
        linear-gradient(
            128deg,
            #173129,
            #395447
        );
}

.dining-social__layout {
    display: grid;

    grid-template-columns:
        minmax(0, .72fr)
        minmax(0, 1.28fr);

    gap:
        clamp(38px, 6vw, 76px);
}

.dining-social h3 {
    margin:
        8px
        0
        0;

    color: #fff8ef;

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

    font-size:
        clamp(32px, 3.4vw, 45px);

    line-height: 1.07;
}

.dining-social h3 span {
    display: block;

    color: var(--d-gold-light);
}

.dining-social__grid {
    display: grid;

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

    border-top:
        1px solid rgba(239, 202, 143, .31);

    border-left:
        1px solid rgba(239, 202, 143, .20);
}

.dining-social__grid > div {
    padding: 16px;

    border-right:
        1px solid rgba(239, 202, 143, .20);

    border-bottom:
        1px solid rgba(239, 202, 143, .20);
}

.dining-social__grid small {
    color: #dca760;

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

    letter-spacing: .11em;
}

.dining-social__grid strong {
    display: block;

    margin-top: 7px;

    color: #fff4e8;

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

    font-size: 17px;
}

.dining-social__grid p {
    margin:
        6px
        0
        0;

    color: #c8d5cf;

    font-size: 10px;
    line-height: 1.6;
}

/* =========================================================
   SOCIAL END
========================================================= */


/* =========================================================
   NOTE START
========================================================= */

.dining-note {
    padding:
        14px
        0
        90px;

    color: #756e67;

    background: #f4eadf;
}

.dining-note p {
    max-width: 930px;
    margin: 0;

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

/* =========================================================
   NOTE END
========================================================= */


/* =========================================================
   TABLET START
========================================================= */

@media (max-width: 1000px) and (min-width: 701px) {

    .dining-hero__content {
        padding-left: 30px;
    }

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

    .dining-tile {
        padding: 20px;
    }

    .dining-tile__content h4 {
        font-size: 25px;
    }

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

}

/* =========================================================
   TABLET END
========================================================= */


/* =========================================================
   MOBILE START
========================================================= */

@media (max-width: 700px) {

    .dining-shell {
        width:
            calc(100% - 32px);
    }


    /* HERO */

    .dining-hero {
        min-height: 0;

        display: flex;
        flex-direction: column;

        overflow: visible;
    }

    .dining-hero__background {
        position: relative;

        z-index: auto;

        width: 100%;
        height: 270px;

        flex: 0 0 auto;
    }

    .dining-hero__background img {
        object-position:
            52% center;
    }

    .dining-hero__overlay {
        display: none;
    }

    .dining-hero__content {
        width:
            calc(100% - 32px);

        margin-inline: auto;

        padding:
            31px
            0
            37px;

        background: transparent;
    }

    .dining-hero::after {
        content: "";

        position: absolute;

        z-index: -1;

        top: 270px;
        right: 0;
        bottom: 0;
        left: 0;

        background:
            linear-gradient(
                145deg,
                #173129,
                #354c3d
            );
    }

    .dining-hero h2 {
        max-width: 100%;

        margin:
            9px
            0
            16px;

        font-size:
            clamp(37px, 10vw, 49px);
    }

    .dining-hero__lead {
        max-width: 100%;

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

    .dining-hero__copy {
        max-width: 100%;

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


    /* HIDE DESKTOP MOSAIC */

    .dining-mosaic--desktop {
        display: none;
    }


    /* MOBILE ACCORDION */

    .dining-mobile {
        display: block;

        padding:
            34px
            0
            40px;

        background:
            linear-gradient(
                145deg,
                #f5ede2,
                #e5d8c8
            );
    }

    .dining-mobile__heading {
        margin-bottom: 17px;
    }

    .dining-mobile__heading h3 {
        margin:
            7px
            0
            0;

        color: #2e4037;

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

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

    .dining-mobile__heading h3 span {
        display: block;
        color: #a76240;
    }

    .dining-mobile__item {
        margin-bottom: 8px;
    }

    .dining-mobile__button {
        position: relative;

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

        padding:
            13px
            48px
            13px
            15px;

        color: #2e4037;
        background: #fff9f1;

        border:
            1px solid #bea68c;

        border-left:
            4px solid #a76240;

        border-radius: 10px;

        cursor: pointer;
        text-align: left;
    }

    .dining-mobile__item:nth-of-type(2)
    .dining-mobile__button {
        background: #e8ddd0;
        border-left-color: #6e5745;
    }

    .dining-mobile__item:nth-of-type(3)
    .dining-mobile__button {
        color: #fff5eb;
        background: #3a5549;
        border-color: #567164;
        border-left-color: #dca35e;
    }

    .dining-mobile__item--breakfast
    .dining-mobile__button {
        color: #472f25;

        background:
            linear-gradient(
                135deg,
                #f0cf99,
                #da9d59
            );

        border-color: #c78b4d;
        border-left-color: #713b2a;
    }

    .dining-mobile__button small {
        display: block;

        color: #9d613d;

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

        letter-spacing: .11em;
    }

    .dining-mobile__button strong {
        display: block;

        margin-top: 4px;

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

        font-size: 20px;
        line-height: 1.1;
    }

    .dining-mobile__button i {
        position: absolute;

        top: 50%;
        right: 13px;

        width: 27px;
        height: 27px;

        border:
            1px solid currentColor;

        border-radius: 50%;

        transform:
            translateY(-50%);
    }

    .dining-mobile__button i::before,
    .dining-mobile__button i::after {
        content: "";

        position: absolute;

        top: 50%;
        left: 50%;

        background: currentColor;

        transform:
            translate(-50%, -50%);
    }

    .dining-mobile__button i::before {
        width: 10px;
        height: 1px;
    }

    .dining-mobile__button i::after {
        width: 1px;
        height: 10px;
    }

    .dining-mobile__button[aria-expanded="true"] {
        border-radius:
            10px
            10px
            0
            0;
    }

    .dining-mobile__button[aria-expanded="true"]
    i::after {
        display: none;
    }

    .dining-mobile__panel {
        padding:
            16px
            15px
            18px;

        color: #606762;
        background: #fffaf3;

        border:
            1px solid #bea68c;

        border-top: 0;

        border-radius:
            0
            0
            10px
            10px;
    }

    .dining-mobile__panel[hidden] {
        display: none;
    }

    .dining-mobile__panel p {
        margin:
            0
            0
            9px;

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

    .dining-mobile__panel
    .dining-mobile__lead {
        color: #34493f;
        font-size: 13px;
    }

    .dining-mobile__panel p:last-child {
        margin-bottom: 0;
    }


    /* BREAKFAST FEATURE */

    .dining-breakfast {
        padding:
            35px
            0
            42px;
    }

    .dining-breakfast__layout {
        grid-template-columns: 1fr;
        gap: 21px;
    }

    .dining-breakfast__visual {
        border-radius: 12px;
    }

    .dining-breakfast__visual img {
        aspect-ratio: 16 / 10;
    }

    .dining-breakfast__price {
        font-size: 66px;
    }

    .dining-breakfast__content h3 {
        margin-top: 12px;
        font-size: 29px;
    }

    .dining-breakfast__content p {
        font-size: 11px;
    }

    .dining-breakfast__content
    .dining-breakfast__lead {
        font-size: 14px;
    }

    .dining-breakfast__facts {
        grid-template-columns: 1fr;
    }

    .dining-breakfast__facts > div {
        display: flex;

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

        gap: 14px;

        padding:
            10px
            1px;
    }

    .dining-breakfast__facts > div + div {
        border-left: 0;

        border-top:
            1px solid
            rgba(241, 203, 142, .20);
    }

    .dining-breakfast__facts strong {
        margin-top: 0;
        font-size: 15px;
        text-align: right;
    }


    /* SOCIAL */

    .dining-social {
        padding:
            34px
            0
            41px;
    }

    .dining-social__layout {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .dining-social h3 {
        font-size: 30px;
    }

    .dining-social__grid {
        grid-template-columns: 1fr;
    }

    .dining-social__grid > div {
        padding: 15px;
    }

    .dining-note {
        padding-bottom: 88px;
    }

}

/* =========================================================
   MOBILE END
========================================================= */


/* =========================================================
   SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .dining-shell,
    .dining-hero__content {
        width:
            calc(100% - 24px);
    }

    .dining-hero__background {
        height: 245px;
    }

    .dining-hero::after {
        top: 245px;
    }

}

/* =========================================================
   SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — DINING PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — STAY + PLAY PAGE START
========================================================= */

.stay-play-page {
    --stay-night: #182832;
    --stay-blue: #28485b;
    --stay-blue-soft: #486b79;

    --stay-plum: #543a52;
    --stay-wine: #71434d;

    --stay-copper: #b46f48;
    --stay-gold: #dfa965;
    --stay-gold-light: #f1ca8b;

    --stay-paper: #fff9f1;
    --stay-cream: #f4e9dc;
    --stay-sand: #dfcfbc;

    --stay-ink: #2d3b41;
    --stay-copy: #626a6c;

    color: var(--stay-ink);
    background: var(--stay-cream);
}

.stay-shell {
    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );

    margin-inline: auto;
}

.stay-kicker {
    margin: 0;

    color: var(--stay-gold-light);

    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;

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

.stay-kicker--dark {
    color: #9c6140;
}


/* =========================================================
   HERO START
========================================================= */

.stay-hero {
    position: relative;

    min-height: 660px;

    display: flex;
    align-items: flex-end;

    overflow: hidden;

    color: #fff7ef;

    background: var(--stay-night);

    isolation: isolate;
}

.stay-hero__background,
.stay-hero__overlay {
    position: absolute;
    inset: 0;
}

.stay-hero__background {
    z-index: -2;
}

.stay-hero__background img {
    width: 100%;
    height: 100%;

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

.stay-hero__overlay {
    z-index: -1;

    background:
        linear-gradient(
            90deg,
            rgba(13, 27, 35, .96) 0%,
            rgba(21, 42, 52, .90) 37%,
            rgba(25, 45, 55, .48) 66%,
            rgba(14, 27, 34, .08) 100%
        ),
        linear-gradient(
            180deg,
            rgba(10, 21, 27, .03) 46%,
            rgba(15, 27, 34, .76) 100%
        );
}

.stay-hero__content {
    width: 100%;

    padding:
        clamp(82px, 8vw, 116px)
        0
        34px;
}

.stay-hero h2 {
    max-width: 800px;

    margin:
        13px
        0
        20px;

    color: #fff9f1;

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

    font-size:
        clamp(50px, 5.6vw, 80px);

    line-height: 1;
    letter-spacing: -.045em;
}

.stay-hero h2 span {
    display: block;

    color: var(--stay-gold-light);
}

.stay-hero__lead {
    max-width: 680px;

    margin: 0;

    color: #eef2f1;

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

.stay-hero__copy {
    max-width: 670px;

    margin:
        12px
        0
        0;

    color: #cad4d6;

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

.stay-hero__facts {
    max-width: 930px;

    display: grid;

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

    margin-top: 29px;

    border-top:
        1px solid rgba(239, 197, 136, .36);

    border-bottom:
        1px solid rgba(239, 197, 136, .24);
}

.stay-hero__facts > div {
    padding:
        15px
        16px;
}

.stay-hero__facts > div + div {
    border-left:
        1px solid rgba(239, 197, 136, .20);
}

.stay-hero__facts strong {
    display: block;

    color: var(--stay-gold-light);

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

    font-size: 25px;
    line-height: 1;
}

.stay-hero__facts span {
    display: block;

    margin-top: 5px;

    color: #cbd5d7;

    font-size: 9px;
    line-height: 1.4;
}

/* =========================================================
   HERO END
========================================================= */


/* =========================================================
   INTRO START
========================================================= */

.stay-intro {
    padding:
        clamp(48px, 5.5vw, 72px)
        0;

    background:
        linear-gradient(
            145deg,
            #f5ecdf,
            #e5d5c2
        );
}

.stay-intro__layout {
    display: grid;

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

    gap:
        clamp(42px, 7vw, 90px);
}

.stay-intro h3 {
    margin:
        8px
        0
        0;

    color: #30414a;

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

    font-size:
        clamp(37px, 4vw, 53px);

    line-height: 1.06;
}

.stay-intro h3 span {
    display: block;

    color: #a76242;
}

.stay-intro__layout > div:last-child {
    padding-left: 27px;

    border-left:
        2px solid #b97850;
}

.stay-intro__layout p {
    margin:
        0
        0
        11px;

    color: #62696a;

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

.stay-intro__layout
.stay-intro__lead {
    color: #374950;

    font-size: 16px;
}

/* =========================================================
   INTRO END
========================================================= */


/* =========================================================
   HOTEL SELECTOR START
========================================================= */

.stay-hotels {
    padding:
        clamp(45px, 5vw, 66px)
        0
        clamp(54px, 6vw, 80px);

    background:
        radial-gradient(
            circle at 90% 4%,
            rgba(184, 110, 72, .12),
            transparent 28%
        ),
        #1d303a;
}

.stay-hotel-grid {
    display: grid;

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

    gap: 11px;
}


/* FIRST ROW */

.stay-hotel-card:nth-child(1) {
    grid-column: 1 / span 2;
}

.stay-hotel-card:nth-child(2) {
    grid-column: 3 / span 2;
}

.stay-hotel-card:nth-child(3) {
    grid-column: 5 / span 2;
}

.stay-hotel-card:nth-child(4) {
    grid-column: 7 / span 2;
}


/* SECOND ROW */

.stay-hotel-card:nth-child(5) {
    grid-column: 2 / span 2;
}

.stay-hotel-card:nth-child(6) {
    grid-column: 4 / span 2;
}

.stay-hotel-card:nth-child(7) {
    grid-column: 6 / span 2;
}


.stay-hotel-card {
    position: relative;

    min-width: 0;

    padding: 0;

    overflow: hidden;

    color: #f7f2ed;

    background:
        linear-gradient(
            145deg,
            #304a57,
            #203640
        );

    border:
        2px solid #526d78;

    border-radius: 12px;

    cursor: pointer;

    text-align: left;

    box-shadow:
        0 10px 26px
        rgba(0, 0, 0, .19);

    transition:
        transform 190ms ease,
        border-color 190ms ease,
        box-shadow 190ms ease;
}

.stay-hotel-card__image {
    display: block;

    width: 100%;

    aspect-ratio:
        16 / 9;

    overflow: hidden;

    background: #182832;
}

.stay-hotel-card__image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 300ms ease;
}

.stay-hotel-card__body {
    position: relative;

    display: block;

    min-height: 142px;

    padding:
        17px
        44px
        18px
        17px;
}

.stay-hotel-card__body small {
    display: block;

    color: #dba869;

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

    letter-spacing: .11em;
    line-height: 1.4;
}

.stay-hotel-card__body strong {
    display: block;

    margin-top: 7px;

    color: #fff8ef;

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

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

.stay-hotel-card__body > span {
    display: block;

    margin-top: 9px;

    color: #ccd8db;

    font-size: 9px;
    line-height: 1.48;
}

.stay-hotel-card__body i {
    position: absolute;

    right: 13px;
    bottom: 15px;

    width: 28px;
    height: 28px;

    border:
        1px solid #e5b36f;

    border-radius: 50%;
}

.stay-hotel-card__body i::before,
.stay-hotel-card__body i::after {
    content: "";

    position: absolute;

    top: 50%;
    left: 50%;

    background: #e5b36f;

    transform:
        translate(-50%, -50%);
}

.stay-hotel-card__body i::before {
    width: 10px;
    height: 1px;
}

.stay-hotel-card__body i::after {
    width: 1px;
    height: 10px;
}

.stay-hotel-card[aria-selected="true"] {
    transform:
        translateY(-4px);

    border-color:
        #f1ca88;

    box-shadow:
        0 0 0 4px rgba(226, 169, 99, .12),
        0 16px 32px rgba(0, 0, 0, .25);
}

.stay-hotel-card[aria-selected="true"]
.stay-hotel-card__body i::after {
    display: none;
}


/* INDIVIDUAL HOTEL TONES */

.stay-hotel-card--clarion {
    background:
        linear-gradient(
            145deg,
            #4d3b50,
            #34283b
        );
}

.stay-hotel-card--hampton {
    background:
        linear-gradient(
            145deg,
            #35536a,
            #233b4b
        );
}

.stay-hotel-card--homewood {
    background:
        linear-gradient(
            145deg,
            #39594e,
            #273f38
        );
}

.stay-hotel-card--northland {
    background:
        linear-gradient(
            145deg,
            #66513e,
            #493a2e
        );
}

.stay-hotel-card--valley {
    background:
        linear-gradient(
            145deg,
            #665c47,
            #47412f
        );
}

.stay-hotel-card--towneplace {
    background:
        linear-gradient(
            145deg,
            #315866,
            #22424c
        );
}

.stay-hotel-card--fairfield {
    background:
        linear-gradient(
            145deg,
            #65414b,
            #46313a
        );
}


@media (hover: hover) and (pointer: fine) {

    .stay-hotel-card:hover {
        transform:
            translateY(-4px);

        border-color:
            #e7b46e;
    }

    .stay-hotel-card:hover
    .stay-hotel-card__image img {
        transform:
            scale(1.035);
    }

}

/* =========================================================
   HOTEL SELECTOR END
========================================================= */


/* =========================================================
   HOTEL DETAILS START
========================================================= */

.stay-detail-shell {
    margin-top: 14px;
}

.stay-hotel-panel {
    padding:
        clamp(34px, 4vw, 52px);

    color: var(--stay-ink);

    background:
        #fff9f1;

    border:
        1px solid #cdb295;

    border-radius: 13px;

    box-shadow:
        0 15px 36px
        rgba(0, 0, 0, .17);
}

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

.stay-hotel-panel__layout {
    display: grid;

    grid-template-columns:
        minmax(330px, .82fr)
        minmax(0, 1.18fr);

    align-items: center;

    gap:
        clamp(38px, 6vw, 78px);
}

.stay-hotel-panel figure {
    margin: 0;

    overflow: hidden;

    border-radius:
        12px;

    box-shadow:
        0 14px 31px
        rgba(48, 48, 42, .15);
}

.stay-hotel-panel figure img {
    width: 100%;

    aspect-ratio:
        16 / 11;

    object-fit: cover;
}

.stay-hotel-panel__copy h3 {
    margin:
        8px
        0
        14px;

    color: #304149;

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

    font-size:
        clamp(35px, 3.8vw, 50px);

    line-height: 1.06;
}

.stay-hotel-panel__copy h3 span {
    display: block;

    color: #a45f40;
}

.stay-hotel-panel__copy p {
    margin:
        0
        0
        10px;

    color: #62696a;

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

.stay-hotel-panel__copy
.stay-hotel-panel__lead {
    color: #374950;

    font-size: 16px;
}

.stay-hotel-panel__facts {
    display: grid;

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

    margin-top: 21px;

    border-top:
        2px solid #a66545;

    border-bottom:
        2px solid #a66545;
}

.stay-hotel-panel__facts > div {
    padding:
        14px
        11px;
}

.stay-hotel-panel__facts > div + div {
    border-left:
        1px solid #d5bca2;
}

.stay-hotel-panel__facts small {
    color: #9b5e3d;

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

    letter-spacing: .1em;
}

.stay-hotel-panel__facts strong {
    display: block;

    margin-top: 5px;

    color: #33434a;

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

    font-size: 15px;
    line-height: 1.18;
}

/* =========================================================
   HOTEL DETAILS END
========================================================= */


/* =========================================================
   POOL & RECREATION START
========================================================= */

.stay-recreation {
    padding:
        clamp(52px, 6vw, 82px)
        0;

    background:
        linear-gradient(
            145deg,
            #edf0ed,
            #d7dfdc
        );
}

.stay-recreation__layout {
    display: grid;

    grid-template-columns:
        minmax(360px, .92fr)
        minmax(0, 1.08fr);

    align-items: center;

    gap:
        clamp(42px, 7vw, 92px);
}

.stay-recreation__visual {
    margin: 0;

    overflow: hidden;

    border-radius:
        18px
        18px
        86px
        18px;

    box-shadow:
        0 18px 42px
        rgba(27, 47, 56, .18);
}

.stay-recreation__visual img {
    width: 100%;

    aspect-ratio:
        16 / 11;

    object-fit: cover;
}

.stay-recreation__copy h3 {
    margin:
        8px
        0
        16px;

    color: #30454d;

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

    font-size:
        clamp(36px, 4vw, 51px);

    line-height: 1.06;
}

.stay-recreation__copy h3 span {
    display: block;

    color: #a45f40;
}

.stay-recreation__copy p {
    max-width: 670px;

    margin:
        0
        0
        10px;

    color: #626b6d;

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

.stay-recreation__copy
.stay-recreation__lead {
    color: #354b53;

    font-size: 16px;
}

/* =========================================================
   POOL & RECREATION END
========================================================= */


/* =========================================================
   PROGRAM START
========================================================= */

.stay-program {
    padding:
        clamp(52px, 6vw, 80px)
        0;

    color: #f3f5f3;

    background:
        linear-gradient(
            125deg,
            #4d3048,
            #704450
        );
}

.stay-program__layout {
    display: grid;

    grid-template-columns:
        minmax(0, .72fr)
        minmax(0, 1.28fr);

    gap:
        clamp(42px, 7vw, 90px);
}

.stay-program h3 {
    margin:
        8px
        0
        15px;

    color: #fff7ef;

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

    font-size:
        clamp(36px, 4vw, 52px);

    line-height: 1.06;
}

.stay-program h3 span {
    display: block;

    color: var(--stay-gold-light);
}

.stay-program__headline > p:last-child {
    margin: 0;

    color: #ded3dc;

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

.stay-program__steps {
    display: grid;

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

    border-top:
        1px solid rgba(239, 201, 139, .34);

    border-left:
        1px solid rgba(239, 201, 139, .22);
}

.stay-program__steps article {
    padding: 20px;

    border-right:
        1px solid rgba(239, 201, 139, .22);

    border-bottom:
        1px solid rgba(239, 201, 139, .22);
}

.stay-program__steps strong {
    display: block;

    color: var(--stay-gold-light);

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

    font-size: 33px;
    line-height: 1;
}

.stay-program__steps small {
    display: block;

    margin-top: 9px;

    color: #dba566;

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

    letter-spacing: .1em;
}

.stay-program__steps p {
    margin:
        8px
        0
        0;

    color: #ddd2dc;

    font-size: 10px;
    line-height: 1.6;
}

/* =========================================================
   PROGRAM END
========================================================= */


/* =========================================================
   NOTE START
========================================================= */

.stay-note {
    padding:
        15px
        0
        92px;

    color: #746e69;

    background: #f2e8dc;
}

.stay-note p {
    max-width: 930px;

    margin: 0;

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

/* =========================================================
   NOTE END
========================================================= */


/* =========================================================
   TABLET START
========================================================= */

@media (max-width: 1000px) and (min-width: 701px) {

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

    .stay-hotel-card:nth-child(n) {
        grid-column: auto;
    }

    .stay-hotel-panel__facts {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .stay-recreation__layout {
        grid-template-columns:
            minmax(300px, .9fr)
            minmax(0, 1.1fr);

        gap: 45px;
    }

}

/* =========================================================
   TABLET END
========================================================= */


/* =========================================================
   MOBILE START
========================================================= */

@media (max-width: 700px) {

    .stay-shell {
        width:
            calc(100% - 30px);
    }


    /* HERO */

    .stay-hero {
        min-height: 0;

        display: flex;
        flex-direction: column;
    }

    .stay-hero__background {
        position: relative;

        z-index: auto;

        width: 100%;
        height: 265px;
    }

    .stay-hero__background img {
        object-position:
            center;
    }

    .stay-hero__overlay {
        display: none;
    }

    .stay-hero__content {
        width: 100%;

        padding:
            28px
            0
            35px;

        background:
            linear-gradient(
                145deg,
                #182b36,
                #344b59
            );
    }

    .stay-hero h2 {
        margin-bottom: 15px;

        font-size:
            clamp(38px, 10.3vw, 51px);
    }

    .stay-hero__lead {
        font-size: 13px;
    }

    .stay-hero__copy {
        font-size: 10px;
    }

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

        margin-top: 22px;
    }

    .stay-hero__facts > div:nth-child(3) {
        border-left: 0;

        border-top:
            1px solid rgba(239, 197, 136, .20);
    }

    .stay-hero__facts > div:nth-child(4) {
        border-top:
            1px solid rgba(239, 197, 136, .20);
    }

    .stay-hero__facts strong {
        font-size: 21px;
    }

    .stay-hero__facts span {
        font-size: 8px;
    }


    /* INTRO */

    .stay-intro {
        padding:
            34px
            0;
    }

    .stay-intro__layout {
        grid-template-columns:
            1fr;

        gap: 17px;
    }

    .stay-intro h3 {
        font-size: 30px;
    }

    .stay-intro__layout > div:last-child {
        padding:
            13px
            0
            0;

        border-left: 0;

        border-top:
            2px solid #b97850;
    }

    .stay-intro__layout p {
        font-size: 11px;
    }

    .stay-intro__layout
    .stay-intro__lead {
        font-size: 14px;
    }


    /* HOTEL BUTTONS */

    .stay-hotels {
        padding:
            33px
            0
            40px;
    }

    .stay-hotel-grid {
        display: block;
    }

    .stay-hotel-card {
        width: 100%;

        display: grid;

        grid-template-columns:
            34%
            minmax(0, 66%);

        min-height: 122px;

        margin-bottom: 8px;

        border-radius: 10px;
    }

    .stay-hotel-card:nth-child(n) {
        grid-column: auto;
    }

    .stay-hotel-card__image {
        height: 100%;

        aspect-ratio: auto;
    }

    .stay-hotel-card__body {
        min-height: 0;

        padding:
            13px
            43px
            13px
            13px;
    }

    .stay-hotel-card__body small {
        font-size: 6px;
    }

    .stay-hotel-card__body strong {
        margin-top: 4px;

        font-size: 19px;
    }

    .stay-hotel-card__body > span {
        margin-top: 5px;

        font-size: 8px;
    }

    .stay-hotel-card__body i {
        top: 50%;
        right: 11px;
        bottom: auto;

        transform:
            translateY(-50%);
    }

    .stay-hotel-card[aria-selected="true"] {
        margin-bottom: 0;

        transform: none;

        border-radius:
            10px
            10px
            0
            0;
    }


    /* HOTEL PANEL */

    .stay-detail-shell {
        margin-top: 8px;
    }

    .stay-hotel-panel {
        padding:
            20px
            15px
            22px;

        border-radius: 10px;

        box-shadow:
            0 10px 24px
            rgba(0, 0, 0, .18);
    }

    .stay-hotel-panel__layout {
        display: block;
    }

    .stay-hotel-panel figure {
        margin-bottom: 18px;

        border-radius: 9px;
    }

    .stay-hotel-panel figure img {
        aspect-ratio:
            16 / 10;
    }

    .stay-hotel-panel__copy h3 {
        margin-bottom: 12px;

        font-size: 28px;
    }

    .stay-hotel-panel__copy p {
        font-size: 10px;
        line-height: 1.62;
    }

    .stay-hotel-panel__copy
    .stay-hotel-panel__lead {
        font-size: 13px;
    }

    .stay-hotel-panel__facts {
        grid-template-columns:
            1fr;

        margin-top: 16px;
    }

    .stay-hotel-panel__facts > div {
        display: flex;

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

        gap: 13px;

        padding:
            9px
            1px;
    }

    .stay-hotel-panel__facts > div + div {
        border-left: 0;

        border-top:
            1px solid #d5bca2;
    }

    .stay-hotel-panel__facts strong {
        margin-top: 0;

        font-size: 14px;

        text-align: right;
    }


    /* RECREATION */

    .stay-recreation {
        padding:
            36px
            0
            42px;
    }

    .stay-recreation__layout {
        grid-template-columns:
            1fr;

        gap: 22px;
    }

    .stay-recreation__visual {
        border-radius: 12px;
    }

    .stay-recreation__visual img {
        aspect-ratio:
            16 / 10;
    }

    .stay-recreation__copy h3 {
        font-size: 30px;
    }

    .stay-recreation__copy p {
        font-size: 11px;
    }

    .stay-recreation__copy
    .stay-recreation__lead {
        font-size: 14px;
    }


    /* PROGRAM */

    .stay-program {
        padding:
            36px
            0
            43px;
    }

    .stay-program__layout {
        grid-template-columns:
            1fr;

        gap: 22px;
    }

    .stay-program h3 {
        font-size: 30px;
    }

    .stay-program__headline > p:last-child {
        font-size: 11px;
    }

    .stay-program__steps {
        grid-template-columns:
            1fr;
    }

    .stay-program__steps article {
        padding: 15px;
    }

    .stay-program__steps strong {
        font-size: 28px;
    }

    .stay-program__steps p {
        font-size: 10px;
    }


    /* NOTE */

    .stay-note {
        padding-bottom:
            88px;
    }

}

/* =========================================================
   MOBILE END
========================================================= */


/* =========================================================
   SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .stay-shell {
        width:
            calc(100% - 24px);
    }

    .stay-hero__background {
        height: 245px;
    }

    .stay-hotel-card {
        grid-template-columns:
            31%
            minmax(0, 69%);
    }

    .stay-hotel-card__body strong {
        font-size: 18px;
    }

}

/* =========================================================
   SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — STAY + PLAY PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — VISIT SUDBURY PAGE START
========================================================= */

.visit-page {
    --visit-night: #172a31;
    --visit-night-soft: #25434b;

    --visit-teal: #315b60;
    --visit-teal-soft: #728f8e;

    --visit-rust: #ad6745;
    --visit-copper: #c78255;

    --visit-gold: #dda55f;
    --visit-gold-light: #f0ca8a;

    --visit-cream: #f3eade;
    --visit-paper: #fffaf3;
    --visit-sand: #e2d4c3;
    --visit-mist: #d9e2de;

    --visit-ink: #30454a;
    --visit-copy: #626b6d;

    color: var(--visit-ink);
    background: var(--visit-cream);
}

.visit-shell {
    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );

    margin-inline: auto;
}

.visit-kicker {
    margin: 0;

    color: var(--visit-gold-light);

    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;

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

.visit-kicker--dark {
    color: #9e6040;
}

.visit-section-heading {
    max-width: 840px;

    margin-bottom: 28px;
}

.visit-section-heading h3 {
    margin:
        8px
        0
        12px;

    color: var(--visit-ink);

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

    font-size:
        clamp(36px, 4vw, 52px);

    line-height: 1.05;
    letter-spacing: -.03em;
}

.visit-section-heading h3 span {
    display: block;

    color: var(--visit-rust);
}

.visit-section-heading > p:last-child {
    max-width: 660px;

    margin: 0;

    color: var(--visit-copy);

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


/* =========================================================
   HERO START
========================================================= */

.visit-hero {
    position: relative;

    overflow: hidden;

    padding:
        clamp(74px, 8vw, 112px)
        0
        clamp(64px, 7vw, 92px);

    color: #f8f5ef;

    background:
        radial-gradient(
            circle at 88% 13%,
            rgba(221, 165, 95, .19),
            transparent 29%
        ),
        radial-gradient(
            circle at 10% 100%,
            rgba(73, 119, 120, .18),
            transparent 33%
        ),
        linear-gradient(
            128deg,
            #14272e 0%,
            #234049 54%,
            #355a60 100%
        );
}

.visit-hero::before {
    content: "";

    position: absolute;

    right: -145px;
    bottom: -220px;

    width: 470px;
    height: 470px;

    border:
        1px solid rgba(240, 202, 138, .16);

    border-radius: 50%;

    pointer-events: none;
}

.visit-hero::after {
    content: "";

    position: absolute;

    right: 55px;
    bottom: -112px;

    width: 245px;
    height: 245px;

    border:
        1px solid rgba(240, 202, 138, .11);

    border-radius: 50%;

    pointer-events: none;
}

.visit-hero__layout {
    position: relative;
    z-index: 1;

    display: grid;

    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(330px, .58fr);

    align-items: center;

    gap:
        clamp(50px, 7vw, 98px);
}

.visit-hero__copy h2 {
    max-width: 810px;

    margin:
        13px
        0
        22px;

    color: #fffaf2;

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

    font-size:
        clamp(50px, 5.6vw, 80px);

    line-height: 1;
    letter-spacing: -.045em;
}

.visit-hero__copy h2 span {
    display: block;

    color: var(--visit-gold-light);
}

.visit-hero__copy p {
    max-width: 700px;

    margin:
        0
        0
        11px;

    color: #d6e0e1;

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

.visit-hero__copy
.visit-hero__lead {
    color: #fff4e8;

    font-size: 18px;
}

.visit-hero__location {
    position: relative;

    padding:
        clamp(27px, 3.5vw, 41px);

    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .075),
            rgba(255, 255, 255, .035)
        );

    border:
        1px solid rgba(240, 202, 138, .40);

    border-radius:
        5px
        44px
        5px
        5px;

    box-shadow:
        0 22px 44px
        rgba(0, 0, 0, .16);

    backdrop-filter: blur(8px);
}

.visit-hero__location::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 5px;
    height: 100%;

    background: var(--visit-rust);
}

.visit-hero__location > small {
    color: var(--visit-gold-light);

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

    letter-spacing: .14em;
}

.visit-hero__location > strong {
    display: block;

    margin-top: 13px;

    color: #fffaf2;

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

    font-size:
        clamp(31px, 3vw, 42px);

    line-height: 1.07;
}

.visit-hero__location > span {
    display: block;

    margin-top: 8px;

    color: #d5dfe0;

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

.visit-hero__hours {
    display: grid;

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

    margin-top: 25px;

    border-top:
        1px solid rgba(240, 202, 138, .28);
}

.visit-hero__hours > div {
    padding:
        15px
        10px
        0
        0;
}

.visit-hero__hours > div + div {
    padding-left: 16px;

    border-left:
        1px solid rgba(240, 202, 138, .19);
}

.visit-hero__hours small {
    display: block;

    color: #dca76b;

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

    letter-spacing: .1em;
}

.visit-hero__hours strong {
    display: block;

    margin-top: 5px;

    color: #fff4e7;

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

    font-size: 17px;
}

/* =========================================================
   HERO END
========================================================= */


/* =========================================================
   ESSENTIALS START
========================================================= */

.visit-essentials {
    padding:
        clamp(49px, 5.5vw, 75px)
        0;

    background:
        linear-gradient(
            150deg,
            #f8f1e7,
            #e7daca
        );
}

.visit-facts {
    display: grid;

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

    gap: 10px;
}

.visit-fact {
    min-height: 205px;

    padding:
        23px
        21px;

    background: #fffaf3;

    border:
        1px solid #cdb79f;

    border-top:
        4px solid var(--visit-teal);

    border-radius: 9px;
}

.visit-fact:nth-child(2) {
    background: #eee2d5;

    border-top-color:
        var(--visit-rust);
}

.visit-fact:nth-child(3) {
    background: #e3e7e3;

    border-top-color:
        #6b8985;
}

.visit-fact--accent {
    color: #f7f4ef;

    background:
        linear-gradient(
            145deg,
            #28464e,
            #3d6263
        );

    border-color: #45696a;

    border-top-color:
        var(--visit-gold);
}

.visit-fact small {
    color: #9d6040;

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

    letter-spacing: .13em;
}

.visit-fact strong {
    display: block;

    margin-top: 18px;

    color: var(--visit-ink);

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

    font-size: 23px;
    line-height: 1.12;
}

.visit-fact p {
    margin:
        10px
        0
        0;

    color: var(--visit-copy);

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

.visit-fact--accent small {
    color: var(--visit-gold-light);
}

.visit-fact--accent strong {
    color: #fff7ed;
}

.visit-fact--accent p {
    color: #d7e0df;
}

/* =========================================================
   ESSENTIALS END
========================================================= */


/* =========================================================
   EXPERIENCE START
========================================================= */

.visit-experience {
    padding:
        clamp(56px, 6vw, 84px)
        0;

    color: #f4f5f3;

    background:
        linear-gradient(
            128deg,
            #192f36,
            #33535b
        );
}

.visit-experience__layout {
    display: grid;

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

    gap:
        clamp(42px, 7vw, 92px);
}

.visit-experience__heading h3 {
    margin:
        9px
        0
        0;

    color: #fff8ef;

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

    font-size:
        clamp(38px, 4.2vw, 55px);

    line-height: 1.06;
}

.visit-experience__heading h3 span {
    display: block;

    color: var(--visit-gold-light);
}

.visit-experience__copy {
    padding-left: 29px;

    border-left:
        2px solid rgba(240, 202, 138, .56);
}

.visit-experience__copy p {
    max-width: 720px;

    margin:
        0
        0
        12px;

    color: #d3dede;

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

.visit-experience__copy
.visit-experience__lead {
    color: #fff3e6;

    font-size: 18px;
}

/* =========================================================
   EXPERIENCE END
========================================================= */


/* =========================================================
   RECOMMENDATIONS START
========================================================= */

.visit-recommendations {
    padding:
        clamp(52px, 6vw, 82px)
        0;

    background:
        #eee5da;
}

.visit-recommendations__grid {
    display: grid;

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

    gap: 10px;
}

.visit-recommendations__grid article {
    min-height: 255px;

    padding:
        25px
        22px;

    background:
        #fffaf3;

    border:
        1px solid #ccb69d;

    border-radius: 9px;
}

.visit-recommendations__grid article:nth-child(2),
.visit-recommendations__grid article:nth-child(5) {
    background:
        #e5dacc;
}

.visit-recommendations__grid article:nth-child(3),
.visit-recommendations__grid article:nth-child(6) {
    background:
        #dbe4e0;
}

.visit-recommendation__number {
    display: none;
}

.visit-recommendations__grid small {
    display: block;

    color: #9d6040;

    font-size: 7px;
    font-weight: 900;
    line-height: 1.4;

    letter-spacing: .13em;
}

.visit-recommendations__grid strong {
    display: block;

    max-width: 335px;

    margin-top: 25px;

    color: var(--visit-ink);

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

    font-size: 24px;
    line-height: 1.13;
}

.visit-recommendations__grid p {
    margin:
        11px
        0
        0;

    color: var(--visit-copy);

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

/* =========================================================
   RECOMMENDATIONS END
========================================================= */


/* =========================================================
   RHYTHM START
========================================================= */

.visit-rhythm {
    padding:
        clamp(52px, 6vw, 80px)
        0;

    color: #f5f2ef;

    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(221, 165, 95, .12),
            transparent 29%
        ),
        linear-gradient(
            128deg,
            #533944,
            #704c4d
        );
}

.visit-rhythm__heading {
    max-width: 780px;

    margin-bottom: 26px;
}

.visit-rhythm__heading h3 {
    margin:
        8px
        0
        0;

    color: #fff8ef;

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

    font-size:
        clamp(36px, 4vw, 52px);

    line-height: 1.06;
}

.visit-rhythm__heading h3 span {
    display: block;

    color: var(--visit-gold-light);
}

.visit-rhythm__grid {
    display: grid;

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

    border-top:
        1px solid rgba(240, 202, 138, .31);

    border-left:
        1px solid rgba(240, 202, 138, .20);
}

.visit-rhythm__grid article {
    min-height: 230px;

    padding:
        22px
        20px;

    border-right:
        1px solid rgba(240, 202, 138, .20);

    border-bottom:
        1px solid rgba(240, 202, 138, .20);
}

.visit-rhythm__grid small {
    color: #e2ac69;

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

    letter-spacing: .12em;
}

.visit-rhythm__grid strong {
    display: block;

    margin-top: 19px;

    color: #fff5e9;

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

    font-size: 21px;
    line-height: 1.16;
}

.visit-rhythm__grid p {
    margin:
        10px
        0
        0;

    color: #ded1d2;

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

/* =========================================================
   RHYTHM END
========================================================= */


/* =========================================================
   AMENITIES START
========================================================= */

.visit-amenities {
    padding:
        clamp(54px, 6vw, 80px)
        0;

    background:
        linear-gradient(
            145deg,
            #f7f1e8,
            #e3d6c7
        );
}

.visit-amenities__layout {
    display: grid;

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

    gap:
        clamp(42px, 7vw, 90px);
}

.visit-amenities h3 {
    margin:
        8px
        0
        0;

    color: var(--visit-ink);

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

    font-size:
        clamp(36px, 4vw, 51px);

    line-height: 1.06;
}

.visit-amenities h3 span {
    display: block;

    color: var(--visit-rust);
}

.visit-amenities__list {
    border-top:
        2px solid #a76745;
}

.visit-amenities__list > div {
    padding:
        19px
        0;

    border-bottom:
        1px solid #ccb79f;
}

.visit-amenities__list > div > span {
    display: none;
}

.visit-amenities__list strong {
    color: var(--visit-ink);

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

    font-size: 20px;
}

.visit-amenities__list p {
    max-width: 650px;

    margin:
        6px
        0
        0;

    color: var(--visit-copy);

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

/* =========================================================
   AMENITIES END
========================================================= */


/* =========================================================
   CLOSING START
========================================================= */

.visit-closing {
    padding:
        clamp(54px, 6vw, 84px)
        0
        clamp(68px, 7vw, 96px);

    color: #f5f5f2;

    background:
        radial-gradient(
            circle at 87% 15%,
            rgba(221, 165, 95, .13),
            transparent 30%
        ),
        #172a31;
}

.visit-closing__layout {
    display: grid;

    grid-template-columns:
        minmax(0, .77fr)
        minmax(0, 1.23fr);

    gap:
        clamp(42px, 7vw, 90px);
}

.visit-closing h3 {
    margin:
        8px
        0
        0;

    color: #fff8ef;

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

    font-size:
        clamp(37px, 4.2vw, 55px);

    line-height: 1.06;
}

.visit-closing h3 span {
    display: block;

    color: var(--visit-gold-light);
}

.visit-closing__layout >
div:last-child {
    padding-left: 28px;

    border-left:
        2px solid rgba(240, 202, 138, .52);
}

.visit-closing p {
    max-width: 680px;

    margin:
        0
        0
        11px;

    color: #ccd7d8;

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

.visit-closing
.visit-closing__lead {
    color: #fff1e4;

    font-size: 16px;
}

.visit-closing__address {
    margin-top: 24px;

    padding-top: 18px;

    border-top:
        1px solid rgba(240, 202, 138, .27);
}

.visit-closing__address small {
    color: #dca668;

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

    letter-spacing: .12em;
}

.visit-closing__address strong {
    display: block;

    margin-top: 6px;

    color: #fff6eb;

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

    font-size: 23px;
}

.visit-closing__address span {
    display: block;

    margin-top: 4px;

    color: #ccd7d8;

    font-size: 11px;
}

/* =========================================================
   CLOSING END
========================================================= */


/* =========================================================
   NOTE START
========================================================= */

.visit-note {
    padding:
        14px
        0
        92px;

    color: #756f69;

    background:
        #f2e9de;
}

.visit-note p {
    max-width: 900px;

    margin: 0;

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

/* =========================================================
   NOTE END
========================================================= */


/* =========================================================
   TABLET START
========================================================= */

@media (max-width: 1000px) and (min-width: 701px) {

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

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

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

}

/* =========================================================
   TABLET END
========================================================= */


/* =========================================================
   MOBILE START
========================================================= */

@media (max-width: 700px) {

    .visit-shell {
        width:
            calc(100% - 30px);
    }


    /* HERO */

    .visit-hero {
        padding:
            38px
            0
            42px;
    }

    .visit-hero__layout {
        grid-template-columns:
            1fr;

        gap: 26px;
    }

    .visit-hero__copy h2 {
        font-size:
            clamp(39px, 10.5vw, 52px);
    }

    .visit-hero__copy p {
        font-size: 12px;
    }

    .visit-hero__copy
    .visit-hero__lead {
        font-size: 15px;
    }

    .visit-hero__location {
        padding: 21px;

        border-radius:
            5px
            28px
            5px
            5px;
    }

    .visit-hero__location > strong {
        font-size: 29px;
    }

    .visit-hero__hours {
        grid-template-columns:
            1fr;
    }

    .visit-hero__hours > div {
        padding:
            13px
            0;
    }

    .visit-hero__hours > div + div {
        padding-left: 0;

        border-left: 0;

        border-top:
            1px solid rgba(240, 202, 138, .20);
    }


    /* HEADINGS */

    .visit-section-heading {
        margin-bottom: 20px;
    }

    .visit-section-heading h3,
    .visit-experience__heading h3,
    .visit-rhythm__heading h3,
    .visit-amenities h3,
    .visit-closing h3 {
        font-size: 30px;
    }

    .visit-section-heading > p:last-child {
        font-size: 11px;
    }


    /* ESSENTIALS */

    .visit-essentials {
        padding:
            35px
            0;
    }

    .visit-facts {
        grid-template-columns:
            1fr;

        gap: 8px;
    }

    .visit-fact {
        min-height: 0;

        padding: 17px;
    }

    .visit-fact strong {
        margin-top: 11px;

        font-size: 20px;
    }

    .visit-fact p {
        font-size: 11px;
    }


    /* EXPERIENCE */

    .visit-experience {
        padding:
            37px
            0;
    }

    .visit-experience__layout {
        grid-template-columns:
            1fr;

        gap: 18px;
    }

    .visit-experience__copy {
        padding:
            15px
            0
            0;

        border-left: 0;

        border-top:
            2px solid rgba(240, 202, 138, .52);
    }

    .visit-experience__copy p {
        font-size: 11px;
    }

    .visit-experience__copy
    .visit-experience__lead {
        font-size: 14px;
    }


    /* RECOMMENDATIONS */

    .visit-recommendations {
        padding:
            37px
            0;
    }

    .visit-recommendations__grid {
        grid-template-columns:
            1fr;

        gap: 8px;
    }

    .visit-recommendations__grid article {
        min-height: 0;

        padding: 18px;
    }

    .visit-recommendations__grid strong {
        margin-top: 15px;

        font-size: 21px;
    }

    .visit-recommendations__grid p {
        font-size: 11px;
    }


    /* RHYTHM */

    .visit-rhythm {
        padding:
            37px
            0;
    }

    .visit-rhythm__heading {
        margin-bottom: 20px;
    }

    .visit-rhythm__grid {
        grid-template-columns:
            1fr;
    }

    .visit-rhythm__grid article {
        min-height: 0;

        padding: 17px;
    }

    .visit-rhythm__grid strong {
        margin-top: 12px;

        font-size: 20px;
    }


    /* AMENITIES */

    .visit-amenities {
        padding:
            37px
            0;
    }

    .visit-amenities__layout {
        grid-template-columns:
            1fr;

        gap: 22px;
    }

    .visit-amenities__list > div {
        padding:
            15px
            0;
    }

    .visit-amenities__list strong {
        font-size: 18px;
    }

    .visit-amenities__list p {
        font-size: 11px;
    }


    /* CLOSING */

    .visit-closing {
        padding:
            38px
            0
            48px;
    }

    .visit-closing__layout {
        grid-template-columns:
            1fr;

        gap: 19px;
    }

    .visit-closing__layout >
    div:last-child {
        padding:
            14px
            0
            0;

        border-left: 0;

        border-top:
            2px solid rgba(240, 202, 138, .50);
    }

    .visit-closing p {
        font-size: 11px;
    }

    .visit-closing
    .visit-closing__lead {
        font-size: 14px;
    }

    .visit-closing__address strong {
        font-size: 20px;
    }


    /* NOTE */

    .visit-note {
        padding-bottom:
            88px;
    }

}

/* =========================================================
   MOBILE END
========================================================= */


/* =========================================================
   SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .visit-shell {
        width:
            calc(100% - 24px);
    }

    .visit-hero__copy h2 {
        font-size: 39px;
    }

}

/* =========================================================
   SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — VISIT SUDBURY PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — ABOUT SUDBURY PAGE START
========================================================= */

.about-page {
    --about-night: #201b25;
    --about-night-soft: #332938;

    --about-plum: #5b3b55;
    --about-plum-soft: #81546f;

    --about-rust: #aa654d;
    --about-copper: #c57f59;

    --about-gold: #dda766;
    --about-gold-light: #f0cb8e;

    --about-cream: #f4ece3;
    --about-paper: #fffaf4;
    --about-sand: #e5d8ca;
    --about-mist: #dde3df;

    --about-ink: #3b3841;
    --about-copy: #68646b;

    color: var(--about-ink);
    background: var(--about-cream);
}

.about-shell {
    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );

    margin-inline: auto;
}

.about-kicker {
    margin: 0;

    color: var(--about-gold-light);

    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;

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

.about-kicker--dark {
    color: #955944;
}

.about-section-heading {
    max-width: 840px;

    margin-bottom: 27px;
}

.about-section-heading h3 {
    margin:
        8px
        0
        11px;

    color: var(--about-ink);

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

    font-size:
        clamp(36px, 4vw, 52px);

    line-height: 1.06;
    letter-spacing: -.03em;
}

.about-section-heading h3 span {
    display: block;

    color: var(--about-rust);
}

.about-section-heading > p:last-child {
    max-width: 680px;

    margin: 0;

    color: var(--about-copy);

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


/* =========================================================
   HERO START
========================================================= */

.about-hero {
    position: relative;

    overflow: hidden;

    padding:
        clamp(76px, 8vw, 114px)
        0
        clamp(67px, 7vw, 94px);

    color: #faf6f3;

    background:
        radial-gradient(
            circle at 87% 14%,
            rgba(197, 127, 89, .19),
            transparent 29%
        ),
        radial-gradient(
            circle at 10% 100%,
            rgba(129, 84, 111, .22),
            transparent 33%
        ),
        linear-gradient(
            127deg,
            #1d1821 0%,
            #352838 53%,
            #5a3a50 100%
        );
}

.about-hero::before {
    content: "";

    position: absolute;

    right: -145px;
    bottom: -225px;

    width: 475px;
    height: 475px;

    border:
        1px solid rgba(240, 203, 142, .15);

    border-radius: 50%;

    pointer-events: none;
}

.about-hero::after {
    content: "";

    position: absolute;

    right: 50px;
    bottom: -110px;

    width: 250px;
    height: 250px;

    border:
        1px solid rgba(240, 203, 142, .10);

    border-radius: 50%;

    pointer-events: none;
}

.about-hero__layout {
    position: relative;
    z-index: 1;

    display: grid;

    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(330px, .58fr);

    align-items: center;

    gap:
        clamp(50px, 7vw, 98px);
}

.about-hero__copy h2 {
    max-width: 840px;

    margin:
        13px
        0
        22px;

    color: #fffaf5;

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

    font-size:
        clamp(50px, 5.6vw, 80px);

    line-height: 1;
    letter-spacing: -.045em;
}

.about-hero__copy h2 span {
    display: block;

    color: var(--about-gold-light);
}

.about-hero__copy p {
    max-width: 720px;

    margin:
        0
        0
        11px;

    color: #dfd8df;

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

.about-hero__copy
.about-hero__lead {
    color: #fff2e8;

    font-size: 18px;
}

.about-hero__statement {
    position: relative;

    padding:
        clamp(27px, 3.5vw, 41px);

    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .08),
            rgba(255, 255, 255, .035)
        );

    border:
        1px solid rgba(240, 203, 142, .38);

    border-radius:
        42px
        5px
        5px
        5px;

    box-shadow:
        0 22px 44px
        rgba(0, 0, 0, .16);

    backdrop-filter: blur(8px);
}

.about-hero__statement::before {
    content: "";

    position: absolute;

    top: 0;
    right: 0;

    width: 5px;
    height: 100%;

    background:
        var(--about-rust);
}

.about-hero__statement small {
    color: var(--about-gold-light);

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

    letter-spacing: .14em;
}

.about-hero__statement strong {
    display: block;

    margin-top: 15px;

    color: #fffaf5;

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

    font-size:
        clamp(31px, 3vw, 42px);

    line-height: 1.08;
}

.about-hero__statement strong span {
    display: block;

    color: var(--about-gold-light);
}

.about-hero__statement p {
    margin:
        13px
        0
        0;

    color: #ddd5dd;

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

/* =========================================================
   HERO END
========================================================= */


/* =========================================================
   INTRO START
========================================================= */

.about-intro {
    padding:
        clamp(51px, 6vw, 79px)
        0;

    background:
        linear-gradient(
            150deg,
            #f7f0e8,
            #e7dbcf
        );
}

.about-intro__layout {
    display: grid;

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

    gap:
        clamp(42px, 7vw, 90px);
}

.about-intro h3 {
    margin:
        8px
        0
        0;

    color: var(--about-ink);

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

    font-size:
        clamp(38px, 4.2vw, 54px);

    line-height: 1.06;
}

.about-intro h3 span {
    display: block;

    color: var(--about-rust);
}

.about-intro__copy {
    padding-left: 29px;

    border-left:
        2px solid #b86f51;
}

.about-intro__copy p {
    max-width: 750px;

    margin:
        0
        0
        12px;

    color: var(--about-copy);

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

.about-intro__copy
.about-intro__lead {
    color: #474149;

    font-size: 18px;
}

/* =========================================================
   INTRO END
========================================================= */


/* =========================================================
   PILLARS START
========================================================= */

.about-pillars {
    padding:
        clamp(52px, 6vw, 82px)
        0;

    background:
        #eee5dc;
}

.about-pillars__grid {
    display: grid;

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

    gap: 10px;
}

.about-pillars__grid article {
    min-height: 250px;

    padding:
        24px
        22px;

    background:
        #fffaf4;

    border:
        1px solid #d0baa7;

    border-top:
        4px solid #65485e;

    border-radius: 9px;
}

.about-pillars__grid article:nth-child(2),
.about-pillars__grid article:nth-child(5) {
    background:
        #e6d9cf;

    border-top-color:
        var(--about-rust);
}

.about-pillars__grid article:nth-child(3),
.about-pillars__grid article:nth-child(6) {
    background:
        #dde4df;

    border-top-color:
        #66817a;
}

.about-pillars__grid small {
    color: #965942;

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

    letter-spacing: .13em;
}

.about-pillars__grid strong {
    display: block;

    margin-top: 20px;

    color: var(--about-ink);

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

    font-size: 23px;
    line-height: 1.14;
}

.about-pillars__grid p {
    margin:
        10px
        0
        0;

    color: var(--about-copy);

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

/* =========================================================
   PILLARS END
========================================================= */


/* =========================================================
   PHILOSOPHY START
========================================================= */

.about-philosophy {
    padding:
        clamp(55px, 6vw, 84px)
        0;

    color: #f6f3f5;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(197, 127, 89, .13),
            transparent 28%
        ),
        linear-gradient(
            127deg,
            #281f2a,
            #51374a
        );
}

.about-philosophy__layout {
    display: grid;

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

    gap:
        clamp(42px, 7vw, 92px);
}

.about-philosophy__heading h3 {
    margin:
        9px
        0
        0;

    color: #fff9f4;

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

    font-size:
        clamp(38px, 4.2vw, 55px);

    line-height: 1.06;
}

.about-philosophy__heading h3 span {
    display: block;

    color: var(--about-gold-light);
}

.about-philosophy__copy {
    padding-left: 29px;

    border-left:
        2px solid rgba(240, 203, 142, .55);
}

.about-philosophy__copy p {
    max-width: 730px;

    margin:
        0
        0
        12px;

    color: #ded5dd;

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

.about-philosophy__copy
.about-philosophy__lead {
    color: #fff2e8;

    font-size: 18px;
}

/* =========================================================
   PHILOSOPHY END
========================================================= */


/* =========================================================
   VISIT TYPES START
========================================================= */

.about-visits {
    padding:
        clamp(52px, 6vw, 80px)
        0;

    background:
        linear-gradient(
            150deg,
            #f7f1e9,
            #e3d8cc
        );
}

.about-visits__grid {
    display: grid;

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

    border-top:
        1px solid #c9ad96;

    border-left:
        1px solid #c9ad96;
}

.about-visits__grid article {
    min-height: 225px;

    padding:
        22px
        20px;

    border-right:
        1px solid #c9ad96;

    border-bottom:
        1px solid #c9ad96;
}

.about-visits__grid small {
    color: #965942;

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

    letter-spacing: .12em;
}

.about-visits__grid strong {
    display: block;

    margin-top: 18px;

    color: var(--about-ink);

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

    font-size: 21px;
    line-height: 1.15;
}

.about-visits__grid p {
    margin:
        9px
        0
        0;

    color: var(--about-copy);

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

/* =========================================================
   VISIT TYPES END
========================================================= */


/* =========================================================
   DIGITAL EXPERIENCE START
========================================================= */

.about-digital {
    padding:
        clamp(55px, 6vw, 84px)
        0;

    color: #f4f7f6;

    background:
        radial-gradient(
            circle at 7% 100%,
            rgba(100, 145, 135, .17),
            transparent 31%
        ),
        linear-gradient(
            128deg,
            #18312f,
            #31544f
        );
}

.about-digital__layout {
    display: grid;

    grid-template-columns:
        minmax(310px, .72fr)
        minmax(0, 1.28fr);

    gap:
        clamp(45px, 7vw, 92px);
}

.about-digital__statement h3 {
    margin:
        9px
        0
        16px;

    color: #fff9f2;

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

    font-size:
        clamp(37px, 4.1vw, 53px);

    line-height: 1.06;
}

.about-digital__statement h3 span {
    display: block;

    color: var(--about-gold-light);
}

.about-digital__statement > p:last-child {
    max-width: 520px;

    margin: 0;

    color: #c7d8d4;

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

.about-digital__details {
    display: grid;

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

    border-top:
        1px solid rgba(240, 203, 142, .32);

    border-left:
        1px solid rgba(240, 203, 142, .21);
}

.about-digital__details article {
    min-height: 205px;

    padding:
        21px;

    border-right:
        1px solid rgba(240, 203, 142, .21);

    border-bottom:
        1px solid rgba(240, 203, 142, .21);
}

.about-digital__details small {
    color: #e1ae6c;

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

    letter-spacing: .12em;
}

.about-digital__details strong {
    display: block;

    margin-top: 11px;

    color: #fff7ed;

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

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

.about-digital__details p {
    margin:
        8px
        0
        0;

    color: #c5d5d1;

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

/* =========================================================
   DIGITAL EXPERIENCE END
========================================================= */


/* =========================================================
   PLACE START
========================================================= */

.about-place {
    padding:
        clamp(51px, 5.5vw, 77px)
        0;

    background:
        #eee6dd;
}

.about-place__layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(320px, .62fr);

    align-items: center;

    gap:
        clamp(44px, 7vw, 90px);
}

.about-place h3 {
    margin:
        8px
        0
        11px;

    color: var(--about-ink);

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

    font-size:
        clamp(36px, 4vw, 51px);

    line-height: 1.06;
}

.about-place h3 span {
    display: block;

    color: var(--about-rust);
}

.about-place p {
    max-width: 690px;

    margin:
        0
        0
        10px;

    color: var(--about-copy);

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

.about-place__address {
    position: relative;

    padding:
        27px;

    background:
        #fffaf4;

    border:
        1px solid #d0baa7;

    border-left:
        5px solid var(--about-rust);
}

.about-place__address small {
    color: #955942;

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

    letter-spacing: .12em;
}

.about-place__address strong {
    display: block;

    margin-top: 10px;

    color: var(--about-ink);

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

    font-size: 27px;
}

.about-place__address span {
    display: block;

    margin-top: 6px;

    color: var(--about-copy);

    font-size: 11px;
}

/* =========================================================
   PLACE END
========================================================= */


/* =========================================================
   CLOSING START
========================================================= */

.about-closing {
    padding:
        clamp(54px, 6vw, 82px)
        0
        clamp(70px, 7vw, 98px);

    color: #f7f4f5;

    background:
        radial-gradient(
            circle at 87% 13%,
            rgba(197, 127, 89, .13),
            transparent 30%
        ),
        #1e1921;
}

.about-closing__layout {
    display: grid;

    grid-template-columns:
        minmax(0, .77fr)
        minmax(0, 1.23fr);

    gap:
        clamp(42px, 7vw, 90px);
}

.about-closing h3 {
    margin:
        8px
        0
        0;

    color: #fff9f4;

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

    font-size:
        clamp(37px, 4.2vw, 54px);

    line-height: 1.06;
}

.about-closing h3 span {
    display: block;

    color: var(--about-gold-light);
}

.about-closing__layout >
div:last-child {
    padding-left: 28px;

    border-left:
        2px solid rgba(240, 203, 142, .52);
}

.about-closing p {
    max-width: 720px;

    margin:
        0
        0
        11px;

    color: #dbd4da;

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

.about-closing
.about-closing__lead {
    color: #fff0e5;

    font-size: 16px;
}

/* =========================================================
   CLOSING END
========================================================= */


/* =========================================================
   TABLET START
========================================================= */

@media (max-width: 1000px) and (min-width: 701px) {

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

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

}

/* =========================================================
   TABLET END
========================================================= */


/* =========================================================
   MOBILE START
========================================================= */

@media (max-width: 700px) {

    .about-shell {
        width:
            calc(100% - 30px);
    }


    /* HERO */

    .about-hero {
        padding:
            38px
            0
            42px;
    }

    .about-hero__layout {
        grid-template-columns:
            1fr;

        gap: 25px;
    }

    .about-hero__copy h2 {
        font-size:
            clamp(39px, 10.5vw, 52px);
    }

    .about-hero__copy p {
        font-size: 12px;
    }

    .about-hero__copy
    .about-hero__lead {
        font-size: 15px;
    }

    .about-hero__statement {
        padding: 21px;

        border-radius:
            28px
            5px
            5px
            5px;
    }

    .about-hero__statement strong {
        font-size: 28px;
    }


    /* GENERAL HEADINGS */

    .about-section-heading {
        margin-bottom: 20px;
    }

    .about-section-heading h3,
    .about-intro h3,
    .about-philosophy__heading h3,
    .about-digital__statement h3,
    .about-place h3,
    .about-closing h3 {
        font-size: 30px;
    }

    .about-section-heading > p:last-child {
        font-size: 11px;
    }


    /* INTRO */

    .about-intro {
        padding:
            35px
            0;
    }

    .about-intro__layout {
        grid-template-columns:
            1fr;

        gap: 18px;
    }

    .about-intro__copy {
        padding:
            15px
            0
            0;

        border-left: 0;

        border-top:
            2px solid #b86f51;
    }

    .about-intro__copy p {
        font-size: 11px;
    }

    .about-intro__copy
    .about-intro__lead {
        font-size: 14px;
    }


    /* PILLARS */

    .about-pillars {
        padding:
            37px
            0;
    }

    .about-pillars__grid {
        grid-template-columns:
            1fr;

        gap: 8px;
    }

    .about-pillars__grid article {
        min-height: 0;

        padding: 18px;
    }

    .about-pillars__grid strong {
        margin-top: 12px;

        font-size: 21px;
    }

    .about-pillars__grid p {
        font-size: 11px;
    }


    /* PHILOSOPHY */

    .about-philosophy {
        padding:
            37px
            0;
    }

    .about-philosophy__layout {
        grid-template-columns:
            1fr;

        gap: 18px;
    }

    .about-philosophy__copy {
        padding:
            15px
            0
            0;

        border-left: 0;

        border-top:
            2px solid rgba(240, 203, 142, .52);
    }

    .about-philosophy__copy p {
        font-size: 11px;
    }

    .about-philosophy__copy
    .about-philosophy__lead {
        font-size: 14px;
    }


    /* VISIT TYPES */

    .about-visits {
        padding:
            37px
            0;
    }

    .about-visits__grid {
        grid-template-columns:
            1fr;
    }

    .about-visits__grid article {
        min-height: 0;

        padding: 17px;
    }

    .about-visits__grid strong {
        margin-top: 11px;

        font-size: 20px;
    }


    /* DIGITAL */

    .about-digital {
        padding:
            38px
            0;
    }

    .about-digital__layout {
        grid-template-columns:
            1fr;

        gap: 23px;
    }

    .about-digital__statement > p:last-child {
        font-size: 11px;
    }

    .about-digital__details {
        grid-template-columns:
            1fr;
    }

    .about-digital__details article {
        min-height: 0;

        padding: 16px;
    }

    .about-digital__details strong {
        font-size: 18px;
    }

    .about-digital__details p {
        font-size: 10px;
    }


    /* PLACE */

    .about-place {
        padding:
            37px
            0;
    }

    .about-place__layout {
        grid-template-columns:
            1fr;

        gap: 21px;
    }

    .about-place p {
        font-size: 11px;
    }

    .about-place__address {
        padding: 19px;
    }

    .about-place__address strong {
        font-size: 22px;
    }


    /* CLOSING */

    .about-closing {
        padding:
            38px
            0
            48px;
    }

    .about-closing__layout {
        grid-template-columns:
            1fr;

        gap: 19px;
    }

    .about-closing__layout >
    div:last-child {
        padding:
            14px
            0
            0;

        border-left: 0;

        border-top:
            2px solid rgba(240, 203, 142, .50);
    }

    .about-closing p {
        font-size: 11px;
    }

    .about-closing
    .about-closing__lead {
        font-size: 14px;
    }

}

/* =========================================================
   MOBILE END
========================================================= */


/* =========================================================
   SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .about-shell {
        width:
            calc(100% - 24px);
    }

    .about-hero__copy h2 {
        font-size: 39px;
    }

}

/* =========================================================
   SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — ABOUT SUDBURY PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — FAQ PAGE START
========================================================= */

.faq-page {
    --faq-night: #17292d;
    --faq-deep: #102125;

    --faq-teal: #376b68;
    --faq-teal-soft: #70aaa4;

    --faq-gold: #d7a35f;
    --faq-gold-light: #f0cc8e;

    --faq-rust: #a9654b;

    --faq-cream: #f3ece3;
    --faq-paper: #fffaf4;
    --faq-mist: #dde8e5;

    --faq-ink: #304746;
    --faq-copy: #606e6c;

    color: var(--faq-ink);
    background: var(--faq-cream);
}

.faq-shell {
    width: min(
        calc(100% - (var(--gutter) * 2)),
        1320px
    );

    margin-inline: auto;
}

.faq-kicker {
    margin: 0;

    color: var(--faq-gold-light);

    font-size: 9px;
    font-weight: 900;
    line-height: 1.5;

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

.faq-kicker--dark {
    color: #8c6547;
}


/* =========================================================
   FAQ HERO START
========================================================= */

.faq-hero {
    position: relative;

    overflow: hidden;

    padding:
        clamp(73px, 8vw, 108px)
        0
        clamp(63px, 7vw, 90px);

    color: #f7fbf9;

    background:
        radial-gradient(
            circle at 86% 15%,
            rgba(215, 163, 95, .18),
            transparent 29%
        ),
        radial-gradient(
            circle at 8% 100%,
            rgba(74, 137, 132, .19),
            transparent 33%
        ),
        linear-gradient(
            127deg,
            #102226 0%,
            #1f4043 56%,
            #356763 100%
        );
}

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

    position: absolute;

    right: -150px;
    bottom: -220px;

    width: 475px;
    height: 475px;

    border:
        1px solid rgba(240, 204, 142, .15);

    border-radius: 50%;

    pointer-events: none;
}

.faq-hero__layout {
    position: relative;
    z-index: 1;

    display: grid;

    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(330px, .58fr);

    align-items: center;

    gap:
        clamp(50px, 7vw, 98px);
}

.faq-hero__copy h2 {
    max-width: 800px;

    margin:
        13px
        0
        22px;

    color: #fbfffc;

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

    font-size:
        clamp(50px, 5.6vw, 80px);

    line-height: 1;
    letter-spacing: -.045em;
}

.faq-hero__copy h2 span {
    display: block;

    color: var(--faq-gold-light);
}

.faq-hero__copy p {
    max-width: 700px;

    margin:
        0
        0
        11px;

    color: #d6e4e1;

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

.faq-hero__copy
.faq-hero__lead {
    color: #fff5e9;

    font-size: 18px;
}

.faq-hero__note {
    position: relative;

    padding:
        clamp(27px, 3.5vw, 41px);

    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .08),
            rgba(255, 255, 255, .035)
        );

    border:
        1px solid rgba(240, 204, 142, .38);

    border-radius:
        5px
        42px
        5px
        5px;

    box-shadow:
        0 22px 44px
        rgba(0, 0, 0, .16);

    backdrop-filter: blur(8px);
}

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

    position: absolute;

    top: 0;
    left: 0;

    width: 5px;
    height: 100%;

    background: var(--faq-rust);
}

.faq-hero__note small {
    color: var(--faq-gold-light);

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

    letter-spacing: .13em;
}

.faq-hero__note strong {
    display: block;

    margin-top: 14px;

    color: #fffaf3;

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

    font-size:
        clamp(28px, 2.8vw, 40px);

    line-height: 1.1;
}

.faq-hero__note strong span {
    display: block;

    color: var(--faq-gold-light);
}

.faq-hero__note p {
    margin:
        12px
        0
        0;

    color: #d5e2df;

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

/* =========================================================
   FAQ HERO END
========================================================= */


/* =========================================================
   FAQ CONTENT START
========================================================= */

.faq-content {
    padding:
        clamp(52px, 6vw, 82px)
        0
        clamp(64px, 7vw, 94px);

    background:
        linear-gradient(
            150deg,
            #f7f1e8,
            #e1e8e4
        );
}

.faq-content__heading {
    max-width: 830px;

    margin-bottom:
        clamp(27px, 4vw, 40px);
}

.faq-content__heading h3 {
    margin:
        8px
        0
        11px;

    color: var(--faq-ink);

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

    font-size:
        clamp(36px, 4vw, 52px);

    line-height: 1.06;
    letter-spacing: -.03em;
}

.faq-content__heading h3 span {
    display: block;

    color: var(--faq-rust);
}

.faq-content__heading > p:last-child {
    max-width: 670px;

    margin: 0;

    color: var(--faq-copy);

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


/* TWO EQUAL COLUMNS */

.faq-grid {
    display: grid;

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

    align-items: start;

    gap:
        clamp(12px, 2vw, 20px);
}

.faq-column {
    display: grid;

    gap: 10px;
}


/* =========================================================
   FAQ ITEM START
========================================================= */

.faq-item {
    overflow: hidden;

    background:
        rgba(255, 250, 244, .94);

    border:
        1px solid #c5d3cf;

    border-radius: 11px;

    box-shadow:
        0 8px 20px
        rgba(29, 61, 60, .055);

    transition:
        border-color 180ms ease,
        box-shadow 180ms ease,
        background 180ms ease;
}

.faq-item:has(
    .faq-question[aria-expanded="true"]
) {
    background: #fffaf4;

    border-color: #5b9993;

    box-shadow:
        0 13px 30px
        rgba(24, 65, 63, .11);
}


/* QUESTION */

.faq-question {
    width: 100%;

    display: grid;

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

    align-items: center;

    gap: 18px;

    padding:
        21px
        19px
        21px
        22px;

    color: #304746;

    background: transparent;

    border: 0;

    cursor: pointer;

    text-align: left;

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

    font-size:
        clamp(17px, 1.45vw, 21px);

    font-weight: 700;

    line-height: 1.28;

    transition:
        color 180ms ease,
        background 180ms ease;
}

@media (hover: hover) and (pointer: fine) {

    .faq-question:hover {
        background:
            rgba(112, 170, 164, .10);
    }

}

.faq-question:focus-visible {
    outline:
        3px solid rgba(215, 163, 95, .55);

    outline-offset:
        -3px;
}


/* ICON */

.faq-question__icon {
    width: 36px;
    height: 36px;

    display: grid;
    place-items: center;

    color: #315c59;

    background:
        #d8e9e5;

    border:
        1px solid #b3d0cb;

    border-radius: 50%;

    transition:
        transform 220ms ease,
        color 180ms ease,
        background 180ms ease,
        border-color 180ms ease;
}

.faq-question__icon svg {
    width: 17px;
    height: 17px;

    fill: none;

    stroke: currentColor;
    stroke-width: 2;

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

.faq-question[aria-expanded="true"] {
    color: #1d3f3d;
}

.faq-question[aria-expanded="true"]
.faq-question__icon {
    color: #523321;

    background:
        #efd0a2;

    border-color:
        #d9a768;

    transform:
        rotate(180deg);
}


/* ANSWER */

.faq-answer {
    border-top:
        1px solid #d5e1de;
}

.faq-answer[hidden] {
    display: none;
}

.faq-answer__inner {
    padding:
        20px
        22px
        23px;

    background:
        linear-gradient(
            145deg,
            rgba(221, 235, 231, .64),
            rgba(255, 250, 244, .97)
        );
}

.faq-answer__inner p {
    margin:
        0
        0
        11px;

    color: #5e6c69;

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

.faq-answer__inner
.faq-answer__lead {
    color: #304b48;

    font-size: 15px;
    font-weight: 700;
}

.faq-answer__inner p:last-child {
    margin-bottom: 0;
}

.faq-answer__inner strong {
    color: #315e59;

    font-weight: 900;
}

/* =========================================================
   FAQ ITEM END
========================================================= */


/* =========================================================
   FAQ CONTENT END
========================================================= */


/* =========================================================
   FAQ CLOSING START
========================================================= */

.faq-closing {
    padding:
        clamp(52px, 6vw, 78px)
        0
        clamp(70px, 7vw, 98px);

    color: #f7faf8;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(215, 163, 95, .13),
            transparent 30%
        ),
        linear-gradient(
            128deg,
            #122529,
            #284d4d
        );
}

.faq-closing__layout {
    display: grid;

    grid-template-columns:
        minmax(0, .76fr)
        minmax(0, 1.24fr);

    gap:
        clamp(42px, 7vw, 90px);
}

.faq-closing h3 {
    margin:
        8px
        0
        0;

    color: #fffaf3;

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

    font-size:
        clamp(37px, 4.1vw, 53px);

    line-height: 1.06;
}

.faq-closing h3 span {
    display: block;

    color: var(--faq-gold-light);
}

.faq-closing__layout >
div:last-child {
    padding-left: 28px;

    border-left:
        2px solid rgba(240, 204, 142, .52);
}

.faq-closing p {
    max-width: 720px;

    margin:
        0
        0
        11px;

    color: #d2dfdc;

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

.faq-closing
.faq-closing__lead {
    color: #fff2e6;

    font-size: 16px;
}

/* =========================================================
   FAQ CLOSING END
========================================================= */


/* =========================================================
   FAQ MOBILE START
========================================================= */

@media (max-width: 700px) {

    .faq-shell {
        width:
            calc(100% - 30px);
    }


    /* HERO */

    .faq-hero {
        padding:
            38px
            0
            42px;
    }

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

        gap: 25px;
    }

    .faq-hero__copy h2 {
        font-size:
            clamp(39px, 10.5vw, 52px);
    }

    .faq-hero__copy p {
        font-size: 12px;
    }

    .faq-hero__copy
    .faq-hero__lead {
        font-size: 15px;
    }

    .faq-hero__note {
        padding: 20px;

        border-radius:
            5px
            28px
            5px
            5px;
    }

    .faq-hero__note strong {
        font-size: 27px;
    }

    .faq-hero__note p {
        font-size: 11px;
    }


    /* FAQ CONTENT */

    .faq-content {
        padding:
            35px
            0
            43px;
    }

    .faq-content__heading {
        margin-bottom: 22px;
    }

    .faq-content__heading h3 {
        font-size: 30px;
    }

    .faq-content__heading > p:last-child {
        font-size: 11px;
    }

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

        gap: 8px;
    }

    .faq-column {
        gap: 8px;
    }

    .faq-question {
        grid-template-columns:
            minmax(0, 1fr)
            31px;

        gap: 12px;

        padding:
            16px
            13px
            16px
            16px;

        font-size: 16px;
        line-height: 1.3;
    }

    .faq-question__icon {
        width: 30px;
        height: 30px;
    }

    .faq-question__icon svg {
        width: 14px;
        height: 14px;
    }

    .faq-answer__inner {
        padding:
            15px
            16px
            17px;
    }

    .faq-answer__inner p {
        font-size: 11px;
        line-height: 1.66;
    }

    .faq-answer__inner
    .faq-answer__lead {
        font-size: 13px;
    }


    /* CLOSING */

    .faq-closing {
        padding:
            37px
            0
            48px;
    }

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

        gap: 19px;
    }

    .faq-closing h3 {
        font-size: 30px;
    }

    .faq-closing__layout >
    div:last-child {
        padding:
            14px
            0
            0;

        border-left: 0;

        border-top:
            2px solid rgba(240, 204, 142, .50);
    }

    .faq-closing p {
        font-size: 11px;
    }

    .faq-closing
    .faq-closing__lead {
        font-size: 14px;
    }

}

/* =========================================================
   FAQ MOBILE END
========================================================= */


/* =========================================================
   FAQ SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .faq-shell {
        width:
            calc(100% - 24px);
    }

    .faq-hero__copy h2 {
        font-size: 39px;
    }

    .faq-question {
        font-size: 15px;
    }

}

/* =========================================================
   FAQ SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — FAQ PAGE END
========================================================= */
/* =========================================================
   SUDBURY CASINO — CASINO GAMES MOBILE INLINE PANEL FIX
========================================================= */

@media (max-width: 700px) {

    .games-page
    .games-selector >
    .games-panel {
        width: 100%;

        margin:
            -10px
            0
            10px;

        padding:
            25px
            14px
            31px;

        color:
            #3d3039;

        background:
            linear-gradient(
                160deg,
                #f5e8d8 0%,
                #ead7c2 55%,
                #f8efe4 100%
            );

        border:
            2px solid #b66f53;

        border-top: 0;

        border-radius:
            0
            0
            11px
            11px;

        box-shadow:
            0 12px 25px
            rgba(63, 38, 49, .14);
    }


    .games-page
    .games-selector >
    .games-selector__card[aria-selected="true"] {
        border-radius:
            11px
            11px
            0
            0;
    }


    .games-page
    .games-selector >
    .games-panel +
    .games-selector__card {
        margin-top: 10px;
    }


    /* =====================================================
       PANEL INTRO START
    ====================================================== */

    .games-page
    .games-selector >
    .games-panel
    .games-panel__title h3 {
        color:
            #382c35;
    }


    .games-page
    .games-selector >
    .games-panel
    .games-panel__title h3 span {
        color:
            #9b5944;
    }


    .games-page
    .games-selector >
    .games-panel
    .games-kicker--dark {
        color:
            #9b5b42;
    }


    .games-page
    .games-selector >
    .games-panel
    .games-panel__intro-copy {
        border-top-color:
            #c78d68;
    }


    .games-page
    .games-selector >
    .games-panel
    .games-panel__intro-copy p {
        color:
            #665d62;
    }


    .games-page
    .games-selector >
    .games-panel
    .games-panel__intro-copy
    .games-panel__lead {
        color:
            #473942;
    }

    /* =====================================================
       PANEL INTRO END
    ====================================================== */

}

/* =========================================================
   SUDBURY CASINO — CASINO GAMES MOBILE INLINE PANEL FIX END
========================================================= */
/* =========================================================
   SUDBURY CASINO — HERO CONTENT ALIGNMENT FIX START
========================================================= */


/* =====================================================
   MY CLUB REWARDS
===================================================== */

.rewards-hero__content {
    width:
        min(
            calc(100% - (var(--gutter) * 2)),
            1320px
        );

    margin-inline: auto;
}


/* =====================================================
   STAY + PLAY
===================================================== */

.stay-hero__content {
    width:
        min(
            calc(100% - (var(--gutter) * 2)),
            1320px
        );

    margin-inline: auto;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 700px) {

    .rewards-hero__content,
    .stay-hero__content {
        width:
            calc(100% - 30px);

        margin-inline: auto;
    }


    /*
       Keep the full-width mobile colour field
       on the hero itself instead of using
       the constrained content container.
    */

    .rewards-hero {
        background:
            radial-gradient(
                circle at 85% 0%,
                rgba(198, 138, 75, .12),
                transparent 34%
            ),
            #0a2c28;
    }

    .rewards-hero__content {
        background: transparent;
    }


    .stay-hero {
        background:
            linear-gradient(
                145deg,
                #182b36,
                #344b59
            );
    }

    .stay-hero__content {
        background: transparent;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 390px) {

    .rewards-hero__content,
    .stay-hero__content {
        width:
            calc(100% - 24px);
    }

}


/* =========================================================
   SUDBURY CASINO — HERO CONTENT ALIGNMENT FIX END
========================================================= */
/* =========================================================
   SUDBURY CASINO — SITE FOOTER START
========================================================= */

.site-footer {
    position: relative;

    color: #e9e1dd;

    background:
        radial-gradient(
            circle at 8% 0%,
            rgba(189, 113, 71, .13),
            transparent 28%
        ),
        radial-gradient(
            circle at 92% 100%,
            rgba(100, 55, 78, .14),
            transparent 31%
        ),
        linear-gradient(
            135deg,
            #151116 0%,
            #20181e 52%,
            #2b1e25 100%
        );

    border-top:
        1px solid rgba(239, 184, 125, .28);
}


/* =========================================================
   FOOTER MAIN START
========================================================= */

.footer-main {
    padding:
        50px
        0
        41px;
}


.footer-inner {
    width: 100%;

    max-width:
        var(--container);

    margin:
        0 auto;

    padding:
        0
        var(--gutter);

    display: grid;

    grid-template-columns:
        minmax(300px, 1.35fr)
        minmax(165px, .72fr)
        minmax(190px, .78fr)
        minmax(200px, .82fr);

    align-items:
        start;

    gap:
        clamp(32px, 4vw, 68px);
}

/* =========================================================
   FOOTER MAIN END
========================================================= */


/* =========================================================
   FOOTER BRAND START
========================================================= */

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


.footer-brand__logo {
    display:
        inline-flex;

    align-items:
        center;

    gap:
        12px;

    color:
        #fff8ef;

    transition:
        opacity
        var(--transition);
}


@media (hover: hover) and (pointer: fine) {

    .footer-brand__logo:hover {
        opacity: .86;
    }

}


.footer-brand__emblem {
    position: relative;

    width: 45px;
    height: 45px;

    display: grid;
    place-items: center;

    flex:
        0 0 auto;

    color:
        #25131a;

    background:
        linear-gradient(
            145deg,
            #efbd7d,
            #b86c45
        );

    border-radius:
        13px;

    transform:
        rotate(45deg);

    box-shadow:
        0 7px 18px
        rgba(0, 0, 0, .22);
}


.footer-brand__diamond {
    position: absolute;

    inset:
        5px;

    border:
        1px solid
        rgba(68, 28, 36, .34);

    border-radius:
        9px;
}


.footer-brand__letter {
    position: relative;

    z-index: 1;

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

    font-size:
        24px;

    font-weight:
        700;

    line-height:
        1;

    transform:
        rotate(-45deg);
}


.footer-brand__name {
    display: flex;

    flex-direction:
        column;

    gap:
        3px;
}


.footer-brand__name strong {
    color:
        #fff8ef;

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

    font-size:
        21px;

    font-weight:
        700;

    line-height:
        1;

    letter-spacing:
        .075em;
}


.footer-brand__name small {
    color:
        var(--copper-light);

    font-size:
        8px;

    font-weight:
        900;

    letter-spacing:
        .34em;
}


.footer-brand__copy {
    max-width:
        385px;

    margin:
        21px
        0
        0;

    color:
        rgba(231, 221, 219, .68);

    font-size:
        12px;

    line-height:
        1.7;
}


.footer-brand__location {
    margin-top:
        22px;

    padding-top:
        16px;

    border-top:
        1px solid
        rgba(239, 184, 125, .18);
}


.footer-brand__location small {
    display:
        block;

    color:
        #c37b54;

    font-size:
        7px;

    font-weight:
        900;

    letter-spacing:
        .14em;
}


.footer-brand__location strong {
    display:
        block;

    margin-top:
        6px;

    color:
        #fff3e7;

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

    font-size:
        18px;

    line-height:
        1.2;
}


.footer-brand__location span {
    display:
        block;

    margin-top:
        4px;

    color:
        rgba(229, 220, 218, .61);

    font-size:
        10px;

    line-height:
        1.5;
}

/* =========================================================
   FOOTER BRAND END
========================================================= */


/* =========================================================
   FOOTER LINK GROUPS START
========================================================= */

.footer-group h2 {
    margin:
        0
        0
        17px;

    color:
        var(--copper-light);

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

    font-size:
        9px;

    font-weight:
        900;

    line-height:
        1.4;

    letter-spacing:
        .15em;

    text-transform:
        uppercase;
}


.footer-links {
    display: grid;

    gap:
        10px;
}


.footer-links a {
    position: relative;

    width:
        fit-content;

    color:
        rgba(239, 232, 229, .80);

    font-size:
        12px;

    font-weight:
        600;

    line-height:
        1.45;

    transition:
        color var(--transition),
        transform var(--transition);
}


.footer-links a::after {
    content: "";

    position: absolute;

    right: 0;
    bottom: -2px;
    left: 0;

    height:
        1px;

    background:
        var(--copper-light);

    transform:
        scaleX(0);

    transform-origin:
        left;

    transition:
        transform
        var(--transition);
}


@media (hover: hover) and (pointer: fine) {

    .footer-links a:hover {
        color:
            #fff7ef;

        transform:
            translateX(3px);
    }


    .footer-links a:hover::after {
        transform:
            scaleX(1);
    }

}


.footer-links a:focus-visible {
    color:
        #ffffff;
}


/* =========================================================
   FOOTER AGE NOTE
========================================================= */

.footer-age {
    margin-top:
        24px;

    padding:
        15px
        0
        0;

    display: grid;

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

    align-items:
        center;

    gap:
        11px;

    border-top:
        1px solid
        rgba(239, 184, 125, .18);
}


.footer-age strong {
    width:
        42px;

    height:
        42px;

    display: grid;

    place-items:
        center;

    color:
        #24141a;

    background:
        linear-gradient(
            145deg,
            #efbd7d,
            #bd7147
        );

    border-radius:
        50%;

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

    font-size:
        16px;
}


.footer-age span {
    color:
        rgba(231, 223, 220, .62);

    font-size:
        9px;

    line-height:
        1.5;
}

/* =========================================================
   FOOTER LINK GROUPS END
========================================================= */


/* =========================================================
   FOOTER BOTTOM START
========================================================= */

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

    background:
        rgba(6, 5, 7, .18);
}


.footer-bottom__inner {
    width:
        100%;

    max-width:
        var(--container);

    margin:
        0 auto;

    padding:
        18px
        var(--gutter);

    display: flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        20px;
}


.footer-bottom p {
    margin:
        0;

    color:
        rgba(228, 218, 216, .48);

    font-size:
        9px;

    line-height:
        1.5;
}

/* =========================================================
   FOOTER BOTTOM END
========================================================= */


/* =========================================================
   FOOTER TABLET START
========================================================= */

@media (max-width: 1050px) {

    .footer-inner {
        grid-template-columns:
            minmax(250px, 1.25fr)
            repeat(
                3,
                minmax(140px, .75fr)
            );

        gap:
            32px
            24px;
    }

}

/* =========================================================
   FOOTER TABLET END
========================================================= */


/* =========================================================
   FOOTER MOBILE START
========================================================= */

@media (max-width: 700px) {

    .site-footer {
        padding-bottom:
            calc(
                74px +
                env(
                    safe-area-inset-bottom,
                    0px
                )
            );
    }


    .footer-main {
        padding:
            35px
            0
            30px;
    }


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

        gap:
            31px
            22px;

        padding:
            0
            18px;
    }


    .footer-brand {
        grid-column:
            1 / -1;

        max-width:
            100%;
    }


    .footer-brand__emblem {
        width:
            39px;

        height:
            39px;

        border-radius:
            11px;
    }


    .footer-brand__letter {
        font-size:
            21px;
    }


    .footer-brand__name strong {
        font-size:
            18px;
    }


    .footer-brand__copy {
        max-width:
            440px;

        margin-top:
            17px;

        font-size:
            11px;
    }


    .footer-brand__location {
        margin-top:
            18px;
    }


    .footer-group--legal {
        grid-column:
            1 / -1;
    }


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

        gap:
            9px
            18px;
    }


    .footer-links {
        gap:
            9px;
    }


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


    .footer-age {
        max-width:
            330px;
    }


    .footer-bottom__inner {
        flex-direction:
            column;

        align-items:
            flex-start;

        gap:
            5px;

        padding:
            15px
            18px;
    }


    .footer-bottom p {
        font-size:
            8px;
    }

}

/* =========================================================
   FOOTER MOBILE END
========================================================= */


/* =========================================================
   FOOTER SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

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

        gap:
            27px;

        padding:
            0
            14px;
    }


    .footer-brand,
    .footer-group--legal {
        grid-column:
            auto;
    }


    .footer-group--legal
    .footer-links {
        grid-template-columns:
            1fr;
    }


    .footer-bottom__inner {
        padding-right:
            14px;

        padding-left:
            14px;
    }

}

/* =========================================================
   FOOTER SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — SITE FOOTER END
========================================================= */

/* =========================================================
   SUDBURY CASINO — LEGAL PAGES START
========================================================= */

.legal-page {
    color: #443b40;

    background:
        #eee5da;
}


.legal-main {
    min-height: 60vh;
}


.legal-shell {
    width:
        min(
            calc(
                100% - (var(--gutter) * 2)
            ),
            1180px
        );

    margin-inline: auto;
}


/* =========================================================
   LEGAL HERO START
========================================================= */

.legal-hero {
    position: relative;

    overflow: hidden;

    padding:
        clamp(62px, 7vw, 94px)
        0
        clamp(50px, 6vw, 76px);

    color: #fff8f1;

    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(239, 184, 125, .19),
            transparent 30%
        ),
        radial-gradient(
            circle at 8% 100%,
            rgba(121, 38, 62, .17),
            transparent 31%
        ),
        linear-gradient(
            126deg,
            #171216 0%,
            #2a1921 55%,
            #562235 100%
        );
}


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

    position: absolute;

    top: -120px;
    right: -110px;

    width: 350px;
    height: 350px;

    border:
        1px solid
        rgba(239, 184, 125, .13);

    border-radius: 50%;

    pointer-events: none;
}


.legal-hero::after {
    content: "";

    position: absolute;

    right: 72px;
    bottom: -220px;

    width: 450px;
    height: 450px;

    border:
        1px solid
        rgba(239, 184, 125, .11);

    border-radius: 50%;

    pointer-events: none;
}


.legal-hero .legal-shell {
    position: relative;

    z-index: 1;
}


.legal-kicker {
    margin: 0;

    color:
        var(--copper-light);

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

    line-height: 1.5;

    letter-spacing: .17em;

    text-transform: uppercase;
}


.legal-hero h1 {
    max-width: 900px;

    margin:
        13px
        0
        0;

    color: #fffaf5;

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

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

    line-height: 1.02;

    letter-spacing: -.045em;

    text-wrap: balance;
}


.legal-updated {
    margin:
        22px
        0
        0;

    color:
        #e8b979;

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

    line-height: 1.5;

    letter-spacing: .05em;
}


.legal-lead {
    max-width: 790px;

    margin:
        21px
        0
        0;

    color:
        #e4dadd;

    font-size: 16px;

    line-height: 1.72;
}


/* =========================================================
   INDIVIDUAL LEGAL HERO TONES
========================================================= */

.legal-page--terms
.legal-hero {
    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(239, 184, 125, .19),
            transparent 30%
        ),
        linear-gradient(
            126deg,
            #171216 0%,
            #2a1921 54%,
            #562235 100%
        );
}


.legal-page--privacy
.legal-hero {
    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(222, 169, 102, .16),
            transparent 30%
        ),
        linear-gradient(
            126deg,
            #18151b 0%,
            #302635 55%,
            #5a3c52 100%
        );
}


.legal-page--responsible
.legal-hero {
    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(230, 181, 107, .16),
            transparent 31%
        ),
        linear-gradient(
            126deg,
            #142420 0%,
            #294039 54%,
            #59483d 100%
        );
}


.legal-page--cookies
.legal-hero {
    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(239, 184, 125, .17),
            transparent 31%
        ),
        linear-gradient(
            126deg,
            #1b1921 0%,
            #342b3d 54%,
            #654052 100%
        );
}

/* =========================================================
   LEGAL HERO END
========================================================= */


/* =========================================================
   LEGAL CONTENT START
========================================================= */

.legal-content {
    padding:
        clamp(50px, 6vw, 78px)
        0
        clamp(70px, 7vw, 100px);

    background:
        radial-gradient(
            circle at 94% 7%,
            rgba(189, 113, 71, .08),
            transparent 25%
        ),
        linear-gradient(
            150deg,
            #f8f1e8,
            #e9ddce
        );
}


.legal-section {
    display: grid;

    grid-template-columns:
        minmax(230px, .56fr)
        minmax(0, 1.44fr);

    align-items: start;

    gap:
        clamp(
            30px,
            5vw,
            72px
        );

    padding:
        32px
        0;

    border-top:
        1px solid
        rgba(100, 69, 64, .18);
}


.legal-section:first-child {
    padding-top: 0;

    border-top: 0;
}


.legal-section h2 {
    position: relative;

    margin: 0;

    padding-top: 3px;

    color:
        #3e3037;

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

    font-size:
        clamp(
            25px,
            2.6vw,
            35px
        );

    line-height: 1.15;

    letter-spacing: -.018em;
}


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

    display: block;

    width: 42px;
    height: 3px;

    margin-bottom: 13px;

    background:
        linear-gradient(
            90deg,
            var(--copper),
            var(--copper-light)
        );

    border-radius: 999px;
}


.legal-section__body {
    max-width: 760px;
}


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

    color:
        #655e61;

    font-size: 14px;

    line-height: 1.78;
}


.legal-section__body p:last-child {
    margin-bottom: 0;
}


/* =========================================================
   LEGAL LISTS START
========================================================= */

.legal-list {
    margin:
        18px
        0
        20px;

    padding: 0;

    display: grid;

    gap: 9px;

    list-style: none;
}


.legal-list li {
    position: relative;

    padding-left: 22px;

    color:
        #5d5659;

    font-size: 13px;

    line-height: 1.68;
}


.legal-list li::before {
    content: "";

    position: absolute;

    top: .68em;
    left: 2px;

    width: 7px;
    height: 7px;

    background:
        var(--copper);

    border-radius: 50%;

    transform:
        translateY(-50%);
}

/* =========================================================
   LEGAL LISTS END
========================================================= */


/* =========================================================
   RELATED POLICIES START
========================================================= */

.legal-section--related {
    margin-top: 19px;

    padding:
        34px
        31px;

    background:
        linear-gradient(
            145deg,
            #2b2027,
            #4b2b38
        );

    border:
        1px solid
        rgba(239, 184, 125, .28);

    border-radius: 14px;

    box-shadow:
        0 15px 34px
        rgba(50, 29, 35, .12);
}


.legal-section--related h2 {
    color:
        #fff6ee;
}


.legal-section--related
h2::before {
    background:
        var(--copper-light);
}


.legal-section--related
.legal-section__body p {
    color:
        #d9cfd2;
}


.legal-related-links {
    display: flex;

    flex-wrap: wrap;

    gap: 8px;

    margin-top: 19px;
}


.legal-related-links a {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 38px;

    padding:
        0
        15px;

    color:
        #fff3e8;

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

    border:
        1px solid
        rgba(239, 184, 125, .35);

    border-radius:
        999px;

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

    transition:
        color var(--transition),
        background var(--transition),
        border-color var(--transition),
        transform var(--transition);
}


@media (hover: hover) and (pointer: fine) {

    .legal-related-links a:hover {
        color:
            #27171e;

        background:
            var(--copper-light);

        border-color:
            var(--copper-light);

        transform:
            translateY(-2px);
    }

}

/* =========================================================
   RELATED POLICIES END
========================================================= */


/* =========================================================
   CURRENT LEGAL LINK START
========================================================= */

.legal-page
.footer-links
a[aria-current="page"] {
    color:
        var(--copper-light);

    font-weight:
        800;
}


.legal-page
.footer-links
a[aria-current="page"]::after {
    transform:
        scaleX(1);
}

/* =========================================================
   CURRENT LEGAL LINK END
========================================================= */


/* =========================================================
   LEGAL HEADER / FOOTER CORRECTIONS START
========================================================= */

/*
   Legal pages do not use the SPA page switcher.
   Their header links are normal absolute links.
*/

.legal-page
.header-nav
.nav-link[aria-disabled="true"] {
    color:
        #ddd7dc;

    cursor:
        pointer;
}


.legal-page
.site-footer {
    padding-bottom:
        env(
            safe-area-inset-bottom,
            0px
        );
}

/* =========================================================
   LEGAL HEADER / FOOTER CORRECTIONS END
========================================================= */


/* =========================================================
   LEGAL TABLET START
========================================================= */

@media (max-width: 1000px) {

    .legal-section {
        grid-template-columns:
            minmax(200px, .52fr)
            minmax(0, 1.48fr);

        gap:
            30px;
    }


    .legal-section--related {
        grid-template-columns:
            1fr;
    }

}

/* =========================================================
   LEGAL TABLET END
========================================================= */


/* =========================================================
   LEGAL MOBILE START
========================================================= */

@media (max-width: 700px) {

    .legal-shell {
        width:
            calc(100% - 30px);
    }


    /* HERO */

    .legal-hero {
        padding:
            40px
            0
            46px;
    }


    .legal-hero::before {
        width:
            240px;

        height:
            240px;

        top:
            -100px;

        right:
            -110px;
    }


    .legal-hero::after {
        width:
            290px;

        height:
            290px;

        right:
            -130px;

        bottom:
            -175px;
    }


    .legal-kicker {
        font-size: 8px;

        letter-spacing: .14em;
    }


    .legal-hero h1 {
        font-size:
            clamp(
                38px,
                10.5vw,
                52px
            );
    }


    .legal-updated {
        margin-top:
            17px;

        font-size:
            9px;
    }


    .legal-lead {
        margin-top:
            18px;

        font-size:
            13px;

        line-height:
            1.68;
    }


    /* CONTENT */

    .legal-content {
        padding:
            38px
            0
            53px;
    }


    .legal-section {
        grid-template-columns:
            1fr;

        gap:
            12px;

        padding:
            26px
            0;
    }


    .legal-section h2 {
        font-size:
            27px;
    }


    .legal-section h2::before {
        width:
            34px;

        margin-bottom:
            10px;
    }


    .legal-section__body {
        max-width:
            none;
    }


    .legal-section__body p {
        font-size:
            12px;

        line-height:
            1.72;
    }


    .legal-list {
        margin:
            15px
            0
            17px;

        gap:
            8px;
    }


    .legal-list li {
        padding-left:
            19px;

        font-size:
            11px;

        line-height:
            1.65;
    }


    .legal-list li::before {
        width:
            6px;

        height:
            6px;
    }


    /* RELATED POLICIES */

    .legal-section--related {
        margin-top:
            13px;

        padding:
            22px
            18px;

        gap:
            15px;

        border-radius:
            11px;
    }


    .legal-related-links {
        display: grid;

        grid-template-columns:
            1fr;

        gap:
            7px;

        margin-top:
            16px;
    }


    .legal-related-links a {
        width: 100%;

        min-height:
            42px;

        justify-content:
            flex-start;

        padding:
            0
            14px;

        font-size:
            10px;
    }


    /*
       Main footer has extra mobile clearance
       for the fixed page switcher.
       Legal pages do not use the switcher.
    */

    .legal-page
    .site-footer {
        padding-bottom:
            env(
                safe-area-inset-bottom,
                0px
            );
    }

}

/* =========================================================
   LEGAL MOBILE END
========================================================= */


/* =========================================================
   LEGAL SMALL MOBILE START
========================================================= */

@media (max-width: 390px) {

    .legal-shell {
        width:
            calc(100% - 24px);
    }


    .legal-hero {
        padding:
            35px
            0
            40px;
    }


    .legal-hero h1 {
        font-size:
            clamp(
                35px,
                10vw,
                44px
            );
    }


    .legal-section h2 {
        font-size:
            25px;
    }


    .legal-section--related {
        padding:
            19px
            15px;
    }

}

/* =========================================================
   LEGAL SMALL MOBILE END
========================================================= */


/* =========================================================
   SUDBURY CASINO — LEGAL PAGES END
========================================================= */

/* =========================================================
   FINAL HEADER + MOBILE NAVIGATION FIX START
========================================================= */

/* Keep the main header visible while scrolling */

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

    width: 100%;

    background:
        linear-gradient(
            135deg,
            rgba(29, 20, 26, .98),
            rgba(58, 24, 35, .98)
        );

    border-bottom:
        1px solid rgba(239, 184, 125, .30);

    box-shadow:
        0 10px 28px rgba(0, 0, 0, .22);
}


/* Prevent horizontal layout drift */

html,
body {
    max-width: 100%;
    overflow-x: clip;
}


/* =========================================================
   PAGE SWITCHER VISUAL REFRESH
========================================================= */

.page-switcher__inner {
    background:
        linear-gradient(
            135deg,
            rgba(43, 28, 37, .97),
            rgba(70, 29, 43, .97)
        );

    border-color:
        rgba(239, 184, 125, .34);

    box-shadow:
        0 18px 48px rgba(0, 0, 0, .26);
}


.switcher-link {
    color: #e5dce1;

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

    border-color:
        rgba(239, 184, 125, .08);
}


.switcher-link.is-active {
    color: #29161d;

    background:
        linear-gradient(
            135deg,
            #f1c58e,
            #dc9660 52%,
            #c7754b
        );

    border-color:
        #f5c890;

    box-shadow:
        0 7px 18px rgba(86, 31, 43, .22);
}


@media (hover: hover) and (pointer: fine) {

    .switcher-link:not(.is-active):hover {
        color: #fff8f2;

        background:
            rgba(189, 113, 71, .16);

        border-color:
            rgba(239, 184, 125, .30);

        transform:
            translateY(-2px);
    }

}


/* =========================================================
   MOBILE HEADER HARD RESET
========================================================= */

@media (max-width: 700px) {

    :root {
        --header-height: 68px;
        --gutter: 16px;
    }


    .site-header {
        min-height:
            var(--header-height);
    }


    .header-inner {
        width: 100%;
        max-width: 100%;
        min-height:
            var(--header-height);

        padding:
            0 var(--gutter);

        gap: 8px;

        overflow: visible;
    }


    /* Brand must never expand the header */

    .site-brand {
        min-width: 0;

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

        gap: 8px;

        flex:
            0 1 auto;
    }


    .brand-mark {
        width: 34px !important;
        height: 34px !important;

        min-width: 34px;
        min-height: 34px;

        flex:
            0 0 34px;

        border-radius: 10px;
    }


    .brand-mark__diamond {
        inset: 4px;
    }


    .brand-mark__letter {
        font-size: 19px !important;
        line-height: 1;
    }


    .brand-name {
        min-width: 0;
        max-width: 92px;

        overflow: hidden;
    }


    .brand-name strong {
        font-size: 14px !important;
        line-height: 1;

        letter-spacing:
            .055em;

        white-space: nowrap;
    }


    .brand-name small {
        font-size: 6px !important;

        letter-spacing:
            .25em;

        white-space: nowrap;
    }


    /* Keep actions inside viewport */

    .header-actions {
        min-width: 0;

        margin-left: auto;

        gap: 6px;

        flex:
            0 0 auto;
    }


    .play-now--header {
        min-height: 38px;

        padding:
            0 10px;

        gap: 6px;

        font-size: 8px;

        white-space: nowrap;
    }


    .play-now--header svg {
        width: 13px;
        height: 13px;
    }


    .menu-toggle {
        width: 38px;
        height: 38px;

        min-width: 38px;

        flex:
            0 0 38px;
    }


    /* Mobile navigation dropdown */

    .header-nav {
        width: 100%;
        max-width: 100%;

        left: 0;
        right: 0;
    }


    /* Bottom navigation */

    .page-switcher {
        width: 100%;
        max-width: 100%;
    }


    .page-switcher__inner {
        background:
            linear-gradient(
                90deg,
                #2b1c25,
                #4b2331
            );

        border-top:
            1px solid rgba(239, 184, 125, .30);
    }


    .switcher-link {
        min-width: 72px;

        color: #dfd5db;

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

        border:
            1px solid transparent;
    }


    .switcher-link.is-active {
        color: #29171d;

        background:
            linear-gradient(
                145deg,
                #f0c389,
                #cf814f
            );

        border-color:
            #f6cf9c;

        box-shadow:
            0 5px 14px rgba(0, 0, 0, .18);
    }

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 390px) {

    :root {
        --gutter: 12px;
    }


    .brand-name {
        max-width: 78px;
    }


    .brand-name strong {
        font-size: 12px !important;
    }


    .play-now--header {
        padding:
            0 8px;

        font-size: 7px;
    }


    .switcher-link {
        min-width: 68px;
    }

}

/* =========================================================
   FINAL HEADER + MOBILE NAVIGATION FIX END
========================================================= */






