/* =========================================================
   HOTEL RANBIRS V2
   Premium Luxury Website
   ========================================================= */

:root {
    --ink: #11100e;
    --paper: #f3efe7;
    --cream: #e9e0d0;
    --gold: #b79a67;
    --muted: #8d877d;
    --white: #ffffff;
    --line: rgba(17, 16, 14, 0.16);

    --serif: 'Cormorant Garamond', serif;
    --sans: 'Manrope', sans-serif;

    --header: 104px;
}


/* =========================================================
   RESET
   ========================================================= */

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--paper);
    color: var(--ink);
    font-family: var(--sans);
    font-weight: 300;
    line-height: 1.65;
    overflow-x: hidden;
}

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

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

button,
input,
textarea,
select {
    font: inherit;
}


/* =========================================================
   CUSTOM CURSOR
   ========================================================= */

.rb-cursor {
    position: fixed;
    width: 12px;
    height: 12px;

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

    pointer-events: none;
    z-index: 9999;

    transform: translate(-50%, -50%);
    mix-blend-mode: difference;

    transition:
        width 0.2s ease,
        height 0.2s ease;

    display: none;
}

@media (min-width: 1024px) {
    .rb-cursor {
        display: block;
    }
}


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

.rb-header {
    position: fixed;
    z-index: 1000;

    left: 0;
    right: 0;
    top: 0;

    color: white;

    transition:
        background 0.35s ease,
        box-shadow 0.35s ease;

    background:
        linear-gradient(
            to bottom,
            rgba(0, 0, 0, 0.52),
            rgba(0, 0, 0, 0)
        );
}

.rb-header.scrolled {
    background: rgba(17, 16, 14, 0.94);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);

    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}


/* Top line */

.rb-topline {
    height: 32px;

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

    padding: 0 3.5vw;

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

    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}


/* Main Navigation */

.rb-nav-wrap {
    height: 72px;

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

    padding: 0 3.5vw;
}


/* Logo */

.rb-brand {
    display: flex;
    align-items: center;

    min-width: 120px;
}

.rb-brand img {
    height: 50px;
    width: auto;

    filter: brightness(0) invert(1);
}

.rb-brand-fallback {
    display: none;

    font-family: var(--serif);
    font-size: 28px;
    letter-spacing: 0.16em;
}


/* Navigation */

.rb-nav {
    display: flex;
    gap: 26px;
    align-items: center;

    font-size: 11px;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.rb-nav a {
    position: relative;
}

.rb-nav a:not(.rb-nav-cta)::after {
    content: '';

    position: absolute;

    left: 0;
    bottom: -7px;

    width: 0;
    height: 1px;

    background: white;

    transition: width 0.3s ease;
}

.rb-nav a:hover::after,
.rb-nav a.is-active::after {
    width: 100%;
}


/* Header Enquire CTA */

.rb-nav-cta {
    border: 1px solid rgba(255, 255, 255, 0.55);

    padding: 12px 17px;

    transition:
        background 0.3s ease,
        color 0.3s ease;
}

.rb-nav-cta:hover {
    background: white;
    color: var(--ink);
}


/* Mobile menu icon */

.rb-menu-btn {
    display: none;

    background: none;
    border: 0;

    padding: 10px;

    cursor: pointer;
}

.rb-menu-btn span {
    display: block;

    width: 26px;
    height: 1px;

    background: white;

    margin: 6px 0;
}


/* =========================================================
   COMMON TYPOGRAPHY
   ========================================================= */

.eyebrow {
    font-size: 10px;
    letter-spacing: 0.22em;
    text-transform: uppercase;

    font-weight: 500;

    margin: 0 0 15px;
}

.rb-display {
    font-family: var(--serif);

    font-weight: 400;
    line-height: 0.92;

    letter-spacing: -0.035em;
}


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

.rb-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 50px;

    padding: 0 22px;

    border: 1px solid currentColor;

    text-transform: uppercase;

    letter-spacing: 0.15em;

    font-size: 10px;

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

.rb-btn:hover {
    background: var(--ink);
    color: white;
    border-color: var(--ink);

    transform: translateY(-2px);
}

.rb-btn.light:hover {
    background: white;
    color: var(--ink);

    border-color: white;
}


/* Text links */

.rb-text-link {
    display: inline-flex;
    gap: 12px;
    align-items: center;

    border-bottom: 1px solid currentColor;

    padding-bottom: 5px;

    font-size: 11px;

    letter-spacing: 0.12em;

    text-transform: uppercase;
}

.rb-text-link span {
    transition: transform 0.25s ease;
}

.rb-text-link:hover span {
    transform: translate(4px, -4px);
}


/* =========================================================
   HERO
   FRONT IMAGE + VIDEO
   ========================================================= */

.rb-hero {
    position: relative;

    width: 100%;

    height: 100svh;
    min-height: 720px;

    color: white;

    overflow: hidden;

    /*
       Important:
       Front image appears immediately before MP4 loads.
    */
    background-image: url('../../img/hotel/front.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;

    background-color: #111;
}


/* Hero MP4 */

.rb-hero-media {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

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

    z-index: 0;
}


/* Cinematic overlay */

.rb-hero::after {
    content: '';

    position: absolute;

    inset: 0;

    z-index: 1;

    pointer-events: none;

    background:

        linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.64) 0%,
            rgba(0, 0, 0, 0.46) 30%,
            rgba(0, 0, 0, 0.26) 58%,
            rgba(0, 0, 0, 0.12) 78%,
            rgba(0, 0, 0, 0.20) 100%
        ),

        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.48) 0%,
            rgba(0, 0, 0, 0.10) 48%,
            rgba(0, 0, 0, 0.08) 100%
        );
}


/* Hero content */

.rb-hero-content {
    position: relative;

    z-index: 2;

    height: 100%;

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

    padding:
        0
        6vw
        8vh;

    max-width: 1000px;
}

.rb-hero .eyebrow {
    color: #e9e0d0;
}


/* Main Hero Heading */

.rb-hero h1 {
    font-size: clamp(62px, 10vw, 150px);

    margin:
        0
        0
        25px;

    text-shadow:
        0 5px 30px rgba(0, 0, 0, 0.22);
}


/* Hero description + CTA */

.rb-hero-copy {
    display: flex;

    gap: 40px;

    align-items: flex-end;
}

.rb-hero-copy p {
    max-width: 510px;

    font-size: 15px;

    margin: 0;

    color: rgba(255, 255, 255, 0.90);
}


/* Scroll to explore */

.rb-scroll-note {
    position: absolute;

    right: 3.5vw;
    bottom: 8vh;

    z-index: 2;

    writing-mode: vertical-rl;

    font-size: 9px;

    text-transform: uppercase;

    letter-spacing: 0.20em;

    color: rgba(255, 255, 255, 0.82);
}


/* =========================================================
   GENERAL SECTIONS
   ========================================================= */

.rb-section {
    padding: 120px 6vw;
}

.rb-section.dark {
    background: var(--ink);
    color: white;
}

.rb-section.cream {
    background: var(--cream);
}


/* =========================================================
   INTRODUCTION
   ========================================================= */

.rb-intro-grid {
    display: grid;

    grid-template-columns:
        0.75fr
        1.25fr;

    gap: 10vw;

    align-items: start;
}

.rb-intro-grid h2 {
    font-size: clamp(48px, 6vw, 92px);

    margin: 0;
}

.rb-intro-copy {
    max-width: 560px;

    padding-top: 24px;
}

.rb-intro-copy p {
    font-size: 18px;

    line-height: 1.8;

    margin:
        0
        0
        30px;

    color: #524f48;
}

.dark .rb-intro-copy p {
    color: rgba(255, 255, 255, 0.70);
}


/* =========================================================
   FEATURE SPLIT
   ========================================================= */

.rb-feature-split {
    display: grid;

    grid-template-columns:
        1.25fr
        0.75fr;

    min-height: 760px;
}

.rb-feature-split.reverse {
    grid-template-columns:
        0.75fr
        1.25fr;
}

.rb-feature-split.reverse .rb-feature-media {
    order: 2;
}


/* Feature image */

.rb-feature-media {
    position: relative;

    overflow: hidden;

    background: #222;
}

.rb-feature-media img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform
        1.1s
        cubic-bezier(0.2, 0.7, 0.2, 1);
}

.rb-feature-split:hover .rb-feature-media img {
    transform: scale(1.035);
}


/* Feature text */

.rb-feature-copy {
    padding:
        10vw
        7vw;

    display: flex;

    justify-content: center;

    flex-direction: column;

    background: #d8cfbf;
}

.rb-feature-copy h2 {
    font-size: clamp(52px, 6vw, 96px);

    margin:
        0
        0
        25px;
}

