:root {
     --green: #132E23;
     --green-soft: #203F30;
     --ivory: #F7F1E8;
     --sand: #E6D5BA;
     --gold: #B58A45;
     --gold-soft: #D7BE8A;
     --text: #2B2B2B;
     --muted: #6F665D;
     --white: #FFFFFF;
}

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

html {
     scroll-behavior: smooth;
     /* Prevent the horizontal scrollbar caused by reveal animations
        (fade-left / fade-right translate elements sideways before they
        come into view). `clip` contains the overflow without creating a
        scroll container, so position: sticky keeps working. */
     overflow-x: clip;
}

body {
     font-family: 'Inter', sans-serif;
     background: var(--ivory);
     color: var(--text);
     line-height: 1.7;
     overflow-x: clip;
}

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

body.home nav .header-btn {
     display: none;
}

.cormorant-font {
     font-family: 'Cormorant Garamond', serif;
}

h1,
h2,
h3 {
     font-family: 'Cormorant Garamond', serif;
     font-weight: 500;
     line-height: 1.05;
}

.nav {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: calc(106 * var(--vw));
     z-index: 50;
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 0 7vw 0 4vw;
     color: white;
     background: linear-gradient(to bottom, rgba(0, 0, 0, .52), rgba(0, 0, 0, .05));
     transition: background .35s ease, box-shadow .35s ease;
}

.nav.scrolled {
     background: var(--green);
     box-shadow: 0 calc(8 * var(--vw)) calc(24 * var(--vw)) rgba(19, 46, 35, .18);
}

.logo {
     font-family: 'Cormorant Garamond', serif;
     font-size: calc(34 * var(--vw));
     letter-spacing: calc(.5 * var(--vw));
     position: relative;
     z-index: 111;
}

/* Image logo (set via Site Setup > Header > Logo) */
.logo--image {
     display: inline-flex;
     align-items: center;
}

.logo--image img {
     display: block;
     width: auto;
     height: calc(86 * var(--vw));
     /* max-width: calc(220 * var(--vw)); */
     object-fit: contain;
}

.menu {
     display: flex;
     align-items: center;
     gap: calc(30 * var(--vw));
     font-size: calc(15 * var(--vw));
     letter-spacing: calc(.3 * var(--vw));
}

.menu a.active {
     color: var(--gold-soft);
}

/* Newly added */

.mobile-menu {
     display: none;
}

body.menu-open {
     overflow: hidden;
}

.mobile-menu-btn {
     display: none;
     position: relative;
     width: calc(42 * var(--vw));
     height: calc(42 * var(--vw));
     border: calc(1 * var(--vw)) solid rgba(255, 255, 255, .45);
     border-radius: 50%;
     background: rgba(255, 255, 255, .08);
     cursor: pointer;
     z-index: 100;
}

/* Bars are absolutely centred on the same point, then offset up/down.
   This makes the open state collapse into a perfectly aligned X. */
.mobile-menu-btn span {
     position: absolute;
     top: 50%;
     left: 50%;
     width: 22px;
     height: 2px;
     margin: -1px 0 0 -11px;
     background: #fff;
     border-radius: 10px;
     /* will-change pre-composites the bars so the FIRST transition is not dropped. */
     will-change: transform, opacity;
     transition: transform .3s ease, opacity .2s ease;
}

.mobile-menu-btn span:nth-child(1) {
     transform: translateY(-6px) rotate(0deg);
}

.mobile-menu-btn span:nth-child(2) {
     transform: rotate(0deg);
}

.mobile-menu-btn span:nth-child(3) {
     transform: translateY(6px) rotate(0deg);
}

.mobile-menu-btn.is-active span:nth-child(1) {
     transform: translateY(0) rotate(45deg);
}

.mobile-menu-btn.is-active span:nth-child(2) {
     opacity: 0;
}

.mobile-menu-btn.is-active span:nth-child(3) {
     transform: translateY(0) rotate(-45deg);
}

