/* =========================================
   FICHIER : css/responsive.css
   ROLE    : Breakpoints / Ajustements responsive
   NOTE    : Pas de styles "desktop" ici, seulement adaptations
   ========================================= */

/* =========================
   1) Large tablets / small laptops
   ========================= */
@media (max-width: 1100px){

  /* Layout général */
  .container{
    padding-left: 22px;
    padding-right: 22px;
  }

  /* Hero */
  .hero-container{
    gap: 40px;
  }
}

/* =========================
   2) Tablets / Mobile landscape
   ========================= */
@media (max-width: 980px){

  /* Navbar déjà gérée dans components.css.
     Ici on ne force pas .nav-links etc. */

  /* Sections : rythme vertical plus compact */
  .impact-section{
    padding: 80px 0;
  }

  /* Titres */
  h1{
    letter-spacing: -0.5px;
  }

  /* Grilles génériques (si certaines pages utilisent des "grid" simples) */
  .grid-2{
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .grid-3{
    display: grid;
    grid-template-columns: 1fr;
    gap: 22px;
  }
}

/* =========================
   3) Phones
   ========================= */
@media (max-width: 600px){

  :root{
    --container-pad: 16px;
  }

  /* Hero */
  .hero{
    padding-top: 110px;
  }

  .hero-actions{
    flex-direction: column;
    align-items: stretch;
  }

  .btn-main,
  .btn-full,
  .btn-video,
  .btn-outline,
  .btn-filled-white{
    width: 100%;
    justify-content: center;
  }

  /* Cards */
  .impact-card{
    padding: 38px 22px;
  }

  /* Docs */
  .doc-card{
    padding: 16px;
  }

  .doc-actions{
    flex-direction: column;
    align-items: stretch;
  }

  .doc-btn{
    width: 100%;
    justify-content: center;
  }
}

/* =========================
   4) Very small phones
   ========================= */
@media (max-width: 380px){

  .navbar{
    padding: 12px 16px;
  }

  .logo-text{
    font-size: 1.5rem;
  }

  .price{
    font-size: 2.6rem;
  }
}