﻿/* ─── NAV HAMBURGER  (≤ 1190px) ────────────────────── */
@media (max-width: 1190px) {
  body {
    #site-header {
      .site-nav {
        .nav-links {
          display: none;
        }
        .nav-hamburger {
          display: flex;
        }
      }
    }
  }
}

/* ─── LARGE TABLET  (≤ 1024px) ─────────────────────── */
@media (max-width: 1024px) {
  body {
    #section-hero {
      .hero-card-grid,
      .hero-card {
        display: none !important;
      }
    }

    .fluid {
      padding: 0 28px;
    }

    #section-destinations {
      .dest-grid {
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: none;
        grid-auto-rows: 210px;

        .dest-card:first-child {
          grid-row: span 1;
        }
      }
    }

    #section-how {
      .how-steps {
        &::before {
          display: none;
        }
        .how-step {
          padding: 0 20px;
        }
      }
    }

    #section-itinerary {
      .itin-includes {
        grid-template-columns: repeat(1, 1fr);
      }
      .itin-inc-card {
        height: 260px;
      }
    }

    #section-tripadvisor {
      .ta-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    #section-blog {
      .blog-grid {
        grid-template-columns: repeat(1, 1fr);

        .blog-main {
          grid-row: auto;
        }
        .blog-side {
          grid-template-columns: repeat(1, 1fr);
        }
      }
    }
  }
}

/* ─── ITINERARY INCLUDES ROW  (≤ 1000px) ───────────── */
@media (max-width: 1000px) {
  body {
    #section-itinerary {
      .itin-right {
        .itin-includes {
          grid-template-columns: repeat(1, 1fr);
          grid-template-rows: auto;
        }
      }
    }
  }
}

/* ─── ITINERARY SINGLE COL  (≤ 580px) ──────────────── */
@media (max-width: 580px) {
  body {
    #section-itinerary {
      .itinerary-wrap {
        .itin-right {
          .itin-includes {
            grid-template-columns: repeat(1, 1fr);
          }
        }
      }
    }
  }
}