/* End Newly added */
.inner-banner {
     min-height: 90vh;
     position: relative;
     overflow: hidden;
     display: flex;
     align-items: center;
     padding: 0;
}

.inner-banner .hero-content {
     position: relative;
     z-index: 2;
     color: white;
     max-width: calc(820 * var(--vw));
     padding-left: 7vw;
     padding-top: calc(80 * var(--vw))
}

.nav-cta {
     border: calc(1 * var(--vw)) solid rgba(255, 255, 255, .65);
     padding: calc(12 * var(--vw)) calc(20 * var(--vw));
     border-radius: calc(999 * var(--vw));
}



.eyebrow {
     font-size: calc(12 * var(--vw));
     text-transform: uppercase;
     letter-spacing: calc(2.8 * var(--vw));
     color: var(--gold-soft);
     margin-bottom: calc(18 * var(--vw));
     font-weight: 600;
}



.actions {
     display: flex;
     gap: calc(16 * var(--vw));
     flex-wrap: wrap;
     margin-bottom: calc(26 * var(--vw))
}

.btn {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     min-height: calc(52 * var(--vw));
     padding: 0 calc(28 * var(--vw));
     border-radius: calc(999 * var(--vw));
     background: var(--gold);
     color: white;
     font-size: calc(14 * var(--vw));
     font-weight: 600;
     letter-spacing: calc(.2 * var(--vw));
     transition: .25s ease;
}

.btn:hover {
     transform: translateY(calc(-2 * var(--vw)));
     box-shadow: 0 calc(14 * var(--vw)) calc(30 * var(--vw)) rgba(0, 0, 0, .18)
}

.btn.outline {
     background: transparent;
     border: calc(1 * var(--vw)) solid rgba(255, 255, 255, .75)
}

.trust-line {
     color: #EAD8B7;
     font-size: calc(13 * var(--vw));
     letter-spacing: calc(.3 * var(--vw));
}

.award-strip {
     background: #E8D8BF;
     padding: calc(24 * var(--vw)) 7vw;
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: calc(18 * var(--vw));
}

.award {
     text-align: center;
     padding: calc(20 * var(--vw)) calc(12 * var(--vw));
     border-right: calc(1 * var(--vw)) solid rgba(19, 46, 35, .18);
}

.award:last-child {
     border-right: none
}

.award strong {
     display: block;
     font-family: 'Cormorant Garamond', serif;
     font-size: calc(25 * var(--vw));
     color: var(--green);
     margin-bottom: calc(4 * var(--vw));
}

.award span {
     font-size: calc(13 * var(--vw));
     color: #5d5145
}



.split {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: calc(70 * var(--vw));
     align-items: center;
}

.image-lux {
     min-height: calc(560 * var(--vw));
     border-radius: calc(34 * var(--vw));
     background:
          linear-gradient(rgba(0, 0, 0, .05), rgba(0, 0, 0, .05)),
          url('https://images.unsplash.com/photo-1544161515-4ab6ce6db874?auto=format&fit=crop&w=1300&q=85') center/cover;
     box-shadow: 0 calc(35 * var(--vw)) calc(80 * var(--vw)) rgba(19, 46, 35, .18);
}

/* Darken the Programs section image only */
.program-img {
     filter: brightness(.62);
}

.text-block h2 {
     font-size: calc(56 * var(--vw));
     color: var(--green);
     margin-bottom: calc(24 * var(--vw));
}

.lead {
     font-size: calc(17 * var(--vw));
     color: var(--muted);
     margin-bottom: calc(24 * var(--vw));
}

.signature {
     margin-top: calc(30 * var(--vw));
     padding-left: calc(20 * var(--vw));
     border-left: calc(2 * var(--vw)) solid var(--gold);
     color: var(--green);
     font-family: 'Cormorant Garamond', serif;
     font-size: calc(25 * var(--vw));
}

.why {
     background: #FBF7EF;
}

.center {
     max-width: calc(790 * var(--vw));
     text-align: center;
     margin: 0 auto calc(48 * var(--vw));
}

