/* =========================================================
   REGAL RESEAU - HOME INTRO V2
   Figma node: 4008:2
   Mobile First
========================================================= */

#loaction-s-n9 img{
    width: 100%;
    height: 100%;
}

#rr-home-intro-v2 {
    --rr-gold: #d89c29;
    --rr-dark: #424242;
    --rr-gray: #868686;
    --rr-white: #ffffff;
    position: relative;
    width: 100%;
    overflow: hidden;
    background: var(--rr-white);
}

/* =========================================================
   MOBILE
   0px +
========================================================= */

.rr-intro-heading {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    padding: 55px 22px 35px;
    background:
        linear-gradient(
            120deg,
            rgba(216, 156, 41, 0.18) 0%,
            rgba(255, 255, 255, 0.25) 65%,
            rgba(255, 255, 255, 0) 100%
        );
}

/* Main title */

.rr-intro-title {
    order: 1;
    margin: 0;
    color: var(--rr-dark);
    font-family: "Playfair Display", Georgia, serif;
    font-weight: 500;
    text-transform: uppercase;
}

.rr-intro-title span {
    display: block;
    margin-bottom: 6px;
    font-size: 21px;
    line-height: 1.2;
}

.rr-intro-title strong {
    display: block;
    font-size: clamp(42px, 13vw, 58px);
    line-height: 0.95;
    font-weight: 500;
}

/* Sunshine text */

.rr-intro-kicker {
    order: 2;
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 27px;
}

.rr-intro-kicker p {
    margin: 0;
    color: var(--rr-dark);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.3;
    text-transform: uppercase;
    white-space: nowrap;
}

.rr-intro-kicker-divider {
    width: 85px;
    max-width: 85px;
    line-height: 0;
}

.rr-intro-kicker-divider img,
.rr-intro-kicker-divider svg {
    display: block;
    width: 100%;
    height: auto;
}

/* Desktop decorative rule hidden on mobile */

.rr-intro-horizontal-line {
    display: none;
}

/* Left pool image */

.rr-intro-left-image {
    position: relative;
    width: 100%;
    aspect-ratio: 737 / 638;
    overflow: hidden;
}

.rr-intro-left-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Content */

.rr-intro-content {
    position: relative;
    z-index: 2;
    padding: 30px 24px 35px;
    background: #fff;
}

.rr-intro-content p {
    margin: 0 0 22px;
    color: var(--rr-gray);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.7;
    text-align: left;
}

.rr-intro-content p:last-of-type {
    margin-bottom: 30px;
}

.rr-intro-content a:not(.rr-intro-btn) {
    color: var(--rr-gold);
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.25s ease;
}

.rr-intro-content a:not(.rr-intro-btn):hover {
    opacity: 0.75;
}

/* Button */

.rr-intro-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 51px;
    padding: 0 27px;
    background: var(--rr-gold);
    color: #fff !important;
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1.5px;
    text-decoration: none !important;
    text-transform: uppercase;
    transition:
        background-color 0.25s ease,
        color 0.25s ease;
}

.rr-intro-btn:hover {
    background: var(--rr-dark);
    color: #fff !important;
}

/* Right image */

.rr-intro-right-image {
    width: 100%;
    height: 520px;
    overflow: hidden;
}

.rr-intro-right-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

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

@media (max-width: 420px) {

    .rr-intro-heading {
        padding-left: 18px;
        padding-right: 18px;
    }

    .rr-intro-title span {
        font-size: 19px;
    }

    .rr-intro-title strong {
        font-size: 40px;
    }

    .rr-intro-kicker {
        gap: 10px;
    }

    .rr-intro-kicker p {
        font-size: 12px;
    }

    .rr-intro-kicker-divider {
        width: 65px;
    }

    .rr-intro-content {
        padding-left: 20px;
        padding-right: 20px;
    }

    .rr-intro-right-image {
        height: 430px;
    }
}

/* =========================================================
   TABLET
   768px +
========================================================= */

@media (min-width: 768px) {

    #rr-home-intro-v2 {
        display: grid;
        grid-template-columns: 52% 48%;
        grid-template-areas:
            "heading heading"
            "left content"
            "right right";
    }

    .rr-intro-heading {
        grid-area: heading;
        padding: 75px 55px 60px;
    }

    .rr-intro-title span {
        font-size: 28px;
    }

    .rr-intro-title strong {
        font-size: 68px;
    }

    .rr-intro-kicker p {
        font-size: 18px;
    }

    .rr-intro-kicker-divider {
        width: 120px;
        max-width: 120px;
    }

    .rr-intro-left-image {
        grid-area: left;
        height: 100%;
        min-height: 560px;
        aspect-ratio: auto;
    }

    .rr-intro-content {
        grid-area: content;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 30px 45px;
    }

    .rr-intro-content p {
        font-size: 14px;
        line-height: 1.65;
    }

    .rr-intro-right-image {
        grid-area: right;
        height: 500px;
    }
}

/* =========================================================
   LARGE TABLET
   992px +
========================================================= */

@media (min-width: 992px) and (max-width: 1199px) {
	
    .rr-check-availability{
    	    margin: 0 3.53125vw;
             bottom: 2.53125vw;
             width: min(100%, calc(100% - 7.03125vw));
    }

    .rr-intro-heading {
        padding-left: 75px;
        padding-right: 75px;
    }

    .rr-intro-title strong {
        font-size: 78px;
    }

    .rr-intro-content {
        padding-left: 55px;
        padding-right: 55px;
    }

    .rr-intro-right-image {
        height: 570px;
    }
}

/* =========================================================
   DESKTOP
   1200px +
   Recreates the 1920x941 Figma composition
========================================================= */

@media (min-width: 1200px) {

    #rr-home-intro-v2 {
        display: block;
        height: clamp(900px, 49.01vw, 941px);
        min-height: 900px;
        background: #fff;
    }

    /* Figma left gradient */

    #rr-home-intro-v2::before {
        content: "";
        position: absolute;
        z-index: 0;
        top: 0;
        left: 0;
        width: 31.15%;
        height: 97.9%;
        background:
            linear-gradient(
                90deg,
                rgba(216, 156, 41, 0.30) 0%,
                rgba(255, 255, 255, 0.30) 100%
            );
        pointer-events: none;
    }

    /* Heading area */

    .rr-intro-heading {
        position: absolute;
        z-index: 4;
        top: 17.5%;
        left: -3%;
        width: 64.7%;
        display: grid;
        grid-template-columns: 46% 54%;
        grid-template-areas: "kicker title";
        align-items: end;
        gap: 5%;
        padding: 0 0 0 6.1%;
        background: transparent;
    }

    .rr-intro-kicker {
        grid-area: kicker;
        order: initial;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        flex-direction: column-reverse;
        gap: clamp(15px, 1.25vw, 24px);
        margin: 0 0 7px 0;
    }

    .rr-intro-kicker p {
        font-size: clamp(16px, 1.30vw, 25px);
        line-height: 30px;
    }

    .rr-intro-kicker-divider {
        width: clamp(95px, 8.95vw, 172px);
        max-width: 172px;
    }

    .rr-intro-title {
        grid-area: title;
        order: initial;
        margin: 0;
        position: relative;
        bottom: 0.68125vw;
    }

    .rr-intro-title span {
        margin: 0 0 2px;
        font-size: clamp(25px, 2.08vw, 40px);
        line-height: 1;
    }

    .rr-intro-title strong {
        font-size: clamp(56px, 4.69vw, 90px);
        line-height: 0.78;
        white-space: nowrap;
    }

    /* Long gold line */

    .rr-intro-horizontal-line {
        display: block;
        position: absolute;
        z-index: 2;
        top: 13.75vw;
        left: 0;
        width: 64.7%;
        height: 1px;
        background:
            linear-gradient(
                90deg,
                rgba(216, 156, 41, 0.15) 0%,
                rgba(216, 156, 41, 0.85) 45%,
                rgba(216, 156, 41, 0.15) 100%
            );
    }

    /* Left image */

    .rr-intro-left-image {
        position: absolute;
        z-index: 1;
        left: 0;
        bottom: 0;
        width: 38.39%;
        height: 67.8%;
        min-height: 0;
        overflow: hidden;
    }

    .rr-intro-left-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    /* Main content */

    .rr-intro-content {
        position: absolute;
        z-index: 5;
        top: 37.4%;
        left: 41.51%;
        width: 24.59%;
        display: block;
        padding: 0;
        background: transparent;
    }

    .rr-intro-content p {
        margin: 0 0 clamp(16px, 1.15vw, 22px);
        font-size: clamp(13px, 0.833vw, 16px);
        line-height: 1.5;
        text-align: justify;
    }

    .rr-intro-content p:last-of-type {
        margin-bottom: clamp(22px, 2vw, 38px);
    }

    .rr-intro-btn {
        min-height: 51px;
        padding-left: 30px;
        padding-right: 30px;
        font-size: 12px;
    }

    /* Right image */

    .rr-intro-right-image {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        width: 30.78%;
        height: 100%;
    }

    .rr-intro-right-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
}



/* =========================================================
   FULL FIGMA DESKTOP / 1600px+
========================================================= */

@media (min-width: 1600px) {

    .rr-intro-content p {
        font-size: 16px;
        line-height: 24px;
    }

    .rr-intro-btn {
        padding-left: 30px;
        padding-right: 30px;
    }
}

/* =========================================================
   REGAL RESEAU - DAY OUTING INTRO
   Figma Node: 4001:54
   Mobile First
========================================================= */

#rr-day-outing-intro {
    --rr-day-bg: #1d1d1d;
    --rr-day-text: #868686;
    --rr-day-gold: #c99b4a;
    width: 100%;
    overflow: hidden;
    /* background: var(--rr-day-bg); */
}

/* =========================================================
   MOBILE
   0px +
========================================================= */

.rr-day-outing-inner {
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    padding: 30px 20px 35px;
}

/* -------------------------
   IMAGE
------------------------- */

.rr-day-outing-image {
    position: relative;
    width: 100%;
    height: 330px;
    overflow: hidden;
}

.rr-day-outing-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* -------------------------
   CONTENT
------------------------- */

.rr-day-outing-content {
    padding: 38px 0 42px;
}

.rr-day-outing-content p {
    margin: 0 0 22px;
    color: var(--rr-day-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    text-align: left;
}

.rr-day-outing-content p:last-child {
    margin-bottom: 0;
}

.rr-day-outing-content a {
    color: var(--rr-day-gold);
    font-weight: 700;
}

.rr-day-outing-content a:hover{
    color: var(--rr-day-gold);
}

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

@media (max-width: 400px) {

    .rr-day-outing-image {
        height: 285px;
    }

    .rr-day-outing-content {
        padding: 0 0 30px;
    }

    .rr-day-outing-content p {
        font-size: 13px;
        line-height: 1.65;
    }
}

/* =========================================================
   TABLET
   768px +
========================================================= */

@media (min-width: 768px) {

    .rr-day-outing-inner {
        display: grid;
        grid-template-columns: 46% 54%;
        align-items: stretch;
        padding: 35px 0 35px 40px;
    }

    /* IMAGE */

    .rr-day-outing-image {
        height: auto;
        min-height: 480px;
    }

    /* CONTENT */

    .rr-day-outing-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 55px 45px;
    }

    .rr-day-outing-content p {
        font-size: 14px;
        line-height: 1.65;
        text-align: justify;
    }
}

/* =========================================================
   LARGE TABLET
   992px +
========================================================= */

@media (min-width: 992px) {

    .rr-day-outing-inner {
        grid-template-columns: 44% 56%;
    }

    .rr-day-outing-image {
        min-height: 500px;
    }

    .rr-day-outing-content {
        padding: 60px;
    }

    .rr-day-outing-content p {
        font-size: 15px;
        line-height: 1.6;
    }
}

/* =========================================================
   DESKTOP
   1200px +
   Matches Figma 1920 × 515 composition
========================================================= */

@media (min-width: 1200px) {

    #rr-day-outing-intro {
        min-height: 515px;
    }

    /*
     * Figma:
     *
     * Full width = 1920px
     * Content area = 1320px
     *
     * 300px margin
     * 585px image
     * 60px gap
     * 675px content
     * 300px margin
     */

    .rr-day-outing-inner {
        display: grid;
        grid-template-columns: 585px 675px;
        column-gap: 60px;
        width: 1320px;
        max-width: calc(100% - 60px);
        min-height: 515px;
        margin: 0 auto;
        padding: 100px 0 80px;
    }

    /* -------------------------
       IMAGE
    ------------------------- */

    .rr-day-outing-image {
        width: 585px;
        height: 515px;
        min-height: 515px;
    }

    .rr-day-outing-image img {
        position: absolute;
        top: 0;
        left: -2.36%;
        width: 132.05%;
        max-width: none;
        height: 100%;
        object-fit: cover;
    }

    /* -------------------------
       CONTENT
    ------------------------- */

    .rr-day-outing-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 675px;
        padding: 0;
    }

    .rr-day-outing-content p {
        margin: 0 0 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    .rr-day-outing-content p:last-child {
        margin-bottom: 0;
    }
}

