/* Mobile contact bar, keyboard focus and skip link. Added after site-v2.css. */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid var(--primary) !important; outline-offset: 3px;
}
.skip-link { position: absolute; left: -999px; top: 8px; z-index: 1000; padding: 12px 16px; background: var(--text); color: #fff; font-weight: 600; border-radius: 8px; }
.skip-link:focus { left: 8px; }

/* sticky call / write bar on phones: the contact path is always one tap away */
.m-cta { display: none; }
@media (max-width: 720px) {
  body { padding-bottom: calc(68px + env(safe-area-inset-bottom)); }
  .m-cta { display: grid; grid-template-columns: 1fr 1.4fr; gap: 10px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.96); border-top: 1px solid var(--border); }
  .m-cta a { display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 10px; font-weight: 650; font-size: .98rem; border: 1.5px solid var(--text); color: var(--text); }
  .m-cta a.m-cta-main { background: var(--primary); border-color: var(--primary); color: #fff; }
}
