/**
 * Central dos Pisos Contagem - Folha de Estilos Global Consolidada (Blindagem)
 *
 * Este arquivo substitui a dependência volátil do post-7.css gerado pelo Elementor.
 * Todas as variáveis da marca, tipografia e custom CSS residem aqui permanentemente versionados.
 *
 * Cores da Marca:
 * - Primária (Azul Oficial): #3B488B
 * - Secundária (Laranja Oficial): #E0922F
 * - Accent (Verde WhatsApp): #25D366
 * - Fundo Claro: #F5F6F8 / #FEFEFE / #F6F1E8
 * - Tipografia: Rubik, sans-serif
 */

/* ==========================================================================
   0. VARIÁVEIS GLOBAIS E IDENTIDADE VISUAL
   ========================================================================== */
:root, .elementor-kit-7 {
    --cdp-color-primary: #3B488B;
    --cdp-color-secondary: #E0922F;
    --cdp-color-accent: #25D366;
    --cdp-color-bg-light: #F5F6F8;
    --cdp-color-white: #FEFEFE;
    --cdp-color-cream: #F6F1E8;

    /* Variáveis do Elementor Kit #7 */
    --e-global-color-primary: #3B488B;
    --e-global-color-secondary: #E0922F;
    --e-global-color-text: #3B488B;
    --e-global-color-accent: #25D366;
    --e-global-color-ea02056: #F5F6F8;
    --e-global-color-d20ad9a: #FEFEFE;
    --e-global-color-99dbdd1: #F6F1E8;

    --e-global-typography-primary-font-family: "Rubik", sans-serif;
    --e-global-typography-primary-font-weight: 700;
    --e-global-typography-primary-text-transform: none;

    --e-global-typography-secondary-font-family: "Rubik", sans-serif;
    --e-global-typography-secondary-font-weight: 500;
    --e-global-typography-secondary-text-transform: none;

    --e-global-typography-text-font-family: "Rubik", sans-serif;
    --e-global-typography-text-font-weight: 400;
    --e-global-typography-text-text-transform: none;

    --e-global-typography-accent-font-family: "Rubik", sans-serif;
    --e-global-typography-accent-font-weight: 500;
    --e-global-typography-accent-text-transform: uppercase;

    --lightbox-ui-color: #3B488B;
    --lightbox-text-color: #3B488B;
}

/* ==========================================================================
   1. CABEÇALHO DO CATÁLOGO E FILTROS (AJAX / BASE64)
   ========================================================================== */
.woocommerce .before-shop-loop,
.elementor-widget-woocommerce-archive-products .before-shop-loop {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 30px !important;
    padding-bottom: 15px !important;
    border-bottom: 1px solid #E2E8F0 !important;
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
    float: none !important;
    margin: 0 !important;
}

.woocommerce .woocommerce-result-count {
    font-family: 'Rubik', sans-serif !important;
    font-size: 14px !important;
    color: #64748b !important;
    font-weight: 400 !important;
}

.woocommerce .woocommerce-ordering select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-color: #FEFEFE !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 12px !important;
    padding: 10px 40px 10px 15px !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 14px !important;
    color: #3B488B !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    box-shadow: 0 2px 10px rgba(59, 72, 139, 0.03) !important;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiMzQjQ4OEIiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cG9seWxpbmUgcG9pbnRzPSI2IDkgMTIgMTUgMTggOSI+PC9wb2x5bGluZT48L3N2Zz4=") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 16px !important;
    transition: all 0.3s ease !important;
}

.woocommerce .woocommerce-ordering select:focus {
    outline: none !important;
    border-color: #3B488B !important;
    box-shadow: 0 0 0 3px rgba(59, 72, 139, 0.15) !important;
}

@media (max-width: 768px) {
    .woocommerce .before-shop-loop,
    .elementor-widget-woocommerce-archive-products .before-shop-loop {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 15px !important;
    }
    .woocommerce .woocommerce-ordering,
    .woocommerce .woocommerce-ordering select {
        width: 100% !important;
        text-align: left !important;
    }
}

