/* Pinnacle Audiology shared responsive contract.
   Only non-negotiable mobile safety behavior belongs here. */

@media (max-width: 760px) {
  /* The first screen must never depend on an observer or animation timer. */
  body.reveal-ready :where(.hero, .page-hero, .vid-hero, .store-hero, main > :first-child)
    :where([data-reveal], [data-qcl-reveal]),
  body.qcl-reveal-ready :where(.hero, .page-hero, .vid-hero, .store-hero, main > :first-child)
    :where([data-reveal], [data-qcl-reveal]) {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
    transition: none !important;
  }

  /* Keep the floating action dock from covering the final footer links. */
  .g-footer {
    padding-bottom: calc(96px + env(safe-area-inset-bottom));
  }

  body {
    scroll-padding-bottom: 96px;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }

  /* Shared shell surfaces may not create document-level horizontal overflow. */
  .g-topbar,
  .g-dr,
  .g-sov {
    max-width: 100vw;
    overflow-x: hidden;
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal],
  [data-qcl-reveal] {
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
  }
}
