/*
 * nx-legal-responsive.css — Impressum, Datenschutz, AGB (DE/EN)
 * Ergänzt die inline Styles der Legal-Seiten.
 */

@media (max-width: 1023px) {
  .back {
    top: max(16px, env(safe-area-inset-top));
    left: max(20px, env(safe-area-inset-left));
  }

  #langToggle {
    top: max(12px, env(safe-area-inset-top));
    right: max(20px, env(safe-area-inset-right));
  }

  .hero {
    padding: 100px max(6vw, 16px) 10vh;
  }

  .blocks {
    padding: 48px max(5vw, 16px) 80px;
  }

  .pg-footer {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
    padding: 24px max(5vw, 16px) 40px;
  }

  .pg-links {
    flex-wrap: wrap;
    gap: 16px;
  }
}

@media (max-width: 767px) {
  body {
    cursor: auto;
  }

  #cur {
    display: none !important;
  }

  .hero {
    padding: 88px max(16px, env(safe-area-inset-left)) 8vh max(16px, env(safe-area-inset-right));
  }

  .hero-headline {
    font-size: clamp(2.2rem, 11vw, 3.2rem) !important;
  }

  .block {
    grid-template-columns: 1fr;
    gap: 12px 0;
    padding: 36px 0;
  }

  .block-num {
    padding-top: 0;
  }

  .blocks {
    padding: 36px max(16px, env(safe-area-inset-left)) 64px max(16px, env(safe-area-inset-right));
  }

  #langToggle {
    top: max(10px, env(safe-area-inset-top));
    right: max(12px, env(safe-area-inset-right));
    transform: scale(0.9);
    transform-origin: top right;
  }

  .back {
    top: max(52px, env(safe-area-inset-top));
    left: max(14px, env(safe-area-inset-left));
    font-size: 0.48rem;
  }
}
