@media (max-width: 1199.98px) {
  .story-hero { min-height: 460px; }
  .story-glimpse { right: 1.5rem; bottom: 2rem; }
    .value-left { padding-right: 1.5rem; }
  .value-img-wrap { min-height: 420px; }
}


@media (max-width: 991.98px) {
  .nav-links, .d-lg-book { display: none !important; }
  .nav-toggler { display: flex; }
  .sarai-nav { padding: 0 1.25rem; }

  .swiper-button-prev,
  .swiper-button-next { display: none !important; }

  .int-swiper { height: 400px; }
  .int-content-box {
    right: 4%;
    width: 360px;
    padding: 2rem 1.75rem;
  }
  .managed-brands-wrapper .brand-card {
    flex-direction: column;
    height: auto;
  }

  .managed-brands-wrapper .brand-image {
    width: 100%;
    height: 250px;
  }

  .managed-brands-wrapper .brand-content {
    width: 100%;
  }

  .managed-brands-wrapper .thumbnails img {
    width: 60px;
    height: 45px;
  }

  .managed-brands-wrapper .nav-arrow {
    width: 35px;
    height: 35px;
  }

   .experience-wrapper .image-top img,
  .experience-wrapper .image-bottom img {
    height: 200px;
  }

  .booking-card { max-width: 100%; }
  .booking-section { min-height: auto; }
  .booking-bg { position: relative; height: 260px; object-fit: cover; }
  .booking-wrapper { padding: 0; }

  :root { --nav-h: 64px; }

  .story-hero {
    height: 100svh;
    height: 100vh;
    min-height: 420px;
    padding-bottom: 2rem;
  }
  .story-hero-title {
    font-size: clamp(1.5rem, 5vw, 2.6rem);
    max-width: 560px;
  }
  .story-eyebrow { font-size: .55rem; }
  .story-glimpse {
    right: 1rem;
    bottom: 1.75rem;
    max-width: 180px;
  }
  .glimpse-grid { width: 48px; height: 38px; }
  .glimpse-text { font-size: .55rem; }

  .about-section { padding: 3.5rem 0 0; }
  .about-image-wrap img { height: 360px; }
  .unique-section { padding: 3.5rem 0 4rem; }
  .unique-heading { margin-bottom: 2.25rem; }
  .faq-section { padding: 3.5rem 0 4rem; }
  .faq-contact-card { min-height: auto; padding: 1.75rem 1.5rem; }
  .faq-scroll-panel { height: 280px; }
  .faq-heading { margin-bottom: 2.25rem; }

   .grow-glass {
    padding: 2.5rem 2.5rem 2.25rem;
    max-width: 640px;
  }
  .partner-section { padding: 3rem 0 3.5rem; }
  .partner-card { padding: 1.75rem 1.4rem; gap: .85rem; }
  .partner-icon { width: 50px; height: 50px; }
  .partner-icon svg { width: 22px; height: 22px; }

  .value-section { padding: 3.5rem 0 4rem; }
  .value-left { padding-right: 1rem; }
  .value-img-wrap { min-height: 360px; }
  .value-card { padding: .9rem 1rem; gap: .85rem; }
  .value-card-icon { width: 46px; height: 46px; }
  .value-card-icon svg { width: 20px; height: 20px; }

   .steps-section { padding: 3.5rem 0 4rem; }
  .step-circle { width: 78px; height: 78px; }
  .step-icon-wrap { width: 78px; height: 78px; }
  .step-circle svg { width: 30px; height: 30px; }
  .step-number { width: 23px; height: 23px; font-size: .5rem; }
  .steps-track::before { top: 39px; }
  .step-title { font-size: .95rem; }
  .step-desc { font-size: .6rem; max-width: 160px; }
  .step-item { padding: 0 .4rem; }

   .glr-grid { grid-template-rows: repeat(4, 150px); }
  .glr-grid.glr-expanded { grid-template-rows: repeat(8, 150px); }
  .glr-tab { font-size: 12px; padding: 10px 16px; }

}

@media (max-width: 768px) {

  .association-wrapper .logo-box {
    height: 100px;
    margin-bottom: 15px;
  }

  .association-wrapper .border-line::before,
  .association-wrapper .border-line::after {
    display: none;
  }
}