.center h2 {
     font-size: calc(54 * var(--vw));
     color: var(--green);
     margin-bottom: calc(18 * var(--vw));
}

.card-grid {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: calc(24 * var(--vw));
}

.card {
     background: white;
     padding: calc(34 * var(--vw)) calc(30 * var(--vw));
     border-radius: calc(28 * var(--vw));
     box-shadow: 0 calc(25 * var(--vw)) calc(55 * var(--vw)) rgba(19, 46, 35, .08);
     border: calc(1 * var(--vw)) solid rgba(181, 138, 69, .16);
}

.icon {
     width: calc(48 * var(--vw));
     height: calc(48 * var(--vw));
     border-radius: 50%;
     background: #F0E2C9;
     color: var(--gold);
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: calc(23 * var(--vw));
     margin-bottom: calc(22 * var(--vw));
}

.card h3 {
     font-size: calc(29 * var(--vw));
     color: var(--green);
     margin-bottom: calc(12 * var(--vw))
}

.dark {
     background: var(--green);
     color: white;
}

.dark h2 {
     color: white
}

.dark .lead {
     color: #E6D8C4
}

.program-img {
     background: url('https://images.unsplash.com/photo-1506126613408-eca07ce68773?auto=format&fit=crop&w=1300&q=85') center/cover;
}

.included {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: calc(14 * var(--vw));
     margin: calc(32 * var(--vw)) 0;
}

.included div {
     padding: calc(14 * var(--vw)) calc(16 * var(--vw));
     border-radius: calc(16 * var(--vw));
     background: rgba(255, 255, 255, .08);
     border: calc(1 * var(--vw)) solid rgba(255, 255, 255, .12);
     font-size: calc(14 * var(--vw));
}

.rooms-grid {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     gap: calc(28 * var(--vw));
}

.room {
     background: white;
     border-radius: calc(30 * var(--vw));
     overflow: hidden;
     box-shadow: 0 calc(24 * var(--vw)) calc(55 * var(--vw)) rgba(19, 46, 35, .09);
}

.room-img {
     height: calc(380 * var(--vw));
     /* background: url('https://images.unsplash.com/photo-1618773928121-c32242e63f39?auto=format&fit=crop&w=900&q=85') center/cover; */
}

/* .room:nth-child(2) .room-img {
      background: url('https://images.unsplash.com/photo-1602002418082-a4443e081dd1?auto=format&fit=crop&w=900&q=85') center/cover
    }

    .room:nth-child(3) .room-img {
      background: url('https://images.unsplash.com/photo-1600618528240-fb9fc964b853?auto=format&fit=crop&w=900&q=85') center/cover
    } */

.room-body {
     padding: calc(30 * var(--vw))
}

.room h3 {
     font-size: calc(31 * var(--vw));
     color: var(--green);
     margin-bottom: calc(8 * var(--vw))
}

.price {
     text-align: center;
     font-family: 'Cormorant Garamond', serif;
     color: var(--green);
     font-size: calc(30 * var(--vw));
     margin-top: calc(44 * var(--vw));
}

/* ===================================================== */
/* Rooms: two content boxes + full-width image slider    */
/* (replaces the old 2-card grid)                        */
/* ===================================================== */
.rooms-boxes {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     gap: calc(28 * var(--vw));
     margin-top: calc(40 * var(--vw));
}

.rooms-box {
     background: #fff;
     border: calc(1 * var(--vw)) solid rgba(181, 138, 69, .28);
     border-radius: calc(24 * var(--vw));
     padding: calc(40 * var(--vw));
     box-shadow: 0 calc(18 * var(--vw)) calc(44 * var(--vw)) rgba(19, 46, 35, .07);
}

.rooms-box__eyebrow {
     display: inline-block;
     text-transform: uppercase;
     letter-spacing: calc(3 * var(--vw));
     font-size: calc(13 * var(--vw));
     font-weight: 700;
     color: var(--gold);
     margin-bottom: calc(14 * var(--vw));
}

