/* All content is visible at rest. JavaScript never installs a hidden CSS state. */
html { scroll-behavior: auto; }
.hero-copy h1, .page-hero h1, .hero-copy > .eyebrow,
.page-hero > .eyebrow, .hero-photo, .rings { animation: none; }
.motion-ready .reveal, .motion-ready .reveal.visible, .reveal {
  opacity: 1;
  transform: none;
}
.button:hover, .business-grid a:hover svg, .blog-card:hover img,
.gallery-item:hover svg { transform: none; }

@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
  .button, .back-top { transition: background-color .22s ease, box-shadow .22s ease, translate .22s ease, opacity .22s ease; }
  .info-card, .category-card, .download-card, .faq-list details { transition: border-color .25s ease, box-shadow .25s ease; }
  .business-grid svg, .gallery-item svg, .blog-card img { transition: scale .45s cubic-bezier(.22, 1, .36, 1); }
  .underlined { transition: border-color .2s ease, color .2s ease; }
  header nav a, footer nav a {
    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 0 1px;
    transition: background-size .25s ease, color .2s ease;
  }
  header nav a.tw-current, footer nav a.tw-current { background-size: 100% 1px; }
  header nav a:hover, footer nav a:hover { text-decoration: none; }
  .rings::before { animation: tw-ring-intro 4s ease-in-out 1; }
  .rings::after { animation: tw-ring-intro 4s ease-in-out 1 reverse; }
  @keyframes tw-ring-intro {
    0%, 100% { transform: translate(0, 0) scale(1); }
    50% { transform: translate(5px, -5px) scale(1.04); }
  }
}

@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  .button:hover { translate: 0 -3px; box-shadow: 0 8px 20px #003a2c24; }
  .button:active { translate: 0 0; box-shadow: none; }
  header nav a:hover, footer nav a:hover { background-size: 100% 1px; }
  .business-grid a:hover svg, .gallery-item:hover svg, .blog-card:hover img { scale: 1.025; }
  .info-card:hover, .category-card:hover { border-color: var(--green); }
  .download-card:hover { box-shadow: 0 12px 30px #003a2c13; }
  .back-top:hover { translate: 0 -3px; box-shadow: 0 6px 18px #003a2c24; }
}

@media (max-width: 760px) {
  header #navigation a, .nav-more summary { min-height: 44px; display: flex; align-items: center; }
  .menu { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .rings::before, .rings::after { animation: none !important; }
  .button:hover, .back-top:hover { translate: none; }
  .business-grid a:hover svg, .gallery-item:hover svg, .blog-card:hover img { scale: none; }
}
