/* =========================================================
   PRODUCT PAGE — Loja da Barba
   Para reverter: remova product-enhanced.css e product-enhanced.js do header.twig
   ========================================================= */

#product-product {
    font-family: "Lexend", sans-serif;
}

#product-product .breadcrumb {
    margin-bottom: 16px;
}

.ldb-pdp {
    margin-bottom: 32px;
}

.ldb-pdp__hero {
    display: flex;
    flex-wrap: wrap;
    margin-left: -12px;
    margin-right: -12px;
}

.ldb-pdp__gallery-col,
.ldb-pdp__buybox-col {
    padding-left: 12px;
    padding-right: 12px;
    width: 100%;
}

.ldb-pdp__gallery {
    position: relative;
    margin-bottom: 20px;
    border: 1px solid #eee;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
}

.ldb-pdp__gallery .ldb-product-card__wishlist {
    z-index: 6;
    top: 12px;
    right: 12px;
}

.ldb-pdp__gallery-counter {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 5;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(30, 57, 42, 0.72);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.02em;
    pointer-events: none;
}

.ldb-pdp__gallery-share {
    display: none;
}

.ldb-pdp__gallery-mobile {
    display: block;
    position: relative;
}

.ldb-pdp__gallery-scroll {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
    background: #fff;
}

.ldb-pdp__gallery-scroll::-webkit-scrollbar {
    display: none;
}

.ldb-pdp__gallery-scroll-item {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 12px;
    min-height: 240px;
}

.ldb-pdp__gallery-image,
.ldb-pdp__gallery-main-image,
.ldb-pdp__gallery-zoom-trigger img,
.ldb-pdp__swiper-image {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 480px;
    margin: 0 auto;
    object-fit: contain;
    pointer-events: none;
    -webkit-touch-callout: none;
    user-select: none;
    -webkit-user-drag: none;
}

.ldb-pdp__gallery-main picture,
.ldb-pdp__gallery-main picture img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 480px;
    margin: 0 auto;
    object-fit: contain;
}

.ldb-pdp__gallery-zoom-trigger picture {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
}

.ldb-pdp__gallery-zoom-trigger {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 240px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: zoom-in;
}

/* Fallback: template antigo do Editor de Tema ainda usa Swiper */
.ldb-pdp__swiper-viewport {
    position: relative;
    margin: 0 !important;
    overflow: hidden !important;
    background: #fff;
}

.ldb-pdp__swiper .swiper-wrapper {
    display: flex;
    align-items: center;
}

.ldb-pdp__swiper .swiper-slide {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    padding: 12px;
    background: #fff;
}

.ldb-pdp__swiper .swiper-slide a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    pointer-events: none;
}

.ldb-pdp__gallery-desktop {
    display: none;
}

.ldb-pdp__gallery-main {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    background: #fff;
}

.ldb-pdp__gallery-main img,
.ldb-pdp__gallery-main-image {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: contain;
    margin: 0 auto;
}

.ldb-pdp__gallery-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 12px 14px;
    border-top: 1px solid #eef1ef;
}

.ldb-pdp__gallery-thumb {
    flex: 0 0 calc(20% - 7px);
    max-width: calc(20% - 7px);
    display: block;
    padding: 0;
    border: 2px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    cursor: pointer;
    transition: border-color 0.2s ease;
}

.ldb-pdp__gallery-thumb.is-active,
.ldb-pdp__gallery-thumb:hover {
    border-color: var(--ldb-gold);
}

.ldb-pdp__gallery-thumb picture {
    display: block;
    width: 100%;
}

.ldb-pdp__gallery-thumb img {
    display: block;
    width: 100%;
    height: 72px;
    object-fit: contain;
    background: #fff;
    pointer-events: none;
}

.ldb-pdp__buybox {
    margin-bottom: 8px;
}

.ldb-pdp__title {
    margin: 0 0 10px;
    font-family: "Lexend", sans-serif;
    font-size: 17px;
    font-weight: 500;
    color: #2f3438;
    line-height: 1.35;
    letter-spacing: -0.01em;
}

@media (min-width: 768px) {
    .ldb-pdp__title {
        font-size: 20px;
        line-height: 1.3;
    }
}

.ldb-pdp__meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 14px;
    min-height: 16px;
}

.ldb-pdp__meta-row .ldb-pdp__brand {
    margin: 0 0 0 auto;
    flex: 0 1 auto;
    min-width: 0;
    text-align: right;
}

.ldb-pdp__meta-row .ldb-pdp__rating {
    margin: 0;
    flex: 0 0 auto;
    text-decoration: none;
    color: inherit;
}

.ldb-pdp__meta-row .ldb-product-card__rating {
    margin: 0;
    gap: 6px;
}

.ldb-pdp__meta-row .ldb-product-card__rating-value {
    font-size: 16px;
    font-weight: 700;
}

.ldb-pdp__meta-row .ldb-product-card__rating-stars {
    height: 15px;
}

.ldb-pdp__meta-row .ldb-product-card__rating-stars .fa {
    font-size: 15px;
    width: 15px;
}

.ldb-pdp__meta-row .ldb-product-card__rating-count {
    font-size: 14px;
}

