/* =====================================================
   Smart-ERP.fr — responsive.css
   Media queries mobile-first (overrides desktop par défaut)
   ===================================================== */

/* Tablette large */
@media (max-width: 1024px) {
  .hero__grid { grid-template-columns: 1fr 1fr; gap: var(--spacing-lg); }
  .content-grid { grid-template-columns: 1fr; }
  .sidebar-box { position: static; }
  .grid--4 { grid-template-columns: repeat(2, 1fr); }
  .stats { grid-template-columns: repeat(2, 1fr); }
  .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .page-hero__grid { grid-template-columns: 1fr 1fr; gap: var(--spacing-lg); }
}

/* Tablette / mobile : nav burger */
@media (max-width: 900px) {
  .nav-toggle { display: flex; }

  .main-nav {
    position: fixed;
    top: var(--header-height);
    left: 0;
    right: 0;
    background: #fff;
    border-bottom: 1px solid var(--color-border);
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: var(--spacing-md) var(--spacing-lg) var(--spacing-lg);
    box-shadow: var(--shadow);
    transform: translateY(-12px);
    opacity: 0;
    pointer-events: none;
    transition: transform var(--transition), opacity var(--transition);
    max-height: calc(100vh - var(--header-height));
    overflow-y: auto;
  }
  .main-nav.is-open {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }
  .main-nav__list {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
  }
  .main-nav__link {
    display: block;
    padding: 0.9rem 0;
    border-bottom: 1px solid var(--color-border);
  }
  .main-nav__link::after { display: none; }
  .main-nav .btn { margin-top: var(--spacing-md); width: 100%; justify-content: center; }
}

/* Mobile */
@media (max-width: 720px) {
  :root { --spacing-xxl: 3.5rem; --spacing-xl: 2.5rem; }

  .container { padding: 0 1.2rem; }

  .hero__grid { grid-template-columns: 1fr; text-align: center; }
  .hero__visual { order: -1; max-width: 320px; margin: 0 auto; }
  .hero__lead { margin-left: auto; margin-right: auto; }
  .hero__cta { justify-content: center; }
  .hero__badge { margin-left: auto; margin-right: auto; }

  .grid--2, .grid--3, .grid--4 { grid-template-columns: 1fr; }
  .stats { grid-template-columns: repeat(2, 1fr); gap: var(--spacing-md); }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: var(--spacing-md); }

  .page-hero__grid { grid-template-columns: 1fr; text-align: center; }
  .page-hero__media { order: -1; max-width: 460px; margin: 0 auto; }
  .hero__photo { max-height: 320px; }

  .site-footer__grid { grid-template-columns: 1fr 1fr; }
  .site-footer__brand { grid-column: 1 / -1; }
  .site-footer__bottom { flex-direction: column; }

  .cta-band { padding: var(--spacing-lg); }
  .hero__cta .btn { width: 100%; justify-content: center; }
}

/* Formulaire : 2 colonnes -> 1 colonne sur mobile */
@media (max-width: 720px) {
  .lead-form { padding: var(--spacing-lg); }
  .form-row { grid-template-columns: 1fr; }
  .reassurance { gap: var(--spacing-sm); }
}

/* Petit mobile */
@media (max-width: 420px) {
  .stats { grid-template-columns: 1fr; }
  .stats-grid { grid-template-columns: 1fr; }
  .site-footer__grid { grid-template-columns: 1fr; }
  .logo__sub { display: none; }
}
