/*
Theme Name: Porto Child
Theme URI: https://www.portotheme.com/wordpress/porto
Author: P-THEMES
Author URI: https://www.portotheme.com/
Description: Porto Responsive WordPress + eCommerce Theme.
Version: 1.1
Template: porto
License: Commercial
License URI: http://themeforest.net/licenses/regular_extended
Tags: woocommerce, corporate, ecommerce, responsive, blue, black, green, white, light, dark, red, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
*/

/*************** ADD YOUR CUSTOM CSS HERE  ***************/
/* =========================
   Subcategorias (strip cards)
   ========================= */
/* === SOMENTE SUBCATEGORIAS (nunca produtos) === */
/* =======================================
   SUBCATEGORIAS – DESIGN FINAL
   ======================================= */

/* Fundo geral da zona das subcategorias */

/* Garante espaço entre cards */
ul.products > li.product-category {
  width: 160px;
  margin: 7px !important;   /* cria gap real */
  padding: 0 !important;
}

/* Card individual */
ul.products > li.product-category .thumb-info {
  background: #fbfbfb;
  border: 1px solid #d8dde1;
  border-radius: 12px;
  padding: 15px 9px; /* padding interno */
  box-shadow: 0 8px 20px rgba(0,0,0,.04);
  transition: all .2s ease;
}

/* Hover suave 
ul.products > li.product-category:hover .thumb-info {
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(0,0,0,.08);
}*/

/* Área da imagem */
ul.products > li.product-category .thumb-info-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0 0 0;
}

/* Imagem */
ul.products > li.product-category .thumb-info-wrapper > img {
  width: 90px !important;
  height: 90px !important;
  object-fit: contain !important;
}

/* Área do título */
ul.products > li.product-category .thumb-info-wrap {
  text-align: center;
  padding: 0;
}

/* Título */
ul.products > li.product-category .thumb-info-inner {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .5px;
  margin: 0;
  color: #0096c5; /* tua cor pedida */
}

/* Esconder contador */
ul.products > li.product-category .thumb-info-type {
  display: none;
}

.products .product-category .thumb-info-title {
    background: none;
    max-width: none;
    width: 100%;
    bottom: 0;
	padding: 0.5em 0em !important;
    margin: 0;
    position: relative !important;
}

.thumb-info-wrapper::after {
    background: transparent !important;
}

.vc_images_carousel img{
  width: 100% !important;
  height: auto !important;
  display: block;
}

.page-wrapper .porto-gb-84f638dc4fa0a1e503997126ad3e73a1 {
    padding-top: 7px !important;
    padding-bottom: 18px !important;
}
/* Esconde grid de categorias Porto durante pesquisa */
body.ldb-is-search .porto-posts-grid.with-shop-ajax {
    display: none !important;
}

/* Esconde swatches/atributos no hover da listagem de produtos */
.porto-tb-swatch {
    display: none !important;
}

/* Imagens dos produtos na listagem: contain + padding para não cortar */
.grid-creative li.product-col .product-image img,
.grid-creative .tb-image-type-default .img-thumbnail img,
.grid-creative .tb-image-type-hover .img-thumbnail img,
.porto-tb-featured-image .img-thumbnail img,
.product-image .inner img,
.product-image img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
    padding: 15px !important;
    background: #fff;
    box-sizing: border-box !important;
}

/* =======================================
   MEGA MENU – SECONDARY MENU DESIGN v2
   ======================================= */

/* Container do dropdown */
.mega-menu .main-menu > .menu-item > .popup {
    border: none !important;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, .14);
    overflow: hidden;
    margin-top: 0 !important;
    animation: megaMenuFadeIn .25s ease-out;
    max-width: 700px;
}