.rooms-box__title {
     font-size: calc(31 * var(--vw));
     line-height: 1.1;
     color: var(--green);
     margin-bottom: calc(12 * var(--vw));
}

.rooms-box__text {
     font-size: calc(17 * var(--vw));
     line-height: 1.6;
     color: #4f5a51;
}

.rooms-slider-wrap {
     position: relative;
     margin-top: calc(40 * var(--vw));
}

.rooms_slider .slick-list {
     border-radius: calc(34 * var(--vw));
     overflow: hidden;
     box-shadow: 0 calc(34 * var(--vw)) calc(70 * var(--vw)) rgba(19, 46, 35, .18);
}

.room-slide__media {
     position: relative;
     height: calc(740 * var(--vw));
     overflow: hidden;
}

.room-slide__img {
     position: absolute;
     inset: 0;
     background-size: cover;
     background-position: center;
}

.room-slide__img--empty {
     background-color: #ddd;
}

/* Subtle bottom gradient so the nav stays legible over light images */
.room-slide__media::after {
     content: "";
     position: absolute;
     inset: 0;
     pointer-events: none;
     background: linear-gradient(180deg,
               rgba(19, 46, 35, 0) 62%,
               rgba(11, 28, 21, .55) 100%);
}

.room-slide__overlay {
     position: absolute;
     inset: 0;
     background: linear-gradient(180deg,
               rgba(19, 46, 35, 0) 30%,
               rgba(19, 46, 35, .45) 62%,
               rgba(11, 28, 21, .92) 100%);
}

.room-slide__content {
     position: absolute;
     left: 0;
     bottom: 0;
     z-index: 2;
     max-width: calc(760 * var(--vw));
     padding: calc(60 * var(--vw));
     color: #fff;
}

.room-slide__eyebrow {
     display: inline-block;
     text-transform: uppercase;
     letter-spacing: calc(3 * var(--vw));
     font-size: calc(13 * var(--vw));
     font-weight: 700;
     color: var(--gold-soft);
     margin-bottom: calc(16 * var(--vw));
}

.room-slide__title {
     font-size: calc(48 * var(--vw));
     line-height: 1.05;
     color: #fff;
     margin-bottom: calc(16 * var(--vw));
}

.room-slide__text {
     font-size: calc(18 * var(--vw));
     line-height: 1.55;
     color: rgba(255, 255, 255, .9);
     max-width: calc(620 * var(--vw));
}

/* Navigation: counter + circular gold arrows, bottom-right */
.rooms-slider__nav {
     position: absolute;
     right: calc(50 * var(--vw));
     bottom: calc(54 * var(--vw));
     z-index: 5;
     display: flex;
     align-items: center;
     gap: calc(18 * var(--vw));
}

.rooms-count {
     font-family: 'Cormorant Garamond', serif;
     color: #fff;
     font-size: calc(22 * var(--vw));
     letter-spacing: calc(1 * var(--vw));
}

.rooms-count .sep {
     margin: 0 calc(6 * var(--vw));
     color: var(--gold-soft);
}

.rooms-count .total {
     color: rgba(255, 255, 255, .6);
}

.rooms-arrow {
     width: calc(58 * var(--vw));
     height: calc(58 * var(--vw));
     border-radius: 50%;
     border: calc(1.5 * var(--vw)) solid rgba(255, 255, 255, .55);
     background: rgba(255, 255, 255, .08);
     color: #fff;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     cursor: pointer;
     -webkit-backdrop-filter: blur(4px);
     backdrop-filter: blur(4px);
     transition: background .3s ease, border-color .3s ease, color .3s ease, transform .3s ease;
}

.rooms-arrow svg {
     width: calc(22 * var(--vw));
     height: calc(22 * var(--vw));
}

.rooms-arrow:hover {
     background: var(--gold);
     border-color: var(--gold);
     color: #fff;
     transform: translateY(calc(-2 * var(--vw)));
}

