/* MARIFSAKAN – Adaptation tablettes et smartphones */
@media (max-width: 1100px) {
  .cards-5 { grid-template-columns: repeat(3, 1fr); }
  .cards-4 { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .filters { grid-template-columns: 1fr 1fr 1fr; }
  .filters .field:first-child { grid-column: 1 / -1; }
  .filters .btn { grid-column: 1 / -1; }
}

@media (max-width: 960px) {
  :root { --header-h: 68px; }
  .burger { display: flex; }
  .main-nav {
    position: fixed; inset: var(--header-h) 0 0 0; background: #fff; color: var(--green); flex-direction: column; align-items: stretch;
    justify-content: flex-start; gap: 24px; padding: 32px 24px; transform: translateX(100%); transition: transform .4s cubic-bezier(.2, .7, .2, 1);
    overflow-y: auto; visibility: hidden;
  }
  .main-nav.open { transform: none; visibility: visible; }
  .main-nav ul { flex-direction: column; gap: 0; }
  .main-nav li { border-bottom: 1px solid var(--line); }
  .main-nav a:not(.btn) { display: block; padding: 18px 4px; font-size: 1.15rem; font-family: 'Poppins', sans-serif; }
  .main-nav a:not(.btn)::after { display: none; }
  .main-nav a.active { color: #b39a5f; }
  .nav-cta { background: var(--green) !important; color: #fff !important; width: 100%; }
  .burger.open { color: var(--green); }
  .site-header:has(.burger.open) { background: #fff; color: var(--green); }

  .split, .founder, .service-row, .contact-grid, .pd-layout { grid-template-columns: 1fr; }
  .split.reverse > :first-child, .service-row.reverse .service-img { order: 0; }
  .founder .photo { max-width: 360px; }
  .grid-3, .news-grid { grid-template-columns: repeat(2, 1fr); }
  .facts { grid-template-columns: repeat(2, 1fr); }
  .sticky { position: static; }
  .gallery { grid-template-columns: repeat(2, 1fr); }
  .g-item:first-child { grid-column: span 2; grid-row: auto; aspect-ratio: 16/10; }
}

@media (max-width: 640px) {
  body { font-size: 15.5px; }
  .container { width: min(1200px, 100% - 32px); }
  .grid-3, .news-grid, .cards-5, .cards-4, .videos { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .form-row { grid-template-columns: 1fr; }
  .filters { grid-template-columns: 1fr; margin-top: -30px; padding: 16px; }
  .facts { grid-template-columns: 1fr; margin-top: -32px; }
  .hero-actions .btn { width: 100%; }
  .hero h1 { max-width: none; }
  .brochure-box { padding: 28px 22px; }
  .brochure-box .btn { width: 100%; }
  .cta-band .btn { width: 100%; }
  .lightbox { padding: 70px 12px 50px; }
  .lb-prev { left: 6px; } .lb-next { right: 6px; }
  .footer-bottom { flex-direction: column; }
  .wa-float { width: 54px; height: 54px; right: 14px; bottom: 14px; }
  .gallery { gap: 8px; }
  table.units thead { display: none; }
  table.units tr { display: block; border-bottom: 1px solid var(--line); padding: 10px 0; }
  table.units td { display: flex; justify-content: space-between; border: 0; padding: 6px 18px; }
  table.units td::before { content: attr(data-label); color: var(--muted); font-size: .82rem; }
}