@keyframes megaMenuFadeIn {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Barra gradiente no topo */
.mega-menu .main-menu > .menu-item > .popup::before {
    content: '';
    display: block;
    height: 3px;
    background: linear-gradient(90deg, #0088cc, #00b4d8, #0088cc);
    background-size: 200% 100%;
    animation: megaMenuShimmer 3s ease infinite;
}

@keyframes megaMenuShimmer {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Seta no item ativo */
.mega-menu .main-menu > .menu-item.has-sub:hover > a {
    position: relative;
}
.mega-menu .main-menu > .menu-item.has-sub:hover > a::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #fff;
    z-index: 1001;
}

/* ---- LAYOUT FLEX: conteúdo + promo isolado ---- */
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu {
    padding: 0 !important;
    background: #ffffff;
    display: flex !important;
    flex-wrap: nowrap !important;
    column-count: unset !important;
    -moz-column-count: unset !important;
    -webkit-column-count: unset !important;
}

/* Colunas de conteúdo: flex grow */
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.menu-item:not(.mega-menu-promo) {
    flex: 1 1 0;
    min-width: 150px;
    padding: 22px 16px 18px;
    border-right: 1px solid #f0f2f5;
    break-inside: avoid;
}

/* Título da subcategoria (depth 1 header) */
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.menu-item:not(.mega-menu-promo) > a {
    font-weight: 700 !important;
    font-size: 12.5px !important;
    text-transform: uppercase;
    color: #1a1a1a !important;
    letter-spacing: .4px;
    padding: 0 6px 8px !important;
    margin-bottom: 6px;
    border-bottom: 2px solid #0088cc;
    display: block;
    transition: color .2s ease;
}
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.menu-item:not(.mega-menu-promo) > a:hover {
    color: #0088cc !important;
    background: transparent !important;
}

/* Sub-items (depth 2) */
.mega-menu .main-menu > .menu-item > .popup .sub-menu {
    padding: 0 !important;
    margin: 0;
    list-style: none;
}
.mega-menu .main-menu > .menu-item > .popup .sub-menu li a {
    padding: 5px 6px !important;
    font-size: 12.5px !important;
    color: #555 !important;
    border-radius: 4px;
    transition: all .2s ease !important;
    display: block;
    line-height: 1.5;
    white-space: nowrap;
}
.mega-menu .main-menu > .menu-item > .popup .sub-menu li a::before {
    content: '›';
    font-size: 13px;
    font-weight: 700;
    margin-right: 4px;
    color: #0088cc;
    opacity: 0;
    transform: translateX(-6px);
    transition: all .2s ease;
    display: inline-block;
}
.mega-menu .main-menu > .menu-item > .popup .sub-menu li a:hover {
    background: #eef6fc !important;
    color: #0088cc !important;
    padding-left: 12px !important;
}
.mega-menu .main-menu > .menu-item > .popup .sub-menu li a:hover::before {
    opacity: 1;
    transform: translateX(0);
}

/* ---- PROMO: coluna isolada à direita ---- */
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.mega-menu-promo {
    flex: 0 0 180px !important;
    max-width: 180px;
    order: 99;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 22px 16px !important;
    background: #f8fafb;
    border-right: none !important;
    border-left: 1px solid #f0f2f5;
    text-align: center;
}

/* Esconder link texto do promo */
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.mega-menu-promo > a {
    border-bottom: none !important;
    padding: 0 !important;
    margin: 0 0 12px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #1a1a1a !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Imagem placeholder */
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.mega-menu-promo::before {
    content: '';
    display: block;
    width: 150px;
    height: 130px;
    border-radius: 8px;
    margin-bottom: 14px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    order: -1;
}

/* Botão "Saber Mais" */
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.mega-menu-promo::after {
    content: 'Saber Mais';
    display: inline-block;
    background: #0088cc;
    color: #fff !important;
    padding: 9px 24px;
    border-radius: 25px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
    transition: all .25s ease;
    cursor: pointer;
}
.mega-menu .main-menu > .menu-item > .popup > .porto-wide-sub-menu > li.mega-menu-promo:hover::after {
    background: #006da3;
    box-shadow: 0 4px 12px rgba(0, 136, 204, .3);
}

/* ================================================
   IMAGENS DO MEGA MENU (EDITAR AQUI)
   Para alterar: substitui o url(...) pela URL da
   imagem que fizeste upload no WordPress Media.
   ================================================ */

/* Alta Visibilidade - imagem promo */
.mega-menu .main-menu > li.menu-item:nth-child(1) > .popup .mega-menu-promo::before {
    background-image: url('/wp-content/uploads/mega-menu-alta-visibilidade.jpg');
    background-color: #fff3cd;
}

/* Roupa Laboral - imagem promo */
.mega-menu .main-menu > li.menu-item:nth-child(2) > .popup .mega-menu-promo::before {
    background-image: url('/wp-content/uploads/mega-menu-roupa-laboral.jpg');
    background-color: #d4edda;
}

/* Escritório - imagem promo */
.mega-menu .main-menu > li.menu-item:nth-child(3) > .popup .mega-menu-promo::before {
    background-image: url('/wp-content/uploads/mega-menu-escritorio.jpg');
    background-color: #d1ecf1;
}

/* Sacos & Mochilas - imagem promo */
.mega-menu .main-menu > li.menu-item:nth-child(4) > .popup .mega-menu-promo::before {
    background-image: url('/wp-content/uploads/mega-menu-sacos.jpg');
    background-color: #e2d5f1;
}

/* =======================================
   IMAGENS COMPACTAS - Listagem + Produto
   ======================================= */

/* --- LISTAGEM: imagens mais pequenas --- */
.products .product-image,
.products .porto-tb-featured-image {
    max-height: 250px !important;
    overflow: hidden;
}

.woocommerce ul.products .product-image img,
.woocommerce ul.products .porto-tb-featured-image img {
    max-height: 240px !important;
    padding: 8px !important;
}

/* --- PRODUTO SINGLE: galeria muito compacta --- */
.single-product .woocommerce-product-gallery .product-images,
.single-product .woocommerce-product-gallery .product-thumbnails-slider {
    max-width: 380px !important;
}

/* Imagem principal mais pequena — only in product gallery */
.single-product .woocommerce-product-gallery .img-thumbnail,
.single-product .woocommerce-product-gallery .owl-item img,
.single-product .woocommerce-product-gallery__image img {
    max-height: 350px !important;
    object-fit: contain !important;
    width: auto !important;
    margin: 0 auto;
}

/* Thumbnails mais pequenos — only in product gallery */
.single-product .woocommerce-product-gallery .product-thumbs-slider .owl-item img,
.single-product .woocommerce-product-gallery .product-thumbnails .img-thumbnail {
    max-height: 50px !important;
    max-width: 50px !important;
    object-fit: contain !important;
}

/* Reduzir espaço à volta da galeria */
.single-product .product-summary-wrap .product-images {
    padding: 10px !important;
}

/* Dar mais espaço à info do produto */
@media (min-width: 992px) {
    .single-product .product-summary-wrap .col-lg-6:first-child,
    .single-product .summary-before {
        flex: 0 0 35% !important;
        max-width: 35% !important;
    }
    .single-product .product-summary-wrap .col-lg-6:last-child,
    .single-product .entry-summary {
        flex: 0 0 65% !important;
        max-width: 65% !important;
    }
}

/* =======================================
   HEADER ROW — hide padding on XL when content is d-xl-none
   ======================================= */

@media (min-width: 1200px) {
    .top-row.py-2.py-md-3:has(> .porto-wrap-container > .row > .col-md-12.d-xl-none) {
        padding: 0 !important;
        min-height: 0 !important;
    }
}

/* =======================================
   MEGA MENU — COMMENTED OUT FOR TESTING
   ======================================= */

/* Fix: target the EXACT element by its unique Porto class + force overflow */
.vc_custom_1774962643984,
.vc_custom_1774962643984.overflow-hidden,
div.custom-category-menu.overflow-hidden.vc_column_container.col-md-12.vc_custom_1774962643984 {
    overflow: visible !important;
}

/* Also the .row parent and the .vc_row grandparent */
.vc_custom_1774962643984.overflow-hidden ~ *,
.row:has(.vc_custom_1774962643984) {
    /* don't clip */
}

/* Fix the inner wrapper overflow too */
.custom-category-menu .vc_column-inner,
.custom-shop-menu .vc_column-inner {
    overflow: visible !important;
    overflow-x: visible !important;
}

/* The .vc_row that contains the menu */
.d-none.d-lg-block.top-row:has(.custom-category-menu) {
    overflow: visible !important;
    z-index: 100 !important;
    position: relative;
}

/* Menu column z-index */
.custom-category-menu {
    position: relative;
    z-index: 100 !important;
}

.mega-menu .popup {
    z-index: 1000 !important;
}

/* Shop icons row must be behind */
.custom-shop-menu {
    position: relative;
    z-index: 1 !important;
}

/*
.mega-menu .popup .inner {
    padding: 12px 16px !important;
}
.mega-menu .popup .sub-menu.porto-wide-sub-menu > li > a {
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 4px 0 4px !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #1a1a1a !important;
}
.mega-menu .popup .sub-menu .sub-menu li a {
    font-size: 12px !important;
    padding: 3px 0 !important;
    line-height: 1.4 !important;
    color: #555 !important;
}
.mega-menu .popup .sub-menu .sub-menu li a:hover {
    color: #0066b2 !important;
}
.mega-menu .popup .mega-menu-promo {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    border-radius: 8px;
    display: flex !important;
    align-items: flex-end;
    padding: 14px !important;
    align-self: stretch;
}
.mega-menu .popup .mega-menu-promo a {
    color: #fff !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    background: rgba(0,0,0,0.5);
    padding: 6px 14px;
    border-radius: 6px;
    display: inline-block;
}
.mega-menu .popup .mega-menu-promo a:hover {
    background: rgba(0,119,182,0.85);
}
#nav-menu-item-290534.mega-menu-promo {
    background-image: url('https://lojadosbrindes.eu/wp-content/uploads/2026/03/ChatGPT-Image-Mar-30-2026-02_48_48-AM.png');
}
.mega-menu .popup .sub-menu.porto-wide-sub-menu {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}
*/

/* =======================================
   NAV BAR — COMMENTED OUT FOR TESTING
   ======================================= */

/*
@media (min-width: 992px) {
    .vc_custom_1714486457015.overflow-x-hidden,
    .custom-category-menu.overflow-hidden,
    .vc_custom_1774962643984.overflow-hidden {
        overflow: visible !important;
    }
    .custom-category-menu,
    .vc_custom_1774962643984,
    .vc_custom_1714486457015 {
        position: relative;
        z-index: 100 !important;
    }
    #menu-secondary-menu .popup,
    .mega-menu .popup {
        z-index: 1000 !important;
    }
    .custom-shop-menu,
    .swiper-wrapper.top-row {
        position: relative;
        z-index: 1 !important;
    }
    .vc_custom_1714486457015 > .wpb_wrapper {
        display: flex !important;
        align-items: stretch;
        gap: 0;
    }
    #main-toggle-menu {
        flex: 0 0 auto;
        white-space: nowrap;
        position: relative;
        z-index: 10;
    }
    #main-toggle-menu .menu-title {
        white-space: nowrap;
    }
    #menu-secondary-menu {
        flex: 1 1 0;
        display: flex !important;
        flex-wrap: wrap;
        align-items: center;
        align-content: center;
        padding-left: 16px;
        margin: 0 !important;
        min-width: 0;
    }
    #menu-secondary-menu > li {
        white-space: nowrap;
    }
    #menu-secondary-menu > li > a {
        padding: 14px 20px !important;
        font-size: 13px !important;
        font-weight: 600;
    }
}
*/

/* =======================================
   TOGGLE MENU — don't auto-open on homepage
   ======================================= */

#main-toggle-menu.show-always .toggle-menu-wrap {
    display: none !important;
}

#main-toggle-menu.show-always:hover .toggle-menu-wrap,
#main-toggle-menu.show-always.active .toggle-menu-wrap {
    display: block !important;
}

#main-toggle-menu.show-always .menu-title {
    cursor: pointer;
}