/* ---- Mobile / tablet (≤991px: --vw becomes 1px) ---- */
@media (max-width: 991px) {
     .award span {
          font-size: 16px;
     }

     .rooms-boxes {
          grid-template-columns: 1fr;
          gap: 16px;
          margin-top: 28px;
     }

     .rooms-box {
          border-radius: 16px;
          padding: 26px 24px;
     }

     .rooms-box__eyebrow {
          letter-spacing: 2px;
          font-size: 12px;
          margin-bottom: 10px;
     }

     .rooms-box__title {
          font-size: 24px;
     }

     .rooms-box__text {
          font-size: 15px;
     }

     .rooms-slider-wrap {
          margin-top: 24px;
     }

     .rooms_slider .slick-list {
          border-radius: 20px;
          box-shadow: 0 20px 40px rgba(19, 46, 35, .18);
     }

     .room-slide__media {
          height: 460px;
     }

     .room-slide__overlay {
          background: linear-gradient(180deg,
                    rgba(19, 46, 35, 0) 18%,
                    rgba(19, 46, 35, .5) 55%,
                    rgba(11, 28, 21, .94) 100%);
     }

     .room-slide__content {
          padding: 28px 24px 84px;
          max-width: 100%;
     }

     .room-slide__eyebrow {
          letter-spacing: 2px;
          font-size: 12px;
          margin-bottom: 12px;
     }

     .room-slide__title {
          font-size: 30px;
          margin-bottom: 12px;
     }

     .room-slide__text {
          font-size: 15px;
     }

     .rooms-slider__nav {
          right: 50%;
          transform: translateX(50%);
          bottom: 22px;
          gap: 14px;
     }

     .rooms-count {
          font-size: 18px;
     }

     .rooms-arrow {
          width: 46px;
          height: 46px;
          border-width: 1.5px;
     }

     .rooms-arrow svg {
          width: 20px;
          height: 20px;
     }
}

.experience-grid {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: calc(28 * var(--vw));
}

.tile {
     height: calc(450 * var(--vw));
     border-radius: calc(32 * var(--vw));
     overflow: hidden;
     display: flex;
     align-items: flex-end;
     padding: calc(32 * var(--vw));
     color: white;
     background:
          linear-gradient(to top, rgba(0, 0, 0, .72), rgba(0, 0, 0, .05)),
          url('https://images.unsplash.com/photo-1506126613408-eca07ce68773?auto=format&fit=crop&w=1000&q=85') center/cover;
}

.tile:nth-child(2) {
     background:
          linear-gradient(to top, rgba(0, 0, 0, .72), rgba(0, 0, 0, .05)),
          url('https://images.unsplash.com/photo-1543353071-10c8ba85a904?auto=format&fit=crop&w=1000&q=85') center/cover;
}

.tile:nth-child(3) {
     background:
          linear-gradient(to top, rgba(0, 0, 0, .72), rgba(0, 0, 0, .05)),
          url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1000&q=85') center/cover;
}

.tile h3 {
     font-size: calc(34 * var(--vw));
     margin-bottom: calc(8 * var(--vw))
}

.review-section {
     background: #E8D8BF;
}

.review-section .btn {
     margin: calc(36 * var(--vw)) auto 0 auto;
     display: flex;
     justify-content: center;
     width: max-content;
}

.review-section .review-para {
     min-height: calc(200 * var(--vw));
}

.review-name {
     font-weight: 700;
     color: var(--gold);
     margin-top: calc(14 * var(--vw));
}



.review-grid {
     /* display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: calc(24 * var(--vw)); */
}

.review {
     background: rgba(255, 255, 255, .55);
     padding: calc(34 * var(--vw));
     border-radius: calc(28 * var(--vw));
     font-size: calc(17 * var(--vw));
     margin: 0 calc(12 * var(--vw));
     height: 100%;
}

/* Equal-height slick slides for the testimonial slider */
.testimonial_slider .slick-track {
     display: flex !important;
}

