/* Shared, quiet interactions. Layout and content remain usable without JavaScript. */
:where(.btn, .book, .text-link, .service-card, .service-icon, .service-symbol,
  .service-more button, .service-more-sign, .smc-nav-link, .smc-dropdown > summary,
  .smc-menu-panel a, .smc-footer-navigation a, .smc-mobile-book,
  .doctor-foot a, .doctor-copy h3 a, .directory-card h2 a, .directory-card h3 a,
  .doctors-controls button, .care-link, .care-controls button,
  .medical-toc a, .instagram-card, .instagram-open, .price-sidebar a,
  input[type="search"], select) {
  transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease;
}

:where(.text-link, .btn, .book, .care-link) > span:last-child,
.service-symbol {
  display: inline-block;
  transition: color 220ms ease, transform 220ms ease;
}

:where(.text-link, .btn, .book, .care-link):focus-visible > span:last-child,
.service-card:focus-visible .service-symbol {
  transform: translateX(2px);
}

@media (hover: hover) and (pointer: fine) {
  :where(.text-link, .btn, .book, .care-link):hover > span:last-child,
  .service-card:hover .service-symbol {
    transform: translateX(2px);
  }
  .doctors-controls button:not(:disabled):hover {
    background-color: var(--olive-light);
    border-color: var(--olive);
  }
  .care-controls-right button:not(:disabled):hover {
    background-color: #ffffff0a;
  }
  .instagram-card:hover { border-color: var(--gold); }
}

.care-pagination button::after {
  transition: background-color 220ms ease;
}

/* Never introduce a delayed or animated keyboard focus indicator. */
:where(a, button, input, select, summary):focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 5px;
}

@media (prefers-reduced-motion: reduce) {
  html, .care-track, #doctors-track { scroll-behavior: auto !important; }
  :where(.btn, .book, .text-link, .service-card, .service-icon, .service-symbol,
    .service-more button, .service-more-sign, .smc-nav-link, .smc-dropdown > summary,
    .smc-menu-panel a, .smc-footer-navigation a, .smc-mobile-book,
    .doctor-foot a, .doctor-copy h3 a, .directory-card h2 a, .directory-card h3 a,
    .doctors-controls button, .care-link, .care-controls button,
    .medical-toc a, .instagram-card, .instagram-open, .price-sidebar a,
    input[type="search"], select),
  :where(.text-link, .btn, .book, .care-link) > span:last-child,
  .care-pagination button::after {
    transition: none !important;
  }
  :where(.text-link, .btn, .book, .care-link) > span:last-child,
  .service-symbol { transform: none !important; }
}
