/* Shared public component fixes. Preserve content, focus and scroll access. */
:root {
    --lxf-blue-action: #1d57d4;
    --text-muted: #586272;
    --g500: #586272;
    --lxf-gray-600: #586272;
}
.btn-cta, .sticky-cta__btn, .lp-sticky-bar__btn--book,
.lxf-lead-form__btn--next, .partner-card__apply {
    background: var(--lxf-blue-action) !important;
    color: #fff !important;
}
.btn-cta:hover, .sticky-cta__btn:hover, .lp-sticky-bar__btn--book:hover,
.lxf-lead-form__btn--next:hover, .partner-card__apply:hover { background: #1747ae !important; }
.section__eyebrow, .callout-box__eyebrow, .team-single__creds,
.team-card__creds, .procedure-block__link, .savings-table__our-price,
.map-info-block h3, .btn-secondary, .related-links__label { color: var(--lxf-blue-action); }
.section [style*="color:var(--accent)"], .section a[style*="color:var(--accent)"],
.section [style*="color: var(--accent)"] { color: var(--lxf-blue-action) !important; }
.savings-table__savings { color: #167437; }
.footer__brand-sub, .footer__col-title, .footer__copy, .footer__address,
.footer__link, .footer a { color: #cbd5e1; }
.stats-bar__sub { color: #b9c8dd; }
.sp-stats .sp-stat__num, .sp-section--navy .section-heading em { color: #a9c8ff; }
.sp-mini-cta__body { color: #586272; }
.lxf-implant__preview-dot-rest, .lxf-implant__row-index span { color: #586272; }
.lxf-btn.lxf-btn--phone { background: #dfeeff; color: #002559 !important; }
/* Each dot remains visually compact inside a full pointer and keyboard target. */
.lxf-testimonials__dot {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px;
    min-height: 24px;
    border: 7px solid transparent !important;
    background: #657187 !important;
    background-clip: padding-box !important;
}
.lxf-testimonials__dot.is-active { background-color: #002559 !important; transform: none !important; }
.lxf-testimonials__dot:focus-visible, [data-lxf-scroll-region]:focus-visible,
.lxf-yt-facade:focus-visible, .lxf-store-rating:focus-visible {
    outline: 3px solid var(--lxf-blue-action);
    outline-offset: 3px;
}
[data-lxf-scroll-region] { max-width: 100%; }
.btn-cta, .sticky-cta__btn { white-space: normal; text-align: center; overflow-wrap: anywhere; }
.lxf-store-rating { display: block; width: fit-content; max-width: 100%; margin: 1rem auto; padding: .75rem 1rem; color: #1d57d4; background: #fff; text-decoration: underline; }
.lxf-chat__toggle { bottom: max(calc(1.5rem + var(--lxf-chat-badge-h, 0px)), calc(var(--lxf-sticky-action-height, 0px) + 14px)); }
.lxf-chat__panel { bottom: var(--lxf-sticky-action-height, 0px); }
@media (max-width: 900px) {
    footer:has([data-lxf-disclosure="footer"]) { padding-bottom: calc(var(--lxf-sticky-action-height, 0px) + 74px); }
}
.map-section a:not(.btn-cta), .map-section__info a, .map-info-block__body a,
a.btn-secondary { color: var(--lxf-blue-action) !important; }
html body a.lxf-btn.lxf-btn--phone { color: #002559 !important; }
.content-card__eyebrow, .honest-callout__label, .related-links__item { color: var(--lxf-blue-action); }
.pricing-card__badge { background: var(--lxf-blue-action); }
.cta-block__eyebrow { color: #a9c8ff; }
.partner-card__badge, .payment-table thead th.col--accent { background: var(--lxf-blue-action); }
.partner-card__tagline, .payment-table tbody td.col--accent { color: var(--lxf-blue-action); }
.sp-section--alt .c > p[style*="color:#6b7280"], .sp-section--bg .c > p[style*="color:#6b7280"] { color: #586272 !important; }

.lxf-yt-facade { position: absolute; inset: 0; width: 100%; height: 100%; cursor: pointer; background: #000; padding: 0; border: 0; }
.lxf-yt-facade img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lxf-yt-facade__play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 68px; height: 48px; background: #c90000; border-radius: 12px; display: flex; align-items: center; justify-content: center; pointer-events: none; }

@media (max-width: 600px) {
    .nav__inner { gap: 1rem; }
    .nav__logo { min-width: 0; flex: 1 1 auto; }
    .nav__logo img { max-width: 100%; height: auto; max-height: 52px; }
    .nav__right { flex: 0 0 auto; }
}

.perio-awareness-callout .perio-awareness-callout__eyebrow,
.perio-awareness-callout .perio-awareness-callout__link,
.peri-implantitis-callout .peri-implantitis-callout__link { color: var(--lxf-blue-action); }