.testimonial_slider .slick-slide {
     height: auto;
}

/* .testimonial_slider .slick-slide > div {
     height: 100%;
} */

.stars {
     color: var(--gold);
     letter-spacing: calc(3 * var(--vw));
     margin-bottom: calc(16 * var(--vw))
}

.cta {
     min-height: calc(480 * var(--vw));
     text-align: center;
     display: flex;
     align-items: center;
     justify-content: center;
     /* background:
        linear-gradient(rgba(8, 24, 18, .75), rgba(8, 24, 18, .78)),
        url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=2000&q=85') center/cover; */
     color: white;
}

.cta h2 {
     font-size: calc(62 * var(--vw));
     margin-bottom: calc(20 * var(--vw));
     color: white;
}

.cta p {
     max-width: calc(650 * var(--vw));
     margin: 0 auto calc(30 * var(--vw));
     color: #EEE2D0;
     font-size: calc(17 * var(--vw))
}

footer {
     background: #0F251B;
     color: #EDE0CF;
     padding: calc(70 * var(--vw)) 7vw calc(35 * var(--vw));
}

.footer-grid {
     display: grid;
     grid-template-columns: 2fr 1fr 1fr;
     gap: calc(50 * var(--vw));
}

.footer-grid .footer_text {
     color: #EDE0CF;
}

.footer-grid p {
     color: white;
}

footer h3 {
     font-size: calc(30 * var(--vw));
     color: white;
     margin-bottom: calc(16 * var(--vw))
}

footer a {
     display: block;
     margin: calc(8 * var(--vw)) 0;
     color: #EDE0CF
}

footer a.active {
     color: #fff;
}

.footer-bottom {
     margin-top: calc(42 * var(--vw));
     padding-top: calc(22 * var(--vw));
     border-top: calc(1 * var(--vw)) solid rgba(255, 255, 255, .12);
     font-size: calc(13 * var(--vw));
     color: #CBBDAA;
     width: 100%;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: calc(16 * var(--vw));
     flex-wrap: nowrap;
}

.footer-credit {
     font-size: calc(13 * var(--vw));
     color: #CBBDAA;
     margin: 0;
     white-space: nowrap;
     display: flex;
     align-items: center;
}

.footer-credit a {
     color: var(--gold-soft);
}

.footer-credit .fw7 {
     font-weight: 700;
}

.whatsapp {
     position: fixed;
     right: calc(36 * var(--vw));
     bottom: calc(36 * var(--vw));
     z-index: 80;
     display: flex;
     align-items: center;
     justify-content: center;
     width: calc(48 * var(--vw));
     height: calc(48 * var(--vw));
     border-radius: calc(999 * var(--vw));
     box-shadow: 0 calc(18 * var(--vw)) calc(40 * var(--vw)) rgba(0, 0, 0, .25);
}

.whatsapp img {
     width: 100%;
     height: 100%;
     object-fit: contain;
     display: block;
}

.social-wrap {
     display: flex;
}

.social-wrap a {
     margin-right: calc(28 * var(--vw));
}

.social-wrap img {
     width: calc(22 * var(--vw));
     height: auto;
}


.--common-para {
     font-size: calc(17 * var(--vw));
     line-height: 1.7;
}

.--common-para p {
     font-size: calc(17 * var(--vw));
     line-height: 1.7;
}

