.km15-menu-toggle:focus-visible, .km15-button:focus-visible, .km15-category-link:focus-visible { outline: 3px solid #242824; outline-offset: 3px; }
.km15-menu-toggle:hover { color: var(--km15-phone); }
.km15-button { overflow-wrap: anywhere; }
.km15-button:hover { color: #fff; filter: brightness(.93); }
.km15-contact-bar { display: none; }
.km15-footer-inner { padding-bottom: 32px; }

@media (max-width: 767px) {
	body { padding-bottom: var(--km15-contact-bar-height, 0px); }
	html { scroll-padding-bottom: calc(var(--km15-contact-bar-height, 0px) + 12px); }
	.km15-contact-bar { display: block; padding: 8px 0 calc(8px + env(safe-area-inset-bottom)); border-top: 1px solid var(--km15-border); background: var(--km15-surface); }
	body.km15-contact-bar-enhanced .km15-contact-bar { position: fixed; z-index: 900; inset: auto 0 0; }
	.km15-contact-bar .km15-contact-actions { display: flex; gap: 0; }
	.km15-contact-bar .km15-button { display: flex; flex: 1 1 0; min-width: 0; min-height: 56px; padding: 8px 10px; border-radius: 0; font-size: .94rem; line-height: 1.3; }
	.km15-contact-bar .km15-button:only-child { flex-basis: 100%; }
}
