html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

/* ── Accessibility: forced-colors / High Contrast Mode ─────────────
   box-shadow focus rings are stripped in forced-colors mode.
   Supply an outline fallback so keyboard focus stays visible.      */
@media (forced-colors: active) {
  .btn:focus-visible,
  .btn:focus,
  a:focus-visible,
  input:focus-visible,
  select:focus-visible,
  textarea:focus-visible,
  [tabindex]:focus-visible {
    outline: 2px solid ButtonText !important;
    outline-offset: 2px !important;
    box-shadow: none !important;
  }
}

/* ── Accessibility: prefers-reduced-motion ──────────────────────────
   Caps animation and transition duration to effectively zero for
   users who have requested reduced motion at the OS level.
   The pvBodyGlow animation is also suppressed via _Layout.cshtml.  */
@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 {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.container-static {
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow-y: hidden;
    /*overflow-x: hidden;*/
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 1.5rem;
}

@media (max-width: 768px) {
    .container-static {
        padding-top: 0;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        padding-bottom: 1.5rem;
    }
}