/**
 * Consolidated active stylesheet.
 * The previously imported rules are inlined here to avoid missing dependencies
 * and an extra render-blocking request.
 */
/** Single-product responsive gallery and recommendation corrections. */

:root {
    --helova-pdp-image-fit: contain;
}

body.single-product .helova-static-product-v420 .helova-pdp-gallery-v400 {
    display: grid !important;
    grid-template-columns: 84px minmax(0, 1fr) !important;
    grid-template-areas: "thumbs main" !important;
    align-items: start !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
}

body.single-product .helova-static-product-v420 .helova-pdp-gallery-v400.has-one-image {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "main" !important;
}

body.single-product .helova-static-product-v420 .helova-pdp-gallery-v400.has-one-image .helova-pdp-thumbs-v400 {
    display: none !important;
}

body.single-product .helova-static-product-v420 .helova-pdp-main-frame-v400 {
    grid-area: main !important;
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    border: 1px solid rgba(107, 30, 53, .10) !important;
    border-radius: 10px !important;
    background: #fbf6f0 !important;
}

body.single-product .helova-static-product-v420 .helova-pdp-main-image-v400 {
    width: 100% !important;
    height: 100% !important;
    object-fit: var(--helova-pdp-image-fit) !important;
    object-position: center !important;
    background: #fbf6f0 !important;
}

body.single-product .helova-static-product-v420 .helova-pdp-thumbs-v400 {
    grid-area: thumbs !important;
    grid-column: auto !important;
    width: 84px !important;
    max-height: min(720px, 78vh) !important;
    padding: 0 !important;
}

body.single-product .helova-pdp-thumb-v400 {
    flex-basis: 80px !important;
    width: 80px !important;
    height: 80px !important;
    padding: 3px !important;
    border-radius: 8px !important;
}

body.single-product .helova-pdp-thumb-v400.is-invalid,
body.single-product .helova-pdp-thumb-v400:has(img[src=""]) {
    display: none !important;
}

body.single-product .helova-static-product-v420__summary {
    min-width: 0 !important;
}

body.single-product :where(.related.products, .upsells.products) {
    padding-bottom: 76px !important;
}

@media (max-width: 820px) {
    body.single-product .helova-static-product-v420__primary {
        gap: 30px !important;
    }

    body.single-product .helova-static-product-v420 .helova-pdp-gallery-v400 {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 10px !important;
    }

    body.single-product .helova-static-product-v420 .helova-pdp-main-frame-v400 {
        order: 1 !important;
        width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        border-radius: 8px !important;
    }

    body.single-product .helova-static-product-v420 .helova-pdp-thumbs-v400 {
        order: 2 !important;
        display: flex !important;
        flex-direction: row !important;
        width: 100% !important;
        max-height: none !important;
        gap: 8px !important;
        padding: 2px 0 5px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: none !important;
    }

    body.single-product .helova-static-product-v420 .helova-pdp-thumbs-v400::-webkit-scrollbar {
        display: none !important;
    }

    body.single-product .helova-pdp-thumb-v400 {
        flex: 0 0 68px !important;
        width: 68px !important;
        height: 68px !important;
        scroll-snap-align: start !important;
    }
}

@media (max-width: 520px) {
    body.single-product .helova-core-product-main {
        padding-inline: 10px !important;
    }

    body.single-product .helova-static-product-v420__primary {
        gap: 24px !important;
    }

    body.single-product .helova-static-product-v420__summary .product_title {
        font-size: clamp(34px, 10.5vw, 46px) !important;
    }
}

/* Product-page settings bridge. These selectors are intentionally limited to the canonical PDP. */
body.single-product .helova-static-product-v420__primary{grid-template-columns:minmax(0,var(--helova-pdp-main-width)) minmax(300px,1fr)!important}
body.single-product .helova-pdp-main-image-v400,body.single-product .helova-pdp-stack-v4140 img{object-fit:var(--helova-pdp-image-fit)!important}
body.single-product .helova-pdp-thumb-v400{flex-basis:var(--helova-pdp-thumb-size)!important;width:var(--helova-pdp-thumb-size)!important;height:var(--helova-pdp-thumb-size)!important}
body.single-product :where(.product_title,.helova-pdp-title-v400){font-size:clamp(30px,var(--helova-pdp-title-size),64px)!important}
body.single-product :where(.summary .price,.helova-pdp-price-v400){font-size:var(--helova-pdp-price-size)!important}
body.single-product .related.products ul.products{grid-template-columns:repeat(var(--helova-related-columns),minmax(0,1fr))!important}