/* ─── TABLET  (≤ 768px) ───────────────────────────── */
@media (max-width: 768px) {
  body {
    .section {
      padding: 64px 0;
    }
    .fluid {
      padding: 0 24px;
    }

    .sec-h {
      font-size: 28px;
    }
    .sec-sub {
      font-size: 14px;
    }
    .sec-head {
      margin-bottom: 36px;
    }
    .sec-head-row {
      flex-direction: column;
      gap: 12px;
      align-items: flex-start;
      margin-bottom: 36px;
    }
    .see-all {
      align-self: flex-start;
    }

    /* ── Header ───────────────────────────────────── */
    #site-header {
      .site-nav {
        padding: 0 20px;
      }
    }

    /* ── Hero ─────────────────────────────────────── */
    #section-hero {
      min-height: 100vh;
      padding: 40px 20px;

      .hero-inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        width: min(100%, 1040px);
        margin: 0 auto;

        & h1 {
          font-size: 40px;
          letter-spacing: -0.4px;
          line-height: 1.1;
        }
        & p {
          font-size: 16px;
          margin-bottom: 28px;
        }
      }

      .hero-card-grid,
      .hero-card {
        display: none !important;
      }

      .hero-tags {
        justify-content: center;
      }

      .hero-search-bar {
        /* flex-direction: column; */
        gap: 0;
        max-width: 100%;
        margin-bottom: 16px;

        .hsb-group {
          border-right: none !important;
          border-bottom: 0.5px solid rgba(255, 255, 255, 0.1);
          padding: 12px 16px;

          &:last-of-type {
            border-bottom: none;
          }
        }

        & button {
          width: 100%;
          padding: 12px;
        }
      }

      .hero-tags {
        margin-bottom: 28px;
      }

      .hero-stats-row {
        flex-direction: row;
        gap: 0;
        border-top: none;
        padding-top: 0;
        margin-top: 0;
        justify-content: space-between;

        .hs {
          padding: 0 12px;

          & strong {
            font-size: 20px;
          }
          & span {
            font-size: 10px;
          }
        }
      }
    }

    /* ── Activities ───────────────────────────────── */
    #section-activities {
      .act-grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 10px;
      }
    }

    /* ── Destinations ─────────────────────────────── */
    #section-destinations {
      .dest-grid {
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: none;
        grid-auto-rows: 200px;

        .dest-card:first-child {
          grid-row: span 1;
        }
      }
    }

    /* ── Tours ────────────────────────────────────── */
    #section-tours {
      .tour-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 14px;
      }
      .tour-img {
        height: 160px;
      }
    }

    /* ── How it works ─────────────────────────────── */
    #section-how {
      .how-steps {
        grid-template-columns: repeat(1, 1fr);
        gap: 32px;

        &::before {
          display: none;
        }
        .how-step {
          padding: 0 24px;
          text-align: left;
          display: flex;
          gap: 20px;
          align-items: flex-start;
        }
        .how-num {
          flex-shrink: 0;
          margin: 0;
        }
        .how-icon {
          display: none;
        }
      }

      .how-cta {
        padding: 32px 24px;

        .how-cta-btns {
          flex-direction: column;
          align-items: stretch;
        }
      }
    }

    /* ── Why choose us ────────────────────────────── */
    #section-why {
      .why-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Testimonials ─────────────────────────────── */
    #section-testimonials {
      .testi-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Itinerary ────────────────────────────────── */
    #section-itinerary {
      .itinerary-wrap {
        grid-template-columns: repeat(1, 1fr);
        gap: 24px;
      }

      .itin-includes {
        grid-template-columns: repeat(1, 1fr);
      }
      .itin-inc-card {
        height: 250px;
      }
    }

    /* ── Google Reviews ───────────────────────────── */
    #section-reviews {
      .g-header {
        flex-wrap: wrap;
        gap: 12px;

        .g-badge {
          margin-left: 0;
        }
      }

      .g-reviews {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Travel Essentials ────────────────────────── */
    #section-essentials {
      .ess-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Awards ───────────────────────────────────── */
    #section-awards {
      .awards-row {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        border-radius: 16px;
      }

      .award-item {
        border-right: none;
        border-bottom: 1px solid rgba(26, 107, 82, 0.08);

        &:last-child {
          border-bottom: none;
        }
      }
    }

    /* ── Instagram ────────────────────────────────── */
    #section-instagram {
      .ig-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── TripAdvisor ──────────────────────────────── */
    #section-tripadvisor {
      .ta-header {
        flex-direction: column;
        align-items: flex-start;

        .ta-score-wrap {
          width: 100%;
          justify-content: flex-start;
        }
      }

      .ta-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Blog ─────────────────────────────────────── */
    #section-blog {
      .blog-grid {
        grid-template-columns: repeat(1, 1fr);
      }
      .blog-main {
        grid-row: auto;
      }
      .blog-side {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Newsletter ───────────────────────────────── */
    #section-newsletter {
      padding: 64px 24px;

      & h2 {
        font-size: 30px;
      }
    }

    /* ── Footer ───────────────────────────────────── */
    #site-footer {
      padding: 48px 24px 20px;

      .footer-top {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
      }
    }
  }
}