.rb-feature-copy p {
    max-width: 500px;

    margin:
        0
        0
        34px;

    color: #4f4b43;
}


/* =========================================================
   DINING / EXPERIENCE CARDS
   ========================================================= */

.rb-cards-head {
    display: flex;

    justify-content: space-between;

    align-items: flex-end;

    margin-bottom: 50px;
}

.rb-cards-head h2 {
    font-size: clamp(48px, 6vw, 90px);

    margin: 0;
}

.rb-card-grid {
    display: grid;

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

    gap: 18px;
}

.rb-card {
    position: relative;

    min-height: 560px;

    overflow: hidden;

    background: #222;

    color: white;
}

.rb-card img {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform
        0.8s
        cubic-bezier(0.2, 0.7, 0.2, 1);
}

.rb-card::after {
    content: '';

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.80),
            rgba(0, 0, 0, 0.10) 62%
        );
}

.rb-card:hover img {
    transform: scale(1.045);
}

.rb-card-copy {
    position: absolute;

    z-index: 2;

    left: 28px;
    right: 28px;
    bottom: 30px;
}

.rb-card-copy h3 {
    font-family: var(--serif);

    font-size: 42px;

    font-weight: 400;

    margin:
        5px
        0;
}

.rb-card-copy p {
    font-size: 12px;

    letter-spacing: 0.08em;

    margin: 0;

    color: rgba(255, 255, 255, 0.78);
}


/* =========================================================
   MARQUEE
   ========================================================= */

.rb-marquee {
    overflow: hidden;

    background: var(--gold);

    color: #111;

    padding: 14px 0;

    white-space: nowrap;
}

.rb-marquee-track {
    display: inline-block;

    animation:
        marquee
        26s
        linear
        infinite;

    font-family: var(--serif);

    font-size: 25px;

    letter-spacing: 0.04em;
}

@keyframes marquee {

    to {
        transform: translateX(-50%);
    }

}


/* =========================================================
   TESTIMONIAL
   ========================================================= */

.rb-testimonial {
    text-align: center;

    max-width: 1000px;

    margin: auto;
}

.rb-testimonial blockquote {
    font-family: var(--serif);

    font-size: clamp(36px, 4.2vw, 64px);

    font-weight: 400;

    line-height: 1.15;

    margin:
        0
        0
        25px;
}

.rb-testimonial cite {
    font-style: normal;

    font-size: 10px;

    letter-spacing: 0.18em;

    text-transform: uppercase;

    color: var(--muted);
}


/* =========================================================
   INTERNAL PAGE HERO
   ========================================================= */

.rb-page-hero {
    height: 78svh;

    min-height: 620px;

    position: relative;

    display: flex;

    align-items: flex-end;

    color: white;

    background: #222;

    overflow: hidden;
}

.rb-page-hero img {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.rb-page-hero::after {
    content: '';

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(0, 0, 0, 0.68),
            rgba(0, 0, 0, 0.08) 60%
        );
}

.rb-page-hero-content {
    position: relative;

    z-index: 2;

    padding:
        0
        6vw
        7vh;
}

.rb-page-hero h1 {
    font-size: clamp(62px, 9vw, 132px);

    margin: 0;

    max-width: 1100px;
}

.rb-page-hero p {
    max-width: 560px;

    font-size: 16px;

    color: rgba(255, 255, 255, 0.84);
}


/* =========================================================
   ROOM LISTING
   ========================================================= */

.rb-room-list {
    display: grid;

    gap: 1px;

    background: var(--line);
}

.rb-room-row {
    display: grid;

    grid-template-columns:
        1.1fr
        0.9fr;

    background: var(--paper);

    min-height: 600px;
}

.rb-room-row:nth-child(even) .rb-room-media {
    order: 2;
}

.rb-room-media {
    overflow: hidden;
}

.rb-room-media img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.rb-room-row:hover img {
    transform: scale(1.03);
}

.rb-room-copy {
    padding: 7vw;

    display: flex;

    flex-direction: column;

    justify-content: center;
}

.rb-room-copy h2 {
    font-family: var(--serif);

    font-size: 64px;

    font-weight: 400;

    line-height: 1;

    margin:
        0
        0
        22px;
}


/* Room tags */

.rb-tags {
    display: flex;

    flex-wrap: wrap;

    gap: 8px;

    margin:
        22px
        0
        32px;
}

.rb-tags span {
    border: 1px solid var(--line);

    padding:
        8px
        12px;

    font-size: 9px;

    letter-spacing: 0.10em;

    text-transform: uppercase;
}


/* =========================================================
   GALLERY
   ========================================================= */

.rb-gallery {
    display: grid;

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

    grid-auto-rows: 120px;

    gap: 12px;
}

.rb-gallery figure {
    margin: 0;

    overflow: hidden;

    position: relative;
}

.rb-gallery figure:nth-child(1) {
    grid-column: span 7;
    grid-row: span 5;
}

.rb-gallery figure:nth-child(2) {
    grid-column: span 5;
    grid-row: span 3;
}

.rb-gallery figure:nth-child(3) {
    grid-column: span 5;
    grid-row: span 4;
}

.rb-gallery figure:nth-child(4) {
    grid-column: span 4;
    grid-row: span 4;
}

.rb-gallery figure:nth-child(5) {
    grid-column: span 8;
    grid-row: span 4;
}

.rb-gallery figure:nth-child(6) {
    grid-column: span 6;
    grid-row: span 4;
}

.rb-gallery figure:nth-child(7) {
    grid-column: span 6;
    grid-row: span 4;
}

.rb-gallery img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.8s ease;
}

.rb-gallery figure:hover img {
    transform: scale(1.04);
}


/* =========================================================
   ENQUIRY FORM
   ========================================================= */

.rb-form-grid {
    display: grid;

    grid-template-columns:
        0.8fr
        1.2fr;

    gap: 10vw;
}

.rb-form-grid h2 {
    font-size: clamp(52px, 7vw, 100px);

    margin: 0;
}

.rb-form {
    display: grid;

    grid-template-columns:
        1fr
        1fr;

    gap: 24px;
}

.rb-field {
    display: flex;

    flex-direction: column;

    gap: 7px;
}

.rb-field.full {
    grid-column:
        1 /
        -1;
}

.rb-field label {
    font-size: 9px;

    text-transform: uppercase;

    letter-spacing: 0.16em;
}

.rb-field input,
.rb-field textarea,
.rb-field select {
    background: transparent;

    border: 0;

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

    color: white;

    padding: 13px 0;

    outline: 0;

    border-radius: 0;
}

.rb-field input:focus,
.rb-field textarea:focus,
.rb-field select:focus {
    border-bottom-color: white;
}

.rb-field select option {
    color: #111;
}

.rb-field textarea {
    min-height: 120px;

    resize: vertical;
}

.rb-form .rb-btn {
    grid-column:
        1 /
        -1;

    justify-self: start;

    margin-top: 12px;

    background: transparent;

    color: white;
}


/* =========================================================
   FOOTER
   ========================================================= */

.rb-footer {
    background: var(--ink);

    color: white;

    padding:
        110px
        5vw
        30px;
}

.rb-footer-intro {
    border-bottom:
        1px
        solid
        rgba(255, 255, 255, 0.18);

    padding-bottom: 80px;
}

.rb-footer-intro h2 {
    font-family: var(--serif);

    font-size: clamp(58px, 8vw, 120px);

    font-weight: 400;

    line-height: 0.88;

    margin:
        0
        0
        35px;
}

.rb-footer-grid {
    display: grid;

    grid-template-columns:
        2fr
        1fr
        1fr
        1fr;

    gap: 5vw;

    padding: 55px 0;
}

.rb-footer-grid strong {
    font-size: 9px;

    letter-spacing: 0.18em;

    text-transform: uppercase;

    color: #c8b48f;
}

.rb-footer-grid p {
    font-size: 12px;

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

    line-height: 2;
}

.rb-footer-grid a:hover {
    color: white;
}

.rb-footer-bottom {
    border-top:
        1px
        solid
        rgba(255, 255, 255, 0.12);

    padding-top: 24px;

    display: flex;

    justify-content: space-between;

    font-size: 9px;

    letter-spacing: 0.12em;

    text-transform: uppercase;

    color: rgba(255, 255, 255, 0.40);
}


/* =========================================================
   FLOATING WHATSAPP
   ========================================================= */

.rb-whatsapp {
    position: fixed;

    z-index: 900;

    right: 18px;
    bottom: 18px;

    background: rgba(17, 16, 14, 0.92);

    color: white;

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

    padding:
        13px
        16px;

    font-size: 9px;

    letter-spacing: 0.14em;

    text-transform: uppercase;

    backdrop-filter: blur(8px);

    transition:
        background 0.3s ease,
        color 0.3s ease,
        transform 0.3s ease;
}

