/* Keep headings and fragment destinations clear of the fixed site header. */
:where(main, .wp-block-post-content) :is(h1,h2,h3,h4,h5,h6)[id], #insurance {
  scroll-margin-top: 120px;
}

/* Darker teal only on the audited light backgrounds; retain bright accents on black. */
.home .section-header .wp-block-heading,
.home .wp-block-list li.has-secondary-100-color > a,
.home #h-highly-trained-therapists,
.home #h-cutting-edge-technology,
.home #h-pledge-of-excellence,
.location-contact-info :is(h2,h3,h4),
.single-location #h-discover-healing-and-support-at-site-name,
.single-location #h-how-to-begin-care {
  color: #076f80 !important;
}
.location-contact-info :is(p,p a) {
  color: #595959 !important;
}
.home .wp-block-button:not(.is-style-outline) > .wp-block-button__link,
.single-location .wp-block-button:not(.is-style-outline) > .wp-block-button__link,
#gform_submit_button_27 {
  background-color: #076f80 !important;
  color: #fff !important;
}
/* Newly semantic h3 labels retain the existing visual size. */
.location-contact-info h3.h4 { font-size: var(--wp--preset--font-size--h-4, 20px); }
.cta-link h3.trinity-card-heading { font-size: 18px; }
.single-location #h-services-that-deliver-results,
.single-location .cta-link .trinity-card-heading,
.single-location .entry-content > .wp-block-group > h2.has-secondary-100-color {
  color: #076f80 !important;
}
.single-location .entry-content > .wp-block-group > h2.wp-block-heading:not(.has-text-color) {
  color: #076f80;
}
footer h2.has-gray-500-color {
  color: #c4c4c4 !important;
}

/* Restore WordPress's native, keyboard-operable menu control on small screens. */
@media (max-width: 991px) {
  header .wp-block-navigation__responsive-container-open {
    display: flex !important;
    position: fixed;
    top: 14px;
    right: 15px;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    padding: 10px;
    border-radius: 50%;
    background: #076f80;
    color: #fff;
    z-index: 100;
  }
}

/* Preserve every heading and CTA while reducing repeated mobile opening space. */
@media (max-width: 767px) {
  :is(.parent-pageid-3650, .single-location-service) .inner-banner {
    min-height: 240px !important;
  }
  :is(.parent-pageid-3650, .single-location-service) .wp-block-post-content > .trinity-eeat-byline + .wp-block-group.has-primary-100-background-color {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  :is(.parent-pageid-3650, .single-location-service) .trinity-eeat-byline + .wp-block-group > h2 {
    font-size: 24px !important;
    line-height: 1.25;
    margin-bottom: 12px;
  }
  :is(.parent-pageid-3650, .single-location-service) .trinity-eeat-byline + .wp-block-group > .wp-block-spacer {
    height: 8px !important;
  }
  :is(.parent-pageid-3650, .single-location-service) .trinity-eeat-byline + .wp-block-group + .wp-block-spacer + .section-spacer {
    padding-top: 24px !important;
  }
  :is(.parent-pageid-3650, .single-location-service) .trinity-eeat-byline + .wp-block-group + .wp-block-spacer + .section-spacer > .wp-block-buttons {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
}
