/* responsive.css — Mobile-first, breakpoints tablet + desktop */

/* ===== TABLET (min-width: 640px) ===== */
@media (min-width: 640px) {
  /* Hero CTA côte à côte */
  .hero-ctas {
    flex-direction: row;
    flex-wrap: nowrap;
  }
  .hero-ctas .btn {
    width: auto;
    flex: 1;
    max-width: 280px;
  }

  /* Galerie 2 colonnes */
  .gal-feat-grid { grid-template-columns: 1fr 1fr; }

  /* Stats 3 colonnes */
  .stats-grid { grid-template-columns: repeat(3, 1fr); }

  /* Contact 2 colonnes */
  .contact-cards { grid-template-columns: 1fr 1fr; }
}

/* ===== DESKTOP (min-width: 768px) ===== */
@media (min-width: 768px) {
  header { height: var(--header-h); }

  .header-inner { gap: 32px; }

  .nav-desktop {
    display: flex;
    align-items: center;
  }

  .header-ctas {
    display: flex;
  }

  /* Services : grille asymétrique (grid-asym LAY-6) */
  .svc-grid {
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: auto auto;
  }
  /* Card featured (élagage) = toute la 1ère colonne */
  .svc-card--feat { grid-row: span 2; }

  /* Avis : 2 colonnes avec séparateur */
  .avis-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
  }
  .avis-card {
    padding: clamp(20px, 3vw, 28px) clamp(20px, 3vw, 32px);
    border-bottom: 1px solid var(--border);
    border-right: 1px solid var(--border);
  }
  .avis-card:nth-child(2n) { border-right: none; }
  .avis-card:nth-last-child(-n+2) { border-bottom: none; }

  /* About 2 colonnes */
  .about-inner { grid-template-columns: 1fr 1fr; }

  /* Zone 2 colonnes */
  .zone-inner { grid-template-columns: 1fr 1fr; align-items: start; }

  /* Contact 3 colonnes */
  .contact-cards { grid-template-columns: repeat(3, 1fr); }

  /* Footer 3 colonnes */
  .footer-grid { grid-template-columns: 2fr 1fr 1fr; }

  /* Modal desktop : centré plutôt qu'en bas */
  .modal-overlay { align-items: center; padding: 20px; }
  .modal-box {
    border-radius: var(--r-xl);
    max-height: 85dvh;
  }
}

/* ===== GRAND DESKTOP (min-width: 1024px) ===== */
@media (min-width: 1024px) {
  /* Galerie featured : grande photo à gauche + grille à droite */
  .gal-feat-grid {
    grid-template-columns: 3fr 2fr;
    grid-template-rows: 1fr 1fr;
  }
  .gal-item--feat {
    grid-row: span 2;
  }
  .gal-item--feat img { aspect-ratio: 3/4; }

  /* Hero meta plus riche */
  .hero-ctas {
    flex-direction: row;
  }
  .hero-ctas .btn { flex: none; width: auto; }
}

/* wf-contrast-enforced */
.svc-card.svc-card--feat, .svc-card.svc-card--feat * { color: #F2EFE6 !important; }
/* /wf-contrast-enforced */

/* wf-noxoverflow : reveal vertical (le slide horizontal deborde la largeur sur mobile) */
[data-reveal]:not(.in){ transform: translateY(18px) !important; }