/* =======================================
   SUBCATEGORY CARDS — equal height
   ======================================= */

.product-category.product-col {
    display: flex !important;
}

.product-category.product-col > a {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.product-category.product-col .thumb-info {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.product-category.product-col .thumb-info-wrapper {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.product-category.product-col .thumb-info-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-category.product-col .thumb-info-wrap {
    flex-shrink: 0;
}

/* =======================================
   PAGE HEADER / BREADCRUMBS
   ======================================= */

.page-top.page-header-1 {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
}

.page-top.page-header-1 .container {
    padding-top: 20px;
    padding-bottom: 12px;
}

.page-top.page-header-1 .page-title {
    color: #1a1a1a !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em;
    margin: 0 !important;
    padding: 0 !important;
    text-transform: none !important;
    position: relative !important;
}

.page-top .page-title:not(.b-none):after {
    position: relative !important;
    bottom: auto !important;
    display: block !important;
    margin-top: 10px;
}

.page-top.page-header-1 .breadcrumb {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 0 6px !important;
    font-size: 12px;
}

.page-top.page-header-1 .breadcrumb li,
.page-top.page-header-1 .breadcrumb a {
    color: #999 !important;
}

.page-top.page-header-1 .breadcrumb a:hover {
    color: #0066b2 !important;
}

.page-top.page-header-1 .breadcrumb .delimiter {
    color: #ccc !important;
}

.main-content {
    padding-top: 0 !important;
}

/* =======================================
   PRODUCT CARDS v8
   ======================================= */

/* Kill empty section + shadow (products only) */
.porto-tb-item.product-col:not(.product-category) > .porto-section.product-type-bhesfd,
.porto-tb-item.product-col:not(.product-category) .porto-gb-6b67527b13201efc531252cc602e5bf1 {
    display: none !important;
}

/* Card */
.porto-tb-item.product-col:not(.product-category) {
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.06) !important;
    border: 1px solid #c3ddf0 !important;
    transition: box-shadow 0.25s ease, transform 0.25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    margin: 8px !important;
    width: calc(25% - 16px) !important;
}

.porto-tb-item.product-col:not(.product-category):hover {
    box-shadow: 0 8px 28px rgba(0,0,0,.09) !important;
    transform: translateY(-2px) !important;
}


@media (max-width: 991px) {
    .porto-tb-item.product-col:not(.product-category) {
        width: calc(50% - 16px) !important;
    }
}


/* Sections */
.porto-tb-item.product-col:not(.product-category) > .porto-section {
    background: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
}

.porto-tb-item.product-col:not(.product-category) > .porto-section.product-type-shdesc {
    border-radius: 10px 10px 0 0 !important;
}

.porto-tb-item.product-col:not(.product-category) > .porto-section:last-child {
    border-radius: 0 0 10px 10px !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Image - full width, no borders */
.porto-tb-item.product-col:not(.product-category) .porto-tb-featured-image {
    background: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
}

.porto-tb-item.product-col:not(.product-category) .img-thumbnail {
    border: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    width: 100% !important;
}

.porto-tb-item.product-col:not(.product-category) .img-thumbnail img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    transition: transform 0.3s ease !important;
}

.products .product-image img,
.products .porto-tb-featured-image img {
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

.porto-tb-item.product-col:not(.product-category):hover .img-thumbnail img:first-child {
    transform: scale(1.03) !important;
}

/* Content area */
.porto-tb-item.product-col:not(.product-category) .porto-section.product-content {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 12px 12px 14px !important;
}

/* Badge - soft orange, small */
.porto-tb-item.product-col:not(.product-category) .porto-gb-b1ffdf49f3e84bfd12210c3edafc4133 {
    font-size: 9px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    color: #b5651d !important;
    background: #fef0db !important;
    display: none !important;
    padding: 2px 7px !important;
    border-radius: 3px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    margin: 0 0 8px !important;
    line-height: 1.5 !important;
}

.porto-tb-item.product-col:not(.product-category) .porto-gb-b1ffdf49f3e84bfd12210c3edafc4133 a {
    color: #b5651d !important;
    text-decoration: none !important;
}

/* Title - bigger, clean */
.porto-tb-item.product-col:not(.product-category) h3.porto-gb-670276434285b693027f0fed593ea808 {
    margin: 0 0 4px !important;
    padding: 0 !important;
    min-height: 0 !important;
}

.porto-tb-item.product-col:not(.product-category) h3.porto-gb-670276434285b693027f0fed593ea808 a {
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.porto-tb-item.product-col:not(.product-category) h3.porto-gb-670276434285b693027f0fed593ea808 a:hover {
    color: #0088cc !important;
}

.porto-tb-item.product-col:not(.product-category) h3.porto-gb-670276434285b693027f0fed593ea808 p {
    margin: 0 !important;
    padding: 0 !important;
}

/* Price - "desde" style, prominent */
.porto-tb-item.product-col:not(.product-category) .porto-gb-a5475d7e130ca81b4bde7ff949658466 {
    margin: 0 0 6px !important;
    padding: 0 !important;
}

.porto-tb-item.product-col:not(.product-category) .porto-gb-a5475d7e130ca81b4bde7ff949658466 .price {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0066b2 !important;
    letter-spacing: -0.3px !important;
}

.porto-tb-item.product-col:not(.product-category) .porto-gb-a5475d7e130ca81b4bde7ff949658466 .price::before {
    content: "desde " !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    color: #666 !important;
    letter-spacing: 0 !important;
}

/* Description - bottom, subtle */
.porto-tb-item.product-col:not(.product-category) .tb-content.porto-gb-d0b87ed0ea6b19ce78e6fd0072035ee4 {
    font-size: 11px !important;
    line-height: 1.4 !important;
    color: #777 !important;
    max-height: 30px !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin-top: auto !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

/* Hover actions */
.porto-tb-item.product-col:not(.product-category) .tb-hover-content .porto-gb-d84fe5b2029fdfecddb287e72a9cad8a,
.porto-tb-item.product-col:not(.product-category) .tb-hover-content .porto-gb-82d60801a6c534a4050db1eeb9d77ad9 {
    opacity: 0 !important;
    transition: opacity 0.2s ease !important;
}

.porto-tb-item.product-col:not(.product-category):hover .porto-gb-d84fe5b2029fdfecddb287e72a9cad8a,
.porto-tb-item.product-col:not(.product-category):hover .porto-gb-82d60801a6c534a4050db1eeb9d77ad9 {
    opacity: 1 !important;
}

.porto-tb-item.product-col:not(.product-category) .tb-hover-content .porto-gb-e08d721e8d72872188c251d4164ab96b {
    opacity: 0 !important;
    transform: translateY(10px) !important;
    transition: all 0.25s cubic-bezier(.4,0,.2,1) !important;
}

.porto-tb-item.product-col:not(.product-category):hover .porto-gb-e08d721e8d72872188c251d4164ab96b {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

a.porto-tb-addcart.porto-gb-e08d721e8d72872188c251d4164ab96b {
    background: #0077b6 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    padding: 9px 14px !important;
    text-align: center !important;
    border-radius: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
}

a.porto-tb-addcart.porto-gb-e08d721e8d72872188c251d4164ab96b:hover {
    background: #005f8f !important;
}

a.porto-tb-addcart.porto-gb-9ca7c13588669a051fe25a71da1f15e4 {
    background: #0077b6 !important;
    color: #fff !important;
    border-radius: 50% !important;
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Force remove all image borders */
.porto-tb-item.product-col:not(.product-category) .img-thumbnail,
.porto-tb-item.product-col:not(.product-category) .img-thumbnail img,
.porto-tb-item.product-col:not(.product-category) .porto-tb-featured-image,
.porto-tb-item.product-col:not(.product-category) .porto-tb-featured-image a,
.porto-tb-item.product-col:not(.product-category) .product-image,
.porto-tb-item.product-col:not(.product-category) .product-image a,
.porto-tb-item.product-col:not(.product-category) .product-image img {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Homepage: equal card width */
body.home .porto-tb-item.product-col:not(.product-category) {
    width: auto !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
}

/* Homepage: equal card image height */
body.home .porto-tb-item.product-col:not(.product-category) .porto-tb-featured-image {
    height: 250px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

body.home .porto-tb-item.product-col:not(.product-category) .img-thumbnail {
    height: 100% !important;
}

body.home .porto-tb-item.product-col:not(.product-category) .img-thumbnail img {
    height: 100% !important;
    object-fit: contain !important;
}

/* Homepage: fixed content heights for equal cards */
body.home .porto-tb-item.product-col:not(.product-category) h3.porto-gb-670276434285b693027f0fed593ea808 {
    min-height: 38px !important;
    max-height: 38px !important;
    overflow: hidden !important;
}

body.home .porto-tb-item.product-col:not(.product-category) .tb-content.porto-gb-d0b87ed0ea6b19ce78e6fd0072035ee4 {
    min-height: 30px !important;
    max-height: 30px !important;
    overflow: hidden !important;
}

/* =======================================

/* =======================================

/* =======================================

/* =======================================

/* =======================================

/* Reset card styles inside single product related/linked products */
.single-product .porto-posts-grid .porto-tb-featured-image .img-thumbnail img,
.single-product .porto-posts-grid .product-image .inner img,
.single-product .porto-posts-grid .product-image img {
    object-fit: cover !important;
    height: auto !important;
    padding: 0 !important;
    background: transparent !important;
}

.single-product .porto-posts-grid .porto-tb-item.product-col .img-thumbnail {
    border: none !important;
    background: transparent !important;
}

.single-product .porto-posts-grid .porto-tb-item.product-col .img-thumbnail img {
    height: auto !important;
    padding: 0 !important;
}

/* Hide sticky add-to-cart bar on single product */
.single-product .sticky-product {
    display: none !important;
}

/* Related products cards: reset forced width, let owl carousel control it */
.single-product .porto-posts-grid .porto-tb-item.product-col:not(.product-category) {
    width: 100% !important;
    margin: 0 !important;
}

/* Single product related: equal card sizes */
.single-product .porto-posts-grid .porto-tb-item.product-col:not(.product-category) .porto-tb-featured-image {
    height: 250px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.single-product .porto-posts-grid .porto-tb-item.product-col:not(.product-category) .img-thumbnail {
    height: 100% !important;
}

.single-product .porto-posts-grid .porto-tb-item.product-col:not(.product-category) .img-thumbnail img {
    height: 100% !important;
    object-fit: contain !important;
}

.single-product .porto-posts-grid .porto-tb-item.product-col:not(.product-category) h3.porto-gb-670276434285b693027f0fed593ea808 {
    min-height: 38px !important;
    max-height: 38px !important;
    overflow: hidden !important;
}

.single-product .porto-posts-grid .porto-tb-item.product-col:not(.product-category) .tb-content.porto-gb-d0b87ed0ea6b19ce78e6fd0072035ee4 {
    min-height: 30px !important;
    max-height: 30px !important;
    overflow: hidden !important;
}

/* =======================================
   SINGLE PRODUCT - 3 Column Final
   ======================================= */

/* Image: only fix owl autoHeight clipping */
.single-product .product-image-slider .owl-stage-outer.owl-height {
    height: auto !important;
}

/* ---- Col 2: Compact showcase elements ---- */

/* Swatches — compact gallery */
#ldb-view-swatches {
    margin: 10px 0 0;
}

#ldb-view-swatches .variations,
#ldb-view-swatches .variations tbody,
#ldb-view-swatches .variations tr {
    display: block;
}

#ldb-view-swatches .variations tr {
    margin-bottom: 10px;
}

#ldb-view-swatches .variations tr:last-child {
    margin-bottom: 0;
}

#ldb-view-swatches .variations th.label {
    display: block;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #999;
    margin-bottom: 4px;
    padding: 0;
}

#ldb-view-swatches .variations th.label label {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
}

#ldb-view-swatches .variations th.label .woo-selected-variation-item-name {
    color: #222;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
    font-size: 11px;
}

#ldb-view-swatches .variations td.value {
    display: block;
    padding: 0;
}

#ldb-view-swatches ul.variable-items-wrapper {
    display: flex !important;
    flex-wrap: wrap;
    gap: 6px;
    padding: 0;
    margin: 0;
    list-style: none;
}

/* Image swatches (color) */
#ldb-view-swatches li.image-variable-item {
    width: 56px !important;
    height: 56px !important;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid transparent;
    background: #f5f5f7;
    transition: border-color 0.15s, box-shadow 0.15s;
    cursor: pointer;
    padding: 0 !important;
    margin: 0 !important;
}