.rb-whatsapp:hover {
    background: white;

    color: var(--ink);

    transform: translateY(-3px);
}


/* =========================================================
   REVEAL ANIMATION
   ========================================================= */

.reveal {
    opacity: 0;

    transform: translateY(24px);

    transition:
        opacity 0.8s ease,
        transform 0.8s ease;
}

.reveal.in-view {
    opacity: 1;

    transform: none;
}


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

@media (max-width: 980px) {

    .rb-menu-btn {
        display: block;
    }

    .rb-nav {
        position: fixed;

        inset: 0;

        background: #111;

        display: flex;

        flex-direction: column;

        justify-content: center;

        gap: 28px;

        transform: translateX(100%);

        transition: transform 0.45s ease;

        font-size: 13px;
    }

    .rb-nav.open {
        transform: none;
    }

    .rb-nav-cta {
        margin-top: 10px;
    }

    .rb-intro-grid,
    .rb-form-grid {
        grid-template-columns: 1fr;

        gap: 40px;
    }

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

    .rb-feature-split,
    .rb-feature-split.reverse {
        grid-template-columns: 1fr;

        min-height: 0;
    }

    .rb-feature-split.reverse .rb-feature-media {
        order: 0;
    }

    .rb-feature-media {
        height: 65vw;

        min-height: 440px;
    }

    .rb-room-row {
        grid-template-columns: 1fr;
    }

    .rb-room-row:nth-child(even) .rb-room-media {
        order: 0;
    }

    .rb-room-media {
        height: 60vw;
    }

    .rb-footer-grid {
        grid-template-columns:
            1fr
            1fr;
    }

    .rb-cursor {
        display: none;
    }

}


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

@media (max-width: 640px) {

    .rb-topline {
        display: none;
    }

    .rb-nav-wrap {
        height: 76px;
    }

    .rb-brand img {
        height: 42px;
    }


    /* Hero */

    .rb-hero {
        min-height: 660px;

        /*
          Better positioning for building image
          on portrait screens.
        */
        background-position: 45% center;
    }

    .rb-hero-media {
        object-position: 45% center;
    }

    .rb-hero::after {
        background:

            linear-gradient(
                to top,
                rgba(0, 0, 0, 0.72) 0%,
                rgba(0, 0, 0, 0.35) 55%,
                rgba(0, 0, 0, 0.18) 100%
            );
    }

    .rb-hero-content {
        padding:
            0
            24px
            70px;

        max-width: 100%;
    }

    .rb-hero h1 {
        font-size: 64px;

        line-height: 0.92;
    }

    .rb-hero-copy {
        display: block;
    }

    .rb-hero-copy p {
        max-width: 100%;

        font-size: 14px;
    }

    .rb-hero-copy .rb-btn {
        margin-top: 25px;
    }

    .rb-scroll-note {
        display: none;
    }


    /* Sections */

    .rb-section {
        padding:
            85px
            24px;
    }

    .rb-intro-copy p {
        font-size: 15px;
    }


    /* Cards */

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

    .rb-card {
        min-height: 520px;
    }

    .rb-cards-head {
        display: block;
    }

    .rb-cards-head .rb-text-link {
        margin-top: 20px;
    }


    /* Feature */

    .rb-feature-copy {
        padding:
            70px
            24px;
    }

    .rb-feature-copy h2 {
        font-size: 58px;
    }


    /* Internal hero */

    .rb-page-hero {
        min-height: 570px;
    }

    .rb-page-hero-content {
        padding:
            0
            24px
            55px;
    }

    .rb-page-hero h1 {
        font-size: 58px;
    }


    /* Rooms */

    .rb-room-media {
        height: 380px;
    }

    .rb-room-copy {
        padding:
            60px
            24px;
    }

    .rb-room-copy h2 {
        font-size: 50px;
    }


    /* Gallery */

    .rb-gallery {
        display: block;
    }

    .rb-gallery figure {
        height: 360px;

        margin-bottom: 12px;
    }


    /* Forms */

    .rb-form {
        grid-template-columns: 1fr;
    }

    .rb-field.full,
    .rb-form .rb-btn {
        grid-column: 1;
    }


    /* Footer */

    .rb-footer {
        padding:
            80px
            24px
            25px;
    }

    .rb-footer-grid {
        grid-template-columns: 1fr;
    }

    .rb-footer-bottom {
        display: block;
    }

    .rb-footer-bottom span {
        display: block;

        margin-top: 8px;
    }

}


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

@media (max-width: 420px) {

    .rb-hero h1 {
        font-size: 54px;
    }

    .rb-hero-content {
        padding-bottom: 55px;
    }

    .rb-feature-copy h2 {
        font-size: 48px;
    }

    .rb-room-copy h2 {
        font-size: 44px;
    }

}


