:root {
  --container-pad: var(--space-4);
}

@media (min-width: 360px) {
  :root { --container-pad: var(--space-4); }
}

@media (min-width: 480px) {
  :root { --container-pad: var(--space-6); }
}

@media (min-width: 768px) {
  :root { --container-pad: var(--space-8); }
}

@media (min-width: 1024px) {
  :root { --container-pad: var(--space-8); }
}

@media (min-width: 1280px) {
  :root { --container-pad: var(--space-12); }
}

@media (min-width: 1536px) {

  :root { --container-pad: var(--space-16); --container-max: 1280px; }
}

@media (min-width: 1920px) {
  :root { --container-pad: var(--space-24); --container-max: 1360px; }
}

@media (max-width: 900px) and (orientation: landscape) {
  :root { --container-pad: var(--space-4); }
}

@media (hover: none) {
  a:hover, button:hover { opacity: 1; }
}

@media (hover: hover) and (pointer: fine) {
  a, button { cursor: pointer; }
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

html.reduce-motion *,
html.reduce-motion *::before,
html.reduce-motion *::after {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
}

.hero {
  height: 60vh;
  min-height: 420px;
}

@supports (height: 100dvh) {
  .hero {
    height: 60dvh;
  }
}

@media (min-width: 768px) {
  .hero {
    height: 68vh;
    min-height: 500px;
  }

  @supports (height: 100dvh) {
    .hero {
      height: 68dvh;
    }
  }
}

@media (min-width: 1280px) {
  .hero {
    height: 72vh;
  }

  @supports (height: 100dvh) {
    .hero {
      height: 72dvh;
    }
  }
}

@media (max-width: 900px) and (orientation: landscape) {
  .hero {
    height: 86vh;
    min-height: 300px;
    max-height: 420px;
  }

  @supports (height: 100dvh) {
    .hero {
      height: 86dvh;
    }
  }
}

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
  }
}
