/* ===========================
   RESPONSIVE — mobile-first
   =========================== */

/* Mobile (< 640px) — headline assez grande pour casser en 2 lignes */
@media (max-width: 639px) {
  .hero__headline {
    font-size: 2.5rem;
  }
}

/* Petits mobiles (< 360px) */
@media (max-width: 359px) {
  .hero__headline {
    font-size: 2rem;
  }

  .email-form {
    max-width: 220px;
  }
}

/* Tablettes portrait (≥ 640px) */
@media (min-width: 640px) {
  .hero__content {
    max-width: 580px;
    gap: var(--s-12);
  }

  .hero__headline {
    font-size: var(--fs-4xl);
  }

  .email-form {
    max-width: 280px;
  }

  .logo-svg {
    width: 250px;
  }
}

/* Tablettes / desktops (≥ 1024px) */
@media (min-width: 1024px) {
  .hero__content {
    max-width: 640px;
    gap: var(--s-16);
  }

  .hero__headline {
    font-size: var(--fs-5xl);
    letter-spacing: 0.03em;
  }

  .email-form {
    max-width: 270px;
  }

  .logo-svg {
    width: 280px;
  }
}

/* Grands écrans (≥ 1440px) */
@media (min-width: 1440px) {
  .hero__content {
    max-width: 680px;
  }

  .hero__headline {
    font-size: 3.6rem;
  }

  .logo-svg {
    width: 300px;
  }
}

/* Paysage mobile / iPhone — headline forcée en 2 lignes
   max-height: 500px cible les écrans de téléphone en paysage
   sans affecter les tablettes ou desktops en paysage           */
@media (orientation: landscape) and (max-height: 500px) {
  .hero {
    padding: var(--s-4) var(--s-8);
  }

  .hero__content {
    max-width: 420px;
    gap: var(--s-5);
  }

  .hero__headline {
    font-size: 1.5rem;
  }

  .hero__coming-soon {
    font-size: 0.875rem;
    letter-spacing: 0.25em;
  }

  .logo-svg {
    width: 180px;
  }
}

/* Réduction de mouvement */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
}

/* Portrait sur mobile — bg centré en haut */
@media (orientation: portrait) and (max-width: 767px) {
  .page-bg__img {
    object-position: center top;
  }
}