/* ==========================================================================
   2. SINGLE PRODUCT E ALERTAS
   ========================================================================== */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
    display: none !important;
}

.woocommerce div.product form.cart,
.elementor-widget-woocommerce-product-add-to-cart form.cart {
    width: 100% !important;
    display: block !important;
    margin-top: 15px !important;
}

.e-atc-qty-button-holder {
    width: 100% !important;
    margin: 0 !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button,
.elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button,
.elementor-widget-woocommerce-product-add-to-cart form.cart .single_add_to_cart_button,
.e-atc-qty-button-holder .single_add_to_cart_button {
    width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 10px !important;
    padding: 18px 20px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 12px !important;
    transition: all 0.3s ease !important;
    float: none !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover,
.elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

/* Botão WhatsApp Single Product com mesmo formato e dimensões do Adicionar ao Carrinho */
.eng-abrir-popup.eng-abrir-popup-produto {
    width: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 14px !important;
    padding: 18px 20px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 12px !important;
    background: #25D366 !important;
    color: #ffffff !important;
    border: none !important;
    text-decoration: none !important;
    line-height: 1 !important;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.35) !important;
    transition: all 0.3s ease !important;
}

.eng-abrir-popup.eng-abrir-popup-produto:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.45) !important;
    color: #ffffff !important;
}

/* ==========================================================================
   3. BLINDAGEM MOBILE (BOTTOM BAR E FILTROS SWIPE)
   ========================================================================== */
@media (max-width: 768px) {
    body {
        padding-bottom: 85px !important;
    }
    .eng-filtro-swipe .elementor-widget-container > div,
    .eng-filtro-swipe .elementor-widget-container > nav,
    .eng-filtro-swipe .elementor-widget-container > ul {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        width: 100% !important;
        gap: 12px !important;
        padding-bottom: 10px !important;
    }
    .eng-filtro-swipe .elementor-widget-container > div::-webkit-scrollbar,
    .eng-filtro-swipe .elementor-widget-container > nav::-webkit-scrollbar {
        display: none !important;
    }
    .eng-filtro-swipe .elementor-widget-container > div > *,
    .eng-filtro-swipe .elementor-widget-container > nav > *,
    .eng-filtro-swipe .elementor-widget-container > ul > * {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        width: auto !important;
        white-space: nowrap !important;
        margin: 0 !important;
        padding: 8px 24px !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 50px !important;
    }
}

/* ==========================================================================
   4. CARRINHO FLUTUANTE (ESTRUTURA E GAVETA BLINDADA)
   ========================================================================== */
html body .elementor-menu-cart__main {
    display: flex !important;
    flex-direction: column !important;
}

html body .elementor-menu-cart__products,
html body .widget_shopping_cart_content ul.cart_list {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    min-height: 50px !important;
    padding-right: 5px !important;
}

.elementor-menu-cart__container .elementor-menu-cart__main {
    top: 20px !important;
    bottom: 20px !important;
    right: 20px !important;
    height: calc(100vh - 40px) !important;
    max-width: 420px !important;
    z-index: 999999 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 40px rgba(59, 72, 139, 0.15) !important;
    border: 1px solid #E2E8F0 !important;
    opacity: 0 !important;
    transform: scale(0.9) !important;
    transform-origin: center right !important;
    visibility: hidden !important;
    transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.2), visibility 0.3s !important;
}

.elementor-menu-cart--shown .elementor-menu-cart__main,
body.elementor-menu-cart--shown .elementor-menu-cart__container .elementor-menu-cart__main {
    opacity: 1 !important;
    transform: scale(1) !important;
    visibility: visible !important;
}