@media(max-width:900px) {
     .--common-para {
          font-size: 16px;
     }

     .--common-para p {
          font-size: 16px;
     }

     .review-section .review-para {
          height: 165px;
          overflow: scroll;
          min-height: auto;
     }

     .review {
          margin: 0 8px;
     }

     .lead {
          font-size: 16px;
     }

     .logo--image img {
          height: 70px;
          /* max-width: 160px; */
     }

     .footer-bottom {
          flex-direction: column;
          align-items: flex-start;
          gap: 8px;
          font-size: 13px;
          /* keep the credit clear of the floating WhatsApp button */
          padding-bottom: 0;
     }

     .footer-credit {
          font-size: 13px;
     }

     .whatsapp {
          right: 25px;
          bottom: 115px;
          width: 42px;
          height: 42px;
          box-shadow: 0 8px 20px rgba(0, 0, 0, .25);
     }

     .nav {
          padding: 0 24px;
          height: 90px
     }

     .menu {
          display: none
     }


     .mobile-menu-btn {
          display: flex;
     }

     /* Mobile menu overlay (WordPress "Mobile Menu" location) */

     .mobile-menu {
          display: block;
          position: fixed;
          top: 0;
          left: 0;
          width: 100%;
          height: 100vh;
          padding: 90px 24px 26px;
          background: rgba(19, 46, 35, .98);
          color: #fff;
          transform: translateY(-120%);
          opacity: 0;
          visibility: hidden;
          transition: .35s ease;
          z-index: 90;
          overflow-y: auto;
     }

     .mobile-menu.is-open {
          transform: translateY(0);
          opacity: 1;
          visibility: visible;
     }

     .mobile-menu__list {
          list-style: none;
          margin: 0;
          padding: 0;
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          padding-top: 72px;
     }

     .mobile-menu__list li {
          width: 100%;
     }

     .mobile-menu a {
          display: block;
          width: 100%;
          padding: 14px 0;
          border-bottom: 1px solid rgba(255, 255, 255, .12);
          /* font-size: 15px; */
          color: #fff;
          font-size: 22px;
     }

     .mobile-menu__cta.nav-cta {
          display: none !important;
     }

     .mobile-menu__list li:last-child a {
          border-bottom: none;
     }

     .mobile-menu .current-menu-item>a,
     .mobile-menu .current_page_item>a {
          color: var(--gold-soft);
     }

     .mobile-menu__cta {
          display: inline-block;
          width: auto;
          margin-top: 18px;
          padding: 12px 20px;
          border: 1px solid rgba(255, 255, 255, .65);
          border-radius: 999px;
     }

     /* End mobile menu overlay */

     .hero {
          padding: 130px 24px 70px
     }

     .hero h1 {
          font-size: 50px
     }

     section {
          padding: 78px 24px
     }

     .award-strip,
     .split,
     .card-grid,
     .rooms-grid,
     .experience-grid,
     /* .review-grid, */
     .footer-grid {
          grid-template-columns: 1fr;
     }





     .award {
          border-right: none;
          border-bottom: 1px solid rgba(19, 46, 35, .12)
     }

     .award:last-child {
          border-bottom: none
     }

     .image-lux {
          min-height: 390px
     }

     .text-block h2,
     .center h2 {
          font-size: 40px
     }

     .included {
          grid-template-columns: 1fr 1fr
     }

     .cta h2 {
          font-size: 42px
     }
}

@media(max-width:600px) {
     .review {
          margin: 0;
     }

     .cta p {
          font-size: 16px;
     }

     .included {
          grid-template-columns: 1fr
     }
}

@media(max-width:390px) {
     .mobile-menu__list {
          padding-top: 36px;
     }
     .mobile-menu a { 
          font-size: 15px;
     }
}

.quick-links-wrap {
     display: flex;
}

.quick-links-wrap .quick-links {
     width: 50%;
}



footer {
     padding: calc(70 * var(--vw)) 7vw calc(35 * var(--vw));
     background: #0F251B;
     color: white;
     /* font-family: Arial, sans-serif; */
}

footer p {
     color: rgba(255, 255, 255, 0.75);
     font-size: calc(14 * var(--vw));
}

/* ===================================================== */
/* Mobile: every paragraph shares one identical style    */
/* (overrides per-page / card / hero / caption sizes).   */
/* 991px matches where --vw switches to 1px.             */
/* ===================================================== */
@media (max-width: 991px) {
     p {
          font-size: 16px !important;
          font-weight: 400 !important;
          font-family: 'Inter', sans-serif !important;
          line-height: 1.7 !important;
     }
}