
/* Mobile nav menu (desktop: hidden) */
@media (min-width: 761px) {
  .nav-menu-wrap,
  .nav-mobile-menu {
    display: none !important;
  }
  .nav-inner {
    justify-content: flex-start;
  }
  .nav.nav-ready .nav-links,
  .nav-links {
    display: flex !important;
    flex: 1;
    justify-content: center;
    align-items: center;
    gap: 8px;
    min-width: 0;
  }
  .nav-links .nav-link,
  .nav-links .nav-call {
    display: inline-flex !important;
  }
  .nav-tools {
    display: flex !important;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    margin-left: auto;
  }
  .nav-tools .account {
    margin-left: 0;
  }
}

.nav-menu-wrap { display: none; }
.nav-mobile-menu { display: none; }
.nav-tools { display: flex; align-items: center; gap: 8px; flex-shrink: 0; margin-left: auto; }
@media (max-width: 760px) {
  .nav-menu-wrap {
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }
  .nav-tools {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
  }
  .nav-menu-btn { display: inline-flex; }
}
@media (max-width: 760px) {
  section { padding: 48px 16px; }
  .section-lead { font-size: 15px; margin-bottom: 28px; }
  .section-title { font-size: clamp(24px, 7vw, 32px); }
  .howit-section { padding: 48px 16px; }
  .partners-section { padding: 40px 16px; }
  .trust-strip { padding: 20px 16px; }
  .request-card { padding: 22px 16px; }
  .request-card h2 { font-size: 22px; }
  .nav-inner {
    flex-wrap: nowrap;
    padding: 10px 14px;
    gap: 10px;
    align-items: center;
  }
  .brand-logo { height: 38px; }
  .nav-links .nav-link,
  .nav-links .nav-call {
    display: none !important;
  }
  .nav.nav-ready .nav-links {
    display: none;
  }
  .nav-tools {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
  }
  .nav-menu-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 10px;
    background: rgba(255,255,255,0.05);
    color: #fff;
    cursor: pointer;
  }
  .nav-menu-btn:hover {
    border-color: #E10E1A;
    background: rgba(225,14,26,0.14);
  }
  .nav-menu-btn svg {
    width: 22px;
    height: 22px;
  }
  .nav-mobile-menu {
    display: none;
    grid-template-columns: 1fr;
    gap: 4px;
    padding: 10px 14px 14px;
    border-top: 1px solid #262626;
    background: #0a0a0a;
  }
  .nav.nav-menu-open .nav-mobile-menu {
    display: grid !important;
  }
  .nav-mobile-link,
  .nav-mobile-call {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    color: #d4d4d4;
  }
  .nav-mobile-link:hover,
  .nav-mobile-call:hover {
    color: #fff;
    background: rgba(255,255,255,0.06);
    text-decoration: none;
  }
  .nav-mobile-call {
    font-family: "JetBrains Mono", ui-monospace, monospace;
    font-size: 14px;
    color: #fff;
    border: 1px solid rgba(225,14,26,0.45);
    background: rgba(225,14,26,0.12);
    margin-top: 4px;
    justify-content: center;
  }



  .nav-cart-btn, .account-btn { width: 42px; height: 42px; }
  .hero-inner { padding: 44px 16px 52px; gap: 22px; }
  .hero h1 { font-size: clamp(28px, 8.5vw, 40px); margin: 10px 0 14px; }
  .hero-sub { font-size: 15px; margin-bottom: 20px; }
  .hero-cta-row { flex-direction: column; width: 100%; gap: 10px; }
  .hero-cta-row .btn-primary, .hero-cta-row .btn-secondary { width: 100%; justify-content: center; min-height: 48px; }
  .hero-meta { flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 22px; font-size: 13px; }
  .hero-slideshow { min-height: 260px; }
  .hero-slideshow-viewport { min-height: 220px; }
  .hero-slide-media { min-height: 160px; }
  .trust-grid { grid-template-columns: 1fr; gap: 14px; }
  .pill-toggle { min-height: 44px; padding: 10px 14px; }
  .req-submit-row { flex-direction: column; align-items: stretch; }
  .req-submit-row .btn-primary { width: 100%; justify-content: center; min-height: 48px; }
  .portal-bg { padding: 20px 14px 72px; }
  .portal-hello h2 { font-size: 24px; }
  .portal-card { padding: 16px; }
  .portal-panel-head { display: flex; flex-direction: column; align-items: stretch; gap: 12px; margin-bottom: 14px; }
  .portal-panel-head h3 { margin: 0; font-size: 17px; }
  .portal-panel-head .btn-primary { width: 100%; justify-content: center; min-height: 44px; }
  .portal-request-form-head { flex-direction: column; align-items: stretch; gap: 10px; }
  .portal-request-form-head .btn-secondary { width: 100%; justify-content: center; min-height: 44px; }
  .portal-profile-actions { flex-direction: column; }
  .portal-profile-actions .btn-primary, .portal-profile-actions .btn-secondary { width: 100%; min-height: 44px; justify-content: center; }
  .portal-req-top { flex-direction: column; align-items: flex-start; }
  .modal-back { padding: 10px; align-items: flex-end; }
  .modal { max-width: 100%; width: 100%; border-radius: 16px 16px 0 0; max-height: 92vh; overflow-y: auto; padding: 22px 16px calc(18px + env(safe-area-inset-bottom, 0px)); }
  .modal-actions { flex-direction: column; }
  .modal-actions .btn-primary, .modal-actions .btn-secondary { width: 100%; min-height: 48px; justify-content: center; }
  .btn-google { min-height: 48px; }
  .chat-fab { width: 52px; height: 52px; bottom: calc(14px + env(safe-area-inset-bottom, 0px)); right: calc(12px + env(safe-area-inset-right, 0px)); }
  .chat-panel { width: calc(100vw - 20px); max-width: none; right: 10px; left: 10px; bottom: calc(76px + env(safe-area-inset-bottom, 0px)); max-height: min(72vh, 480px); }
  footer { padding: 40px 16px; }
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  main { padding: 32px 16px 56px; }
  h1 { font-size: clamp(26px, 7vw, 36px); }
  .lead { font-size: 15px; }
  .shop-card { grid-template-columns: 72px 1fr; padding: 14px; }
  .shop-img { width: 72px; height: 72px; }
  .shop-actions { flex-wrap: wrap; }
  .shop-actions .btn { min-height: 44px; justify-content: center; }
  .shop-qty { min-height: 44px; font-size: 16px; }
  .product-actions { flex-direction: column; align-items: stretch; }
  .product-actions .btn { width: 100%; min-height: 48px; justify-content: center; }
  .address-grid { grid-template-columns: 1fr; }
  .rate-option { padding: 14px 12px; min-height: 48px; }
  .cart-body { max-height: none; }
}
@media (max-width: 400px) {
  .hero-slideshow { min-height: 220px; }
  .hero-slideshow-viewport { min-height: 190px; }
}