/* ─── MOBILE  (≤ 480px) ───────────────────────────── */
@media (max-width: 480px) {
  body {
    .section {
      padding: 48px 0;
    }
    .fluid {
      padding: 0 16px;
    }

    .sec-h {
      font-size: 22px;
      letter-spacing: -0.3px;
    }
    .sec-sub {
      font-size: 13px;
    }
    .sec-head {
      margin-bottom: 28px;
    }
    .sec-head-row {
      margin-bottom: 28px;
    }

    /* ── Header ───────────────────────────────────── */
    #site-header {
      .site-nav {
        padding: 0 16px;
        height: 56px;

        .nav-logo {
          font-size: 15px;
        }
      }

      .mobile-menu {
        padding: 80px 20px 36px;
      }
    }

    /* ── Hero ─────────────────────────────────────── */
    #section-hero {
      min-height: 100vh;
      padding: 30px 16px;

      .hero-eyebrow {
        font-size: 11px;
        padding: 6px 12px;
      }

      .hero-inner {
        & h1 {
          font-size: 30px;
          margin-bottom: 14px;
          line-height: 1.1;
        }
        & p {
          font-size: 14px;
          margin-bottom: 18px;
        }
      }

      .hero-card-grid,
      .hero-card {
        display: none !important;
      }

      .hero-tags {
        gap: 6px;
        margin-bottom: 20px;

        .hero-tag {
          font-size: 11px;
          padding: 5px 10px;
        }
      }

      .hero-stats-row .hs & strong {
        font-size: 26px;
      }
    }

    /* ── Destinations ─────────────────────────────── */
    #section-destinations {
      .dest-grid {
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: none;
        grid-auto-rows: 180px;

        .dest-card:first-child {
          grid-row: span 1;
        }
      }
    }

    /* ── Tours ────────────────────────────────────── */
    #section-tours {
      .tour-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 12px;
      }
      .tour-img {
        height: 150px;
      }
      .tour-price {
        align-items: flex-start;
        flex-wrap: wrap;
      }
      .tour-stars {
        width: max-content;
      }
    }

    /* ── How it works ─────────────────────────────── */
    #section-how {
      .how-steps {
        gap: 20px;

        .how-step {
          padding: 0 16px;
          gap: 14px;
          display:flex;
          flex-direction: column;
        }
      }

      .how-cta {
        padding: 24px 16px;
      }
    }

    /* ── Why choose us ────────────────────────────── */
    #section-why {
      .why-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Testimonials ─────────────────────────────── */
    #section-testimonials {
      .testi-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Itinerary ────────────────────────────────── */
    #section-itinerary {
      .itin-img {
        height: 220px;
      }
      .itin-includes {
        grid-template-columns: repeat(1, 1fr);
      }
      .itin-inc-card {
        height: 220px;
      }
    }

    /* ── Google Reviews ───────────────────────────── */
    #section-reviews {
      .g-header {
        padding: 16px 18px;

        .g-score {
          font-size: 32px;
        }
      }

      .g-reviews {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Travel Essentials ────────────────────────── */
    #section-essentials {
      .ess-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Awards ───────────────────────────────────── */
    #section-awards {
      .awards-row {
        display: flex;
        flex-direction: column;
      }

      .award-item {
        border-right: none !important;
        border-bottom: 1px solid rgba(26, 107, 82, 0.08);
        padding: 20px 16px;

        &:last-child {
          border-bottom: none;
        }
      }
    }

    /* ── Instagram ────────────────────────────────── */
    #section-instagram {
      .ig-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── TripAdvisor ──────────────────────────────── */
    #section-tripadvisor {
      .ta-header {
        padding: 20px 18px;

        .ta-score-wrap {
          gap: 16px;
        }
        .ta-brand-name {
          font-size: 16px;
        }
      }

      .ta-grid {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Blog ─────────────────────────────────────── */
    #section-blog {
      .blog-grid {
        grid-template-columns: repeat(1, 1fr);
      }
      .blog-main {
        grid-row: auto;
      }
      .blog-side {
        grid-template-columns: repeat(1, 1fr);
      }
    }

    /* ── Newsletter ───────────────────────────────── */
    #section-newsletter {
      padding: 48px 16px;

      & h2 {
        font-size: 24px;
      }

      .nl-form {
        flex-direction: column;

        & button {
          width: 100%;
        }
      }
    }

    /* ── Footer ───────────────────────────────────── */
    #site-footer {
      padding: 40px 16px 16px;

      .footer-top {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
      }
      .footer-bottom {
        flex-direction: column;
        gap: 12px;
        text-align: center;
      }
    }
  }
}

