/* Mobile responsive overrides */
@media (max-width: 768px) {
    .hamburger-btn { display: block; background: none; border: none; cursor: pointer; padding: 4px; flex-shrink: 0; }
    .header { padding: 10px 12px !important; }
    .header .search { display: none; }
    .header .nav-right { display: none; }
    .header .logo { height: 35px !important; }
    .cat-nav { display: none; }
    .age-bar, .restrict-bar { font-size: 10px !important; padding: 8px 12px !important; }
    .warn-bar { font-size: 10px !important; padding: 8px 12px !important; }
    .promo-banner { font-size: 11px !important; padding: 8px !important; }

    /* Mobile search bar below header */
    .mobile-search { display: block; padding: 8px 12px; background: #000; }
    .mobile-search input { width: 100%; padding: 8px 12px; background: #1a1a1a; border: none; border-radius: 4px; color: #fff; font-size: 13px; font-family: Roboto, sans-serif; }
    .mobile-search input::placeholder { color: #666; }

    /* Mobile menu */
    .mobile-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 9990; opacity: 0; visibility: hidden; transition: opacity 0.3s; }
    .mobile-overlay.open { opacity: 1; visibility: visible; }
    .mobile-menu { position: fixed; top: 0; left: -300px; width: 280px; height: 100vh; background: #fff; z-index: 9991; transition: left 0.3s; overflow-y: auto; }
    .mobile-menu.open { left: 0; }
    .mobile-menu-header { display: flex; justify-content: space-between; align-items: center; padding: 16px; border-bottom: 1px solid #eee; }
    .mobile-menu a { display: block; padding: 12px 16px; font-size: 14px; color: #333; border-bottom: 1px solid #f5f5f5; }
    .mobile-menu a:hover { background: #f5f5f5; }
    .mobile-menu-divider { height: 1px; background: #eee; margin: 8px 0; }

    /* Cart drawer full width on mobile */
    .cart-drawer { width: 100% !important; max-width: 100vw !important; right: -100% !important; }
    .cart-drawer.open { right: 0 !important; }

    /* Mobile cart icon in header */
    .mobile-cart { display: flex; align-items: center; flex-shrink: 0; position: relative; cursor: pointer; }
    .mobile-cart svg { fill: none; stroke: #fff; }
    .mobile-cart-badge { position: absolute; top: -4px; right: -6px; background: #D14343; color: #fff; font-size: 9px; font-weight: 700; border-radius: 50%; width: 16px; height: 16px; display: flex; align-items: center; justify-content: center; }

    /* Product grid 2 cols */
    .grid { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }

    /* Footer 2 cols */
    .footer-cols { grid-template-columns: repeat(2, 1fr) !important; }
    .footer { padding: 24px 16px !important; }

    /* Sections */
    .section, .cat-section, .new-section { padding: 20px 12px !important; }
    .content { padding: 16px 12px !important; }

    /* Vertical categories hide on mobile */
    .vertical-categories { display: none !important; }
    .page-layout { display: block !important; }

    /* Account page */
    .acct-wrap { flex-direction: column; }
    .acct-nav { width: 100%; min-width: 0; display: flex; overflow-x: auto; border-bottom: 1px solid #eee; }
    .acct-nav a { white-space: nowrap; border-left: none; border-bottom: 3px solid transparent; padding: 10px 16px; }
    .acct-nav a.active { border-bottom-color: #476BEF; border-left-color: transparent; }
}

@media (min-width: 769px) {
    .hamburger-btn { display: none; }
    .mobile-search { display: none; }
    .mobile-cart { display: none; }
}