@media (max-width: 1024px) {
    html body .elementor-menu-cart__container .elementor-menu-cart__main {
        top: 20px !important;
        left: 20px !important;
        right: 20px !important;
        bottom: 105px !important;
        height: calc(100dvh - 125px) !important;
        width: auto !important;
        max-width: none !important;
        background-color: #FEFEFE !important;
    }
    html body .elementor-menu-cart__background,
    html body .elementor-menu-cart-overlay {
        background-color: #E0922FDE !important;
        backdrop-filter: blur(2px) !important;
    }
}

html body .widget_shopping_cart_content ul.cart_list li.woocommerce-mini-cart-item,
html body .elementor-menu-cart__product {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 8px 35px 8px 8px !important;
    background-color: #FEFEFE !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 8px !important;
    margin-bottom: 8px !important;
    box-shadow: 0 1px 5px rgba(0,0,0,0.02) !important;
    position: relative !important;
    gap: 0 !important;
}

html body .widget_shopping_cart_content ul.cart_list li.woocommerce-mini-cart-item:hover,
html body .elementor-menu-cart__product:hover {
    border-color: #3B488B !important;
    transform: translateY(-2px) !important;
}

html body .elementor-menu-cart__product-image,
html body .elementor-menu-cart__product-image img,
html body .widget_shopping_cart_content ul.cart_list li.woocommerce-mini-cart-item img {
    flex: 0 0 45px !important;
    width: 45px !important;
    height: 45px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
}

html body .widget_shopping_cart_content ul.cart_list li.woocommerce-mini-cart-item a:not(.remove),
html body .elementor-menu-cart__product-name,
html body .elementor-menu-cart__product-name a {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    line-height: 1.2 !important;
    color: #3B488B !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body .elementor-menu-cart__product-price,
html body .widget_shopping_cart_content ul.cart_list li.woocommerce-mini-cart-item .quantity {
    flex: 0 0 auto !important;
    text-align: right !important;
    margin: 0 0 0 auto !important;
    font-size: 11px !important;
    color: #888 !important;
}

html body .widget_shopping_cart_content ul.cart_list li.woocommerce-mini-cart-item .quantity .amount,
html body .elementor-menu-cart__product-price .amount {
    display: block !important;
    margin-top: 2px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #333 !important;
}

.elementor-menu-cart__product-remove,
.widget_shopping_cart_content ul.cart_list li.woocommerce-mini-cart-item a.remove {
    position: absolute !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #A0AEC0 !important;
    font-size: 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    z-index: 10 !important;
    background: transparent !important;
}

/* ==========================================================================
   5. BOTÕES DO FLUTUANTE (BLINDAGEM CONTRA O "FINALIZAR COMPRA")
   ========================================================================== */
html body .elementor-menu-cart__subtotal,
html body .elementor-menu-cart__footer-buttons {
    flex-shrink: 0 !important;
    width: 100% !important;
    background-color: #FEFEFE !important;
    box-sizing: border-box !important;
}

html body .elementor-menu-cart__subtotal {
    padding: 15px 20px !important;
    border-top: 1px solid #F2F3F2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

html body .elementor-menu-cart__subtotal strong {
    font-weight: 500 !important;
    color: #3B488B !important;
}

html body .elementor-menu-cart__subtotal .amount {
    font-weight: 700 !important;
    color: #E0922F !important;
}

html body .elementor-menu-cart__footer-buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 15px 20px 20px 20px !important;
    z-index: 99 !important;
}

/* O EXTERMINADOR DO CHECKOUT NATIVO */
html body .elementor-menu-cart__footer-buttons .elementor-button--checkout,
html body .widget_shopping_cart_content .woocommerce-mini-cart__buttons a.checkout,
html body .elementor-menu-cart__footer-buttons a[href*="checkout"],
html body .elementor-menu-cart__footer-buttons a[href*="finalizar-compra"],
html body .elementor-menu-cart__footer-buttons a[href*="finalizar"] { 
    display: none !important;
    opacity: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    visibility: hidden !important;
    border: none !important;
    overflow: hidden !important; 
}

html body .elementor-menu-cart__footer-buttons .elementor-button,
html body .elementor-menu-cart__footer-buttons a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 48px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    border: none !important;
    transition: all 0.3s ease !important;
    margin: 0 !important;
}