/* =========================================================
   MEDIUM DESKTOP
   Prevent fixed desktop dimensions becoming cramped
========================================================= */

@media (min-width: 1200px) and (max-width: 1399px) {

    .rr-day-outing-inner {
        grid-template-columns: minmax(0, 44%) minmax(0, 56%);
        column-gap: 45px;
        width: calc(100% - 80px);
    }

    .rr-day-outing-image,
    .rr-day-outing-content {
        width: 100%;
    }

    .rr-day-outing-content {
        padding-right: 10px;
    }

    .rr-day-outing-content p {
        font-size: 14px;
        line-height: 22px;
    }
}

/* =========================================================
   REGAL RESEAU
   SKY TRACK + KTV SECTIONS
   Figma:
   4001:216
   4001:319

   MOBILE FIRST
========================================================= */

.rr-venue-section {
    --rr-gold: #d89c29;
    --rr-text: #868686;
    --rr-dark: #424242;
    --rr-heading-dark: #212529;
    --rr-bg: #f5f5f5;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

/* Main light-grey panel */

.rr-venue-shell {
    width: 100%;
    margin: 0 auto;
    background: var(--rr-bg);
}

/* =========================================================
   MOBILE MAIN LAYOUT
========================================================= */

.rr-venue-main {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* =========================================================
   FEATURE IMAGE
========================================================= */

.rr-venue-media {
    position: relative;
    width: 100%;
    aspect-ratio: 885 / 604;
    overflow: hidden;
}

.rr-venue-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* =========================================================
   TEXT AREA
========================================================= */

.rr-venue-content {
    padding: 38px 22px 34px;
}

/* =========================================================
   LOGOS
========================================================= */

.rr-venue-logo {
    margin-bottom: 28px;
}

.rr-venue-logo img {
    display: block;
    max-width: 100%;
    height: auto;
}

/* Sky Track */

.rr-venue-logo--skytrack {
    width: 155px;
}

/* KTV */

.rr-venue-logo--ktv {
    width: 110px;
}

/* =========================================================
   EYEBROW
========================================================= */

.rr-venue-eyebrow {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 5px;
    color: var(--rr-gold);
    font-family: "Lato", Arial, sans-serif;
    font-size: 13px;
    font-weight: 900;
    line-height: 24px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.rr-venue-eyebrow span + span {
    display: flex;
    align-items: center;
    gap: 16px;
}

.rr-venue-eyebrow span + span::before {
    content: "";
    display: block;
    width: 1px;
    height: 14px;
    background: var(--rr-gold);
}

/* =========================================================
   TITLE
========================================================= */

.rr-venue-title {
    margin: 0 0 22px;
    color: var(--rr-dark);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 31px;
    font-weight: 500;
    line-height: 1.2;
}

/* =========================================================
   DESCRIPTION
========================================================= */

.rr-venue-description {
    max-width: 675px;
    margin: 0;
    color: var(--rr-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    text-align: left;
}

/* =========================================================
   BUTTONS
========================================================= */

.rr-venue-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.rr-venue-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 23px;
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-decoration: none !important;
    text-transform: uppercase;
    transition:
        background-color .25s ease,
        color .25s ease,
        border-color .25s ease;
}

/* Gold button */

.rr-venue-btn--primary {
    border: 1px solid var(--rr-gold);
    background: var(--rr-gold);
    color: #fff !important;
}

.rr-venue-btn--primary:hover {
    border-color: var(--rr-dark);
    background: var(--rr-dark);
    color: #fff !important;
}

/* Outline button */

.rr-venue-btn--outline {
    border: 1px solid var(--rr-gold);
    background: transparent;
    color: var(--rr-gold) !important;
}

.rr-venue-btn--outline:hover {
    background: var(--rr-gold);
    color: #fff !important;
}

/* =========================================================
   INFORMATION CARDS
========================================================= */

.rr-venue-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    width: 100%;
}

/* Individual card */

.rr-venue-fact {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 185px;
    padding: 25px 12px 20px;
    border-bottom: 4px solid var(--rr-gold);
    background: rgba(0, 0, 0, .05);
    text-align: center;
}

/* Icons */

.rr-venue-fact-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    margin-bottom: 19px;
}

.rr-venue-fact-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Information heading */

.rr-venue-fact h4 {
    margin: 0 0 7px;
    color: var(--rr-heading-dark);
    font-family: Arial, sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.2;
}

/* Information text */

.rr-venue-fact p {
    margin: 0;
    color: var(--rr-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
}

.rr-venue-fact a {
    color: var(--rr-text);
    text-decoration: none;
}

.rr-venue-fact a:hover {
    color: var(--rr-gold);
}

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

@media (max-width: 479px) {

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

    .rr-venue-fact {
        min-height: 160px;
    }

    .rr-venue-content {
        padding-left: 18px;
        padding-right: 18px;
    }

    .rr-venue-title {
        font-size: 29px;
    }
}

/* =========================================================
   TABLET - 768px+
========================================================= */

@media (min-width: 768px) {

    .rr-venue-content {
        padding: 50px;
    }

    .rr-venue-title {
        font-size: 38px;
    }

    .rr-venue-description {
        font-size: 15px;
        line-height: 1.6;
        text-align: justify;
    }

    .rr-venue-facts {
        grid-template-columns: repeat(3, 1fr);
    }

    .rr-venue-fact {
        min-height: 205px;
    }

    .rr-venue-fact-icon {
        width: 55px;
        height: 55px;
    }

    .rr-venue-fact h4 {
        font-size: 20px;
    }
}

/* =========================================================
   LAPTOP - 992px+
========================================================= */

@media (min-width: 992px) {

    .rr-venue-main {
        display: grid;
        grid-template-columns: 50% 50%;
        align-items: stretch;
    }

    /* BAR = image left */

    .rr-venue-section--bar .rr-venue-media {
        grid-column: 1;
        grid-row: 1;
    }

    .rr-venue-section--bar .rr-venue-content {
        grid-column: 2;
        grid-row: 1;
    }

    /* KTV = content left */

    .rr-venue-section--ktv .rr-venue-content {
        grid-column: 1;
        grid-row: 1;
    }

    .rr-venue-section--ktv .rr-venue-media {
        grid-column: 2;
        grid-row: 1;
    }

    .rr-venue-media {
        height: 100%;
        aspect-ratio: auto;
    }

    .rr-venue-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 560px;
        padding: 65px;
    }

    .rr-venue-facts {
        grid-template-columns: repeat(5, 1fr);
        gap: 5px;
    }
}

/* =========================================================
   DESKTOP
   1200px+
========================================================= */

@media (min-width: 1200px) {

    .rr-venue-shell {
        width: calc(100% - 100px);
        max-width: 1600px;
    }

    .rr-venue-main {
        min-height: 684px;
    }

    .rr-venue-content {
        min-height: 684px;
        padding: 80px 60px;
    }

    .rr-venue-logo--skytrack {
        width: 179px;
    }

    .rr-venue-logo--ktv {
        width: 145px;
    }

    .rr-venue-eyebrow {
        font-size: 16px;
        line-height: 24px;
    }

    .rr-venue-title {
        margin-bottom: 38px;
        font-size: 45px;
        line-height: 54px;
    }

    .rr-venue-description {
        font-size: 16px;
        line-height: 24px;
    }

    .rr-venue-actions {
        margin-top: 36px;
    }

    .rr-venue-btn {
        min-height: 51px;
        padding-left: 30px;
        padding-right: 30px;
        font-size: 12px;
    }

    .rr-venue-fact {
        min-height: 227px;
    }

    .rr-venue-fact-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 29px;
    }

    .rr-venue-fact h4 {
        margin-bottom: 9px;
        font-size: 24px;
        line-height: 28.8px;
    }

    .rr-venue-fact p {
        font-size: 14px;
        line-height: 21px;
    }
}

/* =========================================================
   EXACT LARGE DESKTOP FIGMA LAYOUT
   1800px+
========================================================= */

@media (min-width: 1800px) {
    /*
     * FIGMA STRUCTURE
     *
     * Main grey block = 1600px
     * Main area       = 684px
     * Info cards      = 227px
     * Total           = 911px
     *
     * Feature image   = 885 x 604
     * Cards           = 316px x 227px
     * Gap             = 5px
     */

    .rr-venue-shell {
        position: relative;
        width: 1600px;
        max-width: none;
        height: 911px;
    }

    /*
     * The Figma layouts are slightly offset:
     *
     * Sky Track:
     * background begins x = 205
     *
     * KTV:
     * background begins x = 115
     */

    .rr-venue-section--bar .rr-venue-shell {
        transform: translateX(45px);
    }

    .rr-venue-section--ktv .rr-venue-shell {
        transform: translateX(-45px);
    }

    /* ------------------------------
       TOP AREA
    ------------------------------ */

    .rr-venue-main {
        position: relative;
        display: block;
        width: 100%;
        height: 684px;
        min-height: 684px;
    }

    /* ------------------------------
       IMAGE - COMMON
    ------------------------------ */

    .rr-venue-media {
        position: absolute;
        top: 80px;
        width: 885px;
        height: 604px;
        overflow: hidden;
    }

    .rr-venue-media img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* Sky Track image extends left */

    .rr-venue-section--bar .rr-venue-media {
        left: -205px;
    }

    /* KTV image extends right */

    .rr-venue-section--ktv .rr-venue-media {
        right: -205px;
        left: auto;
    }

    /* ------------------------------
       CONTENT COMMON
    ------------------------------ */

    .rr-venue-content {
        position: absolute;
        top: 140px;
        display: block;
        width: 675px;
        min-height: 0;
        padding: 0;
    }

    /* Sky Track text */

    .rr-venue-section--bar .rr-venue-content {
        right: 185px;
        left: auto;
    }

    /* KTV text */

    .rr-venue-section--ktv .rr-venue-content {
        left: 60px;
        right: auto;
    }

    /* ------------------------------
       SKY TRACK SPACING
    ------------------------------ */

    .rr-venue-section--bar .rr-venue-logo {
        margin-bottom: 46px;
    }

    .rr-venue-section--bar .rr-venue-eyebrow {
        margin-bottom: 0;
    }

    .rr-venue-section--bar .rr-venue-title {
        margin: 0 0 43px;
    }

    .rr-venue-section--bar .rr-venue-actions {
        margin-top: 35px;
    }

    /* ------------------------------
       KTV SPACING
    ------------------------------ */

    .rr-venue-section--ktv .rr-venue-logo {
        margin-bottom: 35px;
    }

    .rr-venue-section--ktv .rr-venue-eyebrow {
        margin-bottom: 0;
    }

    .rr-venue-section--ktv .rr-venue-title {
        margin: 0 0 43px;
    }

    .rr-venue-section--ktv .rr-venue-actions {
        margin-top: 34px;
    }

    /* ------------------------------
       FIVE FIGMA CARDS
    ------------------------------ */

    .rr-venue-facts {
        position: absolute;
        left: 0;
        bottom: 0;
        display: grid;
        grid-template-columns: repeat(5, 316px);
        gap: 5px;
        width: 1600px;
        height: 227px;
    }

    .rr-venue-fact {
        width: 316px;
        height: 227px;
        min-height: 227px;
        padding: 0;
    }
}

/* =========================================================
   WHAT'S AROUND THE HOTEL
   Figma node: 4001:66
   Mobile First
========================================================= */

#loaction-s-4 {
    --around-bg: #1e1e1e;
    --around-gold: #d89c29;
    --around-link-gold: #c99b4a;
    --around-heading: #424242;
    --around-text: #868686;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 30px 20px 35px;
    overflow: hidden;
    /* background: var(--around-bg); */
}

/* =========================================================
   HIDDEN SEO H1
========================================================= */

.rr-around-seo-title {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* =========================================================
   MOBILE IMAGE
========================================================= */

.rr-around-image {
    position: relative;
    width: 100%;
    height: 480px;
    overflow: hidden;
}

.rr-around-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* =========================================================
   MOBILE CONTENT
========================================================= */

.rr-around-content {
    padding: 35px 0 0;

    /* background: var(--around-bg); */
}

.airport-hotel-content-section{
    margin-top: 0px;
}

/* =========================================================
   HEADING
========================================================= */

.rr-around-heading {
    margin-bottom: 30px;
}

.rr-around-heading h2 {
    margin: 0 0 10px;
    color: var(--around-heading);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 34px;
    font-weight: 500;
    line-height: 1.2;

}

/* Divider */

.rr-around-divider {
    width: 120px;
    line-height: 0;
}

.rr-around-divider img,
.rr-around-divider svg {
    display: block;
    width: 100%;
    height: auto;
}

/* =========================================================
   DESCRIPTION
========================================================= */

.rr-around-description {
    max-width: 912px;
}

.rr-around-description p {
    margin: 0 0 18px;
    color: var(--around-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;

    text-align: left;
}

.rr-around-description p:last-child {
    margin-bottom: 0;
}

.rr-around-description a {
    color: var(--around-link-gold) !important;
    font-weight: 700;
}

/* =========================================================
   LOCATION GRID
========================================================= */

.rr-around-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
    margin-top: 45px;
}

/* =========================================================
   LOCATION ITEM
========================================================= */

.rr-around-item {
    display: flex;
    align-items: center;
    gap: 18px;
}

/* =========================================================
   GOLD CIRCLE
========================================================= */

.rr-around-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 70px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: var(--around-gold);
}