/* ─── DESTINATIONS PAGE  (≤ 1100px) ─────────────────── */
@media (max-width: 1100px) {
  body {
    .dest-page-grid { grid-template-columns: repeat(2, 1fr); }
    .dest-card.dest-card-xl { grid-column: span 2; }
    .dest-card.dest-card-wide { grid-column: span 2; }
  }
}

/* ─── DESTINATIONS PAGE  (≤ 900px) ──────────────────── */
@media (max-width: 900px) {
  body {
    #dest-hero h1 { font-size: 40px; }
    #section-best-time .best-time-grid { grid-template-columns: repeat(2, 1fr); }
    #section-dest-cta .dest-cta-inner { grid-template-columns: 1fr; }
    #section-dest-cta .dest-cta-btns { flex-direction: row; min-width: unset; }
  }
}

/* ─── DESTINATIONS PAGE  (≤ 640px) ──────────────────── */
@media (max-width: 640px) {
  body {
    .dest-page-grid { grid-template-columns: 1fr; grid-auto-rows: 300px; padding: 0 16px; }

    .dest-card.dest-card-xl,
    .dest-card.dest-card-wide { grid-column: span 1; grid-row: span 1; }

    .dest-card.dest-card-xl .dest-card-name { font-size: 30px; }
    .dest-card.dest-card-wide .dest-card-name { font-size: 26px; }
  }
}

/* ─── DESTINATIONS PAGE  (≤ 600px) ──────────────────── */
@media (max-width: 600px) {
  body {
    #dest-hero h1 { font-size: 32px; }
    #dest-hero .dest-hero-inner { padding: 0 20px 60px; }
    #section-best-time .best-time-grid { grid-template-columns: 1fr; padding: 0 20px; margin-top: 32px; }
    #section-dest-cta .dest-cta-inner { padding: 0 20px; }
    #section-dest-cta .dest-cta-btns { flex-direction: column; }
  }
}

/* ─── TOURS PAGE  (≤ 1024px) ────────────────────────── */
@media (max-width: 1024px) {
  body {
    #section-tours .tours-layout { grid-template-columns: 180px 1fr; gap: 24px; }
  }
}

/* ─── TOURS PAGE  (≤ 900px) ─────────────────────────── */
@media (max-width: 900px) {
  body {
    #tours-hero h1 { font-size: 40px; }

    #section-tours {
      .tours-layout { grid-template-columns: 1fr; gap: 0; }

      #tours-filter-nav {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
        border-radius: 12px;
        margin-bottom: 28px;
        gap: 4px;
      }

      .filter-sidebar-label { display: none; }
      .filter-btn { width: auto; padding: 8px 14px; font-size: 12.5px; }
    }

    .tours-why-grid { grid-template-columns: repeat(2, 1fr); }
    .custom-tour-inner { grid-template-columns: 1fr; }
    .custom-tour-btns { flex-direction: row; min-width: unset; }
  }
}

/* ─── TOURS PAGE  (≤ 600px) ─────────────────────────── */
@media (max-width: 600px) {
  body {
    #tours-hero h1 { font-size: 32px; }
    #tours-hero .tours-hero-inner { padding: 0 20px 60px; }
    #section-tours .tours-layout { padding: 0 20px; }
    .tours-why-grid { grid-template-columns: 1fr; }
    .custom-tour-btns { flex-direction: column; }
  }
}

/* ─── TOUR DETAIL PAGE  (≤ 1100px) ─────────────────── */
@media (max-width: 1100px) {
  body {
    #section-tour-detail .detail-layout { grid-template-columns: 1fr 320px; gap: 32px; }
  }
}

/* ─── TOUR DETAIL PAGE  (≤ 900px) ──────────────────── */
@media (max-width: 900px) {
  body {
    #section-tour-detail .detail-layout { grid-template-columns: 1fr; }
    .tour-sidebar { position: static; }
    .tour-stats-bar { grid-template-columns: repeat(2, 1fr); }
    .highlight-list { grid-template-columns: 1fr; }
    .incl-grid { grid-template-columns: 1fr; }
    #section-related-tours .related-grid { grid-template-columns: repeat(2, 1fr); }
  }
}

