/* ==========================================================
   EXTENSO CHILD 2.0 — WOOCOMMERCE DESIGN SYSTEM
   Reference: approved Extenso Home + approved product/category mockup.
   IMPORTANT: no Elementor/Hello header rules here.
   ========================================================== */

:root {
    --extenso-orange: #E95105;
    --extenso-orange-hover: #CF4300;
    --extenso-dark: #182B49;
    --extenso-text: #30343A;
    --extenso-muted: #6F7480;
    --extenso-border: #E5DED8;
    --extenso-soft: #FAF5F1;
    --extenso-green: #159447;
}

/* ---------- WOOCOMMERCE SCOPE ---------- */

.extenso-woocommerce,
.extenso-woocommerce button,
.extenso-woocommerce input,
.extenso-woocommerce select,
.extenso-woocommerce textarea {
    font-family: "Poppins", sans-serif;
}

.extenso-woocommerce a.button,
.extenso-woocommerce button.button,
.extenso-woocommerce input.button,
.extenso-woocommerce .button,
.extenso-woocommerce .single_add_to_cart_button {
    background: var(--extenso-orange) !important;
    background-color: var(--extenso-orange) !important;
    border-color: var(--extenso-orange) !important;
    color: #fff !important;
    box-shadow: none !important;
}

.extenso-woocommerce a.button:hover,
.extenso-woocommerce button.button:hover,
.extenso-woocommerce input.button:hover,
.extenso-woocommerce .button:hover,
.extenso-woocommerce .single_add_to_cart_button:hover {
    background: var(--extenso-orange-hover) !important;
    border-color: var(--extenso-orange-hover) !important;
}

/* ==========================================================
   SHOP / CATEGORY
   ========================================================== */

.extenso-woocommerce.woocommerce-shop .widget-area,
.extenso-woocommerce.tax-product_cat .widget-area,
.extenso-woocommerce.tax-product_tag .widget-area,
.extenso-woocommerce.woocommerce-shop aside,
.extenso-woocommerce.tax-product_cat aside,
.extenso-woocommerce.tax-product_tag aside {
    display: none !important;
}

.extenso-woocommerce.woocommerce-shop .content-area,
.extenso-woocommerce.tax-product_cat .content-area,
.extenso-woocommerce.tax-product_tag .content-area {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
}

.extenso-woocommerce .woocommerce-result-count {
    color: var(--extenso-text) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    margin: 8px 0 18px !important;
}

.extenso-woocommerce .woocommerce-ordering {
    margin: 0 0 18px !important;
}

.extenso-woocommerce .woocommerce-ordering select {
    min-width: 300px !important;
    height: 52px !important;
    padding: 0 16px !important;
    border: 1px solid #D9D2CC !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: var(--extenso-text) !important;
    font-size: 14px !important;
}

.extenso-woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 8px 0 40px !important;
    padding: 0 !important;
}

.extenso-woocommerce ul.products::before,
.extenso-woocommerce ul.products::after {
    display: none !important;
}

.extenso-woocommerce ul.products li.product {
    width: auto !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 10px 10px 13px !important;
    border: 1px solid var(--extenso-border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 4px 15px rgba(32,33,36,.055) !important;
    overflow: hidden !important;
}

.extenso-woocommerce ul.products li.product:hover {
    border-color: #F19A70 !important;
    box-shadow: 0 8px 21px rgba(32,33,36,.09) !important;
}

.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    display: block !important;
}

.extenso-woocommerce ul.products li.product a img {
    display: block !important;
    width: 100% !important;
    height: 220px !important;
    margin: 0 auto 10px !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #fff !important;
    border-radius: 7px !important;
    transition: transform .22s ease !important;
}

.extenso-woocommerce ul.products li.product:hover a img {
    transform: scale(1.035) !important;
}

.extenso-woocommerce ul.products li.product .onsale {
    background: var(--extenso-orange) !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    padding: 7px 9px !important;
    min-height: auto !important;
    min-width: auto !important;
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    margin: 0 !important;
}

/* Product titles — same restrained hierarchy as the Home. */
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: var(--extenso-dark) !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: -.01em !important;
    margin: 7px 2px 8px !important;
    min-height: 42px;
}

/* No short description in category cards. */
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__description,
.extenso-woocommerce ul.products li.product .product-excerpt,
.extenso-woocommerce ul.products li.product .short-description,
.extenso-woocommerce ul.products li.product .excerpt,
.extenso-woocommerce ul.products li.product .product-short-description {
    display: none !important;
}

/* Approved large orange price. */
.extenso-woocommerce ul.products li.product .price {
    display: block !important;
    color: var(--extenso-orange) !important;
    font-size: 20px !important;
    line-height: 1.05 !important;
    font-weight: 500 !important;
    margin: 6px 2px 3px !important;
}

.extenso-woocommerce ul.products li.product .price del {
    color: var(--extenso-muted) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
}

.extenso-woocommerce ul.products li.product .price ins {
    color: var(--extenso-orange) !important;
    text-decoration: none !important;
}

/*
 * Installment styling.
 * It styles real output from common WooCommerce/payment markup without
 * creating a fake installment promise.
 */
.extenso-woocommerce ul.products li.product .installments,
.extenso-woocommerce ul.products li.product .parcelamento,
.extenso-woocommerce ul.products li.product .payment-installments,
.extenso-woocommerce ul.products li.product .woocommerce-price-suffix,
.extenso-woocommerce ul.products li.product .wc-stripe-installment,
.extenso-woocommerce ul.products li.product .installment,
.extenso-woocommerce ul.products li.product .installment-plan {
    display: block !important;
    color: var(--extenso-text) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    margin: 2px 2px 9px !important;
}

/* Category CTA — real WooCommerce button. */
.extenso-woocommerce ul.products li.product .button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: calc(100% - 4px) !important;
    min-height: 46px !important;
    margin: 8px 2px 0 !important;
    padding: 0 10px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    font-weight: 600 !important;
    text-align: center !important;
    white-space: normal !important;
}

.extenso-woocommerce ul.products li.product .stock {
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    margin: 8px 2px 0 !important;
}

.extenso-woocommerce ul.products li.product .stock.in-stock {
    color: var(--extenso-green) !important;
}

.extenso-woocommerce ul.products li.product .stock.out-of-stock {
    color: var(--extenso-muted) !important;
}

/* ==========================================================
   CATEGORY CARD — CANONICAL VISUAL RULES
   Consolidated from the approved card revisions.
   The plugin continues to control the vitrines/carousel;
   these rules only define the card visual in the Child Theme.
   ========================================================== */
.extenso-woocommerce ul.products li.product .extenso-ready-badge {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-height: 24px !important;
    height: 24px !important;
    margin: 10px 0 8px 10px !important;
    padding: 0 9px !important;
    box-sizing: border-box !important;
    border-radius: 6px !important;
    background: var(--extenso-orange) !important;
    color: #fff !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    z-index: auto !important;
}

.extenso-woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link {
    position: static !important;
}

/* Keep the complete product visible; the image frame itself stays 1:1. */
.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link img {
    object-fit: contain !important;
    object-position: center center !important;
}

/* WhatsApp card links: final approved font size. */
.extenso-woocommerce ul.products li.product a[href*="wa.me"],
.extenso-woocommerce ul.products li.product a[href*="whatsapp"],
.extenso-woocommerce ul.products li.product a.whatsapp,
.extenso-woocommerce ul.products li.product a.whatsapp-button,
.extenso-woocommerce ul.products li.product .whatsapp-button {
    font-size: 9px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-ready-badge {
        margin: 8px 0 8px 8px !important;
    }
}


/* ==========================================================
   SINGLE PRODUCT
   ========================================================== */