#ldb-view-swatches li.image-variable-item .variable-item-contents {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#ldb-view-swatches li.image-variable-item img.variable-item-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    border-radius: 6px;
}

#ldb-view-swatches li.image-variable-item.selected {
    border-color: #0066b2;
    box-shadow: 0 0 0 2px rgba(0,102,178,0.12);
}

/* Button swatches (size) — compact pills */
#ldb-view-swatches li.button-variable-item {
    min-width: 36px !important;
    height: 32px !important;
    border-radius: 6px;
    border: 1.5px solid #ddd !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0 10px !important;
    margin: 0 !important;
    cursor: pointer;
    background: #fff;
    transition: border-color 0.15s, background 0.15s;
}

#ldb-view-swatches li.button-variable-item .variable-item-contents {
    display: flex;
    align-items: center;
    justify-content: center;
}

#ldb-view-swatches li.button-variable-item .variable-item-span {
    font-size: 12px;
    font-weight: 600;
    color: #444;
}

#ldb-view-swatches li.button-variable-item.selected {
    border-color: #0066b2 !important;
    background: #f0f7ff;
}

#ldb-view-swatches li.button-variable-item.selected .variable-item-span {
    color: #0066b2;
}

/* "Preço desde" — centered, compact */
#ldb-price-desde {
    text-align: center;
    margin: 12px 0 10px;
    padding: 12px 0 10px;
    border-top: 1px solid #eee;
}

