/* ═══════════════════════════════════════════════════════════
   Villa Lou Bagarede — responsive.css
   Breakpoints globaux : 1024px / 768px / 480px
   ═══════════════════════════════════════════════════════════ */


/* ── 1024px — tablette paysage ──────────────────────────── */
@media (max-width: 1024px) {
  .container { padding-left: 2.5rem; padding-right: 2.5rem; }

  .hero-title  { font-size: clamp(2.5rem, 8vw, 5rem); }
  .hero-subtitle { font-size: 0.78rem; }

  .section { padding-top: 5rem; padding-bottom: 5rem; }

  .layout-asymmetric {
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
  }
}


/* ── 768px — tablette portrait / mobile L ───────────────── */
@media (max-width: 768px) {
  .container { padding-left: 1.5rem; padding-right: 1.5rem; }

  .section { padding-top: 4rem; padding-bottom: 4rem; }

  .hero { min-height: 90svh; }
  .hero-title  { font-size: clamp(2rem, 10vw, 3.5rem); }
  .hero-subtitle { font-size: 0.72rem; letter-spacing: 0.15em; }

  .layout-asymmetric {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .section-title { font-size: clamp(1.75rem, 8vw, 3rem); }

  /* Gallery homepage */
  .gallery-row-1,
  .gallery-row-2 {
    grid-template-columns: 1fr;
    height: auto;
  }
  .gallery-row-3 { grid-template-columns: 1fr; height: auto; }
  .gallery-row-1 .gallery-item,
  .gallery-row-2 .gallery-item,
  .gallery-row-3 .gallery-item {
    aspect-ratio: 4/3;
    height: auto;
  }

  /* Villa stats (homepage) */
  .villa-stats { grid-template-columns: repeat(2, 1fr); }

  /* Rooms grid (homepage) */
  .rooms-grid { grid-template-columns: 1fr; }

  /* Equipements (homepage) */
  .amenities-cols { grid-template-columns: 1fr; }

  /* Golfe split (homepage) */
  .golfe-split { grid-template-columns: 1fr; }

  /* Contact form (homepage) */
  .contact-grid { grid-template-columns: 1fr; }
  .contact-info { border-right: none; border-bottom: 1px solid var(--color-stone); padding-right: 0; padding-bottom: 2rem; }
  .contact-form { padding-left: 0; }

  /* Footer (homepage v1) */
  .footer-4col { grid-template-columns: 1fr 1fr; }

  /* Breadcrumb */
  .breadcrumb { margin-top: 70px; }

  /* Table prestige */
  .table-prestige { font-size: 0.78rem; }
  .table-prestige th,
  .table-prestige td { padding: 0.6rem 0.5rem; }
}


/* ── 480px — mobile S ───────────────────────────────────── */
@media (max-width: 480px) {
  .container { padding-left: 1.25rem; padding-right: 1.25rem; }

  .hero { min-height: 85svh; }
  .hero-content { padding: 0 1.25rem; }

  .section { padding-top: 3rem; padding-bottom: 3rem; }

  .villa-stats { grid-template-columns: repeat(2, 1fr); gap: 1rem; }

  .gallery-filter-btn { font-size: 0.65rem; }

  .form-grid { grid-template-columns: 1fr; }

  /* Footer */
  .footer-4col,
  .footer-grid { grid-template-columns: 1fr; }

  .footer-bottom__inner { flex-direction: column; align-items: flex-start; gap: 0.5rem; }

  /* Disponibilités page */
  .page-hero-sm { padding: 120px 1.25rem 3rem; }
}
