/* ── Shared header/nav styles — matches homepage design ── */
.nav-cta-desktop { display:none !important; }
@media(min-width:768px) { .nav-cta-desktop { display:block !important; } }
.nav-cta-mobile { display:flex !important; }
@media(min-width:768px) { .nav-cta-mobile { display:none !important; } }
.mobile-menu-btn {
  display:flex; align-items:center; justify-content:center;
  width:40px; height:40px; border-radius:8px; border:1.5px solid #e5e7eb;
  background:#fff; cursor:pointer; flex-shrink:0;
}
.mobile-menu-btn .ph { font-size:20px; color:#111; }
.nav-link-item { display:flex; align-items:center; }
.nav-link {
  font-weight:600; font-size:14px; color:#374151; text-decoration:none;
  padding:8px 4px; border-bottom:2px solid transparent; transition:color .2s, border-color .2s;
}
.nav-link:hover { color:#2671b4; border-color:#2671b4; }
.nav-btn {
  display:inline-flex; align-items:center; gap:6px; white-space:nowrap;
  font-weight:700; font-size:13.5px; padding:10px 18px; border-radius:8px;
  cursor:pointer; transition:transform .15s ease, box-shadow .15s ease; border:none;
}
.nav-btn:hover { transform:translateY(-1px); }
.nav-btn-outline { background:#fff; color:#111; border:1.5px solid #d1d5db; }
.nav-btn-outline:hover { border-color:#111; }
.nav-btn-solid { background:#2671b4; color:#fff; box-shadow:0 4px 12px rgba(38,113,180,.3); }
.nav-btn-solid:hover { box-shadow:0 6px 16px rgba(38,113,180,.4); }
/* Guaranteed override — theme's .-translate-x-full utility was winning over .popup_item.open */
.popup_item.open { transform:translate(0) !important; }
#popup_menu_mobile { z-index:10002; overflow-y:auto; }

/* ── Top utility bar — must always fit on one line, never wrap ── */
@media(max-width:640px) {
  .top-nav-hours { display:none !important; }
  .top-nav-cities .caption1 { font-size:12px !important; }
  .top_nav_info { gap:8px !important; }
}
@media(max-width:400px) {
  .top-nav-cities .caption1 { font-size:11px !important; }
}

/* ── Hero CTA buttons — matches homepage hero-btn style ── */
.hero-cta-pair { display:flex; gap:12px; margin-top:0; }
@media(max-width:640px) { .hero-cta-pair { flex-direction:column; } }
.hero-btn {
  display:flex; align-items:center; justify-content:center; gap:9px;
  padding:16px 20px; border-radius:12px; font-weight:800; font-size:15px;
  letter-spacing:.2px; cursor:pointer; border:none; transition:transform .15s ease, box-shadow .15s ease;
  flex:1 1 0; min-width:0; text-align:center; white-space:nowrap;
}
.hero-btn.hero-btn-primary {
  background:linear-gradient(135deg,#3b82d6,#194975); color:#fff;
  box-shadow:0 10px 24px rgba(38,113,180,.35);
}
.hero-btn.hero-btn-primary:hover { transform:translateY(-2px); box-shadow:0 14px 28px rgba(38,113,180,.42); }
.hero-btn.hero-btn-secondary { background:#fff; color:#111; border:2px solid #111; }
.hero-btn.hero-btn-secondary:hover { transform:translateY(-2px); background:#111; color:#fff; }
.hero-btn .icon-circle {
  display:flex; align-items:center; justify-content:center;
  width:22px; height:22px; border-radius:50%; background:rgba(255,255,255,.2); flex-shrink:0; font-size:12px;
}
.hero-btn-secondary .icon-circle { background:#f3f4f6; }