#ldb-price-desde .ldb-desde-label {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #999;
    display: block;
    margin-bottom: 1px;
}

#ldb-price-desde .ldb-desde-value {
    font-size: 28px;
    font-weight: 800;
    color: #0066b2;
    display: block;
    line-height: 1.15;
}

/* Pricing tiers — compact pills */
#ldb-view-pricing {
    margin: 0 0 6px;
    padding-bottom: 8px;
    border-bottom: 1px solid #eee;
}

#ldb-view-pricing .ldb-pricing-table {
    width: 100%;
}

#ldb-view-pricing .ldb-pricing-table thead {
    display: none;
}

#ldb-view-pricing .ldb-pricing-table tbody {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

#ldb-view-pricing .ldb-pricing-table tr {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #f7f7f9;
    border-radius: 6px;
    padding: 6px 10px;
    flex: 1 1 0;
    min-width: 0;
    transition: background 0.15s;
}

#ldb-view-pricing .ldb-pricing-table tr.ldb-tier-active {
    background: #e6f1fb;
    outline: 1px solid #b8d5f0;
}

#ldb-view-pricing .ldb-pricing-table td {
    padding: 1px 0;
    border: none;
    font-size: 12px;
    text-align: center;
    white-space: nowrap;
    color: #666;
    line-height: 1.4;
}

