/* ============================================================
   LevelEngine — Big-screen / projector safety net
   Loaded on every page. Keeps content readable on 2560px+ monitors,
   4K, ultra-wide, and projector setups by capping max widths and
   improving touch-target sizes on really wide displays.
   ============================================================ */

/* Cap any full-width container on very large displays so text doesn't
   stretch into 3000px lines. Targets all common container patterns
   we use across the site. */
@media (min-width: 1800px) {
  .section-inner,
  .footer-grid,
  .footer-bottom,
  .plans-grid,
  .shell,
  .messages,
  .welcome,
  .topbar,
  #topbar,
  .nav {
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* On TVs (≥ 2400px), allow slightly wider readable widths and bump
   base font size so a 1080p projector at 3 metres still looks crisp. */
@media (min-width: 2400px) {
  html { font-size: 17px; }
  .section-inner,
  .footer-grid,
  .plans-grid,
  .shell,
  .nav,
  #topbar { max-width: 1800px; }
}

/* Ultra-wide (21:9, 32:9) — guard the hero blocks so they don't
   become uncomfortable. */
@media (min-aspect-ratio: 21/9) and (min-width: 2000px) {
  .pricing-hero,
  .hero,
  .welcome { max-width: 1400px; margin-left: auto; margin-right: auto; }
}

/* Make sure no element ever causes a horizontal scrollbar on any width */
html, body { overflow-x: hidden; }

/* Safety: print stylesheet — if anyone prints a page, hide the
   decorative aurora/scanlines to save toner. */
@media print {
  .aurora, .scanlines, .bg-glow, #bg-canvas,
  #le-cookie-banner { display: none !important; }
  body { background: #fff !important; color: #000 !important; }
}

/* Forced light-mode users on macOS / iOS — keep dark theme readable.
   (Site already supports light theme via toggle; this is a backstop.) */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}
