/* Office N quality guard: responsive media and keyboard visibility. */
*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
video {
  max-width: 100% !important;
  height: auto !important;
}

.c-img,
.c-img picture,
.c-img > a,
.c-img .s-slide-img,
.c-img .js-slide {
  max-width: 100% !important;
}

.c-img picture,
.c-img > a,
.c-img .s-slide-img {
  display: block;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid #facc15 !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 6px #111827 !important;
}

@media (max-width: 767px) {
  html,
  body,
  #page,
  #content {
    max-width: 100%;
  }

  .c-img,
  .c-img picture,
  .c-img > a,
  .c-img .s-slide-img,
  .c-img .js-slide {
    width: 100% !important;
  }
}

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