/* HOME PAGE — MOBILE (max 640px) — FONTE ÚNICA DE VERDADE */
@media screen and (max-width: 640px) {

  html, body { overflow-x: hidden !important; }

  /* HEADER */
  .header-top-inner { padding: 8px 12px !important; gap: 8px !important; }
  .logo img         { height: 30px !important; max-width: none !important; }
  .hdr-contact, .hdr-login, .hdr-sep { display: none !important; }
  .nav              { display: none !important; }
  .hamburger        { display: flex !important; }
  .produtos-dropdown { display: none !important; }

  /* CAT-BAR — scroll horizontal */
  .cat-bar          { overflow-x: auto !important; overflow-y: hidden !important; white-space: nowrap !important; }
  .cat-bar-inner    { display: inline-flex !important; padding: 8px 10px !important; gap: 0 !important; min-width: unset !important; }
  .cb-item          { display: inline-flex !important; flex-direction: column !important; align-items: center !important; padding: 4px 10px !important; gap: 4px !important; }
  .cb-img           { width: 56px !important; height: 44px !important; }
  .cb-img img       { width: 100% !important; height: 100% !important; object-fit: contain !important; }
  .cb-item > span   { font-size: 9px !important; white-space: nowrap !important; }

  /* HERO CAROUSEL */
  .hero-carousel    { overflow: hidden !important; width: 100% !important; }
  .carousel-track   { display: flex !important; width: 100% !important; }
  .carousel-slide   { min-width: 100% !important; width: 100% !important; flex-shrink: 0 !important; overflow: hidden !important; }
  .carousel-slide a { display: block !important; width: 100% !important; }
  .carousel-slide img { width: 100% !important; height: 200px !important; object-fit: cover !important; display: block !important; max-width: 100% !important; }
  .carousel-btn     { width: 34px !important; height: 34px !important; }

  /* BADGES BAR */
  .badges-bar       { overflow: hidden !important; }
  .badges-inner     { overflow-x: auto !important; flex-wrap: nowrap !important; gap: 0 !important; padding: 6px 10px !important; }
  .badge-item       { flex-shrink: 0 !important; font-size: 10px !important; padding: 0 10px !important; white-space: nowrap !important; }
  .badge-sep        { display: none !important; }

  /* CAT CAROUSEL */
  .cat-carousel-section { padding: 18px 0 14px !important; overflow: hidden !important; }
  .cat-carousel-head    { padding: 0 12px !important; margin-bottom: 12px !important; }
  .cat-carousel-head h2 { font-size: 16px !important; }
  .cat-track-outer      { overflow: hidden !important; padding: 0 12px !important; }
  .cat-track            { gap: 10px !important; }
  .cat-card             { min-width: 140px !important; flex: 0 0 140px !important; border-radius: 8px !important; }
  .cat-img-wrap         { height: 110px !important; aspect-ratio: unset !important; overflow: hidden !important; border-radius: 8px 8px 0 0 !important; }
  .cat-img-wrap img     { width: 100% !important; height: 100% !important; object-fit: cover !important; max-width: 100% !important; }
  .cat-name             { font-size: 11px !important; padding: 5px 7px !important; }
  .cat-prev, .cat-next  { display: none !important; }

  /* PRODUTOS */
  .products-section   { padding: 18px 10px !important; overflow: hidden !important; }
  .section-head       { margin-bottom: 12px !important; }
  .section-head h2    { font-size: 16px !important; }
  .section-head p     { font-size: 12px !important; }
  .products-grid,
  .products-grid-5    { grid-template-columns: repeat(2,1fr) !important; gap: 8px !important; }

  /* PRODUCT CARD */
  .product-card       { border-radius: 8px !important; overflow: hidden !important; }
  .product-img-wrap   {
    height: 140px !important;
    aspect-ratio: unset !important;
    overflow: hidden !important;
    border-radius: 8px 8px 0 0 !important;
    background: #f5f5f5 !important;
  }
  .product-img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    max-width: 100% !important;
  }
  .product-info       { padding: 7px 8px 9px !important; }
  .product-info h3    { font-size: 11px !important; line-height: 1.3 !important; margin-bottom: 3px !important; }
  .prod-colors        { font-size: 10px !important; margin-bottom: 4px !important; }
  .price-old          { font-size: 10px !important; }
  .price-new          { font-size: 13px !important; }
  .badge-off          { font-size: 9px !important; padding: 2px 5px !important; top: 6px !important; left: 6px !important; }

  /* NEWSLETTER */
  .newsletter-section { overflow: hidden !important; }
  .newsletter-box     { flex-direction: column !important; gap: 16px !important; }
  .nl-text            { min-width: 0 !important; width: 100% !important; }
  .nl-text h2         { font-size: 18px !important; }
  .nl-form            { min-width: 0 !important; width: 100% !important; }
  .nl-form input,
  .nl-form button     { width: 100% !important; }

  /* FOOTER */
  .footer             { overflow: hidden !important; }
  .footer-inner       { grid-template-columns: 1fr !important; gap: 18px !important; }
  .footer-section h3  { font-size: 13px !important; }
  .footer-link        { font-size: 12px !important; }
  .footer-bottom      { flex-direction: column !important; gap: 5px !important; text-align: center !important; }
  .footer-bottom p    { font-size: 11px !important; }

  /* CART DRAWER */
  .cart-drawer        { width: 100% !important; right: -100% !important; }
}

@media screen and (max-width: 400px) {
  .logo img           { height: 26px !important; }
  .carousel-slide img { height: 170px !important; }
  .cat-card           { min-width: 120px !important; flex: 0 0 120px !important; }
  .cat-img-wrap       { height: 95px !important; }
  .product-img-wrap   { height: 120px !important; }
  .product-info h3    { font-size: 11px !important; }
  .price-new          { font-size: 12px !important; }
  .section-head h2    { font-size: 15px !important; }
}
