/* EASY HOME Phase J: focused accessibility, motion and rendering polish. */
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid #a8813f;
  outline-offset: 3px;
}

.skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 200;
  transform: translateY(-180%);
  padding: 12px 16px;
  border-radius: 999px;
  background: #eef1f2;
  color: #202326;
  font-weight: 700;
  box-shadow: 0 8px 24px rgba(32,35,38,.16);
}

.skip-link:focus { transform: none; }

img, svg, video, canvas { max-width: 100%; }
img { height: auto; }

@media (min-width: 760px) {
  main > section:not(:first-child),
  main > .section:not(:first-child) {
    content-visibility: auto;
    contain-intrinsic-size: 720px;
  }
}

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

@media (max-width: 759px) {
  body { overflow-x: hidden; }
  main, main > section, .section, .site-footer { max-width: 100%; }
  input, select, textarea { font-size: 16px; }
  .floorplan-viewer, .gallery, .section, .site-footer { scroll-margin-top: 76px; }
}
