/* Prepared locally only; not enqueued by the active theme. */
.sol-contact-page { max-width: 1100px; margin-inline: auto; padding: 40px 24px 64px; color: #000000; }
.sol-contact-page .sol-contact-eyebrow { font: 600 15px/1.5 "Source Sans Pro", Arial, sans-serif; color: #735a35; margin: 0 0 12px; }
.sol-contact-page > h2 { font: 600 clamp(28px, 4vw, 42px)/1.15 "Source Sans Pro", Arial, sans-serif; margin: 0 0 16px; }
.sol-contact-page > p:not(.sol-contact-eyebrow) { font-size: 18px; line-height: 1.6; max-width: 68ch; }
.sol-contact-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 32px; }
.sol-contact-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 20px; border-radius: 4px; background: #333031; color: white; text-decoration: none; }
.sol-contact-actions .is-style-outline a { color: #333031; border: 1px solid #333031; background: transparent; }
.sol-contact-page .sol-contact-columns { display: grid !important; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 40px; align-items: start !important; }
.sol-contact-columns > * { min-width: 0; }
.sol-contact-details { background: #f6f5f1; padding: 28px; border-radius: 8px; }
.sol-contact-details h3 { font: 600 26px/1.25 "Source Sans Pro", Arial, sans-serif; margin: 0 0 16px; }
.sol-contact-details h3:not(:first-child) { margin-top: 28px; }
.sol-contact-details p, .sol-contact-details dl { line-height: 1.6; }
.sol-contact-direction-button { margin-top: 24px; }
.sol-contact-direction-button a { display: inline-flex; align-items: center; min-height: 48px; padding: 12px 18px; border: 1px solid #333031; border-radius: 4px; color: #333031; text-decoration: none; background: transparent; }
.sol-native-footer .sol-footer-directions .wp-block-button .wp-block-button__link { display: inline-flex; align-items: center; min-height: 48px; padding: 12px 18px; border: 1px solid #fff; border-radius: 4px; color: #fff !important; background: transparent; text-decoration: none; font-size: 14px; }
.sol-footer-compact-contact .sol-native-footer-columns { grid-template-columns: 1fr; }
.sol-footer-compact-contact .sol-native-footer-width { padding-block: 24px; }
.sol-footer-compact-contact .sol-native-footer-columns > * { padding-block: 12px; }
.sol-contact-directions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 24px; background: #f6f5f1; border-radius: 8px; }
.sol-contact-directions a { display: inline-flex; align-items: center; min-height: 48px; padding: 12px 20px; border: 1px solid currentColor; border-radius: 4px; color: #333031; text-decoration: none; }
.sol-contact-page a:focus-visible, .sol-contact-directions a:focus-visible { outline: 3px solid #333031; outline-offset: 4px; }
@media (max-width: 767px) {
  .sol-contact-page { padding: 28px 18px 40px; }
  .sol-contact-page .sol-contact-columns { grid-template-columns: 1fr; gap: 24px; }
  .sol-contact-details { padding: 22px 18px; }
}

/* Original palette for the retained location block; its stored content is unchanged. */
.sol-practice-location{color:#000000!important}
.sol-practice-location h2{color:#000000!important}
.sol-practice-location .sol-location-eyebrow,.sol-practice-location .sol-location-phone{color:#333031!important}
.sol-practice-location .sol-location-link{border-color:#333031!important;color:#333031!important}
.sol-practice-location .sol-location-booking{color:#fff!important;background:#333031!important}
.sol-practice-location .sol-location-link:hover{background:#211f20!important;color:#fff!important}
.sol-practice-location a:focus-visible{outline-color:#333031!important}
.sol-practice-location .sol-location-note{color:#5d595a!important}
.sol-practice-location .sol-location-map{background:#f5f3ef!important}