/* Actual icon */

.rr-around-icon-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
}

.rr-around-icon-inner img,
.rr-around-icon-inner svg {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* =========================================================
   LOCATION TEXT
========================================================= */

.rr-around-item-text h6 {
    margin: 0;
    color: var(--around-heading);
    font-family: "Lato", Arial, sans-serif;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.15;
}

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

@media (max-width: 420px) {

    .rr-around-image {
        height: 420px;
    }

    .rr-around-content {
        padding-left: 0;
        padding-right: 0;
    }

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

/* =========================================================
   TABLET
   768px+
========================================================= */

@media (min-width: 768px) {
    #loaction-s-4{
        padding: 40px 40px 0;
    }

    .rr-around-image {
        height: 600px;
    }

    .rr-around-content {
        padding: 35px 0 50px;
    }

    .rr-around-heading h2 {
        font-size: 40px;
    }

    .rr-around-description p {
        font-size: 15px;
        line-height: 1.6;
        text-align: justify;
    }

    .rr-around-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        column-gap: 45px;
        row-gap: 38px;
        margin-top: 50px;
    }

    .rr-around-icon {
        flex-basis: 75px;
        width: 75px;
        height: 75px;
    }

    .rr-around-icon-inner {
        width: 46px;
        height: 46px;
    }

    .rr-around-item-text h6 {
        font-size: 18px;
    }
}

/* =========================================================
   LAPTOP
   992px+
========================================================= */

@media (min-width: 992px) {

    #loaction-s-4 {
        display: grid;
        grid-template-columns: 37% 63%;
        align-items: stretch;
    }

    .rr-around-image {
        height: auto;
        min-height: 780px;
    }

    .rr-around-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 70px 55px;
    }

    .rr-around-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
        column-gap: 30px;
        row-gap: 45px;
    }
}

/* =========================================================
   DESKTOP
   1200px+
========================================================= */

@media (min-width: 1200px) {

    .airport-hotel-content-section{
        margin-top: 80px;
    }

    #loaction-s-4 {
        grid-template-columns: 36.875% 63.125%;
        min-height: 865px;
    }

    /*
     * Figma left:
     * 708 / 1920 = 36.875%
     */

    .rr-around-image {
        width: 100%;
        min-height: 865px;
        height: 865px;
    }

    .rr-around-image img {
        object-position: center;
    }

    .rr-around-content {
        justify-content: flex-start;
        min-height: 865px;
        padding:
            100px
            clamp(55px, 6.1vw, 117px)
            70px
            clamp(55px, 5.2vw, 100px);
    }

    /* Heading */

    .rr-around-heading {
        margin-bottom: 55px;
    }

    .rr-around-heading h2 {
        margin-bottom: 5px;
        font-size: 45px;
        line-height: 54px;
    }

    .rr-around-divider {
        width: 216px;
        height: 39px;
        overflow: hidden;
    }

    /* Description */

    .rr-around-description {
        width: 100%;
        max-width: 912px;
    }

    .rr-around-description p {
        margin-bottom: 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    /* Location grid */

    .rr-around-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
        column-gap: 50px;
        row-gap: 50px;
        width: 100%;
        max-width: 877px;
        margin-top: 48px;
    }

    .rr-around-item {
        gap: 15px;
    }

    /* Exact Figma icon sizing */

    .rr-around-icon {
        flex: 0 0 80px;
        width: 80px;
        height: 80px;
    }

    .rr-around-icon-inner {
        width: 50px;
        height: 50px;
    }

    /* Exact Figma text */

    .rr-around-item-text h6 {
        font-size: 20px;
        line-height: 22px;
    }
}

/* =========================================================
   FULL FIGMA DESKTOP
   1800px+
========================================================= */

@media (min-width: 1800px) {

    #loaction-s-4 {
        display: block;
        position: relative;
        width: 100%;
        height: 865px;
        padding: 0;
    }

    /* -----------------------------
       LEFT IMAGE
       Figma: x0 / width708
    ----------------------------- */

    .rr-around-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 708px;
        height: 865px;
        min-height: 865px;
    }

    .rr-around-image img {
        position: absolute;
        top: 0;
        left: -1.44%;
        width: 102.87%;
        max-width: none;
        height: 100%;
        object-fit: cover;
    }

    /* -----------------------------
       RIGHT CONTENT
       Figma starts at x = 808
    ----------------------------- */

    .rr-around-content {
        position: absolute;
        top: 0;
        left: 808px;
        display: block;
        width: 912px;
        min-height: 865px;
        padding: 100px 0 0;
        background: transparent;
    }

    /* -----------------------------
       HEADING
    ----------------------------- */

    .rr-around-heading {
        margin: 0;
    }

    .rr-around-heading h2 {
        width: max-content;
        margin: 0;
        font-size: 45px;
        line-height: 54px;
        text-align: center;
    }

    .rr-around-divider {
        width: 216px;
        height: 39px;
        margin-top: 7px;
    }

    /* ----------------------------
       BODY COPY
    ----------------------------- */

    .rr-around-description {
        width: 912px;
        max-width: none;
        margin-top: 55px;
    }

    .rr-around-description p {
        margin: 0 0 24px;
        font-size: 16px;
        line-height: 24px;
    }

    /* -----------------------------
       FIGMA LOCATION GRID
    ----------------------------- */

    .rr-around-grid {
        display: grid;
        grid-template-columns:
            266px
            277px
            234px;
        column-gap: 50px;
        row-gap: 50px;
        width: 877px;
        margin-top: 43px;
    }

    .rr-around-item {
        width: 100%;
        gap: 15px;
    }

    .rr-around-icon {
        flex: 0 0 80px;
        width: 80px;
        height: 80px;
    }

    .rr-around-icon-inner {
        width: 50px;
        height: 50px;
    }

    .rr-around-item-text h6 {
        font-size: 20px;
        line-height: 22px;
    }
}

@media (min-width: 1921px) {
    .rr-around-image{
        left: 14vw;
        width: 33%;
    }
    .rr-around-content{
        left: 50vw;
        width:50%;
    }
}

/* =========================================================
   REGAL RESEAU - OUR HISTORY
   Figma Node: 4001:169
   Mobile First
========================================================= */

#rr-history {
    --rr-history-bg: #1e1e1e;
    --rr-history-title: #424242;
    --rr-history-text: #868686;
    --rr-history-gold: #c99b4a;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    /* background: var(--rr-history-bg); */
}

/* =========================================================
   INNER
========================================================= */

.rr-history-inner {
    position: relative;
    width: 100%;
    padding: 30px 20px 0;
}

/* =========================================================
   MOBILE MAIN IMAGE
========================================================= */

.rr-history-main-image {
    position: relative;
    width: 100%;
    height: 520px;
    overflow: hidden;
}

.rr-history-main-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* =========================================================
   CONTENT
========================================================= */

.rr-history-content {
    position: relative;
    padding: 45px 22px;
    background:
        linear-gradient(
            to top,
            rgba(255, 255, 255, 0.12),
            rgba(216, 156, 41, 0.15)
        );
}

/* Title */

.rr-history-title {
    margin: 0 0 28px;
    color: var(--rr-history-title);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 36px;
    font-weight: 500;
    line-height: 1.2;
}

/* Body */

.rr-history-description {
    max-width: 658px;
}

.rr-history-description p {
    margin: 0 0 24px;
    color: var(--rr-history-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    text-align: left;
}

.rr-history-description p:last-child {
    margin-bottom: 0;
}

.rr-history-description a {
    color: var(--rr-history-gold) !important;
    font-weight: 700;
}

/* =========================================================
   LOWER IMAGES
========================================================= */

.rr-history-image {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.rr-history-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Pool */

.rr-history-image--pool {
    height: 390px;
}

/* Lifestyle */

.rr-history-image--lifestyle {
    height: 390px;
}

/* =========================================================
   CLOSING TEXT
========================================================= */

.rr-history-closing {
    padding: 38px 22px 50px;
}

.rr-history-closing p {
    margin: 0;
    color: var(--rr-history-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    text-align: left;
}

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

@media (max-width: 420px) {

    .rr-history-main-image {
        height: 450px;
    }

    .rr-history-content {
        padding:
            38px
            18px
            42px;
    }

    .rr-history-title {
        font-size: 32px;
    }

    .rr-history-image--pool,
    .rr-history-image--lifestyle {
        height: 320px;
    }

    .rr-history-closing {
        padding:
            32px
            18px
            42px;
    }
}

/* =========================================================
   TABLET
   768px+
========================================================= */

@media (min-width: 768px) {

    .rr-history-inner{
        padding: 40px 40px 0;
    }

    .rr-history-main-image {
        height: 650px;
    }

    .rr-history-content {
        padding: 65px 50px;
    }

    .rr-history-title {
        font-size: 41px;
    }

    .rr-history-description p {
        font-size: 15px;
        line-height: 1.6;
        text-align: justify;
    }

    /* Two lower images */

    .rr-history-image--pool,
    .rr-history-image--lifestyle {
        display: inline-block;
        width: 50%;
        height: 420px;
        margin-right: -4px;
        vertical-align: top;
    }
    


    .rr-history-closing {
        padding: 50px;
    }

    .rr-history-closing p {
        max-width: 600px;
        font-size: 15px;
        line-height: 1.6;
        text-align: justify;
    }
}

/* =========================================================
   LAPTOP
   992px+
========================================================= */

@media (min-width: 992px) {

    .rr-history-inner {
        display: grid;
        grid-template-columns: 44% 56%;
        grid-template-areas:
            "main content"
            "closing gallery";
        padding: 40px 40px 50px ;
    }

    .rr-history-image--lifestyle{
    	display:none;
    }

    .rr-history-main-image {
        grid-area: main;
        height: 720px;
    }

    .rr-history-content {
        grid-area: content;
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 720px;
        padding: 70px 60px;
    }

    .rr-history-closing {
        grid-area: closing;
        display: flex;
        align-items: center;
        min-height: 300px;
        padding: 50px;
    }

    .rr-history-image--pool,
    .rr-history-image--lifestyle {
        display: block;
        width: 100%;
        height: 400px;
        margin: 0;
        float: left;
    }
}

/* =========================================================
   DESKTOP
   1200px+
========================================================= */

@media (min-width: 1200px) {
    .rr-history-title {
        font-size: 45px;
        line-height: 54px;
    }

    .rr-history-description p,
    .rr-history-closing p {
        font-size: 16px;
        line-height: 24px;
    }
    
        .rr-history-image--lifestyle{
    	display:none;
    }
}

/* =========================================================
   EXACT LARGE DESKTOP FIGMA
   1800px+
========================================================= */

@media (min-width: 1800px) {
    /*
     * FIGMA FRAME
     *
     * Full section:
     * 1920 x 1111
     *
     * Main working group:
     * x = 300
     * width = 1370
     *
     * Gradient:
     * x = 638
     * width = 1032
     * height = 851
     *
     * Main image:
     * x = 300
     * y = 100
     * width = 592
     * height = 751
     *
     * Content:
     * x = 952
     *
     * Bottom images:
     * 400 x 396
     * 506 x 396
     */

    #rr-history {                                                                                 
        height: 1111px;
        margin-bottom: 80px;
    }

    .rr-history-inner {
        position: relative;
        display: block;
        width: 1370px;
        height: 1111px;
        margin: 0 auto;
        transform: translateX(25px);
        padding: 0;
    }
    
        .rr-history-image--lifestyle{
    	display:block;
    }

    /* ==========================================
       FIGMA GRADIENT BLOCK
    ========================================== */

    .rr-history-inner::before {
        content: "";
        position: absolute;
        z-index: 0;
        top: 0;
        left: 338px;
        width: 1032px;
        height: 851px;
        background:
            linear-gradient(
                to top,
                rgba(255, 255, 255, 0.20),
                rgba(216, 156, 41, 0.20)
            );
        pointer-events: none;
    }

    /* ==========================================
       MAIN IMAGE
    ========================================== */

    .rr-history-main-image {
        position: absolute;
        z-index: 1;
        top: 100px;
        left: 0;
        width: 592px;
        height: 751px;
    }

    .rr-history-main-image img {
        position: absolute;
        top: -0.03%;
        left: 0;
        width: 103.21%;
        max-width: none;
        height: 100.06%;
        object-fit: cover;
    }

    /* ==========================================
       RIGHT CONTENT
    ========================================== */

    .rr-history-content {
        position: absolute;
        z-index: 2;
        top: 188px;
        left: 652px;
        display: block;
        width: 658px;
        min-height: 0;
        padding: 0;
        background: transparent;
    }

    .rr-history-title {
        margin: 0 0 59px;
        font-size: 45px;
        line-height: 54px;
    }

    .rr-history-description {
        width: 658px;
        max-width: none;
    }

    .rr-history-description p {
        margin-bottom: 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    /* ==========================================
       LEFT CLOSING PARAGRAPH
    ========================================== */

    .rr-history-closing {
        position: absolute;
        z-index: 2;
        top: 916px;
        left: 0;
        display: block;
        width: 394px;
        min-height: 0;
        padding: 0;
    }

    .rr-history-closing p {
        width: 394px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    /* ==========================================
       BOTTOM POOL IMAGE
    ========================================== */

    .rr-history-image--pool {
        position: absolute;
        z-index: 3;
        top: 715px;
        left: 454px;
        display: block;
        width: 400px;
        height: 396px;
        margin: 0;
    }

    .rr-history-image--pool img {
        position: absolute;
        top: 0;
        left: -12.15%;
        width: 124.39%;
        max-width: none;
        height: 100%;
        object-fit: cover;
    }

    /* ==========================================
       BOTTOM LIFESTYLE IMAGE
    ========================================== */

    .rr-history-image--lifestyle {
        position: absolute;
        z-index: 3;
        top: 715px;
        left: 864px;
        display: block;
        width: 506px;
        height: 396px;
        margin: 0;
    }

    .rr-history-image--lifestyle img {
        position: absolute;
        top: -19.71%;
        left: -2.24%;
        width: 104.35%;
        max-width: none;
        height: 136.23%;
        object-fit: cover;
    }
}

/* =========================================================
   CONTACT INTRO
   Figma Node: 4001:62
   Mobile First
========================================================= */

#contact-intro {
    --rr-contact-bg: #1e1e1e;
    --rr-contact-text: #868686;
    --rr-contact-gold: #c99b4a;
    width: 100%;
    margin: 0;
    padding: 0;
    /* background: var(--rr-contact-bg); */
    overflow: hidden;
}

/* =========================================================
   SEO HEADING
========================================================= */

.rr-contact-seo-title {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

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

.rr-contact-intro-inner {
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    padding: 30px 20px 0;
}

/* -------------------------
   IMAGE
------------------------- */

.rr-contact-intro-image {
    position: relative;
    width: 100%;
    height: 380px;
    overflow: hidden;
}

.rr-contact-intro-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* -------------------------
   CONTENT
------------------------- */

.rr-contact-intro-content {
    padding: 35px 22px 40px;
}

.rr-contact-intro-content p {
    margin: 0 0 22px;
    color: var(--rr-contact-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    text-align: left;
}

.rr-contact-intro-content p:last-child {
    margin-bottom: 0;
}

/* -------------------------
   LINKS / GOLD TEXT
------------------------- */

.rr-contact-intro-content a {
    display: inline;
    color: var(--rr-contact-gold);
    font-weight: 700;
    text-decoration: none;
}

.rr-contact-intro-content a:hover {
    color: var(--rr-contact-gold);
    text-decoration: underline;
}

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

@media (max-width: 420px) {
    .rr-contact-intro-image {
        height: 330px;
    }

    .rr-contact-intro-content {
        padding: 0 0 30px;
    }

    .rr-contact-intro-content p {
        font-size: 13px;
        line-height: 1.65;
    }
}

/* =========================================================
   TABLET
   768px+
========================================================= */

@media (min-width: 768px) {
    #contact-map .container-fluid .row .col-lg-7.col-md-12{
        padding-left: 40px;
        padding-right: 40px;
    }

    #contact-map .container-fluid .row .col-lg-5.col-md-12{
        padding-left: 40px;
        padding-right: 40px;
    }

    .rr-contact-intro-inner {
        display: grid;
        grid-template-columns: 45% 55%;
        align-items: stretch;
        padding: 30px 40px 25px;
    }

    .rr-contact-intro-image {
        height: auto;
        min-height: 500px;
    }

    .rr-contact-intro-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 500px;
        padding: 30px 0 30px 30px;
    }

    .rr-contact-intro-content p {
        font-size: 14px;
        line-height: 1.65;
        text-align: justify;
    }
}

/* =========================================================
   LAPTOP
   992px+
========================================================= */

@media (min-width: 992px) {
    #contact-map .container-fluid .row .col-lg-7.col-md-12{
        padding-left: 15px;
        padding-right: 15px;
    }

    #contact-map .container-fluid .row .col-lg-5.col-md-12{
        padding-left: 15px;
        padding-right: 15px;
    }

    .rr-contact-intro-inner {
        grid-template-columns: 44% 56%;
    }

    .rr-contact-intro-content {
        padding:
            55px
            55px;
    }

    .rr-contact-intro-content p {
        font-size: 15px;
        line-height: 23px;
    }
}

