/* ═══════════════════════════════════════════════════════════
   Explore La Maddalena — responsive.css v2.0
   Mobile-first · 320px → 1920px
   ═══════════════════════════════════════════════════════════ */

/* ── Large (≤1280px) ─────────────────────────────────────── */
@media (max-width: 1280px) {
  :root { --container: 1100px; }
  .feature-grid__layout { gap: var(--sp-sm); }
  .arrive-steps { gap: var(--sp-sm); }
  .nav-megadrop { width: 560px; grid-template-columns: repeat(2, 1fr); }
}

/* ── Tablet Landscape (≤1024px) ──────────────────────────── */
@media (max-width: 1024px) {
  .topbar__info { display: none; }
  .navbar__nav   { display: none; }
  .navbar__burger { display: flex; }
  .navbar__plan-btn span { display: none; }

  .hero__title { font-size: clamp(2.5rem, 7vw, 4rem); }
  .hero__content { padding-top: calc(var(--navbar-h) + var(--sp-lg)); }

  .feature-grid__layout { grid-template-columns: 1fr; }
  .feature-grid__small-grid { grid-template-columns: repeat(4, 1fr); }
  .feature-card--large .feature-card__body { padding: var(--sp-lg); }

  .split-section__layout { grid-template-columns: 1fr; min-height: auto; }
  .split-section__image { min-height: 400px; }
  .split-section__image-overlay { background: linear-gradient(to bottom, transparent 60%, var(--ocean-dark) 100%); }
  .split-section__content { padding: var(--sp-xl) var(--sp-lg); }

  .itinerary-tabs__layout { grid-template-columns: 1fr; }
  .itinerary-aside-box { position: static; }

  .arrive-steps { grid-template-columns: repeat(2, 1fr); }
  .arrive-step::after { display: none; }

  .editorial-strip__grid { grid-template-columns: 1fr 1fr; }
  .editorial-strip__grid article:last-child { display: none; }

  .newsletter__inner { grid-template-columns: 1fr; gap: var(--sp-xl); }
  .newsletter__form { max-width: 520px; }

  .footer__grid { grid-template-columns: 1fr 1fr; gap: var(--sp-lg); }

  .content-layout { grid-template-columns: 1fr; }
  .cpt-layout { grid-template-columns: 1fr; }
  .cpt-sidebar__box { position: static; }

  .post-grid { grid-template-columns: repeat(2, 1fr); }
  .related-grid { grid-template-columns: repeat(2, 1fr); }
  .sleep-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ── Tablet Portrait (≤768px) ────────────────────────────── */
@media (max-width: 768px) {
  :root {
    --sp-2xl: 4rem;
    --sp-xl:  2.5rem;
    --sp-lg:  2rem;
  }
  .container { padding-inline: 1.25rem; }

  .section-header { flex-direction: column; align-items: flex-start; }

  .hero { min-height: 100svh; }
  .hero__title { font-size: clamp(2.25rem, 8vw, 3.5rem); }
  .hero__subtitle { font-size: 1rem; }
  .hero__search-wrap { flex-wrap: wrap; border-radius: var(--radius-xl); }
  .hero__search-btn { width: 100%; border-radius: var(--radius-md); justify-content: center; padding: .875rem; }
  .hero__stats { gap: var(--sp-md); }
  .hero__stat-num { font-size: 1.75rem; }
  .hero__ctas { flex-direction: column; }
  .hero__ctas .btn { width: 100%; justify-content: center; }

  .feature-grid__small-grid { grid-template-columns: repeat(2, 1fr); }

  .tabs { flex-wrap: wrap; border-radius: var(--radius-xl); }
  .tab-btn { flex: 1; text-align: center; padding: .5rem 1rem; font-size: .875rem; }

  .comparison { grid-template-columns: 1fr; gap: var(--sp-sm); }

  .arrive-steps { grid-template-columns: 1fr; }

  .editorial-strip__grid { grid-template-columns: 1fr; }
  .editorial-strip__grid article:last-child { display: grid; }
  .editorial-article { grid-template-columns: 1fr; }
  .editorial-article__num { font-size: 3rem; }

  .footer__grid { grid-template-columns: 1fr; gap: var(--sp-md); }

  .post-grid { grid-template-columns: 1fr; }
  .related-grid { grid-template-columns: 1fr; }
  .sleep-grid { grid-template-columns: 1fr; }

  .plan-cta__btns { flex-direction: column; align-items: center; }
  .plan-cta__btns .btn { width: 100%; justify-content: center; max-width: 320px; }

  .affiliate-banner { flex-direction: column; text-align: center; }
  .affiliate-banner .btn { width: 100%; justify-content: center; }

  .experience-gallery { grid-template-columns: repeat(2, 1fr); }
}

/* ── Mobile (≤480px) ─────────────────────────────────────── */
@media (max-width: 480px) {
  :root {
    --sp-2xl: 3rem;
    --sp-xl:  2rem;
    --sp-lg:  1.5rem;
  }
  .container { padding-inline: 1rem; }

  .topbar { display: none; }

  .navbar__plan-btn { padding: .5rem .875rem; font-size: .8125rem; }

  .hero__badge { font-size: .7rem; }
  .hero__tags  { gap: .35rem; }

  .feature-grid__small-grid { grid-template-columns: 1fr; }

  .scroll-card { width: 260px; }

  .itinerary-aside-box { padding: var(--sp-md); }

  .newsletter__form { padding: var(--sp-md); }

  .footer__bottom-inner { flex-direction: column; text-align: center; }

  .experience-gallery { grid-template-columns: 1fr; }
}

/* ── Tiny (≤360px) ───────────────────────────────────────── */
@media (max-width: 360px) {
  .hero__title { font-size: 2rem; }
  .hero__ctas .btn { font-size: .875rem; padding: .75rem 1.25rem; }
}

/* ── Print ───────────────────────────────────────────────── */
@media print {
  .topbar, .navbar, .footer, .newsletter, .category-bar,
  .plan-cta, .hero__scroll-indicator, .hero__dots { display: none !important; }
  .hero { min-height: auto; background: none !important; }
  .hero__slideshow, .hero__overlay { display: none; }
  .hero__content { color: var(--text) !important; }
  .hero__title, .hero__subtitle { color: var(--ocean-dark) !important; -webkit-text-fill-color: var(--ocean-dark) !important; }
  body { font-size: 11pt; }
  .entry-content { max-width: 100%; }
}