@media (max-width: 767.98px) {
  .footer-top { padding: 2.5rem 0 2rem; }
  .footer-brand-col { text-align: center; }
  .footer-brand-col .social-icons { justify-content: center; }
  .footer-watermark { font-size: clamp(3rem, 18vw, 5rem); bottom: 30px; }
  .int-swiper { height: 520px; }
  .int-content-box {
    position: absolute;
    bottom: 0;
    top: auto;
    right: 0;
    left: 0;
    transform: none;
    width: 100%;
    max-width: 100%;
    padding: 1.75rem 1.25rem;
    border-radius: 0;
  }
  .int-swiper .swiper-button-prev { left: .6rem; top: 38%; }
  .int-swiper .swiper-button-next { right: .6rem; top: 38%; }
  .booking-section {
    flex-direction: column;
    min-height: auto;
  }
  .booking-card {
    padding: 1.75rem 1.25rem 1.5rem;
  }
  .booking-row,
  .booking-row-last {
    grid-template-columns: 1fr;
    gap: .7rem;
  }
  :root { --nav-h: 60px; }

  .story-hero {
    height: 100svh;
    height: 100vh;
    min-height: 380px;
    padding-bottom: 1.75rem;
    align-items: flex-end;
  }

  .story-hero-overlay {
    background: linear-gradient(
      to top,
      rgba(8, 20, 16, 0.85) 0%,
      rgba(8, 20, 16, 0.45) 50%,
      rgba(8, 20, 16, 0.10) 100%
    );
  }

  .story-hero-content .container-lg {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .story-eyebrow {
    font-size: .52rem;
    letter-spacing: .18em;
    margin-bottom: .5rem;
  }
  .story-eyebrow::after { width: 36px; }

  .story-hero-title {
    font-size: clamp(1.4rem, 6vw, 2rem);
    letter-spacing: .05em;
    max-width: 100%;
  }

  .story-glimpse {
    bottom: 1.25rem;
    right: .75rem;
    max-width: 155px;
    gap: .55rem;
    padding: .42rem .6rem .42rem .42rem;
  }
  .glimpse-grid {
    width: 42px;
    height: 32px;
    gap: 1.5px;
  }
  .glimpse-text { font-size: .5rem; letter-spacing: .04em; }
  .about-section { padding: 3rem 0 0; }
  .about-desc { font-size: .68rem; padding: 0 .5rem; }
  .about-image-wrap img { height: 280px; }
  .unique-section { padding: 3rem 0 3.5rem; }
  .unique-heading { font-size: clamp(1.6rem, 6vw, 2.2rem); margin-bottom: 2rem; }
  .unique-card { padding: 1.5rem 1.25rem 1.75rem; }

   .faq-section { padding: 3rem 0 3.5rem; }
  .faq-contact-card { margin-bottom: 1.5rem; min-height: auto; }
  .faq-scroll-panel { height: 260px; }
  .faq-heading { font-size: clamp(1.5rem, 6vw, 2.2rem); }
  .faq-question-text { font-size: .7rem; }
  .faq-answer-inner { font-size: .65rem; }

   .grow-section { min-height: 600px; }
  .grow-glass {
    padding: 2rem 1.75rem 2rem;
    margin: 2rem 1rem;
    max-width: 100%;
  }
  .grow-title { font-size: clamp(1.4rem, 5vw, 2.2rem); }
  .grow-desc { font-size: .65rem; }
  .grow-cta { flex-direction: column; gap: .75rem; }
  .btn-grow-primary,
  .btn-grow-outline { width: 100%; justify-content: center; }
  .partner-card-wrap {
    flex-direction: column;
  }
  .partner-card + .partner-card::before {
    top: 0; bottom: auto;
    left: 1.5rem; right: 1.5rem;
    width: auto; height: 1px;
  }
  .partner-card { padding: 1.5rem 1.25rem; }
  .partner-heading { font-size: clamp(1.5rem, 6vw, 2.2rem); margin-bottom: 1.75rem; }
  .partner-scroll-up { top: .75rem; right: .75rem; }
  .value-section { padding: 3rem 0 3.5rem; }
  .value-left { padding-right: 0; margin-bottom: 2.25rem; }
  .value-heading { font-size: clamp(1.6rem, 6vw, 2.4rem); }
  .value-desc { max-width: 100%; }
  .value-img-wrap { min-height: 280px; }

  .steps-section { padding: 3rem 0 3.5rem; }
  .steps-heading { font-size: clamp(1.5rem, 6vw, 2.2rem); margin-bottom: 2.5rem; }

  .steps-track {
    flex-direction: column;
    align-items: center;
    gap: 2rem;
  }
  .steps-track::before {
    top: 46px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: 1.5px;
    height: calc(100% - 92px);
  }
  .step-item { width: 100%; max-width: 320px; padding: 0; }
  .step-desc { max-width: 100%; }

   .enquiry-img-wrap { display: none; }
  .enquiry-form-wrap { padding: 24px 20px; }
  .enquiry-form-wrap .eq-grid-2 { grid-template-columns: 1fr; }
  .enquiry-form-wrap {margin: 0;}

  .glr-section { padding: 40px 0 50px; }
  .glr-grid { grid-template-rows: repeat(4, 130px); gap: 5px; }
  .glr-grid.glr-expanded { grid-template-rows: repeat(8, 130px); }
  .glr-tab { font-size: 11.5px; padding: 8px 12px; }
  .glr-title { font-size: 20px; }
  .glr-caption-text { font-size: 12px; }


}


@media (max-width:676px) {
  :root { --nav-h: 60px; }
 
  .hero-content {
    padding-top: calc(var(--nav-h) + 2rem);
    padding-bottom: 5rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .hero-eyebrow { font-size: .55rem; letter-spacing: .22em; margin-bottom: .7rem; }
  .hero-title   { margin-bottom: 1.4rem; }

  .btn-explore  { font-size: .55rem; padding: .78rem 1.4rem; }

  .swiper-pagination { bottom: 1.2rem !important; }
  .scroll-top { right: 1rem; bottom: 1rem; width: 34px; height: 34px; }

  .swiper-pagination-bullet { width: 20px !important; }
  .swiper-pagination-bullet-active { width: 32px !important; }
  .footer-logo { font-size: 2.2rem; }
   .sarai-logo img {
    max-height: 100px;
  }

  .int-swiper { height: 560px; }
  .int-title { font-size: 1.5rem; }
  .int-desc  { font-size: .67rem; margin-bottom: 1.1rem; }
  .int-content-box { padding: 1.5rem 1rem; }

   .booking-card { padding: 1.5rem 1rem; }
  .booking-label { font-size: .6rem; }
  .booking-select-wrap select { font-size: .6rem; padding: .7rem 2.2rem .7rem .85rem; }

  :root { --nav-h: 58px; }

  .story-hero {
    height: 100svh;
    height: 100vh;
    min-height: 320px;
    padding-bottom: 1.5rem;
  }

  .story-hero-title {
    font-size: clamp(1.2rem, 7vw, 1.7rem);
    letter-spacing: .04em;
    line-height: 1.08;
  }

  .story-eyebrow {
    font-size: .5rem;
    gap: .5rem;
    margin-bottom: .45rem;
  }
  .story-eyebrow::after { width: 28px; }

  .story-glimpse {
    bottom: 1rem;
    right: .5rem;
    max-width: 140px;
    gap: .45rem;
    padding: .38rem .5rem .38rem .38rem;
  }
  .glimpse-grid {
    width: 36px;
    height: 28px;
    gap: 1px;
  }
  .glimpse-text { font-size: .46rem; }

  .about-section { padding: 2.5rem 0 0; }
  .about-title { font-size: clamp(1.5rem, 7vw, 2rem); }
  .about-title-green { font-size: clamp(1.5rem, 7vw, 2rem); margin-bottom: 1.1rem; }
  .about-desc { font-size: .65rem; margin-bottom: 2rem; }
  .about-image-wrap img { height: 220px; object-position: center center; }
  .unique-section { padding: 2.5rem 0 3rem; }
  .unique-heading { font-size: clamp(1.4rem, 7vw, 1.9rem); }
  .unique-icon-wrap { width: 48px; height: 48px; }
  .unique-icon-wrap svg { width: 22px; height: 22px; }
  .unique-card-title { font-size: .78rem; }
  .unique-card-desc { font-size: .65rem; }

  .faq-section { padding: 2.5rem 0 3rem; }
  .faq-heading { font-size: clamp(1.3rem, 7vw, 1.8rem); margin-bottom: 1.75rem; }
  .faq-contact-title { font-size: 1.3rem; }
  .faq-contact-desc { font-size: .64rem; }
  .btn-faq-share { font-size: .55rem; padding: .7rem 1.1rem; }
  .faq-scroll-panel { height: 240px; }
  .faq-question { padding: .9rem 0; }
  .faq-question-text { font-size: .66rem; }

  .grow-section { min-height: 280px; }
  .grow-glass {
    padding: 1.75rem 1.25rem 1.75rem;
    margin: 1.5rem .75rem;
  }
  .grow-title { font-size: clamp(1.2rem, 6vw, 1.8rem); }
  .grow-desc { font-size: .62rem; margin-bottom: 1.4rem; }
  .btn-grow-primary,
  .btn-grow-outline { font-size: .57rem; padding: .75rem 1.2rem; }
  .partner-section { padding: 2.5rem 0 3rem; }
  .partner-heading { font-size: clamp(1.3rem, 7vw, 1.8rem); }
  .partner-icon { width: 46px; height: 46px; }
  .partner-icon svg { width: 20px; height: 20px; }
  .partner-card-title { font-size: .73rem; }
  .partner-card-desc { font-size: .62rem; }
  .value-section { padding: 2.5rem 0 3rem; }
  .value-heading { font-size: clamp(1.4rem, 7vw, 1.9rem); }
  .value-desc { font-size: .64rem; }
  .value-card-title { font-size: .7rem; }
  .value-card-desc { font-size: .6rem; }
  .value-img-wrap { min-height: 220px; }
  .btn-value-primary { font-size: .57rem; padding: .75rem 1.2rem; }

  .steps-heading { font-size: clamp(1.3rem, 7vw, 1.8rem); }
  .step-circle { width: 72px; height: 72px; }
  .step-icon-wrap { width: 72px; height: 72px; }
  .step-circle svg { width: 28px; height: 28px; }
  .steps-track::before { top: 36px; }

  .glr-grid { grid-template-rows: repeat(4, 110px); gap: 4px; }
  .glr-grid.glr-expanded { grid-template-rows: repeat(8, 110px); }
  .glr-tabs { border-bottom: none !important; flex-wrap: wrap; }
  .glr-tab {
    font-size: 11px; padding: 7px 10px;
    border: 1px solid #ddd !important;
    border-radius: 999px !important;
    margin: 4px;
  }
  .glr-tab.active {
    background: #1a4f49 !important;
    color: #fff !important;
    border-color: #1a4f49 !important;
    border-bottom: 1px solid #1a4f49 !important;
  }

}

@media (max-height: 500px) and (orientation: landscape) {
  .hero-swiper { height: 100vw; min-height: 400px; }
  .hero-title  { font-size: clamp(1.4rem, 4vw, 2.4rem); margin-bottom: 1rem; }
  .hero-content { padding-top: calc(var(--nav-h) + .75rem); padding-bottom: 3rem; }
  .story-hero {
    height: auto;
    min-height: 100vw;
    padding-top: calc(var(--nav-h) + 1rem);
    padding-bottom: 1.5rem;
    align-items: flex-end;
  }
  .story-hero-title {
    font-size: clamp(1.1rem, 4vw, 1.8rem);
  }
  .story-glimpse {
    bottom: 1rem;
    right: 1rem;
  }
}

@media (max-width: 480px) {
  .glr-grid { grid-template-rows: repeat(4, 90px); gap: 4px; }
  .glr-grid.glr-expanded { grid-template-rows: repeat(8, 90px); }
  .glr-title { font-size: 17px; letter-spacing: 1px; }
  .glr-caption-text { font-size: 10px; }
  .glr-overlay { padding: 10px 12px; }
}

@media (max-width: 375px) {
  .story-hero-title { font-size: 1.2rem; }
  .story-glimpse { display: none; } 
}

@media (max-width: 360px) {
  .glr-grid { grid-template-rows: repeat(4, 80px); }
  .glr-grid.glr-expanded { grid-template-rows: repeat(8, 80px); }
}