/* =========================================================
   DESKTOP
   1200px+
========================================================= */

@media (min-width: 1200px) {
    /*
     * Figma:
     *
     * Section     = 1920 x 515
     * Inner       = 1320
     *
     * Image       = 585
     * Gap         = 60
     * Text        = 675
     */

    #contact-intro {
        min-height: 515px;
        margin-top: 100px;
    }

    .rr-contact-intro-inner {
        display: grid;
        grid-template-columns:
            minmax(0, 585px)
            minmax(0, 675px);
        column-gap: 60px;
        width: 1320px;
        max-width: calc(100% - 60px);
        min-height: 515px;
        margin: 0 auto;
        padding: 0;
    }

    /* IMAGE */

    .rr-contact-intro-image {
        width: 100%;
        height: 515px;
        min-height: 515px;
    }

    .rr-contact-intro-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* CONTENT */

    .rr-contact-intro-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 100%;
        min-height: 515px;
        padding: 0;
    }

    .rr-contact-intro-content p {
        margin: 0 0 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }
}

/* =========================================================
   EXACT FIGMA DESKTOP
   1800px+
========================================================= */

@media (min-width: 1800px) {
    .rr-contact-intro-inner {
        width: 1320px;
        max-width: none;
        grid-template-columns:
            585px
            675px;
        column-gap: 60px;
    }
    /*
     * Figma image crop:
     *
     * Frame:
     * 585 x 515
     *
     * Actual image:
     * width  101.2%
     * height 114.95%
     * x      -1.2%
     * y      -8.95%
     */

    .rr-contact-intro-image img {
        position: absolute;
        top: -8.95%;
        left: -1.2%;
        width: 101.2%;
        max-width: none;
        height: 114.95%;
        object-fit: cover;
    }

    .rr-contact-intro-content {
        width: 675px;
    }

    .rr-contact-intro-content p {
        font-size: 16px;
        line-height: 24px;
    }
}

/* =========================================================
   ROOMS & SUITES INTRO
   Figma node: 4032:54
   Mobile First
========================================================= */
.rr-rooms-intro {
    --rr-room-text: #868686;
    --rr-room-gold: #d89c29;
    --rr-room-dark: #212529;
    --rr-room-filter-bg: #f7f7f7;
    --rr-room-filter-border: #dddddd;
    --rr-room-divider: #4b4b4d;
    width: 100%;
    margin: 0 auto;
}
/* =========================================================
   SEO H1
========================================================= */
.rr-rooms-seo-title {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
/* =========================================================
   MOBILE MAIN
========================================================= */
.rr-rooms-intro-main {
    display: flex;
    flex-direction: column-reverse;
    padding: 30px 20px;
    width: 100%;
}
/* =========================================================
   IMAGE
========================================================= */
.rr-rooms-intro-image {
    position: relative;
    width: 100%;
    height: 420px;
    overflow: hidden;
}

.rr-rooms-intro-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* =========================================================
   CONTENT
========================================================= */

.rr-rooms-intro-content {
    padding: 38px 22px 42px;
}

.rr-rooms-intro-content p {
    margin: 0 0 22px;
    color: var(--rr-room-text) !important;
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    text-align: left;
}

.rr-rooms-intro-content p:last-child {
    margin-bottom: 0;
}

/* Links */

.rr-rooms-intro-content a {
    display: inline;
    color: var(--rr-room-gold);
    font-weight: 700;
    text-decoration: none;
}

.rr-rooms-intro-content a:hover {
    color: var(--rr-room-gold);
    text-decoration: underline;
}

/* =========================================================
   FILTER
========================================================= */

.rr-rooms-filter {
    width: calc(100% - 40px);
    margin: 0 auto 0;
    padding: 14px 0 15px;
    border-top: 1px solid var(--rr-room-divider);
    border-bottom: 1px solid var(--rr-room-divider);
}

/* Remove Bootstrap/default UL spacing */

.rr-rooms-filter .wl-ordering-jq {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 !important;
    padding: 0;
    list-style: none;
}

/* Filter buttons */

.rr-rooms-filter .wl-ordering-jq li {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 32px;
    padding: 0 18px;
    margin: 0 ;
    border: 1px solid var(--rr-room-filter-border);
    background: var(--rr-room-filter-bg);
    color: var(--rr-room-dark);
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
    transition:
        background-color .2s ease,
        color .2s ease,
        border-color .2s ease;
}

.rr-rooms-filter .wl-ordering-jq li:hover {
    border-color: var(--rr-room-gold);
    background: var(--rr-room-gold);
    color: #fff;
}

/* Optional active class if your JS adds one */

.rr-rooms-filter .wl-ordering-jq li.active,
.rr-rooms-filter .wl-ordering-jq li.current {
    border-color: var(--rr-room-gold);
    background: var(--rr-room-gold);
    color: #fff;
}

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

@media (max-width: 420px) {

    .rr-rooms-intro-image {
        height: 360px;
    }

    .rr-rooms-intro-content {
        padding: 0 0 30px;
    }

    .rr-rooms-intro-content p {
        font-size: 13px;
        line-height: 1.65;
    }

    .rr-rooms-filter {
        width: calc(100% - 36px);
    }

    .rr-rooms-filter .wl-ordering-jq li {
        height: 30px;
        padding: 0 15px;
        font-size: 13px;
    }
}

/* =========================================================
   TABLET
   768px+
========================================================= */

@media (min-width: 768px) {
    .rr-rooms-intro-main {
        display: grid;
        grid-template-columns: 42% 58%;
        align-items: stretch;
        padding: 40px 40px 0;
    }

    .rr-rooms-intro-image {
        height: auto;
        min-height: 530px;
    }

    .rr-rooms-intro-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 30px 0 30px 30px;
    }

    .rr-rooms-intro-content p {
        font-size: 14px;
        line-height: 1.65;
        text-align: justify;
    }

    .rr-rooms-filter {
        width: calc(100% - 80px);
        margin-top: 50px;
    }
}

/* =========================================================
   LAPTOP
   992px+
========================================================= */

@media (min-width: 992px) {

    .rr-rooms-intro-main {
        grid-template-columns: 42% 58%;
    }

    .rr-rooms-intro-content {
        padding:
            45px
            50px;
    }

    .rr-rooms-intro-content p {
        font-size: 15px;
        line-height: 23px;
    }

    .rr-rooms-filter .wl-ordering-jq li {
        height: 26px;
        padding: 0 20px;
        font-size: 16px;
        line-height: 24px;
    }
}

/* =========================================================
   DESKTOP
   1200px+
========================================================= */

@media (min-width: 1200px) {
    /*
     * Figma:
     *
     * Main group width = 1420px
     *
     * Image:
     * 585 x 515
     *
     * Text:
     * 775px
     *
     * Gap:
     * 60px
     */

    .rr-rooms-intro {
        width: 100%;
    }

    .rr-rooms-intro-main {
        display: grid;
        grid-template-columns:
            minmax(0, 585px)
            minmax(0, 775px);
        column-gap: 60px;
        width: 1420px;
        max-width: calc(100% - 80px);
        margin: 100px auto 0;
        padding: 0;
    }

    /* Image */

    .rr-rooms-intro-image {
        width: 100%;
        height: 515px;
        min-height: 515px;
    }

    /* Content */

    .rr-rooms-intro-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 100%;
        height: 515px;
        padding: 0;
    }

    .rr-rooms-intro-content p {
        margin: 0 0 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    /* Filter */

    .rr-rooms-filter {
        width: 1110px;
        max-width: calc(100% - 80px);
        height: 58px;
        margin: 80px auto 0;
        padding: 14px 0 15px;
    }

    .rr-rooms-filter .wl-ordering-jq {
        gap: 8px;
    }

    .rr-rooms-filter .wl-ordering-jq li {
        height: 26px;
        padding: 0 20px;
        font-size: 16px;
        line-height: 24px;
    }
}

/* =========================================================
   EXACT FIGMA DESKTOP
   1800px+
========================================================= */