/* REF + category above title. */
.extenso-woocommerce .extenso-product-reference {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 0 5px !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    color: var(--extenso-text) !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-ref-label,
.extenso-woocommerce .extenso-product-reference .extenso-category-label {
    font-weight: 500 !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-ref-value {
    color: var(--extenso-text) !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-ref-separator {
    color: #B7B1AC !important;
    margin: 0 2px !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-category-label,
.extenso-woocommerce .extenso-product-reference .extenso-category-value,
.extenso-woocommerce .extenso-product-reference .extenso-category-value a {
    color: var(--extenso-orange) !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-category-value a {
    text-decoration: none !important;
}

/* Product title: strong, but deliberately not oversized. */
.extenso-woocommerce div.product .product_title {
    color: var(--extenso-dark) !important;
    font-family: "Poppins", sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: -.02em !important;
}

/* Product price follows Home's orange hierarchy. */
.extenso-woocommerce div.product p.price,
.extenso-woocommerce div.product span.price {
    color: var(--extenso-orange) !important;
    font-family: "Poppins", sans-serif !important;
    font-weight: 700 !important;
}

/* Bigger quantity + breathing room before CTA. */
.extenso-woocommerce div.product form.cart {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    column-gap: 16px !important;
    row-gap: 14px !important;
    margin-top: 20px !important;
}

.extenso-woocommerce div.product form.cart .quantity {
    margin: 0 !important;
}

.extenso-woocommerce div.product form.cart .quantity .qty {
    width: 92px !important;
    height: 58px !important;
    padding: 0 12px !important;
    border: 1px solid #D9D2CC !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: var(--extenso-dark) !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 16px !important;
    text-align: center !important;
}

/* CTA: real WooCommerce button, Extenso orange. */
.extenso-woocommerce div.product form.cart .single_add_to_cart_button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-width: 270px !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 0 28px !important;
    border-radius: 9px !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
}

/*
 * Correct cart icon using WooCommerce's native icon hook when available.
 * No literal icon code is printed.
 */
.extenso-woocommerce div.product form.cart .single_add_to_cart_button::before {
    content: "" !important;
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

/* Keep duplicate product meta out of the visual area. */
.extenso-woocommerce div.product .product_meta {
    display: none !important;
}


/* ==========================================================
   PRODUCT PAGE — LATEST APPROVED COMMERCIAL HIERARCHY
   ========================================================== */

/* Give the product content more breathing room below the Elementor header/breadcrumb. */
.extenso-woocommerce.single-product div.product {
    padding-top: 22px !important;
}

/* The approved price hierarchy. */
.extenso-woocommerce.single-product div.product p.price,
.extenso-woocommerce.single-product div.product span.price {
    color: var(--extenso-orange) !important;
    font-size: 25px !important;
    line-height: 1.08 !important;
    font-weight: 700 !important;
    margin: 12px 0 5px !important;
}

/*
 * Real installment/payment output:
 * style common plugin-generated installment blocks without inventing a
 * financial value in the Child.
 */
.extenso-woocommerce.single-product div.product .installments,
.extenso-woocommerce.single-product div.product .parcelamento,
.extenso-woocommerce.single-product div.product .payment-installments,
.extenso-woocommerce.single-product div.product .installment,
.extenso-woocommerce.single-product div.product .installment-plan,
.extenso-woocommerce.single-product div.product .woocommerce-price-suffix,
.extenso-woocommerce.single-product div.product .wc-stripe-installment,
.extenso-woocommerce.single-product div.product .mercadopago-installments,
.extenso-woocommerce.single-product div.product .mercadopago-installment {
    display: block !important;
    color: #40516B !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    margin: 2px 0 14px !important;
}

/* Stock is a real WooCommerce value and sits below the purchase area. */
.extenso-woocommerce.single-product .extenso-product-stock {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 6px 0 8px !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
}

.extenso-woocommerce.single-product .extenso-product-stock--in {
    color: var(--extenso-green) !important;
}

.extenso-woocommerce.single-product .extenso-product-stock--out {
    color: #B54747 !important;
}

.extenso-woocommerce.single-product .extenso-stock-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 50% !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.extenso-woocommerce.single-product .extenso-product-stock--in .extenso-stock-icon {
    background: var(--extenso-green) !important;
}

.extenso-woocommerce.single-product .extenso-product-stock--out .extenso-stock-icon {
    background: #B54747 !important;
}

/* Keep WooCommerce's default stock/meta line from duplicating our real status. */
.extenso-woocommerce.single-product div.product .stock {
    display: none !important;
}

/* More separation between quantity and the main CTA. */
.extenso-woocommerce.single-product div.product form.cart {
    margin-top: 22px !important;
    column-gap: 17px !important;
    row-gap: 14px !important;
}

/* Product CTA remains the real WooCommerce action. */
.extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    min-width: 280px !important;
    min-height: 58px !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    font-size: 16px !important;
}

/* Do not show literal icon-font codes. */
.extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button::before {
    content: "" !important;
    width: 20px !important;
    height: 20px !important;
    display: inline-block !important;
}

/* Breadcrumb breathing room, without touching Elementor header. */
.extenso-woocommerce.single-product .woocommerce-breadcrumb {
    margin-top: 6px !important;
    margin-bottom: 8px !important;
}


/* Real visual cart icon drawn by CSS; no icon-font dependency. */
.extenso-woocommerce ul.products li.product .button::before,
.extenso-woocommerce div.product form.cart .single_add_to_cart_button::before {
    content: "" !important;
    display: inline-block !important;
    width: 19px !important;
    height: 19px !important;
    flex: 0 0 19px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.4'/%3E%3Ccircle cx='19' cy='20' r='1.4'/%3E%3Cpath d='M3 4h2l2.2 10.2a2 2 0 0 0 2 1.6h8.7a2 2 0 0 0 1.9-1.4L21 8H7'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

/* Out-of-stock products keep the same card hierarchy, but the CTA
 * becomes an explicit status rather than a generic navigation action. */
.extenso-woocommerce ul.products li.product.outofstock .button,
.extenso-woocommerce ul.products li.product .button.disabled {
    background: #F4F1EE !important;
    background-color: #F4F1EE !important;
    border-color: #D9D2CC !important;
    color: var(--extenso-dark) !important;
    cursor: default !important;
}

.extenso-woocommerce ul.products li.product.outofstock .button::before,
.extenso-woocommerce ul.products li.product .button.disabled::before {
    display: none !important;
}

.extenso-woocommerce ul.products li.product.outofstock .stock.out-of-stock {
    display: none !important;
}


/* ==========================================================
   PRODUCT TABS — EXTENSO VISUAL LANGUAGE
   ========================================================== */

/* Add breathing room so the first line of technical content is never clipped. */
.extenso-woocommerce.single-product .woocommerce-tabs {
    margin-top: 64px !important;
    padding-top: 0 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    align-items: flex-end !important;
    gap: 4px !important;
    margin: 0 0 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid var(--extenso-border) !important;
}

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

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #D9D2CC !important;
    border-bottom: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    background: #F5F1EE !important;
    overflow: hidden !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li::before,
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 12px 18px !important;
    color: var(--extenso-dark) !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: background-color .18s ease, color .18s ease, border-color .18s ease !important;
}

/* Approved interaction: hover turns the tab Extenso orange. */
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li:hover,
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active:hover {
    background: var(--extenso-orange) !important;
    border-color: var(--extenso-orange) !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li:hover a,
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active:hover a {
    color: #fff !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active {
    background: #fff !important;
    border-color: #D9D2CC !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active a {
    color: var(--extenso-dark) !important;
}

/* V4.2.9 — Active product tab starts in Extenso orange for visual coherence. */
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active {
    background: var(--extenso-orange) !important;
    border-color: var(--extenso-orange) !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active a {
    color: #fff !important;
}

/* Content begins with comfortable separation from the tabs. */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    margin: 0 !important;
    padding: 24px 0 12px !important;
}

/* V4.2.14 — description section: bottom delimiter only. Tabs remain unchanged. */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description {
    padding-bottom: 28px !important;
    border-bottom: 1px solid var(--extenso-border) !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel > h2 {
    margin: 0 0 18px !important;
    color: var(--extenso-dark) !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
}

/* V4.3.12 — The Description tab already supplies its own label.
   Hide only WooCommerce's duplicated panel title, not the section
   headings written inside the product description HTML. */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description > h2:first-child {
    display: none !important;
}

/* Product-description section headings: 2px smaller than the previous size. */
.extenso-woocommerce.single-product .woocommerce-tabs .extenso-descricao-produto h2 {
    font-size: 22px !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .related.products {
    margin-top: 64px !important;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (min-width: 768px) and (max-width: 1100px) {
    .extenso-woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767px) {
    .extenso-woocommerce .woocommerce-ordering {
        float: none !important;
        width: 100% !important;
    }

    .extenso-woocommerce .woocommerce-ordering select {
        width: 100% !important;
        min-width: 0 !important;
    }

    .extenso-woocommerce ul.products {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .extenso-woocommerce ul.products li.product {
        width: 100% !important;
        max-width: 430px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .extenso-woocommerce ul.products li.product a img {
        height: 270px !important;
    }

    .extenso-woocommerce .extenso-product-reference {
        margin-bottom: 18px !important;
        font-size: 13px !important;
    }

    .extenso-woocommerce div.product form.cart {
        column-gap: 10px !important;
        row-gap: 12px !important;
    }

    .extenso-woocommerce div.product form.cart .quantity .qty {
        width: 82px !important;
        height: 54px !important;
    }

    .extenso-woocommerce div.product form.cart .single_add_to_cart_button {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        min-height: 54px !important;
        padding: 0 18px !important;
        font-size: 15px !important;
    }
}

/* v2.5.0 — more breathing room between description and related products. */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description {
    padding-bottom: 28px !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .related.products h2 {
    margin-top: 0 !important;
}


/* ==========================================================
   V2.6.0 — RELATED/CATEGORY PRODUCT PRICE WEIGHT
   Preserve approved font size; use medium weight (500).
   ========================================================== */
.extenso-woocommerce ul.products li.product .price,
.extenso-woocommerce .related ul.products li.product .price,
.extenso-woocommerce .up-sells ul.products li.product .price {
    font-weight: 500 !important;
}

/* Additional breathing room between description and related products. */
.extenso-woocommerce.single-product .related,
.extenso-woocommerce.single-product .up-sells {
    margin-top: 10px !important;
}


/* ==========================================================
   V2.7.0 — SINGLE PRODUCT TYPOGRAPHY
   Only the approved product title and price are changed.
   ========================================================== */

/* Main product title */
.extenso-woocommerce.single-product div.product .product_title {
    font-size: 35px !important;
}

/* Main product price — Poppins, 30px, weight 600 */
.extenso-woocommerce.single-product div.product p.price,
.extenso-woocommerce.single-product div.product span.price {
    font-family: "Poppins", sans-serif !important;
    font-size: 30px !important;
    font-weight: 600 !important;
}


/* ==========================================================
   V3.4.0 — CONTENT HEADINGS
   Requested: reduce these three headings by 30%.
   Everything else remains frozen.
   ========================================================== */

/* Produtos Relacionados: previous visual target ~36px -> 25px */
.extenso-woocommerce.single-product .woocommerce-tabs .related.products h2 {
    font-size: 25px !important;
}

/* Description / Informações técnicas panel headings: 26px -> 18px */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel > h2 {
    font-size: 18px !important;
}


/* ==========================================================
   V3.5.0 — DESCRIPTION -> RELATED PRODUCTS SPACING
   Only the vertical spacing between these sections is changed.
   ========================================================== */
.extenso-woocommerce.single-product .related.products,
.extenso-woocommerce.single-product .up-sells.products {
    margin-top: 30px !important;
}


/* ==========================================================
   V3.6.0 — SINGLE PRODUCT MAIN TITLE
   Only the requested color and 5% size reduction are changed.
   ========================================================== */
.extenso-woocommerce.single-product div.product .product_title {
    color: #202428 !important;
    font-size: 33.25px !important;
}


/* ==========================================================
   V3.7.0 — TYPOGRAPHY REFINEMENT
   Only the two requested headings are reduced by 10%.
   ========================================================== */

/* Produtos Relacionados: 25px -> 22.5px */
.extenso-woocommerce.single-product .woocommerce-tabs .related.products h2 {
    font-size: 22.5px !important;
}

/* Main product title: 33.25px -> 29.925px */
.extenso-woocommerce.single-product div.product .product_title {
    font-size: 29.925px !important;
}


/* ==========================================================
   V3.8.0 — TYPOGRAPHY FINAL TEST
   Only the two requested heading sizes are changed.
   ========================================================== */

/* Related products heading: 20px */
.extenso-woocommerce.single-product .woocommerce-tabs .related.products h2 {
    font-size: 20px !important;
}

/* Main product title: 32px */
.extenso-woocommerce.single-product div.product .product_title {
    font-size: 32px !important;
}


/* ==========================================================
   V3.9.0 — MAIN PRODUCT TITLE
   Only the requested title size is changed.
   ========================================================== */
.extenso-woocommerce.single-product div.product .product_title {
    font-size: 34px !important;
}


/* ==========================================================
   V4.2.0 — RESTORED NATIVE GALLERY + ACTIVE THUMB BORDER
   Only thumbnail border/active state is customized.
   Native WooCommerce gallery behavior is preserved.
   ========================================================== */

.extenso-woocommerce.single-product div.product .flex-control-thumbs {
    display: flex !important;
    gap: 8px !important;
    margin-top: 12px !important;
}

.extenso-woocommerce.single-product div.product .flex-control-thumbs li {
    border: 1px solid #E5DED8 !important;
    border-radius: 7px !important;
    padding: 2px !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.single-product div.product .flex-control-thumbs li.flex-active {
    border: 2px solid var(--extenso-orange) !important;
    opacity: 1 !important;
}

.extenso-woocommerce.single-product div.product .flex-control-thumbs li:hover {
    border-color: var(--extenso-orange) !important;
    opacity: 1 !important;
}

.extenso-woocommerce.single-product div.product .flex-control-thumbs li img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
}


/* ==========================================================
   V4.2.1 — PRODUCT BADGE + QUANTITY RESTORE
   Only the two requested product-page refinements are changed.
   ========================================================== */

/* PRONTA ENTREGA: fixed to the upper-left corner of the main gallery. */
.extenso-woocommerce.single-product div.product .woocommerce-product-gallery {
    position: relative !important;
}

.extenso-woocommerce.single-product .extenso-ready-product-badge {
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    z-index: 30 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    padding: 0 12px !important;
    border-radius: 7px !important;
    background: var(--extenso-orange) !important;
    color: #fff !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}

/* Restore the single bordered - 1 + quantity control. */
.extenso-woocommerce.single-product div.product form.cart .quantity {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 116px !important;
    height: 58px !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #D9D2CC !important;
    border-radius: 9px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.single-product div.product form.cart .quantity .qty {
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: none !important;
    background: transparent !important;
    color: var(--extenso-dark) !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-shadow: none !important;
    -moz-appearance: textfield !important;
}

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

.extenso-woocommerce.single-product .extenso-qty-btn {
    flex: 0 0 36px !important;
    width: 36px !important;
    height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #25324A !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    cursor: pointer !important;
}

.extenso-woocommerce.single-product .extenso-qty-btn:hover {
    color: var(--extenso-orange) !important;
    background: #FFF7F2 !important;
}

/* Preserve the broader space before the purchase CTA. */
.extenso-woocommerce.single-product div.product form.cart {
    column-gap: 22px !important;
}


/* ==========================================================
   V4.2.6 — WIDER PRODUCT GALLERY / NARROWER SUMMARY
   Desktop/tablet: thumbnails vertical on the left.
   Mobile: native horizontal thumbnails below the main image.
   ========================================================== */
@media (min-width: 768px) {
    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery {
        display: grid !important;
        grid-template-columns: 76px minmax(0, 1fr) !important;
        column-gap: 16px !important;
        align-items: start !important;
    }

    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-viewport {
        grid-column: 2 !important;
        grid-row: 1 !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
        grid-column: 1 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: 76px !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    /* A coluna mostra uma janela de seis miniaturas; as demais podem ser acessadas pelas setas. */
    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
        height: 496px !important;
        max-height: 496px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        margin-top: 30px !important;
        margin-bottom: 30px !important;
        scroll-behavior: smooth;
    }
    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar {
        display: none !important;
    }
    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
        float: none !important;
        display: block !important;
        flex: 0 0 76px !important;
        width: 76px !important;
        height: 76px !important;
        margin: 0 !important;
        padding: 2px !important;
        box-sizing: border-box !important;
    }

    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
    }
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery {
        display: block !important;
    }

    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
        display: flex !important;
        flex-direction: row !important;
        gap: 8px !important;
        width: auto !important;
        margin-top: 12px !important;
    }

    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
        float: none !important;
        flex: 0 0 76px !important;
        width: 76px !important;
        height: 76px !important;
    }
}


/* ==========================================================
   V4.2.6 — WIDER PRODUCT GALLERY / NARROWER SUMMARY
   Desktop: give the main image more visual weight and reduce
   the information/purchase column, inspired by the approved
   reference layout. Header, breadcrumb, mobile and all other
   WooCommerce areas remain untouched.
   ========================================================== */
@media (min-width: 1101px) {
    .extenso-woocommerce.single-product div.product div.images,
    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery {
        width: 56% !important;
        max-width: 56% !important;
        margin-right: 0 !important;
    }

    .extenso-woocommerce.single-product div.product div.summary {
        width: 40% !important;
        max-width: 40% !important;
        margin-left: 4% !important;
        margin-right: 0 !important;
    }
}

/* ==========================================================
   V4.2.8 — SINGLE PRODUCT TITLE / PRICE REFINEMENT
   Only the requested main title and single-product price are changed.
   ========================================================== */

/* Main product title: 30px on desktop. */
.extenso-woocommerce.single-product div.product .product_title {
    font-size: 30px !important;
}

/* Main product price: 30px -> 32px */
.extenso-woocommerce.single-product div.product p.price,
.extenso-woocommerce.single-product div.product span.price {
    font-size: 32px !important;
}

/* ==========================================================
   V4.2.10 — PRODUCT CONTENT TYPOGRAPHY
   Reduce readable tab body copy by 1px without changing
   headings, technical tables, tabs, product title or price.
   ========================================================== */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description p,
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description li {
    font-size: 15px !important;
    line-height: 1.65 !important;
}



/* ==========================================================
   V4.2.12 — PRODUCT TAB TYPOGRAPHY REFINEMENT
   Requested: 14px, weight 600, line-height 1.4 and the same
   dark tone used by the main product title.
   ========================================================== */
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li a {
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    color: #202428 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active a,
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li:hover a,
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active:hover a {
    color: #fff !important;
}

/* ==========================================================
   V4.2.17 — MINHA CONTA / ÁREA DO CLIENTE
   Visual unificado para login, painel, pedidos, downloads,
   endereços, detalhes da conta e sair.
   Somente WooCommerce. Header/Elementor permanecem intocados.
   ========================================================== */

.extenso-woocommerce.woocommerce-account .woocommerce {
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    color: var(--extenso-text) !important;
}

/* Título principal da área do cliente */
.extenso-woocommerce.woocommerce-account .woocommerce > h2,
.extenso-woocommerce.woocommerce-account .woocommerce > h1 {
    color: var(--extenso-dark) !important;
    font-size: 34px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    margin: 0 0 30px !important;
}

/* Área logada: navegação + conteúdo */
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 23% !important;
    margin-right: 4% !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content {
    width: 73% !important;
    color: var(--extenso-text) !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--extenso-border) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #fff !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid var(--extenso-border) !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
    border-bottom: 0 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: block !important;
    padding: 13px 16px !important;
    color: var(--extenso-dark) !important;
    background: #fff !important;
    text-decoration: none !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    transition: background .18s ease, color .18s ease !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: var(--extenso-orange) !important;
    color: #fff !important;
}

/* Conteúdo das páginas internas */
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content p,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content li {
    font-size: 14px !important;
    line-height: 1.65 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content a {
    color: var(--extenso-orange) !important;
    text-decoration: none !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content a:hover {
    color: var(--extenso-orange-hover) !important;
    text-decoration: underline !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content > h2,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content h2,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content h3 {
    color: var(--extenso-dark) !important;
    font-weight: 600 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content > h2 {
    font-size: 24px !important;
    line-height: 1.3 !important;
    margin: 0 0 18px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content h3 {
    font-size: 18px !important;
    line-height: 1.35 !important;
}

/* Tabelas de pedidos e downloads */
.extenso-woocommerce.woocommerce-account .woocommerce-orders-table,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-downloads,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-details {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid var(--extenso-border) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #fff !important;
    font-size: 13px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-orders-table th,
.extenso-woocommerce.woocommerce-account .woocommerce-orders-table td,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-downloads th,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-downloads td,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-details th,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-details td {
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--extenso-border) !important;
    color: var(--extenso-text) !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-orders-table th,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-downloads th {
    background: var(--extenso-soft) !important;
    color: var(--extenso-dark) !important;
    font-weight: 600 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-orders-table tr:last-child td,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-downloads tr:last-child td,
.extenso-woocommerce.woocommerce-account .woocommerce-table--order-details tr:last-child td {
    border-bottom: 0 !important;
}

/* Status de pedido */
.extenso-woocommerce.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-status span,
.extenso-woocommerce.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-status {
    font-weight: 600 !important;
}

/* Formulários internos */
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content form .form-row {
    margin-bottom: 16px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content label {
    color: var(--extenso-text) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    margin-bottom: 6px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content select,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content textarea {
    width: 100% !important;
    min-height: 46px !important;
    padding: 10px 13px !important;
    border: 1px solid #D9D2CC !important;
    border-radius: 7px !important;
    background: #fff !important;
    color: var(--extenso-text) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content textarea {
    min-height: 120px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content input:focus,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content select:focus,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content textarea:focus {
    border-color: var(--extenso-orange) !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(233,81,5,.10) !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content button.button,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content a.button {
    min-height: 44px !important;
    padding: 10px 20px !important;
    border-radius: 7px !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

/* Endereços: cartões coerentes */
.extenso-woocommerce.woocommerce-account .woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 20px !important;
    border: 1px solid var(--extenso-border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-bottom: 12px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3 {
    margin: 0 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses address {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

/* Login: mesma linguagem visual, mais compacto e centralizado */
.extenso-woocommerce.woocommerce-account .woocommerce form.login,
.extenso-woocommerce.woocommerce-account .woocommerce form.register {
    width: 100% !important;
    max-width: 620px !important;
    margin: 0 auto 30px !important;
    padding: 28px !important;
    border: 1px solid var(--extenso-border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce form.login h2,
.extenso-woocommerce.woocommerce-account .woocommerce form.register h2 {
    color: var(--extenso-dark) !important;
    font-size: 24px !important;
    margin: 0 0 20px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce form.login .lost_password a {
    color: var(--extenso-orange) !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce form.login .lost_password a:hover {
    color: var(--extenso-orange-hover) !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.woocommerce-account .woocommerce {
        max-width: calc(100% - 30px) !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce > h2,
    .extenso-woocommerce.woocommerce-account .woocommerce > h1 {
        font-size: 28px !important;
        margin-bottom: 22px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation,
    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content {
        width: 100% !important;
        margin-right: 0 !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation {
        margin-bottom: 24px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-orders-table,
    .extenso-woocommerce.woocommerce-account .woocommerce-table--order-downloads,
    .extenso-woocommerce.woocommerce-account .woocommerce-table--order-details {
        font-size: 12px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce form.login,
    .extenso-woocommerce.woocommerce-account .woocommerce form.register {
        padding: 22px !important;
    }
}

/* ==========================================================
   V4.2.18 — ÁREA DO CLIENTE / AJUSTE DE LARGURA E ENDEREÇOS
   Mantém a 4.2.17 como base. Apenas compacta as duas colunas,
   reduz os títulos dos cartões de endereço e preserva o responsivo.
   ========================================================== */
.extenso-woocommerce.woocommerce-account .woocommerce {
    max-width: 1050px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 21% !important;
    margin-right: 3% !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content {
    width: 72% !important;
}

/* Endereços: dois cartões menores, alinhados no mesmo eixo visual. */
.extenso-woocommerce.woocommerce-account .woocommerce-Addresses {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: start !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
    min-width: 0 !important;
    padding: 18px !important;
    align-self: start !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title {
    align-items: flex-start !important;
    margin-bottom: 10px !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h2,
.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3 {
    font-size: 26px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title a {
    font-size: 14px !important;
    line-height: 1.35 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-Addresses address {
    font-size: 13px !important;
    line-height: 1.5 !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.woocommerce-account .woocommerce {
        max-width: calc(100% - 30px) !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-navigation,
    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content {
        width: 100% !important;
        margin-right: 0 !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h2,
    .extenso-woocommerce.woocommerce-account .woocommerce-Addresses .woocommerce-Address-title h3 {
        font-size: 22px !important;
    }
}

/* V4.2.19 — ajustes pontuais: botões com contraste e cartões de endereço na mesma linha */
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions a.button,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content button.button,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content a.button {
    background: var(--extenso-orange) !important;
    border-color: var(--extenso-orange) !important;
    color: #ffffff !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions a.button:hover,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button:hover,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content button.button:hover,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content a.button:hover {
    background: var(--extenso-orange-hover) !important;
    border-color: var(--extenso-orange-hover) !important;
    color: #ffffff !important;
}

/* WooCommerce pode aplicar floats/larguras aos cartões. Neutralizamos isso
   para que os dois cartões ocupem a mesma linha no desktop. */
.extenso-woocommerce.woocommerce-account .woocommerce-Addresses > .u-column1,
.extenso-woocommerce.woocommerce-account .woocommerce-Addresses > .u-column2,
.extenso-woocommerce.woocommerce-account .woocommerce-Addresses > .col-1,
.extenso-woocommerce.woocommerce-account .woocommerce-Addresses > .col-2 {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

@media (min-width: 768px) {
    .extenso-woocommerce.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    }
}

@media (max-width: 767px) {
    .extenso-woocommerce.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
    }
}


/* ==========================================================
   V4.2.28 — ENDEREÇOS: MESMA LINGUAGEM DA PÁGINA ENCOMENDAS
   Uma coluna, blocos horizontais empilhados e responsivos.
   ========================================================== */
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 20px 0 0 !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .u-column1,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .u-column2,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-1,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-2 {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 18px 20px !important;
    background: #f7f7f8 !important;
    border: 0 !important;
    border-top: 3px solid #2588c8 !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title h2,
.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title h3 {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    color: var(--extenso-dark) !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 21px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title .edit {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    max-width: 280px !important;
    padding: 9px 20px !important;
    margin: 0 !important;
    border: 1px solid var(--extenso-orange) !important;
    border-radius: 6px !important;
    background: var(--extenso-orange) !important;
    color: #ffffff !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title .edit:hover {
    background: var(--extenso-orange-hover) !important;
    border-color: var(--extenso-orange-hover) !important;
    color: #ffffff !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address address {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--extenso-text) !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address address em {
    color: var(--extenso-text) !important;
    font-style: italic !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
        gap: 16px !important;
        margin-top: 18px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address {
        padding: 17px 16px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title {
        flex-direction: column !important;
        gap: 12px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title h2,
    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title h3 {
        font-size: 19px !important;
    }

    .extenso-woocommerce.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title .edit {
        width: 100% !important;
        max-width: none !important;
    }
}

/* Extenso WooCommerce 4.2.28 — Botões de endereço: largura e centralização */
.woocommerce-account .woocommerce-Address .edit {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: nowrap !important;
    min-width: 350px !important;
    min-height: 52px !important;
    padding: 12px 24px !important;
    box-sizing: border-box !important;
    background: #f05a00 !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.woocommerce-account .woocommerce-Address .edit:hover {
    background: #d94f00 !important;
    color: #ffffff !important;
}

@media (max-width: 767px) {
    .woocommerce-account .woocommerce-Address .edit {
        width: 100% !important;
        min-width: 0 !important;
        white-space: normal !important;
    }
}

/* ==========================================================
   V4.2.30 — CARRINHO BLOCK / EXTENSO
   O carrinho atual usa o WooCommerce Cart Block. Os seletores
   clássicos da v4.2.28 não atingiam esse markup. Este bloco
   estiliza apenas o frontend do carrinho e preserva o restante.
   ========================================================== */

/* Esconde somente o título H1 da página do carrinho.
   Não interfere no H1 de produtos ou demais páginas. */
body.extenso-woocommerce.woocommerce-cart h1.entry-title,
body.extenso-woocommerce.woocommerce-cart .wp-block-post-title,
body.extenso-woocommerce.woocommerce-cart .page-title {
    display: none !important;
}

/* Área geral do Cart Block */
body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart {
    font-family: Poppins, sans-serif !important;
    color: var(--extenso-text) !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart {
    max-width: 1180px !important;
    margin: 0 auto !important;
}

/* Coluna principal e resumo */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__main,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar {
    font-family: Poppins, sans-serif !important;
}

/* Cabeçalho da tabela */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-items__header,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-items__row {
    border-color: var(--extenso-border) !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart-items__header {
    color: var(--extenso-dark) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

/* Produto */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-item__image img {
    width: 96px !important;
    height: 96px !important;
    object-fit: contain !important;
    border-radius: 7px !important;
    background: #fff !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-name {
    color: var(--extenso-dark) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-name:hover {
    color: var(--extenso-orange) !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-price,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-metadata,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-details {
    font-family: Poppins, sans-serif !important;
    color: var(--extenso-text) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-price {
    font-weight: 500 !important;
}

/* Quantidade */
body.extenso-woocommerce.woocommerce-cart .wc-block-components-quantity-selector {
    height: 46px !important;
    min-height: 46px !important;
    border: 1px solid #D9D2CC !important;
    border-radius: 7px !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-quantity-selector input {
    height: 44px !important;
    min-height: 44px !important;
    width: 48px !important;
    border: 0 !important;
    color: var(--extenso-dark) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-align: center !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-quantity-selector button {
    color: var(--extenso-muted) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-quantity-selector button:hover {
    color: var(--extenso-orange) !important;
    background: transparent !important;
}

/* Remover item */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-item__remove-link {
    color: var(--extenso-muted) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    text-decoration: underline !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart-item__remove-link:hover {
    color: var(--extenso-orange) !important;
}

/* Sidebar / Total no carrinho */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar {
    padding: 22px 24px !important;
    border: 1px solid var(--extenso-border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-wrapper {
    border-color: var(--extenso-border) !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-item {
    color: var(--extenso-text) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-item__label {
    color: var(--extenso-dark) !important;
    font-weight: 500 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-item__value {
    color: var(--extenso-dark) !important;
    font-weight: 500 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-footer-item {
    color: var(--extenso-dark) !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: var(--extenso-dark) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
}

/* Cupom */
body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-coupon {
    margin: 0 !important;
    padding: 0 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-coupon button {
    color: var(--extenso-dark) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-coupon button:hover {
    color: var(--extenso-orange) !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-coupon input,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-text-input input {
    min-height: 44px !important;
    border: 1px solid #D9D2CC !important;
    border-radius: 7px !important;
    background: #fff !important;
    color: var(--extenso-text) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
}

/* Botão Finalizar compra */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__submit-button,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-button.wc-block-components-checkout-place-order-button,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-button {
    border-radius: 7px !important;
    font-family: Poppins, sans-serif !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__submit-button {
    min-height: 52px !important;
    padding: 13px 20px !important;
    background: var(--extenso-orange) !important;
    border: 1px solid var(--extenso-orange) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__submit-button:hover,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__submit-button:focus {
    background: var(--extenso-orange-hover) !important;
    border-color: var(--extenso-orange-hover) !important;
    color: #fff !important;
}

/* Garantir texto branco em spans internos do CTA */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__submit-button .wc-block-components-button__text {
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}

/* Estados de foco discretos */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__submit-button:focus,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-quantity-selector:focus-within,
body.extenso-woocommerce.woocommerce-cart input:focus,
body.extenso-woocommerce.woocommerce-cart button:focus {
    outline: 2px solid rgba(233,81,5,.18) !important;
    outline-offset: 2px !important;
}

/* Mensagens e textos auxiliares */
body.extenso-woocommerce.woocommerce-cart .wc-block-components-notice-banner,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-validation-error {
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
}

@media (max-width: 781px) {
    body.extenso-woocommerce.woocommerce-cart .wc-block-cart {
        max-width: 100% !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar {
        margin-top: 20px !important;
        padding: 18px !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wc-block-cart-item__image img {
        width: 72px !important;
        height: 72px !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-name {
        font-size: 14px !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
    body.extenso-woocommerce.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
        font-size: 17px !important;
    }
}


/* ==========================================================
   V4.2.31 — ÁREA DO CLIENTE: ocultar títulos H1
   Somente os títulos H1 da área Minha Conta.
   Não afeta H1 de produtos ou páginas fora do WooCommerce.
   ========================================================== */
body.extenso-woocommerce.woocommerce-account h1 {
    display: none !important;
}


/* ==========================================================
   V4.2.34 — AJUSTE FINO
   Checkout: reduz pela metade o espaço superior.
   Login: centraliza o título e reduz sua tipografia em 20%.
   Restante congelado.
   ========================================================== */
body.extenso-woocommerce.woocommerce-account .woocommerce > h2 {
    text-align: center !important;
    font-size: 27px !important;
    line-height: 1.2 !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login h2 {
    text-align: center !important;
    font-size: 27px !important;
}


/* ==========================================================
   V4.2.35 — CADASTRO DA CONTA
   Texto de privacidade em 13px e link na cor Extenso.
   Restante congelado.
   ========================================================== */
body.extenso-woocommerce.woocommerce-account .woocommerce form.register p.woocommerce-privacy-policy-text,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register .woocommerce-privacy-policy-text {
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    color: var(--extenso-text) !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.register p.woocommerce-privacy-policy-text a,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register .woocommerce-privacy-policy-text a {
    color: var(--extenso-orange) !important;
    text-decoration: underline !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.register p.woocommerce-privacy-policy-text a:hover,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register .woocommerce-privacy-policy-text a:hover {
    color: var(--extenso-orange-hover) !important;
}

/* ==========================================================
   V4.2.36 — CARRINHO BLOCK
   Ajustes solicitados: 30px entre cabeçalho e bloco e nome do
   produto com aparência de link navegável.
   ========================================================== */
body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-name,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-name a {
    color: var(--extenso-dark) !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-name:hover,
body.extenso-woocommerce.woocommerce-cart .wc-block-components-product-name a:hover {
    color: var(--extenso-orange) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
}

/* ==========================================================
   V4.2.37 — CARRINHO VAZIO
   Remove a vitrine "Novo na loja" do carrinho vazio e deixa
   somente um caminho simples de retorno para a Home.
   ========================================================== */
body.extenso-woocommerce.woocommerce-cart .extenso-empty-cart-home-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 18px auto 0 !important;
    padding: 10px 0 !important;
    color: var(--extenso-orange) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-family: Poppins, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    cursor: pointer !important;
}

body.extenso-woocommerce.woocommerce-cart .extenso-empty-cart-home-link:hover {
    color: var(--extenso-orange-hover) !important;
}

body.extenso-woocommerce.woocommerce-cart .extenso-empty-cart-home-wrap {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 0 !important;
}


/* ==========================================================
   V4.2.41 — CARRINHO CENTRALIZADO + FRETE RÁPIDO
   Base: v4.2.37. Somente o layout do Cart Block e a apresentação
   do calculador de frete foram ajustados. Restante congelado.
   ========================================================== */

/* Centraliza o bloco inteiro do carrinho dentro da área útil da página. */
body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart {
    width: min(1180px, calc(100% - 40px)) !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* O wrapper interno passa a ocupar exatamente a largura centralizada. */
body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 30px !important;
}

/* Calculador de frete dentro do resumo lateral. */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-box {
    width: 100% !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid var(--extenso-border) !important;
    box-sizing: border-box !important;
    font-family: Poppins, sans-serif !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-title {
    margin: 0 0 6px !important;
    color: var(--extenso-dark) !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-text,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-message,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-status-text {
    color: var(--extenso-muted) !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-row {
    display: flex !important;
    align-items: stretch !important;
    gap: 8px !important;
    margin-top: 10px !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-cep {
    min-width: 0 !important;
    width: 1% !important;
    flex: 1 1 auto !important;
    height: 42px !important;
    padding: 8px 12px !important;
    border: 1px solid #D9D2CC !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: var(--extenso-text) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    box-sizing: border-box !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-button {
    flex: 0 0 auto !important;
    min-width: 128px !important;
    height: 42px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: var(--extenso-orange) !important;
    color: #fff !important;
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-button:hover {
    background: var(--extenso-orange-hover) !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-ready {
    padding-bottom: 2px !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-rate {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 2px 12px !important;
    align-items: center !important;
    margin-top: 7px !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-rate-label {
    color: var(--extenso-text) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-rate-price {
    color: var(--extenso-dark) !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-rate-days {
    grid-column: 1 / -1 !important;
    color: var(--extenso-muted) !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
}

body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-change {
    margin-top: 7px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--extenso-orange) !important;
    font-family: Poppins, sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
}

@media (max-width: 781px) {
    body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart {
        width: calc(100% - 24px) !important;
        max-width: none !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart {
        margin-top: 15px !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-row {
        flex-direction: column !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-cep,
    body.extenso-woocommerce.woocommerce-cart .wc-block-cart__sidebar .extenso-frete-block-button {
        width: 100% !important;
        min-width: 0 !important;
    }
}


/* ==========================================================
   V4.2.48 — ESPAÇO ENTRE DESCRIÇÃO E BLOCO DE SOLUÇÕES
   Apenas o espaçamento vertical entre a descrição do produto
   e o bloco de produtos relacionados foi ajustado para 120px.
   Todo o restante permanece congelado.
   ========================================================== */
.extenso-woocommerce.single-product .woocommerce-tabs .related.products {
    margin-top: 190px !important;
}

/* ==========================================================
   V4.2.50 — MOBILE PRODUCT TABS
   Gallery left entirely to native WooCommerce/FlexSlider.
   ========================================================== */
@media (max-width: 767px) {
    /* Product tabs: one full-width control per line. */
    .extenso-woocommerce.single-product .woocommerce-tabs {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 0 !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li,
    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        border: 1px solid #D9D2CC !important;
        border-radius: 8px !important;
        background: #F5F1EE !important;
        box-sizing: border-box !important;
    }

    /* V4.2.53 — abas seguem a linguagem do botão WhatsApp.
       Sem fundo laranja: hover/active usam fundo suave e borda laranja. */
    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li:hover,
    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active,
    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active:hover {
        background: #FFF5EF !important;
        border-color: var(--extenso-orange) !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        min-height: 50px !important;
        padding: 13px 16px !important;
        box-sizing: border-box !important;
        font-size: 14px !important;
        line-height: 1.35 !important;
        white-space: normal !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active a {
        color: var(--extenso-text) !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li:hover a,
    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active:hover a,
    .extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active a {
        color: var(--extenso-text) !important;
    }

    /* Let WooCommerce's native tabs controller show/hide the panels.
       Do not force display:none here: that blocks the native tab switch. */
    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
        width: 100% !important;
        max-width: 100% !important;
        margin: 16px 0 0 !important;
        padding: 0 0 20px !important;
        border-bottom: 1px solid var(--extenso-border) !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel > h2 {
        margin: 0 0 14px !important;
        font-size: 20px !important;
        line-height: 1.25 !important;
    }
}


/* =========================================================
   EXTENSO — 100px DE RESPIRO ANTES DO RODAPÉ
   Somente categorias e páginas individuais de produto WooCommerce.
   Restante do tema congelado.
   ========================================================= */

body.extenso-woocommerce.tax-product_cat #content,
body.extenso-woocommerce.tax-product_cat #main,
body.extenso-woocommerce.single-product #content,
body.extenso-woocommerce.single-product #main {
    padding-bottom: 100px !important;
    box-sizing: border-box !important;
}


/* ==========================================================
   V4.2.56 — SINGLE PRODUCT TITLE SIZE
   Desktop: 30px | Mobile: 27px
   Only the main product title is affected.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product .product_title {
        font-size: 27px !important;
    }
}


/* ==========================================================
   V4.2.57 — PRODUCT IMAGE POPUP
   Only the zoom popup is added. Existing gallery/thumb styles
   and the rest of the product page remain untouched.
   ========================================================== */
.extenso-product-image-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 30px !important;
    box-sizing: border-box !important;
}

.extenso-product-image-modal.is-open {
    display: flex !important;
}

.extenso-product-image-modal__backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, .88) !important;
    cursor: zoom-out !important;
}

.extenso-product-image-modal__content {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: min(94vw, 1500px) !important;
    height: min(92vh, 900px) !important;
}

.extenso-product-image-modal__image {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 90vw !important;
    max-height: 88vh !important;
    object-fit: contain !important;
    border-radius: 2px !important;
    box-shadow: 0 12px 50px rgba(0,0,0,.35) !important;
}

.extenso-product-image-modal__close {
    position: absolute !important;
    top: -8px !important;
    right: -8px !important;
    z-index: 4 !important;
    width: 46px !important;
    height: 46px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.96) !important;
    color: #222 !important;
    font-family: Arial, sans-serif !important;
    font-size: 32px !important;
    font-weight: 300 !important;
    line-height: 42px !important;
    text-align: center !important;
    cursor: pointer !important;
    box-shadow: 0 3px 18px rgba(0,0,0,.25) !important;
}

.extenso-product-image-modal__nav {
    position: absolute !important;
    top: 50% !important;
    z-index: 4 !important;
    width: 48px !important;
    height: 64px !important;
    transform: translateY(-50%) !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.92) !important;
    color: #222 !important;
    font-family: Arial, sans-serif !important;
    font-size: 28px !important;
    line-height: 64px !important;
    cursor: pointer !important;
    box-shadow: 0 3px 18px rgba(0,0,0,.18) !important;
}

.extenso-product-image-modal__prev { left: -70px !important; }
.extenso-product-image-modal__next { right: -70px !important; }
.extenso-product-image-modal__nav[hidden] { display: none !important; }

html.extenso-modal-open,
body.extenso-modal-open {
    overflow: hidden !important;
}

@media (max-width: 767px) {
    .extenso-product-image-modal {
        padding: 16px !important;
    }

    .extenso-product-image-modal__content {
        width: 100% !important;
        height: 92vh !important;
    }

    .extenso-product-image-modal__image {
        max-width: 94vw !important;
        max-height: 82vh !important;
    }

    .extenso-product-image-modal__close {
        top: -4px !important;
        right: -2px !important;
        width: 42px !important;
        height: 42px !important;
        font-size: 29px !important;
        line-height: 39px !important;
    }

    .extenso-product-image-modal__nav {
        top: auto !important;
        bottom: 4px !important;
        width: 46px !important;
        height: 46px !important;
        transform: none !important;
        border-radius: 50% !important;
        font-size: 23px !important;
        line-height: 46px !important;
    }

    .extenso-product-image-modal__prev { left: 10px !important; }
    .extenso-product-image-modal__next { right: 8px !important; }
}

/* ==========================================================
   V4.2.58 — VISUALIZAÇÃO DA FOTO DO PRODUTO
   Popup independente da galeria nativa. O restante da página
   permanece inalterado.
   ========================================================== */
html.extenso-modal-open,
body.extenso-modal-open {
    overflow: hidden !important;
}

#extenso-product-image-modal.extenso-product-image-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 28px !important;
    box-sizing: border-box !important;
}

#extenso-product-image-modal.extenso-product-image-modal.is-open {
    display: flex !important;
}

.extenso-product-image-modal__backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 0, 0, .88) !important;
    cursor: zoom-out !important;
}

.extenso-product-image-modal__content {
    position: relative !important;
    z-index: 2 !important;
    width: min(92vw, 1500px) !important;
    height: min(90vh, 900px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.extenso-product-image-modal__image {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 92vw !important;
    max-height: 88vh !important;
    object-fit: contain !important;
    border-radius: 4px !important;
    box-shadow: 0 18px 60px rgba(0, 0, 0, .45) !important;
    background: #fff !important;
}

.extenso-product-image-modal__close {
    position: absolute !important;
    top: -18px !important;
    right: -18px !important;
    z-index: 4 !important;
    width: 46px !important;
    height: 46px !important;
    padding: 0 !important;
    border: 1px solid rgba(255,255,255,.75) !important;
    border-radius: 50% !important;
    background: rgba(0,0,0,.72) !important;
    color: #fff !important;
    font-family: Arial, sans-serif !important;
    font-size: 32px !important;
    line-height: 40px !important;
    cursor: pointer !important;
}

.extenso-product-image-modal__nav {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 4 !important;
    width: 46px !important;
    height: 64px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 5px !important;
    background: rgba(0,0,0,.55) !important;
    color: #fff !important;
    font-size: 28px !important;
    cursor: pointer !important;
}

.extenso-product-image-modal__prev { left: -64px !important; }
.extenso-product-image-modal__next { right: -64px !important; }

.extenso-product-image-modal__close:hover,
.extenso-product-image-modal__nav:hover {
    background: rgba(240,90,0,.95) !important;
}

@media (max-width: 767px) {
    #extenso-product-image-modal.extenso-product-image-modal {
        padding: 14px !important;
    }

    .extenso-product-image-modal__content {
        width: 96vw !important;
        height: 92vh !important;
    }

    .extenso-product-image-modal__image {
        max-width: 96vw !important;
        max-height: 88vh !important;
    }

    .extenso-product-image-modal__close {
        top: -8px !important;
        right: -2px !important;
        width: 42px !important;
        height: 42px !important;
        font-size: 28px !important;
    }

    .extenso-product-image-modal__prev,
    .extenso-product-image-modal__next {
        top: auto !important;
        bottom: -8px !important;
        transform: none !important;
        width: 44px !important;
        height: 44px !important;
    }

    .extenso-product-image-modal__prev { left: 8px !important; }
    .extenso-product-image-modal__next { right: 8px !important; }
}


/* ==========================================================
 * V4.2.59 — TIPOGRAFIA DA PÁGINA DO PRODUTO
 * Desktop:
 *   Título do produto = 28px
 *   Preço = 28px
 * Mobile:
 *   Título do produto = 24px
 *   Preço = 24px
 * Breadcrumb = 12px em todas as telas
 * Somente estes tamanhos são alterados.
 * ========================================================== */

/* Breadcrumb */
.extenso-woocommerce.single-product .woocommerce-breadcrumb {
    font-size: 12px !important;
    line-height: 1.45 !important;
}

/* Título principal do produto — desktop */
.extenso-woocommerce.single-product div.product .product_title {
    font-size: 28px !important;
    line-height: 1.15 !important;
}

/* Preço principal do produto */
.extenso-woocommerce.single-product div.product p.price,
.extenso-woocommerce.single-product div.product span.price,
.extenso-woocommerce.single-product div.product p.price .amount,
.extenso-woocommerce.single-product div.product span.price .amount,
.extenso-woocommerce.single-product div.product p.price ins,
.extenso-woocommerce.single-product div.product p.price del {
    font-size: 26px !important;
    line-height: 1.15 !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product .product_title {
        font-size: 24px !important;
        line-height: 1.2 !important;
    }

    .extenso-woocommerce.single-product div.product p.price,
    .extenso-woocommerce.single-product div.product span.price,
    .extenso-woocommerce.single-product div.product p.price .amount,
    .extenso-woocommerce.single-product div.product span.price .amount,
    .extenso-woocommerce.single-product div.product p.price ins,
    .extenso-woocommerce.single-product div.product p.price del {
        font-size: 26px !important;
        line-height: 1.15 !important;
    }

    .extenso-woocommerce.single-product .woocommerce-breadcrumb {
        font-size: 12px !important;
        line-height: 1.45 !important;
    }
}


/* ==========================================================
   V4.2.85 — BREADCRUMB DA LOJA / PESQUISA
   ========================================================== */
.extenso-woocommerce .woocommerce-breadcrumb {
    font-size: 12px !important;
    line-height: 1.45 !important;
}

/* ==========================================================
 * V4.2.60 — AJUSTES PONTUAIS DE TIPOGRAFIA
 * Somente:
 * 1. Descrição do produto: 14px
 * 2. Abas não selecionadas: peso 500
 * A aba selecionada permanece com o peso atual (600).
 * Todo o restante do Child permanece congelado.
 * ========================================================== */

/* Descrição do produto e conteúdo da Usabilidade */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description p,
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description li {
    font-size: 14px !important;
}

/* Abas não selecionadas: peso 500.
   A aba ativa permanece com o peso já aprovado (600). */
.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li:not(.active) a {
    font-weight: 500 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs ul.tabs li.active a {
    font-weight: 600 !important;
}

/* ==========================================================
 * V4.2.61 — MINHA CONTA / LOGIN MODERNO
 *
 * Inicialmente exibe somente o login.
 * O cadastro é acessado pelo seletor "Criar uma conta".
 * Não altera a lógica nativa do WooCommerce.
 * ========================================================== */

/* A página de entrada deixa de parecer dois cartões de loja. */
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) {
    max-width: 520px !important;
    margin-top: 90px !important;
    margin-bottom: 90px !important;
}

/* Remove o título genérico da página somente quando os dois formulários
   de login/cadastro estão presentes. */
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) > h2,
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) > h1 {
    display: none !important;
}

/* Navegação Entrar / Criar conta */
.extenso-account-switcher {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 42px !important;
    margin: 0 0 42px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.extenso-account-switcher__tab {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-height: 30px !important;
    margin: 0 !important;
    padding: 3px 0 9px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #777b80 !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: color .18s ease !important;
}

.extenso-account-switcher__tab::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 2px !important;
    border-radius: 2px !important;
    background: transparent !important;
    transform: scaleX(0) !important;
    transition: transform .18s ease, background .18s ease !important;
}

.extenso-account-switcher__tab:hover {
    color: var(--extenso-dark) !important;
    background: transparent !important;
}

.extenso-account-switcher__tab.is-active {
    color: var(--extenso-dark) !important;
    font-weight: 600 !important;
}

.extenso-account-switcher__tab.is-active::after {
    background: var(--extenso-orange) !important;
    transform: scaleX(1) !important;
}

/* O conjunto de formulários passa a ocupar uma única coluna. */
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) .u-columns,
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) .u-column1,
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) .u-column2 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Formulários: sem cartão, sem caixa externa. */
body.extenso-woocommerce.woocommerce-account .woocommerce form.login,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* O título interno já é representado pelo seletor superior. */
body.extenso-woocommerce.woocommerce-account .woocommerce form.login h2,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register h2 {
    display: none !important;
}

/* Enquanto o JS prepara a interface, o cadastro permanece oculto para evitar
   um flash visual. Depois da inicialização, somente a classe de estado controla a troca. */
body.extenso-woocommerce.woocommerce-account:not(.extenso-account-ready) .woocommerce form.register,
body.extenso-woocommerce.woocommerce-account .woocommerce form.extenso-account-hidden {
    display: none !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login.extenso-account-hidden {
    display: none !important;
}

/* V4.2.62 — os títulos nativos das duas colunas acompanham a troca de formulário. */
body.extenso-woocommerce.woocommerce-account .extenso-account-heading-hidden {
    display: none !important;
}

/* Campos do login/cadastro */
body.extenso-woocommerce.woocommerce-account .woocommerce form.login .form-row,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register .form-row {
    margin: 0 0 19px !important;
    padding: 0 !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login label,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register label {
    display: block !important;
    margin: 0 0 7px !important;
    color: var(--extenso-text) !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login input.input-text,
body.extenso-woocommerce.woocommerce-account .woocommerce form.login input[type="text"],
body.extenso-woocommerce.woocommerce-account .woocommerce form.login input[type="email"],
body.extenso-woocommerce.woocommerce-account .woocommerce form.login input[type="password"],
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input.input-text,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input[type="text"],
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input[type="email"],
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input[type="password"] {
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 10px 13px !important;
    border: 1px solid #d9d9d9 !important;
    border-radius: 7px !important;
    background: #fff !important;
    color: var(--extenso-text) !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    transition: border-color .18s ease, box-shadow .18s ease !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login input.input-text:focus,
body.extenso-woocommerce.woocommerce-account .woocommerce form.login input[type="text"]:focus,
body.extenso-woocommerce.woocommerce-account .woocommerce form.login input[type="email"]:focus,
body.extenso-woocommerce.woocommerce-account .woocommerce form.login input[type="password"]:focus,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input.input-text:focus,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input[type="text"]:focus,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input[type="email"]:focus,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register input[type="password"]:focus {
    border-color: #b8b8b8 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(32,36,40,.05) !important;
}

/* Lembrar-me */
body.extenso-woocommerce.woocommerce-account .woocommerce form.login .woocommerce-form__label-for-checkbox {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 1px 0 22px !important;
    color: #777b80 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    cursor: pointer !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login .woocommerce-form__label-for-checkbox input[type="checkbox"] {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    margin: 0 !important;
    accent-color: var(--extenso-orange) !important;
}

/* Botão */
body.extenso-woocommerce.woocommerce-account .woocommerce form.login button.button,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register button.button {
    display: block !important;
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 11px 20px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: var(--extenso-orange) !important;
    color: #fff !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    transition: background .18s ease, transform .18s ease !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login button.button:hover,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register button.button:hover {
    background: var(--extenso-orange-hover) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
}

/* Recuperação de senha */
body.extenso-woocommerce.woocommerce-account .woocommerce form.login .lost_password {
    margin: 19px 0 0 !important;
    text-align: center !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login .lost_password a {
    color: #666b70 !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

body.extenso-woocommerce.woocommerce-account .woocommerce form.login .lost_password a:hover {
    color: var(--extenso-orange) !important;
}

/* Texto de privacidade do cadastro */
body.extenso-woocommerce.woocommerce-account .woocommerce form.register p.woocommerce-privacy-policy-text,
body.extenso-woocommerce.woocommerce-account .woocommerce form.register .woocommerce-privacy-policy-text {
    margin: 0 0 20px !important;
    color: #6b6f73 !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
}

/* Mensagens WooCommerce continuam visíveis e utilizáveis. */
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) > .woocommerce-notices-wrapper,
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) > .woocommerce-error,
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) > .woocommerce-message,
body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) > .woocommerce-info {
    margin-bottom: 24px !important;
}

@media (max-width: 767px) {
    body.extenso-woocommerce.woocommerce-account .woocommerce:has(form.login):has(form.register) {
        max-width: calc(100% - 36px) !important;
        margin-top: 55px !important;
        margin-bottom: 70px !important;
    }

    .extenso-account-switcher {
        gap: 30px !important;
        margin-bottom: 34px !important;
    }

    .extenso-account-switcher__tab {
        font-size: 13px !important;
    }
}

/* ==========================================================
   V4.2.63 — MINHA CONTA / HIERARQUIA DO PAINEL
   Texto introdutório controlado pelo extenso-account.js.
   ========================================================== */
.extenso-account-panel-copy {
    margin: 0 0 30px !important;
    padding: 0 !important;
    text-align: left !important;
}

.extenso-account-panel-copy__title {
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: var(--extenso-dark) !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
    font-weight: 500 !important;
}

.extenso-account-panel-copy__subtitle {
    max-width: 470px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #73777c !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
}

@media (max-width: 767px) {
    .extenso-account-panel-copy {
        margin-bottom: 26px !important;
    }

    .extenso-account-panel-copy__title {
        font-size: 27px !important;
    }

    .extenso-account-panel-copy__subtitle {
        font-size: 12px !important;
    }
}

/* ==========================================================
   STANDARD PRODUCT IMAGE FRAME
   Same principle for category grids and Home vitrines:
   fixed 1:1 display area; the source image is preserved with
   object-fit: contain, so missing area is filled by the frame
   instead of stretching/cropping the product image.
   ========================================================== */

.extenso-woocommerce ul.products li.product a img{
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #fff !important;
    display: block !important;
}

/* ==========================================================
   V4.2.71 — HOME / VITRINES RESPONSIVAS
   A vitrine da Home usa 4 colunas no desktop e 2 colunas no
   celular. O plugin continua controlando o carrossel; aqui
   apenas garantimos que a grade interna seja responsiva.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        width: 100% !important;
        margin: 0 0 28px !important;
        padding: 0 !important;
    }
}

/* Very narrow phones: keep two cards without horizontal overflow. */
@media (max-width: 360px) {
    .extenso-woocommerce ul.products {
        gap: 10px !important;
    }
}


/* V4.2.86 — Badge spacing: 6px from card top and 6px before image. */
/* ==========================================================
   V4.2.83 — CARD FINAL ALIGNMENT / WHATSAPP / BADGE
   Reference: Extenso Vitrines 3.3.17
   The plugin keeps control of the carousel shell; the Child
   owns the visual card used by grids and vitrines.
   ========================================================== */

/* Keep the card itself as the positioning context. */
.extenso-woocommerce ul.products li.product {
    position: relative !important;
    box-sizing: border-box !important;
}

/* Badge floats over the image frame so it never pushes one
   product image lower than another. */
.extenso-woocommerce ul.products li.product .extenso-ready-badge,
.extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
    position: absolute !important;
    top: 6px !important;
    left: 10px !important;
    z-index: 8 !important;
    margin: 0 !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 11px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    border-radius: 7px !important;
    background: #159447 !important;
    color: #fff !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

/* Every product gets the same 1:1 image frame. This is what
   aligns the machines even when their source files have different
   proportions or when one card has a badge. */
.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    max-height: none !important;
    margin: 42px 0 10px !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #fff !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
}

/* Plugin-approved neutral product text. */
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title,
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title a {
    color: #555352 !important;
}

/* WhatsApp: copy the plugin's native green treatment into the Child,
   including icon, text and border. */
.extenso-woocommerce ul.products li.product a[href*="wa.me"],
.extenso-woocommerce ul.products li.product a[href*="whatsapp"],
.extenso-woocommerce ul.products li.product a.whatsapp,
.extenso-woocommerce ul.products li.product a.whatsapp-button,
.extenso-woocommerce ul.products li.product .whatsapp-button {
    color: #25D366 !important;
    border: 1px solid #25D366 !important;
    background: #fff !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.extenso-woocommerce ul.products li.product a[href*="wa.me"] svg,
.extenso-woocommerce ul.products li.product a[href*="whatsapp"] svg,
.extenso-woocommerce ul.products li.product a.whatsapp svg,
.extenso-woocommerce ul.products li.product a.whatsapp-button svg,
.extenso-woocommerce ul.products li.product .whatsapp-button svg,
.extenso-woocommerce ul.products li.product a[href*="wa.me"] i,
.extenso-woocommerce ul.products li.product a[href*="whatsapp"] i,
.extenso-woocommerce ul.products li.product a.whatsapp i,
.extenso-woocommerce ul.products li.product a.whatsapp-button i,
.extenso-woocommerce ul.products li.product .whatsapp-button i {
    color: #25D366 !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

.extenso-woocommerce ul.products li.product a[href*="wa.me"]:hover,
.extenso-woocommerce ul.products li.product a[href*="whatsapp"]:hover,
.extenso-woocommerce ul.products li.product a.whatsapp:hover,
.extenso-woocommerce ul.products li.product a.whatsapp-button:hover,
.extenso-woocommerce ul.products li.product .whatsapp-button:hover {
    color: #25D366 !important;
    border-color: #25D366 !important;
    background: #effff5 !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
        top: 6px !important;
        left: 8px !important;
    }
}


/* V4.3.12 — Badge position: lower by 3px in category grids and vitrines. */
.extenso-woocommerce ul.products li.product {
    padding-top: 6px !important;
}
.extenso-woocommerce ul.products li.product .extenso-ready-badge,
.extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
    top: 9px !important;
}
.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link img {
    margin-top: 36px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product { padding-top: 9px !important; }
    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder { top: 9px !important; }
    .extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
    .extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link img { margin-top: 36px !important; }
}

/* V4.2.88 — SINGLE PRODUCT WHATSAPP: same green treatment used on category cards.
 * Only the WhatsApp purchase button inside the product summary is affected.
 * Geometry, typography and spacing remain unchanged.
 */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    color: #25D366 !important;
    border-color: #25D366 !important;
    background: #fff !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.single-product .summary a[href*="wa.me"] svg,
.single-product .summary a[href*="whatsapp"] svg,
.single-product .summary a.whatsapp svg,
.single-product .summary a.whatsapp-button svg,
.single-product .summary a.extenso-whatsapp svg,
.single-product .summary a.extenso-whatsapp-button svg,
.single-product .summary a[href*="wa.me"] i,
.single-product .summary a[href*="whatsapp"] i,
.single-product .summary a.whatsapp i,
.single-product .summary a.whatsapp-button i,
.single-product .summary a.extenso-whatsapp i,
.single-product .summary a.extenso-whatsapp-button i {
    color: #25D366 !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

.single-product .summary a[href*="wa.me"]:hover,
.single-product .summary a[href*="whatsapp"]:hover,
.single-product .summary a.whatsapp:hover,
.single-product .summary a.whatsapp-button:hover,
.single-product .summary a.extenso-whatsapp:hover,
.single-product .summary a.extenso-whatsapp-button:hover {
    color: #25D366 !important;
    border-color: #25D366 !important;
    background: #effff5 !important;
}


/* ==========================================================
   V4.2.89 — COMMERCIAL LABELS / PROMOTION PRICE HIERARCHY
   One optional commercial label only: promotion, ready to ship,
   or made to order. Native WooCommerce sale badge is hidden.
   ========================================================== */

/* Never show WooCommerce's native PROMOÇÃO badge. The Child uses
   the single commercial-status selector instead. */
.extenso-woocommerce ul.products li.product .onsale,
.extenso-woocommerce.single-product .onsale {
    display: none !important;
}

/* One common visual treatment for the selected commercial label. */
.extenso-woocommerce ul.products li.product .extenso-commercial-badge{
    background: #159447 !important;
    color: #fff !important;
}

.extenso-woocommerce.single-product .extenso-commercial-badge {
    background: #159447 !important;
    color: #fff !important;
}

/* V4.3.66 — Promotion badge: same green + discreet lightning icon
 * in category cards, vitrines and single product page.
 */
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--promo,
.extenso-woocommerce.single-product .extenso-commercial-badge--promo {
    background: #159447 !important;
    color: #fff !important;
}

.extenso-commercial-badge--promo .extenso-promo-bolt {
    display: inline-flex !important;
    width: 9px !important;
    height: 13px !important;
    margin-left: 5px !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    color: #fff !important;
}

.extenso-commercial-badge--promo .extenso-promo-bolt svg {
    display: block !important;
    width: 9px !important;
    height: 13px !important;
    fill: currentColor !important;
}

/* Category/Home card alignment: the title and price occupy predictable
   vertical bands so cards with 2 or 3 title lines finish together. */
.extenso-woocommerce ul.products li.product{
    display: flex !important;
    flex-direction: column !important;
}

.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link{
    flex: 0 0 auto !important;
}

.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title{
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce ul.products li.product .price{
    min-height: 23px !important;
    box-sizing: border-box !important;
}

/* Promotion: regular price 30% smaller, promotional price 10% larger.
   No strike-through line is used. */
.extenso-woocommerce ul.products li.product.extenso-status-promo .price del{
    font-size: 9px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    opacity: .72 !important;
    margin-right: 4px !important;
}

.extenso-woocommerce ul.products li.product.extenso-status-promo .price del .amount{
    text-decoration: none !important;
}

.extenso-woocommerce ul.products li.product.extenso-status-promo .price ins{
    font-size: 22px !important;
    line-height: 1.05 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Single product promotion price: same hierarchy as the category card. */
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price del,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price del,
.extenso-woocommerce.single-product.extenso-status-promo div.product p.price del,
.extenso-woocommerce.single-product.extenso-status-promo div.product span.price del {
    font-size: 20px !important;
    line-height: 1.05 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    opacity: .72 !important;
}

.extenso-woocommerce.single-product div.product.extenso-status-promo p.price del .amount,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price del .amount,
.extenso-woocommerce.single-product.extenso-status-promo div.product p.price del .amount,
.extenso-woocommerce.single-product.extenso-status-promo div.product span.price del .amount {
    text-decoration: none !important;
}

.extenso-woocommerce.single-product div.product.extenso-status-promo p.price ins,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price ins,
.extenso-woocommerce.single-product.extenso-status-promo div.product p.price ins,
.extenso-woocommerce.single-product.extenso-status-promo div.product span.price ins {
    font-size: 31px !important;
    line-height: 1.05 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title{
        height: 52px !important;
        min-height: 52px !important;
        max-height: 52px !important;
    }

    .extenso-woocommerce ul.products li.product.extenso-status-promo .price del{
        font-size: 10px !important;
    }

    .extenso-woocommerce ul.products li.product.extenso-status-promo .price ins{
        font-size: 20px !important;
    }

    .extenso-woocommerce.single-product div.product.extenso-status-promo p.price del,
    .extenso-woocommerce.single-product div.product.extenso-status-promo span.price del,
    .extenso-woocommerce.single-product.extenso-status-promo div.product p.price del,
    .extenso-woocommerce.single-product.extenso-status-promo div.product span.price del {
        font-size: 17px !important;
    }

    .extenso-woocommerce.single-product div.product.extenso-status-promo p.price ins,
    .extenso-woocommerce.single-product div.product.extenso-status-promo span.price ins,
    .extenso-woocommerce.single-product.extenso-status-promo div.product p.price ins,
    .extenso-woocommerce.single-product.extenso-status-promo div.product span.price ins {
        font-size: 26px !important;
    }
}

/* Admin: visually identify the required SKU field. */
.extenso-sku-required-note {
    display: block !important;
    margin: 4px 0 0 162px !important;
    color: #b32d2e !important;
}


/* ==========================================================
   V4.2.91 — PRODUCT REFERENCE OVER IMAGE + PROMOTION LABELS
   Reference sits directly on the lower-right edge of the product image.
   Single-product gallery uses a slightly larger reference.
   ========================================================== */

.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link{
    position: relative !important;
    display: block !important;
}

.extenso-image-reference {
    position: absolute !important;
    z-index: 20 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 17px !important;
    box-sizing: border-box !important;
    padding: 2px 6px !important;
    border-radius: 3px 0 0 0 !important;
    background: rgba(255,255,255,.92) !important;
    color: #4a4a4a !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
    font-weight: 500 !important;
    letter-spacing: .15px !important;
    white-space: nowrap !important;
    pointer-events: none !important;
    box-shadow: -1px -1px 4px rgba(0,0,0,.04) !important;
}

/* Category/card: exactly on the lower-right edge of the image. */
.extenso-image-reference--loop {
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
}

.extenso-woocommerce.single-product .woocommerce-product-gallery__image {
    position: relative !important;
}

/* Single product: slightly larger while remaining discreet. */
.extenso-woocommerce.single-product .extenso-image-reference--single {
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    min-height: 22px !important;
    padding: 3px 9px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    border-radius: 4px 0 0 0 !important;
}

/* Promotion wording: De [regular] por [sale], with no underline. */
.extenso-price-from-label,
.extenso-price-to-label {
    display: inline-block !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
    line-height: 1 !important;
}

.extenso-woocommerce ul.products li.product.extenso-status-promo .price del,
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price del,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price del,
.extenso-woocommerce.single-product.extenso-status-promo div.product p.price del,
.extenso-woocommerce.single-product.extenso-status-promo div.product span.price del {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.extenso-woocommerce ul.products li.product.extenso-status-promo .price ins,
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price ins,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price ins,
.extenso-woocommerce.single-product.extenso-status-promo div.product p.price ins,
.extenso-woocommerce.single-product.extenso-status-promo div.product span.price ins {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    .extenso-image-reference {
        min-height: 16px !important;
        padding: 2px 5px !important;
        font-size: 8px !important;
    }

    .extenso-woocommerce.single-product .extenso-image-reference--single {
        min-height: 20px !important;
        padding: 3px 7px !important;
        font-size: 10px !important;
    }
}


/* ==========================================================
   V4.2.93 — FINAL IMAGE REFERENCE + PROMOTION PRICE FIX
   ========================================================== */
.extenso-product-image-wrap {
    position: relative !important;
    display: block !important;
    line-height: 0 !important;
    width: 100% !important;
}

.extenso-product-image-wrap img {
    display: block !important;
    width: 100% !important;
}

.extenso-product-image-wrap .extenso-image-reference--loop {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 30 !important;
}

.extenso-woocommerce.single-product .woocommerce-product-gallery__image {
    position: relative !important;
}

.extenso-woocommerce.single-product .extenso-image-reference--single {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 40 !important;
    min-height: 24px !important;
    padding: 4px 10px !important;
    background: rgba(255,255,255,.94) !important;
    color: #30343b !important;
    font-family: Poppins, sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    border-radius: 4px 0 0 0 !important;
    pointer-events: none !important;
}

/* Promotion: no native WooCommerce del/ins styling survives. */
.extenso-promo-price {
    display: inline-flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    text-decoration: none !important;
}

.extenso-promo-price .extenso-promo-from,
.extenso-promo-price .extenso-promo-to {
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.extenso-promo-price .extenso-promo-from {
    font-size: .49em !important;
    line-height: 1 !important;
    opacity: 1 !important;
    color: #e9e9e9 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-thickness: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    margin-right: 4px !important;
}

.extenso-promo-price .extenso-promo-from *,
.extenso-promo-price .extenso-promo-from .woocommerce-Price-amount,
.extenso-promo-price .extenso-promo-from bdi {
    color: #e9e9e9 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-thickness: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.extenso-promo-price .extenso-promo-to {
    font-size: 1em !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.extenso-promo-price .woocommerce-Price-amount,
.extenso-promo-price bdi {
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.extenso-woocommerce ul.products li.product.extenso-status-promo .price del,
.extenso-woocommerce ul.products li.product.extenso-status-promo .price ins,
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price del,
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price ins,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price del,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price ins {
    display: none !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-image-reference--single {
        min-height: 21px !important;
        padding: 3px 8px !important;
        font-size: 10px !important;
    }
}

/* ==========================================================
   V4.2.93 — CATEGORY TITLE CLAMP + PROMOTION DECORATION RESET
   ========================================================== */

/* Category cards: reserve exactly three title lines and use an ellipsis
   instead of allowing a fourth line to break the card alignment. */
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title{
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    height: 56.25px !important;
    min-height: 56.25px !important;
    max-height: 56.25px !important;
}

/* Promotion: the parent price must also have no inherited text decoration.
   Child spans cannot cancel a line decoration inherited from the parent. */
.extenso-woocommerce ul.products li.product.extenso-status-promo .price,
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price {
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.extenso-promo-price,
.extenso-promo-price * {
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.extenso-promo-price .extenso-promo-from,
.extenso-promo-price .extenso-promo-to {
    vertical-align: baseline !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title{
        height: 56.25px !important;
        min-height: 56.25px !important;
        max-height: 56.25px !important;
    }
}


/* ==========================================================
   V4.2.94 — CATEGORY REFERENCE + LIGHT PROMOTION PRICE
   ========================================================== */
.extenso-woocommerce .extenso-product-reference .extenso-ref-label,
.extenso-woocommerce .extenso-product-reference .extenso-ref-value,
.extenso-woocommerce .extenso-product-reference .extenso-ref-separator {
    display: inline !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-ref-label,
.extenso-woocommerce .extenso-product-reference .extenso-ref-value {
    color: #5d6168 !important;
    font-weight: 500 !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-ref-separator {
    color: #c9c9c9 !important;
    margin: 0 6px !important;
}

/* The regular promotional price is 30% smaller and uses #e9e9e9. */
.extenso-woocommerce ul.products li.product.extenso-status-promo .price .extenso-promo-from,
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price .extenso-promo-from,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price .extenso-promo-from {
    font-size: .49em !important;
    color: #e9e9e9 !important;
    opacity: 1 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-thickness: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.extenso-woocommerce ul.products li.product.extenso-status-promo .price .extenso-promo-from *,
.extenso-woocommerce.single-product div.product.extenso-status-promo p.price .extenso-promo-from *,
.extenso-woocommerce.single-product div.product.extenso-status-promo span.price .extenso-promo-from * {
    color: #e9e9e9 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-thickness: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.extenso-promo-price,
.extenso-promo-price *,
.extenso-promo-price::before,
.extenso-promo-price::after {
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-thickness: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}


/* ==========================================================
   V4.2.95 — FINAL PROMOTION + CATEGORY REFERENCE CORRECTION
   ========================================================== */
/* Category title: exactly three complete lines, then an ellipsis. */
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title{
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
    line-clamp: 3 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
    line-height: 1.25 !important;
    box-sizing: border-box !important;
}

/* The category reference is attached to the loop product link itself. */
.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link{
    position: relative !important;
}

.extenso-image-reference--loop {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 30 !important;
}

/* Any valid sale price uses the same clean 'De ... por ...' presentation,
   regardless of the selected commercial status label. */
.extenso-promo-price,
.extenso-promo-price * {
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-thickness: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/* 'De' is reduced by exactly 30% relative to the base price size. */
.extenso-promo-price .extenso-promo-from,
.extenso-promo-price .extenso-promo-from * {
    font-size: .70em !important;
    color: #e9e9e9 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.extenso-promo-price .extenso-promo-to,
.extenso-promo-price .extenso-promo-to * {
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-style: none !important;
    text-decoration-thickness: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title{
        height: 60px !important;
        min-height: 60px !important;
        max-height: 60px !important;
    }
}


/* ==========================================================
   V4.2.96 — REGULAR PRICE PRESENTATION
   ========================================================== */
/* The original price is visible in a lighter gray, reduced by 30%,
   with the traditional centered strike-through. */
.extenso-promo-price .extenso-promo-from,
.extenso-promo-price .extenso-promo-from *,
.extenso-promo-price .extenso-promo-from .woocommerce-Price-amount,
.extenso-promo-price .extenso-promo-from bdi {
    color: #646970 !important;
    font-size: .70em !important;
    font-weight: 500 !important;
    text-decoration-line: line-through !important;
    text-decoration-style: solid !important;
    text-decoration-thickness: 1px !important;
    text-decoration-color: #646970 !important;
    text-decoration-skip-ink: auto !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/* Keep the promotional price clean and unchanged. */
.extenso-promo-price .extenso-promo-to,
.extenso-promo-price .extenso-promo-to * {
    text-decoration: none !important;
    text-decoration-line: none !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}


/* ==========================================================
   V4.2.97 — CLEAN PROMOTION PRICE + IMAGE-EDGE REFERENCE
   ========================================================== */
/* Show only the two prices: no "De" and no "por" labels.
   Regular price is 30% smaller; sale price is 10% larger. */
.extenso-promo-price {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 0 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
.extenso-promo-price .extenso-promo-from,
.extenso-promo-price .extenso-promo-from * {
    color: #e9e9e9 !important;
    font-size: .70em !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
.extenso-promo-price .extenso-promo-to,
.extenso-promo-price .extenso-promo-to * {
    color: #f15a00 !important;
    font-size: 1.10em !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
/* Category: reference belongs to the product image, not the card bottom. */
.extenso-image-reference--loop {
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    bottom: auto !important;
    z-index: 30 !important;
    padding: 4px 7px !important;
    background: rgba(255,255,255,.92) !important;
    color: #252932 !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    pointer-events: none !important;
}
.extenso-woocommerce.single-product .extenso-image-reference--single {
    right: 0 !important;
    bottom: 0 !important;
}

/* ==========================================================
   V4.2.98 — PROMOTIONAL OLD PRICE: COLOR + CENTER STRIKE
   Only the old/regular price is changed. The promotional price and
   every other Child theme rule remain untouched.
   ========================================================== */
.extenso-promo-price .extenso-promo-from,
.extenso-promo-price .extenso-promo-from *,
.extenso-promo-price .extenso-promo-from .woocommerce-Price-amount,
.extenso-promo-price .extenso-promo-from bdi,
.extenso-promo-price .extenso-promo-from .woocommerce-Price-currencySymbol {
    color: #646970 !important;
    text-decoration-line: line-through !important;
    text-decoration-color: #646970 !important;
    text-decoration-style: solid !important;
    text-decoration-thickness: 1.5px !important;
    text-decoration-skip-ink: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}


/* ==========================================================
   V4.2.99 — FORMATAÇÃO EXATA DO PREÇO ANTIGO
   O preço antigo inteiro (R$ + valor) recebe a mesma cor e
   uma única linha central contínua, reproduzindo a referência.
   ========================================================== */
.extenso-promo-price .extenso-promo-from {
    position: relative !important;
    display: inline-block !important;
    vertical-align: baseline !important;
    color: #646970 !important;
    font-size: .70em !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

.extenso-promo-price .extenso-promo-from,
.extenso-promo-price .extenso-promo-from *,
.extenso-promo-price .extenso-promo-from .woocommerce-Price-amount,
.extenso-promo-price .extenso-promo-from bdi,
.extenso-promo-price .extenso-promo-from .woocommerce-Price-currencySymbol {
    color: #646970 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Linha única no centro de todo o preço antigo, incluindo o R$. */
.extenso-promo-price .extenso-promo-from::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 50% !important;
    height: 1.5px !important;
    transform: translateY(-50%) !important;
    background: #646970 !important;
    pointer-events: none !important;
}


/* V4.3.00 — FINAL REFERENCE + CATEGORY OLD PRICE ADJUSTMENT */
/* The reference belongs to the PRODUCT IMAGE itself, at its lower-right edge. */
.extenso-woocommerce ul.products li.product .extenso-image-reference--loop{
    position: absolute !important;
    top: auto !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    z-index: 50 !important;
}

/* Category cards: old price +3px, preserving the agreed color and center strike. */
.extenso-woocommerce ul.products li.product .extenso-promo-price .extenso-promo-from{
    font-size: calc(.70em + 3px) !important;
}

.extenso-woocommerce ul.products li.product .extenso-promo-price .extenso-promo-from::after{
    background: #646970 !important;
}

/* ==========================================================
   V4.3.01 — RESTORE ORIGINAL WOOCOMMERCE PRICE PRESENTATION
   ========================================================== */
.extenso-woocommerce ul.products li.product .price {
    color: var(--extenso-orange) !important;
    font-size: 20px !important;
    line-height: 1.05 !important;
    font-weight: 500 !important;
}

.extenso-woocommerce ul.products li.product .price del{
    color: var(--extenso-muted) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
    text-decoration-line: line-through !important;
    opacity: 1 !important;
    margin-right: 4px !important;
}

.extenso-woocommerce ul.products li.product .price del *{
    color: var(--extenso-muted) !important;
    text-decoration: line-through !important;
    text-decoration-line: line-through !important;
}

.extenso-woocommerce ul.products li.product .price ins{
    color: var(--extenso-orange) !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
}

.extenso-woocommerce ul.products li.product .price ins *{
    color: var(--extenso-orange) !important;
    text-decoration: none !important;
}

/* Single product: restore the original WooCommerce sale hierarchy. */
.extenso-woocommerce.single-product div.product p.price,
.extenso-woocommerce.single-product div.product span.price {
    color: var(--extenso-orange) !important;
    font-size: 28px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
}

.extenso-woocommerce.single-product div.product p.price del,
.extenso-woocommerce.single-product div.product span.price del {
    color: var(--extenso-muted) !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    opacity: 1 !important;
    text-decoration: line-through !important;
    text-decoration-line: line-through !important;
}

.extenso-woocommerce.single-product div.product p.price del *,
.extenso-woocommerce.single-product div.product span.price del * {
    color: var(--extenso-muted) !important;
    text-decoration: line-through !important;
    text-decoration-line: line-through !important;
}

.extenso-woocommerce.single-product div.product p.price ins,
.extenso-woocommerce.single-product div.product span.price ins {
    color: var(--extenso-orange) !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.extenso-woocommerce.single-product div.product p.price ins *,
.extenso-woocommerce.single-product div.product span.price ins * {
    color: var(--extenso-orange) !important;
    text-decoration: none !important;
}

/* The reference is anchored to the PRODUCT IMAGE itself. */
.extenso-product-image-wrap {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.extenso-product-image-wrap > img {
    display: block !important;
    width: 100% !important;
}

.extenso-woocommerce ul.products li.product .extenso-image-reference--loop{
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    top: auto !important;
    z-index: 30 !important;
    margin: 0 !important;
}

/* V4.3.02 — SINGLE PRODUCT: OLD PRICE 25% SMALLER
   Only the regular/old price on the individual product page is reduced.
   The promotional price and category cards remain unchanged. */
.extenso-woocommerce.single-product div.product p.price del,
.extenso-woocommerce.single-product div.product span.price del {
    font-size: 21px !important;
}

.extenso-woocommerce.single-product div.product p.price del *,
.extenso-woocommerce.single-product div.product span.price del * {
    font-size: 21px !important;
}

/* V4.3.03 — ONLY individual product page: one centered strike on old price;
   sale price +2px. Category cards and all other components unchanged. */
.extenso-woocommerce.single-product div.product p.price del,
.extenso-woocommerce.single-product div.product span.price del {
    position: relative !important;
    display: inline-block !important;
    color: #646970 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
.extenso-woocommerce.single-product div.product p.price del *,
.extenso-woocommerce.single-product div.product span.price del * {
    color: inherit !important;
    text-decoration: none !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
.extenso-woocommerce.single-product div.product p.price del::before,
.extenso-woocommerce.single-product div.product span.price del::before,
.extenso-woocommerce.single-product div.product p.price del *::before,
.extenso-woocommerce.single-product div.product p.price del *::after,
.extenso-woocommerce.single-product div.product span.price del *::before,
.extenso-woocommerce.single-product div.product span.price del *::after {
    content: none !important;
}
.extenso-woocommerce.single-product div.product p.price del::after,
.extenso-woocommerce.single-product div.product span.price del::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 50% !important;
    height: 1px !important;
    transform: translateY(-50%) !important;
    background: #646970 !important;
    pointer-events: none !important;
}
.extenso-woocommerce.single-product div.product p.price ins,
.extenso-woocommerce.single-product div.product span.price ins,
.extenso-woocommerce.single-product div.product p.price ins *,
.extenso-woocommerce.single-product div.product span.price ins * {
    font-size: 30px !important;
}


/* ==========================================================
   V4.3.05 — LOOP PRODUCT REFERENCE: IMAGE-BOUND POSITION
   Reference is anchored to the product image wrapper, lower-right edge.
   ========================================================== */
.extenso-woocommerce ul.products li.product .extenso-product-image-wrap{
    position: relative !important;
    display: block !important;
    width: 100% !important;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.extenso-woocommerce ul.products li.product .extenso-product-image-wrap > img{
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.extenso-woocommerce ul.products li.product .extenso-product-image-wrap > .extenso-image-reference--loop{
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    top: auto !important;
    z-index: 50 !important;
    margin: 0 !important;
}


/* ==========================================================
   V4.3.07 — LOOP REFERENCE: SERVER-SIDE IMAGE WRAPPER
   The reference is a child of the image wrapper, never of the price/card row.
   ========================================================== */
.extenso-woocommerce ul.products li.product .extenso-product-image-wrap--loop{
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    overflow: visible !important;
}

.extenso-woocommerce ul.products li.product .extenso-product-image-wrap--loop > img{
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.extenso-woocommerce ul.products li.product .extenso-product-image-wrap--loop > .extenso-image-reference--loop{
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    top: auto !important;
    z-index: 100 !important;
    margin: 0 !important;
    transform: none !important;
}


/* ==========================================================
   V4.3.08 — LOOP/VITRINE REFERENCE: IMAGE LOWER-RIGHT EDGE
   The reference is moved into the actual WooCommerce image link.
   ========================================================== */
.extenso-woocommerce ul.products li.product > .extenso-image-reference--loop{
    display: block !important;
    position: absolute !important;
    right: 0 !important;
    bottom: auto !important;
    top: auto !important;
    left: auto !important;
    z-index: 100 !important;
}
.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link > .extenso-image-reference--loop,
.extenso-woocommerce ul.products li.product a.woocommerce-loop-product__link > .extenso-image-reference--loop{
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    top: auto !important;
    z-index: 100 !important;
    margin: 0 !important;
    transform: none !important;
}


/* ==========================================================
   V4.3.09 — REFERENCE IS PART OF THE PRODUCT IMAGE
   The loop image and its reference share the same real wrapper.
   Applies to WooCommerce category/archive cards and Extenso vitrines.
   ========================================================== */
.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap{
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
}

.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap > a.woocommerce-LoopProduct-link,
.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap > a.woocommerce-loop-product__link{
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-image-reference--loop{
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    top: auto !important;
    z-index: 50 !important;
    margin: 0 !important;
}


/* ==========================================================
 * V4.3.11 — DESCRIÇÃO ESTRUTURADA DO PRODUTO
 * Conteúdo semântico inserido no editor; apresentação controlada
 * exclusivamente pelo Child Theme. Sem imagens, ícones ou cards.
 * ========================================================== */
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto {
    width: 100% !important;
    max-width: 100% !important;
    color: #202428 !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto section {
    margin: 0 !important;
    padding: 0 0 28px !important;
    border-bottom: 1px solid #e5e1dd !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto section + section {
    padding-top: 28px !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto h2 {
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: #182b49 !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 21px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto h2::after {
    content: "" !important;
    display: block !important;
    width: 42px !important;
    height: 3px !important;
    margin-top: 8px !important;
    background: #f05a00 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto p {
    margin: 0 0 14px !important;
    color: #202428 !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto p:last-child {
    margin-bottom: 0 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto ul {
    margin: 8px 0 0 20px !important;
    padding: 0 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto li {
    margin: 0 0 5px !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto li::marker {
    color: #f05a00 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 42px !important;
    margin: 0 !important;
    padding: 28px 0 !important;
    border-bottom: 1px solid #e5e1dd !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-grid section,
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-grid section + section {
    padding: 0 !important;
    border-bottom: 0 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-tabela {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 14px !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-tabela th,
.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-tabela td {
    padding: 8px 10px !important;
    border-bottom: 1px solid #e5e1dd !important;
    text-align: left !important;
    vertical-align: top !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-tabela th {
    width: 46% !important;
    color: #182b49 !important;
    font-weight: 600 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-tabela td {
    color: #202428 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-importante {
    margin-top: 28px !important;
    padding: 18px 20px !important;
    background: #fff7ef !important;
    border-left: 3px solid #f05a00 !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-importante h2 {
    margin-bottom: 8px !important;
    font-size: 19px !important;
}

.extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-importante h2::after {
    display: none !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto {
        font-size: 14px !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto h2 {
        font-size: 19px !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto p,
    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-produto li {
        font-size: 14px !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-descricao-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
        padding: 28px 0 !important;
    }

    .extenso-woocommerce.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description .extenso-tabela {
        font-size: 13px !important;
    }
}


/* ==========================================================
   EXTENSO — REGRAS FINAIS DE CARRINHO / PRODUTO
   Regras consolidadas. Checkout fica no CSS dedicado.
   ========================================================== */

/* Remove apenas o título duplicado gerado dentro da aba de descrição. */
body.extenso-woocommerce.single-product .woocommerce-tabs
.woocommerce-Tabs-panel--description > h2:first-child {
    display: none !important;
}

/* Link de remoção do item no Cart Block. */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-item__remove-link {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 28px !important;
    margin-top: 5px !important;
}

/*
 * O preço do produto já aparece abaixo do nome.
 * O total lateral do item é redundante e é removido no desktop e mobile.
 */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-items__header-total,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-item__total {
    display: none !important;
}

/* O conteúdo do produto ocupa o espaço liberado pelo total lateral. */
body.extenso-woocommerce.woocommerce-cart .wc-block-cart-item__product {
    min-width: 0 !important;
}

/* Espaçamento único e controlado entre conteúdo e pré-rodapé. */
body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart,
body.extenso-woocommerce.woocommerce-cart .wc-block-cart {
    margin-bottom: 20px !important;
}

@media (max-width: 781px) {
    body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart {
        width: calc(100% - 24px) !important;
        max-width: none !important;
        margin-bottom: 20px !important;
    }

    body.extenso-woocommerce.woocommerce-cart .wc-block-cart {
        margin-bottom: 20px !important;
    }
}


/* ==========================================================
   V4.3.23 — ESPAÇAMENTO MOBILE CART / ÁREA DE CONTEÚDO
   Regra única: 15px no topo e 15px antes do pré-rodapé.
   Também neutraliza min-height/paddings do container do tema,
   que estavam criando um grande vazio vertical no celular.
   ========================================================== */
@media (max-width: 781px) {
    body.extenso-woocommerce.woocommerce-cart .wp-block-woocommerce-cart,
    body.extenso-woocommerce.woocommerce-cart .wc-block-cart {
        margin-top: 15px !important;
        margin-bottom: 15px !important;
    }

    body.extenso-woocommerce.woocommerce-cart #content,
    body.extenso-woocommerce.woocommerce-cart main,
    body.extenso-woocommerce.woocommerce-cart .site-main,
    body.extenso-woocommerce.woocommerce-cart .content-area,
    body.extenso-woocommerce.woocommerce-cart .elementor-location-content {
        min-height: 0 !important;
        height: auto !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }

    body.extenso-woocommerce.woocommerce-cart .elementor-location-footer,
    body.extenso-woocommerce.woocommerce-cart footer {
        margin-top: 15px !important;
    }
}


/* ==========================================================
   V4.3.24 — CART / CHECKOUT MOBILE: REMOVE FLEX FILL
   O grande vazio vinha do wrapper da página mantendo espaço
   vertical para preencher a viewport. O conteúdo deve terminar
   e o pré-rodapé entrar apenas 15px depois.
   ========================================================== */
@media (max-width: 781px) {
    body.extenso-woocommerce.woocommerce-cart #page,
    body.extenso-woocommerce.woocommerce-checkout #page,
    body.extenso-woocommerce.woocommerce-cart #content,
    body.extenso-woocommerce.woocommerce-checkout #content,
    body.extenso-woocommerce.woocommerce-cart main,
    body.extenso-woocommerce.woocommerce-checkout main,
    body.extenso-woocommerce.woocommerce-cart .site-main,
    body.extenso-woocommerce.woocommerce-checkout .site-main {
        min-height: 0 !important;
        height: auto !important;
        flex-grow: 0 !important;
    }

    body.extenso-woocommerce.woocommerce-cart .elementor-location-content,
    body.extenso-woocommerce.woocommerce-checkout .elementor-location-content {
        min-height: 0 !important;
        height: auto !important;
        flex-grow: 0 !important;
    }

    body.extenso-woocommerce.woocommerce-cart .elementor-location-footer,
    body.extenso-woocommerce.woocommerce-checkout .elementor-location-footer,
    body.extenso-woocommerce.woocommerce-cart footer,
    body.extenso-woocommerce.woocommerce-checkout footer {
        margin-top: 15px !important;
    }
}

/* ==========================================================
   V4.3.26 — CART / CHECKOUT MOBILE: ALTURA REAL DA PÁGINA
   Hello Elementor mantém #page como flex + min-height:100vh.
   Nestas duas páginas o fluxo deve terminar no conteúdo real.
   ========================================================== */
@media (max-width: 767px) {
    body.extenso-woocommerce.woocommerce-cart,
    body.extenso-woocommerce.woocommerce-checkout {
        min-height: 0 !important;
        height: auto !important;
    }

    body.extenso-woocommerce.woocommerce-cart #page,
    body.extenso-woocommerce.woocommerce-checkout #page {
        display: block !important;
        min-height: 0 !important;
        height: auto !important;
    }

    body.extenso-woocommerce.woocommerce-cart #content,
    body.extenso-woocommerce.woocommerce-checkout #content,
    body.extenso-woocommerce.woocommerce-cart main,
    body.extenso-woocommerce.woocommerce-checkout main,
    body.extenso-woocommerce.woocommerce-cart .site-main,
    body.extenso-woocommerce.woocommerce-checkout .site-main {
        min-height: 0 !important;
        height: auto !important;
        flex: none !important;
        flex-grow: 0 !important;
    }

    body.extenso-woocommerce.woocommerce-cart .elementor-location-content,
    body.extenso-woocommerce.woocommerce-checkout .elementor-location-content {
        min-height: 0 !important;
        height: auto !important;
        flex: none !important;
        flex-grow: 0 !important;
    }

    body.extenso-woocommerce.woocommerce-cart .elementor-location-footer,
    body.extenso-woocommerce.woocommerce-checkout .elementor-location-footer,
    body.extenso-woocommerce.woocommerce-cart footer,
    body.extenso-woocommerce.woocommerce-checkout footer {
        margin-top: 15px !important;
        min-height: 0 !important;
        height: auto !important;
    }
}

/* V4.3.35 — Continuar comprando no Carrinho. */
body.extenso-woocommerce.woocommerce-cart .extenso-continue-shopping {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 11px 0 0 !important;
    padding: 2px 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #182b49 !important;
    font-family: Poppins, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

body.extenso-woocommerce.woocommerce-cart .extenso-continue-shopping:hover,
body.extenso-woocommerce.woocommerce-cart .extenso-continue-shopping:focus-visible {
    color: var(--extenso-orange, #f05a00) !important;
    text-decoration: none !important;
    background: transparent !important;
}


/* ==========================================================
   V4.3.35 — PREÇOS EXTENSO
   Preserva todo o CSS anterior e adiciona apenas a nova
   hierarquia Pix / cartão / parcelamento.
   ========================================================== */

.extenso-woocommerce .extenso-price-block {
    font-family: "Poppins", sans-serif !important;
    color: var(--extenso-text) !important;
    margin: 8px 0 12px !important;
}

.extenso-woocommerce .extenso-price-pix-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;
    white-space: nowrap !important;
}

.extenso-woocommerce .extenso-price-old {
    color: var(--extenso-muted) !important;
    font-size: 16px !important;
    line-height: 1 !important;
    text-decoration: line-through !important;
    font-weight: 400 !important;
    flex: 0 0 auto !important;
}

.extenso-woocommerce .extenso-price-pix {
    color: var(--extenso-orange) !important;
    font-size: 32px !important;
    line-height: 1.05 !important;
    font-weight: 600 !important;
    flex: 0 0 auto !important;
}

.extenso-woocommerce .extenso-price-pix .woocommerce-Price-amount,
.extenso-woocommerce .extenso-price-card-value .woocommerce-Price-amount,
.extenso-woocommerce .extenso-price-installment-value .woocommerce-Price-amount {
    font-size: inherit !important;
    color: inherit !important;
    font-weight: inherit !important;
}

.extenso-woocommerce .extenso-price-pix-label {
    color: var(--extenso-orange) !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    flex: 0 0 auto !important;
}

.extenso-woocommerce .extenso-price-discount {
    color: var(--extenso-text) !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    margin: 3px 0 10px !important;
}

.extenso-woocommerce .extenso-price-card-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    white-space: nowrap !important;
}

.extenso-woocommerce .extenso-price-card-value {
    color: var(--extenso-dark) !important;
    font-size: 20px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
}

.extenso-woocommerce .extenso-price-card-label {
    color: var(--extenso-text) !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
}

.extenso-woocommerce .extenso-price-installments {
    display: block !important;
    color: var(--extenso-text) !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
    margin-top: 3px !important;
}

.extenso-woocommerce .extenso-price-installment-count,
.extenso-woocommerce .extenso-price-installment-value {
    font-weight: 600 !important;
}

.extenso-woocommerce .extenso-price-block--sale .extenso-price-old {
    order: 0 !important;
}

/* Single product: compact enough to keep the installment on one line. */
.extenso-woocommerce.single-product .extenso-price-block {
    margin: 7px 0 14px !important;
}

.extenso-woocommerce.single-product .extenso-price-pix {
    font-size: 32px !important;
}

.extenso-woocommerce.single-product .extenso-price-card-value {
    font-size: 20px !important;
}

.extenso-woocommerce.single-product .extenso-price-installments {
    font-size: 15px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-price-block {
        margin: 6px 0 12px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-pix {
        font-size: 28px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-pix-label {
        font-size: 14px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-card-value {
        font-size: 18px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-card-label {
        font-size: 13px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-installments {
        font-size: 13px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-pix {
        font-size: 20px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-card-value {
        font-size: 16px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-installments {
        font-size: 12px !important;
    }
}


/* Admin-configured typography is injected by the Child with higher-specificity inline rules. */


/* V4.3.47 — Categoria + Vitrine: preço promocional em hierarquia vertical. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old-row {
    display: block !important;
    line-height: 1 !important;
    margin: 0 0 3px !important;
    min-height: 0 !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old {
    display: inline-block !important;
    font-size: 13px !important;
    line-height: 1 !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
    white-space: nowrap !important;
}
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old { font-size: 12px !important; }
}


/* V4.3.51 — Destaque discreto do desconto promocional na página do produto. */
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    display: inline-block !important;
    margin: 6px 0 11px !important;
    padding: 3px 8px !important;
    border-radius: 4px !important;
    background: rgba(240, 90, 0, 0.10) !important;
    color: var(--extenso-orange) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
        margin: 5px 0 10px !important;
        padding: 3px 7px !important;
    }
}

/* V4.3.48 — Categoria + Vitrine: alinhar todas as linhas de preço entre cards. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old-row {
    display: block !important;
    height: 16px !important;
    min-height: 16px !important;
    margin: 0 0 3px !important;
    line-height: 16px !important;
    overflow: hidden !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old-row:empty {
    visibility: hidden !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old {
    line-height: 16px !important;
}
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old-row {
        height: 15px !important;
        min-height: 15px !important;
        line-height: 15px !important;
    }
}


/* V4.3.52 — Circular discount badge on Category + Vitrine cards.
 * The value is read from the product meta saved by the backend.
 */
.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
.extenso-loop-image-wrap .extenso-discount-badge {
    position: absolute;
    top: 2px;
    right: 12px;
    z-index: 20;
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #F05A00;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -.2px;
    box-sizing: border-box;
    pointer-events: none;
}

.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge + .extenso-ready-badge {
    z-index: 7;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
    .extenso-loop-image-wrap .extenso-discount-badge {
        top: 0;
        right: 10px;
        width: 50px;
        height: 50px;
        font-size: 14px;
    }
}

/* V4.3.58 — Categoria + Vitrine: 8px entre Pix e cartão. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-row {
    margin-top: 8px !important;
}


/* ==========================================================
   EXTENSO — COMPACT VOLTAGE SELECTOR
   Presentation only; WooCommerce remains the variation engine.
   ========================================================== */
.extenso-woocommerce.single-product .extenso-voltage-selector {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 8px 0 4px !important;
    padding: 0 !important;
}

.extenso-woocommerce.single-product .extenso-voltage-option {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: 164px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 11px !important;
    border: 1px solid #D8D8D8 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #263244 !important;
    box-shadow: none !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: left !important;
    cursor: pointer !important;
    transition: border-color .15s ease, background-color .15s ease, color .15s ease !important;
}

.extenso-woocommerce.single-product .extenso-voltage-option:hover {
    border-color: #BFC3C8 !important;
    background: #FAFAFA !important;
    color: #263244 !important;
}

.extenso-woocommerce.single-product .extenso-voltage-option.is-selected {
    border-color: #F05A00 !important;
    background: #FFF8F3 !important;
    color: #F05A00 !important;
}

.extenso-woocommerce.single-product .extenso-voltage-plug {
    position: relative !important;
    display: inline-block !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 20px !important;
}

/* Simple CSS plug: no icon font or external image. */
.extenso-woocommerce.single-product .extenso-voltage-plug::before {
    content: "" !important;
    position: absolute !important;
    left: 3px !important;
    top: 1px !important;
    width: 12px !important;
    height: 12px !important;
    border-radius: 2px 2px 4px 4px !important;
    background: #7B838D !important;
}

.extenso-woocommerce.single-product .extenso-voltage-plug::after {
    content: "" !important;
    position: absolute !important;
    left: 5px !important;
    top: 0 !important;
    width: 8px !important;
    height: 8px !important;
    border-left: 2px solid #fff !important;
    border-right: 2px solid #fff !important;
    box-sizing: border-box !important;
    background: transparent !important;
}

.extenso-woocommerce.single-product .extenso-voltage-option.is-selected .extenso-voltage-plug::before {
    background: #F05A00 !important;
}

.extenso-woocommerce.single-product .extenso-voltage-label {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.extenso-woocommerce.single-product .extenso-voltage-check {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 20px !important;
    border: 1px solid #9BA1A8 !important;
    border-radius: 50% !important;
    color: transparent !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.extenso-woocommerce.single-product .extenso-voltage-option.is-selected .extenso-voltage-check {
    border-color: #F05A00 !important;
    background: #F05A00 !important;
    color: #fff !important;
}

/* Hide only the native Voltagem row; other variation attributes remain intact. */
.extenso-woocommerce.single-product form.variations_form tr.extenso-voltage-native-row {
    display: none !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-voltage-selector {
        width: 100% !important;
        gap: 6px !important;
        margin-top: 7px !important;
        margin-bottom: 3px !important;
    }

    .extenso-woocommerce.single-product .extenso-voltage-option {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        height: 40px !important;
        min-height: 40px !important;
        gap: 9px !important;
        padding: 0 9px !important;
        font-size: 13px !important;
    }
}


/* ==========================================================
 * V4.3.76 — Voltagem visual sem alterar paddings existentes
 * ========================================================== */
.extenso-voltage-selector {
    margin: 0 0 0 0 !important;
    padding: 0 !important;
}

.extenso-voltage-title {
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    color: #252A2F !important;
}

.extenso-voltage-options {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.extenso-voltage-option {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    min-width: 165px !important;
    height: 50px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid #D2D6DA !important;
    border-radius: 9px !important;
    background: #FFFFFF !important;
    color: #3F454B !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

.extenso-voltage-option.is-selected {
    background: #F1F3F4 !important;
    border-color: #B9BEC3 !important;
}

.extenso-voltage-plug {
    font-size: 13px !important;
    color: #73797E !important;
    width: 16px !important;
    text-align: center !important;
}

.extenso-voltage-check {
    width: 22px !important;
    height: 22px !important;
    margin-left: auto !important;
    border: 1px solid #B9BEC3 !important;
    border-radius: 50% !important;
    box-sizing: border-box !important;
}

.extenso-voltage-option.is-selected .extenso-voltage-check {
    border-color: #73797E !important;
    background: #73797E !important;
}

.extenso-voltage-option.is-selected .extenso-voltage-check::after {
    content: "✓" !important;
    display: block !important;
    color: #FFFFFF !important;
    font-size: 13px !important;
    line-height: 20px !important;
    text-align: center !important;
}

.extenso-voltage-toast {
    position: fixed !important;
    left: 50% !important;
    bottom: 22px !important;
    z-index: 999999 !important;
    transform: translate(-50%, 8px) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    padding: 7px 11px !important;
    border-radius: 6px !important;
    background: #343A40 !important;
    color: #FFFFFF !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    box-shadow: 0 3px 12px rgba(0,0,0,.12) !important;
    transition: opacity .18s ease, transform .18s ease !important;
}

.extenso-voltage-toast.is-visible {
    opacity: 1 !important;
    transform: translate(-50%, 0) !important;
}

@media (max-width: 767px) {
    .extenso-voltage-selector {
        margin-bottom: 8px !important;
    }

    .extenso-voltage-option {
        min-width: 0 !important;
        flex: 1 1 0 !important;
        height: 46px !important;
        padding: 0 10px !important;
    }
}


/* V4.3.77 — ajuste visual final */
.extenso-voltage-title {
    display: none !important;
}

/* 8px exatos entre Comprar agora e WhatsApp; não altera os paddings internos. */
.extenso-woocommerce.single-product .summary a[href*="wa.me"],
.extenso-woocommerce.single-product .summary a[href*="whatsapp"],
.extenso-woocommerce.single-product .summary a.whatsapp,
.extenso-woocommerce.single-product .summary a.whatsapp-button,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
    margin-top: 8px !important;
}

/* Comprar agora com aparência normal, sem esmaecimento. */
.extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button,
.extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button.disabled,
.extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button:disabled {
    opacity: 1 !important;
    filter: none !important;
}


/* V4.3.78 — remove only the excess gap above the purchase controls */
.extenso-woocommerce.single-product div.product form.cart {
    margin-top: 4px !important;
}

/* Keep the requested 8px only between the two CTA rows. */
.extenso-woocommerce.single-product .summary a[href*="wa.me"],
.extenso-woocommerce.single-product .summary a[href*="whatsapp"],
.extenso-woocommerce.single-product .summary a.whatsapp,
.extenso-woocommerce.single-product .summary a.whatsapp-button,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
    margin-top: 8px !important;
}


/* ==========================================================
   V4.3.79 — CORREÇÃO REAL DOS ESPAÇOS
   O espaço acima da compra é do fluxo entre o seletor de
   voltagem e o formulário; o WhatsApp precisa ser bloco para
   que margin-top tenha efeito.
   ========================================================== */

/* Puxa a área de compra para perto do seletor, sem tocar
   nos paddings ou dimensões dos botões. */
.extenso-woocommerce.single-product .extenso-voltage-selector {
    margin-bottom: -40px !important;
}

/* A margem do formulário não deve acrescentar espaço extra. */
.single-product form.cart,
.extenso-woocommerce.single-product div.product form.cart {
    margin-top: 0 !important;
}

/* O único espaço entre os dois CTAs é 8px. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    display: block !important;
    margin-top: 8px !important;
}

/* O CTA principal nunca fica esmaecido. */
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button:disabled {
    opacity: 1 !important;
    filter: none !important;
}


/* V4.3.80 — somente o WhatsApp desce 8px.
   Não altera o botão Comprar agora nem os paddings da área de compra. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    position: relative !important;
    top: 8px !important;
}


/* V4.3.81 — WhatsApp volta ao formato compacto.
   O problema da 4.3.80 era o deslocamento relativo combinado
   com as regras de bloco. Aqui o botão volta a ter geometria
   própria e somente 8px de distância do CTA principal. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    position: static !important;
    top: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    box-sizing: border-box !important;
    margin: 8px 0 0 !important;
    padding: 0 20px !important;
    line-height: 1 !important;
    border-radius: 7px !important;
}


/* ==========================================================
   V4.3.83 — ESPAÇOS REAIS E PEQUENOS
   Voltagem -> compra = 8px
   Comprar agora -> WhatsApp = 8px
   Não altera padding, altura ou largura dos botões.
   ========================================================== */

/* Cancela a margem negativa da versão 4.3.79. */
.extenso-woocommerce.single-product .extenso-voltage-selector {
    margin-bottom: 8px !important;
}

/* A área de compra começa logo após os 8px da voltagem. */
.extenso-woocommerce.single-product div.product form.cart,
.single-product form.cart {
    margin-top: 0 !important;
}

/* Não mexer no espaçamento interno/entre quantidade e CTA. */
.extenso-woocommerce.single-product div.product form.cart {
    row-gap: 0 !important;
}

/* Somente 8px entre Comprar agora e WhatsApp. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    margin-top: 8px !important;
}

/* Mantém o botão principal normal. */
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button:disabled {
    opacity: 1 !important;
    filter: none !important;
}


/* V4.3.84 — separação VISUAL de 8px entre Comprar agora e WhatsApp.
   Usa transform para não alterar a altura do formulário nem os paddings. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    transform: translateY(8px) !important;
    margin-top: 0 !important;
}


/* V4.3.86 — espaço entre Quantidade e Comprar agora */
.extenso-woocommerce.single-product div.product form.cart {
    column-gap: 22px !important;
}


/* V4.3.88 — ÚNICA ALTERAÇÃO: 22px entre Quantidade e Comprar agora */
.extenso-woocommerce.single-product div.product form.cart {
    column-gap: 0 !important;
}

.extenso-woocommerce.single-product div.product form.cart .quantity {
    margin-right: 22px !important;
}


/* V4.3.89 — Quantidade -> Comprar agora: 15px */
.extenso-woocommerce.single-product div.product form.cart .quantity {
    margin-right: 15px !important;
}


/* V4.3.95 — Quantidade -> Comprar agora: 10px */
.extenso-woocommerce.single-product div.product form.cart .quantity {
    margin-right: 10px !important;
}


/* V4.3.95 — WhatsApp alinhado exatamente à referência visual.
   Mantém a borda esquerda na mesma linha da Quantidade
   e faz a borda direita coincidir com a borda direita do Comprar agora.
   Nenhuma alteração no botão Comprar agora ou na Quantidade. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    width: calc(100% - 30px) !important;
    max-width: calc(100% - 30px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}


/* V4.3.96 — posição e medidas dos botões de tensão conforme referência.
   Somente o seletor de tensão é alterado. O restante do layout permanece congelado. */
.extenso-woocommerce.single-product .summary .extenso-voltage-selector {
    display: block !important;
    width: 100% !important;
    margin: 18px 0 20px 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-options {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-option {
    flex: 0 0 calc((100% - 10px) / 2) !important;
    width: calc((100% - 10px) / 2) !important;
    min-width: 0 !important;
    height: 45px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border-radius: 9px !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-plug {
    width: 16px !important;
    flex: 0 0 16px !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-label {
    font-size: 14px !important;
    font-weight: 600 !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-check {
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 22px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .summary .extenso-voltage-selector {
        margin: 14px 0 16px 0 !important;
    }

    .extenso-woocommerce.single-product .summary .extenso-voltage-options {
        gap: 8px !important;
    }

    .extenso-woocommerce.single-product .summary .extenso-voltage-option {
        flex-basis: calc((100% - 8px) / 2) !important;
        width: calc((100% - 8px) / 2) !important;
        height: 46px !important;
    }
}


/* V4.3.97 — Seletores de tensão 30% menores.
   Mantém a posição à esquerda e reduz somente o conjunto dos seletores.
   O restante do layout permanece congelado. */
.extenso-woocommerce.single-product .summary .extenso-voltage-selector {
    width: 70% !important;
    max-width: 70% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-option {
    height: 32px !important;
    flex-basis: calc((100% - 10px) / 2) !important;
    width: calc((100% - 10px) / 2) !important;
    padding: 0 10px !important;
    border-radius: 7px !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-plug {
    width: 11px !important;
    flex-basis: 11px !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-label {
    font-size: 10px !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-check {
    width: 16px !important;
    height: 16px !important;
    flex-basis: 16px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .summary .extenso-voltage-selector {
        width: 70% !important;
        max-width: 70% !important;
    }

    .extenso-woocommerce.single-product .summary .extenso-voltage-option {
        height: 32px !important;
        flex-basis: calc((100% - 8px) / 2) !important;
        width: calc((100% - 8px) / 2) !important;
    }
}


/* V4.3.98 — WhatsApp 20% menor na altura.
   Somente a altura do botão é alterada; largura, posição e demais elementos permanecem iguais. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
}

/* V4.3.99 — WhatsApp 7px mais estreito.
   Somente a largura é reduzida; altura e alinhamento permanecem iguais. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    width: calc(100% - 37px) !important;
    max-width: calc(100% - 37px) !important;
}

/* V4.3.100 — WhatsApp mais 3px estreito.
   Somente a largura é reduzida; altura, posição e demais elementos permanecem iguais. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    width: calc(100% - 40px) !important;
    max-width: calc(100% - 40px) !important;
}

/* V4.3.101 — WhatsApp mais 3px estreito.
   Somente a largura é reduzida; altura, posição e demais elementos permanecem iguais. */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    width: calc(100% - 43px) !important;
    max-width: calc(100% - 43px) !important;
}

/* V4.3.102 — Restaurar a etiqueta de desconto abaixo do preço promocional.
   Somente a etiqueta é restaurada; o restante do layout permanece congelado. */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount {
    display: block !important;
    color: var(--extenso-orange) !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    margin: 6px 0 11px !important;
    padding: 0 !important;
}

/* V4.3.103 — Etiqueta de desconto em formato de selo discreto.
   Fundo laranja muito claro, borda no laranja do tema e texto preto. */
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    display: inline-block !important;
    margin: 6px 0 11px !important;
    padding: 3px 8px !important;
    border: 1px solid var(--extenso-orange) !important;
    border-radius: 4px !important;
    background: rgba(240, 90, 0, 0.10) !important;
    color: var(--extenso-text) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
        margin: 5px 0 10px !important;
        padding: 3px 7px !important;
    }
}

/* V4.3.104 — Etiqueta de desconto corrigida.
   Selo discreto: fundo laranja muito claro, borda laranja do tema,
   texto cinza igual ao restante da tipografia. */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    display: inline-block !important;
    width: auto !important;
    box-sizing: border-box !important;
    margin: 6px 0 11px !important;
    padding: 3px 8px !important;
    border: 1px solid #E95105 !important;
    border-radius: 4px !important;
    background: #FFF3EC !important;
    color: #30343A !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
    .extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
        margin: 5px 0 10px !important;
        padding: 3px 7px !important;
    }
}

/* V4.3.105 — Etiqueta de desconto com acabamento mais suave.
   Mantém tamanho, posição, cores e tipografia; apenas suaviza a borda e adiciona sombra sutil. */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    border-color: rgba(233, 81, 5, 0.72) !important;
    box-shadow: 0 1px 3px rgba(48, 52, 58, 0.10) !important;
}

/* V4.3.106 — Ajuste final da etiqueta de desconto.
   Somente tamanho e cor do texto são alterados. */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    font-size: 11px !important;
    color: #30343A !important;
}

/* V4.3.107 — Borda da etiqueta ainda mais clara, mantendo a mesma espessura. */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    border-color: rgba(233, 81, 5, 0.38) !important;
}

/* V4.3.108 — Vitrine/category: restore the original promotional price above the sale price. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category.extenso-price-block--sale .extenso-price-old-row {
    display: block !important;
    visibility: visible !important;
    height: 16px !important;
    min-height: 16px !important;
    margin: 0 0 3px !important;
    overflow: visible !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category.extenso-price-block--sale .extenso-price-old {
    display: inline-block !important;
    visibility: visible !important;
    color: var(--extenso-muted) !important;
    font-size: 13px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
}


/* V4.3.109 — Vitrine: restore sale badge and old promotional price reliably. */
.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
.extenso-woocommerce .extenso-loop-image-wrap .extenso-discount-badge {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 100 !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category.extenso-price-block--sale .extenso-price-old-row {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 16px !important;
    min-height: 16px !important;
    line-height: 16px !important;
    margin: 0 0 3px !important;
    overflow: visible !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category.extenso-price-block--sale .extenso-price-old {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--extenso-muted) !important;
    font-size: 13px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
}

/* V4.3.112 — Ajuste fino: etiqueta circular de desconto 15px mais alta. */
.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
.extenso-loop-image-wrap .extenso-discount-badge {
    top: -13px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
    .extenso-loop-image-wrap .extenso-discount-badge {
        top: -15px !important;
    }
}


/* 4.3.114 - etiqueta circular a 12px da borda superior */
.extenso-woocommerce .extenso-discount-badge, .extenso-woocommerce .extenso-sale-badge, .extenso-woocommerce .extenso-discount-circle, .extenso-woocommerce .discount-badge, .extenso-woocommerce .sale-badge { top: -12px !important; }

/* V4.3.118 — PROMO + DESCONTO ALINHADOS COM 10PX DE ESPAÇAMENTO LATERAL.
 * A etiqueta circular pertence ao wrapper da imagem, que começa abaixo do
 * topo do card; por isso usa um deslocamento negativo para ficar na mesma
 * linha visual da etiqueta verde.
 */
.extenso-woocommerce ul.products li.product .extenso-ready-badge,
.extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
    top: 12px !important;
    left: 10px !important;
}

.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
.extenso-woocommerce .extenso-loop-image-wrap .extenso-discount-badge {
    top: -41px !important;
    right: 10px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
        top: 12px !important;
        left: 10px !important;
    }
    .extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
    .extenso-woocommerce .extenso-loop-image-wrap .extenso-discount-badge {
        top: -41px !important;
        right: 10px !important;
    }
}


/* ==========================================================
   V4.3.124 — UX FINAL DA VOLTAGEM
   Os botões 127V/220V continuam sendo os controles principais.
   A mensagem aparece pequena imediatamente acima do carrinho.
   ========================================================== */

.extenso-voltage-prompt {
    display: block !important;
    width: 100% !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
    color: #E95105 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    opacity: 0 !important;
    transform: translateY(3px) !important;
    transition: opacity .18s ease, transform .18s ease !important;
}

.extenso-voltage-prompt.is-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

.extenso-voltage-selector.extenso-voltage-attention .extenso-voltage-option {
    animation: extensoVoltageAttention .55s ease-in-out 0s 2 !important;
}

@keyframes extensoVoltageAttention {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(233, 81, 5, 0);
    }
    50% {
        transform: scale(1.025);
        box-shadow: 0 0 0 3px rgba(233, 81, 5, .20);
    }
}

@media (max-width: 767px) {
    .extenso-voltage-prompt {
        margin-bottom: 6px !important;
        font-size: 11px !important;
    }
}


/* ==========================================================
   V4.3.125 — MOBILE: QUANTIDADE + COMPRAR AGORA NA MESMA LINHA
   Mantém o WhatsApp em linha própria abaixo.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product form.cart {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .extenso-woocommerce.single-product div.product form.cart .quantity {
        flex: 0 0 92px !important;
        width: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;
        margin: 0 !important;
    }

    .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        white-space: nowrap !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        box-sizing: border-box !important;
    }

    .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button .extenso-cart-icon,
    .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button svg {
        flex: 0 0 auto !important;
    }

    /* WhatsApp permanece ocupando a largura disponível embaixo. */
    .extenso-woocommerce.single-product div.product form.cart .extenso-whatsapp-button,
    .extenso-woocommerce.single-product div.product form.cart a[href*="wa.me"],
    .extenso-woocommerce.single-product div.product form.cart a[href*="whatsapp"] {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}


/* ==========================================================
   V4.3.130 — MOBILE: 10PX ENTRE QUANTIDADE E COMPRAR
   Mantém o restante do layout e faz o botão Comprar agora
   ocupar todo o espaço restante da linha.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product form.cart {
        column-gap: 10px !important;
    }

    .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
        flex: 0 0 calc(100% - 102px) !important;
        width: calc(100% - 102px) !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        box-sizing: border-box !important;
        white-space: nowrap !important;
    }
}


/* ==========================================================
   V4.3.127 — AVISO DE VOLTAGEM SEM MOVER O CARRINHO
   A mensagem ocupa uma camada própria acima do botão Comprar agora.
   O layout do carrinho permanece estático antes/durante/depois do aviso.
   ========================================================== */
.extenso-woocommerce.single-product div.product form.cart {
    position: relative !important;
}

.extenso-woocommerce.single-product div.product form.cart .extenso-voltage-prompt {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: calc(100% + 5px) !important;
    width: 100% !important;
    height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
    z-index: 60 !important;
    color: #E95105 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    text-align: center !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 18px !important;
    white-space: nowrap !important;
    opacity: 0 !important;
    transform: translateY(3px) !important;
    transition: opacity .18s ease, transform .18s ease !important;
}

.extenso-woocommerce.single-product div.product form.cart .extenso-voltage-prompt.is-visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product form.cart .extenso-voltage-prompt {
        bottom: calc(100% + 5px) !important;
        height: 17px !important;
        font-size: 11px !important;
        line-height: 17px !important;
    }
}


/* ==========================================================
   V4.3.129 — AVISO SOMENTE APÓS TENTATIVA SEM VOLTAGEM
   O aviso fica acima das opções 127V/220V, sem alterar o fluxo
   ou a posição do carrinho.
   ========================================================== */
.extenso-woocommerce.single-product div.product form.cart .extenso-voltage-prompt {
    display: none !important;
}

.extenso-woocommerce.single-product div.product form.cart .extenso-voltage-prompt.is-visible {
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    top: auto !important;
    width: 100% !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
    z-index: 60 !important;
    color: #E95105 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    text-align: left !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 17px !important;
    white-space: nowrap !important;
    opacity: 1 !important;
    transform: none !important;
}

/* A mensagem é posicionada em relação ao seletor visual de voltagem. */
.extenso-woocommerce.single-product div.product form.cart .extenso-voltage-prompt.is-visible {
    top: var(--extenso-voltage-prompt-top, 0px) !important;
}

/* Quando o seletor estiver dentro do formulário, usamos a altura natural
   dos elementos anteriores para manter o aviso junto às opções. */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product form.cart .extenso-voltage-prompt.is-visible {
        font-size: 11px !important;
        line-height: 17px !important;
    }
}

/* ==========================================================
   V4.3.131 — MOBILE: PEQUENO ESPAÇO ENTRE QUANTIDADE E COMPRAR
   Mantém o restante do layout exatamente como está.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product form.cart {
        column-gap: 0 !important;
    }

    .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
        flex: 0 0 calc(100% - 100px) !important;
        width: calc(100% - 100px) !important;
        margin-left: 8px !important;
        margin-right: 0 !important;
        min-width: 0 !important;
        max-width: none !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
   V4.3.132 — MOBILE: MAIS 5PX ENTRE ETIQUETA DE DESCONTO E PREÇO
   Somente o espaço abaixo da etiqueta é aumentado.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
    .extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
        margin-bottom: 15px !important;
    }
}

/* ==========================================================
   V4.3.133 — MOBILE: ETIQUETAS DE PROMOÇÃO MAIS PROPORCIONAIS
   Somente os selos do card no mobile são reduzidos.
   O restante do layout permanece inalterado.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
        height: 26px !important;
        min-height: 26px !important;
        padding: 0 9px !important;
        border-radius: 6px !important;
        font-size: 8px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
    .extenso-woocommerce .extenso-loop-image-wrap .extenso-discount-badge {
        width: 46px !important;
        height: 46px !important;
        font-size: 13px !important;
        right: 10px !important;
    }
}

/* ==========================================================
   V4.3.134 — MOBILE: ETIQUETAS MAIS 10% MENORES E CÍRCULO ALINHADO
   Reduz apenas os selos no card mobile. O círculo fica com a mesma
   distância visual da borda direita que a etiqueta verde tem da esquerda.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
        height: 23px !important;
        min-height: 23px !important;
        padding: 0 8px !important;
        border-radius: 6px !important;
        font-size: 7.2px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
    .extenso-woocommerce .extenso-loop-image-wrap .extenso-discount-badge {
        width: 41px !important;
        height: 41px !important;
        font-size: 11.7px !important;
        right: 0 !important;
    }
}


/* V4.3.135 — Mobile category/vitrine cards: compact typography so all price lines fit. */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size: 14px !important;
        line-height: 1.2 !important;
        margin-top: 6px !important;
        margin-bottom: 6px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-row {
        gap: 3px !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-row {
        gap: 3px !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-installments {
        max-width: 100% !important;
        overflow: hidden !important;
    }
}

/* ==========================================================
   V4.3.136 — MOBILE: TÍTULO DO CARD COM ÁREA RESERVADA MAIOR
   Mantém cards alinhados mesmo quando um título tem mais texto.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title {
        height: 74px !important;
        min-height: 74px !important;
        max-height: 74px !important;
        padding: 3px 10px 5px !important;
        margin-top: 6px !important;
        margin-bottom: 6px !important;
        line-height: 1.2 !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 4 !important;
        line-clamp: 4 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================
   V4.3.138 — MOBILE: PREÇOS 2PX MENORES PARA CABER NO CARD
   Reduz somente a tipografia dos preços nos cards mobile.
   Desktop permanece exatamente igual.
   Desktop permanece exatamente igual.
   ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-old {
        font-size: 13px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-pix {
        font-size: 17px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-pix-label {
        font-size: 11px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-card-value {
        font-size: 13px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-card-label {
        font-size: 11px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-installments {
        font-size: 9px !important;
    }
}


/* V4.3.143 — Estado padrão dos textos de cartão.
 * Mantém apenas uma versão do rótulo visível no desktop e permite
 * que a versão mobile seja ativada somente na vitrine/categoria.
 */
.extenso-card-label-desktop { display: inline !important; }
.extenso-card-label-mobile { display: none !important; }
.extenso-interest-desktop { display: inline !important; }

/* V4.3.140 — Mobile: alteração somente nos cards de categoria/vitrine.
 * A página individual do produto permanece com “no cartão” e “Sem juros”.
 */
@media (max-width: 767px) {
    .extenso-price-block--category .extenso-card-label-desktop { display: none !important; }
    .extenso-price-block--category .extenso-card-label-mobile { display: inline !important; }
    .extenso-price-block--category .extenso-interest-desktop { display: none !important; }
}


/* ==========================================================
   V4.3.141 — MOBILE: PÁGINA DO PRODUTO
   Corrige a duplicação de "cartão" e compacta somente a
   tipografia do cartão/parcelamento. Pix e etiqueta de desconto
   permanecem no tamanho atual.
   ========================================================== */
@media (max-width: 767px) {
    /* Na página individual, exibir somente "no cartão". */
    .extenso-woocommerce.single-product .extenso-card-label-desktop {
        display: inline !important;
    }

    .extenso-woocommerce.single-product .extenso-card-label-mobile {
        display: none !important;
    }

    /* -2px somente nos textos do cartão/parcelamento. */
    .extenso-woocommerce.single-product .extenso-price-old {
        font-size: 14px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-card-value {
        font-size: 18px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-card-label {
        font-size: 12px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-installments {
        font-size: 13px !important;
    }

    /* Pix permanece exatamente no tamanho atual. */
    .extenso-woocommerce.single-product .extenso-price-pix {
        font-size: 32px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-pix-label {
        font-size: 16px !important;
    }

    /* Etiqueta textual de desconto permanece no tamanho atual. */
    .extenso-woocommerce.single-product .extenso-price-discount {
        font-size: 13px !important;
    }
}

/* V4.3.143 — Product installment typography: explicit spacing.
 * Keeps the backend-generated content readable on desktop and mobile.
 */
.extenso-woocommerce.single-product .extenso-price-installments{
    white-space:nowrap !important;
}
.extenso-woocommerce.single-product .extenso-price-installment-prefix{
    display:inline-block !important;
    margin-right:4px !important;
}
.extenso-woocommerce.single-product .extenso-price-installment-count{
    display:inline-block !important;
    margin-right:4px !important;
}
.extenso-woocommerce.single-product .extenso-price-installment-de{
    display:inline-block !important;
    margin-right:4px !important;
}
.extenso-woocommerce.single-product .extenso-price-installment-value{
    display:inline-block !important;
    margin-right:5px !important;
}
.extenso-woocommerce.single-product .extenso-interest-desktop{
    display:inline-block !important;
    margin-left:0 !important;
}
@media(max-width:767px){
    .extenso-woocommerce.single-product .extenso-price-installment-prefix,
    .extenso-woocommerce.single-product .extenso-price-installment-count,
    .extenso-woocommerce.single-product .extenso-price-installment-de{
        margin-right:3px !important;
    }
    .extenso-woocommerce.single-product .extenso-price-installment-value{
        margin-right:4px !important;
    }
}

/* ==========================================================
   V4.4.1 — PARCELAMENTO: ESPAÇAMENTO ENTRE PALAVRAS
   O HTML do parcelamento agora contém espaços reais entre
   “até”, “12x”, “de”, valor e “Sem juros”.
   Esta regra evita que a cascata transforme os spans em blocos
   visualmente colados em categoria/vitrine e mobile.
   ========================================================== */
.extenso-woocommerce .extenso-price-installments .extenso-price-installment-prefix,
.extenso-woocommerce .extenso-price-installments .extenso-price-installment-count,
.extenso-woocommerce .extenso-price-installments .extenso-price-installment-de,
.extenso-woocommerce .extenso-price-installments .extenso-price-installment-value {
    display: inline !important;
    white-space: nowrap !important;
}

.extenso-woocommerce .extenso-price-installments .extenso-interest-desktop {
    display: inline !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-installments {
        white-space: nowrap !important;
    }
}


/* ==========================================================
   V4.3.146 — ESPAÇAMENTO ÚNICO APÓS O BLOCO DE PAGAMENTO
   O bloco de parcelamento é a referência visual para o início
   dos controles de compra. Produtos em promoção não recebem
   espaço adicional entre parcelamento e quantidade/Comprar.
   ========================================================== */
.extenso-woocommerce.single-product .extenso-pagamentos--product ~ form.cart,
.extenso-woocommerce.single-product .extenso-pagamentos--product ~ .cart,
.extenso-woocommerce.single-product .extenso-pagamentos--product ~ .woocommerce-variation-add-to-cart,
.extenso-woocommerce.single-product .extenso-pagamentos--product ~ .single_variation_wrap {
    margin-top: 10px !important;
    margin-block-start: 10px !important;
    padding-top: 0 !important;
}

/* Evita que regras específicas de promoção ou de templates
   acrescentem distância antes dos controles de compra. */
.extenso-woocommerce.single-product .extenso-pagamentos--product + form.cart,
.extenso-woocommerce.single-product .extenso-pagamentos--product + .cart {
    margin-top: 10px !important;
    margin-block-start: 10px !important;
}

/* No formulário de compra, o espaçamento vertical entre as linhas
   continua sendo controlado somente pelo layout já definido. */
.extenso-woocommerce.single-product .extenso-pagamentos--product ~ form.cart {
    row-gap: 0 !important;
}



/* ==========================================================
   EXTENSO 4.4 — LIGHT FUTURE UI LAYER
   Mantida nas áreas WooCommerce, EXCETO CHECKOUT.
   O checkout permanece com o layout/espacamentos da versão anterior.
   ========================================================== */
.extenso-woocommerce {
    --extenso-radius-sm: 8px;
    --extenso-radius-md: 12px;
    --extenso-radius-lg: 16px;
    --extenso-shadow-soft: 0 8px 24px rgba(24,43,73,.06);
}
body:not(.woocommerce-checkout) .extenso-woocommerce :where(button, .button, input, select, textarea) {
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease, transform .18s ease;
}
body:not(.woocommerce-checkout) .extenso-woocommerce :where(input, select, textarea):focus {
    outline: none;
    border-color: var(--extenso-orange) !important;
    box-shadow: 0 0 0 3px rgba(233,81,5,.12) !important;
}
body:not(.woocommerce-checkout) .extenso-woocommerce :where(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
    border-radius: var(--extenso-radius-md) !important;
}
body:not(.woocommerce-checkout) .extenso-woocommerce :where(.woocommerce-MyAccount-content, .woocommerce-cart-form, .cart_totals, .woocommerce-checkout-review-order, .woocommerce form.login, .woocommerce form.register) {
    border-radius: var(--extenso-radius-md);
}
body:not(.woocommerce-checkout) .extenso-woocommerce :where(button.button, a.button, input.button, .single_add_to_cart_button):hover {
    transform: translateY(-1px);
}
body:not(.woocommerce-checkout) .extenso-woocommerce :where(button.button, a.button, input.button, .single_add_to_cart_button):active {
    transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
    body:not(.woocommerce-checkout) .extenso-woocommerce :where(button, .button, input, select, textarea) {
        transition: none !important;
    }
    body:not(.woocommerce-checkout) .extenso-woocommerce :where(button.button, a.button, input.button, .single_add_to_cart_button):hover {
        transform: none !important;
    }
}


/* V4.4.7 — SINGLE PRODUCT: DESCONTO NA LINHA DO PIX
 * A etiqueta verde fica imediatamente após “no Pix”, como no layout de
 * referência. A antiga etiqueta abaixo do preço deixa de ocupar uma linha.
 * Category/Vitrine permanecem inalteradas.
 */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-pix-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;
}

.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    flex: 0 0 auto !important;
    margin: 0 0 0 2px !important;
    padding: 2px 6px !important;
    border: 0 !important;
    border-radius: 2px !important;
    background: #159447 !important;
    color: #ffffff !important;
    box-shadow: none !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-pix-row {
        gap: 5px !important;
    }

    .extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
    .extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
        margin-left: 1px !important;
        padding: 2px 5px !important;
        font-size: 10px !important;
    }
}

/* V4.4.8 — SINGLE PRODUCT: BADGE OFF +5PX ACIMA
 * Mantém o selo verde sem borda e sobe 5px para centralizá-lo
 * verticalmente com o preço promocional.
 */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-discount,
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-discount {
    background: #159447 !important;
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    box-shadow: none !important;
    transform: translateY(-5px) !important;
}


/* V4.4.9 — SINGLE PRODUCT: SELO DE DESCONTO DEFINITIVO
 * Somente o selo da página individual do produto.
 * Verde sólido, sem borda/sombra, branco e centralizado verticalmente
 * com o preço promocional. O deslocamento vertical é controlado pelo
 * próprio elemento para não alterar a linha de preço.
 */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-pix-row .extenso-price-discount,
.extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-pix-row .extenso-price-discount {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 0 2px !important;
    padding: 3px 7px !important;
    background: #159447 !important;
    background-color: #159447 !important;
    color: #ffffff !important;
    border: 0 !important;
    border-width: 0 !important;
    border-style: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    border-radius: 3px !important;
    transform: translateY(-5px) !important;
    font-family: "Poppins", sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-pix-row .extenso-price-discount,
    .extenso-woocommerce.single-product .extenso-price-block--product.extenso-price-block--sale .extenso-price-pix-row .extenso-price-discount {
        margin-left: 1px !important;
        padding: 3px 6px !important;
        font-size: 10px !important;
        transform: translateY(-4px) !important;
    }
}

/* ==========================================================
   V4.5.0 — CATEGORY CARD / DESKTOP / TABLET / MOBILE
   Canonical card based on the approved mobile reference.
   Same visual hierarchy at every breakpoint; only the card
   width and typography scale responsively.
   ========================================================== */

/* Grid: 4 desktop / 3 tablet / 2 mobile. */
.extenso-woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

/* The card is a clean white surface with a discreet outline. */
.extenso-woocommerce ul.products li.product {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 9px 10px 10px !important;
    box-sizing: border-box !important;
    border: 1px solid #e7e2dd !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 3px 12px rgba(32,33,36,.045) !important;
    overflow: hidden !important;
}

.extenso-woocommerce ul.products li.product:hover {
    border-color: #e7e2dd !important;
    box-shadow: 0 5px 15px rgba(32,33,36,.065) !important;
}

/* Promotion / commercial badge: top-left, green, compact. */
.extenso-woocommerce ul.products li.product .extenso-ready-badge,
.extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
    top: 9px !important;
    left: 10px !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 7px !important;
    background: #159447 !important;
    color: #fff !important;
    font-size: 8px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    z-index: 30 !important;
}

/* Keep the lightning icon discreet and inside the badge. */
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--promo .extenso-promo-bolt {
    width: 8px !important;
    height: 12px !important;
    margin-left: 4px !important;
}

.extenso-woocommerce ul.products li.product .extenso-commercial-badge--promo .extenso-promo-bolt svg {
    width: 8px !important;
    height: 12px !important;
}

/* Image: square, contained, with the badge breathing room above it. */
.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link img {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    max-height: none !important;
    margin: 32px 0 5px !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #fff !important;
    border-radius: 0 !important;
    transform: none !important;
}

/* Product reference remains anchored to the image lower-right edge. */
.extenso-woocommerce ul.products li.product .extenso-image-reference--loop,
.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-image-reference--loop {
    right: 0 !important;
    bottom: 0 !important;
    font-size: 9px !important;
    min-height: 18px !important;
    padding: 2px 6px !important;
    background: rgba(255,255,255,.94) !important;
}

/* Title: controlled height so price lines start at the same position. */
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title,
.extenso-woocommerce ul.products li.product .woocommerce-loop-product__title a {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 4 !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    margin: 5px 2px 5px !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: #555352 !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.27 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Category price block: old price, Pix + green discount, card, installments. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 2px !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old-row {
    height: 17px !important;
    min-height: 17px !important;
    margin: 0 !important;
    line-height: 17px !important;
    overflow: hidden !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old {
    color: #646970 !important;
    font-size: 12px !important;
    line-height: 17px !important;
    font-weight: 400 !important;
    text-decoration: line-through !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
    width: 100% !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix {
    color: #f05a00 !important;
    font-size: 21px !important;
    line-height: 1.05 !important;
    font-weight: 600 !important;
    flex: 0 0 auto !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-label {
    color: #f05a00 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    flex: 0 0 auto !important;
    order: 3 !important;
}

/* Green inline discount — no border, no shadow, raised slightly like the reference. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    order: 2 !important;
    margin: 0 0 0 0 !important;
    padding: 2px 5px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: #159447 !important;
    color: #fff !important;
    font-size: 8px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    transform: translateY(-4px) !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
    margin: 8px 0 0 !important;
    white-space: nowrap !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-value {
    color: #182b49 !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-label {
    color: #202428 !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-installments {
    display: block !important;
    margin: 3px 0 0 !important;
    color: #202428 !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-installment-count,
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-installment-value {
    font-weight: 600 !important;
}

/* Main CTA: orange, full width, comfortable touch target. */
.extenso-woocommerce ul.products li.product .button {
    width: calc(100% - 4px) !important;
    min-height: 50px !important;
    margin: 10px 2px 0 !important;
    padding: 6px 10px !important;
    border-radius: 9px !important;
    background: #f05a00 !important;
    border: 1px solid #f05a00 !important;
    color: #fff !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    font-weight: 600 !important;
    text-align: center !important;
    white-space: normal !important;
    box-shadow: none !important;
}

.extenso-woocommerce ul.products li.product .button:hover {
    background: #d94f00 !important;
    border-color: #d94f00 !important;
    color: #fff !important;
}

/* WhatsApp CTA: white with green border and icon/text. */
.extenso-woocommerce ul.products li.product a[href*="wa.me"],
.extenso-woocommerce ul.products li.product a[href*="whatsapp"],
.extenso-woocommerce ul.products li.product a.whatsapp,
.extenso-woocommerce ul.products li.product a.whatsapp-button,
.extenso-woocommerce ul.products li.product .whatsapp-button {
    width: calc(100% - 4px) !important;
    min-height: 48px !important;
    margin: 8px 2px 0 !important;
    padding: 6px 8px !important;
    box-sizing: border-box !important;
    border: 1px solid #25D366 !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #25D366 !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
    text-align: center !important;
    white-space: normal !important;
    box-shadow: none !important;
}

/* Prevent any old circular discount badge from occupying the image. */
.extenso-woocommerce ul.products li.product .extenso-loop-image-wrap .extenso-discount-badge,
.extenso-woocommerce ul.products li.product .extenso-discount-badge {
    display: none !important;
}

/* Tablet: keep the same card architecture with slightly tighter spacing. */
@media (min-width: 768px) and (max-width: 1100px) {
    .extenso-woocommerce ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }

    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title,
    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title a {
        font-size: 14px !important;
        height: 56px !important;
        min-height: 56px !important;
        max-height: 56px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix {
        font-size: 20px !important;
    }
}

/* Mobile: two cards, compact enough to preserve the complete hierarchy. */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        margin-bottom: 28px !important;
    }

    .extenso-woocommerce ul.products li.product {
        padding: 8px 8px 9px !important;
        border-radius: 10px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
        top: 8px !important;
        left: 8px !important;
        height: 26px !important;
        min-height: 26px !important;
        padding: 0 8px !important;
        font-size: 7px !important;
        border-radius: 6px !important;
    }

    .extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
    .extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link img {
        margin-top: 29px !important;
        margin-bottom: 3px !important;
    }

    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title,
    .extenso-woocommerce ul.products li.product .woocommerce-loop-product__title a {
        height: 58px !important;
        min-height: 58px !important;
        max-height: 58px !important;
        margin: 4px 1px 4px !important;
        font-size: 13px !important;
        line-height: 1.28 !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old-row {
        height: 15px !important;
        min-height: 15px !important;
        line-height: 15px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-old {
        font-size: 10px !important;
        line-height: 15px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix {
        font-size: 18px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-label {
        font-size: 10px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount {
        padding: 2px 4px !important;
        font-size: 7px !important;
        transform: translateY(-3px) !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-row {
        margin-top: 7px !important;
        gap: 4px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-value {
        font-size: 12px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-card-label {
        font-size: 10px !important;
    }

    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-installments {
        font-size: 8px !important;
        margin-top: 3px !important;
    }

    .extenso-woocommerce ul.products li.product .button {
        min-height: 52px !important;
        margin-top: 9px !important;
        padding: 6px 7px !important;
        border-radius: 8px !important;
        font-size: 11px !important;
    }

    .extenso-woocommerce ul.products li.product a[href*="wa.me"],
    .extenso-woocommerce ul.products li.product a[href*="whatsapp"],
    .extenso-woocommerce ul.products li.product a.whatsapp,
    .extenso-woocommerce ul.products li.product a.whatsapp-button,
    .extenso-woocommerce ul.products li.product .whatsapp-button {
        min-height: 45px !important;
        margin-top: 7px !important;
        padding: 5px 6px !important;
        border-radius: 8px !important;
        font-size: 9px !important;
    }
}

@media (max-width: 359px) {
    .extenso-woocommerce ul.products {
        gap: 9px !important;
    }

    .extenso-woocommerce ul.products li.product {
        padding-left: 7px !important;
        padding-right: 7px !important;
    }
}


/* ==========================================================
 * V4.5.6 — PRAZO: ESPAÇAMENTO E HOVER DISCRETO
 * ========================================================== */
.extenso-woocommerce.single-product .extenso-delivery-trigger-wrap {
    margin: 4px 0 8px !important;
    padding: 0 !important;
    margin-left: 2px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger {
    appearance: none !important;
    border: 0 !important;
    background: transparent !important;
    color: #159447 !important;
    padding: 0 !important;
    margin: 0 !important;
    font: inherit !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    text-align: left !important;
    text-decoration: none !important;
    cursor: pointer !important;
    border-radius: 3px !important;
    transition: color .15s ease, background-color .15s ease, transform .15s ease !important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger:hover,
.extenso-woocommerce.single-product .extenso-delivery-trigger:focus-visible {
    color: #159447 !important;
    text-decoration: none !important;
    background: rgba(21, 148, 71, .07) !important;
    outline: none !important;
    transform: translateX(1px) !important;
}
.extenso-delivery-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px !important;
}
.extenso-delivery-modal[hidden] { display: none !important; }
.extenso-delivery-modal__backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0,0,0,.72) !important;
}
.extenso-delivery-modal__dialog {
    position: relative !important;
    z-index: 1 !important;
    width: min(760px, 100%) !important;
    max-height: none !important;
    overflow: visible !important;
    background: transparent !important;
    border-radius: 8px !important;
    box-shadow: 0 18px 60px rgba(0,0,0,.25) !important;
}
/* Sem cabeçalho: o botão fica flutuando para fora do canto superior direito. */
.extenso-delivery-modal__close {
    position: absolute !important;
    z-index: 5 !important;
    top: -17px !important;
    right: -17px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    padding: 0 !important;
    border: 1px solid #d9d9d9 !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #555 !important;
    font-size: 28px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.10) !important;
}
.extenso-delivery-modal__body {
    max-height: min(82vh, 760px) !important;
    overflow: auto !important;
    padding: 34px !important;
    background: #fff !important;
    border-radius: 8px !important;
    color: #202428 !important;
    font-family: Poppins, Arial, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
}
.extenso-delivery-modal__body > *:first-child { margin-top: 0 !important; }
.extenso-delivery-modal__body > *:last-child { margin-bottom: 0 !important; }
.extenso-delivery-modal__body img { max-width: 100% !important; height: auto !important; }
.extenso-delivery-modal__body table { width: 100%; max-width: 100%; border-collapse: collapse; }
.extenso-delivery-modal__body th,
.extenso-delivery-modal__body td { padding: 8px 10px; border-bottom: 1px solid #e5e1dd; text-align: left; }
.extenso-delivery-modal__body a { color: var(--extenso-orange, #f05a00); }
body.extenso-delivery-modal-open { overflow: hidden !important; }
@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-delivery-trigger-wrap { margin: 4px 0 6px !important; margin-left: 2px !important; }
    .extenso-woocommerce.single-product .extenso-delivery-trigger { font-size: 13px !important; }
    .extenso-delivery-modal { padding: 12px !important; align-items: flex-end !important; }
    .extenso-delivery-modal__dialog { width: 100% !important; max-height: none !important; }
    .extenso-delivery-modal__close { top: -14px !important; right: -5px !important; }
    .extenso-delivery-modal__body { max-height: 88vh !important; padding: 24px 20px 20px !important; border-radius: 12px !important; font-size: 14px !important; }
}


/* ==========================================================
 * V4.9.17 — PRAZO: GATILHO INDEPENDENTE + MODAL
 * O conteúdo não ocupa espaço na página até o cliente abrir.
 * ========================================================== */
.extenso-woocommerce.single-product .extenso-delivery-block {
    display: block !important;
    width: 100% !important;
    margin: 4px 0 8px !important;
    padding: 0 !important;
    clear: both !important;
}

/* ==========================================================
 * V4.6.1 — PRAZO: GRAFITE + ÍCONE DE RELÓGIO, SEM BACKGROUND
 * ========================================================== */
.extenso-woocommerce.single-product .extenso-delivery-trigger {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #343A40 !important;
    background: transparent !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
    color: #343A40 !important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger__icon svg {
    width: 18px !important;
    height: 18px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger:hover,
.extenso-woocommerce.single-product .extenso-delivery-trigger:focus-visible {
    color: #343A40 !important;
    background: transparent !important;
    text-decoration: none !important;
    outline: none !important;
    box-shadow: none !important;
    transform: translateX(1px) !important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger:hover .extenso-delivery-trigger__icon,
.extenso-woocommerce.single-product .extenso-delivery-trigger:focus-visible .extenso-delivery-trigger__icon {
    color: #343A40 !important;
}


/* ==========================================================
 * V4.6.2 — MOBILE: ALINHAMENTO VERTICAL DOS BLOCOS
 * Usa o relógio do prazo como eixo visual de referência.
 * Ajuste somente no resumo do produto em telas móveis.
 * ========================================================== */
@media (max-width: 767px) {
    /* O link do prazo define o eixo: ícone começa em 28px. */
    .extenso-woocommerce.single-product .extenso-delivery-trigger-wrap {
        margin-left: 2px !important;
        padding-left: 0 !important;
    }

    /* Pagamento/cartão: aproxima o conteúdo 5px do eixo do relógio. */
    .extenso-woocommerce.single-product .extenso-pagamentos--product {
        transform: translateX(-5px) !important;
    }

    /* Controles de compra: desloca o conjunto 5px para o eixo do relógio. */
    .extenso-woocommerce.single-product form.cart,
    .extenso-woocommerce.single-product .cart {
        transform: translateX(5px) !important;
        width: calc(100% - 5px) !important;
    }

    /* WhatsApp acompanha exatamente o mesmo eixo dos controles. */
    .extenso-woocommerce.single-product form.cart .extenso-whatsapp-button,
    .extenso-woocommerce.single-product form.cart a[href*="whatsapp"],
    .extenso-woocommerce.single-product .cart .extenso-whatsapp-button,
    .extenso-woocommerce.single-product .cart a[href*="whatsapp"] {
        margin-left: 0 !important;
    }

    /* Frete/retirada: traz o conteúdo para o mesmo eixo visual. */
    .extenso-woocommerce.single-product .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .extenso-frete-block,
    .extenso-woocommerce.single-product .extenso-frete-container {
        transform: translateX(-20px) !important;
        width: calc(100% + 20px) !important;
    }
}


/* ==========================================================
 * V4.6.3 — EIXO ÚNICO + REFINO DO SELO DE DESCONTO
 * Mobile: cartão, prazo/relógio e entrega usam o mesmo eixo esquerdo.
 * Categoria/Vitrine: selo com um pouco mais de respiro vertical e mais
 * próximo do grupo "no Pix".
 * ========================================================== */
@media (max-width: 767px) {
    /* Remove os deslocamentos artificiais da versão anterior. */
    .extenso-woocommerce.single-product .extenso-pagamentos--product,
    .extenso-woocommerce.single-product .extenso-delivery-trigger-wrap,
    .extenso-woocommerce.single-product .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .extenso-frete-block,
    .extenso-woocommerce.single-product .extenso-frete-container {
        transform: none !important;
        margin-left: 0 !important;
    }

    /* O eixo passa a ser o início do conteúdo de cada bloco. */
    .extenso-woocommerce.single-product .extenso-pagamentos--product,
    .extenso-woocommerce.single-product .extenso-delivery-trigger-wrap,
    .extenso-woocommerce.single-product .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .extenso-frete-block,
    .extenso-woocommerce.single-product .extenso-frete-container {
        padding-left: 0 !important;
        box-sizing: border-box !important;
    }

    /* O relógio permanece como referência visual; o texto acompanha o mesmo eixo. */
    .extenso-woocommerce.single-product .extenso-delivery-trigger {
        margin-left: 0 !important;
    }
}

/* Selo de promoção: mais próximo do "no Pix" e com 1px extra de respiro vertical. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-meta,
.extenso-woocommerce .extenso-price-block--category .extenso-price-pix-meta {
    margin-left: 3px !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
.extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
    margin-bottom: 1px !important;
}


/* ==========================================================
 * V4.6.4 — EIXO REAL DOS BLOCOS + REFINO FINAL DO SELO
 * Mobile: cartão, relógio/prazo e entrega partem do mesmo eixo
 * externo. O alinhamento é feito no container, sem transforms.
 * O selo da categoria/vitrine ganha 1px de respiro vertical e fica
 * mais próximo do texto “no Pix”.
 * ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-pagamentos--product,
    .extenso-woocommerce.single-product .extenso-delivery-trigger-wrap,
    .extenso-woocommerce.single-product .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .extenso-frete-block,
    .extenso-woocommerce.single-product .extenso-frete-container {
        position: relative !important;
        left: 0 !important;
        right: auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        transform: none !important;
    }

    .extenso-woocommerce.single-product .extenso-delivery-trigger-wrap {
        display: block !important;
    }

    .extenso-woocommerce.single-product .extenso-delivery-trigger {
        margin-left: 0 !important;
        padding-left: 0 !important;
    }

    /* O conteúdo de entrega não pode criar um segundo eixo interno. */
    .extenso-woocommerce.single-product .extenso-frete-block > *,
    .extenso-woocommerce.single-product .extenso-frete-container > *,
    .extenso-woocommerce.single-product .woocommerce-shipping-calculator > * {
        box-sizing: border-box !important;
    }
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
.extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
    margin-right: -1px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
    .extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
        padding-top: 3px !important;
        padding-bottom: 3px !important;
        transform: translateY(-2px) !important;
        margin-right: -1px !important;
    }
}
/* V4.6.6 — CATEGORIA/VITRINE: NO PIX MAIS PRÓXIMO DO PREÇO
 * Move somente o texto “no Pix” 2px para cima. A página individual
 * do produto permanece inalterada.
 */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-label,
.extenso-woocommerce .extenso-price-block--category .extenso-price-pix-label {
    position: relative !important;
    top: -2px !important;
}



/* V4.6.7 — SINGLE PRODUCT: AFASTA O BLOCO DE CARTÃO DO PREÇO PIX
 * Desce 2px o primeiro bloco de valor após o Pix, criando um respiro
 * visual maior entre o preço promocional e o preço no cartão.
 */
.extenso-woocommerce.single-product .extenso-price-block--product .extenso-price-card-row {
    margin-top: 2px !important;
}


/* ==========================================================
 * V4.6.8 — MOBILE: POPUP DE PRAZO RESPEITA MENU INFERIOR
 * O menu inferior externo ocupa cerca de 80–90px. O popup reserva
 * essa área para nunca ficar encoberto por ele.
 * ========================================================== */
@media (max-width: 767px) {
    .extenso-delivery-modal {
        padding: 12px 12px 88px !important;
        align-items: flex-end !important;
        box-sizing: border-box !important;
    }

    .extenso-delivery-modal__dialog {
        width: 100% !important;
        max-height: calc(100vh - 100px) !important;
        margin: 0 !important;
    }

    .extenso-delivery-modal__body {
        max-height: calc(100vh - 176px) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        border-radius: 12px !important;
    }
}


/* ==========================================================
 * V4.7.0 — SINGLE PRODUCT: nenhum aviso visual do WooCommerce
 * Restrito à página individual do produto.
 * Não altera PHP, JS, AJAX, cálculo ou funcionamento.
 * ========================================================== */
body.single-product .woocommerce-notices-wrapper,
body.single-product .woocommerce-notice,
body.single-product .woocommerce-error,
body.single-product .woocommerce-info,
body.single-product .woocommerce-message,
body.single-product .woocommerce > ul.woocommerce-error,
body.single-product .woocommerce > ul.woocommerce-info,
body.single-product .woocommerce > ul.woocommerce-message,
body.single-product .woocommerce > div.woocommerce-error,
body.single-product .woocommerce > div.woocommerce-info,
body.single-product .woocommerce > div.woocommerce-message,
body.single-product .wc-block-components-notices,
body.single-product .wc-block-components-notice-banner {
    display: none !important;
}



/* ==========================================================
 * V4.8.5 — EXTENSO COMPARTILHAR / ABAIXO DAS MINIATURAS
 * ========================================================== */
.single-product .extenso-produto-meta-share{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;margin:12px 0 0!important;padding:0!important;box-sizing:border-box!important;}
.single-product .extenso-compartilhar-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:36px!important;margin:0!important;padding:7px 12px!important;border:1px solid #e5e7eb!important;border-radius:7px!important;background:#fff!important;color:#263956!important;font-family:inherit!important;font-size:12px!important;font-weight:500!important;line-height:1!important;text-decoration:none!important;cursor:pointer!important;box-shadow:none!important;}
.single-product .extenso-compartilhar-btn:hover,.single-product .extenso-compartilhar-btn:focus{border-color:#d8dde4!important;background:#fafbfc!important;color:#182B49!important;box-shadow:none!important;outline:none!important;}
.single-product .extenso-compartilhar-icone{display:block!important;width:16px!important;height:16px!important;flex:0 0 16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
@media(max-width:767px){.single-product .extenso-produto-meta-share{margin:10px 0 0!important}.single-product .extenso-compartilhar-btn{min-height:34px!important;padding:6px 11px!important;font-size:11.5px!important}}


/* ==========================================================
 * V4.8.6 — EXTENSO COMPARTILHAR / POSIÇÃO ABAIXO DAS MINIATURAS
 * ========================================================== */
.single-product .extenso-produto-meta-share{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    margin:10px 0 0!important;
    padding:0!important;
    box-sizing:border-box!important;
    clear:both!important;
}
.single-product .extenso-produto-meta-share .extenso-compartilhar-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    min-height:36px!important;
    margin:0!important;
    padding:7px 12px!important;
    border:1px solid #e5e7eb!important;
    border-radius:7px!important;
    background:#fff!important;
    color:#263956!important;
    font-family:inherit!important;
    font-size:12px!important;
    font-weight:500!important;
    line-height:1!important;
    text-decoration:none!important;
    cursor:pointer!important;
    box-shadow:none!important;
}
.single-product .extenso-produto-meta-share .extenso-compartilhar-icone{
    display:block!important;width:16px!important;height:16px!important;flex:0 0 16px!important;
    fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;
    stroke-linecap:round!important;stroke-linejoin:round!important;
}
@media(max-width:767px){
    .single-product .extenso-produto-meta-share{margin-top:8px!important;}
    .single-product .extenso-produto-meta-share .extenso-compartilhar-btn{min-height:34px!important;padding:6px 11px!important;font-size:11.5px!important;}
}


/* ==========================================================
 * V4.8.8 — COMPARTILHAR ALINHADO À REFERÊNCIA DA GALERIA
 * O botão permanece à esquerda e sua linha vertical acompanha
 * exatamente o centro da REF. do produto à direita.
 * ========================================================== */
.single-product .woocommerce-product-gallery{position:relative!important;}
.single-product .extenso-produto-meta-share{
    position:absolute!important;
    left:0!important;
    top:auto!important;
    bottom:auto!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    z-index:60!important;
}



/* ==========================================================
 * V4.9.2 — CATEGORY / VITRINE IMAGE HOVER RESTORED
 * The later card refinement set transform:none and unintentionally
 * neutralized the original image hover. Restore the original
 * 1.035 scale without changing dimensions or card layout.
 * ========================================================== */
.extenso-woocommerce ul.products li.product a.woocommerce-LoopProduct-link img,
.extenso-woocommerce ul.products li.product > .woocommerce-loop-product__link img {
    transition: transform .22s ease !important;
}

.extenso-woocommerce ul.products li.product:hover a.woocommerce-LoopProduct-link img,
.extenso-woocommerce ul.products li.product:hover > .woocommerce-loop-product__link img {
    transform: scale(1.035) !important;
}

/* Product page: keep the native in-page zoom cursor. */
.extenso-woocommerce.single-product .woocommerce-product-gallery__image:first-child img {
    cursor: zoom-in !important;
}


/* ==========================================================
 * V4.9.3 — PRAZO DE PRODUÇÃO E ENVIO / RESTAURAÇÃO
 * O link volta a ficar imediatamente antes do formulário de compra.
 * Nenhuma regra de preço, frete ou carrinho é alterada.
 * ========================================================== */
.extenso-woocommerce.single-product .extenso-delivery-trigger-wrap{
    display:block!important;
    width:100%!important;
    visibility:visible!important;
    opacity:1!important;
    margin:4px 0 8px!important;
    padding:0!important;
    box-sizing:border-box!important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
}



@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
    .extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
        font-size: 10px !important;
    }
}

/* V4.9.7 — Categoria/Vitrine: selo 5% OFF realmente legível.
 * A regra final neutraliza qualquer legado posterior que tentasse voltar
 * o selo para 8px. Mantém a estrutura do card e apenas melhora a leitura. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
.extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
    font-size: 11px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 5 !important;
}
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
    .extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
        font-size: 10px !important;
    }
}


/* V4.9.8 — CATEGORY/VITRINE: keep the green discount badge visible.
 * The mobile price row previously clipped the badge because it is positioned
 * above the "no Pix" label. This does not change the price layout. */
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-row,
.extenso-woocommerce .extenso-price-block--category .extenso-price-pix-row {
    overflow: visible !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-pix-meta,
.extenso-woocommerce .extenso-price-block--category .extenso-price-pix-meta {
    overflow: visible !important;
    z-index: 4 !important;
}
.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
.extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 11px !important;
    line-height: 1 !important;
    position: relative !important;
    z-index: 5 !important;
}
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
    .extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
        font-size: 10px !important;
    }
}

/* ==========================================================
 * V4.9.11 — MOBILE SINGLE-PRODUCT GALLERY / TOUCH EXPERIENCE
 * ONLY the single-product mobile gallery is changed.
 * Desktop, categories and vitrines remain frozen.
 *
 * Mobile behavior:
 * - Native gallery arrows/swipe remain available on the page.
 * - Horizontal finger swipe changes the gallery slide.
 * - Vertical finger movement continues to scroll the page.
 * - Pinch with two fingers zooms the image directly on the page.
 * - Tapping the image or magnifier opens the Extenso viewer.
 * - The viewer has theme-style arrows, swipe navigation and pinch zoom.
 * ========================================================== */
(function () {
    'use strict';

    var suppressClickUntil = 0;

    function isMobile() {
        return window.matchMedia && window.matchMedia('(max-width: 767px)').matches;
    }

    function getGalleryNodes() {
        return document.querySelectorAll(
            '.extenso-woocommerce.single-product .woocommerce-product-gallery__image'
        );
    }

    function getImageFromNode(node) {
        return node ? node.querySelector('img') : null;
    }

    function setDirectZoom(node, scale, x, y, originX, originY) {
        var img = getImageFromNode(node);
        if (!img) return;
        img.style.transformOrigin = (originX || 50) + '% ' + (originY || 50) + '%';
        img.style.transform = 'translate3d(' + (x || 0) + 'px,' + (y || 0) + 'px,0) scale(' + Math.max(1, Math.min(scale || 1, 4)) + ')';
        img.style.transition = 'none';
        img.classList.toggle('extenso-touch-zoomed', (scale || 1) > 1.01);
    }

    function resetDirectZoom(node) {
        var img = getImageFromNode(node);
        if (!img) return;
        img.style.transform = '';
        img.style.transformOrigin = '';
        img.style.transition = '';
        img.classList.remove('extenso-touch-zoomed');
    }

    function distance(a, b) {
        var dx = a.clientX - b.clientX;
        var dy = a.clientY - b.clientY;
        return Math.sqrt(dx * dx + dy * dy);
    }

    function bindDirectPinchAndSwipe() {
        if (!isMobile()) return;

        var viewports = document.querySelectorAll(
            '.extenso-woocommerce.single-product .woocommerce-product-gallery .flex-viewport'
        );

        Array.prototype.forEach.call(viewports, function (viewport) {
            if (viewport.__extensoTouchV4911) return;
            viewport.__extensoTouchV4911 = true;

            var state = {
                startX: 0,
                startY: 0,
                moved: false,
                horizontal: false,
                pinch: false,
                startDistance: 0,
                scale: 1,
                originX: 50,
                originY: 50,
                imageNode: null,
                lastTap: 0
            };

            viewport.addEventListener('touchstart', function (event) {
                if (!event.touches || !event.touches.length) return;
                var target = event.target.closest && event.target.closest('.woocommerce-product-gallery__image');
                state.imageNode = target || null;
                state.startX = event.touches[0].clientX;
                state.startY = event.touches[0].clientY;
                state.moved = false;
                state.horizontal = false;
                state.pinch = event.touches.length >= 2;

                if (state.pinch && event.touches.length >= 2) {
                    state.startDistance = distance(event.touches[0], event.touches[1]);
                    state.scale = 1;
                    if (state.imageNode) {
                        var rect = state.imageNode.getBoundingClientRect();
                        state.originX = ((event.touches[0].clientX - rect.left) / rect.width) * 100;
                        state.originY = ((event.touches[0].clientY - rect.top) / rect.height) * 100;
                    }
                    event.preventDefault();
                }
            }, { capture: true, passive: false });

            viewport.addEventListener('touchmove', function (event) {
                if (!event.touches || !event.touches.length) return;

                if (event.touches.length >= 2 && state.imageNode) {
                    state.pinch = true;
                    state.moved = true;
                    var d = distance(event.touches[0], event.touches[1]);
                    if (state.startDistance > 0) {
                        state.scale = Math.max(1, Math.min(4, d / state.startDistance));
                        setDirectZoom(state.imageNode, state.scale, 0, 0, state.originX, state.originY);
                    }
                    event.preventDefault();
                    event.stopImmediatePropagation();
                    return;
                }

                if (state.pinch) {
                    event.preventDefault();
                    event.stopImmediatePropagation();
                    return;
                }

                var dx = event.touches[0].clientX - state.startX;
                var dy = event.touches[0].clientY - state.startY;
                if (!state.moved && (Math.abs(dx) > 8 || Math.abs(dy) > 8)) state.moved = true;

                if (!state.horizontal && Math.abs(dx) > 10 && Math.abs(dx) > Math.abs(dy) * 1.15) {
                    state.horizontal = true;
                }

                /* Do NOT cancel horizontal movement: FlexSlider owns the
                 * normal one-finger gallery swipe on the product page. */
                if (state.horizontal) {
                    suppressClickUntil = Date.now() + 450;
                }
            }, { capture: true, passive: false });

            viewport.addEventListener('touchend', function (event) {
                if (state.pinch) {
                    if (state.scale <= 1.01 && state.imageNode) resetDirectZoom(state.imageNode);
                    suppressClickUntil = Date.now() + 600;
                } else if (state.horizontal) {
                    suppressClickUntil = Date.now() + 500;
                }
                state.pinch = false;
                state.horizontal = false;
                state.moved = false;
                state.startDistance = 0;
            }, { capture: true, passive: true });

            viewport.addEventListener('touchcancel', function () {
                if (state.imageNode && state.pinch && state.scale <= 1.01) resetDirectZoom(state.imageNode);
                suppressClickUntil = Date.now() + 500;
                state.pinch = false;
                state.horizontal = false;
                state.moved = false;
            }, { capture: true, passive: true });
        });
    }

    function bindModalTouch() {
        var modal = document.getElementById('extenso-product-image-modal');
        if (!modal || modal.__extensoTouchV4911) return;
        modal.__extensoTouchV4911 = true;

        var image = modal.querySelector('.extenso-product-image-modal__image');
        if (!image) return;

        var state = {
            startX: 0,
            startY: 0,
            startDistance: 0,
            scale: 1,
            panX: 0,
            panY: 0,
            originX: 50,
            originY: 50,
            pinch: false,
            pan: false
        };

        function render() {
            image.style.transformOrigin = state.originX + '% ' + state.originY + '%';
            image.style.transform = 'translate3d(' + state.panX + 'px,' + state.panY + 'px,0) scale(' + state.scale + ')';
            image.classList.toggle('is-zoomed', state.scale > 1.01);
        }

        function reset() {
            state.scale = 1;
            state.panX = 0;
            state.panY = 0;
            state.pinch = false;
            state.pan = false;
            image.style.transform = '';
            image.style.transformOrigin = '';
            image.classList.remove('is-zoomed');
        }

        modal.addEventListener('touchstart', function (event) {
            if (!modal.classList.contains('is-open') || !event.touches.length) return;

            if (event.touches.length >= 2) {
                state.pinch = true;
                state.pan = false;
                state.startDistance = distance(event.touches[0], event.touches[1]);
                state.originX = 50;
                state.originY = 50;
                event.preventDefault();
                return;
            }

            state.startX = event.touches[0].clientX;
            state.startY = event.touches[0].clientY;
            state.pan = state.scale > 1.01;
        }, { passive: false });

        modal.addEventListener('touchmove', function (event) {
            if (!modal.classList.contains('is-open')) return;

            if (event.touches.length >= 2 && state.pinch) {
                var d = distance(event.touches[0], event.touches[1]);
                if (state.startDistance > 0) {
                    state.scale = Math.max(1, Math.min(4, d / state.startDistance));
                    render();
                }
                event.preventDefault();
                return;
            }

            if (state.pan && event.touches.length === 1 && state.scale > 1.01) {
                state.panX += event.touches[0].clientX - state.startX;
                state.panY += event.touches[0].clientY - state.startY;
                state.startX = event.touches[0].clientX;
                state.startY = event.touches[0].clientY;
                render();
                event.preventDefault();
            }
        }, { passive: false });

        modal.addEventListener('touchend', function (event) {
            if (state.pinch) {
                state.pinch = false;
                if (state.scale <= 1.01) reset();
                return;
            }

            if (state.pan) return;

            if (!event.changedTouches.length) return;
            var dx = event.changedTouches[0].clientX - state.startX;
            var dy = event.changedTouches[0].clientY - state.startY;
            if (Math.abs(dx) < 45 || Math.abs(dx) < Math.abs(dy) * 1.15 || state.scale > 1.01) return;

            var prev = modal.querySelector('.extenso-product-image-modal__prev');
            var next = modal.querySelector('.extenso-product-image-modal__next');
            if (dx < 0 && next && !next.hidden) next.click();
            if (dx > 0 && prev && !prev.hidden) prev.click();
        }, { passive: true });

        /* Double tap is a convenient secondary zoom gesture. */
        var lastTap = 0;
        image.addEventListener('touchend', function () {
            var now = Date.now();
            if (now - lastTap < 320) {
                if (state.scale > 1.01) reset();
                else { state.scale = 2; render(); }
            }
            lastTap = now;
        }, { passive: true });
    }

    function init() {
        if (!isMobile()) return;
        bindDirectPinchAndSwipe();
        bindModalTouch();
    }

    init();
    window.setTimeout(init, 150);
    window.setTimeout(init, 500);

    /* The modal is created lazily by the original viewer. Bind its touch
     * controls immediately after it is opened as well. */
    document.addEventListener('click', function () {
        if (isMobile()) window.setTimeout(bindModalTouch, 0);
    }, true);

    /* Prevent a swipe/pinch from falling through to the image-click opener. */
    document.addEventListener('click', function (event) {
        if (!isMobile() || Date.now() > suppressClickUntil) return;
        var imageLink = event.target.closest && event.target.closest(
            '.extenso-woocommerce.single-product .woocommerce-product-gallery__image > a'
        );
        if (imageLink) {
            event.preventDefault();
            event.stopImmediatePropagation();
        }
    }, true);
})();



/* ==========================================================
   V4.9.18 — COMMERCIAL LABEL HIERARCHY FINAL
   Green = standard commercial status; amber = Relâmpago;
   black = Black Friday. Only urgent campaigns receive a
   standout color. Promotion has no lightning icon.
   ========================================================== */
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--promo,
.extenso-woocommerce.single-product .extenso-commercial-badge--promo,
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--ready,
.extenso-woocommerce.single-product .extenso-commercial-badge--ready,
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--order,
.extenso-woocommerce.single-product .extenso-commercial-badge--order,
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--special,
.extenso-woocommerce.single-product .extenso-commercial-badge--special,
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--new,
.extenso-woocommerce.single-product .extenso-commercial-badge--new,
.extenso-woocommerce ul.products li.product .extenso-commercial-badge--launch,
.extenso-woocommerce.single-product .extenso-commercial-badge--launch {
    background: #159447 !important;
    color: #fff !important;
}

.extenso-woocommerce ul.products li.product .extenso-commercial-badge--flash,
.extenso-woocommerce.single-product .extenso-commercial-badge--flash {
    background: #F5B400 !important;
    color: #111 !important;
}

.extenso-woocommerce ul.products li.product .extenso-commercial-badge--blackfriday,
.extenso-woocommerce.single-product .extenso-commercial-badge--blackfriday {
    background: #000 !important;
    color: #fff !important;
}

/* Relâmpago is the only commercial label with the lightning icon. */
.extenso-commercial-badge--flash .extenso-promo-bolt {
    display: inline-flex !important;
    width: 8px !important;
    height: 12px !important;
    margin-left: 4px !important;
    align-items: center !important;
    justify-content: center !important;
    color: currentColor !important;
}
.extenso-commercial-badge--flash .extenso-promo-bolt svg {
    display: block !important;
    width: 8px !important;
    height: 12px !important;
    fill: currentColor !important;
}
/* Explicitly remove the old lightning icon from Promoção. */
.extenso-commercial-badge--promo .extenso-promo-bolt { display:none !important; }

/* Desktop category + vitrine: +1px. Mobile remains compact. */
@media (min-width: 768px) {
    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
        font-size: 10px !important;
    }
}
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-ready-badge,
    .extenso-woocommerce ul.products li.product .extenso-ready-badge--placeholder {
        font-size: 8px !important;
    }
}

/* ==========================================================
   V4.9.20 — PROMOÇÃO COM ÍCONE DE ETIQUETA
   Promotion keeps the standard green treatment but gains a
   discreet tag icon, matching the visual language of Relâmpago.
   ========================================================== */
.extenso-commercial-badge--promo .extenso-promo-tag {
    display: inline-flex !important;
    width: 12px !important;
    height: 12px !important;
    margin-left: 5px !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    color: currentColor !important;
}
.extenso-commercial-badge--promo .extenso-promo-tag svg {
    display: block !important;
    width: 12px !important;
    height: 12px !important;
    overflow: visible !important;
}

/* Product page uses the same compact icon proportion as the cards. */
.extenso-woocommerce.single-product .extenso-commercial-badge--promo .extenso-promo-tag {
    width: 12px !important;
    height: 12px !important;
    margin-left: 5px !important;
}
@media (max-width: 767px) {
    .extenso-commercial-badge--promo .extenso-promo-tag {
        width: 11px !important;
        height: 11px !important;
        margin-left: 4px !important;
    }
    .extenso-commercial-badge--promo .extenso-promo-tag svg {
        width: 11px !important;
        height: 11px !important;
    }
}

/* ==========================================================
   V4.9.20 — COMMERCIAL ICON SET
   Promotion = tag + %, Ready = box, Launch = rocket,
   Relâmpago = lightning, Special = star, New = sparkle,
   Black Friday = tag + %. Sob encomenda intentionally has
   no icon.
   ========================================================== */
.extenso-woocommerce ul.products li.product .extenso-commercial-badge,
.extenso-woocommerce.single-product .extenso-commercial-badge {
    gap: 5px !important;
}

.extenso-commercial-badge .extenso-commercial-badge__label {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
}

.extenso-commercial-badge .extenso-commercial-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 13px !important;
    height: 13px !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 13px !important;
    color: currentColor !important;
    line-height: 0 !important;
}

.extenso-commercial-badge .extenso-commercial-icon svg {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    overflow: visible !important;
}

.extenso-commercial-badge--promo .extenso-commercial-icon--tag-percent,
.extenso-commercial-badge--blackfriday .extenso-commercial-icon--tag-percent {
    width: 14px !important;
    height: 14px !important;
    flex-basis: 14px !important;
}

.extenso-commercial-badge--flash .extenso-commercial-icon--bolt {
    width: 9px !important;
    height: 13px !important;
    flex-basis: 9px !important;
}

.extenso-commercial-badge--ready .extenso-commercial-icon--box {
    width: 14px !important;
    height: 14px !important;
    flex-basis: 14px !important;
}

.extenso-commercial-badge--launch .extenso-commercial-icon--rocket {
    width: 14px !important;
    height: 14px !important;
    flex-basis: 14px !important;
}

/* Sob encomenda deliberately remains text-only. */
.extenso-commercial-badge--order .extenso-commercial-icon {
    display: none !important;
}

@media (max-width: 767px) {
    .extenso-commercial-badge .extenso-commercial-icon {
        width: 11px !important;
        height: 11px !important;
        flex-basis: 11px !important;
    }
    .extenso-commercial-badge--promo .extenso-commercial-icon--tag-percent,
    .extenso-commercial-badge--blackfriday .extenso-commercial-icon--tag-percent,
    .extenso-commercial-badge--ready .extenso-commercial-icon--box,
    .extenso-commercial-badge--launch .extenso-commercial-icon--rocket {
        width: 12px !important;
        height: 12px !important;
        flex-basis: 12px !important;
    }
    .extenso-commercial-badge--flash .extenso-commercial-icon--bolt {
        width: 8px !important;
        height: 11px !important;
        flex-basis: 8px !important;
    }
}

/* V4.9.24 — WhatsApp dos cards: somente o CTA do WhatsApp fica mais fino.
 * O botão Comprar permanece completamente inalterado.
 */
.extenso-woocommerce ul.products li.product a[href*="wa.me"],
.extenso-woocommerce ul.products li.product a[href*="whatsapp"],
.extenso-woocommerce ul.products li.product a.whatsapp,
.extenso-woocommerce ul.products li.product a.whatsapp-button,
.extenso-woocommerce ul.products li.product .whatsapp-button {
    min-height: 0 !important;
    height: auto !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product a[href*="wa.me"],
    .extenso-woocommerce ul.products li.product a[href*="whatsapp"],
    .extenso-woocommerce ul.products li.product a.whatsapp,
    .extenso-woocommerce ul.products li.product a.whatsapp-button,
    .extenso-woocommerce ul.products li.product .whatsapp-button {
        min-height: 0 !important;
        height: auto !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }
}


/* V4.9.25 — CATEGORY + VITRINE: compact only the WhatsApp CTA.
 * The orange Comprar button is intentionally untouched.
 * The vitrine plugin uses .extenso-vitrines-categorias, so this
 * selector is kept explicit to override the plugin card height.
 */
.extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a[href*="wa.me"],
.extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a[href*="whatsapp"],
.extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a.whatsapp,
.extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a.whatsapp-button,
.extenso-woocommerce.extenso-vitrines-categorias ul.products li.product .whatsapp-button,
.extenso-woocommerce ul.products li.product a[href*="wa.me"],
.extenso-woocommerce ul.products li.product a[href*="whatsapp"],
.extenso-woocommerce ul.products li.product a.whatsapp,
.extenso-woocommerce ul.products li.product a.whatsapp-button,
.extenso-woocommerce ul.products li.product .whatsapp-button {
    min-height: 0 !important;
    height: auto !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a[href*="wa.me"],
    .extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a[href*="whatsapp"],
    .extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a.whatsapp,
    .extenso-woocommerce.extenso-vitrines-categorias ul.products li.product a.whatsapp-button,
    .extenso-woocommerce.extenso-vitrines-categorias ul.products li.product .whatsapp-button,
    .extenso-woocommerce ul.products li.product a[href*="wa.me"],
    .extenso-woocommerce ul.products li.product a[href*="whatsapp"],
    .extenso-woocommerce ul.products li.product a.whatsapp,
    .extenso-woocommerce ul.products li.product a.whatsapp-button,
    .extenso-woocommerce ul.products li.product .whatsapp-button {
        min-height: 0 !important;
        height: auto !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }
}

/* V4.9.26 — SINGLE PRODUCT: aplica o mesmo afinamento de 5px
 * do WhatsApp aprovado nas categorias/vitrine.
 * Somente o CTA Comprar pelo WhatsApp é alterado.
 * O botão Comprar permanece congelado.
 */
.single-product .summary a[href*="wa.me"],
.single-product .summary a[href*="whatsapp"],
.single-product .summary a.whatsapp,
.single-product .summary a.whatsapp-button,
.single-product .summary a.extenso-whatsapp,
.single-product .summary a.extenso-whatsapp-button {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

@media (max-width: 767px) {
    .single-product .summary a[href*="wa.me"],
    .single-product .summary a[href*="whatsapp"],
    .single-product .summary a.whatsapp,
    .single-product .summary a.whatsapp-button,
    .single-product .summary a.extenso-whatsapp,
    .single-product .summary a.extenso-whatsapp-button {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }
}

/* V4.9.27 — SINGLE PRODUCT: compact only the voltage choice buttons.
 * The approved category/vitrine and WhatsApp styles remain frozen.
 * Only the 127V/220V selector receives 5px vertical internal spacing.
 */
.extenso-woocommerce.single-product .summary .extenso-voltage-option {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    box-sizing: border-box !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .summary .extenso-voltage-option {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
   EXTENSO 4.9.28 — CONTAINER DESKTOP 1250PX
   Container real para WooCommerce + páginas WordPress sem Elementor.

   O .site-main passa a ser o elemento estrutural da largura.
   O #content/#main acompanha 100% do container.
   Elementor permanece intocado.
   Mobile/tablet permanecem intocados.
   ========================================================== */
@media (min-width: 1025px) {
    /* Loja/categorias permanecem em 1250px. Produto recebe até 2000px. */
    body.extenso-woocommerce.woocommerce-shop:not(.elementor-page) .site-main,
    body.extenso-woocommerce.tax-product_cat:not(.elementor-page) .site-main,
    body.extenso-woocommerce.tax-product_tag:not(.elementor-page) .site-main {
        width: min(1250px, calc(100% - 40px)) !important;
        max-width: 1250px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    body.extenso-woocommerce.single-product .site-main {
        width: min(2000px, calc(100% - 40px)) !important;
        max-width: 2000px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    body.extenso-woocommerce.woocommerce-shop:not(.elementor-page) .site-main > #content,
    body.extenso-woocommerce.tax-product_cat:not(.elementor-page) .site-main > #content,
    body.extenso-woocommerce.tax-product_tag:not(.elementor-page) .site-main > #content,
    body.extenso-woocommerce.single-product:not(.elementor-page) .site-main > #content,
    body.extenso-woocommerce.single-product:not(.elementor-page) .site-main > #main {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Páginas e posts WordPress comuns sem Elementor */
    body.page:not(.elementor-page) .site-main,
    body.single:not(.elementor-page) .site-main {
        width: min(1250px, calc(100% - 40px)) !important;
        max-width: 1250px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    body.page:not(.elementor-page) .site-main > #content,
    body.page:not(.elementor-page) .site-main > #main,
    body.single:not(.elementor-page) .site-main > #content,
    body.single:not(.elementor-page) .site-main > #main {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
 * V4.9.31 — TÍTULO DO PRODUTO + SELO 5% OFF
 * Desktop: limita somente a largura do título para manter a quebra
 * alinhada com a coluna de compra/frete.
 * Mobile: título ocupa integralmente a largura disponível.
 * Categoria/vitrine: selo 5% OFF sobe exatamente 2px via regra final gerada pelo backend.
 * ========================================================== */
@media (min-width: 768px) {
    .extenso-woocommerce.single-product div.product .product_title,
    body.single-product .product_title,
    body.single-product h1.product_title {
        max-width: 585px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product .product_title,
    body.single-product .product_title,
    body.single-product h1.product_title {
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

.extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
.extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
    transform: none !important;
}

/* ==========================================================
 * V4.9.35 — SINGLE PRODUCT: COMPRAR AGORA ALINHADO AO WHATSAPP
 * O formulário de compra usa exatamente a mesma largura útil
 * já definida para o CTA WhatsApp. Assim, a borda direita do
 * Comprar agora coincide com a borda direita do WhatsApp em
 * desktop e mobile, sem alterar a largura do WhatsApp.
 * ========================================================== */
.extenso-woocommerce.single-product div.product form.cart {
    width: calc(100% - 43px) !important;
    max-width: calc(100% - 43px) !important;
    box-sizing: border-box !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product form.cart {
        width: calc(100% - 43px) !important;
        max-width: calc(100% - 43px) !important;
    }
}


/* V4.9.36 — MOBILE: selo 5% OFF sobe 9px para liberar o valor em reais. */
@media (max-width: 767px) {
    .extenso-woocommerce ul.products li.product .extenso-price-block--category .extenso-price-discount,
    .extenso-woocommerce .extenso-price-block--category .extenso-price-discount {
        top: -11px !important;
    }
}


/* ==========================================================
 * V4.9.37 — GALERIA DO PRODUTO: QUADRO FIXO 1:1 PARA VÍDEO
 * O viewport principal da galeria mantém exatamente a mesma
 * altura das imagens 1:1. Assim, ao trocar imagem por vídeo,
 * a coluna de compra e o conteúdo abaixo não mudam de posição.
 * O vídeo permanece inteiro dentro do quadro (contain).
 * ========================================================== */
.extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-viewport {
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
}

.extenso-woocommerce.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
    height: 100% !important;
}

.extenso-woocommerce.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image {
    height: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image > video,
.extenso-woocommerce.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image video,
.extenso-woocommerce.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-viewport {
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
    }
}


/* ==========================================================
 * V4.9.55 — POPUP PRAZO: CORPO EM 14px
 * Mantém título e demais elementos do modal inalterados.
 * ========================================================== */
.extenso-delivery-modal__body {
    font-size: 14px !important;
}

.extenso-delivery-modal__body p,
.extenso-delivery-modal__body li,
.extenso-delivery-modal__body td,
.extenso-delivery-modal__body th,
.extenso-delivery-modal__body span {
    font-size: 14px !important;
}

/* ==========================================================
 * V4.9.59 — SINGLE PRODUCT: EIXO DO WHATSAPP PARA PAGAMENTO + FRETE
 *
 * Correção estritamente visual e limitada ao resumo do produto em mobile.
 * O CTA WhatsApp já possui a largura aprovada de calc(100% - 43px).
 * Os blocos de pagamento e frete passam a usar a mesma caixa externa.
 *
 * Importante: nenhuma regra do popup de prazo é tocada. O popup usa
 * .extenso-delivery-modal / .extenso-delivery-modal__* e permanece intacto.
 * O conteúdo interno do pagamento também não é remodelado.
 * ========================================================== */
@media (max-width: 767px) {
    /* Cartão / Ver parcelas: mesma largura e mesmo eixo externo do WhatsApp. */
    .extenso-woocommerce.single-product .extenso-pagamentos--product {
        width: calc(100% - 43px) !important;
        max-width: calc(100% - 43px) !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Frete/CEP: corrige o segundo eixo interno que empurrava o conteúdo
     * para a direita e, em seguida, usava largura maior que a viewport. */
    .extenso-woocommerce.single-product .extenso-frete-container,
    .extenso-woocommerce.single-product .extenso-frete-block,
    .extenso-woocommerce.single-product .woocommerce-shipping-calculator {
        width: calc(100% - 43px) !important;
        max-width: calc(100% - 43px) !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================
 * V4.9.61 — SINGLE PRODUCT ATÉ 2000PX + TRUSTINDEX PRESERVADO
 * ========================================================== */
@media (min-width: 1025px) {
    body.single-product .site-main {
        width: min(2000px, calc(100% - 40px)) !important;
        max-width: 2000px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    body.single-product .site-main > #content,
    body.single-product .site-main > #main {
        width: 100% !important;
        max-width: none !important;
        box-sizing: border-box !important;
    }

    body.single-product .ti-widget,
    body.single-product .ti-widget-container,
    body.single-product [class*="ti-widget"] {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 767px) {
    body.single-product .ti-widget,
    body.single-product .ti-widget-container,
    body.single-product [class*="ti-widget"] {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================
 * V4.9.63 — CEP/FRETE: AJUSTE PONTUAL DE 15PX À ESQUERDA
 * Aplicado ao wrapper real descoberto no DOM do calculador de frete.
 * Não altera largura, conteúdo, eventos, pagamento ou o popup de prazo.
 * ========================================================== */
@media (max-width: 767px) {
    .extenso-woocommerce.single-product .extenso-cep-left-nudge {
        position: relative !important;
        left: -15px !important;
    }
}


/* ==========================================================
 * V4.9.64 — SINGLE IMAGE GALLERY FALLBACK STYLING
 * These rules apply only when the JS detects one featured image
 * and creates a single-item thumbnail strip. Other product-page
 * styles and galleries with multiple images remain unchanged.
 * ========================================================== */
@media (min-width: 768px) {
    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image {
        display: grid !important;
        grid-template-columns: 76px minmax(0, 1fr) !important;
        column-gap: 16px !important;
        align-items: start !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image > .woocommerce-product-gallery__wrapper {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image > .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image,
    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image > .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image > a {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image .extenso-single-image-carousel {
        grid-column: 1 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: 76px !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image .extenso-single-image-carousel li {
        display: block !important;
        width: 76px !important;
        height: 76px !important;
        margin: 0 !important;
        padding: 2px !important;
        box-sizing: border-box !important;
        border: 1px solid rgba(30, 35, 40, .18) !important;
        border-radius: 5px !important;
        overflow: hidden !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image .extenso-single-image-carousel img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        opacity: 1 !important;
        margin: 0 !important;
        cursor: default !important;
    }
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image {
        display: block !important;
        width: 100% !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image > .woocommerce-product-gallery__wrapper {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image .extenso-single-image-carousel {
        display: flex !important;
        flex-direction: row !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        width: 100% !important;
        margin: 12px 0 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image .extenso-single-image-carousel li {
        display: block !important;
        flex: 0 0 64px !important;
        width: 64px !important;
        height: 64px !important;
        margin: 0 !important;
        padding: 2px !important;
        box-sizing: border-box !important;
        border: 1px solid rgba(30, 35, 40, .18) !important;
        border-radius: 5px !important;
        overflow: hidden !important;
    }

    .extenso-woocommerce.single-product .woocommerce-product-gallery.extenso-gallery-single-image .extenso-single-image-carousel img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        opacity: 1 !important;
        margin: 0 !important;
    }
}


/* ==========================================================
 * V4.9.65 — MOBILE: UNIFICAR EIXO DOS BLOCOS DE COMPRA
 *
 * Objetivo: alinhar a borda esquerda e direita do formulário
 * Comprar agora, CTA WhatsApp e calculadora de frete às bordas
 * do bloco Cartão de crédito / Ver parcelas.
 *
 * Mantém a galeria, tipografia, alturas, cores e espaçamentos
 * verticais existentes. Correção somente de largura/alinhamento.
 * ========================================================== */
@media (max-width: 767px) {
    /* O resumo do produto define o eixo comum de todos os blocos. */
    body.single-product .summary,
    .extenso-woocommerce.single-product div.product .summary {
        box-sizing: border-box !important;
    }

    /* Comprar agora: remove o recuo horizontal antigo de 43px. */
    body.single-product .summary form.cart,
    .extenso-woocommerce.single-product div.product .summary form.cart {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* O CTA WhatsApp acompanha a mesma largura externa do cartão. */
    body.single-product .summary a[href*="wa.me"],
    body.single-product .summary a[href*="whatsapp"],
    body.single-product .summary a.whatsapp,
    body.single-product .summary a.whatsapp-button,
    body.single-product .summary a.extenso-whatsapp,
    body.single-product .summary a.extenso-whatsapp-button,
    .extenso-woocommerce.single-product .summary a[href*="wa.me"],
    .extenso-woocommerce.single-product .summary a[href*="whatsapp"],
    .extenso-woocommerce.single-product .summary a.whatsapp,
    .extenso-woocommerce.single-product .summary a.whatsapp-button,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Pagamentos são a referência do eixo: não deslocar nem encolher. */
    body.single-product .summary .extenso-pagamentos--product,
    .extenso-woocommerce.single-product .summary .extenso-pagamentos--product {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Frete: remove o deslocamento JS anterior de 15px e iguala a largura. */
    body.single-product .summary .extenso-cep-left-nudge,
    .extenso-woocommerce.single-product .summary .extenso-cep-left-nudge {
        position: relative !important;
        left: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    body.single-product .summary .extenso-frete-container,
    body.single-product .summary .extenso-frete-block,
    body.single-product .summary .woocommerce-shipping-calculator,
    body.single-product .summary [class*="extenso-frete"],
    body.single-product .summary [class*="frete"],
    .extenso-woocommerce.single-product .summary .extenso-frete-container,
    .extenso-woocommerce.single-product .summary .extenso-frete-block,
    .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .summary [class*="extenso-frete"],
    .extenso-woocommerce.single-product .summary [class*="frete"] {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
 * V4.9.66 — MOBILE: MESMO EIXO VISUAL DOS BLOCOS DE COMPRA
 * Referência visual: linha externa do bloco Cartão de crédito /
 * Ver parcelas. Ajuste focado no resumo do produto em celular.
 * ========================================================== */
@media (max-width: 767px) {
    /* Formulário completo (quantidade + Comprar agora) */
    body.single-product .summary form.cart,
    .extenso-woocommerce.single-product div.product .summary form.cart {
        width: calc(100% + 45px) !important;
        max-width: calc(100% + 45px) !important;
        margin-left: 0 !important;
        margin-right: -45px !important;
        box-sizing: border-box !important;
    }

    /* Faz o botão principal aproveitar a largura livre do formulário. */
    body.single-product .summary form.cart .single_add_to_cart_button,
    .extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button {
        min-width: 0 !important;
        flex: 1 1 auto !important;
        box-sizing: border-box !important;
    }

    /* WhatsApp termina na mesma vertical que o bloco de pagamento. */
    body.single-product .summary a[href*="wa.me"],
    body.single-product .summary a[href*="whatsapp"],
    body.single-product .summary a.whatsapp,
    body.single-product .summary a.whatsapp-button,
    body.single-product .summary a.extenso-whatsapp,
    body.single-product .summary a.extenso-whatsapp-button,
    .extenso-woocommerce.single-product .summary a[href*="wa.me"],
    .extenso-woocommerce.single-product .summary a[href*="whatsapp"],
    .extenso-woocommerce.single-product .summary a.whatsapp,
    .extenso-woocommerce.single-product .summary a.whatsapp-button,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
        width: calc(100% + 45px) !important;
        max-width: calc(100% + 45px) !important;
        margin-left: 0 !important;
        margin-right: -45px !important;
        box-sizing: border-box !important;
    }

    /* Mantém pagamento como referência sem alterar seu conteúdo. */
    body.single-product .summary .extenso-pagamentos--product,
    .extenso-woocommerce.single-product .summary .extenso-pagamentos--product {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* A área de frete estava deslocada para a direita.
       Reposiciona o wrapper e limita sua largura à linha de pagamento. */
    body.single-product .summary .extenso-cep-left-nudge,
    .extenso-woocommerce.single-product .summary .extenso-cep-left-nudge {
        left: -19px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: calc(100% + 45px) !important;
        max-width: calc(100% + 45px) !important;
        box-sizing: border-box !important;
    }

    body.single-product .summary .extenso-frete-container,
    body.single-product .summary .extenso-frete-block,
    body.single-product .summary .woocommerce-shipping-calculator,
    body.single-product .summary [class*="extenso-frete"],
    body.single-product .summary [class*="frete"],
    .extenso-woocommerce.single-product .summary .extenso-frete-container,
    .extenso-woocommerce.single-product .summary .extenso-frete-block,
    .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .summary [class*="extenso-frete"],
    .extenso-woocommerce.single-product .summary [class*="frete"] {
        width: calc(100% + 45px) !important;
        max-width: calc(100% + 45px) !important;
        margin-left: -19px !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
 * V4.9.67 — MOBILE: UM ÚNICO EIXO HORIZONTAL
 * Referência: bordas do bloco Cartão de crédito / Ver parcelas.
 * Igualar as caixas externas; não dimensionar elementos internos
 * do frete individualmente.
 * ========================================================== */
@media (max-width: 767px) {
    body.single-product .summary .extenso-pagamentos--product,
    .extenso-woocommerce.single-product .summary .extenso-pagamentos--product,
    body.single-product .summary form.cart,
    .extenso-woocommerce.single-product .summary form.cart,
    body.single-product .summary a[href*="wa.me"],
    body.single-product .summary a[href*="whatsapp"],
    body.single-product .summary a.whatsapp,
    body.single-product .summary a.whatsapp-button,
    body.single-product .summary a.extenso-whatsapp,
    body.single-product .summary a.extenso-whatsapp-button,
    .extenso-woocommerce.single-product .summary a[href*="wa.me"],
    .extenso-woocommerce.single-product .summary a[href*="whatsapp"],
    .extenso-woocommerce.single-product .summary a.whatsapp,
    .extenso-woocommerce.single-product .summary a.whatsapp-button,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Mantém o formulário em linha: quantidade + Comprar agora. */
    body.single-product .summary form.cart,
    .extenso-woocommerce.single-product .summary form.cart {
        display: flex !important;
        align-items: stretch !important;
        gap: 10px !important;
    }

    body.single-product .summary form.cart .quantity,
    .extenso-woocommerce.single-product .summary form.cart .quantity {
        flex: 0 0 132px !important;
        max-width: 132px !important;
        box-sizing: border-box !important;
    }

    body.single-product .summary form.cart .single_add_to_cart_button,
    .extenso-woocommerce.single-product .summary form.cart .single_add_to_cart_button {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* WhatsApp usa exatamente a caixa externa do pagamento. */
    body.single-product .summary a[href*="wa.me"],
    body.single-product .summary a[href*="whatsapp"],
    body.single-product .summary a.whatsapp,
    body.single-product .summary a.whatsapp-button,
    body.single-product .summary a.extenso-whatsapp,
    body.single-product .summary a.extenso-whatsapp-button,
    .extenso-woocommerce.single-product .summary a[href*="wa.me"],
    .extenso-woocommerce.single-product .summary a[href*="whatsapp"],
    .extenso-woocommerce.single-product .summary a.whatsapp,
    .extenso-woocommerce.single-product .summary a.whatsapp-button,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp,
    .extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
        display: flex !important;
        justify-content: center !important;
    }

    /* Remove o nudge de versões anteriores e alinha o wrapper de frete. */
    body.single-product .summary .extenso-cep-left-nudge,
    .extenso-woocommerce.single-product .summary .extenso-cep-left-nudge {
        position: relative !important;
        left: 0 !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Se houver um contêiner imediato em volta do elemento marcado,
       ele compartilha o mesmo eixo externo dos demais blocos. */
    body.single-product .summary :has(> .extenso-cep-left-nudge),
    .extenso-woocommerce.single-product .summary :has(> .extenso-cep-left-nudge) {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Normaliza somente os wrappers conhecidos do frete.
       Não força largura nos elementos internos (texto, ícone, CEP). */
    body.single-product .summary > .extenso-frete-container,
    body.single-product .summary > .extenso-frete-block,
    body.single-product .summary > .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .summary > .extenso-frete-container,
    .extenso-woocommerce.single-product .summary > .extenso-frete-block,
    .extenso-woocommerce.single-product .summary > .woocommerce-shipping-calculator {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
 * V4.9.68 — ALINHAMENTO DOS BLOCOS PELO EIXO DO PAGAMENTO
 * Corrige o desalinhamento visto nas capturas em desktop/tablet
 * e mobile. O bloco de pagamento define a largura de referência.
 * Não altera a galeria, o preço, o título nem o conteúdo dos botões.
 * ========================================================== */
body.single-product .summary .extenso-pagamentos--product,
.extenso-woocommerce.single-product .summary .extenso-pagamentos--product {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* Todos os elementos externos usam o mesmo eixo do resumo. */
body.single-product .summary form.cart,
.extenso-woocommerce.single-product .summary form.cart,
body.single-product .summary a[href*="wa.me"],
body.single-product .summary a[href*="whatsapp"],
body.single-product .summary a.whatsapp,
body.single-product .summary a.whatsapp-button,
body.single-product .summary a.extenso-whatsapp,
body.single-product .summary a.extenso-whatsapp-button,
.extenso-woocommerce.single-product .summary a[href*="wa.me"],
.extenso-woocommerce.single-product .summary a[href*="whatsapp"],
.extenso-woocommerce.single-product .summary a.whatsapp,
.extenso-woocommerce.single-product .summary a.whatsapp-button,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* Quantidade e CTA continuam lado a lado; o CTA ocupa o espaço restante. */
body.single-product .summary form.cart,
.extenso-woocommerce.single-product .summary form.cart {
    display: flex !important;
    align-items: stretch !important;
    gap: 10px !important;
}

body.single-product .summary form.cart .quantity,
.extenso-woocommerce.single-product .summary form.cart .quantity {
    flex: 0 0 132px !important;
    width: 132px !important;
    max-width: 132px !important;
    box-sizing: border-box !important;
}

body.single-product .summary form.cart .single_add_to_cart_button,
.extenso-woocommerce.single-product .summary form.cart .single_add_to_cart_button {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* WhatsApp deve coincidir com a borda externa do pagamento. */
body.single-product .summary a[href*="wa.me"],
body.single-product .summary a[href*="whatsapp"],
body.single-product .summary a.whatsapp,
body.single-product .summary a.whatsapp-button,
body.single-product .summary a.extenso-whatsapp,
body.single-product .summary a.extenso-whatsapp-button,
.extenso-woocommerce.single-product .summary a[href*="wa.me"],
.extenso-woocommerce.single-product .summary a[href*="whatsapp"],
.extenso-woocommerce.single-product .summary a.whatsapp,
.extenso-woocommerce.single-product .summary a.whatsapp-button,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp,
.extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
    display: flex !important;
    justify-content: center !important;
}

/* Freight: reset previous nudge and size only the outer freight wrappers.
   Do not force width on internal labels/CEP/input elements. */
body.single-product .summary .extenso-cep-left-nudge,
.extenso-woocommerce.single-product .summary .extenso-cep-left-nudge {
    position: static !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

body.single-product .summary .extenso-frete-container,
body.single-product .summary .extenso-frete-block,
body.single-product .summary .woocommerce-shipping-calculator,
body.single-product .summary [class*="extenso-frete"],
body.single-product .summary [class*="frete"],
body.single-product .summary [class*="shipping-calculator"],
.extenso-woocommerce.single-product .summary .extenso-frete-container,
.extenso-woocommerce.single-product .summary .extenso-frete-block,
.extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator,
.extenso-woocommerce.single-product .summary [class*="extenso-frete"],
.extenso-woocommerce.single-product .summary [class*="frete"],
.extenso-woocommerce.single-product .summary [class*="shipping-calculator"] {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* If the JS-added marker sits inside a freight row, normalize its parent
   outer box too, while leaving the row's internal flex layout untouched. */
body.single-product .summary :has(> .extenso-cep-left-nudge),
.extenso-woocommerce.single-product .summary :has(> .extenso-cep-left-nudge) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}


/* ==========================================================
 * V4.9.69 — AJUSTE PONTUAL DO BLOCO CEP/FRETE
 * O restante dos blocos já está alinhado e fica intocado.
 * O contêiner externo do frete fica ligeiramente mais estreito,
 * com recuo interno à esquerda, conforme a referência aprovada.
 * Não altera o campo/valor do CEP nem os botões de compra.
 * ========================================================== */
@media (max-width: 767px) {
    body.single-product .summary .extenso-cep-left-nudge,
    .extenso-woocommerce.single-product .summary .extenso-cep-left-nudge {
        position: static !important;
        left: auto !important;
        transform: none !important;
        width: calc(100% - 20px) !important;
        max-width: calc(100% - 20px) !important;
        margin-left: 14px !important;
        margin-right: 6px !important;
        box-sizing: border-box !important;
    }

    body.single-product .summary .extenso-frete-container,
    body.single-product .summary .extenso-frete-block,
    body.single-product .summary .woocommerce-shipping-calculator,
    body.single-product .summary [class*="extenso-frete"],
    body.single-product .summary [class*="frete"],
    body.single-product .summary [class*="shipping-calculator"],
    .extenso-woocommerce.single-product .summary .extenso-frete-container,
    .extenso-woocommerce.single-product .summary .extenso-frete-block,
    .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator,
    .extenso-woocommerce.single-product .summary [class*="extenso-frete"],
    .extenso-woocommerce.single-product .summary [class*="frete"],
    .extenso-woocommerce.single-product .summary [class*="shipping-calculator"] {
        width: calc(100% - 20px) !important;
        max-width: calc(100% - 20px) !important;
        margin-left: 14px !important;
        margin-right: 6px !important;
        box-sizing: border-box !important;
    }

    /* Neutraliza o ajuste genérico do pai introduzido na versão anterior
       apenas quando esse pai contém a linha de frete. */
    body.single-product .summary :has(> .extenso-cep-left-nudge),
    .extenso-woocommerce.single-product .summary :has(> .extenso-cep-left-nudge) {
        width: calc(100% - 20px) !important;
        max-width: calc(100% - 20px) !important;
        margin-left: 14px !important;
        margin-right: 6px !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
 * V4.9.70 — CEP/FRETE: ALVO DIRETO, SEM DEPENDER DO BODY/SUMMARY
 * O JavaScript identifica o wrapper real e adiciona
 * .extenso-cep-left-nudge. Estilizar essa classe diretamente evita
 * que o ajuste falhe por diferenças na estrutura de containers.
 * ========================================================== */
@media (max-width: 767px) {
    .extenso-cep-left-nudge {
        position: relative !important;
        left: 0 !important;
        right: auto !important;
        transform: none !important;
        width: calc(100% - 20px) !important;
        min-width: 0 !important;
        max-width: calc(100% - 20px) !important;
        margin-left: 14px !important;
        margin-right: 6px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* The row around the marked element can control the horizontal rule.
       Align only its direct parent, not every ancestor of the product summary. */
    :is(.single-product, .extenso-woocommerce) .summary :has(> .extenso-cep-left-nudge) {
        width: calc(100% - 20px) !important;
        min-width: 0 !important;
        max-width: calc(100% - 20px) !important;
        margin-left: 14px !important;
        margin-right: 6px !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================
 * V4.9.71 — FRETE: REDUZIR 20px E MANTER A BORDA DIREITA
 * A linha externa é o pai do wrapper marcado pelo JS.
 * Encolhe somente esse pai 20px e desloca-o 20px para a direita;
 * o wrapper interno volta a 100% para evitar redução dupla.
 * Os demais blocos permanecem inalterados.
 * ========================================================== */
@media (max-width: 767px) {
    body.single-product .summary :has(> .extenso-cep-left-nudge),
    .extenso-woocommerce.single-product .summary :has(> .extenso-cep-left-nudge),
    :is(.single-product, .extenso-woocommerce) .summary :has(> .extenso-cep-left-nudge) {
        width: calc(100% - 20px) !important;
        min-width: 0 !important;
        max-width: calc(100% - 20px) !important;
        margin-left: 20px !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    .extenso-cep-left-nudge {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }
}



/* V4.9.74 — Descrição curta: identidade visual Extenso no editor e no modal.
   O CSS fica no tema, não dentro do conteúdo do campo excerpt. */
.extenso-delivery-modal__body .extenso-descricao-produto,
.extenso-product-editor-preview .extenso-descricao-produto {
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #444a51 !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto h2,
.extenso-product-editor-preview .extenso-descricao-produto h2 {
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
    color: #182b49 !important;
    letter-spacing: -0.2px !important;
    border-bottom: 1px solid #ececec !important;
    padding-bottom: 9px !important;
    margin: 0 0 12px !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto .extenso-abertura,
.extenso-product-editor-preview .extenso-descricao-produto .extenso-abertura {
    background: #fff7f2 !important;
    border-left: 3px solid #ff5a0a !important;
    color: #3f454c !important;
    font-size: 14.5px !important;
    line-height: 1.7 !important;
    padding: 18px 20px !important;
    border-radius: 0 6px 6px 0 !important;
    margin-bottom: 26px !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto .extenso-secao,
.extenso-product-editor-preview .extenso-descricao-produto .extenso-secao { margin-bottom: 27px !important; }
.extenso-delivery-modal__body .extenso-descricao-produto .extenso-importante,
.extenso-product-editor-preview .extenso-descricao-produto .extenso-importante {
    margin-top: 28px !important; padding: 16px 18px !important;
    border: 1px solid #f1dfd4 !important; border-left: 3px solid #ff5a0a !important;
    border-radius: 6px !important; background: #fff8f4 !important;
    font-size: 13px !important; line-height: 1.65 !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto .extenso-importante h2,
.extenso-product-editor-preview .extenso-descricao-produto .extenso-importante h2 {
    font-size: 16px !important; margin-bottom: 8px !important;
    padding-bottom: 0 !important; border-bottom: 0 !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela {
    display: table !important; width: max-content !important; max-width: none !important;
    margin: 0 !important; border: none !important; border-collapse: collapse !important;
    border-spacing: 0 !important; table-layout: auto !important;
    font-size: 13px !important; line-height: 1.5 !important; background: transparent !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela th,
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela td,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela th,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela td {
    display: table-cell !important; padding: 12px 14px !important; border: none !important;
    text-align: left !important; vertical-align: middle !important; white-space: nowrap !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela thead th,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela thead th {
    background: #eeeeef !important; color: #182b49 !important; font-weight: 600 !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(odd) th,
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(odd) td,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(odd) th,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(odd) td { background: #f0f1f2 !important; }
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(even) th,
.extenso-delivery-modal__body .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(even) td,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(even) th,
.extenso-product-editor-preview .extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(even) td { background: #fff !important; }
.extenso-delivery-modal__body .extenso-descricao-produto .extenso-tabela-scroll,
.extenso-product-editor-preview .extenso-descricao-produto .extenso-tabela-scroll {
    display:block !important; width:100% !important; max-width:100% !important;
    overflow-x:auto !important; overflow-y:hidden !important; -webkit-overflow-scrolling:touch !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto .extenso-descricao-grid,
.extenso-product-editor-preview .extenso-descricao-produto .extenso-descricao-grid {
    display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important; gap:38px !important; align-items:start !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto h2::before,
.extenso-product-editor-preview .extenso-descricao-produto h2::before {
    content:"" !important; display:inline-block !important; width:4px !important; height:17px !important;
    margin-right:9px !important; vertical-align:-2px !important; border-radius:3px !important; background:#ff5a0a !important;
}
.extenso-delivery-modal__body .extenso-descricao-produto li::marker,
.extenso-product-editor-preview .extenso-descricao-produto li::marker { color:#ff5a0a !important; }
@media (max-width:767px) {
 .extenso-delivery-modal__body .extenso-descricao-produto .extenso-descricao-grid,
 .extenso-product-editor-preview .extenso-descricao-produto .extenso-descricao-grid { grid-template-columns:minmax(0,1fr) !important; gap:0 !important; }
 .extenso-delivery-modal__body .extenso-descricao-produto h2,
 .extenso-product-editor-preview .extenso-descricao-produto h2 { font-size:17px !important; }
 .extenso-delivery-modal__body .extenso-descricao-produto .extenso-abertura,
 .extenso-product-editor-preview .extenso-descricao-produto .extenso-abertura { padding:15px 16px !important; font-size:14px !important; }
}



/* =========================================================
   EXTENSO MÁQUINAS — DESCRIÇÃO DO PRODUTO
   Visual moderno • Gutenberg • Responsivo
   ========================================================= */


.extenso-descricao-produto {
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.6;
    color: #444a51;
    -webkit-font-smoothing: antialiased;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}


.extenso-descricao-produto *,
.extenso-descricao-produto *::before,
.extenso-descricao-produto *::after {
    box-sizing: border-box;
}


/* ABERTURA */


.extenso-descricao-produto .extenso-abertura {
    margin-bottom: 26px;
    padding: 18px 20px;
    background: #fff7f2;
    border-left: 3px solid #ff5a0a;
    border-radius: 0 6px 6px 0;
    font-size: 14.5px;
    line-height: 1.7;
    color: #3f454c;
}


/* SEÇÕES */


.extenso-descricao-produto .extenso-secao {
    margin-bottom: 27px;
    min-width: 0;
}


.extenso-descricao-produto h2 {
    margin: 0 0 12px;
    padding-bottom: 9px;
    border-bottom: 1px solid #ececec;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 650;
    color: #252a30;
    letter-spacing: -0.2px;
}


.extenso-descricao-produto h2::before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 17px;
    margin-right: 9px;
    vertical-align: -2px;
    border-radius: 3px;
    background: #ff5a0a;
}


.extenso-descricao-produto p {
    margin: 0 0 12px;
}


.extenso-descricao-produto p:last-child {
    margin-bottom: 0;
}


.extenso-descricao-produto strong {
    font-weight: 650;
    color: #30353b;
}


.extenso-descricao-produto ul {
    margin: 8px 0 12px;
    padding-left: 20px;
}


.extenso-descricao-produto li {
    margin-bottom: 6px;
    padding-left: 2px;
}


.extenso-descricao-produto li::marker {
    color: #ff5a0a;
}


/* GRADE RESPONSIVA */


.extenso-descricao-produto .extenso-descricao-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 38px;
    align-items: start;
}


/* =========================================================
   TABELAS
   A rolagem horizontal fica restrita ao contêiner da tabela.
   As medidas não podem quebrar em várias linhas.
   ========================================================= */


.extenso-descricao-produto .extenso-tabela-scroll {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #c7c7c7 #f3f3f3;
}


.extenso-descricao-produto .extenso-tabela-scroll::-webkit-scrollbar {
    height: 7px;
}


.extenso-descricao-produto .extenso-tabela-scroll::-webkit-scrollbar-track {
    background: #f3f3f3;
    border-radius: 6px;
}


.extenso-descricao-produto .extenso-tabela-scroll::-webkit-scrollbar-thumb {
    background: #c7c7c7;
    border-radius: 6px;
}


/* ESTILO GERAL DAS TABELAS */


.extenso-descricao-produto table.extenso-tabela {
    display: table !important;
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
    border: none !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    table-layout: auto !important;
    font-size: 13px;
    line-height: 1.5;
    background: transparent !important;
}


/* INFORMAÇÕES TÉCNICAS */


.extenso-descricao-produto table.extenso-tabela-tecnica {
    min-width: 390px !important;
}


/* DIMENSÕES DAS CAIXAS
   Largura mínima para acomodar as quatro colunas.
   Nenhuma medida será dividida em duas linhas. */


.extenso-descricao-produto table.extenso-tabela-dimensoes {
    min-width: 680px !important;
}


/* CÉLULAS */


.extenso-descricao-produto table.extenso-tabela th,
.extenso-descricao-produto table.extenso-tabela td {
    display: table-cell !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 12px 14px !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    text-align: left !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}


/* MANTÉM OS VALORES TÉCNICOS EM UMA ÚNICA LINHA */


.extenso-descricao-produto table.extenso-tabela-tecnica td,
.extenso-descricao-produto table.extenso-tabela-dimensoes th,
.extenso-descricao-produto table.extenso-tabela-dimensoes td {
    white-space: nowrap !important;
}


/* PRIMEIRA COLUNA DA TABELA DE DIMENSÕES */


.extenso-descricao-produto table.extenso-tabela-dimensoes th:first-child {
    min-width: 150px !important;
}


/* LARGURA MÍNIMA DAS COLUNAS DE TAMANHOS */


.extenso-descricao-produto table.extenso-tabela-dimensoes th:not(:first-child),
.extenso-descricao-produto table.extenso-tabela-dimensoes td {
    min-width: 170px !important;
}


/* CABEÇALHO */


.extenso-descricao-produto table.extenso-tabela thead th {
    background: #eeeeef !important;
    color: #252a30 !important;
    font-weight: 600 !important;
}


/* FUNDOS ALTERNADOS */


.extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(odd) th,
.extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(odd) td {
    background: #f0f1f2 !important;
}


.extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(even) th,
.extenso-descricao-produto table.extenso-tabela tbody tr:nth-child(even) td {
    background: #ffffff !important;
}


/* BLOCO IMPORTANTE */


.extenso-descricao-produto .extenso-importante {
    margin-top: 28px;
    padding: 16px 18px;
    border: 1px solid #f1dfd4;
    border-left: 3px solid #ff5a0a;
    border-radius: 6px;
    background: #fff8f4;
    font-size: 13px;
    line-height: 1.65;
}


.extenso-descricao-produto .extenso-importante h2 {
    margin-bottom: 8px;
    padding-bottom: 0;
    border-bottom: 0;
    font-size: 16px;
}


.extenso-descricao-produto .extenso-importante h2::before {
    height: 15px;
}


/* TABLET */


@media (max-width: 900px) {
    .extenso-descricao-produto .extenso-descricao-grid {
        gap: 25px;
    }
}


/* CELULAR */


@media (max-width: 767px) {
    .extenso-descricao-produto {
        font-size: 14px;
        line-height: 1.65;
    }


    .extenso-descricao-produto .extenso-abertura {
        padding: 15px 16px;
        font-size: 14px;
        margin-bottom: 23px;
    }


    .extenso-descricao-produto h2 {
        font-size: 17px;
        margin-bottom: 10px;
    }


    .extenso-descricao-produto .extenso-secao {
        margin-bottom: 24px;
    }


    .extenso-descricao-produto .extenso-descricao-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }


    .extenso-descricao-produto .extenso-tabela-scroll {
        margin-top: 10px;
    }


    .extenso-descricao-produto table.extenso-tabela th,
    .extenso-descricao-produto table.extenso-tabela td {
        padding: 10px 9px !important;
    }


    .extenso-descricao-produto .extenso-importante {
        padding: 13px 15px;
        font-size: 13px;
    }
}



/* ==========================================================
 * V4.9.85 — GALERIA COM JANELA DE 6 MINIATURAS E SETAS
 * As miniaturas além da sexta ficam acessíveis rolando a coluna.
 * ========================================================== */
@media (min-width: 768px) {
    .extenso-woocommerce.single-product .woocommerce-product-gallery .extenso-thumb-nav {
        position: absolute !important;
        left: 17px !important;
        z-index: 30 !important;
        width: 42px !important;
        height: 26px !important;
        padding: 0 !important;
        border: 1px solid #dedede !important;
        border-radius: 6px !important;
        background: rgba(255,255,255,.96) !important;
        color: #263445 !important;
        font-size: 20px !important;
        line-height: 22px !important;
        text-align: center !important;
        cursor: pointer !important;
        box-shadow: 0 2px 6px rgba(0,0,0,.08) !important;
    }
    .extenso-woocommerce.single-product .woocommerce-product-gallery .extenso-thumb-nav-up {
        top: 0 !important;
    }
    .extenso-woocommerce.single-product .woocommerce-product-gallery .extenso-thumb-nav-down {
        top: 532px !important;
    }
    .extenso-woocommerce.single-product .woocommerce-product-gallery .extenso-thumb-nav:disabled {
        opacity: .32 !important;
        cursor: default !important;
    }
}
@media (max-width: 767px) {
    .extenso-woocommerce.single-product .woocommerce-product-gallery .extenso-thumb-nav {
        display: none !important;
    }
    .extenso-woocommerce.single-product .woocommerce-product-gallery .flex-control-thumbs {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        margin-top: 12px !important;
        margin-bottom: 0 !important;
    }
}


/* V4.9.89 — PRAZO: alinhar ícone e texto ao eixo do ícone e texto do frete.
 * Ajuste apenas visual; não altera cálculo, eventos ou modal.
 */
.extenso-woocommerce.single-product .extenso-delivery-trigger-wrap {
    margin-left: 10px !important;
}
.extenso-woocommerce.single-product .extenso-delivery-trigger {
    gap: 17px !important;
}


/* V4.9.91 — MOBILE: QUANTIDADE + COMPRAR NA PRIMEIRA LINHA,
   WHATSAPP NA LINHA ABAIXO. Mantém a posição visual solicitada. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product div.product form.cart {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    column-gap: 12px !important;
    row-gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product form.cart .quantity {
    display: inline-flex !important;
    flex: 0 0 30% !important;
    width: 30% !important;
    max-width: 30% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    display: inline-flex !important;
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product form.cart .quantity .qty {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product a.whatsapp,
  .extenso-woocommerce.single-product div.product a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .whatsapp-button {
    display: flex !important;
    flex: 0 0 100% !important;
    order: 3 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}


/* V4.9.92 — RESPONSIVIDADE REFINADA DOS BOTÕES DE COMPRA
   Mantém quantidade + Comprar agora lado a lado e WhatsApp abaixo.
   As larguras são flexíveis para celulares estreitos e largos. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product div.product form.cart {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product form.cart .quantity {
    flex: 0 1 30% !important;
    width: 30% !important;
    max-width: 30% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product form.cart .quantity .qty {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: calc(70% - 10px) !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: clamp(8px, 3vw, 18px) !important;
    padding-right: clamp(8px, 3vw, 18px) !important;
    font-size: clamp(12px, 3.6vw, 15px) !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product div.product form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product form.cart a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product form.cart a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product form.cart .whatsapp-button,
  .extenso-woocommerce.single-product div.product a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product a.whatsapp,
  .extenso-woocommerce.single-product div.product a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .whatsapp-button {
    flex: 0 0 100% !important;
    order: 3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: clamp(12px, 3.5vw, 14px) !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 380px) {
  .extenso-woocommerce.single-product div.product form.cart {
    gap: 8px !important;
  }
  .extenso-woocommerce.single-product div.product form.cart .quantity {
    flex-basis: 28% !important;
    width: 28% !important;
    max-width: 28% !important;
  }
  .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    max-width: calc(72% - 8px) !important;
    font-size: 12px !important;
    gap: 5px !important;
  }
}


/* V4.9.93 — REDUZIR 20% DA LARGURA VISUAL DOS TRÊS CONTROLES
   Preserva a ordem: quantidade + Comprar agora; WhatsApp abaixo.
   Centraliza o WhatsApp no espaço útil sem alterar funcionalidades. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product div.product form.cart .quantity {
    flex: 0 0 24% !important; /* 20% menor que os 30% anteriores */
    width: 24% !important;
    max-width: 24% !important;
  }

  .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    flex: 0 1 56% !important; /* 20% menor que a área de 70% anterior */
    width: 56% !important;
    max-width: 56% !important;
  }

  .extenso-woocommerce.single-product div.product form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product form.cart a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product form.cart a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product form.cart .whatsapp-button,
  .extenso-woocommerce.single-product div.product a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product a.whatsapp,
  .extenso-woocommerce.single-product div.product a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .whatsapp-button {
    flex: 0 1 80% !important;
    width: 80% !important;
    max-width: 80% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 380px) {
  .extenso-woocommerce.single-product div.product form.cart .quantity {
    flex-basis: 22.4% !important;
    width: 22.4% !important;
    max-width: 22.4% !important;
  }
  .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    flex-basis: 52% !important;
    width: 52% !important;
    max-width: 52% !important;
  }
  .extenso-woocommerce.single-product div.product a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product a.whatsapp,
  .extenso-woocommerce.single-product div.product a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .whatsapp-button {
    flex-basis: 80% !important;
    width: 80% !important;
    max-width: 80% !important;
  }
}


/* V4.9.94 — WhatsApp centralizado na tela e Comprar agora +20% */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    flex-basis: 67.2% !important; /* 56% + 20% */
    width: 67.2% !important;
    max-width: 67.2% !important;
  }

  .extenso-woocommerce.single-product div.product a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product a.whatsapp,
  .extenso-woocommerce.single-product div.product a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .whatsapp-button {
    display: flex !important;
    flex: 0 1 80% !important;
    width: 80% !important;
    max-width: 80% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-self: center !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }
}
@media (max-width: 380px) {
  .extenso-woocommerce.single-product div.product form.cart .single_add_to_cart_button {
    flex-basis: 62.4% !important; /* 52% + 20% */
    width: 62.4% !important;
    max-width: 62.4% !important;
  }
}


/* V4.9.95 — AUDITORIA RESPONSIVA DA PÁGINA DE PRODUTO
 * Mantém congelados tamanho/posição dos botões já aprovados.
 * Única mudança visual nos botões: WhatsApp deslocado 20px à esquerda.
 */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product div.product a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product a[href*="api.whatsapp.com"],
  .extenso-woocommerce.single-product div.product a[href*="whatsapp.com/send"],
  .extenso-woocommerce.single-product div.product a.whatsapp,
  .extenso-woocommerce.single-product div.product a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .whatsapp-button {
    transform: translateX(-20px) !important;
  }

  /* Impede que o layout principal ou as colunas imponham largura à viewport. */
  html:has(body.extenso-woocommerce.single-product),
  body.extenso-woocommerce.single-product {
    max-width: 100% !important;
    overflow-x: clip !important;
  }
  body.extenso-woocommerce.single-product #page,
  body.extenso-woocommerce.single-product #content,
  body.extenso-woocommerce.single-product .site-content,
  body.extenso-woocommerce.single-product .content-area,
  body.extenso-woocommerce.single-product .site-main,
  body.extenso-woocommerce.single-product .woocommerce,
  body.extenso-woocommerce.single-product div.product,
  body.extenso-woocommerce.single-product div.product .summary,
  body.extenso-woocommerce.single-product div.product .woocommerce-product-gallery,
  body.extenso-woocommerce.single-product .elementor,
  body.extenso-woocommerce.single-product .elementor-section,
  body.extenso-woocommerce.single-product .elementor-container,
  body.extenso-woocommerce.single-product .elementor-column,
  body.extenso-woocommerce.single-product .elementor-widget-wrap,
  body.extenso-woocommerce.single-product .elementor-widget,
  body.extenso-woocommerce.single-product .elementor-widget-container {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Imagens, vídeos e embeds não podem alargar a página. */
  body.extenso-woocommerce.single-product div.product img,
  body.extenso-woocommerce.single-product div.product video,
  body.extenso-woocommerce.single-product div.product iframe,
  body.extenso-woocommerce.single-product div.product svg {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  /* Galeria mobile: limitar a caixa externa sem forçar a largura de cada slide.
     O FlexSlider/WooCommerce calcula a largura dos slides para permitir navegar
     pelas imagens seguintes; width:100% !important em cada slide fazia só a
     primeira imagem ficar visível em alguns celulares. */
  body.extenso-woocommerce.single-product .woocommerce-product-gallery {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  body.extenso-woocommerce.single-product .woocommerce-product-gallery .flex-viewport {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  body.extenso-woocommerce.single-product .woocommerce-product-gallery__wrapper {
    max-width: none !important;
    box-sizing: border-box !important;
  }
  body.extenso-woocommerce.single-product .woocommerce-product-gallery__image {
    max-width: none !important;
    box-sizing: border-box !important;
  }

  /* Conteúdo textual longo pode quebrar sem criar rolagem horizontal. */
  body.extenso-woocommerce.single-product div.product .summary,
  body.extenso-woocommerce.single-product div.product .summary *,
  body.extenso-woocommerce.single-product .woocommerce-tabs,
  body.extenso-woocommerce.single-product .woocommerce-Tabs-panel {
    overflow-wrap: anywhere;
    word-wrap: break-word;
  }

  /* Tabelas técnicas conservam seu conteúdo dentro de rolagem própria,
     em vez de aumentar a largura total da página. */
  body.extenso-woocommerce.single-product .extenso-tabela-scroll,
  body.extenso-woocommerce.single-product .extenso-descricao-produto .extenso-tabela-scroll {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Flex/grid e campos nativos devem poder encolher no resumo do produto. */
  body.extenso-woocommerce.single-product div.product .summary form,
  body.extenso-woocommerce.single-product div.product .summary .variations,
  body.extenso-woocommerce.single-product div.product .summary .variations tr,
  body.extenso-woocommerce.single-product div.product .summary .variations td,
  body.extenso-woocommerce.single-product div.product .summary .variations th,
  body.extenso-woocommerce.single-product div.product .summary input,
  body.extenso-woocommerce.single-product div.product .summary select,
  body.extenso-woocommerce.single-product div.product .summary textarea {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}


/* V4.9.96 — CALCULE O FRETE: ícone e texto 25px à esquerda no celular.
   Não altera botões de compra nem demais blocos. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product .extenso-frete-container,
  .extenso-woocommerce.single-product .extenso-frete-block,
  .extenso-woocommerce.single-product .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product [class*="frenet"],
  .extenso-woocommerce.single-product [class*="frete"],
  .extenso-woocommerce.single-product [class*="shipping"] {
    transform: translateX(-25px) !important;
  }
}


/* V4.9.97 — SOMENTE BLOCO CALCULE O FRETE
   Alinha ícone e texto no início esquerdo da área delimitada pelas bordas.
   Sobrescreve o deslocamento anterior de 25px para evitar soma de offsets. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product .extenso-frete-container,
  .extenso-woocommerce.single-product .extenso-frete-block,
  .extenso-woocommerce.single-product .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product [class*="frenet"],
  .extenso-woocommerce.single-product [class*="frete"],
  .extenso-woocommerce.single-product [class*="shipping"] {
    transform: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product .extenso-frete-container > *,
  .extenso-woocommerce.single-product .extenso-frete-block > *,
  .extenso-woocommerce.single-product .woocommerce-shipping-calculator > *,
  .extenso-woocommerce.single-product [class*="frenet"] > *,
  .extenso-woocommerce.single-product [class*="frete"] > *,
  .extenso-woocommerce.single-product [class*="shipping"] > * {
    margin-left: 0 !important;
    text-align: left !important;
  }

  /* Elementos inline/flex que contêm o ícone e o texto do frete. */
  .extenso-woocommerce.single-product .extenso-frete-container,
  .extenso-woocommerce.single-product .extenso-frete-block,
  .extenso-woocommerce.single-product .woocommerce-shipping-calculator {
    justify-content: flex-start !important;
    align-items: center !important;
  }
}


/* V4.9.98 — BLOCO FRETE: início à esquerda e sem espaço entre ícone/texto */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product .extenso-frete-container,
  .extenso-woocommerce.single-product .extenso-frete-block,
  .extenso-woocommerce.single-product .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product [class*="frenet"],
  .extenso-woocommerce.single-product [class*="frete"],
  .extenso-woocommerce.single-product [class*="shipping"] {
    padding-left: 0 !important;
    margin-left: 0 !important;
    justify-content: flex-start !important;
    text-align: left !important;
    gap: 0 !important;
    column-gap: 0 !important;
  }

  .extenso-woocommerce.single-product .extenso-frete-container svg,
  .extenso-woocommerce.single-product .extenso-frete-block svg,
  .extenso-woocommerce.single-product .woocommerce-shipping-calculator svg,
  .extenso-woocommerce.single-product [class*="frenet"] svg,
  .extenso-woocommerce.single-product [class*="frete"] svg,
  .extenso-woocommerce.single-product [class*="shipping"] svg {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .extenso-woocommerce.single-product .extenso-frete-container .icon,
  .extenso-woocommerce.single-product .extenso-frete-block .icon,
  .extenso-woocommerce.single-product .woocommerce-shipping-calculator .icon,
  .extenso-woocommerce.single-product [class*="frenet"] [class*="icon"],
  .extenso-woocommerce.single-product [class*="frete"] [class*="icon"],
  .extenso-woocommerce.single-product [class*="shipping"] [class*="icon"] {
    margin-right: 0 !important;
    padding-right: 0 !important;
  }
}


/* V4.9.100 — AJUSTE EXCLUSIVO DO GATILHO DE FRETE NO MOBILE
   Base: versão anterior aprovada. Remove o vão ícone/texto e garante
   que “Calcule o frete” apareça inteiro, sem reticências. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product .extenso-delivery-trigger-wrap {
    margin-left: 0 !important;
    padding-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product .extenso-delivery-trigger {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    column-gap: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    text-align: left !important;
    overflow: visible !important;
    text-overflow: clip !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product .extenso-delivery-trigger svg,
  .extenso-woocommerce.single-product .extenso-delivery-trigger .extenso-delivery-trigger__icon {
    flex: 0 0 auto !important;
    margin: 0 3px 0 0 !important;
    padding: 0 !important;
  }

  .extenso-woocommerce.single-product .extenso-delivery-trigger > span:not(.extenso-delivery-trigger__icon) {
    display: inline !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
    overflow-wrap: normal !important;
  }
}

/* V4.9.101 — ALINHAMENTO MOBILE DOS BLOCOS DE FRETE E PRAZO
   Ajuste restrito ao resumo do produto em telas pequenas. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product .summary .extenso-delivery-block {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product .summary .extenso-delivery-trigger {
    margin-left: 0 !important;
    padding-left: 0 !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }

  .extenso-woocommerce.single-product .summary .extenso-frete-container,
  .extenso-woocommerce.single-product .summary .extenso-frete-block,
  .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product .summary [class*="frenet"],
  .extenso-woocommerce.single-product .summary [class*="frete"],
  .extenso-woocommerce.single-product .summary [class*="shipping"] {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .extenso-woocommerce.single-product .summary .extenso-frete-container > *,
  .extenso-woocommerce.single-product .summary .extenso-frete-block > *,
  .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator > *,
  .extenso-woocommerce.single-product .summary [class*="frenet"] > *,
  .extenso-woocommerce.single-product .summary [class*="frete"] > *,
  .extenso-woocommerce.single-product .summary [class*="shipping"] > * {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
  }
}


/* V4.9.102 — AJUSTE EXCLUSIVO DO CAMPO CEP NO MOBILE
   Move somente o campo de CEP um pouco para a direita; mantém o texto e o bloco de prazo intactos. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product .summary input[placeholder*="00000"],
  .extenso-woocommerce.single-product .summary input[name*="postcode"],
  .extenso-woocommerce.single-product .summary input[name*="cep"] {
    margin-left: 8px !important;
  }
}


/* AJUSTE MOBILE — alinhar CTA WhatsApp com o início da linha quantidade/comprar.
   Alteração restrita ao posicionamento horizontal do botão WhatsApp. */
@media (max-width: 767px) {
  .extenso-woocommerce.single-product .summary a[href*="wa.me"],
  .extenso-woocommerce.single-product .summary a[href*="whatsapp"],
  .extenso-woocommerce.single-product .summary a.whatsapp,
  .extenso-woocommerce.single-product .summary a.whatsapp-button,
  .extenso-woocommerce.single-product .summary a.extenso-whatsapp,
  .extenso-woocommerce.single-product .summary a.extenso-whatsapp-button {
    margin-left: -7px !important;
    width: calc(100% + 7px) !important;
    max-width: calc(100% + 7px) !important;
    box-sizing: border-box !important;
  }
}

/* V4.9.103 — REDUZIR ESPAÇO ENTRE MENU E BREADCRUMB NO DESKTOP
   Apenas loja/categorias/tags; mobile e página de produto permanecem intactos. */
@media (min-width: 1025px) {
  body.extenso-woocommerce.woocommerce-shop:not(.elementor-page) .woocommerce-breadcrumb,
  body.extenso-woocommerce.tax-product_cat:not(.elementor-page) .woocommerce-breadcrumb,
  body.extenso-woocommerce.tax-product_tag:not(.elementor-page) .woocommerce-breadcrumb {
    margin-top: -24px !important;
    margin-bottom: 8px !important;
  }
}

/* V4.9.104 — APROXIMAR BREADCRUMB DO MENU NO DESKTOP
   Ajuste adicional de 30px somente na página individual do produto.
   Preserva mobile e demais estilos. */
@media (min-width: 1025px) {
  body.extenso-woocommerce.single-product:not(.elementor-page) .woocommerce-breadcrumb {
    margin-top: -30px !important;
  }
}

/* V4.9.105 — RESTAURAR CLIQUES NO BREADCRUMB DO PRODUTO
   Mantém o layout e dá prioridade de interação aos links reais do breadcrumb. */
body.extenso-woocommerce.single-product .woocommerce-breadcrumb {
  position: relative !important;
  z-index: 20 !important;
  pointer-events: auto !important;
}
body.extenso-woocommerce.single-product .woocommerce-breadcrumb a,
body.extenso-woocommerce.single-product .woocommerce-breadcrumb a:link,
body.extenso-woocommerce.single-product .woocommerce-breadcrumb a:visited {
  position: relative !important;
  z-index: 21 !important;
  display: inline-block !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  text-decoration: none;
}


/* V4.9.117 — Somente a referência fica cinza; a categoria permanece laranja. */
.extenso-woocommerce .extenso-product-reference .extenso-ref-label,
.extenso-woocommerce .extenso-product-reference .extenso-ref-value {
    color: #5d6168 !important;
}

.extenso-woocommerce .extenso-product-reference .extenso-category-label,
.extenso-woocommerce .extenso-product-reference .extenso-category-value,
.extenso-woocommerce .extenso-product-reference .extenso-category-value a {
    color: var(--extenso-orange) !important;
}

/* V4.9.112 — limitar a galeria do produto a quatro miniaturas visíveis.
   Não altera a imagem principal nem o funcionamento nativo da galeria. */
.extenso-woocommerce.single-product div.product .woocommerce-product-gallery .flex-control-thumbs > li:nth-child(n+5) {
    display: none !important;
}


/* V4.9.114 — CORREÇÃO DEFINITIVA DE POSICIONAMENTO DO WHATSAPP
 * Padrão: quantidade + Comprar agora na primeira linha;
 * WhatsApp sempre em uma linha separada, abaixo, com largura total.
 * Trata os dois cenários: WhatsApp dentro do form.cart ou como irmão dele.
 */
body.single-product div.product .summary,
.extenso-woocommerce.single-product div.product .summary {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

/* Produto simples: permite que o CTA do WhatsApp quebre para uma nova linha. */
body.single-product div.product .summary form.cart,
.extenso-woocommerce.single-product div.product .summary form.cart {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 10px !important;
    box-sizing: border-box !important;
}

/* Produto variável: atributos ficam intactos; só a linha de compra recebe wrap. */
body.single-product div.product .summary .woocommerce-variation-add-to-cart,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 10px !important;
    box-sizing: border-box !important;
}

/* Quantidade e Comprar agora formam a primeira linha. */
body.single-product div.product .summary form.cart .quantity,
.extenso-woocommerce.single-product div.product .summary form.cart .quantity,
body.single-product div.product .summary .woocommerce-variation-add-to-cart .quantity,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .quantity {
    flex: 0 0 132px !important;
    width: 132px !important;
    max-width: 132px !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

body.single-product div.product .summary form.cart .single_add_to_cart_button,
.extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button,
body.single-product div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    display: inline-flex !important;
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
}

/* O WhatsApp nunca pode compartilhar a linha da quantidade/compra. */
body.single-product div.product .summary form.cart a[href*="wa.me"],
body.single-product div.product .summary form.cart a[href*="whatsapp"],
body.single-product div.product .summary form.cart a.whatsapp,
body.single-product div.product .summary form.cart a.whatsapp-button,
body.single-product div.product .summary form.cart .whatsapp-button,
body.single-product div.product .summary form.cart a.extenso-whatsapp,
body.single-product div.product .summary form.cart a.extenso-whatsapp-button,
body.single-product div.product .summary .woocommerce-variation-add-to-cart a[href*="wa.me"],
body.single-product div.product .summary .woocommerce-variation-add-to-cart a[href*="whatsapp"],
body.single-product div.product .summary .woocommerce-variation-add-to-cart a.whatsapp,
body.single-product div.product .summary .woocommerce-variation-add-to-cart a.whatsapp-button,
body.single-product div.product .summary .woocommerce-variation-add-to-cart .whatsapp-button,
body.single-product div.product .summary .woocommerce-variation-add-to-cart a.extenso-whatsapp,
body.single-product div.product .summary .woocommerce-variation-add-to-cart a.extenso-whatsapp-button,
.extenso-woocommerce.single-product div.product .summary form.cart a[href*="wa.me"],
.extenso-woocommerce.single-product div.product .summary form.cart a[href*="whatsapp"],
.extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp,
.extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp-button,
.extenso-woocommerce.single-product div.product .summary form.cart .whatsapp-button,
.extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp,
.extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp-button,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart a[href*="wa.me"],
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart a[href*="whatsapp"],
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart a.whatsapp,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart a.whatsapp-button,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .whatsapp-button,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart a.extenso-whatsapp,
.extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart a.extenso-whatsapp-button {
    display: flex !important;
    flex: 0 0 100% !important;
    order: 99 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 10px 0 0 !important;
    float: none !important;
    clear: both !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    align-self: stretch !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    white-space: normal !important;
}

/* Se o plugin inserir o WhatsApp como irmão do formulário, ele fica abaixo dele. */
body.single-product div.product .summary > a[href*="wa.me"],
body.single-product div.product .summary > a[href*="whatsapp"],
body.single-product div.product .summary > a.whatsapp,
body.single-product div.product .summary > a.whatsapp-button,
body.single-product div.product .summary > a.extenso-whatsapp,
body.single-product div.product .summary > a.extenso-whatsapp-button,
.extenso-woocommerce.single-product div.product .summary > a[href*="wa.me"],
.extenso-woocommerce.single-product div.product .summary > a[href*="whatsapp"],
.extenso-woocommerce.single-product div.product .summary > a.whatsapp,
.extenso-woocommerce.single-product div.product .summary > a.whatsapp-button,
.extenso-woocommerce.single-product div.product .summary > a.extenso-whatsapp,
.extenso-woocommerce.single-product div.product .summary > a.extenso-whatsapp-button {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 10px 0 0 !important;
    float: none !important;
    clear: both !important;
    position: static !important;
    transform: none !important;
    box-sizing: border-box !important;
}

@media (max-width: 767px) {
    body.single-product div.product .summary form.cart .quantity,
    .extenso-woocommerce.single-product div.product .summary form.cart .quantity,
    body.single-product div.product .summary .woocommerce-variation-add-to-cart .quantity,
    .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .quantity {
        flex: 0 0 30% !important;
        width: 30% !important;
        max-width: 30% !important;
    }

    body.single-product div.product .summary form.cart .single_add_to_cart_button,
    .extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button,
    body.single-product div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button {
        flex: 1 1 0 !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        font-size: clamp(12px, 3.6vw, 15px) !important;
        white-space: nowrap !important;
    }
}


/* V4.9.115 — Espaçamento uniforme de 5px entre opções de voltagem.
   Mantém as duas opções alinhadas sem alterar dimensões externas do seletor. */
.extenso-woocommerce.single-product .summary .extenso-voltage-options {
    gap: 5px !important;
    column-gap: 5px !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-option {
    flex-basis: calc((100% - 5px) / 2) !important;
    width: calc((100% - 5px) / 2) !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .summary .extenso-voltage-options {
        gap: 5px !important;
        column-gap: 5px !important;
    }

    .extenso-woocommerce.single-product .summary .extenso-voltage-option {
        flex-basis: calc((100% - 5px) / 2) !important;
        width: calc((100% - 5px) / 2) !important;
    }
}


/* V4.9.116 — Espaçamento real entre as opções de voltagem.
   O HTML gera os botões diretamente dentro de .extenso-voltage-selector;
   portanto, o gap deve ser aplicado nesse contêiner, não em .extenso-voltage-options.
   Mantém os dois botões lado a lado e distribui a largura disponível. */
.extenso-woocommerce.single-product .summary .extenso-voltage-selector {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 24px !important;
    column-gap: 24px !important;
    box-sizing: border-box !important;
}

.extenso-woocommerce.single-product .summary .extenso-voltage-selector > .extenso-voltage-option {
    flex: 0 0 calc((100% - 24px) / 2) !important;
    width: calc((100% - 24px) / 2) !important;
    max-width: calc((100% - 24px) / 2) !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

@media (max-width: 767px) {
    .extenso-woocommerce.single-product .summary .extenso-voltage-selector {
        gap: 12px !important;
        column-gap: 12px !important;
    }

    .extenso-woocommerce.single-product .summary .extenso-voltage-selector > .extenso-voltage-option {
        flex-basis: calc((100% - 12px) / 2) !important;
        width: calc((100% - 12px) / 2) !important;
        max-width: calc((100% - 12px) / 2) !important;
    }
}


/* V4.9.118 — Indicador de voltagem selecionada consistente.
   Mantém a seleção circular laranja sem ícone de atualização sobreposto. */
.extenso-woocommerce.single-product .summary .extenso-voltage-option .extenso-voltage-check {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #9BA1A8 !important;
    border-radius: 50% !important;
    background: #FFFFFF !important;
    background-image: none !important;
    color: transparent !important;
    font-size: 0 !important;
    box-shadow: none !important;
}
.extenso-woocommerce.single-product .summary .extenso-voltage-option.is-selected .extenso-voltage-check {
    border-color: #F05A00 !important;
    background: #FFFFFF !important;
    background-image: none !important;
}
.extenso-woocommerce.single-product .summary .extenso-voltage-option.is-selected .extenso-voltage-check::before {
    content: "" !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #F05A00 !important;
    position: static !important;
    transform: none !important;
}
.extenso-woocommerce.single-product .summary .extenso-voltage-option.is-selected .extenso-voltage-check::after {
    content: none !important;
    display: none !important;
}
/* O link nativo de reset não deve sobrepor o indicador da opção. */
.extenso-woocommerce.single-product .summary form.variations_form a.reset_variations {
    position: static !important;
    inset: auto !important;
    float: none !important;
    transform: none !important;
}


/* V4.9.119 — LAYOUT MOBILE DO PRODUTO CONFORME A REFERÊNCIA VISUAL
 * Escopo: somente a página individual de produto em telas até 767px.
 * Mantém os componentes nativos e normaliza os eixos, dimensões e respiros.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product,
  body.single-product .extenso-woocommerce div.product .summary,
  body.single-product .extenso-woocommerce div.product .summary > * {
    box-sizing: border-box !important;
    min-width: 0 !important;
  }

  /* Referência e categoria no topo: referência cinza, categoria laranja. */
  body.single-product .extenso-product-reference,
  .extenso-woocommerce.single-product .extenso-product-reference {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
  body.single-product .extenso-product-reference .extenso-ref-label,
  body.single-product .extenso-product-reference .extenso-ref-value,
  .extenso-woocommerce.single-product .extenso-product-reference .extenso-ref-label,
  .extenso-woocommerce.single-product .extenso-product-reference .extenso-ref-value {
    color: #777B80 !important;
  }
  body.single-product .extenso-product-reference .extenso-category-label,
  body.single-product .extenso-product-reference .extenso-category-value,
  body.single-product .extenso-product-reference .extenso-category-value a,
  .extenso-woocommerce.single-product .extenso-product-reference .extenso-category-label,
  .extenso-woocommerce.single-product .extenso-product-reference .extenso-category-value,
  .extenso-woocommerce.single-product .extenso-product-reference .extenso-category-value a {
    color: #F05A00 !important;
  }

  /* Título compacto em duas linhas, como no layout de referência. */
  body.single-product .extenso-woocommerce div.product .product_title,
  .extenso-woocommerce.single-product div.product .product_title {
    margin: 0 0 12px !important;
    font-size: 20px !important;
    line-height: 1.18 !important;
    letter-spacing: -.45px !important;
    font-weight: 600 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  /* Opções de voltagem compactas e com respiro entre elas. */
  body.single-product .extenso-woocommerce .extenso-voltage-selector,
  .extenso-woocommerce.single-product .summary .extenso-voltage-selector {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    column-gap: 8px !important;
    width: 72% !important;
    max-width: 100% !important;
    margin: 0 0 10px !important;
  }
  body.single-product .extenso-woocommerce .extenso-voltage-selector > .extenso-voltage-option,
  .extenso-woocommerce.single-product .summary .extenso-voltage-selector > .extenso-voltage-option {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 25px !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 0 9px !important;
    box-sizing: border-box !important;
    font-size: 9px !important;
    line-height: 1 !important;
  }
  body.single-product .extenso-woocommerce .extenso-voltage-option .extenso-voltage-check,
  .extenso-woocommerce.single-product .summary .extenso-voltage-option .extenso-voltage-check {
    width: 13px !important;
    height: 13px !important;
    min-width: 13px !important;
    min-height: 13px !important;
  }

  /* Preço e condições: hierarquia visual compacta sem alterar os valores. */
  body.single-product .extenso-woocommerce div.product p.price,
  body.single-product .extenso-woocommerce div.product span.price,
  .extenso-woocommerce.single-product div.product p.price,
  .extenso-woocommerce.single-product div.product span.price {
    margin: 8px 0 3px !important;
    font-size: 23px !important;
    line-height: 1.08 !important;
    letter-spacing: -.35px !important;
  }
  body.single-product .extenso-woocommerce div.product del,
  .extenso-woocommerce.single-product div.product del {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }
  body.single-product .extenso-woocommerce div.product ins,
  .extenso-woocommerce.single-product div.product ins {
    text-decoration: none !important;
  }
  body.single-product .extenso-woocommerce.single-product div.product .installments,
  body.single-product .extenso-woocommerce.single-product div.product .parcelamento,
  body.single-product .extenso-woocommerce.single-product div.product .payment-installments,
  body.single-product .extenso-woocommerce.single-product div.product .installment,
  body.single-product .extenso-woocommerce.single-product div.product .installment-plan,
  .extenso-woocommerce.single-product div.product .installments,
  .extenso-woocommerce.single-product div.product .parcelamento,
  .extenso-woocommerce.single-product div.product .payment-installments,
  .extenso-woocommerce.single-product div.product .installment,
  .extenso-woocommerce.single-product div.product .installment-plan,
  .extenso-woocommerce.single-product div.product .woocommerce-price-suffix {
    font-size: 11px !important;
    line-height: 1.35 !important;
    margin: 2px 0 9px !important;
  }

  /* Faixa Cartão de crédito / Ver parcelas, com margens internas do modelo. */
  body.single-product .extenso-woocommerce .extenso-pagamentos--product,
  .extenso-woocommerce.single-product .summary .extenso-pagamentos--product {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 7px !important;
    width: calc(100% - 30px) !important;
    max-width: calc(100% - 30px) !important;
    min-height: 36px !important;
    margin: 18px 15px 11px !important;
    padding: 7px 5px !important;
    border-top: 1px solid #E5E7EB !important;
    border-bottom: 1px solid #E5E7EB !important;
    box-sizing: border-box !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
  }
  body.single-product .extenso-woocommerce .extenso-pagamentos--product * ,
  .extenso-woocommerce.single-product .summary .extenso-pagamentos--product * {
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Linha de quantidade e compra: mesma borda direita que o WhatsApp. */
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary form.cart {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 7px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
  body.single-product .extenso-woocommerce div.product .summary form.cart .quantity,
  .extenso-woocommerce.single-product div.product .summary form.cart .quantity,
  body.single-product .extenso-woocommerce .woocommerce-variation-add-to-cart .quantity,
  .extenso-woocommerce.single-product .woocommerce-variation-add-to-cart .quantity {
    flex: 0 0 97px !important;
    width: 97px !important;
    max-width: 97px !important;
    height: 43px !important;
    min-height: 43px !important;
    margin: 0 !important;
    border-radius: 8px !important;
  }
  body.single-product .extenso-woocommerce div.product .summary form.cart .quantity .qty,
  .extenso-woocommerce.single-product div.product .summary form.cart .quantity .qty,
  body.single-product .extenso-woocommerce .woocommerce-variation-add-to-cart .quantity .qty,
  .extenso-woocommerce.single-product .woocommerce-variation-add-to-cart .quantity .qty {
    height: 41px !important;
    font-size: 12px !important;
  }
  body.single-product .extenso-woocommerce div.product .summary form.cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button,
  body.single-product .extenso-woocommerce .woocommerce-variation-add-to-cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 43px !important;
    min-height: 43px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
  body.single-product .extenso-woocommerce div.product .summary form.cart .single_add_to_cart_button::before,
  .extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button::before {
    width: 14px !important;
    height: 14px !important;
    flex-basis: 14px !important;
  }

  /* WhatsApp em linha própria, altura compacta e largura total. */
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="whatsapp"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary > a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary > a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="whatsapp"] {
    display: flex !important;
    flex: 0 0 100% !important;
    order: 99 !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 24px !important;
    min-height: 24px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
    font-size: 10px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    transform: none !important;
  }

  /* Frete: linha divisória quase na largura total, conteúdo levemente recuado. */
  body.single-product .extenso-woocommerce .summary .extenso-frete-container,
  body.single-product .extenso-woocommerce .summary .extenso-frete-block,
  body.single-product .extenso-woocommerce .summary .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product .summary .extenso-frete-container,
  .extenso-woocommerce.single-product .summary .extenso-frete-block,
  .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator {
    width: calc(100% - 22px) !important;
    max-width: calc(100% - 22px) !important;
    margin: 12px 11px 0 !important;
    padding: 10px 8px !important;
    border-top: 1px solid #E5E7EB !important;
    border-bottom: 1px solid #E5E7EB !important;
    box-sizing: border-box !important;
    transform: none !important;
    left: auto !important;
  }
  body.single-product .extenso-woocommerce .summary .extenso-delivery-trigger-wrap,
  .extenso-woocommerce.single-product .summary .extenso-delivery-trigger-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
  }
  body.single-product .extenso-woocommerce .summary .extenso-delivery-trigger,
  .extenso-woocommerce.single-product .summary .extenso-delivery-trigger {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 8px 0 !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }
}


/* V4.9.120 — Alinhamento do conteúdo dentro das guias verticais da referência.
 * Preserva os tamanhos e a disposição dos blocos da versão 4.9.119.
 * Normaliza apenas a largura útil, o box model e os limites horizontais.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product,
  body.single-product .extenso-woocommerce div.product .summary,
  .extenso-woocommerce.single-product div.product,
  .extenso-woocommerce.single-product div.product .summary {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.single-product .extenso-woocommerce div.product .summary,
  .extenso-woocommerce.single-product div.product .summary {
    width: 100% !important;
    overflow-x: clip !important;
  }

  /* Todos os blocos respeitam a largura interna da coluna, sem crescer além dela. */
  body.single-product .extenso-woocommerce div.product .summary > *,
  .extenso-woocommerce.single-product div.product .summary > *,
  body.single-product .extenso-woocommerce div.product .summary .product_title,
  .extenso-woocommerce.single-product div.product .summary .product_title,
  body.single-product .extenso-woocommerce div.product .summary .price,
  .extenso-woocommerce.single-product div.product .summary .price,
  body.single-product .extenso-woocommerce div.product .summary .extenso-product-reference,
  .extenso-woocommerce.single-product div.product .summary .extenso-product-reference,
  body.single-product .extenso-woocommerce div.product .summary .extenso-voltage-selector,
  .extenso-woocommerce.single-product div.product .summary .extenso-voltage-selector,
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary form.cart,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  /* Eixo esquerdo comum para referência, título, variações, preços e compra. */
  body.single-product .extenso-woocommerce div.product .summary .extenso-product-reference,
  .extenso-woocommerce.single-product div.product .summary .extenso-product-reference,
  body.single-product .extenso-woocommerce div.product .summary .product_title,
  .extenso-woocommerce.single-product div.product .summary .product_title,
  body.single-product .extenso-woocommerce div.product .summary .price,
  .extenso-woocommerce.single-product div.product .summary .price,
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary form.cart,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Mantém os recuos previstos no modelo para cartão e frete, sem ultrapassar a coluna. */
  body.single-product .extenso-woocommerce .summary .extenso-pagamentos--product,
  .extenso-woocommerce.single-product .summary .extenso-pagamentos--product {
    width: calc(100% - 30px) !important;
    max-width: calc(100% - 30px) !important;
    margin-left: 15px !important;
    margin-right: 15px !important;
    box-sizing: border-box !important;
  }

  body.single-product .extenso-woocommerce .summary .extenso-frete-container,
  body.single-product .extenso-woocommerce .summary .extenso-frete-block,
  body.single-product .extenso-woocommerce .summary .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product .summary .extenso-frete-container,
  .extenso-woocommerce.single-product .summary .extenso-frete-block,
  .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator {
    width: calc(100% - 22px) !important;
    max-width: calc(100% - 22px) !important;
    margin-left: 11px !important;
    margin-right: 11px !important;
    box-sizing: border-box !important;
  }

  /* O botão do WhatsApp usa o mesmo eixo direito da linha de compra. */
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="whatsapp"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary > a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary > a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="whatsapp"] {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  /* Evita que textos ou controles internos provoquem rolagem horizontal. */
  body.single-product .extenso-woocommerce div.product .summary .extenso-pagamentos--product *,
  .extenso-woocommerce.single-product div.product .summary .extenso-pagamentos--product *,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-container *,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-container * {
    box-sizing: border-box !important;
    min-width: 0 !important;
  }
}



/* V4.9.121 — alinha a linha de compra exatamente à largura do WhatsApp
 * e centraliza o bloco "Ver prazo de produção e envio".
 * Sobrescreve apenas o layout mobile; não altera preços ou lógica de compra.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary form.cart,
  body.single-product .extenso-woocommerce .woocommerce-variation-add-to-cart,
  .extenso-woocommerce.single-product .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: stretch !important;
    column-gap: 8px !important;
    row-gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-product .extenso-woocommerce div.product .summary form.cart .quantity,
  .extenso-woocommerce.single-product div.product .summary form.cart .quantity,
  body.single-product .extenso-woocommerce .woocommerce-variation-add-to-cart .quantity,
  .extenso-woocommerce.single-product .woocommerce-variation-add-to-cart .quantity {
    flex: 0 0 97px !important;
    width: 97px !important;
    max-width: 97px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-product .extenso-woocommerce div.product .summary form.cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button,
  body.single-product .extenso-woocommerce .woocommerce-variation-add-to-cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    flex: 0 0 calc(100% - 105px) !important;
    width: calc(100% - 105px) !important;
    max-width: calc(100% - 105px) !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }

  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="whatsapp"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary > a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary > a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="whatsapp"] {
    display: flex !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    order: 99 !important;
  }

  body.single-product .extenso-woocommerce .summary .extenso-delivery-trigger-wrap,
  .extenso-woocommerce.single-product .summary .extenso-delivery-trigger-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  body.single-product .extenso-woocommerce .summary .extenso-delivery-trigger,
  .extenso-woocommerce.single-product .summary .extenso-delivery-trigger {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}


/* V4.9.122 — centraliza o link real de prazo de produção e envio.
 * O HTML usa .extenso-delivery-block; não .extenso-delivery-trigger-wrap.
 * Regras limitadas à apresentação mobile da página de produto.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block .extenso-delivery-trigger,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block .extenso-delivery-trigger {
    display: inline-flex !important;
    flex: 0 1 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}


/* V4.9.123 — referência mobile: WhatsApp alinhado ao limite direito da linha de compra.
 * A referência visual usa o mesmo eixo horizontal para quantidade/botão e WhatsApp.
 * Ajuste restrito à largura do botão WhatsApp; preserva os demais blocos e tamanhos.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="whatsapp"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary > a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary > a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="whatsapp"] {
    flex: 0 0 calc(100% - 18px) !important;
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    align-self: flex-start !important;
  }
}


/* V4.9.124 — alinhamento único de todos os blocos na página de produto mobile.
 * Um único eixo horizontal: WhatsApp, cartão, compra, frete e prazo não ultrapassam a coluna.
 * Neutraliza margens e larguras divergentes de versões anteriores.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product .summary,
  .extenso-woocommerce.single-product div.product .summary {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-product .extenso-woocommerce div.product .summary .extenso-product-reference,
  .extenso-woocommerce.single-product div.product .summary .extenso-product-reference,
  body.single-product .extenso-woocommerce div.product .summary .product_title,
  .extenso-woocommerce.single-product div.product .summary .product_title,
  body.single-product .extenso-woocommerce div.product .summary .price,
  .extenso-woocommerce.single-product div.product .summary .price,
  body.single-product .extenso-woocommerce div.product .summary .extenso-voltage-selector,
  .extenso-woocommerce.single-product div.product .summary .extenso-voltage-selector,
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary form.cart,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart,
  body.single-product .extenso-woocommerce div.product .summary .extenso-pagamentos--product,
  .extenso-woocommerce.single-product div.product .summary .extenso-pagamentos--product,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-container,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-block,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-container,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-block,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-shipping-calculator,
  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Quantidade e compra compõem uma única linha de 100% da coluna. */
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary form.cart,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: stretch !important;
    column-gap: 8px !important;
    row-gap: 8px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-product .extenso-woocommerce div.product .summary form.cart .quantity,
  .extenso-woocommerce.single-product div.product .summary form.cart .quantity,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart .quantity,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .quantity {
    flex: 0 0 97px !important;
    width: 97px !important;
    max-width: 97px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-product .extenso-woocommerce div.product .summary form.cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }

  /* WhatsApp termina exatamente no mesmo eixo direito da linha de compra. */
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="whatsapp"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary > a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary > a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="whatsapp"] {
    display: flex !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    align-self: stretch !important;
    order: 99 !important;
  }

  /* Cartão e frete passam a usar o mesmo eixo, sem recuos adicionais. */
  body.single-product .extenso-woocommerce .summary .extenso-pagamentos--product,
  .extenso-woocommerce.single-product .summary .extenso-pagamentos--product,
  body.single-product .extenso-woocommerce .summary .extenso-frete-container,
  body.single-product .extenso-woocommerce .summary .extenso-frete-block,
  body.single-product .extenso-woocommerce .summary .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product .summary .extenso-frete-container,
  .extenso-woocommerce.single-product .summary .extenso-frete-block,
  .extenso-woocommerce.single-product .summary .woocommerce-shipping-calculator {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Centraliza o link de prazo sem alterar a largura da coluna. */
  body.single-product .extenso-woocommerce .summary .extenso-delivery-block,
  .extenso-woocommerce.single-product .summary .extenso-delivery-block {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
  }

  body.single-product .extenso-woocommerce .summary .extenso-delivery-block .extenso-delivery-trigger,
  .extenso-woocommerce.single-product .summary .extenso-delivery-block .extenso-delivery-trigger {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }
}


/* V4.9.125 — eixo horizontal único para todos os blocos do resumo mobile.
 * Remove os recuos legados que faziam cartão, compra, WhatsApp e frete
 * começarem/terminarem em posições diferentes. Mantém o conteúdo interno
 * do cartão e do frete, normalizando apenas a caixa externa.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product .summary .extenso-pagamentos--product,
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-container,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-block,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-shipping-calculator,
  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block,
  .extenso-woocommerce.single-product div.product .summary .extenso-pagamentos--product,
  .extenso-woocommerce.single-product div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-container,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-block,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    float: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Preserva o respiro interno do cartão, mas sua borda usa a largura comum. */
  body.single-product .extenso-woocommerce div.product .summary .extenso-pagamentos--product,
  .extenso-woocommerce.single-product div.product .summary .extenso-pagamentos--product {
    padding: 7px 5px !important;
  }

  /* Compra e quantidade ocupam exatamente a largura da coluna. */
  body.single-product .extenso-woocommerce div.product .summary form.cart,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart,
  .extenso-woocommerce.single-product div.product .summary form.cart,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    padding: 0 !important;
  }

  body.single-product .extenso-woocommerce div.product .summary form.cart .quantity,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart .quantity,
  .extenso-woocommerce.single-product div.product .summary form.cart .quantity,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .quantity {
    flex: 0 0 97px !important;
    width: 97px !important;
    max-width: 97px !important;
    margin: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.single-product .extenso-woocommerce div.product .summary form.cart .single_add_to_cart_button,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product div.product .summary form.cart .single_add_to_cart_button,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }

  /* WhatsApp ocupa a mesma largura externa que a linha de compra. */
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a[href*="whatsapp"],
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp,
  body.single-product .extenso-woocommerce div.product .summary form.cart a.extenso-whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary form.cart a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.whatsapp-button,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp,
  .extenso-woocommerce.single-product div.product .summary form.cart a.extenso-whatsapp-button,
  body.single-product .extenso-woocommerce div.product .summary > a[href*="wa.me"],
  body.single-product .extenso-woocommerce div.product .summary > a[href*="whatsapp"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="wa.me"],
  .extenso-woocommerce.single-product div.product .summary > a[href*="whatsapp"] {
    display: flex !important;
    flex: 0 0 100% !important;
    order: 99 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    align-self: stretch !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  /* Remove recuos internos que deslocavam as linhas do frete. */
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-container > *,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-block > *,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-shipping-calculator > *,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-container > *,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-block > *,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-shipping-calculator > * {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* O texto do prazo fica centralizado dentro da mesma coluna externa. */
  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block .extenso-delivery-trigger,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block .extenso-delivery-trigger {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 100% !important;
    transform: none !important;
    text-align: center !important;
  }
}

/* V4.9.126 — centraliza o bloco de prazo também no desktop.
 * Aplica o alinhamento ao contêiner real e ao link interno, sem alterar
 * o layout mobile, os botões de compra ou o comportamento do modal.
 */
@media (min-width: 768px) {
  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  body.single-product .extenso-woocommerce div.product .summary .extenso-delivery-block .extenso-delivery-trigger,
  .extenso-woocommerce.single-product div.product .summary .extenso-delivery-block .extenso-delivery-trigger {
    display: inline-flex !important;
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
}

/* V4.9.134 — DESKTOP: acrescenta mais 5px à faixa Cartão de crédito / Ver parcelas (40px no total).
 * Mantém a borda esquerda no mesmo eixo e estende somente a borda direita.
 * Regra exclusiva para desktop; o mobile permanece inalterado.
 */
@media (min-width: 768px) {
  body.single-product .extenso-woocommerce div.product .summary .extenso-pagamentos--product,
  .extenso-woocommerce.single-product div.product .summary .extenso-pagamentos--product {
    display: flex !important;
    width: calc(100% + 45px) !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: -45px !important;
    box-sizing: border-box !important;
  }
}

/* V4.9.138 — MOBILE: acrescenta mais 10px à direita do bloco Calcule o frete (20px no total).
 * Preserva o eixo esquerdo alinhado ao WhatsApp; alteração exclusiva para mobile.
 */
@media (max-width: 767px) {
  body.single-product .extenso-woocommerce div.product .summary .extenso-cep-left-nudge,
  .extenso-woocommerce.single-product div.product .summary .extenso-cep-left-nudge,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-container,
  body.single-product .extenso-woocommerce div.product .summary .extenso-frete-block,
  body.single-product .extenso-woocommerce div.product .summary .woocommerce-shipping-calculator,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-container,
  .extenso-woocommerce.single-product div.product .summary .extenso-frete-block,
  .extenso-woocommerce.single-product div.product .summary .woocommerce-shipping-calculator {
    position: static !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    float: none !important;
    display: block !important;
    width: calc(100% + 20px) !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: -20px !important;
    box-sizing: border-box !important;
  }

  /* A linha que contém o marcador também ganha 10px, sem deslocar a borda esquerda. */
  body.single-product .extenso-woocommerce div.product .summary :has(> .extenso-cep-left-nudge),
  .extenso-woocommerce.single-product div.product .summary :has(> .extenso-cep-left-nudge) {
    position: static !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: calc(100% + 20px) !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: -20px !important;
    box-sizing: border-box !important;
  }
}