/* ─── TOUR DETAIL PAGE  (≤ 600px) ──────────────────── */
@media (max-width: 600px) {
  body {
    #tour-hero .tour-hero-inner { padding: 0 20px 56px; }
    .tour-panel { padding: 24px 20px; }
    .tour-stats-bar { grid-template-columns: repeat(2, 1fr); }
    .reviews-summary { flex-direction: column; align-items: flex-start; gap: 20px; }
    #section-related-tours .related-grid { grid-template-columns: 1fr; }
    #map-modal-frame { height: 260px; }
    #map-modal-card { border-radius: 14px; }
  }
}

/* ─── ACTIVITIES PAGE  (≤ 1100px) ──────────────────── */
@media (max-width: 1100px) {
  body {
    #section-activities .act-grid { grid-template-columns: repeat(3, 1fr); }
  }
}

/* ─── ACTIVITIES PAGE  (≤ 900px) ───────────────────── */
@media (max-width: 900px) {
  body {
    #act-hero h1 { font-size: 40px; }
    #section-activities .act-grid { grid-template-columns: repeat(2, 1fr); }
    #section-activities .act-card { height: 260px; }
    .expect-grid { grid-template-columns: 1fr 1fr; }
    .act-cta-inner { grid-template-columns: 1fr; }
    .act-cta-btns { flex-direction: row; min-width: unset; }
  }
}

/* ─── ACTIVITIES PAGE  (≤ 600px) ───────────────────── */
@media (max-width: 600px) {
  body {
    #act-hero h1 { font-size: 32px; }
    #act-hero .act-hero-inner { padding: 0 20px 60px; }
    #section-activities .act-section-inner { padding: 0 20px; }
    #section-activities .act-grid { grid-template-columns: repeat(1, 1fr); gap: 12px; }
    #section-activities .act-card { height: 220px; }
    .expect-inner { padding: 0 20px; }
    .expect-grid { grid-template-columns: 1fr; }
    .act-cta-inner { padding: 0 20px; }
    .act-cta-btns { flex-direction: column; }
  }
}

/* ─── TRAVEL INFO PAGE  (≤ 1024px) ─────────────────── */
@media (max-width: 1024px) {
  body {
    #section-quick-facts .qf-grid { grid-template-columns: repeat(4, 1fr); }
    #section-transport .transport-grid { grid-template-columns: repeat(2, 1fr); }
  }
}

/* ─── TRAVEL INFO PAGE  (≤ 900px) ──────────────────── */
@media (max-width: 900px) {
  body {
    .climate-layout { grid-template-columns: 1fr; }
    .info-block-grid { grid-template-columns: 1fr; }
    #section-quick-facts .qf-grid { grid-template-columns: repeat(2, 1fr); }
    .etiquette-cols { grid-template-columns: 1fr; }
    #section-emergency .emergency-grid { grid-template-columns: repeat(2, 1fr); }
    .month-grid { grid-template-columns: repeat(6, 1fr); gap: 6px; }
  }
}

/* ─── TRAVEL INFO PAGE  (≤ 600px) ──────────────────── */
@media (max-width: 600px) {
  body {
    #ti-hero h1 { font-size: 36px; }
    #section-transport .transport-grid { grid-template-columns: 1fr; }
    #section-quick-facts .qf-grid { grid-template-columns: repeat(2, 1fr); }
    #section-emergency .emergency-grid { grid-template-columns: repeat(2, 1fr); }
  }
}

/* ─── BLOG PAGE  (≤ 1024px) ────────────────────────── */
@media (max-width: 1024px) {
  body {
    #section-blog-main .blog-cards-grid { grid-template-columns: repeat(2, 1fr); }
  }
}

/* ─── BLOG PAGE  (≤ 900px) ─────────────────────────── */
@media (max-width: 900px) {
  body {
    #section-blog-main .blog-featured { grid-template-columns: 1fr; }
    .blog-featured-img { min-height: 240px; }
    .blog-featured-body { padding: 28px; }
  }
}

