/* Globale Mobile-Sicherheitsnetze (Komponenten-spezifische Breakpoints liegen bei den Komponenten) */

body {
  overflow-x: hidden;
}

/* Hinweis: .grid-12 bleibt bei allen Breiten repeat(12, 1fr) — jede Komponente
   setzt ihre eigenen grid-column-Spans im <=900px-Query explizit auf span 12 zurueck
   (Pitfall: unresetteter Span erzwingt sonst eine unsichtbare 2. Spalte). */

@media (max-width: 600px) {
  section {
    padding-block: clamp(2.25rem, 8vw, 3.5rem);
  }

  body {
    font-size: 16px;
  }

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

  .hero__actions {
    flex-direction: column;
  }

  .hero__actions .btn {
    width: 100%;
  }
}

/* Navbar-Zwischenbreiten (900-1250px) gegenchecken: Nav-Gap reduzieren statt umbrechen */
@media (min-width: 901px) and (max-width: 1250px) {
  .primary-nav ul {
    gap: 1.1rem;
  }
  .primary-nav a {
    font-size: 0.9rem;
  }
  .header-cta {
    padding: 0.6em 1.1em;
    font-size: 0.86rem;
  }
}