/* =========================================================
   REDUCED MOTION / ACCESSIBILITY
   ========================================================= */

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

    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

}
/* V14.5 Stay / Rooms refresh */
.rb-stay-hero{height:72svh;min-height:610px;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#171614;color:#fff}
.rb-stay-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%}
.rb-stay-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.16) 5%,rgba(0,0,0,.08) 42%,rgba(0,0,0,.73) 100%)}
.rb-stay-hero-content{position:relative;z-index:2;width:min(1180px,88vw);margin:0 auto;padding:0 0 70px}
.rb-stay-hero-content h1{font-family:var(--serif);font-size:clamp(52px,5.2vw,82px);line-height:.98;font-weight:400;margin:8px 0 20px}
.rb-stay-hero-content>p:last-child{max-width:650px;font-size:17px;line-height:1.65;color:rgba(255,255,255,.9)}
.rb-stay-cards{width:min(1220px,92vw);margin:0 auto 110px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.rb-stay-card{background:#fff;border:1px solid rgba(69,68,63,.15);box-shadow:0 14px 38px rgba(0,0,0,.06)}
.rb-stay-card-media{height:340px;position:relative;overflow:hidden;background:#eee}
.rb-stay-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.rb-stay-card:hover .rb-stay-card-media img{transform:scale(1.025)}
.rb-gallery-chip{position:absolute;right:18px;bottom:18px;border:0;background:rgba(255,255,255,.96);padding:13px 18px;font:600 11px/1 var(--sans);letter-spacing:.08em;color:#ad8b3a;cursor:pointer}
.rb-stay-card-body{padding:28px 28px 30px}
.rb-stay-card-body h2{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.1;margin:6px 0 12px;color:#45443f}
.rb-stay-card-body>p:not(.eyebrow){font-size:14px;line-height:1.65;color:#66635e;min-height:68px}
.rb-room-facts{display:flex;flex-wrap:wrap;gap:8px 16px;padding:16px 0;border-top:1px solid rgba(69,68,63,.14);border-bottom:1px solid rgba(69,68,63,.14);font-size:12px;color:#45443f}
.rb-room-facts span:before{content:'◇';color:#ad8b3a;margin-right:7px}
.rb-room-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}
.rb-room-details{border:0;background:none;padding:0;cursor:pointer}
.rb-book-small{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;background:#ad8b3a;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font:600 11px/1 var(--sans)}
.rb-room-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:30px}
.rb-room-modal.is-open{display:flex}
.rb-room-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68)}
.rb-room-modal-panel{position:relative;z-index:2;width:min(1120px,94vw);max-height:88vh;overflow:auto;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.38)}
.rb-room-modal-close{position:absolute;right:20px;top:17px;z-index:3;border:0;background:transparent;text-transform:uppercase;letter-spacing:.08em;font:600 11px/1 var(--sans);cursor:pointer;color:#45443f}
.rb-room-modal-grid{display:grid;grid-template-columns:1fr 1.08fr;min-height:590px}
.rb-room-modal-photo{background:#eee;min-height:590px}
.rb-room-modal-photo img{width:100%;height:100%;object-fit:cover}
.rb-room-modal-copy{padding:60px 54px}
.rb-room-modal-copy h2{font-family:var(--serif);font-size:42px;font-weight:400;margin:8px 0 18px;color:#45443f}
.rb-room-modal-copy>p{font-size:15px;line-height:1.65;color:#66635e}
.rb-modal-specs{display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0;font-weight:600;font-size:13px;color:#45443f}
.rb-modal-specs span:before{content:'◇';color:#ad8b3a;margin-right:8px}
.rb-room-modal-copy hr{border:0;border-top:1px solid rgba(69,68,63,.18);margin:28px 0}
.rb-room-modal-copy h3{font-size:14px;margin:0 0 15px;color:#45443f}
.rb-amenities{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px;margin:0 0 30px;padding:0;list-style:none;font-size:13px;color:#66635e}
.rb-amenities li:before{content:'◆';font-size:7px;color:#ad8b3a;margin-right:9px;vertical-align:2px}
@media(max-width:900px){.rb-stay-cards{grid-template-columns:1fr}.rb-stay-card-media{height:440px}.rb-room-modal-grid{grid-template-columns:1fr}.rb-room-modal-photo{min-height:360px;height:360px}.rb-room-modal-copy{padding:44px 28px}.rb-stay-hero{min-height:560px}}
@media(max-width:640px){.rb-stay-hero{height:68svh;min-height:500px}.rb-stay-hero-content{width:auto;margin:0 22px;padding-bottom:42px}.rb-stay-hero-content h1{font-size:48px}.rb-stay-card-media{height:300px}.rb-stay-cards{width:calc(100% - 32px);gap:18px;margin-bottom:70px}.rb-stay-card-body{padding:23px 20px 26px}.rb-stay-card-body h2{font-size:30px}.rb-room-actions{align-items:flex-start;flex-direction:column}.rb-room-modal{padding:12px}.rb-room-modal-panel{max-height:94vh}.rb-room-modal-photo{min-height:260px;height:260px}.rb-room-modal-copy{padding:38px 20px 24px}.rb-room-modal-copy h2{font-size:34px}.rb-amenities{grid-template-columns:1fr}}

.rb-hp{position:absolute!important;left:-9999px!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}


/* =========================================================
   V15.3 INNER PAGE VISIBILITY + RESPONSIVE FIX
   ========================================================= */
.rb-page-hero--compact{height:68svh;min-height:540px}
.rb-page-hero-content{max-width:860px;padding-bottom:clamp(44px,7vh,78px)}
.rb-page-hero-content.reveal{opacity:1!important;transform:none!important}
.rb-page-hero::after{background:linear-gradient(to top,rgba(0,0,0,.78) 0%,rgba(0,0,0,.28) 48%,rgba(0,0,0,.08) 78%)!important}
.rb-page-hero h1{font-size:clamp(44px,5.8vw,82px)!important;line-height:.98!important;text-shadow:0 3px 22px rgba(0,0,0,.28)}
.rb-page-hero-content>.eyebrow,.rb-page-hero-content>p{color:#fff!important;text-shadow:0 2px 16px rgba(0,0,0,.35)}
.rb-page-hero-content>p:last-child{font-size:clamp(14px,1.2vw,17px)!important;line-height:1.55!important;max-width:620px!important}

/* Global readable headings */
.rb-display{overflow-wrap:anywhere}
.rb-intro-grid .rb-display,.rb-feature-copy .rb-display{font-size:clamp(42px,4.8vw,72px);line-height:1.02}

/* Prevent reveal JS from making critical content disappear */
@media (prefers-reduced-motion: reduce){.reveal{opacity:1!important;transform:none!important}}

@media(max-width:980px){
  .rb-page-hero--compact{height:62svh;min-height:500px}
  .rb-page-hero-content{padding:0 28px 48px!important}
  .rb-page-hero h1{font-size:clamp(42px,8vw,62px)!important}
  .rb-intro-grid .rb-display,.rb-feature-copy .rb-display{font-size:clamp(38px,7vw,56px)!important}
}
@media(max-width:640px){
  .rb-page-hero--compact{height:58svh;min-height:460px}
  .rb-page-hero-content{padding:0 20px 34px!important}
  .rb-page-hero h1{font-size:clamp(36px,10vw,48px)!important}
  .rb-page-hero-content>p:last-child{font-size:14px!important;max-width:92%!important}
  .rb-intro-grid .rb-display,.rb-feature-copy .rb-display{font-size:38px!important}
  .rb-card-grid{grid-template-columns:1fr!important}
  .rb-card{min-height:420px!important}
}

.rb-preloader{position:fixed;inset:0;z-index:99999;background:#11100e;display:grid;place-items:center;text-align:center;transition:opacity .4s ease,visibility .4s ease}
.rb-preloader img{width:108px;max-height:76px;object-fit:contain;display:block;margin:0 auto 12px}.rb-preloader span{display:block;color:rgba(255,255,255,.66);font-size:9px;letter-spacing:.2em;text-transform:uppercase}.rb-preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}

/* =========================================================
   V15.5 INNER PAGE — ELEGANT CENTERED TYPOGRAPHY + NAV MENU
   Applies to Rooms, Dining, Aabshaar, Celebrations, Meetings,
   Packages, Menus, Gallery, About, Location and Contact.
   ========================================================= */

/* ---------- HEADER / DESKTOP DROPDOWNS ---------- */
.rb-nav-wrap{
  height:78px;
  padding:0 3.5vw;
}
.rb-nav{
  gap:clamp(18px,1.7vw,28px);
  font-size:10px;
  line-height:1;
  letter-spacing:.11em;
  white-space:nowrap;
}
.rb-nav-group{
  position:relative;
  display:flex;
  align-items:center;
  height:78px;
}
.rb-nav-group>a{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.rb-nav-chevron{
  font-size:11px;
  transform:translateY(-1px);
  opacity:.72;
}
.rb-nav-dropdown{
  position:absolute;
  top:calc(100% - 4px);
  left:50%;
  min-width:210px;
  padding:10px 0;
  background:rgba(17,16,14,.97);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 45px rgba(0,0,0,.22);
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,10px);
  transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
  z-index:1100;
}
.rb-nav-dropdown a{
  display:block;
  padding:11px 17px;
  font-size:9px;
  line-height:1.4;
  letter-spacing:.12em;
  color:rgba(255,255,255,.78);
  white-space:nowrap;
}
.rb-nav-dropdown a:hover{
  color:#fff;
  background:rgba(255,255,255,.06);
}
.rb-nav-dropdown a::after{display:none!important}
.rb-nav-group:hover .rb-nav-dropdown,
.rb-nav-group:focus-within .rb-nav-dropdown{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}
.rb-nav-group.is-active>a::after{width:100%!important}
.rb-nav-cta{
  padding:12px 18px;
  min-width:96px;
  text-align:center;
}

/* ---------- INTERNAL HERO ---------- */
.rb-page-hero,
.rb-page-hero--compact{
  height:64svh!important;
  min-height:520px!important;
  align-items:center!important;
}
.rb-page-hero::after{
  background:linear-gradient(180deg,rgba(0,0,0,.22) 0%,rgba(0,0,0,.28) 50%,rgba(0,0,0,.52) 100%)!important;
}
.rb-page-hero-content{
  width:min(860px,86vw)!important;
  max-width:860px!important;
  margin:0 auto!important;
  padding:90px 20px 28px!important;
  text-align:center!important;
}
.rb-page-hero-content .eyebrow{
  display:block;
  margin:0 0 14px!important;
  font-size:10px!important;
  line-height:1.2!important;
  letter-spacing:.19em!important;
  text-transform:uppercase!important;
  color:#f0d9aa!important;
}
.rb-page-hero h1,
.rb-page-hero .rb-display{
  max-width:760px!important;
  margin:0 auto 18px!important;
  font-size:clamp(42px,4vw,58px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  overflow-wrap:normal!important;
}
.rb-page-hero-content>p:last-child{
  max-width:640px!important;
  margin:0 auto!important;
  font-size:15px!important;
  line-height:1.65!important;
  text-align:center!important;
  color:rgba(255,255,255,.88)!important;
}

/* ---------- GENERAL INNER SECTIONS ---------- */
.rb-section{
  padding:88px 6vw!important;
}
.rb-intro-grid{
  display:block!important;
  max-width:920px!important;
  margin:0 auto!important;
  text-align:center!important;
}
.rb-intro-grid>div:first-child{
  max-width:760px;
  margin:0 auto;
}
.rb-intro-grid .eyebrow{
  margin:0 0 14px!important;
}
.rb-intro-grid h2,
.rb-intro-grid .rb-display{
  max-width:720px!important;
  margin:0 auto!important;
  font-size:clamp(38px,3.7vw,54px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  overflow-wrap:normal!important;
}
.rb-intro-copy{
  max-width:680px!important;
  margin:0 auto!important;
  padding-top:26px!important;
  text-align:center!important;
}
.rb-intro-copy p{
  margin:0 auto 24px!important;
  font-size:15px!important;
  line-height:1.75!important;
  color:#59554d!important;
}
.rb-intro-copy .rb-text-link{
  margin:5px 9px!important;
}

/* ---------- SPLIT FEATURE SECTIONS ---------- */
.rb-feature-split,
.rb-feature-split.reverse{
  min-height:620px!important;
  grid-template-columns:1.15fr .85fr!important;
}
.rb-feature-split.reverse{
  grid-template-columns:.85fr 1.15fr!important;
}
.rb-feature-copy{
  padding:70px clamp(40px,5vw,78px)!important;
  align-items:center!important;
  text-align:center!important;
}
.rb-feature-copy .eyebrow{
  margin:0 0 15px!important;
}
.rb-feature-copy h2,
.rb-feature-copy .rb-display{
  max-width:560px!important;
  margin:0 auto 20px!important;
  font-size:clamp(38px,3.6vw,54px)!important;
  line-height:1.06!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
  overflow-wrap:normal!important;
}
.rb-feature-copy p{
  max-width:500px!important;
  margin:0 auto 25px!important;
  font-size:15px!important;
  line-height:1.7!important;
  text-align:center!important;
}
.rb-feature-copy .rb-text-link{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* ---------- CARDS / ROOM / CONTENT HEADINGS ---------- */
.rb-cards-head{
  align-items:center!important;
}
.rb-cards-head h2,
.rb-room-copy h2,
.rb-card-copy h2,
.rb-card-copy h3{
  font-size:clamp(34px,3.2vw,48px)!important;
  line-height:1.05!important;
  letter-spacing:-.03em!important;
}
.rb-room-copy{
  text-align:center!important;
  align-items:center!important;
}
.rb-room-copy p{
  max-width:560px;
}
.rb-room-copy .rb-text-link,
.rb-room-copy .rb-btn{
  margin-left:auto;
  margin-right:auto;
}

/* ---------- FOOTER ---------- */
.rb-footer{
  padding:78px 5vw 28px!important;
}
.rb-footer-intro{
  padding-bottom:54px!important;
  text-align:center!important;
}
.rb-footer-intro h2{
  max-width:900px!important;
  margin:0 auto 26px!important;
  font-size:clamp(42px,4.3vw,64px)!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
  text-align:center!important;
}
.rb-footer-intro .rb-text-link,
.rb-footer-intro .rb-btn{
  margin-left:auto!important;
  margin-right:auto!important;
}
.rb-footer-grid{
  max-width:1240px;
  margin:0 auto;
  padding:46px 0!important;
}

/* ---------- TABLET / MOBILE MENU ---------- */
@media(max-width:1040px){
  .rb-menu-btn{
    display:block!important;
    position:relative;
    z-index:1202;
  }
  .rb-nav{
    position:fixed!important;
    inset:0!important;
    z-index:1200!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:18px!important;
    padding:90px 28px 40px!important;
    background:rgba(17,16,14,.985)!important;
    transform:translateX(100%)!important;
    transition:transform .35s ease!important;
    overflow-y:auto!important;
    font-size:12px!important;
    white-space:normal!important;
  }
  .rb-nav.is-open{transform:translateX(0)!important}
  .rb-nav-group{
    display:block!important;
    height:auto!important;
    width:100%!important;
    max-width:320px!important;
    text-align:center!important;
  }
  .rb-nav-group>a{
    justify-content:center!important;
  }
  .rb-nav-dropdown{
    position:static!important;
    min-width:0!important;
    width:100%!important;
    margin-top:8px!important;
    padding:5px 0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  .rb-nav-dropdown a{
    padding:7px 10px!important;
    font-size:9px!important;
    color:rgba(255,255,255,.55)!important;
  }
  .rb-nav-chevron{display:none!important}
  .rb-nav-cta{
    margin-top:6px!important;
  }
}

@media(max-width:760px){
  .rb-nav-wrap{height:70px!important;padding:0 20px!important}
  .rb-brand img{height:42px!important}
  .rb-page-hero,.rb-page-hero--compact{
    height:58svh!important;
    min-height:440px!important;
  }
  .rb-page-hero-content{
    width:100%!important;
    padding:84px 22px 24px!important;
  }
  .rb-page-hero h1,
  .rb-page-hero .rb-display{
    font-size:clamp(32px,9vw,40px)!important;
    line-height:1.04!important;
    max-width:92%!important;
  }
  .rb-page-hero-content>p:last-child{
    font-size:13px!important;
    line-height:1.6!important;
    max-width:92%!important;
  }
  .rb-section{padding:64px 22px!important}
  .rb-intro-grid h2,.rb-intro-grid .rb-display{
    font-size:34px!important;
    max-width:100%!important;
  }
  .rb-intro-copy{padding-top:20px!important}
  .rb-intro-copy p{font-size:14px!important;line-height:1.65!important}
  .rb-feature-split,.rb-feature-split.reverse{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
  }
  .rb-feature-split.reverse .rb-feature-media{order:0!important}
  .rb-feature-media{height:360px!important;min-height:360px!important}
  .rb-feature-copy{padding:54px 22px!important}
  .rb-feature-copy h2,.rb-feature-copy .rb-display{
    font-size:34px!important;
    max-width:100%!important;
  }
  .rb-feature-copy p{font-size:14px!important}
  .rb-footer{padding:62px 22px 24px!important}
  .rb-footer-intro h2{
    font-size:38px!important;
    max-width:100%!important;
  }
  .rb-footer-grid{
    grid-template-columns:1fr 1fr!important;
    gap:34px 24px!important;
  }
}

@media(max-width:480px){
  .rb-page-hero,.rb-page-hero--compact{min-height:410px!important}
  .rb-page-hero h1,.rb-page-hero .rb-display{font-size:32px!important}
  .rb-intro-grid h2,.rb-intro-grid .rb-display,
  .rb-feature-copy h2,.rb-feature-copy .rb-display{font-size:31px!important}
  .rb-footer-intro h2{font-size:34px!important}
  .rb-footer-grid{grid-template-columns:1fr!important;text-align:center!important}
  .rb-footer-bottom{display:block!important;text-align:center!important;line-height:1.8!important}
}


/* =========================================================
   V15.5 STAY PAGE — ROOM CARDS ALIGNMENT
   Shared header/footer remain unchanged across all pages.
   ========================================================= */
.rb-stay-cards{
  width:min(1180px,90vw)!important;
  margin:56px auto 96px!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}
.rb-stay-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-width:0!important;
  border:1px solid rgba(69,68,63,.12)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.045)!important;
  overflow:hidden!important;
}
.rb-stay-card-media{
  height:auto!important;
  aspect-ratio:4/3!important;
  flex:0 0 auto!important;
}
.rb-stay-card-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.rb-gallery-chip{
  right:16px!important;
  bottom:16px!important;
  padding:12px 16px!important;
  min-width:112px!important;
  text-align:center!important;
}
.rb-stay-card-body{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  padding:26px 28px 28px!important;
}
.rb-stay-card-body .eyebrow{
  margin:0 0 12px!important;
  font-size:10px!important;
  line-height:1.2!important;
  letter-spacing:.15em!important;
}
.rb-stay-card-body h2{
  font-size:clamp(27px,2vw,32px)!important;
  line-height:1.08!important;
  margin:0 0 14px!important;
  min-height:35px!important;
}
.rb-stay-card-body>p:not(.eyebrow){
  font-size:14px!important;
  line-height:1.6!important;
  min-height:68px!important;
  margin:0 0 20px!important;
}
.rb-room-facts{
  margin-top:auto!important;
  padding:15px 0!important;
  min-height:58px!important;
  align-content:center!important;
}
.rb-room-actions{
  margin-top:18px!important;
  min-height:40px!important;
  align-items:center!important;
}

@media(max-width:1050px){
  .rb-stay-cards{
    width:min(940px,92vw)!important;
    gap:18px!important;
  }
  .rb-stay-card-body{padding:22px 22px 24px!important}
  .rb-stay-card-body h2{font-size:27px!important}
}

@media(max-width:820px){
  .rb-stay-cards{
    grid-template-columns:1fr!important;
    width:min(620px,calc(100% - 40px))!important;
    gap:24px!important;
    margin:42px auto 72px!important;
  }
  .rb-stay-card-media{aspect-ratio:16/10!important}
  .rb-stay-card-body>p:not(.eyebrow){min-height:0!important}
  .rb-room-facts{min-height:0!important}
}

@media(max-width:520px){
  .rb-stay-cards{
    width:calc(100% - 28px)!important;
    margin-top:28px!important;
    gap:18px!important;
  }
  .rb-stay-card-media{aspect-ratio:4/3!important}
  .rb-stay-card-body{padding:20px 18px 22px!important}
  .rb-stay-card-body h2{font-size:26px!important}
  .rb-gallery-chip{right:12px!important;bottom:12px!important;padding:11px 14px!important}
  .rb-room-actions{flex-direction:row!important;align-items:center!important;justify-content:space-between!important}
}

/* V16 additive responsive/CMS components — preserves existing Ranbirs visual system */
.rb-banquet-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rb-banquet-package-card{background:#fff;border:1px solid rgba(20,20,18,.12);padding:24px}.rb-banquet-package-card h3{font-family:"Cormorant Garamond",serif;font-size:34px;font-weight:500;margin:8px 0 18px}.rb-banquet-package-card ul{padding-left:18px;margin:0 0 20px;display:grid;gap:8px;color:#555}.rb-banquet-note{margin:24px 0 0;font-size:13px;color:#746f66}.rb-menu-proposal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.rb-menu-proposal-grid article{border-top:1px solid rgba(20,20,18,.16);padding:22px 0}.rb-menu-proposal-grid h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:30px;margin:0 0 14px}.rb-menu-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;color:#4d4a45}.rb-blog-grid,.rb-attraction-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.rb-blog-card,.rb-attraction-grid article{border-top:1px solid rgba(20,20,18,.18);padding-top:20px}.rb-blog-card h3,.rb-attraction-grid h3{font-family:"Cormorant Garamond",serif;font-size:30px;font-weight:500;margin:7px 0 10px}.rb-blog-body{margin-top:18px;color:#57534c;line-height:1.8}.rb-display,.rb-page-hero-content h1,.rb-stay-hero-content h1{overflow-wrap:break-word;text-wrap:balance}.rb-page-hero-content p,.rb-stay-hero-content p{max-width:720px}
@media(max-width:980px){.rb-banquet-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rb-blog-grid,.rb-attraction-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rb-menu-proposal-grid{grid-template-columns:1fr}}
@media(max-width:640px){.rb-banquet-package-grid,.rb-blog-grid,.rb-attraction-grid{grid-template-columns:1fr}.rb-banquet-package-card{padding:20px}.rb-banquet-package-card h3{font-size:29px}.rb-menu-list{grid-template-columns:1fr}.rb-menu-proposal-grid h2{font-size:27px}.rb-page-hero-content h1,.rb-stay-hero-content h1,.rb-display{line-height:1.02;letter-spacing:-.02em}.rb-page-hero-content{padding-left:20px;padding-right:20px}.rb-section{overflow:hidden}}

/* =========================================================
   V17.1 HEADER CONSISTENCY FIX
   Match inner-page desktop header to the approved homepage header.
   No hero/content/layout changes outside the header.
   ========================================================= */
@media (min-width: 981px){
  .rb-header{
    background:linear-gradient(180deg,rgba(0,0,0,.60) 0%,rgba(95,95,95,0) 100%);
  }
  .rb-topline{
    height:30px;
    padding:0 3.5vw;
    font-size:9px;
    letter-spacing:.15em;
  }
  .rb-nav-wrap{
    height:88px;
    padding-left:3.2vw;
    padding-right:3.2vw;
  }
  .rb-brand{
    min-width:126px;
    width:126px;
    height:70px;
  }
  .rb-brand img{
    width:122px;
    height:auto;
    max-height:68px;
    object-fit:contain;
  }
  .rb-nav{
    gap:28px;
    font-family:var(--sans);
    font-size:14px;
    line-height:1.25;
    font-weight:400;
    letter-spacing:.03em;
  }
  .rb-nav-group{
    height:88px;
  }
  .rb-nav > a:not(.rb-nav-cta),
  .rb-nav-group > a{
    font-size:14px;
    line-height:1.25;
    font-weight:400;
    letter-spacing:.03em;
    text-transform:uppercase;
    color:#fff;
  }
  .rb-nav-chevron{
    font-size:11px;
  }
  .rb-nav-cta{
    height:50px;
    min-width:158px;
    padding:0 24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#bd993e;
    border-color:#bd993e;
    color:#fff;
    font-family:var(--sans);
    font-size:13px;
    line-height:1.3;
    font-weight:700;
    letter-spacing:.10em;
    text-transform:uppercase;
  }
  .rb-nav-cta:hover{
    background:#9c7b2f;
    border-color:#9c7b2f;
    color:#fff;
  }
}

/* =========================================================
   V18 PREMIUM UI FOUNDATION — Hotel Ranbirs
   Original Ranbirs visual language: charcoal / ivory / muted gold.
   ========================================================= */
:root{--rb18-gold:#c5a45d;--rb18-ink:#141310;--rb18-ivory:#f2eadb;--rb18-paper:#f8f4ec}
.rb-preloader{background:#0b0b09!important}
.rb-preloader:before{content:"";position:absolute;width:118px;height:118px;border:1px solid rgba(197,164,93,.22);border-radius:50%;animation:rb18pulse 1.8s ease-in-out infinite}
.rb-preloader:after{content:"";position:absolute;width:92px;height:92px;border:1px solid transparent;border-top-color:var(--rb18-gold);border-right-color:rgba(197,164,93,.38);border-radius:50%;animation:rb18spin 1.4s linear infinite}
.rb-preloader img{position:relative;z-index:2;width:92px!important;max-height:64px!important;margin:0!important;filter:brightness(0) invert(1)}
.rb-preloader span{position:absolute;top:calc(50% + 82px);left:0;right:0;color:#cdb77e!important;letter-spacing:.26em!important}
@keyframes rb18spin{to{transform:rotate(360deg)}}
@keyframes rb18pulse{0%,100%{transform:scale(.92);opacity:.45}50%{transform:scale(1.05);opacity:1}}

/* refined site rhythm */
.rb-section{padding-top:clamp(78px,8vw,126px);padding-bottom:clamp(78px,8vw,126px)}
.rb-page-hero img,.rb-stay-hero img{filter:saturate(.92) contrast(1.02);transform:scale(1.005)}
.rb-page-hero:after,.rb-stay-hero:after{background:linear-gradient(90deg,rgba(0,0,0,.56),rgba(0,0,0,.08) 64%),linear-gradient(to top,rgba(0,0,0,.30),transparent 55%)}
.rb-display{letter-spacing:-.025em}
.rb-text-link{transition:opacity .25s ease,transform .25s ease}.rb-text-link:hover{opacity:.72;transform:translateX(3px)}

/* image reveal without hiding images when JS is unavailable */
img[data-rb18-load]{opacity:.18;transition:opacity .55s ease,transform .8s cubic-bezier(.22,.61,.36,1)}
img[data-rb18-load].rb18-loaded{opacity:1}

/* V18 editorial gallery */
.rb18-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:92px;gap:14px;padding:0 3.5vw 110px}
.rb18-gallery figure{position:relative;margin:0;overflow:hidden;background:#171612;cursor:zoom-in}
.rb18-gallery figure:nth-child(6n+1){grid-column:span 7;grid-row:span 5}
.rb18-gallery figure:nth-child(6n+2){grid-column:span 5;grid-row:span 4}
.rb18-gallery figure:nth-child(6n+3){grid-column:span 5;grid-row:span 5}
.rb18-gallery figure:nth-child(6n+4){grid-column:span 7;grid-row:span 4}
.rb18-gallery figure:nth-child(6n+5){grid-column:span 4;grid-row:span 4}
.rb18-gallery figure:nth-child(6n+6){grid-column:span 8;grid-row:span 4}
.rb18-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,.61,.36,1),filter .5s ease}
.rb18-gallery figure:after{content:"VIEW";position:absolute;right:18px;bottom:18px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(12,12,10,.78);border:1px solid rgba(255,255,255,.35);color:#fff;font-size:7px;letter-spacing:.13em;opacity:0;transform:scale(.82);transition:.3s}
.rb18-gallery figcaption{position:absolute;left:18px;bottom:18px;padding:8px 10px;background:rgba(12,12,10,.70);color:#fff;font-size:8px;letter-spacing:.17em;text-transform:uppercase;backdrop-filter:blur(7px)}
.rb18-gallery figure:hover img{transform:scale(1.045);filter:brightness(.78)}
.rb18-gallery figure:hover:after{opacity:1;transform:none}

.rb18-lightbox{position:fixed;inset:0;z-index:100000;background:rgba(8,8,7,.96);display:grid;place-items:center;opacity:0;visibility:hidden;transition:.3s;padding:56px 88px}
.rb18-lightbox.is-open{opacity:1;visibility:visible}
.rb18-lightbox-stage{width:min(1280px,100%);height:min(78vh,820px);display:grid;place-items:center;position:relative}
.rb18-lightbox img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 28px 80px rgba(0,0,0,.35)}
.rb18-lightbox-close,.rb18-lightbox-prev,.rb18-lightbox-next{position:absolute;border:1px solid rgba(255,255,255,.35);background:rgba(10,10,9,.38);color:#fff;display:grid;place-items:center;cursor:pointer;transition:.25s}
.rb18-lightbox-close{right:26px;top:24px;width:46px;height:46px;border-radius:50%;font-size:22px}
.rb18-lightbox-prev,.rb18-lightbox-next{top:50%;transform:translateY(-50%);width:50px;height:58px;font-size:25px}.rb18-lightbox-prev{left:22px}.rb18-lightbox-next{right:22px}
.rb18-lightbox button:hover{background:var(--rb18-gold);border-color:var(--rb18-gold);color:#111}
.rb18-lightbox-caption{position:absolute;left:0;right:0;bottom:-38px;text-align:center;color:rgba(255,255,255,.72);font-size:9px;letter-spacing:.18em;text-transform:uppercase}
@media(max-width:760px){.rb18-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:190px;gap:7px;padding:0 12px 70px}.rb18-gallery figure,.rb18-gallery figure:nth-child(n){grid-column:span 1;grid-row:span 1}.rb18-gallery figure:nth-child(3n+1){grid-column:span 2;grid-row:span 2}.rb18-gallery figcaption{left:10px;bottom:10px;font-size:7px}.rb18-gallery figure:after{display:none}.rb18-lightbox{padding:60px 16px}.rb18-lightbox-prev{left:10px}.rb18-lightbox-next{right:10px}}
@media(prefers-reduced-motion:reduce){.rb-preloader:before,.rb-preloader:after{animation:none}}

/* =========================================================
   V18.2 PREMIUM INNER-PAGE SYSTEM
   ========================================================= */
@media (min-width:981px){
  .rb-header.scrolled .rb-topline{height:24px}
  .rb-header.scrolled .rb-nav-wrap{height:64px}
  .rb-header.scrolled .rb-nav-group{height:64px}
  .rb-header.scrolled .rb-brand img{height:44px!important;max-height:44px!important}
  .rb-header.scrolled .rb-nav{font-size:10px;gap:clamp(18px,1.45vw,25px)}
  .rb-header.scrolled .rb-nav>a:not(.rb-nav-cta),.rb-header.scrolled .rb-nav-group>a{font-size:10px;letter-spacing:.09em}
  .rb-header.scrolled .rb-nav-cta{height:42px;min-width:142px;padding:0 20px;font-size:10px}
}
.rb-page-hero{min-height:min(76vh,760px)}
.rb-page-hero--compact{min-height:min(62vh,620px)}
.rb-page-hero-content{max-width:760px}
.rb-page-hero-content .rb-display{font-size:clamp(42px,5.1vw,78px);line-height:.98}
.rb-page-hero-content>p:last-child{max-width:590px;font-size:clamp(16px,1.35vw,20px);line-height:1.65}
.rb-intro-grid,.rb-location-layout{max-width:1320px;margin-inline:auto}
.rb-intro-grid{gap:clamp(55px,8vw,140px);align-items:start}
.rb-intro-grid .rb-display{font-size:clamp(42px,4.4vw,68px);line-height:1.02}
.rb-intro-copy{max-width:590px;font-size:18px;line-height:1.75}
.rb-feature-split{max-width:1440px;margin:0 auto clamp(90px,10vw,150px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);align-items:stretch;background:#f1eadc}
.rb-feature-media{min-height:620px;overflow:hidden}.rb-feature-media img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.rb-feature-split:hover .rb-feature-media img{transform:scale(1.025)}
.rb-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(50px,6vw,100px)}
.rb-feature-copy .rb-display{font-size:clamp(42px,4vw,64px);line-height:1.02}
.rb-feature-copy>p:not(.eyebrow){font-size:17px;line-height:1.75;color:#615d55}
.rb-amenity-grid{max-width:1440px;margin-inline:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(30,28,23,.18);border-left:1px solid rgba(30,28,23,.18)}
.rb-amenity-grid>div,.rb-amenity-tile{min-height:170px;padding:34px!important;border-right:1px solid rgba(30,28,23,.18);border-bottom:1px solid rgba(30,28,23,.18);display:flex!important;flex-direction:column;justify-content:space-between;gap:22px;background:rgba(255,255,255,.08);transition:background .3s,transform .3s}
.rb-amenity-grid>div:hover,.rb-amenity-tile:hover{background:rgba(255,255,255,.52);transform:translateY(-2px)}
.rb-amenity-grid strong,.rb-amenity-tile strong{font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:-.02em}
.rb-amenity-grid span,.rb-amenity-tile span{display:block!important;font-size:13px;line-height:1.55;color:#777066}
.rb-location-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(50px,8vw,130px);align-items:start}
.rb-location-layout>div:first-child .rb-display{font-size:clamp(44px,4.5vw,70px);line-height:1.02}
.rb-location-card{display:grid!important;grid-template-columns:130px 1fr;background:#171612;color:#fff;padding:0!important;border:0!important}
.rb-location-card span,.rb-location-card strong{padding:22px 24px;border-bottom:1px solid rgba(255,255,255,.12)}
.rb-location-card span{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#c5a45d}
.rb-location-card strong{font-size:14px;font-weight:400}.rb-location-card a{color:#fff}
.rb-stay-cards{max-width:1440px;margin:0 auto;padding:0 3.5vw clamp(90px,10vw,150px);display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rb-stay-card{background:#f5f0e7;border:0!important;overflow:hidden}
.rb-stay-card-media{height:440px;overflow:hidden}.rb-stay-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.rb-stay-card:hover img{transform:scale(1.035)}
.rb-stay-card-body{padding:34px 32px 38px}.rb-stay-card-body h2{font-family:var(--serif);font-size:36px;font-weight:400;margin:.25em 0 .45em}.rb-stay-card-body>p:not(.eyebrow){min-height:54px;line-height:1.65;color:#686158}
.rb-room-facts{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.rb-room-facts span{padding:8px 10px;border:1px solid rgba(30,28,23,.15);font-size:9px;letter-spacing:.09em;text-transform:uppercase}
.rb-room-actions{border-top:1px solid rgba(30,28,23,.15);padding-top:20px}
.rb-whatsapp{right:22px!important;bottom:22px!important;border-radius:999px!important;padding:0 18px!important;min-width:112px;height:44px!important;background:#171612!important;box-shadow:0 10px 28px rgba(0,0,0,.18)}
@media(max-width:980px){.rb-feature-split,.rb-location-layout{grid-template-columns:1fr}.rb-feature-media{min-height:420px}.rb-amenity-grid{grid-template-columns:repeat(2,1fr)}.rb-stay-cards{grid-template-columns:1fr 1fr}.rb-stay-card-media{height:360px}}
@media(max-width:640px){.rb-page-hero,.rb-page-hero--compact{min-height:70vh}.rb-feature-media{min-height:340px}.rb-feature-copy{padding:45px 24px}.rb-amenity-grid{grid-template-columns:1fr}.rb-stay-cards{grid-template-columns:1fr;padding-inline:14px}.rb-stay-card-media{height:390px}.rb-location-card{grid-template-columns:105px 1fr}.rb-location-card span,.rb-location-card strong{padding:17px 15px}}

/* =========================================================
   V18.3 — VENUE IDENTITY + CONVERSION SYSTEM
   ========================================================= */
.rb-venue-hero .rb-page-hero-content{max-width:880px}
.rb-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.rb-hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid rgba(255,255,255,.7);color:#fff;text-transform:uppercase;font:600 10px/1 Manrope,sans-serif;letter-spacing:.14em;transition:.3s ease}
.rb-hero-actions a:first-child{background:#b59443;border-color:#b59443}
.rb-hero-actions a:hover{background:#fff;border-color:#fff;color:#171612}
.rb-quick-facts{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 8px}
.rb-quick-facts span{padding:9px 13px;border:1px solid rgba(26,24,20,.14);font:500 10px/1.2 Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#615d55}
.rb-editorial-pair{position:relative;max-width:1440px;margin:0 auto clamp(90px,10vw,150px);padding:0 clamp(24px,5vw,76px);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);grid-template-rows:auto auto;gap:0;background:#f4efe5}
.rb-editorial-main{margin:0;min-height:650px;overflow:hidden;grid-row:1/3}
.rb-editorial-main img,.rb-editorial-detail img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.25,1)}
.rb-editorial-pair:hover .rb-editorial-main img{transform:scale(1.025)}
.rb-editorial-copy{padding:clamp(50px,7vw,100px) clamp(32px,5vw,72px) 48px;align-self:center}
.rb-editorial-copy .rb-display{font-size:clamp(42px,4.5vw,70px);line-height:.98;margin:10px 0 24px}
.rb-editorial-copy>p{color:#625e56;line-height:1.85;max-width:510px}
.rb-editorial-detail{margin:0 0 -55px clamp(32px,5vw,72px);height:260px;overflow:hidden;box-shadow:0 24px 55px rgba(26,22,15,.13)}
.rb-editorial-pair--business .rb-editorial-main{min-height:590px}
.rb-editorial-pair--business .rb-editorial-copy{padding-bottom:80px}
.rb-venue-cta{max-width:1440px;margin:0 auto clamp(80px,9vw,130px);padding:clamp(48px,6vw,84px) clamp(28px,6vw,88px);display:grid;grid-template-columns:1.2fr .8fr;gap:50px;background:#171612;color:#fff;align-items:end}
.rb-venue-cta .eyebrow{color:#c6a75c}.rb-venue-cta h2{font:500 clamp(38px,4.5vw,68px)/.98 "Cormorant Garamond",serif;margin:10px 0 0;max-width:700px}.rb-venue-cta p{color:#c8c3b9;line-height:1.75}.rb-venue-cta a{color:#d5b866;text-transform:uppercase;font:600 10px/1 Manrope,sans-serif;letter-spacing:.13em}
.rb-aabshaar-hero:after{background:linear-gradient(90deg,rgba(4,5,7,.72),rgba(4,5,7,.12) 70%),linear-gradient(to top,rgba(0,0,0,.48),transparent 60%)!important}
.rb-aabshaar-story{background:#0e1011;color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;min-height:720px}
.rb-aabshaar-copy{padding:clamp(70px,8vw,130px);align-self:center}.rb-aabshaar-copy .eyebrow{color:#c7a75b}.rb-aabshaar-copy .rb-display{font-size:clamp(48px,5vw,78px);line-height:.96;margin:12px 0 28px}.rb-aabshaar-copy>p{color:#bdbab3;line-height:1.85}.rb-aabshaar-copy .rb-quick-facts span{border-color:rgba(255,255,255,.18);color:#d3d0c9}.rb-aabshaar-image{overflow:hidden}.rb-aabshaar-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.08)}
.rb-marquee--gold{background:#b59443;color:#111}.rb-marquee--gold .rb-marquee-track{font-weight:600}
.rb-venue-cta--dark{margin-top:0;background:#111315}
.rb-celebration-showcase{max-width:1440px;margin:0 auto clamp(85px,9vw,135px);display:grid;grid-template-columns:1.18fr .82fr;background:#181714;color:#fff}
.rb-celebration-image{min-height:680px;overflow:hidden}.rb-celebration-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.rb-celebration-showcase:hover img{transform:scale(1.02)}
.rb-celebration-copy{padding:clamp(60px,7vw,110px);align-self:center}.rb-celebration-copy .eyebrow{color:#c7a75b}.rb-celebration-copy .rb-display{font-size:clamp(46px,4.8vw,74px);line-height:.98;margin:12px 0 28px}.rb-celebration-copy>p{color:#c2beb5;line-height:1.85}.rb-celebration-copy .rb-quick-facts span{border-color:rgba(255,255,255,.16);color:#d8d4cc}.rb-celebration-copy .rb-text-link{color:#d2b35e}
.rb-banquet-package-card{position:relative;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.rb-banquet-package-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(33,28,20,.10);border-color:rgba(181,148,67,.55)}
.rb-banquet-package-card .rb-text-link{display:inline-flex;margin-top:4px;padding:12px 14px;background:#171612;color:#fff!important;text-decoration:none}
.rb-package-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(20,20,18,.15);border-left:1px solid rgba(20,20,18,.15)}
.rb-package-showcase article{position:relative;min-height:310px;padding:48px;border-right:1px solid rgba(20,20,18,.15);border-bottom:1px solid rgba(20,20,18,.15);transition:background .3s ease,color .3s ease}.rb-package-showcase article:hover{background:#171612;color:#fff}.rb-package-showcase article>span{position:absolute;right:28px;top:25px;font:400 42px/1 "Cormorant Garamond",serif;color:#b59443}.rb-package-showcase h3{font:500 clamp(34px,3vw,48px)/1 "Cormorant Garamond",serif;margin:12px 0 18px}.rb-package-showcase p:not(.eyebrow){max-width:440px;color:#666159;line-height:1.7}.rb-package-showcase article:hover p:not(.eyebrow){color:#c9c5bd}.rb-package-showcase a{display:inline-block;margin-top:24px;color:#a17f2f;text-transform:uppercase;font:600 10px/1 Manrope,sans-serif;letter-spacing:.12em}.rb-package-showcase article:hover a{color:#d4b65f}
.rb-mobile-actions{display:none}
@media(max-width:980px){.rb-editorial-pair,.rb-aabshaar-story,.rb-celebration-showcase,.rb-venue-cta{grid-template-columns:1fr}.rb-editorial-main{grid-row:auto;min-height:520px}.rb-editorial-detail{display:none}.rb-aabshaar-image{min-height:520px;order:-1}.rb-celebration-image{min-height:540px}.rb-package-showcase{grid-template-columns:1fr 1fr}}
@media(max-width:640px){body{padding-bottom:58px}.rb-hero-actions{margin-top:20px}.rb-hero-actions a{min-height:44px;padding:0 16px;font-size:9px}.rb-editorial-pair{padding:0;margin-bottom:75px}.rb-editorial-main{min-height:390px}.rb-editorial-copy{padding:42px 22px}.rb-editorial-copy .rb-display{font-size:40px}.rb-aabshaar-story{min-height:0}.rb-aabshaar-image{min-height:390px}.rb-aabshaar-copy{padding:50px 22px}.rb-aabshaar-copy .rb-display{font-size:44px}.rb-celebration-showcase{margin-bottom:70px}.rb-celebration-image{min-height:390px}.rb-celebration-copy{padding:48px 22px}.rb-celebration-copy .rb-display{font-size:42px}.rb-venue-cta{margin-bottom:72px;padding:45px 22px;gap:22px}.rb-venue-cta h2{font-size:40px}.rb-package-showcase{grid-template-columns:1fr}.rb-package-showcase article{min-height:250px;padding:36px 24px}.rb-mobile-actions{position:fixed;z-index:1200;left:0;right:0;bottom:0;height:58px;display:grid;grid-template-columns:repeat(3,1fr);background:#11100e;border-top:1px solid rgba(255,255,255,.12);box-shadow:0 -8px 30px rgba(0,0,0,.15)}.rb-mobile-actions a{display:flex;align-items:center;justify-content:center;color:#fff;text-transform:uppercase;font:600 9px/1 Manrope,sans-serif;letter-spacing:.12em;border-right:1px solid rgba(255,255,255,.12)}.rb-mobile-actions a:nth-child(2){background:#b59443}.rb-whatsapp{display:none!important}}

/* V18.5 Responsive Banquet Menu + guest PDF */
.rb-menu-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.rb-menu-download,.rb-menu-outline{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;text-decoration:none;text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:700;transition:.25s ease}.rb-menu-download{background:#bd993e;color:#fff;border:1px solid #bd993e}.rb-menu-download:hover{background:#9d7c31;border-color:#9d7c31}.rb-menu-outline{border:1px solid rgba(255,255,255,.65);color:#fff;background:rgba(0,0,0,.16)}.rb-menu-outline:hover{background:#fff;color:#171614}.rb-menu-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:50px;align-items:end;margin-bottom:34px}.rb-menu-heading .rb-display{margin:8px 0 0}.rb-menu-heading>p{margin:0;color:#706b63;line-height:1.75}.rb-tariff-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rb-tariff-card{background:#fff;border:1px solid rgba(20,20,18,.12);padding:28px;display:flex;flex-direction:column;min-height:100%}.rb-tariff-card h3{font-family:"Cormorant Garamond",serif;font-size:35px;font-weight:500;margin:8px 0 20px;color:#2b2925}.rb-tariff-card ul{margin:0 0 24px;padding:0;list-style:none;display:grid;gap:8px;color:#57534c;line-height:1.45}.rb-tariff-card li{padding-bottom:8px;border-bottom:1px solid rgba(20,20,18,.08)}.rb-tariff-card .rb-text-link{margin-top:auto}.rb-menu-proposal-grid--v18{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px}.rb-menu-proposal-grid--v18 article{padding:28px 0}.rb-menu-proposal-grid--v18 .rb-menu-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.rb-menu-download--dark{background:#171614;border-color:#171614;color:#fff;margin-top:12px}.rb-menu-download--dark:hover{background:#bd993e;border-color:#bd993e}
@media(max-width:980px){.rb-menu-heading{grid-template-columns:1fr;gap:14px}.rb-tariff-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.rb-menu-proposal-grid--v18{grid-template-columns:1fr}}
@media(max-width:640px){.rb-menu-actions{display:grid;grid-template-columns:1fr;width:100%}.rb-menu-download,.rb-menu-outline{width:100%;min-height:50px}.rb-menu-tariff-section{padding-left:18px!important;padding-right:18px!important}.rb-tariff-cards{grid-template-columns:1fr}.rb-tariff-card{padding:22px}.rb-tariff-card h3{font-size:31px}.rb-menu-proposal-grid--v18 .rb-menu-list{grid-template-columns:1fr}.rb-menu-proposal-grid--v18 article{padding:22px 0}}