#ldb-view-pricing .ldb-pricing-table td.ldb-tier-price {
    font-weight: 700;
    font-size: 14px;
    color: #0066b2;
    margin-top: 1px;
}

#ldb-view-pricing .ldb-live-price,
#ldb-view-pricing .ldb-total-row {
    display: none;
}

/* Col 2: Qty + Add to cart */
#ldb-view-addcart {
    margin: 10px 0 8px;
}

#ldb-view-addcart .ldb-view-total-row {
    text-align: center;
    font-size: 13px;
    color: #333;
    margin-bottom: 8px;
    display: none;
}

#ldb-view-addcart .ldb-vt-unit {
    font-weight: 600;
}

#ldb-view-addcart .ldb-vt-sep {
    margin: 0 5px;
    color: #ccc;
}

#ldb-view-addcart .ldb-vt-label {
    color: #666;
}

#ldb-view-addcart .ldb-vt-value {
    font-weight: 700;
    font-size: 16px;
    color: #0066b2;
}

#ldb-view-addcart .ldb-view-qty-row {
    display: flex;
    gap: 8px;
    align-items: stretch;
}

#ldb-view-addcart .ldb-view-qty {
    display: flex;
    border: 1.5px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    flex-shrink: 0;
}

#ldb-view-addcart .ldb-qty-minus,
#ldb-view-addcart .ldb-qty-plus {
    width: 32px;
    border: none;
    background: #f5f5f7;
    color: #333;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    line-height: 1;
}