html body .elementor-menu-cart__footer-buttons .elementor-button--view-cart {
    background-color: #25D366 !important;
    color: #FFF !important;
}

html body .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover {
    background-color: #3B488B !important;
    transform: translateY(-2px) !important;
}

html body .elementor-menu-cart__footer-buttons a.btn-continuar-comprando {
    background-color: #E0922F !important;
    color: #FFF !important;
}

html body .elementor-menu-cart__footer-buttons a.btn-continuar-comprando:hover {
    background-color: #3B488B !important;
    transform: translateY(-2px) !important;
}

/* ==========================================================================
   6. DESIGN SYSTEM GERAL (BARRA ATIVA, RODAPÉ, TIPOGRAFIA)
   ========================================================================== */
@media (max-width: 768px) {
    .elementor-item.elementor-item-active,
    .current-menu-item > a,
    .current_page_item > a,
    .elementor-icon-list-item.e-current > a {
        color: #3B488B !important;
    }
    .elementor-item.elementor-item-active i,
    .elementor-item.elementor-item-active svg,
    .current-menu-item > a i,
    .current-menu-item > a svg,
    .current_page_item > a i,
    .current_page_item > a svg,
    .elementor-icon-list-item.e-current > a i,
    .elementor-icon-list-item.e-current > a svg {
        color: #3B488B !important;
        fill: #3B488B !important;
    }
}

.eng-rodape-mestre a {
    color: #FFFFFF !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
}