@media (min-width: 1800px) {
    /*
     * Figma Frame:
     * 1920 x 753
     *
     * Image:
     * x = 250
     * y = 100
     * w = 585
     * h = 515
     *
     * Text:
     * x = 895
     * y = 159
     * w = 775
     * h = 396
     *
     * Filter:
     * x = 405
     * y = 695
     * w = 1110
     * h = 58
     */

    .rr-rooms-intro {
        position: relative;
        min-height: 753px;
    }

    .rr-rooms-intro-main {
        grid-template-columns:
            585px
            775px;
        column-gap: 60px;
        width: 1420px;
        max-width: none;
        margin-top: 100px;
    }

    /* Exact Figma crop */

    .rr-rooms-intro-image img {
        position: absolute;
        top: 0;
        left: -14.59%;
        width: 131.54%;
        max-width: none;
        height: 100%;
        object-fit: cover;
    }

    .rr-rooms-intro-content {
        width: 775px;
        height: 515px;
        padding: 0;
    }

    .rr-rooms-intro-content p {
        font-size: 16px;
        line-height: 24px;
    }

    /*
     * Main image bottom = 615px
     * Filter starts      = 695px
     *
     * Gap = 80px
     */

    .rr-rooms-filter {
        width: 1110px;
        max-width: none;
        height: 58px;
        margin-top: 80px;
    }
}

/* =========================================================
   REGAL RESEAU - LOCATION / ABOUT STORY
   Figma Node: 4001:23
   MOBILE FIRST
========================================================= */

#rr-location-story {
    --rr-location-dark: #1e1e1e;
    --rr-location-heading: #424242;
    --rr-location-text: #868686;
    --rr-location-gold: #d89c29;
    --rr-location-light: #f1f1ee;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    /* background: var(--rr-location-dark); */
}

.rr-location-story-inner {
    position: relative;
    padding: 30px 20px;
    width: 100%;
}

/* =========================================================
   MAIN IMAGE
========================================================= */

.rr-location-main-image {
    position: relative;
    width: 100%;
    height: 420px;
    overflow: hidden;
}

.rr-location-main-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* =========================================================
   INTRO
========================================================= */

.rr-location-intro {
    padding: 35px 22px;
    background:
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f1f1ee 100%
        );
}

.rr-location-main-title {
    margin: 0 0 32px;
    color: var(--rr-location-heading);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 36px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

/* =========================================================
   BODY COPY
========================================================= */

.rr-location-intro-copy p,
.rr-location-secondary-copy p,
.rr-location-bottom-content p {
    margin: 0 0 22px;
    color: var(--rr-location-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
}

.rr-location-intro-copy p:last-child,
.rr-location-secondary-copy p:last-child,
.rr-location-bottom-content p:last-child {
    margin-bottom: 0;
}

.rr-location-intro-copy a,
.rr-location-secondary-copy a {
    display: inline;
    color: var(--rr-location-gold);
    font-weight: 700;
    text-decoration: none;
}

.rr-location-intro-copy a:hover,
.rr-location-secondary-copy a:hover {
    color: var(--rr-location-gold);
    text-decoration: underline;
}

/* =========================================================
   SECOND IMAGE
========================================================= */

.rr-location-secondary-image {
    position: relative;
    width: 100%;
    height: 440px;
    overflow: hidden;
}

.rr-location-secondary-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* =========================================================
   SECOND COPY
========================================================= */

.rr-location-secondary-copy {
    padding: 35px 22px 50px;
    background:
        linear-gradient(
            135deg,
            #ffffff 0%,
            #f1f1ee 100%
        );
}

/* =========================================================
   BOTTOM SECTION
========================================================= */

.rr-location-bottom {
    position: relative;
    /* background: var(--rr-location-dark); */
}

/* Individual item */

.rr-location-bottom-item {
    position: relative;
    padding:
        50px
        22px
        50px
        55px;
    border-bottom: 1px solid rgba(255,255,255,.12);
}

/* Heading */

.rr-location-bottom-content h3 {
    margin: 0 0 28px;
    color: var(--rr-location-heading);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 27px;
    font-weight: 500;
    line-height: 1.2;
    text-transform: uppercase;
}

/* =========================================================
   DECORATIVE VERTICAL LINE + STAR
========================================================= */

.rr-location-decoration {
    position: absolute;
    top: 0;
    left: 20px;
    width: 24px;
    height: 100%;
}

.rr-location-decoration-line {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 12px;
    width: 1px;
    background: rgba(91, 66, 20, 0.15);
}


.rr-location-explore .rr-location-decoration-line{
	display: none;
}

.rr-location-decoration-star {
    position: absolute;
    top: 48px;
    left: 0;
    width: 24px;
    height: 24px;
    object-fit: contain;
}

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

@media (max-width: 420px) {
    .rr-location-main-image {
        height: 360px;
    }

    .rr-location-secondary-image {
        height: 380px;
    }

    .rr-location-intro,
    .rr-location-secondary-copy {
        padding-left: 18px;
        padding-right: 18px;
    }

    .rr-location-main-title {
        font-size: 31px;
    }

    .rr-location-bottom-item {
        padding-right: 18px;
    }
}

/* =========================================================
   TABLET
   768px+
========================================================= */

@media (min-width: 768px) {

    .rr-location-main-image {
        height: 530px;
    }

    .rr-location-intro {
        padding: 65px 50px;
    }

    .rr-location-main-title {
        font-size: 40px;
        line-height: 1.15;
    }

    .rr-location-intro-copy p,
    .rr-location-secondary-copy p,
    .rr-location-bottom-content p {
        font-size: 15px;
        line-height: 1.6;
        text-align: justify;
    }

    /* image + content */

    .rr-location-secondary-image {
        height: 500px;
    }

    .rr-location-secondary-copy {
        padding: 60px 50px;
    }

    /* Bottom becomes two columns */

    .rr-location-bottom {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .rr-location-bottom-item {
        min-height: 300px;
        padding:
            55px
            40px
            50px
            65px;
    }

    .rr-location-bottom-item + .rr-location-bottom-item {
        border-left: 1px solid rgba(255,255,255,.12);
    }

    .rr-location-bottom-content h3 {
        font-size: 30px;
        line-height: 36px;
    }

    .rr-location-story-inner{
        padding: 40px 40px 20px;
    }
}

/* =========================================================
   LAPTOP
   992px+
========================================================= */

@media (min-width: 992px) {
    /*
     * Responsive interpretation of the Figma:
     *
     * main image left
     * heading/copy right
     * second image overlaps between them
     */

    .rr-location-story-inner {
        display: grid;
        grid-template-columns: 42% 58%;
        grid-template-areas:
            "main intro"
            "secondary secondarycopy"
            "bottom bottom";
    }

    .rr-location-main-image {
        grid-area: main;
        height: 600px;
    }

    .rr-location-intro {
        grid-area: intro;
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 600px;
        padding: 65px;
    }

    .rr-location-secondary-image {
        grid-area: secondary;
        width: 100%;
        height: 520px;
        margin-left: auto;
    }

    .rr-location-secondary-copy {
        grid-area: secondarycopy;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 60px 65px;
    }

    .rr-location-bottom {
        grid-area: bottom;
    }
}

/* =========================================================
   EXACT LARGE DESKTOP FIGMA
   1800px+
========================================================= */

/* =========================================================
   EXACT LARGE DESKTOP FIGMA
   1800px+
   1920px Figma Frame → VW
========================================================= */

/* =========================================================
   EXACT LARGE DESKTOP FIGMA
   1800px+
========================================================= */

@media (min-width: 1800px) {
    /*
     * FIGMA FRAME:
     *
     * 1920 × 1277
     *
     * Main Image:
     * x: 0
     * y: 186
     * w: 750
     * h: 501
     *
     * Secondary Image:
     * x: 598
     * y: 510
     * w: 459
     * h: 467
     *
     * Heading:
     * x: 810
     * y: 100
     *
     * Top copy:
     * x: 810
     * w: 860
     *
     * Lower copy:
     * x: 1117
     * w: 553
     */

    #rr-location-story {
        height: 1277px;
        margin-bottom: 125px;
        /* background: var(--rr-location-dark); */
    }

    .rr-location-story-inner {
        position: relative;
        display: block;
        width: 100%;
        height: 1277px;
        max-width: 100%;
        padding: 0;
        margin: 0 auto;
        border-bottom: 1px solid rgba(91, 66, 20, 0.15);
    }

    /* =====================================================
       RIGHT LIGHT GRADIENT AREA
    ===================================================== */

    .rr-location-story-inner::before {
        content: "";
        position: absolute;
        z-index: 0;
        top: 0;
        right: 0;
        width: 1170px;
        height: 977px;
        background:
            linear-gradient(
                0deg,
                #f1f1ee 0%,
                #ffffff 100%
            );
        pointer-events: none;
    }

    /* Bottom-left light strip */

    .rr-location-story-inner::after {
        content: "";
        position: absolute;
        z-index: 0;
        left: 0;
        bottom: -1px;
        width: 190px;
        height: 590px;
        background:
            linear-gradient(
                0deg,
                #ffffff 0%,
                #f1f1ee 100%
            );
        pointer-events: none;
        border-right: 1px solid rgba(91, 66, 20, 0.15);
    }

    /* =====================================================
       MAIN IMAGE
    ===================================================== */

    .rr-location-main-image {
        position: absolute;
        z-index: 2;
        top: 186px;
        left: 0;
        width: 750px;
        height: 501px;
    }

    .rr-location-main-image img {
        position: absolute;
        top: 0;
        left: -0.1%;
        width: 100.2%;
        max-width: none;
        height: 100%;
        object-fit: cover;
    }

    /* =====================================================
       INTRO
    ===================================================== */

    .rr-location-intro {
        position: absolute;
        z-index: 3;
        top: 100px;
        left: 810px;
        display: block;
        width: 860px;
        min-height: 0;
        padding: 0;
        background: transparent;
    }

    .rr-location-main-title {
        width: 500px;
        margin: 0 0 52px;
        font-size: 45px;
        line-height: 54px;
    }

    .rr-location-intro-copy {
        width: 860px;
    }

    .rr-location-intro-copy p {
        margin: 0 0 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    /* =====================================================
       SECOND IMAGE
    ===================================================== */

    .rr-location-secondary-image {
        position: absolute;
        z-index: 4;
        top: 510px;
        left: 598px;
        width: 459px;
        height: 467px;
        margin: 0;
    }

    .rr-location-secondary-image img {
        position: absolute;
        top: 0;
        left: -5.34%;
        width: 110.98%;
        max-width: none;
        height: 100%;
        object-fit: cover;
    }

    /* =====================================================
       SECONDARY TEXT
    ===================================================== */

    .rr-location-secondary-copy {
        position: absolute;
        z-index: 3;
        top: 570px;
        left: 1117px;
        display: block;
        width: 560px;
        padding: 0;
        background: transparent;
    }

    .rr-location-secondary-copy p {
        margin: 0 0 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    /* =====================================================
       BOTTOM DARK AREA
    ===================================================== */

    .rr-location-bottom {
        position: absolute;
        z-index: 2;
        top: 977px;
        left: 190px;
        display: block;
        width: 1730px;
        height: 300px;
        background: transparent;
        border-bottom: 1px solid rgba(91, 66, 20, 0.15);
    }

    /* =====================================================
       EXPLORE
    ===================================================== */

    .rr-location-explore {
        position: absolute;
        top: 0;
        left: 0;
        width: 867px;
        height: 300px;
        padding: 80px 53px 30px 60px;
        border: 0;
    }

    .rr-location-explore .rr-location-bottom-content {
        width: 553px;
    }

    /* =====================================================
       ROOFTOP
    ===================================================== */

    .rr-location-rooftop {
        position: absolute;
        top: 0;
        left: 867px;
        width: 863px;
        height: 300px;
        padding: 80px 0 30px 60px;
        border: 0;
    }

    .rr-location-rooftop .rr-location-bottom-content {
        width: 553px;
    }

    /* headings */

    .rr-location-bottom-content h3 {
        margin: 0 0 25px;
        font-size: 30px;
        line-height: 36px;
    }

    .rr-location-bottom-content p {
        margin: 0;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    /* =====================================================
       FIGMA DIVIDERS
    ===================================================== */

    .rr-location-decoration {
        top: 0;
        left: -14px;
        width: 24px;
        height: 300px;
    }

    .rr-location-decoration-line {
        top: 0;
        left: 12px;
        height: 300px;
        background: rgba(91, 66, 20, 0.15);
    }

    .rr-location-decoration-star {
        top: 77px;
        left: 0;
        width: 24px;
        height: 24px;
    }
}


@media (min-width: 1921px) {
    #rr-location-story {
        margin-bottom: unset;
        margin: 0 auto 125px;
        width: 1920px;
    }
}

/* =========================================================
   SPA INTRO
   Figma Node: 4001:58
   Mobile First
========================================================= */

#spa-content-section {
    --rr-spa-bg: #1e1e1e;
    --rr-spa-text: #868686;
    --rr-spa-gold: #c99b4a;
    width: 100%;
    margin: 0;
    padding: 30px 20px 10px;
    overflow: hidden;
    /* background: var(--rr-spa-bg); */
}

/* =========================================================
   SEO H1
========================================================= */

.rr-spa-seo-title {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

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

.rr-spa-intro-inner {
    width: 100%;
    padding: 0;
}

/* Image */

.rr-spa-intro-image {
    position: relative;
    width: 100%;
    height: 400px;
    overflow: hidden;
}

.rr-spa-intro-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Content */

.rr-spa-intro-content {
    padding: 38px 22px 44px;
}

.rr-spa-intro-content p {
    margin: 0 0 22px;
    color: var(--rr-spa-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    text-align: left;
}

.rr-spa-intro-content p:last-child {
    margin-bottom: 0;
}

/* Gold links */

.rr-spa-intro-content a {
    display: inline;
    color: var(--rr-spa-gold);
    font-weight: 700;
    text-decoration: none;
}

.rr-spa-intro-content a:hover {
    color: var(--rr-spa-gold);
    text-decoration: underline;
}

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

@media (max-width: 420px) {
    .rr-spa-intro-image {
        height: 340px;
    }

    .rr-spa-intro-content {
        padding:
            30px
            0
            0;
    }

    .rr-spa-intro-content p {
        font-size: 13px;
        line-height: 1.65;
    }
}

/* =========================================================
   TABLET
   768px+
========================================================= */

@media (min-width: 768px) {
    #spa-content-section{
        padding: 35px 40px 10px;
    }

    #spa-s-1{
        margin-top: 40px;
        display: flex;
        justify-content: center;
    }

    #spa-s-1 .container{
        margin: 0 0;
        padding: 0 40px;
        max-width: 100%;

    }

    #spa-s-1 .container .row{
        margin-left: 0 ;
        margin-right: 0 ;
    }

    #spa-s-1 .container .row .col-md-6{
        padding-left: 0 ;
        padding-right: 0 ;
    }

     #spa-s-1 .container .row .col-md-6:first-child{
        padding-right: 30px ;
     }

    .rr-spa-intro-inner {
        display: grid;
        grid-template-columns: 45% 55%;
        align-items: stretch;
        padding: 0;
    }

    .rr-spa-intro-image {
        height: auto;
        min-height: 500px;
    }

    .rr-spa-intro-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 500px;
        padding: 50px 0 50px 45px;
    }

    .rr-spa-intro-content p {
        font-size: 14px;
        line-height: 1.65;
        text-align: justify;
    }
}