.ldb-pdp__meta-row .ldb-pdp__rating:hover .ldb-product-card__rating-value,
.ldb-pdp__meta-row .ldb-pdp__rating:focus-visible .ldb-product-card__rating-value {
    color: var(--ldb-ink, #1e392a);
}

.ldb-pdp__brand--empty,
.ldb-pdp__rating--empty {
    visibility: hidden;
}

.ldb-pdp__rating {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.ldb-pdp__rating .rating {
    margin: 0;
    line-height: 1;
}

.ldb-pdp__stars {
    display: inline-flex;
    align-items: center;
    gap: 1px;
    line-height: 1;
}

.ldb-pdp__stars .ldb-pdp__star {
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-text-stroke: 0;
    text-stroke: 0;
    text-shadow: none;
}

.ldb-pdp__stars--lg {
    gap: 2px;
}

.ldb-pdp__stars--lg .ldb-pdp__star,
#product-product .ldb-pdp__reviews-summary .ldb-pdp__star {
    font-size: 28px !important;
    line-height: 1 !important;
    width: 1em;
    height: 1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#product-product .ldb-pdp__reviews-summary .fa-stack {
    width: 1em !important;
    height: 1em !important;
    line-height: 1 !important;
    font-size: 28px !important;
    margin: 0 !important;
}

.ldb-pdp__reviews-summary .ldb-product-card__rating-value {
    font-size: 22px;
    font-weight: 700;
    color: var(--ldb-ink, #1e392a);
}

.ldb-pdp__reviews-summary .ldb-product-card__rating-stars {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    height: auto;
    min-height: 20px;
    line-height: 1;
}

.ldb-pdp__reviews-summary .ldb-product-card__rating-stars .fa {
    display: inline-block;
    flex: 0 0 auto;
    font-size: 20px;
    line-height: 1;
    width: 1em;
    height: 1em;
    color: #fc0 !important;
}

.ldb-pdp__reviews-summary .ldb-product-card__rating-stars .fa-star-o {
    opacity: 0.35;
}

.ldb-pdp__reviews-summary .ldb-product-card__rating-count {
    font-size: 16px;
    color: #5c6670;
}

.ldb-pdp__rating .ldb-pdp__star--filled,
.ldb-pdp__reviews-summary .ldb-pdp__star--filled,
.ldb-pdp__review-card-rating .ldb-pdp__star--filled {
    color: #fc0;
    opacity: 1;
}

.ldb-pdp__rating .ldb-pdp__star--empty,
.ldb-pdp__reviews-summary .ldb-pdp__star--empty,
.ldb-pdp__review-card-rating .ldb-pdp__star--empty {
    color: #fc0;
    opacity: 0.28;
}

/* Neutraliza borda #E69500 do stylesheet global (FA stack) na PDP */
#product-product .ldb-pdp__rating .fa-star,
#product-product .ldb-pdp__rating .fa-star-o,
#product-product .ldb-pdp__reviews-summary .ldb-product-card__rating-stars .fa-star,
#product-product .ldb-pdp__reviews-summary .ldb-product-card__rating-stars .fa-star-o,
#product-product .ldb-pdp__review-card-rating .fa-star,
#product-product .ldb-pdp__review-card-rating .fa-star-o,
#product-product .ldb-pdp__rating .rating .fa-star + .fa-star-o,
#product-product .ldb-pdp__reviews-summary .rating .fa-star + .fa-star-o {
    color: #fc0 !important;
}

.ldb-pdp__rating-avg {
    font-size: 14px;
    font-weight: 700;
    color: var(--ldb-ink);
    line-height: 1;
}

.ldb-pdp__rating-link {
    font-size: 13px;
    color: #5C6670;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.ldb-pdp__rating-link:hover,
.ldb-pdp__rating-link:focus {
    color: var(--ldb-ink);
}

.ldb-pdp__brand {
    margin: 0;
    font-size: 14px;
}

.ldb-pdp__brand a {
    color: #5C6670;
    font-weight: 500;
    text-decoration: none;
    border-bottom: 1px solid rgba(212, 175, 104, 0.45);
}

.ldb-pdp__brand a:hover,
.ldb-pdp__brand a:focus {
    color: var(--ldb-ink);
}

.ldb-pdp__price {
    margin: 0 0 18px;
}

.ldb-pdp__price .ldb-product-card__price,
.ldb-pdp__price-block {
    align-items: flex-start;
    text-align: left;
    min-height: 0;
    width: 100%;
    max-width: none;
}

.ldb-pdp__price .ldb-price {
    font-family: "Lexend", sans-serif;
}

.ldb-pdp__price .ldb-price--regular {
    font-size: clamp(26px, 5.4vw, 32px);
    font-weight: 700;
    color: var(--ldb-price-regular, var(--ldb-ink));
}

.ldb-pdp__price-from,
.ldb-pdp__price-to {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 6px 8px;
}

.ldb-pdp__price-from {
    margin-bottom: 4px;
}

.ldb-pdp__price-label {
    font-size: 13px;
    font-weight: 500;
    color: #9CA3A0;
    letter-spacing: 0.02em;
}

.ldb-pdp__price .ldb-price--old {
    font-size: clamp(16px, 3.8vw, 20px);
    margin-bottom: 0;
    color: var(--ldb-price-striked, #9CA3A0);
}

.ldb-pdp__price .ldb-price--promo {
    align-items: flex-start;
}

.ldb-pdp__price .ldb-price--promo .ldb-price__amount {
    justify-content: flex-start;
}

.ldb-pdp__price .ldb-price--promo .ldb-price__value {
    font-size: clamp(26px, 5.4vw, 32px);
    color: var(--ldb-price-promo-value, var(--ldb-gold-hover));
}

.ldb-pdp__price .ldb-price__discount {
    font-size: 13px;
    padding: 3px 9px;
}

.ldb-pdp__pay {
    margin: 8px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-family: "Lexend", sans-serif;
    line-height: 1.3;
}

.ldb-pdp__installment {
    color: #5a5a5a;
    font-size: 15px;
    font-weight: 500;
}

.ldb-pdp__pix {
    margin: 0;
    color: var(--ldb-cta, #2e7d32);
    font-size: 22px;
    font-weight: 700;
}

.ldb-pdp__installments {
    margin: 0;
    border: 1px solid var(--ldb-border, #E5E7E5);
    border-radius: 10px;
    background: #FAFAF8;
    overflow: hidden;
}

.ldb-pdp__installments-summary {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 6px 12px;
    padding: 10px 12px;
    cursor: pointer;
    list-style: none;
}

.ldb-pdp__installments-summary::-webkit-details-marker {
    display: none;
}

.ldb-pdp__installments-summary .ldb-pdp__installment {
    flex: 1 1 auto;
    min-width: 0;
}

.ldb-pdp__installments-toggle {
    flex: 0 0 auto;
    color: var(--ldb-ink, #1E392A);
    font-size: 12px;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.ldb-pdp__installments[open] .ldb-pdp__installments-toggle {
    color: var(--ldb-gold-hover, #B8923A);
}

.ldb-pdp__installments-list {
    margin: 0;
    padding: 0 12px 12px;
    list-style: none;
    border-top: 1px solid var(--ldb-border, #E5E7E5);
}

.ldb-pdp__installments-list li {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid #EEEAE3;
    color: #4a4a4a;
    font-size: 13px;
    font-weight: 500;
}

.ldb-pdp__installments-list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

#product-product .quantitygrp,
#product-product .price-tax,
#product-product .productTitle + div .price-new {
    display: none !important;
}

.ldb-pdp__options {
    margin-bottom: 16px;
}

.ldb-pdp__variation {
    margin: 0 0 18px;
}

.ldb-pdp__variation-label {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px;
    margin: 0 0 12px;
    font-family: "Lexend", sans-serif;
    line-height: 1.3;
}

.ldb-pdp__variation-name {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ldb-muted, #5f6b66);
}

.ldb-pdp__variation-current {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
    color: var(--ldb-ink, #1E392A);
}

#product-product .ldb-pdp__variation-list,
.ldb-pdp__variation-list {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none !important;
    width: 100%;
    max-width: 460px;
}

#product-product .ldb-pdp__variation-item,
.ldb-pdp__variation-item {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    float: none !important;
}

.ldb-pdp__variation-link {
    position: relative;
    display: block;
    width: 100%;
    text-decoration: none;
    border: 2px solid var(--ldb-border, #E8ECE9);
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    transform: translateZ(0);
    transition: border-color 0.18s ease, opacity 0.18s ease, filter 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.ldb-pdp__variation-link:hover,
.ldb-pdp__variation-link:focus {
    border-color: var(--ldb-gold, #D4AF68);
    outline: none;
    transform: scale(1.03);
    box-shadow: 0 4px 14px rgba(30, 57, 42, 0.12);
}

.ldb-pdp__variation-item.is-active .ldb-pdp__variation-link,
.ldb-pdp__variation-item.is-active .ldb-pdp__variation-link:hover,
.ldb-pdp__variation-item.is-active .ldb-pdp__variation-link:focus {
    border-color: var(--ldb-gold, #D4AF68);
    box-shadow: 0 0 0 1px var(--ldb-gold, #D4AF68), 0 4px 14px rgba(212, 175, 104, 0.28);
    transform: none;
}

#product-product .ldb-pdp__variation-item.is-oos .ldb-pdp__variation-link,
.ldb-pdp__variation-item.is-oos .ldb-pdp__variation-link {
    opacity: 0.55 !important;
    filter: grayscale(1) !important;
}

#product-product .ldb-pdp__variation-item.is-oos .ldb-pdp__variation-link:hover,
.ldb-pdp__variation-item.is-oos .ldb-pdp__variation-link:hover,
#product-product .ldb-pdp__variation-item.is-oos .ldb-pdp__variation-link:focus,
.ldb-pdp__variation-item.is-oos .ldb-pdp__variation-link:focus {
    transform: none;
    box-shadow: none;
    border-color: var(--ldb-border, #E8ECE9);
}

.ldb-pdp__variation-oos {
    position: absolute;
    left: 4px;
    right: 4px;
    bottom: 4px;
    z-index: 3;
    padding: 2px 4px;
    border-radius: 999px;
    background: rgba(30, 57, 42, 0.82);
    color: #fff;
    font-family: "Lexend", sans-serif;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.2;
    pointer-events: none;
}

.ldb-pdp__variation-link--image {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
}

.ldb-pdp__variation-link--image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.ldb-pdp__variation-link--color {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    position: relative;
}

.ldb-pdp__variation-swatch {
    display: block;
    width: 100%;
    height: 100%;
    background: var(--ldb-variation-swatch, #ccc);
}

.ldb-pdp__variation-link--text {
    width: 100%;
    min-height: 0;
    aspect-ratio: 1 / 1;
    padding: 6px;
    font-family: "Lexend", sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: var(--ldb-ink, #1E392A);
    text-align: center;
    line-height: 1.2;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

@media (max-width: 767px) {
    #product-product .ldb-pdp__variation-list,
    .ldb-pdp__variation-list {
        gap: 8px;
        max-width: none;
    }

    .ldb-pdp__variation-oos {
        font-size: 7px;
        padding: 2px 3px;
    }

    .ldb-pdp__variation-link--text {
        font-size: 11px;
        padding: 4px;
    }
}

@media (min-width: 768px) {
    #product-product .ldb-pdp__variation-list,
    .ldb-pdp__variation-list {
        gap: 12px;
        max-width: 480px;
    }

    .ldb-pdp__variation-oos {
        font-size: 9px;
        padding: 3px 5px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ldb-pdp__variation-link,
    .ldb-pdp__variation-link:hover,
    .ldb-pdp__variation-link:focus {
        transition: none;
        transform: none;
    }
}

.ldb-pdp__options-heading {
    margin: 0 0 10px;
    font-family: "Lexend", sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ldb-muted, #5f6b66);
}

.ldb-pdp__options .form-group,
.ldb-pdp__option {
    background: #f8faf9;
    padding: 14px;
    border-radius: var(--ldb-radius-md, 12px);
    border: 1px solid var(--ldb-border, #E8ECE9);
    margin-bottom: 10px;
}

.ldb-pdp__options .control-label {
    display: block;
    margin-bottom: 8px;
    font-family: "Lexend", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--ldb-ink, #1E392A);
    line-height: 1.3;
}

.ldb-pdp__options .required > .control-label:after {
    content: ' *';
    color: #c62828;
    font-weight: 700;
}

.ldb-pdp__options .form-control {
    display: block;
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    font-family: "Lexend", sans-serif;
    font-size: 14px;
    color: var(--ldb-ink, #1E392A);
    background: #fff;
    border: 1px solid var(--ldb-border, #E8ECE9);
    border-radius: 10px;
    box-shadow: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.ldb-pdp__options textarea.form-control {
    min-height: 110px;
    resize: vertical;
}

.ldb-pdp__options .form-control:focus {
    border-color: var(--ldb-gold, #D4AF68);
    outline: none;
    box-shadow: 0 0 0 3px rgba(212, 175, 104, 0.22);
}

.ldb-pdp__option-choices {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ldb-pdp__option-choice {
    margin: 0 !important;
}

.ldb-pdp__option-choice > label {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 44px;
    margin: 0;
    padding: 10px 12px;
    font-family: "Lexend", sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--ldb-ink, #1E392A);
    background: #fff;
    border: 1px solid var(--ldb-border, #E8ECE9);
    border-radius: 10px;
    cursor: pointer;
    transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.ldb-pdp__option-choice > label:hover {
    border-color: rgba(212, 175, 104, 0.55);
}

.ldb-pdp__option-choice > label:has(input:checked),
.ldb-pdp__option-choice > label:focus-within {
    border-color: var(--ldb-gold, #D4AF68);
    background: #FFFBF2;
    box-shadow: 0 0 0 1px var(--ldb-gold, #D4AF68);
}

.ldb-pdp__option-choice input[type="radio"],
.ldb-pdp__option-choice input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
    flex-shrink: 0;
    accent-color: var(--ldb-ink, #1E392A);
}

.ldb-pdp__option-choice-text {
    flex: 1 1 auto;
    line-height: 1.35;
}

.ldb-pdp__option-choice-price {
    color: var(--ldb-muted, #5f6b66);
    font-weight: 500;
}

.ldb-pdp__option-choice .img-thumbnail {
    width: 48px;
    height: 48px;
    padding: 2px;
    margin: 0;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--ldb-border, #E8ECE9);
    background: #fff;
    flex-shrink: 0;
}

.ldb-pdp__option-choice--image > label {
    align-items: center;
}

.ldb-pdp__option-upload,
.ldb-pdp__options .input-group-btn .btn {
    min-height: 44px;
    font-family: "Lexend", sans-serif;
    font-weight: 600;
    color: var(--ldb-ink, #1E392A) !important;
    background: #FFFBF2 !important;
    border: 1px solid rgba(212, 175, 104, 0.55) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}

.ldb-pdp__option-upload:hover,
.ldb-pdp__options .input-group-btn .btn:hover {
    background: #fff !important;
    border-color: var(--ldb-gold, #D4AF68) !important;
    color: var(--ldb-ink, #1E392A) !important;
}

.ldb-pdp__options .input-group .form-control {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.ldb-pdp__options .input-group-btn .btn {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

.ldb-pdp__options .text-danger {
    display: block;
    margin-top: 6px;
    font-size: 12.5px;
    font-weight: 500;
    color: #c62828;
}

.ldb-pdp__options .help-block {
    margin: 8px 0 0;
    font-size: 13px;
    color: var(--ldb-muted, #5f6b66);
}

.ldb-pdp__cta {
    margin-top: 8px;
}

#product-product #button-cart.ldb-pdp__btn-cart,
.ldb-pdp__cta .ldb-pdp__btn-cart {
    width: 100%;
    min-height: 54px;
    padding: 15px 20px;
    border: 0 !important;
    border-radius: 10px !important;
    background: var(--ldb-cta) !important;
    color: #fff !important;
    font-family: "Lexend", sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    box-shadow: 0 10px 24px rgba(39, 174, 96, 0.28) !important;
    transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease;
}

#product-product #button-cart.ldb-pdp__btn-cart:hover,
#product-product #button-cart.ldb-pdp__btn-cart:focus,
.ldb-pdp__cta .ldb-pdp__btn-cart:hover,
.ldb-pdp__cta .ldb-pdp__btn-cart:focus {
    background: var(--ldb-cta-hover) !important;
    color: #fff !important;
    outline: none;
    box-shadow: 0 12px 28px rgba(39, 174, 96, 0.34) !important;
    transform: translateY(-1px);
}

#product-product #button-cart.ldb-pdp__btn-cart:active,
.ldb-pdp__cta .ldb-pdp__btn-cart:active {
    transform: translateY(0);
    box-shadow: 0 6px 16px rgba(39, 174, 96, 0.22) !important;
}

#product-product #button-cart.ldb-pdp__btn-cart.is-loading,
.ldb-pdp__cta .ldb-pdp__btn-cart.is-loading,
.ldb-pdp-sticky-bar__btn.is-loading {
    opacity: 0.82;
    pointer-events: none;
}

#product-product #button-cart.ldb-pdp__btn-cart.is-added,
.ldb-pdp__cta .ldb-pdp__btn-cart.is-added {
    background: var(--ldb-ink) !important;
    color: #fff !important;
    font-size: 15px;
    letter-spacing: 0.04em;
    box-shadow: 0 8px 20px rgba(30, 57, 42, 0.22) !important;
}

#product-product #button-cart.ldb-pdp__btn-cart.is-added:hover,
#product-product #button-cart.ldb-pdp__btn-cart.is-added:focus,
.ldb-pdp__cta .ldb-pdp__btn-cart.is-added:hover,
.ldb-pdp__cta .ldb-pdp__btn-cart.is-added:focus {
    background: #163024 !important;
    color: #fff !important;
}

.ldb-pdp__stock-alert {
    margin-top: 4px;
    padding: 16px;
    border: 1px solid #e3ebe6;
    border-radius: 14px;
    background: linear-gradient(180deg, #fcfefc 0%, #f6faf7 100%);
}

.ldb-pdp__stock-alert-head {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 10px;
}

.ldb-pdp__stock-alert-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(30, 57, 42, 0.08);
    color: var(--ldb-cta, #1e392a);
    font-size: 14px;
    flex: 0 0 auto;
}

.ldb-pdp__stock-alert-head-text {
    min-width: 0;
}

.ldb-pdp__stock-alert-heading {
    margin: 0 0 4px;
    font-size: 15px;
    font-weight: 600;
    color: #1e392a;
    line-height: 1.35;
}

.ldb-pdp__stock-alert-status {
    margin: 0;
    color: #8B4513;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}

.ldb-pdp__stock-alert-intro {
    margin: 0 0 14px;
    color: #5C6670;
    font-size: 14px;
    line-height: 1.5;
}

.ldb-pdp__stock-alert-form .form-group {
    margin-bottom: 10px;
}

.ldb-pdp__stock-alert-form .form-control {
    border-radius: 10px;
    border-color: #D8DEE4;
    min-height: 46px;
    background: #fff;
}

.ldb-pdp__stock-alert-form .form-control:focus {
    border-color: rgba(30, 57, 42, 0.35);
    box-shadow: 0 0 0 3px rgba(30, 57, 42, 0.08);
}

#product-product #button-stock-alert.ldb-pdp__btn-stock-alert,
.ldb-pdp__cta .ldb-pdp__btn-stock-alert {
    width: 100%;
    min-height: 54px;
    margin-top: 4px;
    padding: 15px 20px;
    border: 0 !important;
    border-radius: 10px !important;
    background: var(--ldb-cta) !important;
    color: #fff !important;
    font-family: "Lexend", sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    box-shadow: 0 10px 24px rgba(39, 174, 96, 0.28) !important;
    transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease;
}

#product-product #button-stock-alert.ldb-pdp__btn-stock-alert:hover,
#product-product #button-stock-alert.ldb-pdp__btn-stock-alert:focus,
.ldb-pdp__cta .ldb-pdp__btn-stock-alert:hover,
.ldb-pdp__cta .ldb-pdp__btn-stock-alert:focus {
    background: var(--ldb-cta-hover) !important;
    color: #fff !important;
    outline: none;
    box-shadow: 0 12px 28px rgba(39, 174, 96, 0.34) !important;
    transform: translateY(-1px);
}

.ldb-pdp__btn-stock-alert.is-done {
    background: var(--ldb-ink) !important;
    border-color: var(--ldb-ink) !important;
    box-shadow: 0 8px 20px rgba(30, 57, 42, 0.22) !important;
    transform: none;
}

.ldb-pdp__stock-alert-feedback {
    margin: 12px 0 0;
    font-size: 13px;
    line-height: 1.5;
}

.ldb-pdp__stock-alert-feedback.is-success {
    color: #1E392A;
}

.ldb-pdp__stock-alert-feedback.is-error {
    color: #B42318;
}

.ldb-pdp__stock-alert-done {
    display: none;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 10px;
    background: rgba(30, 57, 42, 0.06);
    border: 1px solid rgba(30, 57, 42, 0.12);
}

.ldb-pdp__stock-alert.is-done .ldb-pdp__stock-alert-done {
    display: flex;
}

.ldb-pdp__stock-alert-done-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #1e392a;
    color: #fff;
    font-size: 13px;
    flex: 0 0 auto;
}

.ldb-pdp__stock-alert-done-text {
    margin: 0;
    padding-top: 4px;
    color: #1e392a;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 500;
}

.ldb-pdp__stock-alert.is-done .ldb-pdp__stock-alert-intro,
.ldb-pdp__stock-alert.is-done .ldb-pdp__stock-alert-form {
    display: none;
}

.ldb-pdp__stock-alert.is-done .ldb-pdp__stock-alert-status {
    color: #1e392a;
}

.ldb-pdp__assurances {
    list-style: none;
    margin: 14px 0 0;
    padding: 0;
}

.ldb-pdp__assurances li {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 8px;
    color: #5C6670;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.35;
}

.ldb-pdp__assurances li:last-child {
    margin-bottom: 0;
}

.ldb-pdp__assurances i,
.ldb-pdp__assurance-icon {
    flex: 0 0 22px;
    width: 22px;
    text-align: center;
    color: inherit;
    font-size: 16px;
    line-height: 1;
    font-style: normal;
}

.ldb-pdp__section {
    margin-top: 32px;
    padding-top: 28px;
    border-top: 1px solid #eef1ef;
}

.ldb-pdp__section-heading {
    margin: 0 0 16px;
    font-size: 20px;
    font-weight: 600;
    color: var(--ldb-ink);
}

.ldb-pdp__description-body {
    color: #4a4a4a;
    font-size: 15px;
    line-height: 1.65;
}

.ldb-pdp__description-body img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

.ldb-pdp__description-body h2,
.ldb-pdp__description-body h3 {
    margin: 24px 0 10px;
    font-size: 18px;
    font-weight: 600;
    color: var(--ldb-ink);
}

.ldb-pdp__description-body p {
    margin: 0 0 12px;
}

.ldb-pdp__description-body ul,
.ldb-pdp__description-body ol {
    margin: 0 0 16px;
    padding-left: 20px;
}

#product-product .addthis_toolbox,
#product-product .nav.nav-tabs {
    display: none !important;
}

.ldb-pdp__specs {
    border: 1px solid var(--ldb-border);
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
}

.ldb-pdp__specs summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    cursor: pointer;
    font-weight: 600;
    color: var(--ldb-ink);
    list-style: none;
}

.ldb-pdp__specs summary::-webkit-details-marker {
    display: none;
}

.ldb-pdp__specs summary::after {
    content: "+";
    font-size: 18px;
    color: var(--ldb-gold);
}

.ldb-pdp__specs[open] summary::after {
    content: "−";
}

.ldb-pdp__specs .table {
    margin-bottom: 0;
}

.ldb-pdp__reviews-summary {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 5px;
    margin-bottom: 20px;
    padding: 14px 18px;
    border-radius: 14px;
    border: 1px solid rgba(232, 224, 213, 0.9);
    background: linear-gradient(135deg, #FFFCF8 0%, #FAF6EF 100%);
    box-shadow: 0 4px 18px rgba(30, 57, 42, 0.04);
    min-height: 0;
}

.ldb-pdp__reviews-summary.ldb-product-card__rating {
    margin-bottom: 20px;
}

.ldb-pdp__reviews-summary .ldb-pdp__stars {
    display: inline-flex;
    align-items: center;
    gap: 0;
    height: 22px;
    line-height: 1;
}

.ldb-pdp__reviews-score {
    font-size: 36px;
    font-weight: 700;
    color: var(--ldb-ink);
    line-height: 1;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
}

.ldb-pdp__reviews-count {
    color: #5C6670;
    font-size: 14px;
    line-height: 1;
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.ldb-pdp__reviews-form-title {
    margin: 24px 0 14px;
    font-size: 18px;
    font-weight: 600;
    color: var(--ldb-ink);
}

/* Formulário antigo da PDP — avaliação só pelo Avalie e Ganhe */
.ldb-pdp__review-form,
#form-review,
.ldb-pdp__reviews-form-title {
    display: none !important;
}

.ldb-pdp__review-form {
    margin-top: 8px;
    border: 1px solid #E8E0D5;
    border-radius: 14px;
    background: #FFFCF8;
}

.ldb-pdp__review-form > summary {
    cursor: pointer;
    list-style: none;
    padding: 14px 16px;
    margin: 0;
}

.ldb-pdp__review-form > summary::-webkit-details-marker {
    display: none;
}

.ldb-pdp__review-form #form-review {
    padding: 0 16px 16px;
}

.ldb-pdp__review-list {
    display: grid;
    gap: 14px;
}

.ldb-pdp__review-card {
    padding: 18px 18px 16px;
    border: 1px solid #E8E0D5;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(30, 57, 42, 0.04);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.ldb-pdp__review-card:hover {
    border-color: rgba(201, 168, 76, 0.45);
    box-shadow: 0 8px 24px rgba(30, 57, 42, 0.06);
}

.ldb-pdp__review-card-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 10px;
}

.ldb-pdp__review-card-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 6px 14px;
    width: 100%;
}

.ldb-pdp__review-author {
    color: var(--ldb-ink);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.ldb-pdp__review-date {
    color: #8A9299;
    font-size: 12px;
    font-weight: 500;
}

.ldb-pdp__review-card-rating .ldb-pdp__star {
    font-size: 18px;
}

.ldb-pdp__star {
    font-size: inherit;
    line-height: 1;
    -webkit-text-stroke: 0;
    text-shadow: none;
}

.ldb-pdp__star--filled {
    color: #fc0;
    opacity: 1;
}

.ldb-pdp__star--empty {
    color: #fc0;
    opacity: 0.28;
}

.ldb-pdp__review-text {
    margin: 0;
    color: #4a4a4a;
    font-size: 14px;
    line-height: 1.6;
}

.ldb-pdp__review-photos {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
    max-width: 100%;
}

.ldb-pdp__review-photo {
    display: block;
    flex: 0 0 auto;
    height: 120px;
    width: auto;
    max-width: min(180px, 42vw);
    padding: 0;
    border: 1px solid #E8E0D5;
    border-radius: 10px;
    overflow: hidden;
    background: #FAFAF8;
    cursor: zoom-in;
    transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.ldb-pdp__review-photo:hover,
.ldb-pdp__review-photo:focus {
    border-color: #C9A84C;
    box-shadow: 0 4px 12px rgba(30, 57, 42, 0.1);
    transform: translateY(-1px);
    outline: none;
}

.ldb-pdp__review-photo img {
    display: block;
    height: 120px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    pointer-events: none;
}

.ldb-pdp__review-photo picture {
    display: block;
    height: 120px;
    line-height: 0;
}

.ldb-pdp__reviews-empty {
    margin: 0 0 16px;
    color: #5C6670;
    font-size: 14px;
}

.ldb-pdp__review-pagination {
    margin-top: 16px;
}

.ldb-pdp__reviews #button-review {
    background: var(--ldb-ink);
    border: 0;
    border-radius: 10px;
    padding: 10px 18px;
    font-weight: 600;
}

.ldb-pdp__reviews .rating-input {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 4px;
}

.ldb-pdp__reviews .rating-input input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.ldb-pdp__reviews .rating-input label {
    cursor: pointer;
    color: #E0E0E0;
    font-size: 24px;
    margin: 0;
}

.ldb-pdp__reviews .rating-input label:hover,
.ldb-pdp__reviews .rating-input label:hover ~ label,
.ldb-pdp__reviews .rating-input input:checked ~ label {
    color: #FFC107;
}

/* Lightbox — fotos da avaliação */
.ldb-review-lightbox {
    position: fixed;
    inset: 0;
    z-index: 10050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 56px 56px 24px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

.ldb-review-lightbox.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.ldb-review-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(12, 16, 20, 0.82);
    cursor: zoom-out;
}

.ldb-review-lightbox__close {
    position: absolute;
    top: max(12px, env(safe-area-inset-top, 0px));
    right: max(12px, env(safe-area-inset-right, 0px));
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    cursor: pointer;
    transition: background 0.15s ease, transform 0.1s ease;
}

.ldb-review-lightbox__close span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 26px;
    font-weight: 400;
    line-height: 1;
    transform: translateY(-1px);
}

.ldb-review-lightbox__close:hover,
.ldb-review-lightbox__close:focus {
    background: rgba(255, 255, 255, 0.3);
    outline: none;
    transform: scale(1.05);
}

.ldb-review-lightbox__nav {
    position: absolute;
    top: 50%;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    margin-top: -22px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s ease;
}

.ldb-review-lightbox__nav:hover,
.ldb-review-lightbox__nav:focus {
    background: rgba(255, 255, 255, 0.3);
    outline: none;
}

.ldb-review-lightbox__nav--prev {
    left: max(10px, env(safe-area-inset-left, 0px));
}

.ldb-review-lightbox__nav--next {
    right: max(10px, env(safe-area-inset-right, 0px));
}

.ldb-review-lightbox__nav[hidden],
.ldb-review-lightbox__counter[hidden] {
    display: none !important;
}

.ldb-review-lightbox__figure {
    position: relative;
    z-index: 1;
    max-width: min(920px, 100%);
    max-height: calc(100vh - 96px);
    margin: 0;
}

.ldb-review-lightbox__img {
    display: block;
    max-width: 100%;
    max-height: calc(100vh - 96px);
    width: auto;
    height: auto;
    margin: 0 auto;
    border-radius: 12px;
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.35);
    background: #111;
}

.ldb-review-lightbox__counter {
    position: absolute;
    left: 50%;
    bottom: max(14px, env(safe-area-inset-bottom, 0px));
    z-index: 3;
    transform: translateX(-50%);
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.45);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.02em;
}

body.ldb-review-lightbox-open {
    overflow: hidden;
}

@media (max-width: 767px) {
    .ldb-pdp__stars .ldb-pdp__star {
        font-size: 18px;
    }

    .ldb-pdp__reviews-summary .ldb-product-card__rating-value {
        font-size: 20px;
    }

    .ldb-pdp__reviews-summary .ldb-product-card__rating-stars .fa {
        font-size: 18px;
    }

    .ldb-pdp__reviews-summary .ldb-product-card__rating-count {
        font-size: 14px;
    }

    .ldb-pdp__stars--lg .ldb-pdp__star,
    #product-product .ldb-pdp__reviews-summary .ldb-pdp__star {
        font-size: 26px !important;
    }

    .ldb-pdp__reviews-score {
        font-size: 30px;
    }

    .ldb-pdp__review-card {
        padding: 14px;
    }

    .ldb-pdp__review-photos {
        max-width: 100%;
        gap: 6px;
    }

    .ldb-pdp__review-photo {
        height: 104px;
        border-radius: 8px;
        max-width: min(150px, 40vw);
    }

    .ldb-pdp__review-photo img {
        height: 104px;
    }

    .ldb-review-lightbox {
        padding: 64px 12px 48px;
        touch-action: pan-y;
    }

    .ldb-review-lightbox__nav {
        display: none !important;
    }

    .ldb-review-lightbox__close {
        top: max(10px, env(safe-area-inset-top, 0px));
        right: max(10px, env(safe-area-inset-right, 0px));
    }

    .ldb-review-lightbox__nav--prev {
        left: 8px;
    }

    .ldb-review-lightbox__nav--next {
        right: 8px;
    }

    .ldb-review-lightbox__img {
        border-radius: 10px;
        max-height: calc(100vh - 120px);
        pointer-events: none;
        user-select: none;
        -webkit-user-drag: none;
    }
}

.ldb-pdp__related {
    margin-top: 36px;
}

.ldb-pdp__related .ldb-product-showcase__heading {
    text-align: left;
    font-size: 20px;
}

.ldb-pdp__tags {
    margin-top: 24px;
    font-size: 13px;
    color: #5C6670;
}

.ldb-pdp__tags a {
    color: var(--ldb-ink);
}

.ldb-pdp-sticky-bar {
    display: none;
}

@media (max-width: 767px) {
    body.ldb-pdp-sticky-active {
        padding-bottom: 96px;
    }

    body.ldb-pdp-sticky-active #mobileBottomBar {
        transform: translateY(110%);
        opacity: 0;
        pointer-events: none;
    }

    .ldb-pdp__gallery-scroll-item,
    .ldb-pdp__swiper .swiper-slide {
        min-height: 0;
        padding: 8px;
    }

    .ldb-pdp__gallery-image,
    .ldb-pdp__swiper-image {
        max-height: 34vh;
        max-width: 100%;
        width: auto;
        margin-left: auto;
        margin-right: auto;
    }

    #product-product .breadcrumb {
        display: none;
    }

    /* Impede abrir a imagem original ao tocar no mobile (template antigo) */
    .ldb-pdp__gallery-mobile .swiper-slide a {
        pointer-events: none !important;
    }

    .ldb-pdp-sticky-bar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1000030;
        display: block;
        padding: 10px 14px calc(10px + env(safe-area-inset-bottom, 0px));
        background: rgba(255, 255, 255, 0.96);
        border-top: 1px solid var(--ldb-border);
        box-shadow: 0 -8px 28px rgba(30, 57, 42, 0.12);
        transform: translateY(110%);
        opacity: 0;
        visibility: hidden;
        transition: transform 0.24s ease, opacity 0.24s ease, visibility 0.24s ease;
    }

    .ldb-pdp-sticky-bar.is-visible {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }

    .ldb-pdp-sticky-bar__inner {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        column-gap: 10px;
        align-items: center;
    }

    .ldb-pdp-sticky-bar__price {
        flex: unset;
        min-width: 0;
        max-width: none;
        grid-column: 1;
    }

    .ldb-pdp-sticky-bar__price-current {
        display: block;
        font-size: 18px;
        font-weight: 700;
        color: var(--ldb-ink);
        line-height: 1.15;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    #product-product .ldb-pdp-sticky-bar__price-promo,
    #product-product .ldb-pdp-sticky-bar__price-current.ldb-pdp-sticky-bar__price-promo {
        color: var(--ldb-gold-hover) !important;
    }

    .ldb-pdp-sticky-bar__price-old {
        display: block;
        font-size: 14px;
        color: #9CA3A0;
        text-decoration: line-through;
    }

    .ldb-pdp-sticky-bar__shipping {
        display: block;
        margin-top: 2px;
        font-size: 11px;
        font-weight: 600;
        line-height: 1.25;
        color: #5C6670;
        white-space: normal;
        overflow: visible;
        text-overflow: unset;
        word-break: break-word;
    }

    .ldb-pdp-sticky-bar__shipping.is-free {
        color: #2d7a4f;
    }

    .ldb-pdp-sticky-bar__shipping[hidden] {
        display: none !important;
    }

    .ldb-pdp-sticky-bar__btn {
        grid-column: 2;
        grid-row: 1 / -1;
        align-self: center;
        flex: unset;
        min-width: 112px;
        max-width: 42vw;
        min-height: 48px;
        padding: 12px 14px;
        border: 0;
        border-radius: 10px;
        background: var(--ldb-cta);
        color: #fff;
        font-family: "Lexend", sans-serif;
        font-size: 12px;
        font-weight: 700;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        white-space: normal;
        line-height: 1.2;
        text-align: center;
        overflow: hidden;
        box-sizing: border-box;
        box-shadow: 0 8px 18px rgba(39, 174, 96, 0.28);
        transition: background 0.18s ease, transform 0.12s ease, box-shadow 0.18s ease;
    }

    .ldb-pdp-sticky-bar__btn:hover,
    .ldb-pdp-sticky-bar__btn:focus {
        background: var(--ldb-cta-hover);
        color: #fff;
        outline: none;
        transform: translateY(-1px);
        box-shadow: 0 10px 22px rgba(39, 174, 96, 0.34);
    }

    .ldb-pdp-sticky-bar__btn.is-added {
        background: var(--ldb-ink);
        color: #fff;
        font-size: 12px;
        letter-spacing: 0.02em;
        box-shadow: 0 6px 16px rgba(30, 57, 42, 0.22);
    }

    .ldb-pdp-sticky-bar__btn.is-added:hover,
    .ldb-pdp-sticky-bar__btn.is-added:focus {
        background: #163024;
        color: #fff;
        transform: none;
    }

    @media (max-width: 380px) {
        .ldb-pdp-sticky-bar__price-current {
            font-size: 16px;
        }

        .ldb-pdp-sticky-bar__shipping {
            font-size: 10px;
        }

        .ldb-pdp-sticky-bar__btn {
            min-width: 100px;
            max-width: 38vw;
            padding: 10px 8px;
            font-size: 11px;
        }
    }
}

#product-product .ldb-pdp__gallery-scroll {
    margin-bottom: 0 !important;
}

@media (min-width: 768px) {
    .ldb-pdp__gallery-col {
        width: 58.333333%;
    }

    .ldb-pdp__buybox-col {
        width: 41.666667%;
    }

    .ldb-pdp__gallery-mobile {
        display: none;
    }

    .ldb-pdp__gallery-desktop {
        display: block;
    }

    .ldb-pdp__gallery {
        position: sticky;
        top: calc(var(--ldb-mobile-sticky-top, 88px) + 12px);
    }
}

@media (min-width: 992px) {
    .ldb-pdp__hero {
        margin-left: -15px;
        margin-right: -15px;
    }

    .ldb-pdp__gallery-col,
    .ldb-pdp__buybox-col {
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ldb-pdp-sticky-bar,
    .ldb-pdp__cta .ldb-pdp__btn-cart {
        transition: none !important;
    }
}

/* Magnific Popup — cabe inteiro na janela, sem scroll */
.mfp-bg {
    z-index: 1000200 !important;
}

.mfp-wrap {
    z-index: 1000201 !important;
    overflow: hidden !important;
}

.mfp-ldb-pdp.mfp-wrap {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}

.mfp-ldb-pdp .mfp-container {
    height: 100% !important;
    padding: 48px 72px 32px !important;
    box-sizing: border-box;
}

.mfp-ldb-pdp .mfp-content {
    max-width: min(92vw, 1100px);
    max-height: calc(100vh - 80px);
}

.mfp-ldb-pdp .mfp-figure {
    line-height: 0;
}

.mfp-ldb-pdp img.mfp-img {
    width: auto !important;
    max-width: 100% !important;
    max-height: calc(100vh - 96px) !important;
    padding: 0 !important;
    margin: 0 auto;
    object-fit: contain;
}

.mfp-ldb-pdp .mfp-bottom-bar {
    display: none;
}

.mfp-ldb-pdp .mfp-close {
    color: #fff;
    opacity: 0.92;
    top: 8px;
    right: 12px;
}

.mfp-ldb-pdp .mfp-arrow {
    opacity: 0.95;
    margin-top: -40px;
    width: 56px;
    height: 80px;
}

.mfp-ldb-pdp .mfp-arrow:hover,
.mfp-ldb-pdp .mfp-arrow:focus {
    opacity: 1;
}

.mfp-ldb-pdp .mfp-arrow-left {
    left: 8px;
}

.mfp-ldb-pdp .mfp-arrow-right {
    right: 8px;
}

/* #12.7 — bullets, compartilhar mobile, frete PDP, zoom mobile Magalu */
.ldb-pdp__highlights {
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
    display: grid;
    gap: 8px;
}

.ldb-pdp__highlights li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding-left: 0;
    color: #2f4638;
    font-size: 14px;
    line-height: 1.45;
}

.ldb-pdp__highlights li::before {
    content: "";
    flex: 0 0 8px;
    width: 8px;
    height: 8px;
    margin-top: calc((1.45em - 8px) / 2);
    border-radius: 50%;
    background: var(--ldb-gold, #d4af68);
}

.ldb-pdp-gallery-lightbox {
    position: fixed;
    inset: 0 0 65px;
    z-index: 1000002;
    display: flex;
    flex-direction: column;
    background: #2f3438;
    color: #fff;
}

.ldb-pdp-gallery-lightbox[hidden] {
    display: none !important;
}

.ldb-pdp-gallery-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: #2f3438;
}

.ldb-pdp-gallery-lightbox__top,
.ldb-pdp-gallery-lightbox__stage,
.ldb-pdp-gallery-lightbox__footer {
    position: relative;
    z-index: 1;
}

.ldb-pdp-gallery-lightbox__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px 8px;
}

.ldb-pdp-gallery-lightbox__counter {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
}

.ldb-pdp-gallery-lightbox__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 18px;
    cursor: pointer;
}

.ldb-pdp-gallery-lightbox__stage {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    padding: 8px 16px 12px;
    overflow: hidden;
    touch-action: none;
}

.ldb-pdp-gallery-lightbox__zoom {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    transform: scale(1);
    transform-origin: center center;
    will-change: transform;
}

.ldb-pdp-gallery-lightbox__img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    margin: 0 auto;
    object-fit: contain;
    background: #fff;
    border-radius: 4px;
    user-select: none;
    -webkit-user-drag: none;
}

.ldb-pdp-gallery-lightbox__footer {
    padding: 12px 14px 16px;
    background: linear-gradient(180deg, rgba(47, 52, 56, 0) 0%, rgba(47, 52, 56, 0.92) 24%, #2f3438 100%);
}

.ldb-pdp-gallery-lightbox__title {
    margin: 0 0 12px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
    color: rgba(255, 255, 255, 0.92);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ldb-pdp-gallery-lightbox__cart-msg {
    margin: 0 0 12px;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 13px;
    line-height: 1.4;
}

.ldb-pdp-gallery-lightbox__cart-msg.is-success {
    background: rgba(30, 57, 42, 0.92);
    color: #fff;
}

.ldb-pdp-gallery-lightbox__cart-msg.is-error {
    background: rgba(176, 48, 48, 0.92);
    color: #fff;
}

.ldb-pdp-gallery-lightbox__cart-msg a {
    color: #fff;
    font-weight: 600;
    text-decoration: underline;
}

.ldb-pdp-gallery-lightbox__actions {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 10px;
    align-items: stretch;
}

.ldb-pdp-gallery-lightbox__share {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: none;
    border-radius: 50%;
    background: #fff;
    color: #1e392a;
    font-size: 16px;
    cursor: pointer;
}

.ldb-pdp-gallery-lightbox__cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 16px;
    border: none;
    border-radius: 999px;
    background: var(--ldb-cta, #1e392a);
    color: #fff;
    font-family: "Lexend", sans-serif;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

body.ldb-pdp-gallery-lightbox-open {
    overflow: hidden;
}

body.ldb-pdp-gallery-lightbox-open #topAdvantageBar,
body.ldb-pdp-gallery-lightbox-open #site-header {
    display: none !important;
}

.ldb-pdp__shipping {
    margin: 0 0 16px;
    padding: 16px;
    border: 1px solid #e3ebe6;
    border-radius: 14px;
    background: linear-gradient(180deg, #fcfefc 0%, #f6faf7 100%);
}

.ldb-pdp__shipping-head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.ldb-pdp__shipping-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(30, 57, 42, 0.08);
    color: var(--ldb-cta, #1e392a);
    font-size: 14px;
    flex: 0 0 auto;
}

.ldb-pdp__shipping-heading {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    color: #1e392a;
    line-height: 1.3;
}

.ldb-pdp__shipping-inline-label {
    display: none;
}

.ldb-pdp__shipping-compact {
    display: none;
}

.ldb-pdp__shipping-compact-text {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 6px;
    margin: 0;
    font-family: "Lexend", sans-serif;
    font-size: 14px;
    line-height: 1.35;
    color: #2f4638;
}

.ldb-pdp__shipping-compact-icon {
    color: var(--ldb-cta, #1e392a);
    font-size: 14px;
}

.ldb-pdp__shipping-change {
    padding: 0;
    border: none;
    background: none;
    color: var(--ldb-gold, #d4af68);
    font-family: inherit;
    font-size: inherit;
    font-weight: 600;
    text-decoration: underline;
    cursor: pointer;
}

.ldb-pdp__shipping-change:hover,
.ldb-pdp__shipping-change:focus-visible {
    color: #c4a058;
    outline: none;
}

.ldb-pdp__shipping-form {
    display: flex;
    gap: 8px;
    align-items: stretch;
}

.ldb-pdp__shipping-input {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 160px;
    height: 44px;
    padding: 0 14px;
    border: 1px solid #cfd9d3;
    border-radius: 10px;
    background: #fff;
    color: #1e392a;
    font-family: "Lexend", sans-serif;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.04em;
    box-shadow: inset 0 1px 2px rgba(30, 57, 42, 0.04);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.ldb-pdp__shipping-input:focus {
    border-color: var(--ldb-gold, #d4af68);
    box-shadow: 0 0 0 3px rgba(212, 175, 104, 0.18);
    outline: none;
}

.ldb-pdp__shipping-btn {
    flex: 0 0 auto;
    height: 44px;
    padding: 0 18px;
    border: none;
    border-radius: 10px;
    background: var(--ldb-gold, #d4af68);
    color: #fff;
    font-family: "Lexend", sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.01em;
    white-space: nowrap;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.15s ease, opacity 0.2s ease;
}

.ldb-pdp__shipping-btn:hover,
.ldb-pdp__shipping-btn:focus-visible {
    background: #c4a058;
    outline: none;
}

.ldb-pdp__shipping-btn:disabled {
    opacity: 0.72;
    cursor: wait;
}

.ldb-pdp__shipping-btn-icon {
    display: none;
    font-size: 14px;
    line-height: 1;
}

.ldb-pdp__shipping-help {
    margin: 8px 0 0;
    font-size: 12px;
    line-height: 1.35;
}

.ldb-pdp__shipping-help a {
    color: var(--ldb-gold, #c4a058);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.ldb-pdp__shipping-help a:hover,
.ldb-pdp__shipping-help a:focus-visible {
    color: #a88640;
}

.ldb-pdp__shipping.is-compact .ldb-pdp__shipping-head,
.ldb-pdp__shipping.is-compact .ldb-pdp__shipping-form,
.ldb-pdp__shipping.is-compact .ldb-pdp__shipping-help {
    display: none !important;
}

.ldb-pdp__shipping.is-compact .ldb-pdp__shipping-compact {
    display: block;
}

.ldb-pdp__shipping-results {
    margin-top: 12px;
}

.ldb-pdp__shipping-loading {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: #f3f8f5;
    color: #3f5649;
    font-size: 13px;
    line-height: 1.4;
}

.ldb-pdp__shipping-loading-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--ldb-gold, #c4a058);
    flex-shrink: 0;
    animation: ldb-pdp-shipping-pulse 1s ease-in-out infinite;
}

@keyframes ldb-pdp-shipping-pulse {
    0%, 100% { opacity: 0.35; transform: scale(0.92); }
    50% { opacity: 1; transform: scale(1); }
}

.ldb-pdp__shipping-results.is-error .ldb-pdp__shipping-error {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: #fff3f3;
    color: #9b2c2c;
    font-size: 13px;
    line-height: 1.4;
}

.ldb-pdp__shipping-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 8px;
}

.ldb-pdp__shipping-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 14px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #e3ebe6;
    box-shadow: 0 1px 2px rgba(30, 57, 42, 0.04);
}

.ldb-pdp__shipping-option-main {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    flex: 1 1 auto;
    min-width: 0;
}

.ldb-pdp__shipping-option-title {
    min-width: 0;
    color: #5f7168;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.35;
}

.ldb-pdp__shipping-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    line-height: 1.3;
}

.ldb-pdp__shipping-badge--free {
    background: rgba(45, 122, 79, 0.12);
    color: #2d7a4f;
}

.ldb-pdp__shipping-badge--lowest {
    background: rgba(196, 160, 88, 0.16);
    color: #8a6b2a;
}

.ldb-pdp__shipping-option-price {
    flex: 0 0 auto;
    color: var(--ldb-gold, #c4a058);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.ldb-pdp__shipping-option-price.is-free {
    color: #2d7a4f;
}

@media (max-width: 767px) {
    .ldb-pdp__highlights--desc {
        display: none;
    }

    .ldb-pdp__gallery-share {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        right: 12px;
        bottom: 12px;
        z-index: 6;
        width: 40px;
        height: 40px;
        padding: 0;
        border: none;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.94);
        color: #1e392a;
        box-shadow: 0 2px 10px rgba(30, 57, 42, 0.14);
        cursor: pointer;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    .ldb-pdp__gallery-share:hover,
    .ldb-pdp__gallery-share:focus-visible {
        transform: scale(1.04);
        box-shadow: 0 4px 14px rgba(30, 57, 42, 0.18);
        outline: none;
    }

    .ldb-pdp__gallery-share .fa {
        font-size: 16px;
        line-height: 1;
    }

    .ldb-pdp__shipping {
        margin: 0 0 12px;
        padding: 0;
        border: none;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .ldb-pdp__shipping-head {
        display: none;
    }

    .ldb-pdp__shipping-inline-label {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        flex: 0 0 auto;
        font-family: "Lexend", sans-serif;
        font-size: 13px;
        font-weight: 600;
        color: #1e392a;
        white-space: nowrap;
    }

    .ldb-pdp__shipping-inline-label .fa {
        font-size: 14px;
        color: var(--ldb-cta, #1e392a);
    }

    .ldb-pdp__shipping.is-compact .ldb-pdp__shipping-form {
        display: none;
    }

    .ldb-pdp__shipping.is-compact .ldb-pdp__shipping-compact {
        display: block;
    }

    .ldb-pdp__shipping-form {
        flex-wrap: nowrap;
        align-items: center;
        gap: 8px;
    }

    .ldb-pdp__shipping-input {
        flex: 0 0 auto;
        width: 118px;
        max-width: 118px;
        min-width: 118px;
        height: 40px;
        font-size: 14px;
        padding: 0 10px;
    }

    .ldb-pdp__shipping-btn {
        flex: 0 0 auto;
        width: auto;
        min-width: 40px;
        height: 40px;
        padding: 0 12px;
    }

    .ldb-pdp__shipping-btn-label {
        display: none;
    }

    .ldb-pdp__shipping-btn-icon {
        display: inline-block;
    }

    .ldb-pdp__shipping-results {
        margin-top: 8px;
    }

    .ldb-pdp__shipping-list {
        gap: 6px;
    }

    .ldb-pdp__shipping-option {
        padding: 10px 12px;
        border-radius: 8px;
    }

    .ldb-pdp__shipping-option-title {
        font-size: 12px;
    }

    .ldb-pdp__shipping-option-price {
        font-size: 13px;
    }
}