.eng-rodape-mestre a:hover {
    color: #E0922F !important;
    transform: translateX(5px) !important;
    display: inline-block !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
    .eng-rodape-mestre,
    .eng-rodape-mestre > .e-con-inner {
        flex-wrap: wrap !important;
        flex-direction: row !important;
    }
    .eng-rodape-mestre > .e-con,
    .eng-rodape-mestre > .e-con-inner > .e-con {
        width: 48% !important;
        margin-bottom: 30px !important;
    }
    html body .e-con.e-con-boxed,
    html body .elementor-section-boxed > .elementor-container {
        padding-left: 60px !important;
        padding-right: 60px !important;
    }
    html body .e-con.e-con-boxed .e-con.e-con-boxed {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (max-width: 768px) {
    .eng-rodape-mestre,
    .eng-rodape-mestre > .e-con-inner {
        flex-direction: column !important;
        text-align: center !important;
    }
    .eng-rodape-mestre > .e-con,
    .eng-rodape-mestre > .e-con-inner > .e-con {
        width: 100% !important;
        margin-bottom: 30px !important;
        align-items: center !important;
    }
    .eng-rodape-mestre .elementor-icon-list-item {
        justify-content: center !important;
    }
}

/* ==========================================================================
   7. CARRINHO OFICIAL (/CARRINHO) - DESKTOP
   ========================================================================== */
@media (min-width: 769px) {
    html body .elementor-widget-woocommerce-cart .wc-proceed-to-checkout,
    html body .cart_totals .wc-proceed-to-checkout {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 15px !important;
        width: 100% !important;
        float: none !important;
        padding-top: 20px !important;
    }
    html body .wc-proceed-to-checkout a.checkout-button,
    html body .wc-proceed-to-checkout a.button {
        width: 350px !important;
        min-width: 300px !important;
        margin: 0 !important;
    }
    html body .woocommerce-cart-form table.shop_table tbody tr.cart_item td {
        vertical-align: middle !important;
        padding: 20px 15px !important;
    }
}

html body .wc-proceed-to-checkout a.checkout-button,
html body .wc-proceed-to-checkout a.button {
    background-color: #25D366 !important;
    color: #FFFFFF !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    font-family: 'Rubik', sans-serif !important;
    text-transform: uppercase !important;
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    transition: all 0.3s ease !important;
    border: none !important;
}

html body .wc-proceed-to-checkout a.checkout-button:hover,
html body .wc-proceed-to-checkout a.button:hover {
    background-color: #3B488B !important;
    transform: translateY(-2px) !important;
}

html body .woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-quantity .quantity input.qty {
    width: 70px !important;
    height: 38px !important;
    padding: 0 5px !important;
    font-size: 14px !important;
    border-radius: 6px !important;
    border: 1px solid #CBD5E1 !important;
    text-align: center !important;
    background-color: #FFFFFF !important;
    margin: 0 !important;
}

/* ==========================================================================
   8. CARRINHO MOBILE (ARQUITETURA 3x2)
   ========================================================================== */
@media (max-width: 768px) {
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table thead { 
        display: none !important; 
    }
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td::before { 
        display: none !important;
        content: none !important; 
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table,
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody {
        display: block !important;
        width: 100% !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item {
        display: grid !important;
        grid-template-columns: 85px 1fr 30px !important;
        grid-template-rows: auto auto !important;
        gap: 15px 10px !important;
        padding: 15px !important;
        margin-bottom: 15px !important;
        background-color: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 12px !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.03) !important;
        align-items: center !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td {
        display: flex !important;
        border: none !important;
        padding: 0 !important;
        width: auto !important;
        height: auto !important;
        text-align: left !important;
        flex-direction: row !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-thumbnail {
        grid-column: 1 !important;
        grid-row: 1 !important;
        justify-content: center !important;
        align-items: center !important;
    }
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-thumbnail img {
        width: 85px !important;
        height: 85px !important;
        object-fit: cover !important;
        border-radius: 8px !important;
        margin: 0 !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-name {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-content: flex-start !important;
        align-items: center !important;
        padding-right: 5px !important;
    }
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-name a {
        font-family: 'Rubik', sans-serif !important;
        font-size: 13px !important;
        font-weight: 400 !important;
        line-height: 1.2 !important;
        color: #3B488B !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-remove {
        grid-column: 3 !important;
        grid-row: 1 !important;
        justify-content: flex-end !important;
        align-items: flex-start !important;
    }
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-remove a.remove {
        color: #ff4747 !important;
        font-size: 24px !important;
        text-decoration: none !important;
        background: transparent !important;
        line-height: 1 !important;
        margin: 0 !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-price {
        grid-column: 1 !important;
        grid-row: 2 !important;
        justify-content: center !important;
        align-items: center !important;
        flex-direction: column !important;
        margin-top: 5px !important;
    }
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-price .amount {
        font-family: 'Rubik', sans-serif !important;
        font-size: 12px !important;
        font-weight: 500 !important;
        color: #E0922F !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-quantity {
        grid-column: 2 !important;
        grid-row: 2 !important;
        justify-content: flex-start !important;
        align-items: center !important;
    }
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-quantity .quantity {
        margin: 0 !important;
    }
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-quantity .quantity input.qty {
        width: 60px !important;
        height: 32px !important;
        padding: 0 5px !important;
        font-size: 13px !important;
        border-radius: 6px !important;
        border: 1px solid #CBD5E1 !important;
        text-align: center !important;
        margin: 0 !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart form.woocommerce-cart-form table.shop_table tbody tr.cart_item td.product-subtotal {
        grid-column: 2 !important;
        grid-row: 2 !important;
        justify-content: flex-end !important;
        align-items: center !important;
        font-family: 'Rubik', sans-serif !important;
        font-weight: 700 !important;
        font-size: 15px !important;
        color: #E0922F !important;
    }

    html body.woocommerce-cart div.elementor-widget-woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
    html body.woocommerce-cart div.elementor-widget-woocommerce-cart .wc-proceed-to-checkout a.button { 
        width: 100% !important;
        margin-bottom: 10px !important; 
    }
}

/* ==========================================================================
   9. LIGHTBOX ARREDONDADO
   ========================================================================== */
.elementor-lightbox .elementor-lightbox-image {
    border-radius: 12px !important;
    overflow: hidden !important;
}

.elementor-lightbox .elementor-lightbox-header {
    background-color: transparent !important;
}

/* ==========================================================================
   10. HEADER 113 - DEGRADÊ OFICIAL & BUSCA FECHADA
   ========================================================================== */
/* Degradê Desktop do Header */
.elementor-113 .elementor-element.elementor-element-b311f9e,
.elementor-113 .elementor-element.elementor-element-b311f9e > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: transparent !important;
    background-image: linear-gradient(190deg, #F6F1E8 0%, #E0922FC7 100%) !important;
}

/* Degradê Mobile / Tablet do Header */
.elementor-113 .elementor-element.elementor-element-f979d93,
.elementor-113 .elementor-element.elementor-element-f979d93 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: transparent !important;
    background-image: linear-gradient(180deg, #F6F1E8 0%, #E0922FC7 100%) !important;
}

@media (max-width: 767px) {
    .elementor-113 .elementor-element.elementor-element-f979d93,
    .elementor-113 .elementor-element.elementor-element-f979d93 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        background-color: transparent !important;
        background-image: linear-gradient(27deg, #F6F1E8 0%, #E0922FC7 64%) !important;
    }
}

/* Ocultar busca quando recolhida/fechada */
.elementor-113 .elementor-element.elementor-element-0553779 .e-search.hidden,
.elementor-113 .elementor-element.elementor-element-0553779 search.hidden {
    display: none !important;
}

/* ==========================================================================
   11. BLINDAGEM DE LAYOUT: ELIMINAÇÃO DE MARGENS E PADDING INDESEJADOS
   ========================================================================== */
/* Elimina margens e espaçamentos no contêiner principal das páginas Elementor e Loja */
.elementor-page .page-content,
.elementor-page .site-main,
.page-template-elementor_header_footer .page-content,
.page-template-elementor_header_footer .site-main,
.page-template-elementor_canvas .page-content,
.page-template-elementor_canvas .site-main,
.woocommerce-shop .page-content,
.woocommerce-shop .site-main,
.woocommerce-page .site-main,
body.page-id-585 .page-content,
body.page-id-585 .site-main {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* Oculta cabeçalhos crus gerados pelo tema Hello Elementor em páginas desenhadas */
.elementor-page .page-header,
.woocommerce-shop .page-header,
.page-template-elementor_header_footer .page-header,
.hello-elementor .page-header,
body.page-id-585 .page-header,
.page-header h1.entry-title {
    display: none !important;
}

/* Preserva respiro agradável apenas para páginas de texto legais puras que não usam Elementor */
body:not(.elementor-page):not(.woocommerce-shop):not(.page-template-elementor_header_footer) .page-content {
    padding: 40px 20px !important;
}
@media (min-width: 1024px) {
    body:not(.elementor-page):not(.woocommerce-shop):not(.page-template-elementor_header_footer) .page-content {
        padding: 60px 40px !important;
    }
}

/* ==========================================================================
   12. PÁGINA LOJA (CATÁLOGO ELEMENTOR 585) - AJUSTES DE ESTRUTURA
   ========================================================================== */
.elementor-585 {
    width: 100% !important;
    margin: 0 auto !important;
}

/* ==========================================================================
   13. BARRA FIXA MOBILE (.app-bottom-bar) - DESIGN OFICIAL CARDS LARANJA
   ========================================================================== */
@media (max-width: 1024px) {
    /* Container da barra fixa no rodapé */
    .app-bottom-bar {
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        background: #FFFFFF !important;
        display: flex !important;
        justify-content: space-around !important;
        align-items: center !important;
        padding: 8px 6px !important;
        padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
        box-shadow: 0 -3px 15px rgba(0, 0, 0, 0.08) !important;
        z-index: 99999 !important;
        border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
        box-sizing: border-box !important;
    }

    /* Cards Laranja dos Botões (Pisos, Ambientes, Promoções, Menu) */
    .app-bottom-bar .btn-nav,
    .app-bottom-bar .eng-abrir-menu {
        flex: 1 1 0 !important;
        max-width: 68px !important;
        min-width: 52px !important;
        height: 60px !important;
        background-color: #D88928 !important; /* Laranja corporativo oficial */
        border-radius: 16px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-decoration: none !important;
        padding: 4px 2px !important;
        margin: 0 3px !important;
        box-shadow: 0 2px 6px rgba(216, 137, 40, 0.25) !important;
        transition: transform 0.15s ease, background-color 0.2s ease !important;
        box-sizing: border-box !important;
    }

    .app-bottom-bar .btn-nav:active,
    .app-bottom-bar .eng-abrir-menu:active {
        transform: scale(0.95) !important;
        background-color: #C2781E !important;
    }

    /* Estado Ativo (Página atual selecionada) */
    .app-bottom-bar .btn-nav.ativo,
    .app-bottom-bar .eng-abrir-menu.ativo {
        background-color: #C2781E !important;
        box-shadow: 0 2px 8px rgba(194, 120, 30, 0.4) !important;
    }

    /* Ícones brancos dentro dos cards */
    .app-bottom-bar .btn-nav svg,
    .app-bottom-bar .eng-abrir-menu svg {
        width: 24px !important;
        height: 24px !important;
        stroke: #FFFFFF !important;
        stroke-width: 2px !important;
        fill: none !important;
        color: #FFFFFF !important;
        margin-bottom: 3px !important;
        display: block !important;
    }

    /* Textos brancos em caixa alta */
    .app-bottom-bar .btn-nav span,
    .app-bottom-bar .eng-abrir-menu span {
        font-family: 'Rubik', sans-serif !important;
        font-size: 8.5px !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.4px !important;
        line-height: 1 !important;
        color: #FFFFFF !important;
        text-align: center !important;
        display: block !important;
    }

    /* Botão Central de WhatsApp - Destaque sem card laranja */
    .app-bottom-bar .btn-nav.cdp-whatsapp-center,
    .app-bottom-bar .cdp-whatsapp-center {
        background-color: transparent !important;
        box-shadow: none !important;
        border-radius: 50% !important;
        height: 60px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 2px !important;
    }

    .app-bottom-bar .btn-nav.cdp-whatsapp-center svg,
    .app-bottom-bar .cdp-whatsapp-center svg {
        width: 36px !important;
        height: 36px !important;
        fill: #25D366 !important;
        stroke: none !important;
        color: #25D366 !important;
        margin-bottom: 0 !important;
        filter: drop-shadow(0 2px 5px rgba(37, 211, 102, 0.35)) !important;
    }

    .app-bottom-bar .btn-nav.cdp-whatsapp-center:active {
        background-color: transparent !important;
        transform: scale(0.92) !important;
    }

    /* Espaçamento no final da página para o conteúdo não ficar sob a barra fixa */
    body {
        padding-bottom: 76px !important;
    }
}

@media (min-width: 1025px) {
    .app-bottom-bar {
        display: none !important;
    }
}

/* ==========================================================================
   8. BLINDAGEM E EFICIÊNCIA DO HERO SLIDER (PRIMEIRA DOBRA DA HOME)
   ========================================================================== */
/* Prevenção de colapso do contêiner mestre e widget nested-carousel antes da hidratação do JS */
.elementor-3447 .elementor-element.elementor-element-f63a73d,
.elementor-3447 .elementor-element.elementor-element-a9c5d49 {
    min-height: 83vh;
    background-color: #F5F6F8;
}

/* Slide 1 - Reserva de espaço e altura mínima para renderização de background */
.elementor-3447 .elementor-element.elementor-element-0fc3bea {
    min-height: 83vh;
    background-color: #F5F6F8;
}

/* Breakpoint Mobile (até 767px): altura proporcional exatamente idêntica ao Elementor */
@media (max-width: 767px) {
    .elementor-3447 .elementor-element.elementor-element-f63a73d,
    .elementor-3447 .elementor-element.elementor-element-a9c5d49,
    .elementor-3447 .elementor-element.elementor-element-0fc3bea {
        min-height: 80vh;
    }
}

/* ==========================================================================
   9. CORREÇÃO DEFINITIVA DE TIPOGRAFIA E ESPAÇAMENTO MOBILE
   ========================================================================== */
/* Neutraliza word-spacing errôneo (1.5em) herdado de configurações legadas do Elementor */
@media (max-width: 767px) {
    body,
    .elementor-kit-7,
    .elementor-kit-7 *,
    .elementor-heading-title,
    .elementor-button,
    .elementor-cta__button,
    .btn-nav {
        word-spacing: normal !important;
        letter-spacing: normal !important;
    }
}

/* ==========================================================================
   10. ESTABILIZAÇÃO DE LAYOUT DO HERO CARROSSEL (ZERO CLS NO DESKTOP)
   ========================================================================== */
/* Previne expansão de 100% dos slides do Nested Carousel antes da inicialização do Swiper JS */
@media (min-width: 1025px) {
    .elementor-element-a9c5d49.elementor-widget-n-carousel .e-n-carousel:not(.swiper-initialized) .swiper-wrapper,
    .elementor-widget-n-carousel .e-n-carousel:not(.swiper-initialized) .swiper-wrapper {
        display: flex !important;
        flex-direction: row !important;
        overflow: hidden !important;
    }
    .elementor-element-a9c5d49.elementor-widget-n-carousel .e-n-carousel:not(.swiper-initialized) .swiper-slide,
    .elementor-widget-n-carousel .e-n-carousel:not(.swiper-initialized) .swiper-slide {
        width: 33.333333% !important;
        max-width: 33.333333% !important;
        flex: 0 0 33.333333% !important;
    }
}

/* ==========================================================================
   11. BLINDAGEM DO HEADER MOBILE (DEGRADÊ OFICIAL CONTRA LAZYLOAD DO ELEMENTOR)
   ========================================================================== */
/* Garante o degradê oficial no header mobile anulando o lazyload indevido de background do Elementor nth-of-type(n+3) */
.elementor-113 .elementor-element.elementor-element-f979d93,
.elementor-113 .elementor-element.elementor-element-f979d93.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload),
.elementor-113 .elementor-element.elementor-element-f979d93 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: transparent !important;
    background-image: linear-gradient(180deg, #F6F1E8 0%, #E0922FC7 100%) !important;
}

@media (max-width: 767px) {
    .elementor-113 .elementor-element.elementor-element-f979d93,
    .elementor-113 .elementor-element.elementor-element-f979d93.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload),
    .elementor-113 .elementor-element.elementor-element-f979d93:not(.elementor-motion-effects-element-type-background),
    .elementor-113 .elementor-element.elementor-element-f979d93 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        background-color: transparent !important;
        background-image: linear-gradient(27deg, #F6F1E8 0%, #E0922FC7 64%) !important;
    }
}

/* ==========================================================================
   12. PÁGINA DO PRODUTO: BOTÕES DE CONVERSÃO SIMÉTRICOS (CARRINHO & WHATSAPP)
   ========================================================================== */
.woocommerce div.product form.cart .e-atc-qty-button-holder,
.elementor-widget-woocommerce-product-add-to-cart form.cart .e-atc-qty-button-holder {
    --button-spacing: 0px !important;
    gap: 0px !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button,
.elementor-widget-woocommerce-product-add-to-cart form.cart .single_add_to_cart_button,
.elementor-widget-woocommerce-product-add-to-cart form.cart button:where(:not(:first-child)),
:is(.elementor-widget-woocommerce-product-add-to-cart) form.cart button:where(:not(:first-child)),
.e-atc-qty-button-holder .single_add_to_cart_button {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-inline-start: 0 !important;
    margin-inline-end: 0 !important;
    float: none !important;
}
