/* ═══════════════════════════════════════════════════════════
   PARCONAUTE — responsive.css  (mobile-first breakpoints)
   sm: 480px | md: 768px | lg: 1024px | xl: 1280px
═══════════════════════════════════════════════════════════ */

/* ── sm : 480px ─────────────────────────────────────────── */
@media (min-width: 480px) {
  .hero-ctas { flex-wrap: nowrap; }
  .counters-grid { grid-template-columns: repeat(2, 1fr); }
  .newsletter-inline-form { flex-wrap: nowrap; }
}

/* ── md : 768px ─────────────────────────────────────────── */
@media (min-width: 768px) {
  /* Header */
  .burger-btn { display: none !important; }
  .header-nav { display: flex; }

  /* Hero */
  .hero { padding: 100px 0; }
  .hero-top {
    flex-direction: row;     /* texte à gauche, visuel à droite */
    align-items: center;
    gap: 60px;
  }
  .hero-text { flex: 1; max-width: 520px; }
  .hero-visual { flex: 0 0 480px; height: 360px; } /* ~2× largeur carte */
  .hero-card { width: 220px; }

  /* Grids */
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .blog-grid-4 {
    grid-template-columns: repeat(2, 1fr);
  }

  /* About (homepage) */
  .about-inner {
    flex-direction: row;
    text-align: left;
    gap: 60px;
    max-width: 860px;
    margin: 0 auto;
  }
  .about-text { flex: 1; }

  /* Notre histoire */
  .equipe-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .counters-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  /* Contact */
  .contact-inner {
    grid-template-columns: 1fr 1fr;
    align-items: start;
  }
  .contact-form-col { grid-column: 1; }
  .contact-info-col { grid-column: 2; }

  /* Footer */
  .footer-inner {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
  }
  .footer-legal-inner {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }

  /* Single product */
  .product-layout {
    grid-template-columns: 1fr 1fr;
    gap: 60px;
  }

  /* Newsletter */
  .newsletter-inner {
    flex-direction: row;
    text-align: left;
    justify-content: space-between;
  }
  .newsletter-text { flex: 1; }
  .newsletter-form { flex: 0 0 auto; }

  /* Guide sur mesure */
  .guide-mesure-inner {
    flex-direction: row;
    text-align: left;
    justify-content: space-between;
    gap: 60px;
  }
  .guide-mesure-text { flex: 1; }
  .guide-mesure-cta { flex: 0 0 260px; }

  /* CTA double */
  .cta-double-inner {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }

  /* Single article */
  .single-hero { height: 440px; }

  /* Blog hero */
  .page-hero { padding: 80px 20px; }
}

/* ── lg : 1024px ────────────────────────────────────────── */
@media (min-width: 1024px) {
  /* Show nav, hide burger */
  .burger-btn { display: none; }
  .header-nav { display: flex; }

  /* Products */
  .products-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .products-shop-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  /* Blog */
  .blog-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .blog-grid-4 {
    grid-template-columns: repeat(4, 1fr);
  }

  /* Section */
  .section { padding: 80px 0; }

  /* Product single */
  .product-layout { grid-template-columns: 55% 1fr; }

  /* Map height */
  .shop-map { height: 420px; }
}

/* ── xl : 1280px ────────────────────────────────────────── */
@media (min-width: 1280px) {
  .hero { padding: 120px 0; }
  .hero-visual { flex: 0 0 360px; }
  .blog-grid-4 { grid-template-columns: repeat(4, 1fr); }
}

/* ── lg : voyage type grid 2 col déjà, featured card colonnes ── */
@media (min-width: 1024px) {
  .product-card-featured .product-card-link {
    grid-template-columns: 420px 1fr;
  }
}

/* ── Guide sur mesure & Guide inline ─── */
@media (min-width: 768px) {
  .mesure-features-grid { grid-template-columns: repeat(2, 1fr); }
  .process-steps { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .mesure-features-grid { grid-template-columns: repeat(3, 1fr); }
  .process-steps { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 480px) {
  .guide-inline-link { flex-direction: column; }
  .guide-inline-img-wrap { flex: 0 0 auto; height: 160px; }
}

/* ── Mobile-only adjustments ─── */
@media (max-width: 767px) {
  /* Show burger, hide desktop nav */
  .burger-btn { display: flex; }
  .header-nav { display: none; }

  /* Header tighter on mobile */
  .header-logo img { height: 34px; }

  /* Mobile menu overlay */
  .mobile-overlay.open { display: block; }

  /* Hero stacked — espacement compact sur mobile */
  .hero { padding: 32px 0 40px; }
  .hero-top { gap: 32px; }
  .hero-visual { height: 240px; }
  .hero-subtitle { margin-bottom: 20px; }
  .hero-ctas { margin-bottom: 16px; }

  /* Sections less padding */
  .section { padding: 48px 0; }

  /* Footer single col */
  .footer-inner { grid-template-columns: 1fr; gap: 28px; padding: 40px 20px 28px; }
  .footer-social-col .footer-socials { flex-direction: row; }

  /* History page */
  .counters-grid { grid-template-columns: repeat(2, 1fr); }

  /* Product page */
  .product-reassurance { gap: 8px; }

  /* Single article */
  .single-hero { height: 220px; }
  .single-container { padding: 0 16px; }

  /* Voyage type buttons mobile */
  .voyage-type-grid { grid-template-columns: 1fr; gap: 10px; }
  .voyage-type-btn { height: 90px; }

  /* Featured card mobile */
  .product-card-featured .product-card-link { grid-template-columns: 1fr; }
  .product-card-featured .product-card-img-wrap { height: 200px; }
  .product-card-featured .product-card-body { padding: 24px 20px; }

  /* Filters */
  .filter-bar { gap: 8px; }
  .filter-btn { padding: 7px 14px; font-size: 0.82rem; }

  /* Map */
  .shop-map { height: 280px; }

  /* Contact */
  .contact-inner { gap: 28px; }
}

/* ── Tablet-only (768-1023) ─── */
@media (min-width: 768px) and (max-width: 1023px) {
  .products-shop-grid { grid-template-columns: repeat(2, 1fr); }
  .blog-archive-grid  { grid-template-columns: repeat(2, 1fr); }
}

/* ── Print ─── */
@media print {
  .site-header, .site-footer, .scroll-top,
  .filter-bar, .shop-map, .section-newsletter { display: none !important; }
  body { font-size: 12pt; }
  a { color: inherit; text-decoration: none; }
}
