/* Phone menu (☰) + Contact page — Nov 2026 */
.menu-btn{display:none}
.mnav[hidden]{display:none!important}
@media (max-width:560px){
  .topbar-inner{gap:4px}
  .menu-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;margin-left:2px;padding:0;border:1.5px solid #d5dde8;border-radius:12px;background:#fff;color:#0b1324;cursor:pointer}
  .menu-btn:focus-visible{outline:2px solid #1fa3ff;outline-offset:2px}
  .mb-ico{display:grid;gap:4px;width:20px}
  .mb-ico i{display:block;height:2.5px;border-radius:2px;background:currentColor}
  .menu-btn[aria-expanded="true"]{background:#e8f4ff;border-color:#1fa3ff;color:#0b6fc2}
  .mnav{position:fixed;inset:0;z-index:50;background:rgba(4,7,15,.35)}
  .mnav-in{position:absolute;top:0;left:0;right:0;background:#fff;border-radius:0 0 20px 20px;box-shadow:0 12px 30px rgba(4,7,15,.18);padding:10px 16px 18px;max-height:100vh;overflow:auto;animation:mnavIn .18s ease-out}
  .mnav-top{display:flex;align-items:center;justify-content:space-between;min-height:48px;border-bottom:1px solid #e3e8ef;margin-bottom:4px}
  .mnav-top b{font-size:1.05rem;color:#0b1324}
  .mnav-x{width:44px;height:44px;border:0;background:transparent;font-size:2rem;line-height:1;color:#0b1324;cursor:pointer;border-radius:12px}
  .mnav-x:focus-visible{outline:2px solid #1fa3ff}
  .mnav ul{list-style:none;margin:0;padding:0}
  .mnav li a{display:flex;align-items:center;min-height:50px;padding:0 6px;border-bottom:1px solid #eef1f5;color:#0b1324;font-weight:700;font-size:1.05rem;text-decoration:none}
  .mnav li:last-child a{border-bottom:0}
  .mnav li a[aria-current="page"]{color:#0b6fc2}
  .mnav-wa{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;margin-top:10px;border-radius:14px;background:#25d366;color:#fff;font-weight:800;text-decoration:none}
  .mnav-wa .ico{width:22px;height:22px}
  body.mnav-open{overflow:hidden}
}
@keyframes mnavIn{from{transform:translateY(-12px);opacity:0}to{transform:none;opacity:1}}
/* Contact page */
.legal-hero .hours{margin:10px 0 0;display:inline-block;background:#e9f9ef;border:1px solid #bfe8cd;color:#14532d;border-radius:999px;padding:6px 14px;font-size:.95rem}
.contact-btns{display:grid;gap:12px;margin:0 0 16px}
.cbtn{display:flex;align-items:center;gap:12px;min-height:62px;padding:0 20px;border-radius:16px;font-weight:800;font-size:1.08rem;text-decoration:none;box-shadow:var(--shadow);overflow-wrap:anywhere}
.cbtn .ico{width:26px;height:26px;flex:none}
.cbtn-wa{background:#25d366;color:#fff}
.cbtn-tel{background:#1fa3ff;color:#fff}
.cbtn-mail{background:#fff;color:#0b1324;border:1.5px solid #d5dde8}
.cbtn-book{background:#04070f;color:#fff}
.cbtn:focus-visible{outline:3px solid #5cc8ff;outline-offset:2px}
.c-social .sf-soc{background:#f2f6fb;border-color:#d5dde8;color:#0b1324}
.c-social .sf-soc:hover{background:#1fa3ff;color:#fff}
@media (min-width:760px){.contact-btns{grid-template-columns:1fr 1fr}}

@media (max-width:420px){
  .topbar .wrap.topbar-inner,.topbar-inner{padding-left:10px;padding-right:10px}
  .top-logo img{height:32px}
  .menu-btn{width:40px;height:40px;margin-left:0}
  .nav a{padding:0 6px}
}
@media (max-width:350px){.top-logo img{height:28px}.nav a{font-size:.8rem;padding:0 4px}}