/* ─── BLOG PAGE  (≤ 600px) ─────────────────────────── */
@media (max-width: 600px) {
  body {
    #blog-hero h1 { font-size: 36px; }
    #section-blog-main .blog-cards-grid { grid-template-columns: 1fr; }
  }
}

/* ─── BLOG DETAIL PAGE  (≤ 1100px) ─────────────────── */
@media (max-width: 1100px) {
  body {
    #section-article .detail-layout { grid-template-columns: 1fr 300px; gap: 32px; }
  }
}

/* ─── BLOG DETAIL PAGE  (≤ 900px) ──────────────────── */
@media (max-width: 900px) {
  body {
    #section-article .detail-layout { grid-template-columns: 1fr; }
    .detail-sidebar { position: static; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
    #section-related .related-grid { grid-template-columns: repeat(2, 1fr); }
  }
}

/* ─── BLOG DETAIL PAGE  (≤ 600px) ──────────────────── */
@media (max-width: 600px) {
  body {
    #article-hero h1 { font-size: 26px; }
    .article-body { padding: 24px 18px; }
    .detail-sidebar { grid-template-columns: 1fr; }
    #section-related .related-grid { grid-template-columns: 1fr; }
    .author-bio-card { flex-direction: column; }
  }
}

/* â”€â”€â”€ ABOUT PAGE  (â‰¤ 900px) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 900px) {
  body {
    #about-hero { min-height: 52vh; }
    #about-hero .about-hero-inner { padding: 0 28px 56px; }

    #section-story .story-grid {
      grid-template-columns: 1fr;
      gap: 48px;
    }

    #section-story .story-img {
      width: min(100%, 560px);
      height: auto;
      aspect-ratio: 4 / 3;
    }

    #section-story .story-badge { left: 0; bottom: -16px; }
    #section-stats .stats-grid { grid-template-columns: repeat(2, 1fr); }
    #section-stats .stat-item:nth-child(2) { border-right: none; }
    #section-stats .stat-item:nth-child(3) { border-right: 1px solid rgba(255,255,255,.1); }
    #section-values .values-grid { grid-template-columns: 1fr; }
    #section-team .team-grid { grid-template-columns: repeat(2, 1fr); }
  }
}

/* â”€â”€â”€ ABOUT PAGE  (â‰¤ 600px) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 600px) {
  body {
    #about-hero { min-height: 58vh; }
    #about-hero .about-hero-inner { padding: 0 20px 44px; }
    #about-hero h1 { font-size: clamp(34px, 11vw, 42px); }
    #about-hero .hero-sub { font-size: 16px; line-height: 1.65; }
    #section-story .story-grid { gap: 32px; }
    #section-story .story-img { aspect-ratio: 1 / 1; border-radius: 16px; }
    #section-stats .stats-grid { grid-template-columns: repeat(2, 1fr); }
    #section-stats .stat-item { padding: 22px 14px; }
    #section-team .team-grid { grid-template-columns: 1fr; }
    #section-story .story-badge { display: none; }
    #section-values .value-card { padding: 24px; gap: 16px; }
    #section-about-cta .cta-btns { flex-direction: column; align-items: stretch; }
    #section-about-cta .btn-cta-primary,
    #section-about-cta .btn-cta-ghost { justify-content: center; }
  }
}


/* ── Responsive ───────────────────────────────── */
@media (max-width: 1024px) {
  body #section-contact .contact-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  body #section-contact .info-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 900px) {
  body #section-contact-faq .faq-grid {
    grid-template-columns: 1fr;
  }
  body .map-overlay-card { display: none; }
}

@media (max-width: 600px) {
  body #contact-hero h1 { font-size: 36px; }
  body #section-contact .info-cards { grid-template-columns: 1fr; }
  body .contact-form-wrap { padding: 24px 20px; }
  body .form-row { grid-template-columns: 1fr; }
  body .map-wrap { height: 280px; }
}