#ldb-view-addcart .ldb-qty-minus:hover,
#ldb-view-addcart .ldb-qty-plus:hover {
    background: #e8e8ea;
}

#ldb-view-addcart .ldb-qty-input {
    width: 44px;
    text-align: center;
    border: none;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
    font-size: 14px;
    font-weight: 600;
    color: #222;
    -moz-appearance: textfield;
    padding: 6px 0;
}

#ldb-view-addcart .ldb-qty-input::-webkit-inner-spin-button,
#ldb-view-addcart .ldb-qty-input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

#ldb-view-addcart .ldb-add-btn {
    flex: 1;
    padding: 10px 16px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    border-radius: 8px;
    background: #0077b6;
    color: #fff;
    border: none;
    cursor: pointer;
    transition: background 0.15s;
    text-align: center;
}

#ldb-view-addcart .ldb-add-btn:hover {
    background: #005f8f;
}

/* Col 3: Modern card */
.wpb_custom_c6c3704a6e3e934fed6212c4b339237c {
    background: #f8f9fa;
    border: 1px solid #e0e2e6;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,.04);
}

.wpb_custom_c6c3704a6e3e934fed6212c4b339237c::before {
    content: "Configurar Pedido";
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e8e8e8;
}

/* Col 3: pricing table hidden by JS (clone shown in col 2) */