/* =========================================================
   LAPTOP
   992px+
========================================================= */

@media (min-width: 992px) {

    .rr-spa-intro-inner {
        grid-template-columns: 44% 56%;
    }

    .rr-spa-intro-content {
        padding: 55px;
    }

    .rr-spa-intro-content p {
        font-size: 15px;
        line-height: 23px;
    }
}

@media (min-width: 1023px) {
    #spa-s-1{
        margin-top: 80px;
    }
    #spa-s-1 .container{
        max-width: 1140px;
    }
}

/* =========================================================
   DESKTOP
   1200px+
========================================================= */

@media (min-width: 1200px) {
    /*
     * Figma:
     *
     * Frame       = 1920 x 515
     * Inner       = 1320px
     *
     * Image       = 585px
     * Gap         = 60px
     * Text        = 675px
     */

    #spa-content-section {
        min-height: 515px;
        margin-top: 100px;
        padding:0;
    }

    .rr-spa-intro-inner {
        display: grid;
        grid-template-columns:
            minmax(0, 585px)
            minmax(0, 675px);

        column-gap: 60px;
        width: 1320px;
        max-width: calc(100% - 60px);
        min-height: 515px;
        margin: 0 auto;
        padding: 0;
    }

    /* Image */

    .rr-spa-intro-image {
        width: 100%;
        height: 515px;
        min-height: 515px;
    }

    .rr-spa-intro-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    /* Content */

    .rr-spa-intro-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 100%;
        min-height: 515px;
        padding: 0;
    }

    .rr-spa-intro-content p {
        margin: 0 0 24px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }
}

/* =========================================================
   EXACT FIGMA DESKTOP
   1800px+
========================================================= */

@media (min-width: 1800px) {

    .rr-spa-intro-inner {
        width: 1320px;
        max-width: none;
        grid-template-columns:
            585px
            675px;
        column-gap: 60px;
    }

    .rr-spa-intro-image {
        width: 585px;
        height: 515px;
    }

    .rr-spa-intro-content {
        width: 675px;
        height: 515px;
    }

    .rr-spa-intro-content p {
        font-size: 16px;
        line-height: 24px;
    }
}

/* =========================================================
   CELESTIA RESTAURANT
   Figma Node: 4050:32
   Mobile First
========================================================= */

#rr-celestia {
    --celestia-gold: #d89c29;
    --celestia-text: #868686;
    --celestia-heading: #424242;
    --celestia-dark: #212529;
    --celestia-white: #ffffff;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #fff;
}

/* =========================================================
   MOBILE MAIN
========================================================= */

.rr-celestia-main {
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* =========================================================
   PRIMARY CONTENT
========================================================= */

.rr-celestia-primary {
    padding: 35px 22px;
}

/* logo */

.rr-celestia-logo {
    width: 160px;
    margin-bottom: 28px;
}

.rr-celestia-logo img {
    display: block;
    width: 100%;
    height: auto;
}

/* =========================================================
   TAGS
========================================================= */

.rr-celestia-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 13px;
    margin-bottom: 10px;
    color: var(--celestia-gold);
    font-family: "Lato", Arial, sans-serif;
    font-size: 13px;
    font-weight: 900;
    line-height: 24px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.rr-celestia-tags span + span {
    display: flex;
    align-items: center;
    gap: 13px;
}

.rr-celestia-tags span + span::before {
    content: "";
    display: block;
    width: 1px;
    height: 14px;
    background: var(--celestia-gold);
}

/* =========================================================
   TITLE
========================================================= */

.rr-celestia-title {
    margin: 0 0 28px;
    color: var(--celestia-heading);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 34px;
    font-weight: 500;
    line-height: 1.2;
}

/* =========================================================
   BODY COPY
========================================================= */

.rr-celestia-primary-copy,
.rr-celestia-secondary p {
    margin: 0;
    color: var(--celestia-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.65;
    text-align: left;
}

.rr-celestia-secondary a:not(.rr-celestia-gallery-btn) {
    display: inline;
    color: #c99b4a;
    font-weight: 700;
    text-decoration: none;
}

.rr-celestia-secondary a:not(.rr-celestia-gallery-btn):hover {
    text-decoration: underline;
}

/* =========================================================
   IMAGES
========================================================= */

.rr-celestia-hero-image,
.rr-celestia-food-image,
.rr-celestia-interior-image {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.rr-celestia-hero-image {
    height: 440px;
    padding: 0 20px;
}

.rr-celestia-food-image {
    height: 350px;
    padding: 0 20px;
}

.rr-celestia-interior-image {
    height: 420px;
    padding: 0 20px;
}

.rr-celestia-hero-image img,
.rr-celestia-food-image img,
.rr-celestia-interior-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* =========================================================
   SECONDARY
========================================================= */

.rr-celestia-secondary {
    padding: 35px 22px 35px;
}

/* =========================================================
   BUTTON
========================================================= */

.rr-celestia-gallery-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 51px;
    margin-top: 30px;
    padding: 0 30px;
    background: var(--celestia-gold);
    color: #fff !important;
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-decoration: none !important;
    text-transform: uppercase;
    transition:
        background-color .25s ease,
        color .25s ease;
}

.rr-celestia-gallery-btn:hover {
    background: var(--celestia-heading);
    color: #fff !important;
}

/* =========================================================
   DETAILS / MOBILE
========================================================= */

.rr-celestia-details {
    display: grid;
    grid-template-columns: 1fr;
    gap: 35px;
    width: 100%;
    padding: 20px 22px 35px;
    background: #fff;
}

.rr-celestia-detail {
    text-align: left;
}

/* icon */

.rr-celestia-detail-icon {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 50px;
    height: 50px;
    margin-bottom: 15px;
}

.rr-celestia-detail-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.rr-celestia-detail-icon--muted {
    opacity: .7;
}

/* headings */

.rr-celestia-detail h4 {
    margin: 0 0 10px;
    color: var(--celestia-dark);
    font-family: Arial, sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
}

.rr-celestia-detail h6 {
    margin: 14px 0 4px;
    color: var(--celestia-dark);
    font-family: Arial, sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.2;
}

.rr-celestia-detail p {
    margin: 0;
    color: var(--celestia-text);
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
}

.rr-celestia-detail a {
    color: var(--celestia-text);
    text-decoration: none;
}

.rr-celestia-detail a:hover {
    color: var(--celestia-gold);
}

/* =========================================================
   TABLET
   768px+
========================================================= */

@media (min-width: 768px) {
    .rr-events-section{
        padding: 40px 0 0;
    }

    .rr-celestia-main{
        flex-direction: unset;
        flex-wrap: wrap;
    }

    .rr-celestia-primary,
    .rr-celestia-secondary {
        padding-left: 40px;
        padding-right: 40px;
        padding-bottom: 40px;
    }

    .rr-celestia-hero-image {
        padding: 0 40px;
    }

    .rr-celestia-title {
        font-size: 40px;
    }

    .rr-celestia-primary-copy,
    .rr-celestia-secondary p {
        font-size: 15px;
        line-height: 1.6;
        text-align: justify;
    }

    .rr-celestia-food-image,
    .rr-celestia-interior-image {
        display: inline-block;
        width: 50%;
        margin-right: 0;
        vertical-align: top;
    }

    .rr-celestia-interior-image {
        height: 420px;
        padding: 0 40px 0 0;
    }

    .rr-celestia-food-image{
        padding: 0 0 0 40px;
        height: 420px;
    }

    .rr-celestia-details {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        column-gap: 50px;
        row-gap: 45px;
        padding: 0 40px 40px;
    }
}

/* =========================================================
   LAPTOP
   992px+
========================================================= */

@media (min-width: 992px) {
    .rr-celestia-main {
        display: grid;
        grid-template-columns: 56% 44%;
        grid-template-areas:
            "primary hero"
            "gallery secondary";
          grid-auto-flow: column;
          margin: 0 0 50px;
    }

    .rr-celestia-primary {
        grid-area: primary;
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 500px;
        padding: 60px 65px;
    }

    .rr-celestia-hero-image {
        grid-area: hero;
        height: 500px;
    }

    .rr-celestia-secondary {
        grid-area: secondary;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 55px;
    }

    /*
     * gallery images share left lower section
     */

    .rr-celestia-food-image,
    .rr-celestia-interior-image {
        height: 400px;
        width:100%;
    }

    .rr-celestia-details {
        grid-template-columns:
            1.5fr
            1fr
            1.5fr
            1fr
            1fr;

        gap: 25px;
    }
}

/* =========================================================
   DESKTOP
   1200px+
========================================================= */

@media (min-width: 1200px) {

    .rr-celestia-title {
        font-size: 45px;
        line-height: 54px;
    }

    .rr-celestia-tags {
        font-size: 16px;
    }

    .rr-celestia-primary-copy,
    .rr-celestia-secondary p {
        font-size: 16px;
        line-height: 24px;
    }

    .rr-celestia-details {
        width: 1140px;
        max-width: calc(100% - 80px);
        margin: 80px auto 0;
        padding:
            0
            0
            17px;
    }

    .rr-celestia-detail h4 {
        font-size: 24px;
        line-height: 28.8px;
    }

    .rr-celestia-detail h6 {
        font-size: 16px;
        line-height: 19.2px;
    }

    .rr-celestia-detail p {
        font-size: 16px;
        line-height: 24px;
    }

    .rr-celestia-food-image,
    .rr-celestia-interior-image, .rr-celestia-hero-image {
        padding: 0;
    }
}

/* =========================================================
   EXACT FIGMA LARGE DESKTOP
   1800px+
========================================================= */

@media (min-width: 1800px) {
    /*
     * Full Figma frame:
     * 1920 × 1304.36
     */

    #rr-celestia {
        min-height: 1304.36px;
    }

    /* =====================================================
       MAIN COMPOSITION
    ===================================================== */

    .rr-celestia-main {
        position: relative;
        display: block;
        width: 1920px;
        height: 921px;
        max-width: 100%;
        margin: 0 auto;
    }

    /* =====================================================
       PRIMARY CONTENT
       x = 312
       y = 60
    ===================================================== */

    .rr-celestia-primary {
        position: absolute;
        top: 60px;
        left: 312px;
        display: block;
        width: 705px;
        min-height: 0;
        padding: 0;
    }

    .rr-celestia-logo {
        width: 179.19px;
        height: 70px;
        margin: 0 0 40px;
    }

    .rr-celestia-logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    /* tags begin at y 170 */

    .rr-celestia-tags {
        margin: 0 0 9px;
        font-size: 16px;
        line-height: 24px;
    }

    .rr-celestia-tags span + span {
        gap: 20px;
    }

    .rr-celestia-tags {
        gap: 20px;
    }

    /* title */

    .rr-celestia-title {
        margin: 0 0 59px;
        font-size: 45px;
        line-height: 54px;
    }
    /*
     * Copy:
     * x = 312
     * y = 296
     * width = 705
     */

    .rr-celestia-primary-copy {
        width: 705px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }
    /* =====================================================
       TOP RIGHT IMAGE
       x = 1079
       y = 0
       w = 841
       h = 583
    ===================================================== */
    .rr-celestia-hero-image {
        position: absolute;
        top: 0;
        right: 0;
        width: 841px;
        height: 583px;
    }
    /* =====================================================
       LOWER LEFT FOOD IMAGE
       x = 0
       y = 463
       w = 302
       h = 458
    ===================================================== */
    .rr-celestia-food-image {
        position: absolute;
        top: 463px;
        left: 0;
        display: block;
        width: 302px;
        height: 458px;
        margin: 0;
    }
    /* =====================================================
       LOWER CENTER IMAGE
       x = 312
       y = 463
       w = 757
       h = 458
    ===================================================== */
    .rr-celestia-interior-image {
        position: absolute;
        top: 463px;
        left: 312px;
        display: block;
        width: 757px;
        height: 458px;
        margin: 0;
    }
    /* =====================================================
       SECONDARY COPY
       x = 1139
       y = 643
       width = 531
    ===================================================== */
    .rr-celestia-secondary {
        position: absolute;
        top: 643px;
        left: 1139px;
        display: block;
        width: 531px;
        padding: 0;
    }

    .rr-celestia-secondary p {
        width: 531px;
        font-size: 16px;
        line-height: 24px;
        text-align: justify;
    }

    .rr-celestia-gallery-btn {
        min-height: 51px;
        margin-top: 60px;
        padding-left: 30px;
        padding-right: 30px;
    }

    /* =====================================================
       AMENITIES
       Figma x = 390
       y = 1001
       width = 1140
    ===================================================== */

    .rr-celestia-details {
        display: grid;
        /*
         * Exact Figma spacing:
         *
         * 285
         * 190
         * 285
         * 190
         * 190
         *
         * total = 1140
         */

        grid-template-columns:
            285px
            190px
            285px
            190px
            190px;

        gap: 0;
        width: 1140px;
        max-width: none;
        min-height: 303.36px;
        margin: 80px auto 0;
        padding: 0;
    }

    .rr-celestia-detail {
        padding-left: 15px;
    }

    .rr-celestia-detail-icon {
        width: 50px;
        height: 50px;
        margin-bottom: 15px;
    }

    .rr-celestia-detail h4 {
        margin: 0 0 9px;
        font-size: 24px;
        line-height: 28.8px;
    }

    .rr-celestia-detail h6 {
        margin: 0 0 7px;
        font-size: 16px;
        line-height: 19.2px;
    }

    .rr-celestia-detail p {
        margin-bottom: 17px;
        font-size: 16px;
        line-height: 24px;
    }

    .rr-celestia-detail--hours p {
        margin-bottom: 17px;
    }
}

/* =========================================================
   REGAL RESEAU
   OFFERS SECTION
   FIGMA NODE 4054:8
========================================================= */

#rr-offers-section {
    width:100%;
    padding: 35px 0 0;
    background:#ffffff;
}

