/*
 * Site-wide typography and CTA interaction normalization.
 * This file intentionally avoids layout, sizing, spacing, and page color resets.
 */

body :where(h1, h2, h3, h4, h5, h6, p, a, li, span, label, button, input, textarea, select, strong, b) {
  font-synthesis: none;
}

body :where(h1, h2, h3, h4, h5, h6) {
  font-weight: 300 !important;
}

body :where(strong, b, .text-weight-semibold, .text-weight-bold) {
  font-weight: 400 !important;
}

body :where(.button, .button-new, .w-button, .footer-contact-button, input[type="submit"]) {
  font-weight: 400 !important;
}

body :is(
  a.button,
  button.button,
  .button-new,
  .w-button,
  .footer-contact-button,
  input[type="submit"]
):where(:hover, :focus, :focus-visible, :active) {
  border-color: #74cbfb !important;
  background-color: #74cbfb !important;
  background-image: none !important;
  color: #313030 !important;
}

@media (prefers-reduced-motion: reduce) {
  body :is(
    a.button,
    button.button,
    .button-new,
    .w-button,
    .footer-contact-button,
    input[type="submit"]
  ) {
    transition-duration: .01ms !important;
  }
}
