/**
 * Kardeu Single Product & Grid - Frontend Scoped Styles
 * 100% Theme-Agnostic, Zero-Overhead & Mobile-First
 */

/* Ocultação da barra de ordenação quando ativada pelo utilizador */
body.kardeu-hide-shop-toolbar .woocommerce-ordering,
body.kardeu-hide-shop-toolbar form.woocommerce-ordering,
body.kardeu-hide-shop-toolbar .woocommerce .woocommerce-ordering,
body.kardeu-hide-shop-toolbar .woocommerce-page .woocommerce-ordering,
body.kardeu-hide-shop-toolbar .ast-woocommerce-container .woocommerce-ordering,
body.kardeu-hide-shop-toolbar select.orderby {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.kardeu-catalog-grid-active ul.products,
.kardeu-product-scope ul.products {
    display: grid !important;
    grid-template-columns: repeat(var(--kardeu-grid-cols-desktop, 4), 1fr) !important;
    gap: var(--kardeu-grid-gap, 16px) !important;
    margin: 0 0 2em 0 !important;
    padding: 0 !important;
    list-style: none !important;
    float: none !important;
    clear: both !important;
}

body.kardeu-catalog-grid-active ul.products::before,
body.kardeu-catalog-grid-active ul.products::after {
    display: none !important;
}

@media (max-width: 991px) {
    body.kardeu-catalog-grid-active ul.products,
    .kardeu-product-scope ul.products {
        grid-template-columns: repeat(var(--kardeu-grid-cols-tablet, 2), 1fr) !important;
    }
}

@media (max-width: 600px) {
    body.kardeu-catalog-grid-active ul.products,
    .kardeu-product-scope ul.products {
        grid-template-columns: repeat(var(--kardeu-grid-cols-mobile, 2), 1fr) !important;
        gap: 10px !important;
    }
}

/* Card Individual */
body.kardeu-catalog-grid-active ul.products li.product,
.kardeu-product-scope ul.products li.product {
    font-family: var(--kardeu-font-body, inherit) !important;
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
    background: var(--kardeu-grid-card-bg, #ffffff) !important;
    border: var(--kardeu-card-border-width, 1px) solid var(--kardeu-grid-card-border, #e2e8f0) !important;
    border-radius: var(--kardeu-grid-card-radius, var(--kd-card-radius, 0px)) !important;
    padding: var(--kardeu-grid-card-padding, 12px 12px 16px 12px) !important;
    box-shadow: var(--kardeu-card-shadow, 0 1px 3px rgba(0,0,0,0.05)) !important;
    box-sizing: border-box !important;
    position: relative !important;
    text-align: var(--kardeu-grid-card-align, left) !important;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.2s ease !important;
    overflow: hidden !important;
}

body.kardeu-catalog-grid-active ul.products li.product:hover {
    transform: none !important;
    box-shadow: 0 6px 16px -2px rgba(15, 23, 42, 0.07) !important;
    border-color: #cbd5e1 !important;
}

body.kardeu-catalog-grid-active.kardeu-grid-hover-lift ul.products li.product:hover,
body.kardeu-grid-hover-lift .kardeu-product-scope ul.products li.product:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 14px 28px -4px rgba(15, 23, 42, 0.12) !important;
}

/* Modo Sem Moldura / Edge-to-Edge (txrace.com) */
body.kardeu-grid-frameless ul.products li.product,
.kardeu-product-scope.kardeu-grid-frameless ul.products li.product,
body.kardeu-catalog-grid-active ul.products li.product.is-frameless,
.kardeu-product-scope ul.products li.product.is-frameless {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

body.kardeu-grid-frameless ul.products li.product:hover,
.kardeu-product-scope.kardeu-grid-frameless ul.products li.product:hover,
body.kardeu-catalog-grid-active ul.products li.product.is-frameless:hover,
.kardeu-product-scope ul.products li.product.is-frameless:hover {
    transform: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

body.kardeu-grid-frameless.kardeu-grid-hover-lift ul.products li.product:hover,
body.kardeu-grid-hover-lift .kardeu-product-scope.kardeu-grid-frameless ul.products li.product:hover,
body.kardeu-catalog-grid-active.kardeu-grid-hover-lift ul.products li.product.is-frameless:hover,
body.kardeu-grid-hover-lift .kardeu-product-scope ul.products li.product.is-frameless:hover {
    transform: translateY(-5px) !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

body.kardeu-grid-zoom-hover ul.products li.product:hover .kardeu-loop-image-wrap img:not(.kardeu-secondary-img) {
    transform: scale(1.05) !important;
}

body.kardeu-grid-zoom-hover ul.products li.product:hover .kardeu-loop-image-wrap img.kardeu-secondary-img {
    transform: translate(-50%, -50%) scale(1.05) !important;
}

body.kardeu-grid-frameless .kardeu-loop-image-wrap,
.kardeu-product-scope.kardeu-grid-frameless .kardeu-loop-image-wrap,
ul.products li.product.is-frameless .kardeu-loop-image-wrap {
    border-radius: 0 !important;
    margin-bottom: 8px !important;
    width: 100% !important;
}

body.kardeu-grid-frameless .kardeu-loop-image-wrap img,
.kardeu-product-scope.kardeu-grid-frameless .kardeu-loop-image-wrap img,
ul.products li.product.is-frameless .kardeu-loop-image-wrap img {
    width: 100% !important;
    max-width: 100% !important;
}

.kardeu-grid-card-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
}

/* Imagem e Miniatura do Grid */
body.kardeu-catalog-grid-active ul.products li.product a.woocommerce-LoopProduct-link,
.kardeu-product-scope ul.products li.product a.woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    text-decoration: none !important;
    color: inherit !important;
    margin-bottom: 8px !important;
    background: transparent !important;
    flex-grow: 1 !important;
}

/* Encapsulamento Rígido da Imagem e Média no Loop */
.kardeu-loop-image-wrap {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: var(--kardeu-grid-img-max-h, 240px) !important;
    max-height: var(--kardeu-grid-img-max-h, 240px) !important;
    overflow: hidden !important;
    border-radius: var(--kardeu-grid-img-radius, var(--kd-card-radius, 0px)) !important;
    background: transparent !important;
    margin-bottom: 12px !important;
}

.kardeu-loop-image-wrap img {
    max-height: 100% !important;
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: var(--kardeu-grid-img-fit, contain) !important;
    object-position: center !important;
    display: block !important;
    margin: 0 auto !important;
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease !important;
}

/* Secondary Image Flip on Hover - Confinado rigorosamente à caixa da foto */
.kardeu-loop-image-wrap img.kardeu-secondary-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: var(--kardeu-grid-img-fit, contain) !important;
    object-position: center !important;
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: 2 !important;
    transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.kardeu-catalog-grid-active ul.products li.product:hover .kardeu-loop-image-wrap img.kardeu-secondary-img,
.kardeu-product-scope ul.products li.product:hover .kardeu-loop-image-wrap img.kardeu-secondary-img {
    opacity: 1 !important;
    transform: none !important;
}

body.kardeu-catalog-grid-active ul.products li.product.kardeu-has-secondary-image:hover .kardeu-loop-image-wrap img:not(.kardeu-secondary-img),
.kardeu-product-scope ul.products li.product.kardeu-has-secondary-image:hover .kardeu-loop-image-wrap img:not(.kardeu-secondary-img) {
    opacity: 0 !important;
    transform: none !important;
}

/* Container de Conteúdo do Cartão (Título, Autor, Preço e Estrelas) */
.kardeu-loop-content-wrap {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    width: 100% !important;
}

/* Fita de Canto Triangular (Corner Ribbon) Confinada */
.kardeu-loop-image-wrap .kardeu-corner-ribbon,
.kardeu-corner-ribbon {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 75px !important;
    height: 75px !important;
    overflow: hidden !important;
    z-index: 5 !important;
    pointer-events: none !important;
}

.kardeu-loop-image-wrap .kardeu-corner-ribbon.is-top-left,
.kardeu-corner-ribbon.is-top-left {
    left: 0 !important;
    right: auto !important;
}

.kardeu-corner-ribbon span {
    position: absolute;
    display: block;
    width: 110px;
    padding: 4px 0;
    background-color: var(--kardeu-grid-ribbon-bg, #e11d48);
    opacity: var(--kardeu-grid-ribbon-opacity, 0.90);
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
    color: var(--kardeu-grid-ribbon-text, #ffffff);
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    text-align: center;
    left: -18px;
    top: 14px;
    transform: rotate(45deg);
    letter-spacing: 0.05em;
}

.kardeu-corner-ribbon.is-top-left span {
    left: -18px;
    top: 14px;
    transform: rotate(-45deg);
}

/* Títulos, Subtítulos e Preços no Grid */
body.kardeu-catalog-grid-active ul.products li.product .woocommerce-loop-product__title,
.kardeu-product-scope .woocommerce-loop-product__title {
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, inherit)) !important;
    font-size: var(--kardeu-grid-title-size, 15px) !important;
    font-weight: var(--kardeu-grid-title-weight, 700) !important;
    color: var(--kardeu-grid-title-color, #0f172a) !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.35 !important;
    padding: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: var(--kardeu-grid-title-lines, 2) !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.kardeu-loop-subtitle {
    font-size: var(--kardeu-grid-sub-size, 12.5px);
    font-weight: var(--kardeu-grid-sub-weight, 500);
    color: var(--kardeu-grid-sub-color, #64748b);
    margin-bottom: 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.kardeu-catalog-grid-active ul.products li.product .price,
.kardeu-product-scope .price {
    font-size: var(--kardeu-grid-price-size, 18px) !important;
    font-weight: var(--kardeu-grid-price-weight, 800) !important;
    color: var(--kardeu-grid-price-color, #0f172a) !important;
    margin: 4px 0 10px 0 !important;
    display: block !important;
    line-height: 1.2 !important;
    font-feature-settings: "tnum" on;
}

body.kardeu-catalog-grid-active ul.products li.product .price del,
.kardeu-product-scope .price del {
    color: var(--kardeu-grid-price-del-color, #94a3b8) !important;
    font-weight: 500 !important;
    font-size: 0.85em !important;
    margin-right: 6px !important;
}

body.kardeu-catalog-grid-active ul.products li.product .price ins,
.kardeu-product-scope .price ins {
    text-decoration: none !important;
}

/* Star Ratings no Loop & Grid */
.kardeu-rating-stars-wrap,
.kd-product-card-rating {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-bottom: 8px !important;
}

.kd-rating-stars-list {
    display: inline-flex !important;
    align-items: center !important;
    gap: var(--kd-star-gap, 3px) !important;
    line-height: 1 !important;
}

.kd-star-btn {
    font-size: 14px !important;
    color: #cbd5e1 !important;
    line-height: 1 !important;
    display: inline-block !important;
}

.kd-star-btn.is-active {
    color: var(--kardeu-grid-star-color, #f59e0b) !important;
}

.kardeu-stars-outer {
    position: relative;
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    color: #e2e8f0;
    letter-spacing: 2px;
}

.kardeu-stars-outer::before {
    content: "★★★★★";
}

.kardeu-stars-inner {
    position: absolute;
    top: 0; left: 0;
    white-space: nowrap;
    overflow: hidden;
    color: var(--kardeu-grid-star-color, #f59e0b);
    letter-spacing: 2px;
}

.kardeu-stars-inner::before {
    content: "★★★★★";
}

.kardeu-rating-count,
.kd-rating-count {
    font-size: 11.5px !important;
    color: #64748b !important;
    font-weight: 500 !important;
    margin-left: 4px !important;
}

/* Botão Adicionar ao Carrinho no Grid */
body.kardeu-catalog-grid-active ul.products li.product .button,
.kardeu-product-scope ul.products li.product .button {
    margin-top: auto !important;
    background: var(--kardeu-grid-btn-bg, #0f172a) !important;
    color: var(--kardeu-grid-btn-text, #ffffff) !important;
    border-radius: var(--kardeu-grid-btn-radius, var(--kd-radius, 0px)) !important;
    font-size: var(--kardeu-grid-btn-font-size, 13.5px) !important;
    font-weight: var(--kardeu-grid-btn-font-weight, 600) !important;
    padding: 8px 14px !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    border: none !important;
    cursor: pointer !important;
    transition: background 0.15s ease-in-out, transform 0.1s ease !important;
    box-sizing: border-box !important;
    line-height: 1.4 !important;
}

body.kardeu-catalog-grid-active ul.products li.product .button .kd-btn-icon,
.kardeu-product-scope ul.products li.product .button .kd-btn-icon,
.woocommerce ul.products li.product .button .kd-btn-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 6px !important;
    flex-shrink: 0 !important;
}

body.kardeu-catalog-grid-active ul.products li.product .button .kd-btn-icon svg,
.kardeu-product-scope ul.products li.product .button .kd-btn-icon svg,
.woocommerce ul.products li.product .button .kd-btn-icon svg {
    display: block !important;
    width: 15px !important;
    height: 15px !important;
    stroke: currentColor !important;
}

body.kardeu-catalog-grid-active ul.products li.product .button .kd-btn-label,
.kardeu-product-scope ul.products li.product .button .kd-btn-label,
.woocommerce ul.products li.product .button .kd-btn-label {
    display: inline-block !important;
}

body.kardeu-catalog-grid-active ul.products li.product .button:hover,
.kardeu-product-scope ul.products li.product .button:hover {
    background: var(--kardeu-grid-btn-hover-bg, #27272a) !important;
    color: #ffffff !important;
}

body.kardeu-catalog-grid-active ul.products li.product .button.loading {
    opacity: 0.7 !important;
    pointer-events: none !important;
}


/* ==========================================================================
   2. FICHA DE PRODUTO INDIVIDUAL (SINGLE PDP) — THEME-AGNOSTIC RESETS
   Selectores de alta especificidade + !important para anular qualquer theme CSS.
   Portado e adaptado do astraoptima single-product.css (Golden Reference).
   ========================================================================== */

/* --------------------------------------------------------------------------
   2.0 MASTER LAYOUT RESET — 2 Columns (Gallery + Summary) via Flex
   Neutraliza float, grid, table e qualquer layout imposto pelo theme.
   -------------------------------------------------------------------------- */
body.kardeu-pdp-independent-active.single-product .woocommerce div.product,
body.kardeu-pdp-independent-active .woocommerce div.product,
body.single-product .woocommerce div.product {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 0 40px !important;
    max-width: var(--kd-container-width, 1320px) !important;
    margin: 0 auto !important;
    padding: 20px 0 !important;
    box-sizing: border-box !important;
}

/* Kill theme floats and clearfix pseudo-elements on product container */
body.single-product .woocommerce div.product::before,
body.single-product .woocommerce div.product::after {
    display: none !important;
    content: none !important;
}

/* Gallery Column — 50% width, no float */
body.single-product .woocommerce div.product div.images,
body.single-product .woocommerce div.product .woocommerce-product-gallery {
    float: none !important;
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
    margin: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Summary Column — fills remaining space */
body.single-product .woocommerce div.product .entry-summary,
body.single-product .woocommerce div.product div.summary {
    float: none !important;
    width: calc(50% - 40px) !important;
    max-width: calc(50% - 40px) !important;
    flex: 1 1 calc(50% - 40px) !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

/* Full-width elements below the 2-column split */
body.single-product .woocommerce div.product .woocommerce-tabs,
body.single-product .woocommerce div.product .related.products,
body.single-product .woocommerce div.product .upsells.products,
body.single-product .woocommerce div.product #reviews {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    clear: both !important;
}

/* Gallery image resets */
body.single-product .woocommerce div.product div.images img {
    border-radius: var(--kardeu-pdp-img-radius, 12px) !important;
    box-shadow: none !important;
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

body.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image {
    position: relative !important;
    overflow: hidden !important;
    border-radius: var(--kardeu-pdp-img-radius, 12px) !important;
}

/* Gallery thumbnails — Anti-Crop Proportional System (Compatível com qualquer tema) */
.woocommerce div.product div.images .flex-control-thumbs,
body.single-product .woocommerce-product-gallery .flex-control-thumbs,
body.single-product .flex-control-thumbs,
body.single-product.woocommerce .flex-control-thumbs,
.woocommerce.single-product .flex-control-thumbs,
div.images .flex-control-thumbs,
ol.flex-control-nav.flex-control-thumbs {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 16px !important;
    margin: 16px 0 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
    clear: both !important;
}

.woocommerce div.product div.images .flex-control-thumbs li,
body.single-product .woocommerce-product-gallery .flex-control-thumbs li,
body.single-product .flex-control-thumbs li,
body.single-product.woocommerce .flex-control-thumbs li,
.woocommerce.single-product .flex-control-thumbs li,
div.images .flex-control-thumbs li,
ol.flex-control-nav.flex-control-thumbs li {
    flex: 0 0 100px !important;
    width: 100px !important;
    max-width: 110px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    list-style: none !important;
    display: inline-flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img,
body.single-product .woocommerce-product-gallery .flex-control-thumbs li img,
body.single-product .flex-control-thumbs li img,
body.single-product.woocommerce .flex-control-thumbs li img,
.woocommerce.single-product .flex-control-thumbs li img,
div.images .flex-control-thumbs li img,
ol.flex-control-nav.flex-control-thumbs li img {
    width: 100% !important;
    height: auto !important;
    max-height: 165px !important;
    min-width: 60px !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    border-radius: 6px !important;
    border: 1.5px solid #e2e8f0 !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    transition: border-color 0.15s ease, opacity 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease !important;
    display: block !important;
    box-sizing: border-box !important;
    opacity: 0.85 !important;
    margin: 0 !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img:hover,
body.single-product .woocommerce-product-gallery .flex-control-thumbs li img:hover,
body.single-product .flex-control-thumbs li img:hover,
body.single-product.woocommerce .flex-control-thumbs li img:hover,
.woocommerce.single-product .flex-control-thumbs li img:hover {
    border-color: #94a3b8 !important;
    opacity: 1 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,
body.single-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
body.single-product .flex-control-thumbs li img.flex-active,
body.single-product.woocommerce .flex-control-thumbs li img.flex-active,
.woocommerce.single-product .flex-control-thumbs li img.flex-active {
    border-color: #cbd5e1 !important;
    opacity: 1 !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Fallback para galerias sem Flexslider / miniaturas estáticas */
.woocommerce div.product div.images .thumbnails,
body.single-product .thumbnails,
body.single-product.woocommerce .thumbnails {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 16px !important;
    margin-top: 16px !important;
    padding: 0 !important;
}

.woocommerce div.product div.images .thumbnails a,
body.single-product .thumbnails a,
body.single-product.woocommerce .thumbnails a {
    display: block !important;
    width: auto !important;
    height: auto !important;
    float: none !important;
    margin: 0 !important;
}

.woocommerce div.product div.images .thumbnails img,
body.single-product .thumbnails img,
body.single-product.woocommerce .thumbnails img {
    height: 85px !important;
    width: auto !important;
    min-width: 44px !important;
    max-width: 130px !important;
    object-fit: contain !important;
    aspect-ratio: auto !important;
    border-radius: 6px !important;
    border: 1.5px solid #e2e8f0 !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* --------------------------------------------------------------------------
   2.1 form.cart LAYOUT RESET — Flex Row (Qty + CTA side by side)
   Eliminates clearfix, floats, and stacking from themes.
   -------------------------------------------------------------------------- */
body.single-product .woocommerce div.product form.cart,
body.single-product div.product .entry-summary form.cart,
body.single-product div.product .entry-summary .single_variation_wrap .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    margin: 16px 0 !important;
    padding: 0 !important;
    border: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

/* Kill theme clearfix pseudo-elements on form.cart */
body.single-product div.product form.cart::before,
body.single-product div.product form.cart::after,
body.single-product .woocommerce div.product form.cart::before,
body.single-product .woocommerce div.product form.cart::after {
    display: none !important;
    content: none !important;
}

/* Variation form specific resets */
body.single-product .entry-summary .variations_form a.reset_variations {
    display: none !important;
    visibility: hidden !important;
}

body.single-product .entry-summary table.variations {
    border: 0 !important;
    margin: 10px 0 14px 0 !important;
    width: 100% !important;
    background: transparent !important;
}

body.single-product .entry-summary table.variations tbody,
body.single-product .entry-summary table.variations tr,
body.single-product .entry-summary table.variations td,
body.single-product .entry-summary table.variations th {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-align: left !important;
}

/* --------------------------------------------------------------------------
   2.2 METADATA RESET — product_meta layout
   -------------------------------------------------------------------------- */
body.single-product div.product .entry-summary .product_meta,
body.single-product .woocommerce div.product .entry-summary .product_meta {
    padding-top: 14px !important;
    margin-top: 16px !important;
    border-top: 1px solid #f1f5f9 !important;
    font-family: inherit !important;
    line-height: 1.7em !important;
    text-align: left !important;
}

body.single-product div.product .entry-summary .product_meta > span,
body.single-product div.product .entry-summary .product_meta .sku_wrapper,
body.single-product div.product .entry-summary .product_meta .posted_in,
body.single-product div.product .entry-summary .product_meta .tagged_as {
    display: block !important;
    margin-bottom: 4px !important;
    font-size: 13.5px !important;
    color: #64748b !important;
    font-weight: 600 !important;
}

body.single-product div.product .entry-summary .product_meta .sku,
body.single-product div.product .entry-summary .product_meta a {
    display: inline !important;
    font-size: 13.5px !important;
    color: #0f172a !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

body.single-product div.product .entry-summary .product_meta a:hover {
    color: #0284c7 !important;
    text-decoration: underline !important;
}

/* --------------------------------------------------------------------------
   2.3 TABS RESET — Clean tab navigation
   -------------------------------------------------------------------------- */
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
    border-bottom: 1px solid #e2e8f0 !important;
    gap: 0 !important;
    float: none !important;
    overflow: visible !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs::after {
    display: none !important;
    content: none !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    border-radius: 0 !important;
    float: none !important;
    position: relative !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 12px 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    text-decoration: none !important;
    border-bottom: 2px solid transparent !important;
    transition: color 0.15s ease, border-color 0.15s ease !important;
    display: block !important;
    background: transparent !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
    color: #0f172a !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #0f172a !important;
    border-bottom-color: var(--kardeu-pdp-tabs-accent, #ff7a00) !important;
}

/* Tab panel resets */
body.single-product .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

body.single-product .woocommerce-Tabs-panel--description,
body.single-product .woocommerce-Tabs-panel--description p {
    font-family: inherit !important;
    font-size: 14.5px !important;
    line-height: 1.65em !important;
    color: #475569 !important;
}

/* Badges & Media Links in Product Description */
body.single-product .woocommerce-Tabs-panel--description a img {
    display: inline-block !important;
    vertical-align: middle !important;
    margin-right: 8px !important;
    margin-bottom: 8px !important;
    border-radius: 4px;
    max-width: 100% !important;
    height: auto !important;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

body.single-product .woocommerce-Tabs-panel--description a:hover img {
    opacity: 0.9;
    transform: translateY(-1px);
}

/* Hide first heading in description tab (WC default) */
body.single-product .woocommerce-Tabs-panel--description h2:first-of-type {
    display: none !important;
}

/* Attribute tables in tabs */
body.single-product .woocommerce-product-attributes tbody .woocommerce-product-attributes-item__label {
    background-color: #f8fafc !important;
    color: #475569 !important;
    font-weight: 600 !important;
}

/* --------------------------------------------------------------------------
   2.4 QUANTITY STEPPER — Hidden qty for digital/1-unit products
   -------------------------------------------------------------------------- */
body.single-product .quantity.hidden,
body.single-product .quantity:has(input[type="hidden"]),
body.single-product .quantity:has(input.qty[type="hidden"]) {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    overflow: hidden !important;
}

/* --------------------------------------------------------------------------
   2.5 RESPONSIVE — Tablet & Mobile Stack
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    body.single-product .woocommerce div.product {
        flex-direction: column !important;
        gap: 20px 0 !important;
        padding: 10px 0 !important;
    }

    body.single-product .woocommerce div.product div.images,
    body.single-product .woocommerce div.product .woocommerce-product-gallery {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    body.single-product .woocommerce div.product .entry-summary,
    body.single-product .woocommerce div.product div.summary {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    body.single-product div.product form.cart,
    body.single-product .woocommerce div.product form.cart {
        flex-wrap: wrap !important;
        gap: 10px !important;
    }

    body.single-product div.product form.cart .quantity {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        justify-content: space-between !important;
    }

    body.single-product div.product form.cart button.single_add_to_cart_button {
        width: 100% !important;
        flex: 1 1 100% !important;
    }

    /* Tabs stack on mobile */
    body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs {
        flex-wrap: wrap !important;
    }

    body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a {
        padding: 10px 14px !important;
        font-size: 13px !important;
    }
}

/* --------------------------------------------------------------------------
   2.6 ONSALE BADGE — Theme-agnostic reset
   -------------------------------------------------------------------------- */
body.single-product .woocommerce div.product span.onsale {
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    right: auto !important;
    z-index: 10 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: auto !important;
    min-height: auto !important;
    padding: 4px 10px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    background: #e11d48 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    letter-spacing: 0.04em !important;
}

/* --------------------------------------------------------------------------
   2.7 HIDE REDUNDANT "VIEW CART" LINK & ADDED CHECKMARK
   -------------------------------------------------------------------------- */
a.added_to_cart,
.added_to_cart,
.added_to_cart.wc-forward,
body.single-product .entry-summary .cart .added_to_cart,
body.single-product .single_variation_wrap .woocommerce-variation-add-to-cart .added_to_cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    pointer-events: none !important;
    position: absolute !important;
    left: -9999px !important;
}

.woocommerce a.button.added::after,
.woocommerce a.button.added:after,
.woocommerce button.button.added::after,
.woocommerce button.button.added:after,
.woocommerce input.button.added::after,
.woocommerce input.button.added:after,
.button.added::after,
.button.added:after,
.single_add_to_cart_button.added::after,
.single_add_to_cart_button.added:after,
.kd-product-card-btn.added::after,
.kd-product-card-btn.added:after,
.kd-product-card-btn.added .kd-btn-label::after,
.kd-product-card-btn.added .kd-btn-label:after {
    display: none !important;
    content: none !important;
}

/* ==========================================================================
   2.8 PDP COMPONENT STYLES (Pill, Subtitle, Title, Price, Stock, etc.)
   ========================================================================== */

/* Pill de Categoria & Badge de Novidade */
.kardeu-cat-pill-wrap {
    margin-bottom: 8px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

.kardeu-cat-pill {
    display: inline-block;
    background: var(--kardeu-pdp-cat-bg, #f1f5f9);
    color: var(--kardeu-pdp-cat-text, #475569) !important;
    border: 1px solid var(--kardeu-pdp-cat-border, #e2e8f0);
    border-radius: var(--kardeu-pdp-cat-radius, var(--kd-radius, 4px)) !important;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 3px 8px;
    text-decoration: none !important;
    line-height: 1.2;
    transition: all 0.15s ease;
}

.kardeu-cat-pill:hover {
    background: #e2e8f0;
    color: #0f172a !important;
}

/* Badge Pill no Cabeçalho */
.kardeu-pdp-badge-pill {
    display: inline-block !important;
    background-color: var(--kardeu-pdp-badge-bg, #e11d48) !important;
    color: var(--kardeu-pdp-badge-color, #ffffff) !important;
    border-radius: var(--kd-radius, var(--kardeu-btn-radius, 4px)) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 3px 9px !important;
    line-height: 1.2 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
    vertical-align: middle !important;
}

/* Badge / Fita de Canto sobre a Foto na PDP */
.woocommerce-product-gallery {
    position: relative !important;
}

.kardeu-pdp-corner-ribbon {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    z-index: 25 !important;
    pointer-events: none !important;
}

.kardeu-pdp-corner-ribbon span {
    display: inline-block !important;
    background-color: var(--kardeu-pdp-badge-bg, #e11d48) !important;
    color: var(--kardeu-pdp-badge-color, #ffffff) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 4px 10px !important;
    border-radius: var(--kd-radius, var(--kardeu-btn-radius, 4px)) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18) !important;
}

/* Subtítulo PDP */
.kardeu-pdp-subtitle {
    font-family: var(--kd-font-body, var(--kardeu-font-body, inherit)) !important;
    font-size: var(--kardeu-pdp-sub-size, 15px) !important;
    font-weight: var(--kardeu-pdp-sub-weight, 500) !important;
    color: var(--kardeu-pdp-sub-color, #64748b) !important;
    margin: -4px 0 14px 0 !important;
    line-height: 1.4 !important;
}

.kardeu-pdp-subtitle.is-italic {
    font-style: italic !important;
}

/* Avaliações com Estrelas (Star Rating) PDP */
.kardeu-pdp-rating-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin: 2px 0 14px 0 !important;
    line-height: 1 !important;
    font-family: var(--kardeu-font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
}

.kardeu-pdp-rating-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: opacity 0.15s ease !important;
}

.kardeu-pdp-rating-link:hover {
    opacity: 0.82 !important;
}

.kardeu-pdp-rating-link:hover .kardeu-rating-count {
    color: #0f172a !important;
    text-decoration: underline !important;
}

/* Supressão Total do Sufixo de IVA e Rating nativo duplicado */
body.kardeu-hide-tax-suffix .woocommerce-price-suffix,
body.kardeu-hide-tax-suffix .kardeu-tax-suffix,
body.kardeu-hide-tax-suffix .woocommerce-variation-price .woocommerce-price-suffix,
body.kardeu-hide-tax-suffix .woocommerce-Price-taxNotice,
body.single-product.kardeu-hide-tax-suffix .woocommerce-price-suffix,
body.single-product.kardeu-hide-tax-suffix .kardeu-tax-suffix,
body.single-product.kardeu-hide-tax-suffix .woocommerce-variation-price .woocommerce-price-suffix,
body.single-product.kardeu-hide-tax-suffix .woocommerce-Price-taxNotice,
.co-cart-drawer .woocommerce-price-suffix,
.co-cart-drawer .kardeu-tax-suffix,
.co-cart-drawer .woocommerce-Price-taxNotice,
.co-cross-sell-price .woocommerce-price-suffix,
.co-cross-sell-price .kardeu-tax-suffix,
.co-cross-sell-price small,
body.single-product .woocommerce-product-rating {
    display: none !important;
}

.kardeu-pdp-rating-row {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.kardeu-pdp-stars {
    display: inline-flex !important;
    align-items: center !important;
    gap: var(--kardeu-pdp-star-gap, 3px) !important;
    line-height: 1 !important;
    user-select: none !important;
    letter-spacing: 0 !important;
}

.kardeu-pdp-stars::before,
.kardeu-pdp-stars::after,
.kardeu-pdp-stars *::before,
.kardeu-pdp-stars *::after {
    content: none !important;
    display: none !important;
}

.kardeu-pdp-stars .kardeu-star-unit {
    display: inline-block !important;
    cursor: pointer !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    user-select: none !important;
    transition: transform 0.15s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
    filter: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
}

.kardeu-pdp-stars .kardeu-star-unit.is-filled {
    color: var(--kardeu-pdp-star-color, #f59e0b) !important;
}

.kardeu-pdp-stars .kardeu-star-unit.is-empty {
    color: #cbd5e1 !important;
}

.kardeu-pdp-stars .kardeu-star-unit.is-half {
    display: inline-block !important;
}

.kardeu-pdp-rating-wrap .kardeu-rating-count {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    margin-left: 2px !important;
    line-height: 1 !important;
}

/* Animação ESTRITAMENTE na estrela clicada (sem sombras / sem glow) */
@keyframes kardeuSingleStarPop {
    0% {
        transform: scale(1);
    }
    40% {
        transform: scale(1.42);
    }
    75% {
        transform: scale(0.92);
    }
    100% {
        transform: scale(1);
    }
}

.kardeu-pdp-stars .kardeu-star-unit.is-clicked-star {
    animation: kardeuSingleStarPop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
    filter: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
}

.kardeu-pdp-rating-feedback {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.4;
    box-shadow: none !important;
    filter: none !important;
    animation: kardeuFeedbackSlideIn 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

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

.kardeu-pdp-rating-feedback.is-success {
    background: #f0fdf4 !important;
    border: 1px solid #86efac !important;
    color: #15803d !important;
}

.kardeu-pdp-rating-feedback.is-info {
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    color: #1d4ed8 !important;
}

/* Título e Preço na Single */
.single-product div.product .product_title {
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, inherit)) !important;
    font-size: var(--kardeu-pdp-title-size, 26px) !important;
    font-weight: var(--kardeu-pdp-title-weight, 700) !important;
    color: var(--kardeu-pdp-title-color, #0f172a) !important;
    margin-bottom: 8px !important;
    line-height: 1.25 !important;
}

.single-product div.product p.price {
    font-size: var(--kardeu-pdp-price-size, 28px) !important;
    font-weight: var(--kardeu-pdp-price-weight, 800) !important;
    color: var(--kardeu-pdp-price-color, #0f172a) !important;
    margin-bottom: 16px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.kardeu-savings-badge {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
    font-size: 12.5px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 9999px;
    line-height: 1;
}

/* Ponto de Stock */
.kardeu-stock-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    margin-bottom: 14px !important;
}

.kardeu-stock-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #16a34a;
    display: inline-block;
}

/* Stepper de Quantidade */
.single-product div.product form.cart .quantity {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid var(--kardeu-pdp-qty-border, #cbd5e1) !important;
    border-radius: var(--kd-radius, var(--kardeu-pdp-qty-radius, var(--kardeu-global-radius, 0px))) !important;
    overflow: hidden !important;
    background: var(--kardeu-pdp-qty-bg, #ffffff) !important;
    height: 52px !important;
    box-sizing: border-box !important;
    margin-right: 12px !important;
    width: auto !important;
}

.kardeu-qty-btn {
    width: 36px !important;
    height: 100% !important;
    background: transparent !important;
    border: none !important;
    color: var(--kardeu-pdp-qty-text, #0f172a) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    transition: background 0.15s ease !important;
}

.kardeu-qty-btn:hover {
    background: #f1f5f9 !important;
}

.single-product div.product form.cart .quantity input.qty {
    width: 44px !important;
    height: 100% !important;
    border: none !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--kardeu-pdp-qty-text, #0f172a) !important;
    padding: 0 !important;
    box-shadow: none !important;
    -moz-appearance: textfield !important;
}

.single-product div.product form.cart .quantity input.qty::-webkit-outer-spin-button,
.single-product div.product form.cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* Botão Principal CTA (rules.md §8A: 52px desktop / 56px mobile) */
.single-product div.product form.cart button.single_add_to_cart_button {
    font-family: var(--kardeu-btn-font, inherit) !important;
    height: var(--kardeu-pdp-cta-h-desktop, 52px) !important;
    background: var(--kardeu-pdp-cta-bg, #ff7a00) !important;
    color: var(--kardeu-pdp-cta-text, #ffffff) !important;
    border-radius: var(--kardeu-pdp-cta-radius, 8px) !important;
    font-size: var(--kardeu-pdp-cta-font-size, 15.5px) !important;
    font-weight: var(--kardeu-pdp-cta-font-weight, 700) !important;
    box-shadow: var(--kardeu-btn-shadow, 0 2px 4px rgba(0,0,0,0.06)) !important;
    padding: 0 28px !important;
    border: none !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: background 0.15s ease-in-out, transform 0.1s ease !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
}

.single-product div.product form.cart button.single_add_to_cart_button:hover {
    background: var(--kardeu-pdp-cta-hover-bg, #e56d00) !important;
    color: #ffffff !important;
}

.kardeu-btn-icon {
    flex-shrink: 0;
}

@media (max-width: 768px) {
    body.single-product div.product form.cart,
    body.single-product .woocommerce div.product form.cart,
    body.single-product div.product form.cart .single_variation_wrap,
    body.single-product div.product form.cart .woocommerce-variation-add-to-cart,
    body.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        gap: 10px !important;
    }

    body.single-product div.product form.cart .quantity,
    body.single-product .woocommerce div.product form.cart .quantity,
    body.single-product div.product form.cart .woocommerce-variation-add-to-cart .quantity {
        width: 100% !important;
        max-width: 100% !important;
        height: 48px !important;
        margin: 0 !important;
        display: flex !important;
        justify-content: space-between !important;
        float: none !important;
        box-sizing: border-box !important;
    }

    body.single-product div.product form.cart .quantity input.qty,
    body.single-product .woocommerce div.product form.cart .quantity input.qty {
        flex: 1 !important;
        width: auto !important;
        text-align: center !important;
    }

    body.single-product div.product form.cart button.single_add_to_cart_button,
    body.single-product .woocommerce div.product form.cart button.single_add_to_cart_button,
    body.single-product div.product form.cart .button.single_add_to_cart_button,
    body.single-product .woocommerce div.product form.cart .button.single_add_to_cart_button,
    body.single-product div.product form.cart .woocommerce-variation-add-to-cart button.single_add_to_cart_button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: var(--kardeu-pdp-cta-h-mobile, 56px) !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        float: none !important;
        box-sizing: border-box !important;
    }
}

/* Imagem de Cartões e Meios de Pagamento sob o Botão Add to Cart */
.kardeu-pdp-payment-img-wrap {
    margin-top: 10px !important;
    margin-bottom: 6px !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
}

.single-product div.product form.cart {
    margin-bottom: 6px !important;
}

.kardeu-pdp-payment-img-wrap.align-left {
    justify-content: flex-start !important;
}

.kardeu-pdp-payment-img-wrap.align-center {
    justify-content: center !important;
}

.kardeu-pdp-payment-img {
    display: block !important;
    height: auto !important;
    object-fit: contain !important;
}

@media (max-width: 768px) {
    .kardeu-pdp-payment-img-wrap {
        justify-content: center !important;
    }
}

/* Bloco de Confiança, Pagamentos & Entrega */
.kardeu-pdp-trust-block {
    margin-top: 6px !important;
    padding-top: 0 !important;
    border-top: none !important;
}

.kardeu-pdp-delivery-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    padding: 8px 14px !important;
    border-radius: var(--kd-radius, var(--kardeu-pdp-delivery-radius, var(--kardeu-btn-radius, 0px))) !important;
    font-size: 13.5px !important;
    color: #334155 !important;
    margin-top: 2px !important;
    margin-bottom: 14px !important;
    line-height: 1.4 !important;
}

.kardeu-pdp-delivery-badge svg {
    flex-shrink: 0 !important;
    color: currentColor !important;
}

.kardeu-pdp-guarantees {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 16px;
}

.kardeu-guarantee-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #475569;
}

.kardeu-guarantee-icon {
    color: #64748b;
    display: flex;
    align-items: center;
}

.kardeu-guarantee-link {
    color: inherit;
    text-decoration: underline;
}

.kardeu-pdp-payments-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 14px;
}

.kardeu-payments-label {
    font-size: 12px;
    font-weight: 600;
    color: #64748b;
}

.kardeu-payment-icons-strip {
    display: flex;
    align-items: center;
    gap: 6px;
}

.kardeu-pay-badge svg {
    display: block;
    height: 20px;
    width: 32px;
}

/* Barra Fixa de Compra no Rodapé (Sticky Add to Cart) */
.kardeu-sticky-bar {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    background: #ffffff;
    border-top: 1px solid #e2e8f0;
    padding: 10px 20px;
    box-shadow: 0 -4px 16px rgba(0,0,0,0.06);
    z-index: 9999;
    transform: translateY(100%);
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.kardeu-sticky-bar.is-visible {
    transform: translateY(0);
}

.kardeu-sticky-bar-inner {
    max-width: var(--kd-container-width, 1320px);
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.kardeu-sticky-product-info {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    flex: 1 1 auto;
}

.kardeu-sticky-text {
    min-width: 0;
    overflow: hidden;
}

.kardeu-sticky-thumb {
    width: 44px;
    height: 44px;
    object-fit: contain;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    flex-shrink: 0;
}

.kardeu-sticky-title {
    font-size: 14px;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kardeu-sticky-price {
    font-size: 14px;
    font-weight: 800;
    color: #0f172a;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kardeu-sticky-actions {
    flex-shrink: 0;
}

.kardeu-sticky-bar button.kardeu-sticky-btn,
button.kardeu-sticky-btn {
    height: 44px !important;
    padding: 0 22px !important;
    background: var(--kardeu-pdp-cta-bg, #ff7a00) !important;
    color: var(--kardeu-pdp-cta-text, #ffffff) !important;
    border-radius: var(--kardeu-pdp-cta-radius, 8px) !important;
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, inherit)) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border: none !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
    transition: background 0.15s ease, transform 0.1s ease !important;
    line-height: 1 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    outline: none !important;
}

.kardeu-sticky-bar button.kardeu-sticky-btn:hover,
button.kardeu-sticky-btn:hover {
    background: var(--kardeu-pdp-cta-hover-bg, #e56d00) !important;
    color: var(--kardeu-pdp-cta-text, #ffffff) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
}

.kardeu-sticky-bar button.kardeu-sticky-btn:active,
button.kardeu-sticky-btn:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.kardeu-sticky-btn-text {
    white-space: nowrap !important;
    display: inline !important;
    line-height: 1 !important;
}

@media (max-width: 768px) {
    .kardeu-sticky-bar {
        padding: 8px 12px !important;
    }

    .kardeu-sticky-bar-inner {
        gap: 8px !important;
    }

    .kardeu-sticky-product-info {
        gap: 8px !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }

    .kardeu-sticky-thumb {
        width: 36px !important;
        height: 36px !important;
        border-radius: 6px !important;
        flex-shrink: 0 !important;
    }

    .kardeu-sticky-text {
        min-width: 0 !important;
        flex: 1 1 auto !important;
        overflow: hidden !important;
    }

    .kardeu-sticky-title {
        font-size: 11.5px !important;
        font-weight: 600 !important;
        line-height: 1.25 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        max-width: 155px !important;
    }

    .kardeu-sticky-price {
        font-size: 12px !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        margin-top: 1px !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .kardeu-sticky-price del {
        display: none !important; /* Oculta preço riscado no telemóvel para poupar espaço */
    }

    .kardeu-sticky-bar button.kardeu-sticky-btn,
    button.kardeu-sticky-btn,
    .kardeu-sticky-btn {
        height: 38px !important;
        padding: 0 14px !important;
        font-size: 13.5px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 5px !important;
        width: auto !important;
        max-width: none !important;
        word-break: keep-all !important;
    }

    .kardeu-sticky-bar button.kardeu-sticky-btn span,
    button.kardeu-sticky-btn span,
    .kardeu-sticky-btn span,
    .kardeu-sticky-btn-text {
        white-space: nowrap !important;
        display: inline !important;
    }
}

/* ==========================================================================
   2.9 ABAS DO PRODUTO & TABELA DE ESPECIFICAÇÕES TÉCNICAS (UX & REDESIGN)
   ========================================================================== */
.woocommerce-tabs.wc-tabs-wrapper {
    margin-top: 48px !important;
    margin-bottom: 48px !important;
    border-top: 1px solid #e2e8f0 !important;
    padding-top: 32px !important;
}

.woocommerce-tabs ul.tabs.wc-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    list-style: none !important;
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
    border-bottom: 2px solid #f1f5f9 !important;
    background: transparent !important;
}

.woocommerce-tabs ul.tabs.wc-tabs::before,
.woocommerce-tabs ul.tabs.wc-tabs::after {
    display: none !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    position: relative !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 10px 18px !important;
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, inherit)) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    text-decoration: none !important;
    border-bottom: 2px solid transparent !important;
    margin-bottom: -2px !important;
    transition: all 0.2s ease !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li a:hover {
    color: #0f172a !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li.active a {
    color: var(--kardeu-pdp-cta-bg, #ff7a00) !important;
    border-bottom-color: var(--kardeu-pdp-cta-bg, #ff7a00) !important;
    font-weight: 700 !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel {
    color: #334155 !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel h2 {
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, inherit)) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 16px !important;
}

/* Redesign Moderno do Quadro de Informação Adicional (Additional Information)
   Estilo sincronizado com os blocos da Descrição: cabeçalho slate/cinza, títulos em maiúsculas,
   contraste nítido de peso tipográfico (700 vs 400) e supressão total de itálicos/cursivas. */
.woocommerce-tabs .woocommerce-Tabs-panel--additional_information h2,
.woocommerce-tabs #tab-additional_information h2 {
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, inherit)) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 0 16px 0 !important;
    letter-spacing: -0.01em !important;
}

/* Padronização Tipográfica Global das Abas e Cabeçalhos da Ficha de Produto */
.woocommerce-tabs ul.tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, sans-serif)) !important;
    font-weight: 600 !important;
}

.woocommerce-tabs .panel h2,
.woocommerce-Tabs-panel h2,
.woocommerce-tabs #tab-additional_information h2,
.woocommerce-tabs #tab-description h2,
.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce div.product .woocommerce-Tabs-panel--additional_information h2 {
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, sans-serif)) !important;
    font-weight: var(--kd-font-heading-weight, 700) !important;
    color: var(--kd-secondary, #0f172a) !important;
    letter-spacing: -0.015em !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel,
.woocommerce div.product .woocommerce-tabs .panel {
    font-family: var(--kd-font-body, var(--kardeu-font-body, sans-serif)) !important;
    font-size: var(--kd-font-body-size, 15px) !important;
    line-height: var(--kd-body-line-height, 1.6) !important;
    color: var(--kd-color-text, #334155) !important;
}

/* ==========================================================================
   Quadro de Informação Adicional no formato dos quadros (su-box) da Descrição
   ========================================================================== */
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes,
.woocommerce div.product .woocommerce-tabs #tab-additional_information table.shop_attributes,
table.woocommerce-product-attributes.shop_attributes {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    margin: 16px 0 24px 0 !important;
    padding: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes tbody,
table.woocommerce-product-attributes.shop_attributes tbody {
    display: block !important;
    width: 100% !important;
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Cada atributo é exibido como um cartão individual idêntico aos quadros (su-box) da descrição */
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes tr,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes tr.woocommerce-product-attributes-item,
table.woocommerce-product-attributes.shop_attributes tr,
table.woocommerce-product-attributes.shop_attributes tr.woocommerce-product-attributes-item {
    display: block !important;
    width: 100% !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: var(--su-global-radius, var(--kd-card-radius, 0px)) !important;
    overflow: hidden !important;
    margin: 0 0 16px 0 !important;
    background: #ffffff !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes tr:hover,
table.woocommerce-product-attributes.shop_attributes tr:hover {
    border-color: #cbd5e1 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06) !important;
}

/* Cabeçalho do Quadro (Label) - Formato exato do su-box-title da Descrição */
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes th,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes th.woocommerce-product-attributes-item__label,
table.woocommerce-product-attributes.shop_attributes th,
table.woocommerce-product-attributes.shop_attributes th.woocommerce-product-attributes-item__label {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 10px 16px !important;
    background-color: #f8fafc !important;
    border: none !important;
    border-bottom: 1px solid #e2e8f0 !important;
    border-top-left-radius: var(--su-global-radius, var(--kd-card-radius, 0px)) !important;
    border-top-right-radius: var(--su-global-radius, var(--kd-card-radius, 0px)) !important;
    font-family: var(--kd-font-heading, var(--kardeu-font-heading, 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif)) !important;
    font-size: 15.95px !important;
    line-height: 23.925px !important;
    font-weight: 700 !important;
    letter-spacing: normal !important;
    color: #0F172A !important;
    text-transform: uppercase !important;
    text-align: left !important;
    font-style: normal !important;
}

/* Área de Conteúdo do Quadro (Valor) - Formato exato do su-box-content da Descrição */
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value,
table.woocommerce-product-attributes.shop_attributes td,
table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 14px 16px !important;
    background-color: #ffffff !important;
    border: none !important;
    border-bottom-left-radius: var(--su-global-radius, var(--kd-card-radius, 0px)) !important;
    border-bottom-right-radius: var(--su-global-radius, var(--kd-card-radius, 0px)) !important;
    font-family: var(--kd-font-body, var(--kardeu-font-body, 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif)) !important;
    font-size: 14.5px !important;
    line-height: 23.925px !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    color: #0F172A !important;
    text-align: left !important;
    font-style: normal !important;
}

/* Tipografia e espaçamentos uniformes nos elementos internos (p, span, a, em, i) */
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes th,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td p,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td span,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td a,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td em,
.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td i,
table.woocommerce-product-attributes.shop_attributes th,
table.woocommerce-product-attributes.shop_attributes td,
table.woocommerce-product-attributes.shop_attributes td p,
table.woocommerce-product-attributes.shop_attributes td span,
table.woocommerce-product-attributes.shop_attributes td a,
table.woocommerce-product-attributes.shop_attributes td em,
table.woocommerce-product-attributes.shop_attributes td i {
    font-style: normal !important;
}

.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value p,
table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value p {
    margin: 0 !important;
    padding: 0 !important;
    font-family: var(--kd-font-body, var(--kardeu-font-body, 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif)) !important;
    font-size: 14.5px !important;
    line-height: 23.925px !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    color: #0F172A !important;
    font-style: normal !important;
}

.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value a,
table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value a {
    color: var(--kd-primary, var(--color-primary, #ff7a00)) !important;
    text-decoration: underline !important;
    font-weight: 500 !important;
    transition: color 0.15s ease !important;
}

.woocommerce-Tabs-panel--additional_information table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value a:hover,
table.woocommerce-product-attributes.shop_attributes td.woocommerce-product-attributes-item__value a:hover {
    color: #0f172a !important;
}


/* ==========================================================================
   3. SWATCHES VISUAIS DE VARIAÇÃO
   ========================================================================== */
.kardeu-swatch-field-wrap select {
    display: none !important;
}

/* Prevenir bloqueios e spinners do WooCommerce nos Swatches */
.kardeu-swatches-container .blockUI,
.kardeu-swatch-field-wrap .blockUI,
form.variations_form .blockUI.blockOverlay {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.kardeu-swatches-container {
    margin-bottom: 14px;
}

.kardeu-swatches-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

/* Rótulo / Título das Variações (ex: "Seat Color", "Tamanho", etc.) */
.single-product div.product form.cart table.variations .label,
.single-product div.product form.cart table.variations .label label,
.single-product div.product form.cart table.variations th.label label,
.single-product div.product form.cart .variations label {
    font-family: inherit !important;
    font-size: var(--kardeu-swatch-label-font-size, 14px) !important;
    font-weight: var(--kardeu-swatch-label-font-weight, 600) !important;
    color: var(--kardeu-swatch-label-color, #0f172a) !important;
    line-height: 1.4 !important;
    margin-bottom: 6px !important;
    display: inline-block !important;
}

.kardeu-swatch-btn {
    height: var(--kardeu-swatch-h, 42px);
    min-width: var(--kardeu-swatch-min-w, 46px);
    border-radius: var(--kardeu-swatch-radius, 8px);
    background: var(--kardeu-swatch-bg, #ffffff);
    color: var(--kardeu-swatch-text, #1e293b);
    border: var(--kardeu-swatch-border-w, 1px) solid var(--kardeu-swatch-border, #cbd5e1);
    font-size: var(--kardeu-swatch-font-size, 13.5px);
    font-weight: var(--kardeu-swatch-font-weight, 500);
    padding: 0 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    box-sizing: border-box;
    box-shadow: none !important;
    outline: none !important;
}

.kardeu-swatch-btn:hover {
    background: var(--kardeu-swatch-hover-bg, #f8fafc) !important;
    color: var(--kardeu-swatch-hover-text, #0f172a) !important;
    border-color: var(--kardeu-swatch-hover-border, #94a3b8) !important;
    border-width: var(--kardeu-swatch-border-w, 1px) !important;
    box-shadow: none !important;
    outline: none !important;
}

.kardeu-swatch-btn:focus,
.kardeu-swatch-btn:active {
    box-shadow: none !important;
    outline: none !important;
}

.kardeu-swatch-btn.is-selected {
    background: var(--kardeu-swatch-active-bg, #ff7a00) !important;
    color: var(--kardeu-swatch-active-text, #ffffff) !important;
    border-color: var(--kardeu-swatch-active-border, #ff7a00) !important;
    border-width: var(--kardeu-swatch-border-w, 1px) !important;
    font-weight: 700 !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Blindagem: neutralizar terminantemente qualquer spinner ou loader nos botões de swatch */
.kardeu-swatch-btn .kardeu-spinner,
.kardeu-swatch-btn .kd-spinner,
.kardeu-swatch-btn .kd-btn-spinner,
.kardeu-swatch-btn .blockUI,
.kardeu-swatch-btn::before,
.kardeu-swatch-btn.is-loading::before {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    animation: none !important;
    width: 0 !important;
    height: 0 !important;
}

.kardeu-swatches-list.shape-circle .kardeu-swatch-btn {
    border-radius: 50%;
    padding: 0;
    width: var(--kardeu-swatch-h, 42px);
}

.kardeu-loop-swatches-preview {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 6px;
}

.kardeu-loop-swatch-pill {
    font-size: 11px;
    background: #f1f5f9;
    color: #475569;
    padding: 2px 6px;
    border-radius: 4px;
    border: 1px solid #e2e8f0;
}

.kardeu-loop-swatch-more {
    font-size: 10px;
    color: #94a3b8;
    font-weight: 600;
}


/* ==========================================================================
   4. B2B & NOTAS FISCAIS
   ========================================================================== */
.kardeu-price-guest-hidden a {
    display: inline-block;
    padding: 6px 12px;
    background: #f1f5f9;
    color: #0f172a;
    border-radius: 6px;
    font-size: 12.5px;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid #cbd5e1;
}

.kardeu-price-guest-hidden a:hover {
    background: #e2e8f0;
}

.kardeu-tax-suffix {
    font-size: 12px;
    color: #64748b;
    font-weight: normal;
    margin-left: 4px;
}

.kardeu-reverse-charge-product-pill {
    display: flex;
    align-items: center;
    gap: 6px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1d4ed8;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    margin-bottom: 12px;
}

/* Purga Universal de Produtos Relacionados (Anti-Theme Shield) */
.related.products,
.related-products,
.related.products.carousel,
section.related,
div.related,
.single-product .related.products,
.single-product section.related,
.single-product div.related,
.woocommerce .related.products,
.woocommerce section.related,
body.single-product.kardeu-hide-related .related.products,
body.single-product.kardeu-hide-related .related,
body.single-product.kardeu-hide-related section.related,
body.single-product.kardeu-hide-related div.related {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
}