.rr-offers-wrapper {
    width:100%;
    display:flex;
    flex-direction:column;
    gap:30px;
    padding:0 20px;
}

/* IMAGE */

.rr-offers-image {
    width:100%;
}

.rr-offers-image img {
    width:100%;
    height:auto;
    display:block;
    object-fit:cover;
}

/* CONTENT */

.rr-offers-content {
    width:100%;
}

.rr-offers-content h2 {
    margin:0;
    color:#424242;
    font-family:
    "Playfair Display",
    serif;
    font-size:34px;
    font-weight:500;
    line-height:42px;
}

/* DIVIDER */
.rr-offers-divider {
    width:150px;
    margin:15px 0 35px;
}

.rr-offers-divider img {
    width:100%;
    height:auto;
}

/* TEXT */
.rr-offers-text {
    color:#868686;
    font-family:
    "Lato",
    Arial,
    sans-serif;
}

.rr-offers-text p {
    margin:0 0 22px;
    font-size:14px;
    line-height:24px;
    text-align:justify;
}

.rr-offers-text p:last-child{
    margin-bottom:0;
}

.rr-offers-text a {
    color:#c99b4a;
    font-weight:700;
    text-decoration:none;
}

.rr-offers-text a:hover {
	color:#c99b4a !important;
}

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

@media(min-width:768px) {
    #rr-offers-section{
        padding: 40px 0 15px;
    }
    .rr-offers-wrapper {
        padding:0 50px;
    }

    .rr-offers-content h2 {
        font-size:40px;
        line-height:50px;
    }

    .rr-offers-text p {
        font-size:15px;
    }
}

/* =========================================================
   DESKTOP
========================================================= */

@media(min-width:1200px){
    #rr-offers-section {
        padding:100px 0 50px;
    }

    .rr-offers-wrapper {
        width:1440px;
        margin:auto;
        display:flex;
        flex-direction:row;
        align-items:flex-start;
        gap:60px;
        padding:0;
    }

    .rr-offers-image {
        width:585px;
        flex-shrink:0;
    }

    .rr-offers-image img {
        width:585px;
        height:618px;
        object-fit:cover;
    }

    .rr-offers-content {
        width:775px;
        padding-top:25px;
    }

    .rr-offers-content h2 {
        font-size:45px;
        line-height:54px;
    }

    .rr-offers-divider {
        width:216px;
        margin-top:15px;
        margin-bottom:35px;
    }

    .rr-offers-text p {
        font-size:16px;
        line-height:24px;
        margin-bottom:20px;
    }
}

/* =========================================================
   LARGE DESKTOP / 4K
========================================================= */

@media(min-width:1800px){
    .rr-offers-wrapper {
        width:1440px;
    }
}

/* =====================================================
EVENT LIST
FIGMA NODE 4001:22
===================================================== */

.rr-events-section{
    padding:80px 0 0;
}

.rr-events-container{
    width:100%;
    max-width:1500px;
    margin:auto;
    padding:0 20px;
}

.rr-events-container a.btn-primary{
    background: #d89c29;
    color: #fff !important;
    border: none;
    border-radius: 0;
}

.rr-events-container a.btn-primary:hover{
    background: #000;
}

.rr-events-grid{
    display:grid;
    grid-template-columns:repeat(3,486px);
    gap:30px;
    justify-content:center;
}

/* CARD */

.rr-event-card{
    background:#fff;
    height:820px;
    box-shadow:
    0px 0px 20px rgba(0,0,0,.10);
    overflow:hidden;
    display:flex;
    flex-direction:column;
}

/* IMAGE */

.rr-event-image{
    height:350px;
    overflow:hidden;
}

.rr-event-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

/* META */

.rr-event-meta{
    height:91px;
    background:rgba(0,0,0,.05);
    border-bottom:3px solid #d89c29;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    color:#868686;
    font-family:Lato,sans-serif;
}

.rr-event-date{
    font-size:18px;
    line-height:24px;
}

.rr-event-venue{
    font-size:18px;
    line-height:24px;
    font-weight:600;
    color:#5e5e5e;
}

/* BODY */

.rr-event-body{
    padding:45px 40px 30px;
    text-align:center;
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
}

.rr-event-body h3{
    font-family:Arial,sans-serif;
    font-size:22px;
    line-height:28.8px;
    font-weight:400;
    color:#212529;
    max-width:326px;
    margin:0 auto 25px;
}

.rr-event-description{
    font-family:Lato,sans-serif;
    font-size:16px;
    line-height:24px;
    color:#868686;
    max-width:406px;
    margin-bottom:20px;
}

.rr-event-description p{
    margin:0;
}

.rr-event-note{
    font-family:Lato,sans-serif;
    font-weight:700;
    font-size:14px;
    line-height:21px;
    color:#000;
    margin-top:auto;
    margin-bottom:20px;
}

/* BUTTON */

.rr-event-more{
    width:406px;
    height:51px;
    border:1px solid #000;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:Montserrat,sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.5px;
    color:#000;
    text-transform:uppercase;
    text-decoration:none;
}

.rr-event-more:hover{
    background:#000;
    color:#fff;
}

.rr-event-more:focus-visible{
	outline-color:transparent;
}

/* PAGINATION */

.rr-event-pagination{
    margin-top:60px;
    text-align:center;
}

.rr-event-pagination a,
.rr-event-pagination span{
    margin:0 5px;
    color:#000;
}

/* GALLERY */

.rr-events-gallery{
    padding:0 0 80px;
    text-align:center;
}

/* =====================================================
TABLET
===================================================== */
@media(max-width:1200px){
    .rr-events-grid{
        grid-template-columns:repeat(2, minmax(300px,486px));
    }

    .rr-event-card{
        height:auto;
    }

    .rr-event-more{
        width:100%;
    }
}

/* =====================================================
MOBILE
===================================================== */
@media(max-width:767px){
    .rr-events-section{
        padding: 35px 0 0;
    }

    .rr-events-grid{
        grid-template-columns:1fr;
        gap:30px;
    }

    .rr-event-card{
        width:100%;
    }

    .rr-event-image{
        height:330px;
    }

    .rr-event-body{
        padding:35px 25px;
    }

    .rr-event-body h3{
        font-size:20px;
    }

    .rr-event-description{
        font-size:15px;
        line-height:23px;
    }

    .rr-event-more{
        width:100%;
    }
}

/* =========================================
   REGAL RÉSEAU SCROLL FADE UP ANIMATION
   ========================================= */

.rr-reveal {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1),
                transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
}


.rr-reveal.active {
    opacity: 1;
    transform: translateY(0);
}


/* Delays */

.rr-reveal-delay-1 {
    transition-delay: 0.15s;
}

.rr-reveal-delay-2 {
    transition-delay: 0.30s;
}

.rr-reveal-delay-3 {
    transition-delay: 0.45s;
}

.rr-reveal-delay-4 {
    transition-delay: 0.60s;
}


/* Mobile optimization */

@media(max-width:767px){

    .rr-reveal {
        transform: translateY(30px);
        transition-duration:0.7s;
    }

}

/* =========================================================
   REGAL RÉSEAU - CHECK AVAILABILITY
   ========================================================= */

.rr-check-availability {
    position: absolute;
    z-index: 20;
    left: 0%;
    bottom: 3.16667vw;
    margin: 0 3.53125vw;
    transform: translateX(-50%);

    width: min(100%, calc(100% - 7.03125vw));
    min-height: 118px;

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

    background: rgba(0, 0, 0, 0.51);
    border: 1px solid rgba(216, 156, 41, 0.5);

    box-shadow: 5px 5px 16.1px rgba(0, 0, 0, 0.25);

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

    color: #fff;
}


/* =========================================================
   INDIVIDUAL FIELDS
   ========================================================= */

.rr-check-field {
    position: relative;
    min-width: 0;

    padding: 34px 16px 25px;

    border-right: 1px solid rgba(255, 255, 255, 0.2);
}


/* LABEL */

.rr-check-field label {
    display: block;

    margin: 0 0 13px;

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

    font-family: "Lato", Arial, sans-serif;
    font-size: 12px;
    line-height: normal;
    font-weight: 700;

    letter-spacing: 3.36px;
    text-transform: uppercase;
}


/* INPUT + SELECT */

.rr-check-field input,
.rr-check-field select {
    display: block;

    width: 100%;
    height: 1.0417vw;

    padding: 0;
    margin: 0;

    border: 0;
    outline: 0;

    background: transparent;

    color: #fff;

    font-family: "Lato", Arial, sans-serif;
    font-size: 0.8333vw;
    line-height: 1.0417vw;
    font-weight: 500;

    appearance: none;
    -webkit-appearance: none;
}


/* PLACEHOLDER */

.rr-check-field input::placeholder {
    color: rgba(255, 255, 255, 0.45);
    opacity: 1;
}


/* SELECT PLACEHOLDER */

.rr-check-field select {
    color: rgba(255, 255, 255, 0.45);

    cursor: pointer;

    padding-right: 25px;
}

.rr-check-field select.has-value {
    color: #fff;
}


/* SELECT OPTIONS */

.rr-check-field select option {
    color: #000;
    background: #fff;
}


/* =========================================================
   CALENDAR ICON
   ========================================================= */

.rr-check-calendar {
    position: absolute;

    right: 24px;
    bottom: 36px;

    width: 12px;
    height: 12px;

    border: 1.5px solid rgba(255, 255, 255, 0.85);
    border-radius: 1.5px;

    pointer-events: none;
}