/* Col 3: button + qty */
.wpb_custom_c6c3704a6e3e934fed6212c4b339237c .woocommerce-variation-add-to-cart {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #e8e8e8;
}

.wpb_custom_c6c3704a6e3e934fed6212c4b339237c .quantity.buttons_added {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: 0;
}

.wpb_custom_c6c3704a6e3e934fed6212c4b339237c .single_add_to_cart_button {
    width: 100%;
    padding: 13px 20px !important;
    font-size: 14px !important;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 8px;
    background: #0077b6 !important;
    color: #fff !important;
    border: none !important;
    text-align: center !important;
    display: block !important;
    line-height: 1.4 !important;
    letter-spacing: 0.5px;
}

.wpb_custom_c6c3704a6e3e934fed6212c4b339237c .single_add_to_cart_button:hover {
    background: #005f8f;
}

/* Col 3: total */
.wpb_custom_c6c3704a6e3e934fed6212c4b339237c .ldb-total-row {
    text-align: center;
    padding: 10px 0 2px;
    border-top: 1px solid #e8e8e8;
}

.wpb_custom_c6c3704a6e3e934fed6212c4b339237c .ldb-total-row .ldb-total-value {
    font-size: 20px;
    color: #0066b2;
}

/* Col 3: variations labels */
.wpb_custom_c6c3704a6e3e934fed6212c4b339237c .variations th.label {
    font-size: 12px;
    font-weight: 600;
    color: #333;
}

/* =========================
   "Conheca os nossos Produtos" – Botao moderno + titulos
   ========================= */

/* Esconder o icone do chapeu (fa-redhat) e substituir por seta */
.wpb_custom_6687b26f39488ddbb85ddb3c1ce8e111 .vc_btn3-icon.fab.fa-redhat::before {
    content: "\f061"; /* Font Awesome arrow-right */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

/* Modernizar o botao */
.wpb_custom_6687b26f39488ddbb85ddb3c1ce8e111 {
    background: #0088cc !important;
    border-color: #0088cc !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
    padding: 8px 18px !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

.wpb_custom_6687b26f39488ddbb85ddb3c1ce8e111:hover,
.wpb_custom_6687b26f39488ddbb85ddb3c1ce8e111:focus {
    background: #006da3 !important;
    border-color: #006da3 !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* Titulos das categorias: nao cortar */
.vc_text_separator h4 {
    white-space: nowrap;
    padding: 0 6px;
}
