/*
 * Vitrine Sorriso - revisão final de responsividade, acessibilidade e estabilidade.
 * Camada segura: somente visual e pequenos padrões globais.
 */
html{
    scroll-behavior:smooth;
}

/* Correção: carrossel patrocinado sempre em coverflow, nunca card vertical gigante. */
.home-sponsored-showcase{display:block!important;overflow:hidden!important}
.home-sponsored-showcase #ofertas_patrocinadas.sponsored-carousel-3d{position:relative!important;width:100%!important;max-width:100%!important;overflow:hidden!important;padding:8px 0 18px!important}
.home-sponsored-showcase .sponsored-carousel-viewport{width:100%!important;overflow:hidden!important;touch-action:pan-y!important;user-select:none!important}
.home-sponsored-showcase .sponsored-carousel-track{display:flex!important;align-items:stretch!important;gap:14px!important;width:max-content!important;max-width:none!important;height:auto!important;position:relative!important;will-change:transform!important;transition:transform 420ms cubic-bezier(.22,.61,.36,1)!important}
.home-sponsored-showcase .sponsored-slide{position:relative!important;top:auto!important;left:auto!important;flex:0 0 74%!important;min-width:74%!important;max-width:74%!important;width:74%!important;opacity:.62!important;pointer-events:auto!important;transform:scale(.86)!important;transition:transform 360ms ease,opacity 360ms ease,filter 360ms ease!important;filter:saturate(.9)!important;z-index:1!important}
.home-sponsored-showcase .sponsored-slide.is-active{opacity:1!important;transform:scale(1)!important;z-index:3!important;filter:saturate(1)!important}
.home-sponsored-showcase .sponsored-slide.is-prev,
.home-sponsored-showcase .sponsored-slide.is-next{opacity:.74!important;transform:scale(.86)!important;z-index:1!important}
.home-sponsored-showcase .sponsored-slide.is-hidden{opacity:0!important;pointer-events:none!important;transform:scale(.78)!important}
.home-sponsored-showcase .sponsored-slide .sponsored-card{width:100%!important;max-width:100%!important;min-width:0!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:24px!important;overflow:hidden!important;box-shadow:0 14px 34px rgba(15,23,42,.12)!important;position:relative!important;display:flex!important;flex-direction:column!important}
.home-sponsored-showcase .sponsored-slide.is-active .sponsored-card{box-shadow:0 18px 46px rgba(15,23,42,.18)!important}
.home-sponsored-showcase .sponsored-slide .card-image{width:100%!important;height:220px!important;aspect-ratio:auto!important;background:#f8fafc!important;overflow:hidden!important;position:relative!important}
.home-sponsored-showcase .sponsored-slide .card-image img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}
.home-sponsored-showcase .sponsored-slide .card-body{padding:14px 14px 16px!important}
.home-sponsored-showcase .sponsored-slide .card-title{font-size:17px!important;line-height:1.22!important;font-weight:900!important;color:#0f172a!important;margin:0 0 10px!important;min-height:42px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.home-sponsored-showcase .sponsored-slide .default-subtitle{font-size:14px!important;line-height:1.35!important;color:#64748b!important;margin:0 0 12px!important;min-height:38px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.home-sponsored-showcase .sponsored-slide .price-new{font-size:22px!important;line-height:1!important;font-weight:900!important;color:#16a34a!important}
.home-sponsored-showcase .sponsored-slide .price-old{font-size:13px!important;color:#94a3b8!important;text-decoration:line-through!important;margin-left:6px!important}
.home-sponsored-showcase .sponsored-slide .pickup-badge{display:inline-flex!important;align-items:center!important;gap:5px!important;width:auto!important;background:#dcfce7!important;color:#0f7a35!important;border-radius:999px!important;padding:6px 10px!important;font-size:12px!important;font-weight:800!important;margin:0 0 12px!important}
.home-sponsored-showcase .sponsored-slide .sponsored-label{position:absolute!important;top:12px!important;left:12px!important;z-index:5!important;background:#fef3c7!important;color:#92400e!important;border-radius:999px!important;padding:5px 9px!important;font-size:11px!important;font-weight:900!important;line-height:1!important}
.home-sponsored-showcase .sponsored-slide .favorite-btn{position:absolute!important;top:12px!important;right:12px!important;z-index:4!important;width:46px!important;height:46px!important;min-height:46px!important;border-radius:999px!important;background:rgba(255,255,255,.92)!important;border:1px solid #e2e8f0!important;box-shadow:0 8px 20px rgba(15,23,42,.12)!important;color:#e11d48!important}
.home-sponsored-showcase .sponsored-slide .card-button{width:100%!important;height:48px!important;min-height:48px!important;border-radius:16px!important;background:#16a34a!important;color:#fff!important;border:0!important;font-size:15px!important;font-weight:900!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important}
.home-sponsored-showcase .sponsored-carousel-dots{display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;margin:12px 0 0!important}
.home-sponsored-showcase .sponsored-carousel-dot{width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;padding:0!important;border:0!important;border-radius:999px!important;background:#cbd5e1!important;transition:all 250ms ease!important}
.home-sponsored-showcase .sponsored-carousel-dot.is-active{width:24px!important;background:#16a34a!important}
@media (max-width:768px){
    .home-sponsored-showcase{margin-top:22px!important;margin-bottom:22px!important}
    .home-sponsored-showcase .container{padding-left:0!important;padding-right:0!important}
    .home-sponsored-showcase .section-header{padding:0 20px!important;margin-bottom:14px!important}
    .home-sponsored-showcase .section-title{font-size:30px!important;line-height:1.1!important;font-weight:900!important;color:#0f172a!important;margin:0 0 12px!important}
    .home-sponsored-showcase .sponsored-slide{flex-basis:74%!important;min-width:74%!important;max-width:74%!important;width:74%!important}
}
@media (max-width:380px){
    .home-sponsored-showcase .sponsored-slide{flex-basis:75%!important;min-width:75%!important;max-width:75%!important;width:75%!important}
    .home-sponsored-showcase .sponsored-slide .card-image{height:198px!important}
    .home-sponsored-showcase .sponsored-slide .card-body{padding:12px!important}
}
@media (min-width:769px){
    .home-sponsored-showcase{max-width:1440px!important;margin:40px auto!important;padding:0 32px!important;overflow:hidden!important}
    .home-sponsored-showcase .container{max-width:100%!important;width:100%!important;padding:0!important}
    .home-sponsored-showcase .sponsored-carousel-track{gap:22px!important}
    .home-sponsored-showcase .sponsored-slide{flex:0 0 320px!important;min-width:320px!important;max-width:320px!important;width:320px!important}
    .home-sponsored-showcase .sponsored-slide .card-image{height:auto!important;aspect-ratio:1/1!important}
}

/* Home: patrocinados em coverflow e produtos gerais em grid. */
.home-sponsored-showcase{display:none;overflow:hidden}
.home-sponsored-showcase:has(.sponsored-slide){display:block}
.home-sponsored-showcase:has(.products-coverflow__slide){display:block}
.home-sponsored-showcase #ofertas_patrocinadas.sponsored-carousel-3d{display:block!important;position:relative!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:8px 0 18px!important;overflow:hidden!important}
.home-sponsored-showcase .sponsored-carousel-viewport{position:relative!important;width:100%!important;height:520px!important;overflow:hidden!important;touch-action:pan-y!important;user-select:none!important}
.home-sponsored-showcase .sponsored-carousel-track{position:relative!important;width:100%!important;height:100%!important;display:block!important;transform:none!important}
.home-sponsored-showcase .sponsored-slide{position:absolute!important;top:10px!important;left:50%!important;flex:none!important;width:min(74vw,330px)!important;max-width:330px!important;min-width:0!important;opacity:0!important;pointer-events:none!important;transform:translateX(-50%) scale(.74)!important;transition:transform 420ms cubic-bezier(.22,.61,.36,1),opacity 420ms ease,filter 420ms ease!important;z-index:1!important}
.home-sponsored-showcase .sponsored-slide.is-active{opacity:1!important;pointer-events:auto!important;transform:translateX(-50%) scale(1)!important;z-index:6!important;filter:saturate(1)!important}
.home-sponsored-showcase .sponsored-slide.is-prev{opacity:.72!important;pointer-events:auto!important;transform:translateX(calc(-50% - min(61vw,290px))) scale(.84)!important;z-index:3!important;filter:saturate(.88)!important}
.home-sponsored-showcase .sponsored-slide.is-next{opacity:.72!important;pointer-events:auto!important;transform:translateX(calc(-50% + min(61vw,290px))) scale(.84)!important;z-index:3!important;filter:saturate(.88)!important}
.home-sponsored-showcase .sponsored-slide.is-hidden{opacity:0!important;pointer-events:none!important;z-index:0!important}
.home-sponsored-showcase .sponsored-slide .product-card{width:100%!important;max-width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important;border-radius:24px!important;overflow:hidden!important;background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 14px 34px rgba(15,23,42,.12)!important;position:relative!important}
.home-sponsored-showcase .sponsored-slide.is-active .product-card{box-shadow:0 18px 46px rgba(15,23,42,.18)!important}
.home-sponsored-showcase .sponsored-slide .card-image{width:100%!important;height:220px!important;min-height:0!important;aspect-ratio:auto!important;background:#f8fafc!important;overflow:hidden!important}
.home-sponsored-showcase .sponsored-slide .card-image img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}
.home-sponsored-showcase .sponsored-slide .card-body{padding:14px 14px 16px!important}
.home-sponsored-showcase .sponsored-slide .card-title{font-size:16px!important;line-height:1.22!important;font-weight:900!important;color:#0f172a!important;min-height:40px!important;margin:0 0 10px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.home-sponsored-showcase .sponsored-slide .price-new{font-size:21px!important;line-height:1!important;font-weight:900!important;color:#16a34a!important}
.home-sponsored-showcase .sponsored-slide .card-button{width:100%!important;height:48px!important;min-height:48px!important;border-radius:16px!important;background:#16a34a!important;color:#fff!important;font-size:15px!important;font-weight:900!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;padding:0 10px!important;white-space:nowrap!important}
.home-sponsored-showcase .sponsored-slide .favorite-btn{position:absolute!important;top:12px!important;right:12px!important;z-index:8!important;width:46px!important;height:46px!important;min-height:46px!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;border:1px solid #e2e8f0!important;box-shadow:0 8px 20px rgba(15,23,42,.12)!important;color:#e11d48!important}
.home-sponsored-showcase .sponsored-slide .sponsored-label{position:absolute!important;top:12px!important;left:12px!important;z-index:9!important;display:inline-flex!important;align-items:center!important;gap:5px!important;width:auto!important;background:#fef3c7!important;color:#92400e!important;border:1px solid rgba(146,64,14,.12)!important;border-radius:999px!important;padding:5px 9px!important;font-size:11px!important;line-height:1!important;font-weight:900!important;box-shadow:0 8px 18px rgba(15,23,42,.10)!important}
.home-sponsored-showcase .sponsored-slide .sale-badge{top:42px!important;left:12px!important}
.home-sponsored-showcase .sponsored-carousel-dots{display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;min-height:20px!important;margin:12px 0 0!important}
.home-sponsored-showcase .sponsored-carousel-dot{width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;padding:0!important;border:0!important;border-radius:999px!important;background:#cbd5e1!important;transition:all 250ms ease!important}
.home-sponsored-showcase .sponsored-carousel-dot.is-active{width:24px!important;background:#16a34a!important}
.home-sponsored-showcase .section-subtitle{margin:6px 0 0;color:#64748b;font-size:15px;line-height:1.4;font-weight:700}
.home-sponsored-showcase #ofertas_patrocinadas.product-carousel-3d,
.home-sponsored-showcase #ofertas_patrocinadas.products-coverflow{display:block!important;position:relative!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:8px 0 12px!important;overflow:hidden!important}
.home-sponsored-showcase .products-coverflow__viewport{position:relative!important;width:100%!important;height:520px!important;overflow:hidden!important;touch-action:pan-y!important;user-select:none!important}
.home-sponsored-showcase .products-coverflow__stage{position:relative!important;width:100%!important;height:100%!important;display:block!important;transform:none!important}
.home-sponsored-showcase .products-coverflow__slide{position:absolute!important;top:10px!important;left:50%!important;flex:none!important;width:min(74vw,330px)!important;max-width:330px!important;min-width:0!important;opacity:0!important;pointer-events:none!important;transform:translateX(-50%) scale(.74)!important;transition:transform 420ms cubic-bezier(.22,.61,.36,1),opacity 420ms ease,filter 420ms ease!important;z-index:1!important}
.home-sponsored-showcase .products-coverflow__slide.is-active{opacity:1!important;pointer-events:auto!important;transform:translateX(-50%) scale(1)!important;z-index:6!important}
.home-sponsored-showcase .products-coverflow__slide.is-prev{opacity:.72!important;pointer-events:auto!important;transform:translateX(calc(-50% - min(61vw,290px))) scale(.84)!important;z-index:3!important;filter:saturate(.88)!important}
.home-sponsored-showcase .products-coverflow__slide.is-next{opacity:.72!important;pointer-events:auto!important;transform:translateX(calc(-50% + min(61vw,290px))) scale(.84)!important;z-index:3!important;filter:saturate(.88)!important}
.home-sponsored-showcase .products-coverflow__slide.is-hidden{opacity:0!important;pointer-events:none!important;z-index:0!important}
.home-sponsored-showcase .products-coverflow__slide .product-card{width:100%!important;max-width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important;border-radius:24px!important;overflow:hidden!important;background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 14px 34px rgba(15,23,42,.12)!important;position:relative!important}
.home-sponsored-showcase .products-coverflow__slide.is-active .product-card{box-shadow:0 18px 46px rgba(15,23,42,.18)!important}
.home-sponsored-showcase .products-coverflow__slide .card-image{width:100%!important;height:220px!important;min-height:0!important;aspect-ratio:auto!important;background:#f8fafc!important;overflow:hidden!important}
.home-sponsored-showcase .products-coverflow__slide .card-image img{width:100%!important;height:100%!important;object-fit:contain!important}
.home-sponsored-showcase .products-coverflow__slide .sponsored-label{position:absolute!important;top:12px!important;left:12px!important;z-index:9!important;display:inline-flex!important;align-items:center!important;gap:5px!important;width:auto!important;background:#fef3c7!important;color:#92400e!important;border:1px solid rgba(146,64,14,.12)!important;border-radius:999px!important;padding:5px 9px!important;font-size:11px!important;line-height:1!important;font-weight:900!important;box-shadow:0 8px 18px rgba(15,23,42,.10)!important}
.home-sponsored-showcase .products-coverflow__slide .sale-badge{top:42px!important;left:12px!important}
.home-sponsored-showcase .products-coverflow__dots{display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;min-height:20px!important;margin:12px 0 0!important}
.home-sponsored-showcase .products-coverflow__dot{width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;padding:0!important;border:0!important;border-radius:999px!important;background:#cbd5e1!important}
.home-sponsored-showcase .products-coverflow__dot.is-active{width:24px!important;background:#16a34a!important}
.home-products-grid-section #listar_produtos.products-ml-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;max-width:100%!important;padding:0!important;overflow:visible!important}
body .home-products-grid-section #listar_produtos.products-ml-grid.product-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;max-width:100%!important;padding:0!important;overflow:visible!important}
.home-products-grid-section #listar_produtos.products-ml-grid .product-card{width:100%!important;min-width:0!important;max-width:100%!important;display:flex!important;flex-direction:column!important;border-radius:18px!important;overflow:hidden!important;background:#fff!important;border:1px solid #e2e8f0!important;box-shadow:0 8px 22px rgba(15,23,42,.06)!important}
.home-products-grid-section #listar_produtos.products-ml-grid .card-image{width:100%!important;height:auto!important;aspect-ratio:1/1!important;background:#f8fafc!important;overflow:hidden!important;position:relative!important}
.home-products-grid-section #listar_produtos.products-ml-grid .card-image img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}
.home-products-grid-section #listar_produtos.products-ml-grid .card-body{padding:10px!important}
.home-products-grid-section #listar_produtos.products-ml-grid .card-store{display:flex!important;align-items:center!important;gap:4px!important;font-size:12px!important;line-height:1.25!important;color:#64748b!important;font-weight:700!important;margin:0 0 5px!important}
.home-products-grid-section #listar_produtos.products-ml-grid .card-title{font-size:14px!important;line-height:1.25!important;min-height:36px!important;margin:0 0 8px!important;font-weight:800!important;color:#0f172a!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.home-products-grid-section #listar_produtos.products-ml-grid .card-price{margin:0 0 6px!important}
.home-products-grid-section #listar_produtos.products-ml-grid .price-new{font-size:18px!important;line-height:1!important;font-weight:900!important;color:#16a34a!important}
.home-products-grid-section #listar_produtos.products-ml-grid .price-old{font-size:12px!important;color:#94a3b8!important;text-decoration:line-through!important;margin-left:4px!important}
.home-products-grid-section #listar_produtos.products-ml-grid .pickup-badge{display:inline-flex!important;align-items:center!important;gap:4px!important;width:auto!important;border-radius:999px!important;background:#dcfce7!important;color:#0f7a35!important;padding:5px 8px!important;font-size:11px!important;line-height:1!important;font-weight:800!important;margin:0 0 8px!important}
.home-products-grid-section #listar_produtos.products-ml-grid .card-button{width:100%!important;height:38px!important;min-height:38px!important;border-radius:12px!important;background:#16a34a!important;color:#fff!important;font-size:13px!important;font-weight:900!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important}
.home-products-grid-section #listar_produtos.products-ml-grid .favorite-btn{width:38px!important;height:38px!important;min-height:38px!important;top:8px!important;right:8px!important}
.home-products-grid-section #listar_produtos.products-ml-grid .sale-badge{top:8px!important;left:8px!important;font-size:11px!important;padding:4px 7px!important}
.home-products-grid-section .load-more-products{width:100%;height:48px;border-radius:16px;background:#fff;color:#16a34a;border:1px solid #16a34a;font-weight:900;margin-top:16px}
@media (max-width:768px){
    .home-sponsored-showcase,.home-products-grid-section{margin-top:24px!important;margin-bottom:24px!important}
    .home-products-grid-section .container{padding-left:16px!important;padding-right:16px!important}
    .home-sponsored-showcase .container{padding-left:0!important;padding-right:0!important}
    .home-sponsored-showcase .section-header{padding-left:20px!important;padding-right:20px!important;margin-bottom:14px!important}
    .home-sponsored-showcase .section-title,.home-products-grid-section .section-title{font-size:28px!important;line-height:1.1!important;font-weight:900!important;color:#0f172a!important;margin:0 0 10px!important}
    .home-products-grid-section .section-tabs{display:none!important}
    .home-products-grid-section .regular-offers-head{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;margin-bottom:14px!important}
    .home-products-grid-section .regular-offers-title{color:#0f172a!important;font-size:16px!important;font-weight:800!important}
    .home-products-grid-section .regular-offers-count{color:#64748b!important;font-size:14px!important;font-weight:700!important}
    .home-sponsored-showcase .products-coverflow__viewport{height:510px!important}
    .home-sponsored-showcase .products-coverflow__slide{width:74vw!important;max-width:318px!important}
    .home-sponsored-showcase .products-coverflow__slide.is-prev{transform:translateX(calc(-50% - 62vw)) scale(.84)!important}
    .home-sponsored-showcase .products-coverflow__slide.is-next{transform:translateX(calc(-50% + 62vw)) scale(.84)!important}
    .home-sponsored-showcase .sponsored-carousel-viewport{height:510px!important}
    .home-sponsored-showcase .sponsored-slide{width:74vw!important;max-width:318px!important}
    .home-sponsored-showcase .sponsored-slide.is-prev{transform:translateX(calc(-50% - 62vw)) scale(.84)!important}
    .home-sponsored-showcase .sponsored-slide.is-next{transform:translateX(calc(-50% + 62vw)) scale(.84)!important}
}
@media (max-width:380px){
    .home-sponsored-showcase .products-coverflow__viewport{height:492px!important}
    .home-sponsored-showcase .products-coverflow__slide{width:75vw!important;max-width:292px!important}
    .home-sponsored-showcase .products-coverflow__slide .card-image{height:198px!important}
    .home-sponsored-showcase .products-coverflow__slide .card-body{padding:12px!important}
    .home-sponsored-showcase .sponsored-carousel-viewport{height:492px!important}
    .home-sponsored-showcase .sponsored-slide{width:75vw!important;max-width:292px!important}
    .home-sponsored-showcase .sponsored-slide .card-image{height:198px!important}
    .home-sponsored-showcase .sponsored-slide .card-body{padding:12px!important}
}
@media (min-width:769px){
    body .home-products-grid-section{max-width:1440px!important;margin:40px auto!important;padding:0 32px!important}
    body .home-products-grid-section #listar_produtos.products-ml-grid.product-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;width:100%!important;padding:0!important}
    body .home-products-grid-section #listar_produtos.products-ml-grid .card-image{aspect-ratio:1/1!important;height:auto!important}
    body .home-products-grid-section #listar_produtos.products-ml-grid .card-body{padding:14px!important}
    body .home-products-grid-section #listar_produtos.products-ml-grid .card-title{font-size:16px!important;min-height:40px!important}
    body .home-products-grid-section #listar_produtos.products-ml-grid .price-new{font-size:22px!important}
    body .home-products-grid-section #listar_produtos.products-ml-grid .card-button{height:42px!important;border-radius:14px!important;font-size:14px!important}
    body .home-sponsored-showcase{max-width:1440px!important;margin:40px auto!important;padding:0 32px!important;overflow:hidden!important}
    body .home-sponsored-showcase .container{max-width:100%!important;width:100%!important;padding:0!important}
    body .home-sponsored-showcase .sponsored-carousel-viewport{height:520px!important}
    body .home-sponsored-showcase .sponsored-slide{width:320px!important;max-width:320px!important}
    body .home-sponsored-showcase .sponsored-slide.is-prev{transform:translateX(calc(-50% - 300px)) scale(.86)!important}
    body .home-sponsored-showcase .sponsored-slide.is-next{transform:translateX(calc(-50% + 300px)) scale(.86)!important}
}
@media (min-width:1500px){
    body .home-products-grid-section #listar_produtos.products-ml-grid.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}

/* Correção final: Produtos em Sorriso deve ser apenas carrossel 3D na home */
.home-products-showcase{
    overflow:hidden !important;
}

.home-products-showcase #pager{
    display:none !important;
}

.home-products-showcase #listar_produtos.product-carousel-3d,
.home-products-showcase #listar_produtos.products-coverflow{
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:8px 0 12px !important;
    overflow:hidden !important;
}

.home-products-showcase .product-carousel-3d .carousel-viewport,
.home-products-showcase .products-coverflow__viewport{
    position:relative !important;
    width:100% !important;
    height:520px !important;
    overflow:hidden !important;
    touch-action:pan-y !important;
    user-select:none !important;
}

.home-products-showcase .product-carousel-3d .carousel-track,
.home-products-showcase .products-coverflow__stage{
    position:relative !important;
    width:100% !important;
    height:100% !important;
    display:block !important;
    transform:none !important;
}

.home-products-showcase .product-carousel-3d .product-slide,
.home-products-showcase .products-coverflow__slide{
    position:absolute !important;
    top:10px !important;
    left:50% !important;
    flex:none !important;
    width:min(74vw, 330px) !important;
    max-width:330px !important;
    min-width:0 !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateX(-50%) scale(.74) !important;
    transition:transform 420ms cubic-bezier(.22,.61,.36,1), opacity 420ms ease, filter 420ms ease !important;
    z-index:1 !important;
    will-change:transform, opacity !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-active,
.home-products-showcase .products-coverflow__slide.is-active{
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(-50%) scale(1) !important;
    z-index:6 !important;
    filter:saturate(1) !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-prev,
.home-products-showcase .products-coverflow__slide.is-prev{
    opacity:.72 !important;
    pointer-events:auto !important;
    transform:translateX(calc(-50% - min(61vw, 290px))) scale(.84) !important;
    z-index:3 !important;
    filter:saturate(.88) !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-next,
.home-products-showcase .products-coverflow__slide.is-next{
    opacity:.72 !important;
    pointer-events:auto !important;
    transform:translateX(calc(-50% + min(61vw, 290px))) scale(.84) !important;
    z-index:3 !important;
    filter:saturate(.88) !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-hidden,
.home-products-showcase .products-coverflow__slide.is-hidden{
    opacity:0 !important;
    pointer-events:none !important;
    z-index:0 !important;
}

.home-products-showcase .product-carousel-3d .product-card,
.home-products-showcase .products-coverflow__slide .product-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    background:#fff !important;
    border:1px solid #e2e8f0 !important;
    border-radius:24px !important;
    overflow:hidden !important;
    box-shadow:0 14px 34px rgba(15,23,42,.12) !important;
    position:relative !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-active .product-card,
.home-products-showcase .products-coverflow__slide.is-active .product-card{
    box-shadow:0 18px 46px rgba(15,23,42,.18) !important;
}

.home-products-showcase .product-carousel-3d .card-image,
.home-products-showcase .products-coverflow__slide .card-image{
    width:100% !important;
    height:220px !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    background:#f8fafc !important;
    overflow:hidden !important;
}

.home-products-showcase .product-carousel-3d .card-image img,
.home-products-showcase .products-coverflow__slide .card-image img{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    display:block !important;
}

.home-products-showcase .product-carousel-3d .card-body,
.home-products-showcase .products-coverflow__slide .card-body{
    padding:14px 14px 16px !important;
}

.home-products-showcase .product-carousel-3d .card-store,
.home-products-showcase .products-coverflow__slide .card-store{
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
    color:#64748b !important;
    margin:0 0 6px !important;
}

.home-products-showcase .product-carousel-3d .card-rating,
.home-products-showcase .products-coverflow__slide .card-rating{
    font-size:14px !important;
    margin:0 0 6px !important;
}

.home-products-showcase .product-carousel-3d .card-title,
.home-products-showcase .products-coverflow__slide .card-title{
    font-size:16px !important;
    line-height:1.22 !important;
    font-weight:900 !important;
    color:#0f172a !important;
    min-height:40px !important;
    margin:0 0 10px !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
}

.home-products-showcase .product-carousel-3d .card-price,
.home-products-showcase .products-coverflow__slide .card-price{
    margin:0 0 8px !important;
}

.home-products-showcase .product-carousel-3d .price-new,
.home-products-showcase .products-coverflow__slide .price-new{
    font-size:21px !important;
    line-height:1 !important;
    font-weight:900 !important;
    color:#16a34a !important;
    margin:0 !important;
}

.home-products-showcase .product-carousel-3d .price-old,
.home-products-showcase .products-coverflow__slide .price-old{
    font-size:13px !important;
    color:#94a3b8 !important;
    text-decoration:line-through !important;
    margin-left:6px !important;
}

.home-products-showcase .product-carousel-3d .pickup-badge,
.home-products-showcase .products-coverflow__slide .pickup-badge{
    display:inline-flex !important;
    align-items:center !important;
    gap:5px !important;
    width:auto !important;
    background:#dcfce7 !important;
    color:#0f7a35 !important;
    border-radius:999px !important;
    padding:6px 10px !important;
    font-size:12px !important;
    font-weight:800 !important;
    margin:0 0 12px !important;
}

.home-products-showcase .product-carousel-3d .card-button,
.home-products-showcase .products-coverflow__slide .card-button{
    width:100% !important;
    height:48px !important;
    min-height:48px !important;
    border-radius:16px !important;
    background:#16a34a !important;
    color:#fff !important;
    font-size:15px !important;
    font-weight:900 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-decoration:none !important;
    padding:0 10px !important;
    white-space:nowrap !important;
}

.home-products-showcase .product-carousel-3d .favorite-btn,
.home-products-showcase .products-coverflow__slide .favorite-btn{
    position:absolute !important;
    top:12px !important;
    right:12px !important;
    z-index:8 !important;
    width:46px !important;
    height:46px !important;
    min-height:46px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid #e2e8f0 !important;
    box-shadow:0 8px 20px rgba(15,23,42,.12) !important;
    color:#e11d48 !important;
}

.home-products-showcase .product-carousel-3d .sale-badge,
.home-products-showcase .products-coverflow__slide .sale-badge{
    position:absolute !important;
    top:12px !important;
    left:12px !important;
    z-index:8 !important;
    background:#16a34a !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:900 !important;
    padding:5px 8px !important;
    border-radius:999px !important;
}

.home-products-showcase .product-carousel-3d .carousel-dots,
.home-products-showcase .products-coverflow__dots{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:8px !important;
    min-height:20px !important;
    margin:12px 0 0 !important;
}

.home-products-showcase .product-carousel-3d .carousel-dot,
.home-products-showcase .products-coverflow__dot{
    width:8px !important;
    height:8px !important;
    min-width:8px !important;
    min-height:8px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:999px !important;
    background:#cbd5e1 !important;
}

.home-products-showcase .product-carousel-3d .carousel-dot.is-active,
.home-products-showcase .products-coverflow__dot.is-active{
    width:24px !important;
    background:#16a34a !important;
}

@media (max-width:768px){
    .home-products-showcase{
        margin-top:22px !important;
        margin-bottom:24px !important;
    }

    .home-products-showcase .container{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .home-products-showcase .section-header,
    .home-products-showcase .regular-offers-head{
        padding-left:20px !important;
        padding-right:20px !important;
    }

    .home-products-showcase .section-tabs{
        display:none !important;
    }

    .home-products-showcase .section-title{
        font-size:30px !important;
        line-height:1.1 !important;
        font-weight:900 !important;
        color:#0f172a !important;
        margin:0 0 14px !important;
    }

    .home-products-showcase .regular-offers-head{
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:12px !important;
        margin-bottom:8px !important;
    }

    .home-products-showcase .regular-offers-title{
        font-size:16px !important;
        font-weight:800 !important;
        color:#0f172a !important;
    }

    .home-products-showcase .regular-offers-count{
        font-size:14px !important;
        font-weight:700 !important;
        color:#64748b !important;
    }

    .home-products-showcase .product-carousel-3d .carousel-viewport,
    .home-products-showcase .products-coverflow__viewport{
        height:510px !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide,
    .home-products-showcase .products-coverflow__slide{
        width:74vw !important;
        max-width:318px !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide.is-prev,
    .home-products-showcase .products-coverflow__slide.is-prev{
        transform:translateX(calc(-50% - 62vw)) scale(.84) !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide.is-next,
    .home-products-showcase .products-coverflow__slide.is-next{
        transform:translateX(calc(-50% + 62vw)) scale(.84) !important;
    }

    .home-products-showcase + .home-support-sections{
        margin-top:14px !important;
    }
}

@media (max-width:380px){
    .home-products-showcase .product-carousel-3d .carousel-viewport,
    .home-products-showcase .products-coverflow__viewport{
        height:492px !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide,
    .home-products-showcase .products-coverflow__slide{
        width:75vw !important;
        max-width:292px !important;
    }

    .home-products-showcase .product-carousel-3d .card-image,
    .home-products-showcase .products-coverflow__slide .card-image{
        height:198px !important;
    }

    .home-products-showcase .product-carousel-3d .card-body,
    .home-products-showcase .products-coverflow__slide .card-body{
        padding:12px !important;
    }
}

/* Produtos em Sorriso: coverflow mobile-first */
.products-coverflow{
    position:relative;
    width:100%;
    max-width:100%;
    margin:6px auto 0;
    overflow:hidden;
    padding:0 0 8px;
    box-sizing:border-box;
}

.page-home #listar_produtos.products-coverflow,
#listar_produtos.products-coverflow{
    display:block !important;
    width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    overflow:hidden !important;
}

.products-coverflow__viewport{
    position:relative;
    width:100%;
    height:520px;
    overflow:hidden;
    touch-action:pan-y;
    user-select:none;
}

.products-coverflow__stage{
    position:relative;
    width:100%;
    height:100%;
}

.products-coverflow__slide{
    position:absolute;
    top:10px;
    left:50%;
    width:min(68vw, 340px);
    max-width:340px;
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) scale(.72);
    transition:transform 420ms cubic-bezier(.22,.61,.36,1), opacity 420ms ease, filter 420ms ease;
    z-index:1;
    will-change:transform, opacity;
}

.products-coverflow__slide.is-active{
    opacity:1;
    pointer-events:auto;
    transform:translateX(-50%) scale(1);
    z-index:5;
    filter:none;
}

.products-coverflow__slide.is-prev{
    opacity:.82;
    pointer-events:auto;
    transform:translateX(calc(-50% - min(58vw, 290px))) scale(.84);
    z-index:3;
    filter:saturate(.92);
}

.products-coverflow__slide.is-next{
    opacity:.82;
    pointer-events:auto;
    transform:translateX(calc(-50% + min(58vw, 290px))) scale(.84);
    z-index:3;
    filter:saturate(.92);
}

.products-coverflow__slide.is-hidden{
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) scale(.72);
    z-index:0;
}

.products-coverflow__slide .product-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    border-radius:22px !important;
    background:#fff !important;
    overflow:hidden !important;
    box-shadow:0 12px 34px rgba(15,23,42,.12) !important;
    border:1px solid rgba(226,232,240,.95) !important;
}

.products-coverflow__slide.is-active .product-card{
    box-shadow:0 18px 46px rgba(15,23,42,.18) !important;
}

.products-coverflow__slide.is-prev .product-card,
.products-coverflow__slide.is-next .product-card{
    box-shadow:0 10px 24px rgba(15,23,42,.10) !important;
}

.products-coverflow__slide .product-card .card-image{
    height:215px !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    background:#f8fafc !important;
}

.products-coverflow__slide .product-card .card-image img,
.products-coverflow__slide .product-card img{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
}

.products-coverflow__slide .product-card .card-body{
    padding:14px !important;
}

.products-coverflow__slide .product-card .card-store{
    font-size:12px !important;
    margin:0 0 7px !important;
}

.products-coverflow__slide .product-card .card-rating{
    font-size:14px !important;
    margin-bottom:6px !important;
}

.products-coverflow__slide .product-card .card-title{
    font-size:15px !important;
    line-height:1.25 !important;
    min-height:38px !important;
    margin-bottom:8px !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
}

.products-coverflow__slide.is-active .product-card .card-title{
    font-size:16px !important;
}

.products-coverflow__slide .product-card .card-price{
    margin:0 0 9px !important;
}

.products-coverflow__slide .product-card .price-new{
    font-size:18px !important;
    margin:0 !important;
}

.products-coverflow__slide.is-active .product-card .price-new{
    font-size:20px !important;
}

.products-coverflow__slide .product-card .price-old{
    font-size:12px !important;
}

.products-coverflow__slide .product-card .pickup-badge,
.products-coverflow__slide .product-card .sponsored-label{
    font-size:11px !important;
    padding:6px 9px !important;
    margin-bottom:9px !important;
}

.products-coverflow__slide .product-card .card-button{
    height:44px !important;
    min-height:44px !important;
    border-radius:15px !important;
    font-size:14px !important;
    padding:0 10px !important;
}

.products-coverflow__slide .product-card .favorite-btn{
    width:42px !important;
    height:42px !important;
    min-height:42px !important;
}

.products-coverflow__slide .product-card .sale-badge,
.products-coverflow__slide .product-card .low-stock-badge{
    font-size:11px !important;
    padding:5px 9px !important;
}

.products-coverflow__dots{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:20px;
    margin:2px 0 0;
}

.products-coverflow__dot{
    width:9px;
    height:9px;
    min-width:9px;
    min-height:9px;
    padding:0;
    border:0;
    border-radius:999px;
    background:#cbd5e1;
    opacity:.9;
    cursor:pointer;
    transition:width 220ms ease, background 220ms ease, transform 220ms ease;
}

.products-coverflow__dot.is-active{
    width:24px;
    background:#16a34a;
    transform:translateY(-1px);
}

@media (max-width: 768px){
    .products-coverflow{
        margin-top:0 !important;
        padding-bottom:4px !important;
    }

    .products-coverflow__viewport{
        height:500px;
    }

    .products-coverflow__slide{
        width:68vw !important;
        max-width:310px !important;
    }

    .products-coverflow__slide.is-prev{
        transform:translateX(calc(-50% - 58vw)) scale(.84) !important;
    }

    .products-coverflow__slide.is-next{
        transform:translateX(calc(-50% + 58vw)) scale(.84) !important;
    }

    .products-coverflow__slide .product-card .card-image{
        height:205px !important;
    }
}

@media (max-width: 380px){
    .products-coverflow__viewport{
        height:480px;
    }

    .products-coverflow__slide{
        width:70vw !important;
        max-width:292px !important;
    }

    .products-coverflow__slide .product-card .card-image{
        height:190px !important;
    }

    .products-coverflow__slide .product-card .card-body{
        padding:12px !important;
    }

    .products-coverflow__slide .product-card .card-button{
        height:42px !important;
        min-height:42px !important;
        font-size:13px !important;
    }
}

@media (min-width: 769px){
    .products-coverflow{
        max-width:980px;
    }

    .products-coverflow__viewport{
        height:560px;
    }

    .products-coverflow__slide{
        width:340px;
    }

    .products-coverflow__slide.is-prev{
        transform:translateX(calc(-50% - 300px)) scale(.84);
    }

    .products-coverflow__slide.is-next{
        transform:translateX(calc(-50% + 300px)) scale(.84);
    }
}

@media (min-width: 1180px){
    .products-coverflow{
        max-width:1120px;
    }

    .products-coverflow__slide.is-prev{
        transform:translateX(calc(-50% - 340px)) scale(.84);
    }

    .products-coverflow__slide.is-next{
        transform:translateX(calc(-50% + 340px)) scale(.84);
    }
}

/* Hotfix 2026-05-28: busca, banners internos, header mobile e rodape compacto */
.page-hero.dark,
.internal-hero.dark,
.account-hero,
.favorites-hero,
.account-home-hero,
.stores-hero,
.lojas-hero{
    background:linear-gradient(135deg,#0B1F3A 0%,#0F7A35 100%) !important;
    color:#FFFFFF !important;
}

.page-hero.dark h1,
.page-hero-title,
.internal-hero.dark h1,
.account-hero h1,
.favorites-hero h1,
.account-home-hero h1,
.stores-hero h1,
.lojas-hero h1{
    color:#FFFFFF !important;
    text-shadow:0 2px 10px rgba(0,0,0,.25) !important;
}

.page-hero.dark p,
.page-hero-subtitle,
.internal-hero.dark p,
.account-hero p,
.favorites-hero p,
.account-home-hero p,
.stores-hero p,
.lojas-hero p{
    color:#E2E8F0 !important;
}

.page-hero.dark .badge,
.page-hero-badge,
.internal-hero.dark .badge,
.stores-hero-kicker{
    background:rgba(255,255,255,.12) !important;
    color:#FFFFFF !important;
    border:1px solid rgba(255,255,255,.18) !important;
}

.footer-brand-title{
    display:block;
    color:#0F172A;
    font-size:16px;
    font-weight:900;
    line-height:1.2;
    margin-bottom:3px;
}

.footer-brand-subtitle{
    display:block;
    color:#64748B;
    font-size:13px;
    line-height:1.25;
    margin-bottom:8px;
}

@media (max-width:768px){
    .header-brand-stack .header-location-pill,
    .mobile-header .location-chip{
        display:none !important;
    }

    .header-brand-stack{
        justify-content:center !important;
        gap:0 !important;
    }

    .header-logo img{
        max-width:118px !important;
        max-height:58px !important;
        object-fit:contain !important;
    }

    .header-search-form,
    .search-wrapper,
    .mobile-search,
    .search-bar{
        width:calc(100% - 32px) !important;
        max-width:none !important;
        margin:12px auto 16px !important;
        height:56px !important;
        min-height:56px !important;
        border-radius:22px !important;
        background:#FFFFFF !important;
        border:1px solid #E2E8F0 !important;
        box-shadow:0 8px 22px rgba(15,23,42,.06) !important;
        display:flex !important;
        align-items:center !important;
        overflow:hidden !important;
    }

    .header-search-form:focus-within,
    .search-wrapper:focus-within,
    .mobile-search:focus-within,
    .search-bar:focus-within{
        border-color:#86EFAC !important;
        box-shadow:0 0 0 3px rgba(22,163,74,.12) !important;
    }

    .header-search-form input[type="text"],
    .search-wrapper input,
    .mobile-search input,
    .search-bar input{
        flex:1 1 auto !important;
        height:100% !important;
        min-width:0 !important;
        border:none !important;
        outline:none !important;
        font-size:16px !important;
        color:#0F172A !important;
        background:transparent !important;
    }

    .header-search-form input::placeholder,
    .search-wrapper input::placeholder,
    .mobile-search input::placeholder,
    .search-bar input::placeholder{
        color:#94A3B8 !important;
    }

    .header-search-form button,
    .search-button,
    .btn-search{
        width:52px !important;
        height:52px !important;
        flex:0 0 52px !important;
        margin-right:2px !important;
        border-radius:18px !important;
        border:none !important;
        background:#16A34A !important;
        color:#FFFFFF !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
    }

    .header-search-form button i,
    .search-button i,
    .btn-search i{
        color:#FFFFFF !important;
    }

    footer,
    .site-footer,
    .footer-container{
        padding:18px 20px 90px !important;
        margin-top:18px !important;
        background:#F1F5F9 !important;
    }

    .typefooter-1 .footer-middle{
        padding:0 !important;
    }

    .typefooter-1 .footer-middle .row{
        display:block !important;
    }

    .footer-brand,
    .footer-contact,
    .footer-info,
    .footer-social,
    .footer-column,
    .typefooter-1 .box-footer .module,
    .typefooter-1 .infos-footer{
        margin-bottom:10px !important;
    }

    .typefooter-1 .box-information,
    .typefooter-1 .box-service .module:empty{
        display:none !important;
    }

    footer h3,
    .site-footer h3,
    .footer-title,
    .typefooter-1 .modtitle{
        font-size:14px !important;
        margin:0 0 6px !important;
        padding-bottom:4px !important;
        border-bottom:2px solid #16A34A !important;
        display:inline-block !important;
        color:#0F172A !important;
    }

    footer p,
    footer a,
    footer li,
    .site-footer p,
    .site-footer a,
    .site-footer li{
        font-size:14px !important;
        line-height:1.3 !important;
        margin-bottom:6px !important;
    }

    .footer-bottom,
    .copyright{
        margin-top:10px !important;
        padding:10px 12px !important;
        font-size:13px !important;
        line-height:1.3 !important;
        text-align:center !important;
        background:#0B1F3A !important;
        color:#FFFFFF !important;
        white-space:normal !important;
    }
}

/* Compactacao mobile da home e componentes globais */
@media (max-width:768px){
    body{
        padding-bottom:68px !important;
    }

    main,
    .page-content,
    .content-wrapper,
    .page-home{
        padding-bottom:78px !important;
    }

    .section,
    .home-section,
    .page-section,
    .content-section,
    .categories-section,
    .stores-section,
    .products-section,
    .how-it-works-section,
    .reservations-section,
    .local-banner-section,
    .home-first-fold,
    .home-benefits-strip,
    .home-quick-benefit,
    .home-sponsored-section,
    .vs-home-categories-v2,
    .home-stores-highlight,
    .product-section,
    .home-support-sections,
    .home-reservas-card{
        margin-top:18px !important;
        margin-bottom:18px !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
        min-height:auto !important;
    }

    .section + .section,
    .home-section + .home-section,
    .page-section + .page-section{
        margin-top:20px !important;
    }

    .spacer,
    .empty-space,
    .section-spacer,
    .home-spacer,
    .footer-spacer{
        display:none !important;
        height:0 !important;
        min-height:0 !important;
        margin:0 !important;
        padding:0 !important;
    }

    .home-block,
    .hero-wrapper,
    .content-wrapper,
    .products-wrapper,
    .categories-wrapper,
    .stores-wrapper,
    .footer-wrapper,
    .section-wrapper{
        min-height:auto !important;
        height:auto !important;
    }

    .mobile-header,
    .site-header,
    header{
        padding-top:10px !important;
        padding-bottom:10px !important;
    }

    .search-section,
    .home-search-wrapper{
        margin-top:14px !important;
        margin-bottom:16px !important;
    }

    .search-box,
    .search-input-wrapper,
    .home-search-form{
        height:56px !important;
        min-height:56px !important;
    }

    .home-hero,
    .hero-banner,
    .banner-principal,
    .home-main-hero{
        min-height:auto !important;
        padding:0 !important;
        margin-bottom:16px !important;
        border-radius:24px !important;
    }

    .home-main-hero__content{
        min-height:auto !important;
        padding:20px 18px !important;
    }

    .home-hero h1,
    .hero-banner h1,
    .banner-principal h1,
    .home-main-hero h1{
        font-size:28px !important;
        line-height:1.08 !important;
        margin-bottom:12px !important;
        color:#FFFFFF !important;
    }

    .home-hero p,
    .hero-banner p,
    .banner-principal p,
    .home-main-hero p{
        font-size:14px !important;
        line-height:1.4 !important;
        margin-bottom:12px !important;
    }

    .home-main-hero__actions{
        gap:8px !important;
        margin-top:12px !important;
    }

    .home-main-hero__actions a,
    .home-hero .btn,
    .hero-banner .btn,
    .banner-principal .btn{
        height:44px !important;
        min-height:44px !important;
        margin-top:0 !important;
    }

    .first-time-card,
    .primeira-vez-card,
    .benefit-first-reservation,
    .home-quick-benefit .vs-ethical-banner{
        margin-top:14px !important;
        margin-bottom:14px !important;
        padding:14px !important;
        border-radius:20px !important;
    }

    .categories-section .section-card,
    .categories-box,
    .categories-wrapper,
    .vs-home-categories-v2__container{
        padding:16px !important;
        border-radius:22px !important;
    }

    .categories-section h2,
    .vs-home-categories-v2__head h2{
        font-size:24px !important;
        line-height:1.15 !important;
        margin-bottom:12px !important;
    }

    .categories-carousel,
    .category-carousel,
    .mobile-carousel,
    .vs-home-categories-v2__rail{
        gap:10px !important;
        padding-bottom:4px !important;
        scrollbar-width:none !important;
    }

    .categories-carousel::-webkit-scrollbar,
    .category-carousel::-webkit-scrollbar,
    .mobile-carousel::-webkit-scrollbar,
    .vs-home-categories-v2__rail::-webkit-scrollbar,
    .stores-section ::-webkit-scrollbar,
    .featured-stores-section ::-webkit-scrollbar{
        display:none !important;
    }

    .category-card,
    .vs-home-categories-v2__card{
        min-height:120px !important;
        min-width:122px !important;
        padding:12px 9px !important;
        border-radius:17px !important;
    }

    .category-card img,
    .category-card .icon,
    .vs-home-categories-v2__image,
    .vs-home-categories-v2__image img,
    .home-category-icon-fallback{
        width:58px !important;
        height:58px !important;
        margin-bottom:7px !important;
    }

    .stores-section,
    .featured-stores-section,
    .home-stores-highlight{
        margin-top:16px !important;
        margin-bottom:18px !important;
    }

    .stores-section .section-card,
    .featured-stores-wrapper,
    .home-stores-highlight .container{
        padding:16px !important;
        border-radius:22px !important;
    }

    .stores-section h2,
    .featured-stores-section h2,
    .marketplace-block-title{
        font-size:24px !important;
        margin-bottom:4px !important;
    }

    .stores-section p,
    .featured-stores-section p,
    .marketplace-block-subtitle{
        font-size:14px !important;
        margin-bottom:0 !important;
    }

    .store-card,
    .featured-store-card,
    .home-store-card{
        padding:12px !important;
        border-radius:18px !important;
        min-height:auto !important;
    }

    .stores-section + .products-section,
    .featured-stores-section + .products-section,
    .home-stores-highlight + .product-section{
        margin-top:18px !important;
    }

    .products-section,
    .product-section{
        padding-top:0 !important;
        margin-top:18px !important;
    }

    .products-section h2,
    .product-section .section-title{
        font-size:22px !important;
        margin-bottom:12px !important;
    }

    .products-section .section-header,
    .product-section .section-header{
        margin-bottom:10px !important;
    }

    .product-grid,
    .products-grid,
    .page-home #listar_produtos.product-grid{
        gap:10px !important;
    }

    .product-card{
        border-radius:18px !important;
    }

    .product-card .image-wrap,
    .product-card .product-image,
    .product-card .card-image{
        aspect-ratio:1 / 1 !important;
    }

    .product-card .content,
    .product-card .product-content,
    .product-card .card-body{
        padding:10px !important;
    }

    .product-card .store-name,
    .product-card .product-store,
    .product-card .card-store{
        font-size:11px !important;
        margin-bottom:4px !important;
    }

    .product-card .title,
    .product-card h3,
    .product-card .card-title{
        font-size:13px !important;
        line-height:1.25 !important;
        margin-bottom:6px !important;
        min-height:33px !important;
    }

    .product-card .price,
    .product-card .price-new{
        font-size:16px !important;
        margin-bottom:6px !important;
    }

    .product-card .badge,
    .product-card .pickup-badge,
    .product-card .sponsored-label{
        font-size:10px !important;
        padding:4px 7px !important;
        margin-bottom:6px !important;
    }

    .product-card .btn,
    .product-card button,
    .product-card .card-button{
        height:40px !important;
        min-height:40px !important;
        font-size:13px !important;
        border-radius:13px !important;
    }

    .pagination,
    .products-pagination,
    .pager{
        margin-top:14px !important;
        margin-bottom:12px !important;
        padding:0 !important;
    }

    .pagination a,
    .pagination span,
    .pagination button,
    .pager a,
    .pager span,
    .pager button{
        width:42px !important;
        height:42px !important;
        border-radius:14px !important;
    }

    .how-it-works-section,
    .como-funciona-section,
    .home-support-sections{
        margin-top:16px !important;
        margin-bottom:16px !important;
    }

    .how-it-works-section .section-card,
    .como-funciona-section .section-card,
    .vs-how-it-works{
        padding:16px !important;
        border-radius:22px !important;
    }

    .how-it-works-section h2,
    .como-funciona-section h2,
    .vs-how-it-works__head h3{
        font-size:24px !important;
        margin-bottom:12px !important;
    }

    .how-card,
    .step-card,
    .how-it-works-card,
    .vs-step{
        padding:14px !important;
        border-radius:17px !important;
        margin-bottom:10px !important;
    }

    .local-callout,
    .before-buying-banner,
    .commerce-local-banner,
    .vs-local-callout{
        padding:16px !important;
        margin-top:14px !important;
        margin-bottom:16px !important;
        border-radius:22px !important;
    }

    .local-callout h2,
    .before-buying-banner h2,
    .commerce-local-banner h2,
    .vs-local-callout strong{
        font-size:22px !important;
        line-height:1.14 !important;
        margin-bottom:6px !important;
    }

    .local-callout p,
    .before-buying-banner p,
    .commerce-local-banner p,
    .vs-local-callout span{
        font-size:14px !important;
        line-height:1.35 !important;
        margin-bottom:10px !important;
    }

    footer,
    .site-footer,
    .footer-container{
        padding:24px 20px 92px !important;
        margin-top:20px !important;
    }

    .footer-contact,
    .footer-info,
    .footer-social,
    .footer-column,
    .typefooter-1 .box-footer .module,
    .typefooter-1 .infos-footer{
        margin-bottom:20px !important;
    }

    footer .contact-item,
    .site-footer .contact-item{
        margin-bottom:10px !important;
        gap:10px !important;
    }

    footer h3,
    .site-footer h3,
    .footer-title,
    .typefooter-1 .modtitle{
        font-size:16px !important;
        margin-bottom:10px !important;
        padding-bottom:5px !important;
    }

    footer ul,
    .site-footer ul{
        margin:0 !important;
        padding-left:0 !important;
    }

    footer li,
    .site-footer li{
        margin-bottom:8px !important;
        line-height:1.3 !important;
    }

    .footer-bottom,
    .copyright{
        margin-top:12px !important;
        padding:14px 16px !important;
        font-size:14px !important;
        line-height:1.35 !important;
    }

    .back-to-top,
    #backToTop,
    #back-to-top,
    .scroll-top{
        width:44px !important;
        height:44px !important;
        right:16px !important;
        bottom:88px !important;
        border-radius:14px !important;
    }

    .mobile-bottom-nav{
        height:68px !important;
        padding:4px 8px calc(4px + env(safe-area-inset-bottom)) !important;
    }

    .mobile-bottom-nav a,
    .mobile-bottom-nav button,
    .mobile-bottom-nav .nav-item{
        height:54px !important;
        min-height:54px !important;
        font-size:11px !important;
    }

    .mobile-bottom-nav .active,
    .mobile-bottom-nav .is-active{
        background:rgba(22,163,74,.08) !important;
        border-radius:0 !important;
    }

    .mobile-bottom-nav svg,
    .mobile-bottom-nav i{
        width:22px !important;
        height:22px !important;
        font-size:20px !important;
    }
}

/* Ajuste final do coverflow patrocinado e grid da home.
   Este bloco fica no fim do arquivo para vencer regras legadas. */
html,
body{
    max-width:100%;
    overflow-x:hidden;
}

*,
*::before,
*::after{
    box-sizing:border-box;
}

@media (max-width:768px){
    .home-sponsored-showcase{
        width:100% !important;
        max-width:100% !important;
        margin:24px 0 22px !important;
        padding:0 !important;
        overflow:hidden !important;
    }

    .home-sponsored-showcase > .container{
        width:100% !important;
        max-width:100% !important;
        margin:0 !important;
        padding:0 !important;
    }

    .home-sponsored-showcase .section-header{
        padding:0 24px !important;
        margin:0 0 14px !important;
    }

    .home-sponsored-showcase .section-title{
        font-size:30px !important;
        line-height:1.1 !important;
        font-weight:900 !important;
        color:#0F172A !important;
        margin:0 0 14px !important;
    }

    .home-sponsored-showcase .section-subtitle{
        color:#64748B !important;
        font-size:15px !important;
        line-height:1.35 !important;
        font-weight:700 !important;
        margin:0 !important;
    }

    .home-sponsored-showcase #ofertas_patrocinadas.sponsored-carousel-3d{
        position:relative !important;
        width:100vw !important;
        max-width:100vw !important;
        margin-left:calc(50% - 50vw) !important;
        margin-right:calc(50% - 50vw) !important;
        overflow:hidden !important;
        padding:8px 0 14px !important;
    }

    .home-sponsored-showcase .sponsored-carousel-viewport{
        width:100vw !important;
        max-width:100vw !important;
        overflow:hidden !important;
        touch-action:pan-y !important;
        user-select:none !important;
    }

    .home-sponsored-showcase .sponsored-carousel-track{
        display:flex !important;
        align-items:stretch !important;
        gap:18px !important;
        width:max-content !important;
        max-width:none !important;
        height:auto !important;
        position:relative !important;
        will-change:transform !important;
        transition:transform 420ms ease !important;
    }

    .home-sponsored-showcase .sponsored-slide{
        position:relative !important;
        top:auto !important;
        left:auto !important;
        flex:0 0 64% !important;
        width:64% !important;
        min-width:64% !important;
        max-width:64% !important;
        transform:scale(.82) !important;
        opacity:.58 !important;
        filter:saturate(.9) !important;
        transition:transform 360ms ease, opacity 360ms ease, filter 360ms ease !important;
        pointer-events:auto !important;
        z-index:1 !important;
    }

    .home-sponsored-showcase .sponsored-slide.is-active{
        transform:scale(1) !important;
        opacity:1 !important;
        filter:saturate(1) !important;
        z-index:3 !important;
    }

    .home-sponsored-showcase .sponsored-slide.is-prev,
    .home-sponsored-showcase .sponsored-slide.is-next{
        transform:scale(.82) !important;
        opacity:.72 !important;
        z-index:1 !important;
    }

    .home-sponsored-showcase .sponsored-slide.is-hidden{
        opacity:0 !important;
        pointer-events:none !important;
    }

    .home-sponsored-showcase .sponsored-card{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        background:#FFFFFF !important;
        border:1px solid #E2E8F0 !important;
        border-radius:24px !important;
        overflow:hidden !important;
        box-shadow:0 14px 34px rgba(15,23,42,.12) !important;
        position:relative !important;
        display:flex !important;
        flex-direction:column !important;
        transform:none !important;
    }

    .home-sponsored-showcase .sponsored-slide.is-active .sponsored-card{
        box-shadow:0 18px 44px rgba(15,23,42,.16) !important;
    }

    .home-sponsored-showcase .sponsored-card .card-image{
        width:100% !important;
        height:auto !important;
        aspect-ratio:1 / 1.05 !important;
        background:#F8FAFC !important;
        overflow:hidden !important;
        position:relative !important;
    }

    .home-sponsored-showcase .sponsored-card .card-image img{
        width:100% !important;
        height:100% !important;
        object-fit:contain !important;
        display:block !important;
    }

    .home-sponsored-showcase .sponsored-card .card-body{
        padding:12px 13px 14px !important;
    }

    .home-sponsored-showcase .sponsored-card .card-store{
        font-size:12px !important;
        line-height:1.25 !important;
        font-weight:700 !important;
        color:#64748B !important;
        margin:0 0 5px !important;
    }

    .home-sponsored-showcase .sponsored-card .card-rating{
        font-size:13px !important;
        margin:0 0 5px !important;
    }

    .home-sponsored-showcase .sponsored-card .card-title{
        font-size:15px !important;
        line-height:1.2 !important;
        font-weight:900 !important;
        color:#0F172A !important;
        min-height:36px !important;
        margin:0 0 8px !important;
        display:-webkit-box !important;
        -webkit-line-clamp:2 !important;
        -webkit-box-orient:vertical !important;
        overflow:hidden !important;
    }

    .home-sponsored-showcase .sponsored-card .default-subtitle{
        font-size:13px !important;
        line-height:1.35 !important;
        color:#64748B !important;
        min-height:36px !important;
        margin:0 0 10px !important;
        display:-webkit-box !important;
        -webkit-line-clamp:2 !important;
        -webkit-box-orient:vertical !important;
        overflow:hidden !important;
    }

    .home-sponsored-showcase .sponsored-card .card-price{
        margin:0 0 8px !important;
    }

    .home-sponsored-showcase .sponsored-card .price-new{
        font-size:20px !important;
        font-weight:900 !important;
        color:#16A34A !important;
    }

    .home-sponsored-showcase .sponsored-card .price-old{
        font-size:12px !important;
        color:#94A3B8 !important;
        text-decoration:line-through !important;
        margin-left:5px !important;
    }

    .home-sponsored-showcase .sponsored-card .product-urgency-row{
        margin:0 !important;
    }

    .home-sponsored-showcase .sponsored-card .pickup-badge{
        display:inline-flex !important;
        align-items:center !important;
        gap:5px !important;
        background:#DCFCE7 !important;
        color:#0F7A35 !important;
        border-radius:999px !important;
        padding:5px 9px !important;
        font-size:11px !important;
        line-height:1 !important;
        font-weight:800 !important;
        margin:0 0 10px !important;
    }

    .home-sponsored-showcase .sponsored-card .card-button{
        width:100% !important;
        height:44px !important;
        min-height:44px !important;
        border-radius:15px !important;
        background:#16A34A !important;
        color:#FFFFFF !important;
        border:0 !important;
        font-size:14px !important;
        font-weight:900 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        text-decoration:none !important;
        white-space:nowrap !important;
    }

    .home-sponsored-showcase .sponsored-card .favorite-btn{
        position:absolute !important;
        top:12px !important;
        right:12px !important;
        width:42px !important;
        height:42px !important;
        min-height:42px !important;
        border-radius:999px !important;
        z-index:5 !important;
    }

    .home-sponsored-showcase .sponsored-card .sponsored-label,
    .home-sponsored-showcase .sponsored-card .sale-badge,
    .home-sponsored-showcase .sponsored-card .low-stock-badge{
        position:absolute !important;
        left:12px !important;
        z-index:5 !important;
        border-radius:999px !important;
        font-size:11px !important;
        font-weight:900 !important;
    }

    .home-sponsored-showcase .sponsored-card .sponsored-label{
        top:12px !important;
        background:#FEF3C7 !important;
        color:#92400E !important;
        padding:5px 9px !important;
    }

    .home-sponsored-showcase .sponsored-card .sale-badge,
    .home-sponsored-showcase .sponsored-card .low-stock-badge{
        top:42px !important;
    }

    .home-sponsored-showcase .sponsored-carousel-dots{
        display:flex !important;
        justify-content:center !important;
        align-items:center !important;
        gap:8px !important;
        margin:10px 0 12px !important;
    }

    .home-sponsored-showcase .sponsored-carousel-dot{
        width:8px !important;
        height:8px !important;
        min-width:8px !important;
        min-height:8px !important;
        border-radius:999px !important;
        border:0 !important;
        padding:0 !important;
        background:#CBD5E1 !important;
        transition:all 250ms ease !important;
    }

    .home-sponsored-showcase .sponsored-carousel-dot.is-active{
        width:24px !important;
        background:#16A34A !important;
    }

    .home-products-grid-section{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
        padding:0 16px 24px !important;
        margin:18px auto 0 !important;
        overflow:visible !important;
    }

    .home-products-grid-section > .container{
        width:100% !important;
        max-width:100% !important;
        padding:0 !important;
        margin:0 auto !important;
    }

    .home-products-grid-section .section-header{
        padding:0 !important;
        margin-bottom:14px !important;
    }

    .home-products-grid-section .section-title{
        font-size:30px !important;
        line-height:1.1 !important;
        font-weight:900 !important;
        color:#0F172A !important;
        margin:0 0 14px !important;
    }

    .home-products-grid-section .regular-offers-head{
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:12px !important;
        margin:0 0 14px !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px !important;
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        padding:0 !important;
        box-sizing:border-box !important;
        overflow:visible !important;
        transform:none !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid .product-card{
        min-width:0 !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
        background:#FFFFFF !important;
        border:1px solid #E2E8F0 !important;
        border-radius:18px !important;
        overflow:hidden !important;
        box-shadow:0 8px 22px rgba(15,23,42,.06) !important;
        transform:none !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid .product-card .card-image{
        width:100% !important;
        aspect-ratio:1 / 1 !important;
        background:#F8FAFC !important;
        overflow:hidden !important;
        position:relative !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid .product-card .card-image img{
        width:100% !important;
        height:100% !important;
        object-fit:contain !important;
        display:block !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid .product-card .card-body{
        padding:10px !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid .product-card .card-title{
        font-size:14px !important;
        line-height:1.25 !important;
        min-height:36px !important;
        margin-bottom:8px !important;
        display:-webkit-box !important;
        -webkit-line-clamp:2 !important;
        -webkit-box-orient:vertical !important;
        overflow:hidden !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid .product-card .price-new{
        font-size:18px !important;
    }

    .home-products-grid-section #listar_produtos.products-ml-grid .product-card .card-button{
        height:38px !important;
        min-height:38px !important;
        border-radius:12px !important;
        font-size:13px !important;
    }
}

/* Trava final: a home mobile deve exibir apenas o coverflow em Produtos em Sorriso. */
.home-products-showcase #pager{
    display:none !important;
}

.home-products-showcase #listar_produtos.product-carousel-3d,
.home-products-showcase #listar_produtos.products-coverflow{
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:8px 0 12px !important;
    overflow:hidden !important;
}

.home-products-showcase .product-carousel-3d .carousel-viewport,
.home-products-showcase .products-coverflow__viewport{
    position:relative !important;
    width:100% !important;
    height:520px !important;
    overflow:hidden !important;
    touch-action:pan-y !important;
    user-select:none !important;
}

.home-products-showcase .product-carousel-3d .carousel-track,
.home-products-showcase .products-coverflow__stage{
    position:relative !important;
    width:100% !important;
    height:100% !important;
    display:block !important;
    transform:none !important;
}

.home-products-showcase .product-carousel-3d .product-slide,
.home-products-showcase .products-coverflow__slide{
    position:absolute !important;
    top:10px !important;
    left:50% !important;
    flex:none !important;
    width:min(74vw, 330px) !important;
    max-width:330px !important;
    min-width:0 !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateX(-50%) scale(.74) !important;
    transition:transform 420ms cubic-bezier(.22,.61,.36,1), opacity 420ms ease, filter 420ms ease !important;
    z-index:1 !important;
    will-change:transform, opacity !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-active,
.home-products-showcase .products-coverflow__slide.is-active{
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(-50%) scale(1) !important;
    z-index:6 !important;
    filter:saturate(1) !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-prev,
.home-products-showcase .products-coverflow__slide.is-prev{
    opacity:.72 !important;
    pointer-events:auto !important;
    transform:translateX(calc(-50% - min(61vw, 290px))) scale(.84) !important;
    z-index:3 !important;
    filter:saturate(.88) !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-next,
.home-products-showcase .products-coverflow__slide.is-next{
    opacity:.72 !important;
    pointer-events:auto !important;
    transform:translateX(calc(-50% + min(61vw, 290px))) scale(.84) !important;
    z-index:3 !important;
    filter:saturate(.88) !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-hidden,
.home-products-showcase .products-coverflow__slide.is-hidden{
    opacity:0 !important;
    pointer-events:none !important;
    z-index:0 !important;
}

.home-products-showcase .product-carousel-3d .product-card,
.home-products-showcase .products-coverflow__slide .product-card{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    background:#fff !important;
    border:1px solid #e2e8f0 !important;
    border-radius:24px !important;
    overflow:hidden !important;
    box-shadow:0 14px 34px rgba(15,23,42,.12) !important;
    position:relative !important;
}

.home-products-showcase .product-carousel-3d .product-slide.is-active .product-card,
.home-products-showcase .products-coverflow__slide.is-active .product-card{
    box-shadow:0 18px 46px rgba(15,23,42,.18) !important;
}

.home-products-showcase .product-carousel-3d .card-image,
.home-products-showcase .products-coverflow__slide .card-image{
    width:100% !important;
    height:220px !important;
    min-height:0 !important;
    aspect-ratio:auto !important;
    background:#f8fafc !important;
    overflow:hidden !important;
}

.home-products-showcase .product-carousel-3d .card-image img,
.home-products-showcase .products-coverflow__slide .card-image img{
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    display:block !important;
}

.home-products-showcase .product-carousel-3d .card-body,
.home-products-showcase .products-coverflow__slide .card-body{
    padding:14px 14px 16px !important;
}

.home-products-showcase .product-carousel-3d .card-store,
.home-products-showcase .products-coverflow__slide .card-store{
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
    color:#64748b !important;
    margin:0 0 6px !important;
}

.home-products-showcase .product-carousel-3d .card-title,
.home-products-showcase .products-coverflow__slide .card-title{
    font-size:16px !important;
    line-height:1.22 !important;
    font-weight:900 !important;
    color:#0f172a !important;
    min-height:40px !important;
    margin:0 0 10px !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
}

.home-products-showcase .product-carousel-3d .price-new,
.home-products-showcase .products-coverflow__slide .price-new{
    font-size:21px !important;
    line-height:1 !important;
    font-weight:900 !important;
    color:#16a34a !important;
    margin:0 !important;
}

.home-products-showcase .product-carousel-3d .pickup-badge,
.home-products-showcase .products-coverflow__slide .pickup-badge{
    display:inline-flex !important;
    align-items:center !important;
    gap:5px !important;
    width:auto !important;
    background:#dcfce7 !important;
    color:#0f7a35 !important;
    border-radius:999px !important;
    padding:6px 10px !important;
    font-size:12px !important;
    font-weight:800 !important;
    margin:0 0 12px !important;
}

.home-products-showcase .product-carousel-3d .card-button,
.home-products-showcase .products-coverflow__slide .card-button{
    width:100% !important;
    height:48px !important;
    min-height:48px !important;
    border-radius:16px !important;
    background:#16a34a !important;
    color:#fff !important;
    font-size:15px !important;
    font-weight:900 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-decoration:none !important;
    padding:0 10px !important;
    white-space:nowrap !important;
}

.home-products-showcase .product-carousel-3d .favorite-btn,
.home-products-showcase .products-coverflow__slide .favorite-btn{
    position:absolute !important;
    top:12px !important;
    right:12px !important;
    z-index:8 !important;
    width:46px !important;
    height:46px !important;
    min-height:46px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.94) !important;
    border:1px solid #e2e8f0 !important;
    box-shadow:0 8px 20px rgba(15,23,42,.12) !important;
    color:#e11d48 !important;
}

.home-products-showcase .product-carousel-3d .sale-badge,
.home-products-showcase .products-coverflow__slide .sale-badge{
    position:absolute !important;
    top:12px !important;
    left:12px !important;
    z-index:8 !important;
    background:#16a34a !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:900 !important;
    padding:5px 8px !important;
    border-radius:999px !important;
}

.home-products-showcase .product-carousel-3d .carousel-dots,
.home-products-showcase .products-coverflow__dots{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:8px !important;
    min-height:20px !important;
    margin:12px 0 0 !important;
}

.home-products-showcase .product-carousel-3d .carousel-dot,
.home-products-showcase .products-coverflow__dot{
    width:8px !important;
    height:8px !important;
    min-width:8px !important;
    min-height:8px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:999px !important;
    background:#cbd5e1 !important;
}

.home-products-showcase .product-carousel-3d .carousel-dot.is-active,
.home-products-showcase .products-coverflow__dot.is-active{
    width:24px !important;
    background:#16a34a !important;
}

@media (max-width:768px){
    .home-products-showcase{
        margin-top:22px !important;
        margin-bottom:24px !important;
        overflow:hidden !important;
    }

    .home-products-showcase .container{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .home-products-showcase .section-header,
    .home-products-showcase .regular-offers-head{
        padding-left:20px !important;
        padding-right:20px !important;
    }

    .home-products-showcase .section-tabs{
        display:none !important;
    }

    .home-products-showcase .section-title{
        font-size:30px !important;
        line-height:1.1 !important;
        font-weight:900 !important;
        color:#0f172a !important;
        margin:0 0 14px !important;
    }

    .home-products-showcase .regular-offers-head{
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:12px !important;
        margin-bottom:8px !important;
    }

    .home-products-showcase .regular-offers-title{
        font-size:16px !important;
        font-weight:800 !important;
        color:#0f172a !important;
    }

    .home-products-showcase .regular-offers-count{
        font-size:14px !important;
        font-weight:700 !important;
        color:#64748b !important;
    }

    .home-products-showcase .product-carousel-3d .carousel-viewport,
    .home-products-showcase .products-coverflow__viewport{
        height:510px !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide,
    .home-products-showcase .products-coverflow__slide{
        width:74vw !important;
        max-width:318px !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide.is-prev,
    .home-products-showcase .products-coverflow__slide.is-prev{
        transform:translateX(calc(-50% - 62vw)) scale(.84) !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide.is-next,
    .home-products-showcase .products-coverflow__slide.is-next{
        transform:translateX(calc(-50% + 62vw)) scale(.84) !important;
    }

    .home-products-showcase + .home-support-sections{
        margin-top:14px !important;
    }
}

@media (max-width:380px){
    .home-products-showcase .product-carousel-3d .carousel-viewport,
    .home-products-showcase .products-coverflow__viewport{
        height:492px !important;
    }

    .home-products-showcase .product-carousel-3d .product-slide,
    .home-products-showcase .products-coverflow__slide{
        width:75vw !important;
        max-width:292px !important;
    }

    .home-products-showcase .product-carousel-3d .card-image,
    .home-products-showcase .products-coverflow__slide .card-image{
        height:198px !important;
    }

    .home-products-showcase .product-carousel-3d .card-body,
    .home-products-showcase .products-coverflow__slide .card-body{
        padding:12px !important;
    }
}

/* Última camada: mantém Produtos em Sorriso como coverflow, vencendo regras antigas de grid/lista */
.home-products-showcase #pager{display:none!important}
.home-products-showcase #listar_produtos.product-carousel-3d,
.home-products-showcase #listar_produtos.products-coverflow{display:block!important;position:relative!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:8px 0 12px!important;overflow:hidden!important}
.home-products-showcase .product-carousel-3d .carousel-viewport,
.home-products-showcase .products-coverflow__viewport{position:relative!important;width:100%!important;height:520px!important;overflow:hidden!important;touch-action:pan-y!important;user-select:none!important}
.home-products-showcase .product-carousel-3d .carousel-track,
.home-products-showcase .products-coverflow__stage{position:relative!important;width:100%!important;height:100%!important;display:block!important;transform:none!important}
.home-products-showcase .product-carousel-3d .product-slide,
.home-products-showcase .products-coverflow__slide{position:absolute!important;top:10px!important;left:50%!important;flex:none!important;width:min(74vw,330px)!important;max-width:330px!important;min-width:0!important;opacity:0!important;pointer-events:none!important;transform:translateX(-50%) scale(.74)!important;transition:transform 420ms cubic-bezier(.22,.61,.36,1),opacity 420ms ease,filter 420ms ease!important;z-index:1!important}
.home-products-showcase .product-carousel-3d .product-slide.is-active,
.home-products-showcase .products-coverflow__slide.is-active{opacity:1!important;pointer-events:auto!important;transform:translateX(-50%) scale(1)!important;z-index:6!important;filter:saturate(1)!important}
.home-products-showcase .product-carousel-3d .product-slide.is-prev,
.home-products-showcase .products-coverflow__slide.is-prev{opacity:.72!important;pointer-events:auto!important;transform:translateX(calc(-50% - min(61vw,290px))) scale(.84)!important;z-index:3!important;filter:saturate(.88)!important}
.home-products-showcase .product-carousel-3d .product-slide.is-next,
.home-products-showcase .products-coverflow__slide.is-next{opacity:.72!important;pointer-events:auto!important;transform:translateX(calc(-50% + min(61vw,290px))) scale(.84)!important;z-index:3!important;filter:saturate(.88)!important}
.home-products-showcase .product-carousel-3d .product-slide.is-hidden,
.home-products-showcase .products-coverflow__slide.is-hidden{opacity:0!important;pointer-events:none!important;z-index:0!important}
.home-products-showcase .product-carousel-3d .product-card,
.home-products-showcase .products-coverflow__slide .product-card{width:100%!important;max-width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:24px!important;overflow:hidden!important;box-shadow:0 14px 34px rgba(15,23,42,.12)!important;position:relative!important}
.home-products-showcase .product-carousel-3d .product-slide.is-active .product-card,
.home-products-showcase .products-coverflow__slide.is-active .product-card{box-shadow:0 18px 46px rgba(15,23,42,.18)!important}
.home-products-showcase .product-carousel-3d .card-image,
.home-products-showcase .products-coverflow__slide .card-image{width:100%!important;height:220px!important;min-height:0!important;aspect-ratio:auto!important;background:#f8fafc!important;overflow:hidden!important}
.home-products-showcase .product-carousel-3d .card-image img,
.home-products-showcase .products-coverflow__slide .card-image img{width:100%!important;height:100%!important;max-width:100%!important;aspect-ratio:auto!important;object-fit:contain!important;display:block!important}
.home-products-showcase .product-carousel-3d .card-body,
.home-products-showcase .products-coverflow__slide .card-body{padding:14px 14px 16px!important}
.home-products-showcase .product-carousel-3d .card-store,
.home-products-showcase .products-coverflow__slide .card-store{font-size:13px!important;line-height:1.25!important;font-weight:700!important;color:#64748b!important;margin:0 0 6px!important}
.home-products-showcase .product-carousel-3d .card-title,
.home-products-showcase .products-coverflow__slide .card-title{font-size:16px!important;line-height:1.22!important;font-weight:900!important;color:#0f172a!important;min-height:40px!important;margin:0 0 10px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.home-products-showcase .product-carousel-3d .price-new,
.home-products-showcase .products-coverflow__slide .price-new{font-size:21px!important;line-height:1!important;font-weight:900!important;color:#16a34a!important;margin:0!important}
.home-products-showcase .product-carousel-3d .pickup-badge,
.home-products-showcase .products-coverflow__slide .pickup-badge{display:inline-flex!important;align-items:center!important;gap:5px!important;width:auto!important;background:#dcfce7!important;color:#0f7a35!important;border-radius:999px!important;padding:6px 10px!important;font-size:12px!important;font-weight:800!important;margin:0 0 12px!important}
.home-products-showcase .product-carousel-3d .card-button,
.home-products-showcase .products-coverflow__slide .card-button{width:100%!important;height:48px!important;min-height:48px!important;border-radius:16px!important;background:#16a34a!important;color:#fff!important;font-size:15px!important;font-weight:900!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;padding:0 10px!important;white-space:nowrap!important}
.home-products-showcase .product-carousel-3d .favorite-btn,
.home-products-showcase .products-coverflow__slide .favorite-btn{position:absolute!important;top:12px!important;right:12px!important;z-index:8!important;width:46px!important;height:46px!important;min-height:46px!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;border:1px solid #e2e8f0!important;box-shadow:0 8px 20px rgba(15,23,42,.12)!important;color:#e11d48!important}
.home-products-showcase .product-carousel-3d .sale-badge,
.home-products-showcase .products-coverflow__slide .sale-badge{position:absolute!important;top:12px!important;left:12px!important;z-index:8!important;background:#16a34a!important;color:#fff!important;font-size:12px!important;font-weight:900!important;padding:5px 8px!important;border-radius:999px!important}
.home-products-showcase .product-carousel-3d .carousel-dots,
.home-products-showcase .products-coverflow__dots{display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;min-height:20px!important;margin:12px 0 0!important}
.home-products-showcase .product-carousel-3d .carousel-dot,
.home-products-showcase .products-coverflow__dot{width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;padding:0!important;border:0!important;border-radius:999px!important;background:#cbd5e1!important}
.home-products-showcase .product-carousel-3d .carousel-dot.is-active,
.home-products-showcase .products-coverflow__dot.is-active{width:24px!important;background:#16a34a!important}
@media (max-width:768px){
    .home-products-showcase{margin-top:22px!important;margin-bottom:24px!important;overflow:hidden!important}
    .home-products-showcase .container{padding-left:0!important;padding-right:0!important}
    .home-products-showcase .section-header,.home-products-showcase .regular-offers-head{padding-left:20px!important;padding-right:20px!important}
    .home-products-showcase .section-tabs{display:none!important}
    .home-products-showcase .section-title{font-size:30px!important;line-height:1.1!important;font-weight:900!important;color:#0f172a!important;margin:0 0 14px!important}
    .home-products-showcase .regular-offers-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:8px!important}
    .home-products-showcase .regular-offers-title{font-size:16px!important;font-weight:800!important;color:#0f172a!important}
    .home-products-showcase .regular-offers-count{font-size:14px!important;font-weight:700!important;color:#64748b!important}
    .home-products-showcase .product-carousel-3d .carousel-viewport,.home-products-showcase .products-coverflow__viewport{height:510px!important}
    .home-products-showcase .product-carousel-3d .product-slide,.home-products-showcase .products-coverflow__slide{width:74vw!important;max-width:318px!important}
    .home-products-showcase .product-carousel-3d .product-slide.is-prev,.home-products-showcase .products-coverflow__slide.is-prev{transform:translateX(calc(-50% - 62vw)) scale(.84)!important}
    .home-products-showcase .product-carousel-3d .product-slide.is-next,.home-products-showcase .products-coverflow__slide.is-next{transform:translateX(calc(-50% + 62vw)) scale(.84)!important}
    .home-products-showcase + .home-support-sections{margin-top:14px!important}
}
@media (max-width:380px){
    .home-products-showcase .product-carousel-3d .carousel-viewport,.home-products-showcase .products-coverflow__viewport{height:492px!important}
    .home-products-showcase .product-carousel-3d .product-slide,.home-products-showcase .products-coverflow__slide{width:75vw!important;max-width:292px!important}
    .home-products-showcase .product-carousel-3d .card-image,.home-products-showcase .products-coverflow__slide .card-image{height:198px!important}
    .home-products-showcase .product-carousel-3d .card-body,.home-products-showcase .products-coverflow__slide .card-body{padding:12px!important}
}

body.res{
    overflow-x:hidden;
}

body.res :focus-visible{
    outline:3px solid rgba(22,180,59,.45) !important;
    outline-offset:3px !important;
    border-radius:10px;
}

button,
a,
input,
select,
textarea{
    -webkit-tap-highlight-color:rgba(22,180,59,.16);
}

button,
.btn,
[role="button"],
input[type="submit"],
input[type="button"]{
    min-height:44px;
}

input,
select,
textarea{
    font-size:16px;
}

img{
    height:auto;
}

img[src=""],
img:not([src]){
    visibility:hidden;
}

.product-card,
.vs-search-product-card,
.favorite-card,
.reservation-card,
.store-featured-card,
.home-store-card,
.vs-category-card{
    min-width:0;
    contain:layout paint;
}

.product-card .card-image,
.vs-search-product-card__image,
.favorite-card__image,
.store-featured-image,
.product-main-image{
    background:#fff;
}

.product-card .card-image img,
.vs-search-product-card__image img,
.favorite-card__image img,
.store-featured-image img,
.product-main-image img{
    display:block;
    width:100%;
    object-fit:contain;
    object-position:center;
}

.product-card .card-body,
.vs-search-product-card__body,
.favorite-card__body{
    display:flex;
    flex-direction:column;
    min-height:0;
}

.product-card .card-title,
.vs-search-product-card__title,
.favorite-card__title,
.store-featured-name,
.reservation-card h3,
.home-store-card strong,
.vs-category-card strong{
    overflow:hidden;
    text-overflow:ellipsis;
    overflow-wrap:anywhere;
}

.product-card .card-title,
.favorite-card__title,
.store-featured-name{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
}

.product-card .card-button,
.favorite-card__button,
.vs-product-action{
    margin-top:auto;
}

.vs-empty-state,
.cart-empty-state,
.favorites-empty,
.account-empty,
.account-login-empty,
.store-featured-empty,
.pedidos-empty{
    text-align:center;
}

.vs-empty-state i,
.pedidos-empty i{
    width:58px;
    height:58px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:20px;
    background:#f1f5f9;
    color:#94a3b8;
    font-size:26px;
    margin-bottom:10px;
}

.vs-error-state{
    padding:22px;
    border:1px solid #fee2e2;
    border-radius:20px;
    background:#fff7f7;
    color:#991b1b;
    font-weight:850;
    text-align:center;
}

.vs-loading-state{
    padding:22px;
    border:1px solid #e3eaf3;
    border-radius:20px;
    background:#fff;
    color:#64748b;
    font-weight:850;
    text-align:center;
}

@media(max-width:767px){
    body.res{
        padding-bottom:calc(88px + env(safe-area-inset-bottom));
    }

    .header-nav{
        display:none !important;
    }

    .mobile-bottom-nav{
        display:flex !important;
    }

    .container{
        max-width:100%;
    }

    .product-card .card-image{
        aspect-ratio:1/1;
    }

    .product-card .card-body{
        gap:7px;
    }

    .product-card .card-title{
        min-height:34px;
        font-size:13px;
        line-height:1.28;
    }

    .product-card .price-new{
        font-size:16px;
        line-height:1.1;
    }
}

@media(min-width:768px){
    body.res{
        padding-bottom:0;
    }

    .mobile-bottom-nav{
        display:none !important;
    }
}

@media(min-width:1280px){
    .container{
        max-width:1200px;
    }
}

/* Hotfix mobile home - 2026-05-27 */
:root{
    --color-bg:#F8FAFC;
    --color-card:#FFFFFF;
    --color-text:#0F172A;
    --color-muted:#64748B;
    --color-border:#E2E8F0;
    --color-primary:#16A34A;
    --color-primary-hover:#15803D;
    --color-primary-soft:#DCFCE7;
    --color-navy:#0B1F3A;
    --color-navy-2:#102A43;
    --color-warning:#FACC15;
    --color-danger:#DC2626;
}

body.res{
    background:var(--color-bg);
    color:var(--color-text);
}

.cart-flyout{
    display:none;
    visibility:hidden;
    transform:translateY(-8px);
}

.cart-flyout.in,
.cart-flyout.show,
.cart-flyout.collapsing{
    display:block;
    visibility:visible;
    transform:translateY(0);
}

.home-main-hero{
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg, var(--color-navy) 0%, var(--color-navy-2) 52%, #0F7A35 100%) !important;
}

.home-main-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(11,31,58,.96), rgba(11,31,58,.68), rgba(15,122,53,.45));
    pointer-events:none;
}

.home-main-hero__content,
.home-main-hero__visual{
    position:relative;
    z-index:1;
}

.home-main-hero__eyebrow,
.home-main-hero h1,
.home-main-hero p{
    color:#fff !important;
    text-shadow:0 2px 12px rgba(0,0,0,.18);
}

.home-main-hero p{
    color:#E2E8F0 !important;
}

.home-hero-title{
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:0 !important;
}

.home-hero-title .highlight{
    color:#22C55E;
}

.home-hero-cta,
.card-button,
.home-reservas-card__action,
.vs-ethical-banner__link,
.vs-local-callout__button{
    background:var(--color-primary) !important;
    color:#fff !important;
    border-color:var(--color-primary) !important;
}

.home-hero-cta:hover,
.card-button:hover,
.home-reservas-card__action:hover,
.vs-ethical-banner__link:hover,
.vs-local-callout__button:hover{
    background:var(--color-primary-hover) !important;
    border-color:var(--color-primary-hover) !important;
    color:#fff !important;
}

.home-hero-secondary{
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.25) !important;
}

.home-quick-benefit{
    margin-top:8px;
}

.home-sponsored-section{
    margin-top:12px;
}

.home-quick-benefit .vs-ethical-banner{
    padding:14px 16px;
    min-height:0;
}

.home-support-sections{
    margin-top:24px;
}

.vs-how-it-works__head{
    align-items:center;
    gap:12px;
}

.vs-how-it-works__head h3{
    margin:0;
    color:var(--color-text);
}

.vs-trust-link{
    white-space:nowrap;
}

.vs-local-callout{
    position:relative;
}

.vs-local-callout__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 16px;
    margin-top:12px;
    border-radius:14px;
    font-weight:900;
}

.home-store-card__initials{
    width:64px;
    height:64px;
    flex:0 0 64px;
    align-items:center;
    justify-content:center;
    border-radius:20px;
    background:linear-gradient(135deg, #DCFCE7, #DBEAFE);
    color:var(--color-navy);
    font-weight:900;
    font-size:19px;
    border:1px solid var(--color-border);
}

.product-card{
    overflow:hidden;
    border-radius:22px;
}

.product-card .card-image{
    overflow:hidden;
    aspect-ratio:1/1;
}

.product-card .card-image img{
    height:100%;
    object-fit:contain;
    background:#fff;
}

.product-card .card-button{
    border-radius:16px;
    min-height:46px;
    font-size:14px;
}

.product-card .card-rating:empty{
    display:none;
}

.back-to-top,
#back-to-top{
    background:var(--color-navy) !important;
    color:#fff !important;
    border-radius:14px !important;
    width:48px !important;
    height:48px !important;
    z-index:50 !important;
}

footer,
.footer-container{
    background:#F1F5F9 !important;
    color:var(--color-text) !important;
}

footer h3,
footer .modtitle,
.footer-container .modtitle{
    color:var(--color-text) !important;
}

footer h3::after,
footer .modtitle::after,
.footer-container .modtitle::after{
    background:var(--color-primary) !important;
    border-color:var(--color-primary) !important;
}

.footer-bottom,
.copyright,
.footer-bottom-container{
    background:var(--color-navy) !important;
    color:#fff !important;
    text-align:center;
    line-height:1.4;
}

@media(max-width:767px){
    main,
    .page-home{
        padding-bottom:96px;
    }

    .market-header,
    .header-top,
    .header-mid{
        background:var(--color-navy) !important;
    }

    .header-top{
        padding:12px 0 !important;
    }

    .header-top__inner{
        min-height:0 !important;
        height:56px !important;
        display:grid !important;
        grid-template-columns:48px minmax(0,1fr) auto !important;
        align-items:center !important;
        gap:12px !important;
    }

    .mobile-menu-toggle,
    .header-actions .action-link{
        width:48px !important;
        height:48px !important;
        min-width:48px !important;
        border-radius:16px !important;
        background:rgba(255,255,255,.08) !important;
        border:1px solid rgba(255,255,255,.16) !important;
        color:#fff !important;
        box-shadow:none !important;
    }

    .mobile-menu-toggle i,
    .header-actions .action-link i{
        color:#fff !important;
        font-size:19px !important;
    }

    .header-actions{
        display:flex !important;
        align-items:center !important;
        gap:8px !important;
    }

    .header-login-link span{
        display:none !important;
    }

    .header-logout-link{
        background:rgba(255,255,255,.08) !important;
        color:#fff !important;
    }

    .cart-count{
        min-width:20px !important;
        height:20px !important;
        padding:0 5px !important;
        font-size:10px !important;
        background:var(--color-primary) !important;
        color:#fff !important;
    }

    .header-brand-stack{
        justify-content:center !important;
        gap:4px !important;
        min-width:0 !important;
        overflow:hidden !important;
    }

    .header-logo img{
        display:none !important;
    }

    .header-logo a{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-width:0 !important;
        text-decoration:none !important;
    }

    .header-logo a::after{
        content:"Vitrine Sorriso";
        color:#fff;
        font-weight:900;
        font-size:15px;
        line-height:1;
        white-space:nowrap;
    }

    .header-location-pill{
        background:transparent !important;
        border:0 !important;
        color:#DBEAFE !important;
        padding:0 !important;
        font-size:12px !important;
        box-shadow:none !important;
        max-width:100%;
    }

    .header-location-pill i{
        color:#22C55E !important;
    }

    .header-mid{
        padding:0 0 12px !important;
    }

    .header-mid .container{
        padding-left:16px !important;
        padding-right:16px !important;
    }

    .header-search-form,
    .home-search-form{
        min-height:56px !important;
        height:56px !important;
        border-radius:24px !important;
        border:1px solid var(--color-border) !important;
        box-shadow:0 8px 22px rgba(15,23,42,.10) !important;
        background:#fff !important;
    }

    .header-search-form input,
    .home-search-form input{
        height:56px !important;
        color:var(--color-text) !important;
    }

    .header-search-form input::placeholder,
    .home-search-form input::placeholder{
        color:#94A3B8 !important;
    }

    .header-search-form button,
    .home-search-form button{
        width:52px !important;
        height:52px !important;
        min-height:52px !important;
        border-radius:20px !important;
        background:var(--color-primary) !important;
    }

    .home-first-fold{
        padding-top:14px !important;
    }

    .home-first-fold__grid{
        gap:14px !important;
    }

    .home-main-hero{
        min-height:0 !important;
        padding:22px 18px !important;
        border-radius:22px !important;
    }

    .home-main-hero h1{
        font-size:28px !important;
    }

    .home-main-hero p{
        font-size:14px !important;
        line-height:1.45 !important;
    }

    .home-main-hero__visual{
        display:none !important;
    }

    .home-main-hero__actions{
        gap:10px !important;
    }

    .home-main-hero__actions a{
        min-height:44px !important;
        border-radius:14px !important;
        padding:0 14px !important;
        font-size:13px !important;
    }

    .home-benefits-strip .container{
        display:flex !important;
        gap:12px !important;
        overflow-x:auto !important;
        scroll-snap-type:x mandatory;
        padding:0 16px 8px !important;
        scrollbar-width:none;
    }

    .home-benefits-strip .container::-webkit-scrollbar,
    .vs-home-categories-v2__rail::-webkit-scrollbar,
    .home-stores-row::-webkit-scrollbar{
        display:none;
    }

    .home-benefit-card{
        min-width:250px !important;
        scroll-snap-align:start;
        border-radius:18px !important;
        background:#fff !important;
        border:1px solid var(--color-border) !important;
        box-shadow:0 8px 24px rgba(15,23,42,.06) !important;
        padding:14px !important;
    }

    .home-quick-benefit{
        margin-top:4px !important;
    }

    .home-sponsored-section{
        margin-top:10px !important;
    }

    .home-sponsored-section .sponsored-offers.is-visible{
        margin-bottom:10px !important;
    }

    .home-quick-benefit .vs-ethical-banner{
        align-items:center !important;
        gap:12px !important;
    }

    .home-quick-benefit .vs-ethical-banner__copy span{
        font-size:13px !important;
    }

    .vs-home-categories-v2__rail{
        gap:12px !important;
        scrollbar-width:none;
    }

    .vs-home-categories-v2__card{
        min-width:150px !important;
        border-radius:20px !important;
        padding:16px !important;
    }

    .vs-home-categories-v2__image,
    .category-card img{
        width:72px !important;
        height:72px !important;
    }

    .home-stores-row{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:12px !important;
        overflow:visible !important;
        padding-bottom:0 !important;
    }

    .home-store-card{
        width:100% !important;
        min-width:0 !important;
        border-radius:20px !important;
        padding:14px !important;
    }

    .home-store-card img{
        width:64px !important;
        height:64px !important;
        border-radius:20px !important;
        object-fit:cover !important;
    }

    .home-store-card strong{
        white-space:normal !important;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
    }

    .page-home #listar_produtos.product-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:12px !important;
    }

    .product-card .card-body{
        padding:10px !important;
    }

    .product-card .card-title{
        min-height:36px !important;
        font-size:13px !important;
    }

    .product-card .card-store{
        font-size:11px !important;
    }

    .product-card .price-new{
        font-size:17px !important;
    }

    .product-card .pickup-badge,
    .product-card .sponsored-label{
        font-size:10px !important;
        padding:5px 7px !important;
    }

    .product-card .card-button{
        min-height:42px !important;
        font-size:13px !important;
        border-radius:14px !important;
    }

    .vs-how-it-works,
    .vs-local-callout,
    .home-reservas-card{
        margin-top:16px !important;
    }

    .vs-how-it-works__head{
        flex-direction:column !important;
        align-items:flex-start !important;
    }

    .vs-trust-link{
        width:100% !important;
    }

    .vs-steps{
        grid-template-columns:1fr !important;
        gap:12px !important;
    }

    .mobile-bottom-nav{
        height:72px !important;
        padding:8px 8px calc(8px + env(safe-area-inset-bottom)) !important;
        background:#fff !important;
        border-top:1px solid var(--color-border) !important;
        box-shadow:0 -8px 30px rgba(15,23,42,.08) !important;
        gap:0 !important;
    }

    .mobile-bottom-nav a,
    .mobile-bottom-nav button{
        flex:1 1 0 !important;
        min-width:0 !important;
        height:56px !important;
        padding:5px 2px !important;
        border-radius:0 !important;
        gap:4px !important;
        font-size:11px !important;
        color:#475569 !important;
        background:transparent !important;
    }

    .mobile-bottom-nav i{
        font-size:20px !important;
    }

    .mobile-bottom-nav .is-active{
        color:var(--color-primary) !important;
        background:transparent !important;
    }

    .mobile-bottom-nav .is-active::after{
        content:"";
        width:20px;
        height:3px;
        border-radius:999px;
        background:var(--color-primary);
        display:block;
    }

    .mobile-bottom-nav__badge{
        min-width:18px !important;
        height:18px !important;
        padding:0 5px !important;
        font-size:10px !important;
        top:-2px !important;
        right:calc(50% - 24px) !important;
        box-shadow:0 4px 10px rgba(34,197,94,.28) !important;
    }

    .back-to-top,
    #back-to-top{
        right:16px !important;
        bottom:calc(96px + env(safe-area-inset-bottom)) !important;
    }

    footer,
    .footer-container{
        padding-bottom:110px !important;
    }

    .footer-bottom,
    .copyright,
    .footer-bottom-container{
        font-size:13px !important;
        padding:14px 16px !important;
        white-space:normal !important;
    }
}

/* Segunda correcao cirurgica mobile - home/global */
html,
body{
    max-width:100%;
    overflow-x:hidden;
}

*,
*::before,
*::after{
    box-sizing:border-box;
}

img,
video{
    max-width:100%;
}

.container,
.section,
.page-section,
.home-section{
    max-width:100%;
}

.hero-title,
.hero-title h1,
.hero-title span,
.home-hero h1,
.banner-principal h1,
.home-main-hero h1,
.home-main-hero .home-hero-title,
.home-main-hero .home-hero-title span{
    color:#FFFFFF !important;
    text-shadow:0 2px 12px rgba(0,0,0,.25) !important;
}

.hero-title .highlight,
.home-hero .highlight,
.banner-principal .highlight,
.home-main-hero .highlight,
.home-main-hero .home-hero-title .highlight{
    color:#22C55E !important;
}

.home-hero,
.banner-principal,
.hero-banner,
.home-main-hero{
    position:relative;
    overflow:hidden;
}

.home-hero::before,
.banner-principal::before,
.hero-banner::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(11,31,58,.25);
    pointer-events:none;
}

.home-hero > *,
.banner-principal > *,
.hero-banner > *{
    position:relative;
    z-index:1;
}

.card-rating:empty,
.product-card .card-rating:empty{
    display:none !important;
}

@media(max-width:768px){
    .section,
    .home-section,
    .page-section,
    .content-section,
    .categories-section,
    .stores-section,
    .products-section,
    .how-it-works-section,
    .reservations-section,
    .vs-home-categories-v2,
    .home-stores-highlight,
    .product-section,
    .home-support-sections,
    .home-sponsored-section,
    .home-benefits-strip{
        margin-top:24px !important;
        margin-bottom:24px !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
    }

    .section + .section,
    .home-section + .home-section,
    .page-section + .page-section{
        margin-top:28px !important;
    }

    .spacer,
    .empty-space,
    .section-spacer,
    .footer-spacer{
        display:none !important;
        height:0 !important;
        min-height:0 !important;
    }

    .home-block,
    .featured-block,
    .products-wrapper,
    .footer-spacer{
        min-height:auto !important;
    }

    .home-first-fold{
        margin-bottom:18px !important;
    }

    .home-main-hero h1,
    .home-main-hero .home-hero-title{
        color:#fff !important;
        font-size:27px !important;
    }

    .home-quick-benefit,
    .first-time-card,
    .primeira-vez-card,
    .benefit-first-reservation{
        padding:0 16px !important;
        margin-top:12px !important;
        margin-bottom:12px !important;
    }

    .home-quick-benefit .vs-ethical-banner,
    .first-time-card,
    .primeira-vez-card,
    .benefit-first-reservation{
        padding:14px !important;
        border-radius:18px !important;
    }

    .first-time-card p,
    .primeira-vez-card p,
    .benefit-first-reservation p,
    .home-quick-benefit .vs-ethical-banner__copy span{
        font-size:14px !important;
        line-height:1.35 !important;
        margin:0 !important;
    }

    .categories-carousel,
    .category-carousel,
    .mobile-carousel,
    .vs-home-categories-v2__rail{
        display:flex !important;
        gap:12px !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        scroll-snap-type:x mandatory;
        -webkit-overflow-scrolling:touch;
        padding:0 16px 8px !important;
        scrollbar-width:none;
    }

    .categories-carousel::-webkit-scrollbar,
    .category-carousel::-webkit-scrollbar,
    .mobile-carousel::-webkit-scrollbar,
    .vs-home-categories-v2__rail::-webkit-scrollbar{
        display:none !important;
    }

    .category-card,
    .vs-home-categories-v2__card{
        flex:0 0 31% !important;
        min-width:130px !important;
        max-width:150px !important;
        padding:14px 10px !important;
        border-radius:18px !important;
    }

    .category-card img,
    .category-card .icon,
    .vs-home-categories-v2__image,
    .vs-home-categories-v2__image img,
    .home-category-icon-fallback{
        width:64px !important;
        height:64px !important;
        object-fit:contain;
        margin-bottom:8px !important;
    }

    .category-card .title,
    .category-card h3,
    .category-card span,
    .vs-home-categories-v2__card strong{
        font-size:14px !important;
        line-height:1.2 !important;
        text-align:center;
    }

    .stores-carousel,
    .stores-slider,
    .featured-stores-carousel,
    .home-stores-row{
        display:flex !important;
        flex-direction:column !important;
        gap:12px !important;
        overflow:visible !important;
        padding:0 16px !important;
        width:100% !important;
    }

    .stores-carousel::-webkit-scrollbar,
    .stores-slider::-webkit-scrollbar,
    .featured-stores-carousel::-webkit-scrollbar,
    .home-stores-row::-webkit-scrollbar{
        display:none !important;
    }

    .stores-section .scrollbar,
    .stores-section .carousel-scrollbar,
    .featured-stores .scrollbar,
    .home-stores-highlight .scrollbar{
        display:none !important;
    }

    .store-card,
    .featured-store-card,
    .home-store-card{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        flex:none !important;
        box-sizing:border-box !important;
        border-radius:20px !important;
        padding:14px !important;
    }

    .home-store-card__cta{
        display:inline-flex !important;
        width:auto !important;
        margin-top:8px !important;
    }

    .product-grid,
    .products-grid,
    .products-list,
    .page-home #listar_produtos.product-grid{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:12px !important;
        padding-left:16px !important;
        padding-right:16px !important;
        box-sizing:border-box !important;
        width:100% !important;
        overflow:hidden !important;
    }

    .product-card{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        overflow:hidden !important;
        border-radius:20px !important;
        box-sizing:border-box !important;
    }

    .product-card img{
        width:100% !important;
        max-width:100% !important;
        aspect-ratio:1/1 !important;
        object-fit:cover !important;
    }

    .product-card .card-image img{
        height:100% !important;
        object-fit:contain !important;
    }

    .product-card .product-content,
    .product-card .content,
    .product-card .card-body{
        padding:12px !important;
    }

    .product-card .product-title,
    .product-card h3,
    .product-card .title,
    .product-card .card-title{
        font-size:14px !important;
        line-height:1.25 !important;
        min-height:36px !important;
        display:-webkit-box !important;
        -webkit-line-clamp:2 !important;
        -webkit-box-orient:vertical !important;
        overflow:hidden !important;
    }

    .product-card .product-price,
    .product-card .price,
    .product-card .price-new{
        font-size:17px !important;
        margin-top:8px !important;
    }

    .product-card .btn,
    .product-card button,
    .product-card .product-button,
    .product-card .card-button{
        width:100% !important;
        height:44px !important;
        min-height:44px !important;
        border-radius:14px !important;
        font-size:13px !important;
        padding:0 8px !important;
        white-space:nowrap !important;
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
    }

    .pager,
    .pagination,
    .products-pagination{
        margin:18px 0 14px !important;
        padding:0 !important;
        min-height:0 !important;
    }

    .home-support-sections,
    .how-it-works-section,
    .vs-how-it-works{
        margin-top:20px !important;
    }

    .home-reservas-card{
        margin-top:18px !important;
    }

    .site-footer,
    footer,
    .footer-container{
        background:#F1F5F9 !important;
        padding:28px 20px 120px !important;
        margin-top:32px !important;
    }

    .typefooter-1 .footer-middle{
        padding:0 !important;
    }

    .site-footer h3,
    footer h3,
    .footer-title,
    .typefooter-1 .modtitle{
        color:#0F172A !important;
        border-bottom:2px solid #16A34A !important;
        padding-bottom:6px !important;
        display:inline-block !important;
    }

    .site-footer h3::after,
    footer h3::after,
    .footer-title::after,
    .typefooter-1 .modtitle::after{
        background:#16A34A !important;
        border-color:#16A34A !important;
    }

    .footer-bottom,
    .copyright{
        background:#0B1F3A !important;
        color:#FFFFFF !important;
        text-align:center !important;
        font-size:13px !important;
        line-height:1.4 !important;
        padding:14px 18px !important;
        white-space:normal !important;
        word-break:normal !important;
    }

    .back-to-top,
    #backToTop,
    #back-to-top,
    .scroll-top{
        right:16px !important;
        bottom:96px !important;
        width:46px !important;
        height:46px !important;
        border-radius:14px !important;
        background:#0B1F3A !important;
        color:#FFFFFF !important;
        z-index:80 !important;
    }

    .mobile-bottom-nav{
        height:72px !important;
        padding:6px 8px calc(6px + env(safe-area-inset-bottom)) !important;
        background:#FFFFFF !important;
        border-top:1px solid #E2E8F0 !important;
        box-shadow:0 -8px 28px rgba(15,23,42,.08) !important;
        z-index:100 !important;
    }

    .mobile-bottom-nav a,
    .mobile-bottom-nav button,
    .mobile-bottom-nav .nav-item{
        flex:1 !important;
        min-width:0 !important;
        height:58px !important;
        gap:3px !important;
        font-size:11px !important;
        font-weight:600 !important;
        border-radius:0 !important;
        background:transparent !important;
    }

    .mobile-bottom-nav .active,
    .mobile-bottom-nav .is-active{
        color:#16A34A !important;
        background:transparent !important;
    }

    .mobile-bottom-nav .active::after,
    .mobile-bottom-nav .is-active::after{
        content:"";
        width:20px;
        height:3px;
        border-radius:999px;
        background:#16A34A;
        margin-top:2px;
    }

    .mobile-bottom-nav .badge,
    .mobile-bottom-nav .nav-badge,
    .mobile-bottom-nav__badge{
        min-width:17px !important;
        height:17px !important;
        font-size:10px !important;
        top:0 !important;
        right:22% !important;
        padding:0 4px !important;
    }
}

/* Ajuste final: reduzir espacos e altura no mobile sem alterar funcionalidades. */
@media (max-width:768px){
    body{
        padding-bottom:68px !important;
    }

    main,
    .page-content,
    .content-wrapper,
    .page-home{
        padding-bottom:78px !important;
    }

    .section,
    .home-section,
    .page-section,
    .content-section,
    .categories-section,
    .stores-section,
    .products-section,
    .how-it-works-section,
    .reservations-section,
    .local-banner-section,
    .home-first-fold,
    .home-benefits-strip,
    .home-quick-benefit,
    .home-sponsored-section,
    .vs-home-categories-v2,
    .home-stores-highlight,
    .product-section,
    .home-support-sections,
    .home-reservas-card{
        margin-top:18px !important;
        margin-bottom:18px !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
        min-height:auto !important;
    }

    .spacer,
    .empty-space,
    .section-spacer,
    .home-spacer,
    .footer-spacer{
        display:none !important;
        height:0 !important;
        min-height:0 !important;
        margin:0 !important;
        padding:0 !important;
    }

    .home-block,
    .hero-wrapper,
    .content-wrapper,
    .products-wrapper,
    .categories-wrapper,
    .stores-wrapper,
    .footer-wrapper,
    .section-wrapper{
        min-height:auto !important;
        height:auto !important;
    }

    .home-search-form,
    .search-box,
    .search-input-wrapper{
        height:56px !important;
        min-height:56px !important;
    }

    .home-main-hero,
    .home-hero,
    .hero-banner,
    .banner-principal{
        min-height:auto !important;
        margin-bottom:16px !important;
        border-radius:24px !important;
    }

    .home-main-hero__content{
        min-height:auto !important;
        padding:20px 18px !important;
    }

    .home-main-hero h1,
    .home-hero h1,
    .hero-banner h1,
    .banner-principal h1{
        font-size:28px !important;
        line-height:1.08 !important;
        margin-bottom:12px !important;
        color:#FFFFFF !important;
    }

    .home-main-hero p,
    .home-hero p,
    .hero-banner p,
    .banner-principal p{
        font-size:14px !important;
        line-height:1.4 !important;
        margin-bottom:12px !important;
    }

    .home-main-hero__actions{
        gap:8px !important;
        margin-top:12px !important;
    }

    .home-main-hero__actions a{
        min-height:44px !important;
        height:44px !important;
    }

    .home-quick-benefit .vs-ethical-banner,
    .first-time-card,
    .primeira-vez-card,
    .benefit-first-reservation{
        margin-top:14px !important;
        margin-bottom:14px !important;
        padding:14px !important;
        border-radius:20px !important;
    }

    .vs-home-categories-v2__container,
    .categories-section .section-card,
    .categories-box,
    .categories-wrapper{
        padding:16px !important;
        border-radius:22px !important;
    }

    .vs-home-categories-v2__head h2,
    .categories-section h2{
        font-size:24px !important;
        line-height:1.15 !important;
        margin-bottom:12px !important;
    }

    .vs-home-categories-v2__rail,
    .categories-carousel,
    .category-carousel,
    .mobile-carousel{
        gap:10px !important;
        padding-bottom:4px !important;
        scrollbar-width:none !important;
    }

    .vs-home-categories-v2__rail::-webkit-scrollbar,
    .categories-carousel::-webkit-scrollbar,
    .category-carousel::-webkit-scrollbar,
    .mobile-carousel::-webkit-scrollbar{
        display:none !important;
    }

    .vs-home-categories-v2__card,
    .category-card{
        min-height:120px !important;
        min-width:122px !important;
        padding:12px 9px !important;
        border-radius:17px !important;
    }

    .vs-home-categories-v2__image,
    .vs-home-categories-v2__image img,
    .home-category-icon-fallback,
    .category-card img,
    .category-card .icon{
        width:58px !important;
        height:58px !important;
        margin-bottom:7px !important;
    }

    .home-stores-highlight .container,
    .stores-section .section-card,
    .featured-stores-wrapper{
        padding:16px !important;
        border-radius:22px !important;
    }

    .marketplace-block-title,
    .stores-section h2,
    .featured-stores-section h2{
        font-size:24px !important;
        margin-bottom:4px !important;
    }

    .marketplace-block-subtitle,
    .stores-section p,
    .featured-stores-section p{
        font-size:14px !important;
        margin-bottom:0 !important;
    }

    .home-store-card,
    .store-card,
    .featured-store-card{
        padding:12px !important;
        border-radius:18px !important;
        min-height:auto !important;
    }

    .product-section .container{
        padding-bottom:0 !important;
    }

    .product-section .section-header,
    .products-section .section-header{
        margin-bottom:10px !important;
    }

    .product-section .section-title,
    .products-section h2{
        font-size:22px !important;
        margin-bottom:12px !important;
    }

    .product-grid,
    .products-grid,
    .page-home #listar_produtos.product-grid{
        gap:10px !important;
    }

    .product-card{
        border-radius:18px !important;
    }

    .product-card .content,
    .product-card .product-content,
    .product-card .card-body{
        padding:10px !important;
    }

    .product-card .title,
    .product-card h3,
    .product-card .card-title{
        font-size:13px !important;
        line-height:1.25 !important;
        margin-bottom:6px !important;
        min-height:33px !important;
    }

    .product-card .price,
    .product-card .price-new{
        font-size:16px !important;
        margin-bottom:6px !important;
    }

    .product-card .btn,
    .product-card button,
    .product-card .card-button{
        height:40px !important;
        min-height:40px !important;
        font-size:13px !important;
        border-radius:13px !important;
    }

    .pagination,
    .products-pagination,
    .pager{
        margin:14px 0 12px !important;
        padding:0 !important;
    }

    .vs-how-it-works,
    .how-it-works-section .section-card,
    .como-funciona-section .section-card{
        padding:16px !important;
        border-radius:22px !important;
    }

    .vs-step,
    .how-card,
    .step-card,
    .how-it-works-card{
        padding:14px !important;
        border-radius:17px !important;
        margin-bottom:10px !important;
    }

    .vs-local-callout,
    .local-callout,
    .before-buying-banner,
    .commerce-local-banner{
        padding:16px !important;
        margin-top:14px !important;
        margin-bottom:16px !important;
        border-radius:22px !important;
    }

    footer,
    .site-footer,
    .footer-container{
        padding:24px 20px 92px !important;
        margin-top:20px !important;
    }

    .footer-contact,
    .footer-info,
    .footer-social,
    .footer-column,
    .typefooter-1 .box-footer .module,
    .typefooter-1 .infos-footer{
        margin-bottom:20px !important;
    }

    footer h3,
    .site-footer h3,
    .footer-title,
    .typefooter-1 .modtitle{
        font-size:16px !important;
        margin-bottom:10px !important;
        padding-bottom:5px !important;
    }

    .footer-bottom,
    .copyright{
        margin-top:12px !important;
        padding:14px 16px !important;
        font-size:14px !important;
        line-height:1.35 !important;
    }

    .back-to-top,
    #backToTop,
    #back-to-top,
    .scroll-top{
        width:44px !important;
        height:44px !important;
        right:16px !important;
        bottom:88px !important;
        border-radius:14px !important;
    }

    .mobile-bottom-nav{
        height:68px !important;
        padding:4px 8px calc(4px + env(safe-area-inset-bottom)) !important;
    }

    .mobile-bottom-nav a,
    .mobile-bottom-nav button,
    .mobile-bottom-nav .nav-item{
        height:54px !important;
        min-height:54px !important;
        font-size:11px !important;
    }

    .mobile-bottom-nav .active,
    .mobile-bottom-nav .is-active{
        background:rgba(22,163,74,.08) !important;
        border-radius:0 !important;
    }

    .mobile-bottom-nav svg,
    .mobile-bottom-nav i{
        width:22px !important;
        height:22px !important;
        font-size:20px !important;
    }
}