.rr-check-calendar::before {
    content: "";

    position: absolute;

    left: -1.5px;
    top: 0.5px;

    width: 12px;
    height: 2px;

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


/* =========================================================
   DROPDOWN CHEVRON
   ========================================================= */

.rr-check-chevron {
    position: absolute;

    right: 24px;
    bottom: 37px;

    width: 10px;
    height: 10px;

    border-right: 1.5px solid rgba(255, 255, 255, 0.85);
    border-bottom: 1.5px solid rgba(255, 255, 255, 0.85);

    transform: rotate(45deg);

    pointer-events: none;
}


/* =========================================================
   CHECK AVAILABILITY BUTTON
   ========================================================= */

.rr-check-cta {
    position: relative;
    min-width: 0;
}

.rr-check-cta button {
    width: 100%;
    height: 100%;

    min-height: 118px;

    padding: 0 25px;

    border: 0;
    border-radius: 0;

    background: #d89c29;

    color: #000;

    font-family: "Lato", Arial, sans-serif;
    font-size: 17px;
    line-height: normal;
    font-weight: 700;

    letter-spacing: 5.95px;

    text-transform: uppercase;

    cursor: pointer;

    transition:
        background-color 0.25s ease,
        transform 0.25s ease;
}

.rr-check-cta button:hover {
    background: #e4aa3a;
}

.rr-check-cta button:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -4px;
}


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

@media (max-width: 1199px) {

    .rr-check-availability {
        width: calc(100% - 40px);
        bottom: 40px;

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

    .rr-check-field:nth-child(3) {
        border-right: 0;
    }

    .rr-check-field:nth-child(-n+3) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }

    .rr-check-cta {
        grid-column: 1 / -1;
    }

    .rr-check-cta button {
        min-height: 75px;
    }
}


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

@media (max-width: 767px) {

    .rr-check-availability {
        bottom: 20px;

        width: calc(100% - 24px);

        display: grid;

        grid-template-columns: 1fr 1fr;

        min-height: 0;
    }


    .rr-check-field {
        min-height: 84px;

        padding: 22px 16px 20px;
    }


    .rr-check-field:nth-child(odd) {
        border-right: 1px solid rgba(255, 255, 255, 0.2);
    }

    .rr-check-field:nth-child(even) {
        border-right: 0;
    }


    .rr-check-field:nth-child(-n+4) {
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }


    .rr-check-field label {
        margin-bottom: 10px;

        font-size: 10px;
        letter-spacing: 2px;
    }


    .rr-check-field input,
    .rr-check-field select {
        font-size: 14px;
        line-height: 18px;
        height:18px;
    }


    .rr-check-calendar {
        right: 16px;
        bottom: 27px;
    }


    .rr-check-chevron {
        right: 17px;
        bottom: 29px;
    }


    .rr-check-cta {
        grid-column: 1 / -1;
    }


    .rr-check-cta button {
        min-height: 70px;

        font-size: 13px;
        letter-spacing: 3.5px;
    }
}


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

@media (max-width: 420px) {

    .rr-check-availability {
        bottom: 12px;

        width: calc(100% - 16px);
    }


    .rr-check-field {
        min-height: 78px;

        padding: 19px 12px 17px;
    }


    .rr-check-field label {
        font-size: 9px;
        letter-spacing: 1.5px;
    }


    .rr-check-field input,
    .rr-check-field select {
        font-size: 13px;
    }


    .rr-check-calendar {
        right: 12px;
        bottom: 25px;
    }


    .rr-check-chevron {
        right: 13px;
        bottom: 27px;
    }


    .rr-check-cta button {
        min-height: 64px;

        font-size: 11px;
        letter-spacing: 2.5px;
    }
}

/* =========================================================
   MOBILE FLOATING BOOKING
   HOME PAGE ONLY
   BELOW 1024px
   ========================================================= */


/* ---------------------------------------------------------
   HIDE MOBILE BOOKING ON DESKTOP
--------------------------------------------------------- */

.rr-mobile-booking {
    display: none;
}


/* =========================================================
   TABLET + MOBILE
   ========================================================= */

@media (max-width: 1023px) {


    /* -----------------------------------------------------
       HOME PAGE ONLY
    ----------------------------------------------------- */

    body.home .rr-mobile-booking {
        display: block;
    }


    /* -----------------------------------------------------
       HIDE EXISTING INLINE BOOKING BAR
    ----------------------------------------------------- */

    body.home .rr-check-availability {
        display: none;
    }


    /* -----------------------------------------------------
       FLOATING BOOKING WRAPPER
    ----------------------------------------------------- */

    body.home .rr-mobile-booking {
        position: relative;
        z-index: 99999;
    }


    /* =====================================================
       FLOATING BUTTON
    ===================================================== */

    body.home .rr-mobile-booking-trigger {

        position: fixed;

        right: 22px;
        bottom: 118px;

        z-index: 100001;

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

        gap: 10px;

        height: 58px;

        padding: 0 20px;

        border: 1px solid rgba(255, 255, 255, 0.45);
        border-radius: 30px;

        background: #d89c29;

        color: #000;

        box-shadow:
            0 8px 25px rgba(0, 0, 0, 0.28);

        font-family: "Lato", Arial, sans-serif;
        font-size: 12px;
        font-weight: 700;

        letter-spacing: 2px;

        text-transform: uppercase;

        cursor: pointer;

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

        -webkit-tap-highlight-color: transparent;
    }


    body.home .rr-mobile-booking-trigger:hover {

        background: #e4aa3a;

        transform: translateY(-3px);

        box-shadow:
            0 12px 30px rgba(0, 0, 0, 0.32);
    }


    body.home .rr-mobile-booking-trigger:focus-visible {

        outline: 2px solid #fff;
        outline-offset: 3px;
    }


    /* -----------------------------------------------------
       BOOKING ICON
    ----------------------------------------------------- */

    body.home .rr-mobile-booking-icon {

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

        width: 25px;
        height: 25px;

        flex-shrink: 0;
    }


    body.home .rr-mobile-booking-icon svg {

        width: 24px;
        height: 24px;

        fill: none;

        stroke: currentColor;

        stroke-width: 1.5;

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


    /* =====================================================
       BACKDROP
    ===================================================== */

    body.home .rr-mobile-booking-backdrop {

        position: fixed;

        inset: 0;

        z-index: 99998;

        background: rgba(0, 0, 0, 0.55);

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        transition:
            opacity 0.3s ease,
            visibility 0.3s ease;
    }


    /* =====================================================
       OPEN STATE
    ===================================================== */

    body.home.rr-booking-open
    .rr-mobile-booking-backdrop {

        opacity: 1;

        visibility: visible;

        pointer-events: auto;
    }


    body.home.rr-booking-open
    .rr-mobile-booking-trigger {

        transform: translateY(-2px);
    }


    /* =====================================================
       MOVE EXISTING BOOKING FORM TO BOTTOM SHEET
    ===================================================== */

    body.home.rr-booking-open
    .rr-check-availability {

        display: grid;

        position: fixed;

        left: 50%;
        bottom: 0;

        z-index: 100000;

        transform: translateX(-50%);

        width: min(680px, 100%);

        max-height: calc(100vh - 40px);

        overflow-y: auto;

        margin: 0;

        border: 1px solid rgba(216, 156, 41, 0.6);
        border-bottom: 0;

        border-radius: 18px 18px 0 0;

        background: rgba(20, 20, 20, 0.98);

        box-shadow:
            0 -10px 40px rgba(0, 0, 0, 0.35);

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

        animation: rrBookingSlideUp 0.35s ease both;
    }


    /* -----------------------------------------------------
       BOTTOM SHEET ANIMATION
    ----------------------------------------------------- */

    @keyframes rrBookingSlideUp {

        from {
            opacity: 0;
            transform: translate(-50%, 100%);
        }

        to {
            opacity: 1;
            transform: translate(-50%, 0);
        }

    }


    /* =====================================================
       BOOKING FIELDS
    ===================================================== */

    body.home.rr-booking-open
    .rr-check-field {

        min-height: 92px;

        padding: 24px 16px 20px;

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


    body.home.rr-booking-open
    .rr-check-field label {

        margin-bottom: 10px;

        font-size: 10px;

        letter-spacing: 2px;
    }


    body.home.rr-booking-open
    .rr-check-field input,
    body.home.rr-booking-open
    .rr-check-field select {

        font-size: 15px;

        height: 22px;
    }


    /* =====================================================
       CHECK BUTTON
    ===================================================== */

    body.home.rr-booking-open
    .rr-check-cta {

        grid-column: 1 / -1;
    }


    body.home.rr-booking-open
    .rr-check-cta button {

        min-height: 72px;

        font-size: 12px;

        letter-spacing: 3px;
    }


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

    @media (min-width: 768px) and (max-width: 1023px) {

        body.home.rr-booking-open
        .rr-check-availability {

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

            padding-top: 0;
        }


        body.home.rr-booking-open
        .rr-check-field:nth-child(3) {

            border-right: 0;
        }


        body.home.rr-booking-open
        .rr-check-field:nth-child(6) {

            border-right: 0;
        }

    }


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

    @media (max-width: 767px) {


        body.home .rr-mobile-booking-trigger {

            right: 16px;
            bottom: 16px;

            width: 58px;
            height: 58px;

            padding: 0;

            border-radius: 50%;

            gap: 0;
        }


        body.home .rr-mobile-booking-label {

            display: none;
        }


        body.home .rr-mobile-booking-icon {

            width: 27px;
            height: 27px;
        }


        body.home .rr-mobile-booking-icon svg {

            width: 26px;
            height: 26px;
        }


        body.home.rr-booking-open
        .rr-check-availability {

            width: calc(100% - 20px);

            max-height: calc(100vh - 30px);

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


        body.home.rr-booking-open
        .rr-check-field {

            min-height: 86px;

            padding: 20px 14px 17px;
        }


        body.home.rr-booking-open
        .rr-check-field:nth-child(odd) {

            border-right: 1px solid rgba(255, 255, 255, 0.15);
        }


        body.home.rr-booking-open
        .rr-check-field:nth-child(even) {

            border-right: 0;
        }


        body.home.rr-booking-open
        .rr-check-field label {

            font-size: 9px;

            letter-spacing: 1.5px;
        }


        body.home.rr-booking-open
        .rr-check-field input,
        body.home.rr-booking-open
        .rr-check-field select {

            font-size: 13px;
        }


        body.home.rr-booking-open
        .rr-check-calendar {

            right: 14px;

            bottom: 25px;
        }


        body.home.rr-booking-open
        .rr-check-chevron {

            right: 15px;

            bottom: 27px;
        }


        body.home.rr-booking-open
        .rr-check-cta button {

            min-height: 68px;

            font-size: 11px;

            letter-spacing: 2.5px;
        }

    }


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

    @media (max-width: 420px) {


        body.home .rr-mobile-booking-trigger {

            right: 14px;
            bottom: 118px;

            width: 54px;
            height: 54px;
        }


        body.home.rr-booking-open
        .rr-check-availability {

            width: calc(100% - 12px);
        }


        body.home.rr-booking-open
        .rr-check-field {

            min-height: 78px;

            padding: 18px 11px 15px;
        }


        body.home.rr-booking-open
        .rr-check-field label {

            font-size: 8px;

            letter-spacing: 1.2px;
        }


        body.home.rr-booking-open
        .rr-check-field input,
        body.home.rr-booking-open
        .rr-check-field select {

            font-size: 12px;
        }


        body.home.rr-booking-open
        .rr-check-cta button {

            min-height: 62px;

            font-size: 10px;

            letter-spacing: 2px;
        }

    }


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

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

        body.home .rr-mobile-booking-trigger,
        body.home .rr-mobile-booking-backdrop {

            transition: none;
        }

        body.home.rr-booking-open
        .rr-check-availability {

            animation: none;
        }

    }

}

/* =========================================================
   CHECK AVAILABILITY - COUNTRY SELECT
   ========================================================= */

.rr-check-field select {
    width: 100%;
    max-width: 420px;
    height: 1.0417vw;

    padding: 0 45px 0 18px;

 
    border-radius: 0;

    

    font-size: 0.8333vw;
    line-height: 1.0417vw;

    font-family: inherit;

    outline: none;
    cursor: pointer;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    
}


/* Selected value */
.rr-check-field select:valid {
    color: #FFF;
}


/* Placeholder / first option */
.rr-check-field select option:first-child {
    color: #999;
}


/* Options */
.rr-check-field select option {
    padding: 12px 16px;
    color: #333;
    background: #fff;
    font-size: 15px;
}


/* Focus */
.rr-check-field select:focus {
    border-color: #c99b4a;
}


/* =========================================================
   TABLET
   768px - 1199px
   ========================================================= */

@media (min-width: 768px) and (max-width: 1199px) {

    .rr-check-field select {
        width: 100%;
        max-width: 420px;

        height: 50px;

        padding: 0 42px 0 16px;

        font-size: 15px;
        line-height: 50px;

       
    }

    .rr-check-field select option {
        padding: 11px 15px;
        font-size: 15px;
    }

}


/* =========================================================
   MOBILE
   max-width: 767px
   ========================================================= */

@media (max-width: 767px) {

    .rr-check-field select {
        width: 100%;
        max-width: 100%;

        height: 18px;

        padding: 0 40px 0 14px;

        font-size: 14px;
        line-height: 18px;

       
    }

    .rr-check-field select option {
        padding: 10px 14px;
        font-size: 14px;
    }

}