/* Gallery layouts. */
body.single-product .helova-pdp-stack-v4140{display:none}
body.single-product.helova-pdp-gallery-thumbs-left .helova-static-product-v420 .helova-pdp-gallery-v400{grid-template-columns:var(--helova-pdp-thumb-size) minmax(0,1fr)!important;grid-template-areas:"thumbs main"!important}
body.single-product.helova-pdp-gallery-thumbs-left .helova-static-product-v420 .helova-pdp-thumbs-v400{grid-area:thumbs!important;width:var(--helova-pdp-thumb-size)!important}
body.single-product.helova-pdp-gallery-thumbs-left .helova-static-product-v420 .helova-pdp-main-frame-v400{grid-area:main!important;grid-column:auto!important}
body.single-product.helova-pdp-gallery-thumbs-bottom .helova-static-product-v420 .helova-pdp-gallery-v400{display:flex!important;flex-direction:column!important;gap:12px!important}
body.single-product.helova-pdp-gallery-thumbs-bottom .helova-static-product-v420 .helova-pdp-main-frame-v400{order:1!important;width:100%!important}
body.single-product.helova-pdp-gallery-thumbs-bottom .helova-static-product-v420 .helova-pdp-thumbs-v400{order:2!important;display:flex!important;flex-direction:row!important;width:100%!important;max-height:none!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin!important}
body.single-product.helova-pdp-gallery-stacked .helova-static-product-v420 .helova-pdp-thumbs-v400,body.single-product.helova-pdp-gallery-stacked .helova-static-product-v420 .helova-pdp-main-frame-v400{display:none!important}
body.single-product.helova-pdp-gallery-stacked .helova-static-product-v420 .helova-pdp-gallery-v400{display:block!important}
body.single-product.helova-pdp-gallery-stacked .helova-pdp-stack-v4140{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;width:100%!important}
body.single-product .helova-pdp-stack-item-v4140{aspect-ratio:4/5;margin:0!important;overflow:hidden;background:var(--helova-ivory)}
body.single-product .helova-pdp-stack-item-v4140 a,body.single-product .helova-pdp-stack-item-v4140 img{display:block;width:100%;height:100%}

/* Variation controls. Both historical swatch renderers are covered while the native select remains the fallback. */
body.single-product.helova-pdp-variation-pills :where(.helova-pdp-colour-v400,.helova-pdp-swatch-v410){border-radius:999px!important}
body.single-product.helova-pdp-variation-square :where(.helova-pdp-colour-v400,.helova-pdp-swatch-v410){border-radius:4px!important}
body.single-product.helova-pdp-variation-native .helova-pdp-colours-v400,body.single-product.helova-pdp-variation-native .helova-pdp-swatches-v410,body.single-product.helova-pdp-variation-native .helova-pdp-swatches-v410.is-enhanced{display:none!important}
body.single-product.helova-pdp-variation-native select.helova-pdp-native-colour-select,body.single-product.helova-pdp-variation-native select.helova-pdp-native-colour-select-v410{position:static!important;display:block!important;width:100%!important;height:auto!important;min-height:46px!important;margin:0!important;padding:10px 38px 10px 12px!important;overflow:visible!important;border:1px solid var(--helova-input-border)!important;border-radius:var(--helova-button-radius)!important;background:var(--helova-input-background)!important;color:var(--helova-deep)!important;clip:auto!important;clip-path:none!important;white-space:normal!important}

/* Quantity styles. */
body.single-product.helova-pdp-quantity-minimal .helova-product-quantity-v474{grid-template-columns:38px 54px 38px!important;min-height:48px!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
body.single-product.helova-pdp-quantity-minimal .helova-product-quantity-v474 .quantity{width:54px!important;border:0!important;border-bottom:1px solid var(--helova-border-color)!important}
body.single-product.helova-pdp-quantity-minimal .helova-product-quantity-v474 input.qty{height:46px!important;min-height:46px!important}
body.single-product.helova-pdp-quantity-minimal .helova-quantity-button-v474{width:38px!important;min-width:38px!important;height:46px!important;border-radius:50%!important}

@media(max-width:899px){
 body.single-product .helova-static-product-v420__primary{grid-template-columns:1fr!important}
 body.single-product .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.single-product:not(.helova-pdp-gallery-stacked) .helova-static-product-v420 .helova-pdp-gallery-v400{display:flex!important;flex-direction:column!important;gap:10px!important}
 body.single-product:not(.helova-pdp-gallery-stacked) .helova-static-product-v420 .helova-pdp-main-frame-v400{order:1!important;width:100%!important}
 body.single-product:not(.helova-pdp-gallery-stacked) .helova-static-product-v420 .helova-pdp-thumbs-v400{order:2!important;display:flex!important;flex-direction:row!important;width:100%!important;max-height:none!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important}
}
