/* =====================================================================
   RESPONSIVE FINE-TUNING
   ===================================================================== */

@media (max-width: 1180px){
  .main-nav > ul{ gap: 1.4rem; }
}

@media (max-width: 1024px){
  .guide-block{ grid-template-columns: 1fr; }
  .guide-photo{ max-width: 380px; margin: 0 auto; }
  .footer-grid{ grid-template-columns: 1fr 1fr; }
}

@media (max-width: 900px){
  .split, .split.reverse{ grid-template-columns: 1fr; }
  .split.reverse .split-media{ order: 0; }
  .split-media{ aspect-ratio: 4/3; }
  .contact-grid{ grid-template-columns: 1fr; }
  .hero{ min-height: 78vh; background-position: var(--img-pos, center 30%); }
  .hero-scroll{ display: none; }
  .card-grid.itin-grid{ grid-template-columns: repeat(2, 1fr); }
  .page-hero{ background-position: var(--img-pos, center 30%); }
  .feature-block{ min-height: 360px; background-position: var(--img-pos, center 30%); }
  .guide-photo{ aspect-ratio: 4/3; max-width: 320px; }
  .tour-card-media, .article-card-media, .gallery-item{ aspect-ratio: 4/3; }
}

@media (max-width: 720px){
  .form-grid{ grid-template-columns: 1fr; }
  .footer-grid{ grid-template-columns: 1fr; gap: 2rem; }
  .footer-bottom{ flex-direction: column; align-items: flex-start; }
  section{ padding: 3rem 0; }
  .feature-block-inner{ padding: 1.6rem; }
  .page-hero{ min-height: 46vh; }
}

@media (max-width: 480px){
  .hero h1{ max-width: 100%; }
  .hero-actions{ flex-direction: column; align-items: stretch; }
  .hero-actions .btn{ width: 100%; }
  .cta-actions{ flex-direction: column; }
  .cta-actions .btn{ width: 100%; }
  .brand-text span{ display: none; }
  .card-grid{ grid-template-columns: 1fr; }
  .card-grid.itin-grid{ grid-template-columns: 1fr; }
  .hero{ min-height: 68vh; background-position: var(--img-pos, center 25%); }
  .page-hero{ min-height: 36vh; background-position: var(--img-pos, center 25%); }
  .feature-block{ min-height: 280px; background-position: var(--img-pos, center 25%); }
  .split-media{ aspect-ratio: 1/1; }
  .guide-photo{ aspect-ratio: 1/1; max-width: 100%; }
  .gallery-item{ aspect-ratio: 1/1; }
}

/* ---- Header nav CTA fine-tuning ---- */
@media (max-width: 1180px) and (min-width: 981px){
  .main-nav{ gap: 1.2rem; }
  .main-nav > ul{ gap: 1.1rem; }
  .nav-cta .btn-sm{ padding: .6em 1.1em; font-size: .74rem; }
}

@media (min-width: 1600px){
  :root{ --max-width: 1440px; }
}
/* ---- Review marquee responsive ---- */
@media (max-width: 900px){
  .review-ticket{ flex: 0 0 300px; padding: 1.4rem; }
  .marquee-track{ gap: 1.1rem; animation-duration: 34s; }
}

@media (max-width: 720px){
  .review-ticket{ flex: 0 0 270px; padding: 1.2rem; gap: .7rem; }
  .review-ticket-avatar{ width: 40px; height: 40px; font-size: .95rem; }
  .review-ticket-id strong{ font-size: .9rem; }
  .review-ticket-id span{ font-size: .75rem; }
  .review-ticket-source{ width: 26px; height: 26px; font-size: .75rem; }
  .review-ticket-stars{ font-size: .82rem; }
  .review-ticket p.quote{ font-size: .87rem; }
  .marquee-track{ gap: .9rem; animation-duration: 28s; }
  .marquee{
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
  }
}

@media (max-width: 480px){
  .review-ticket{ flex: 0 0 240px; }
  .review-ticket-head{ gap: .6rem; }
  .marquee-track{ animation-duration: 22s; }
}