/* HyperDAF Commerce Single Product production bundle. Generated from ordered section sources; do not edit directly. */

/* source: modules/single-product/base.css */
body.hdc-single-product-page {
    --hdc-single-page-width: 1320px;
    --hdc-single-page-gutter: 24px;
    --hdc-single-summary-gap: 18px;
    --hdc-single-gallery-percent: 44%;
    --hdc-single-gallery-width-adjustment: 80px;
    --hdc-single-gallery-padding: 12px;
    --hdc-single-gallery-max-height: 560px;
    --hdc-single-thumbnail-top-gap: 50px;
    --hdc-single-trust-zone-height: 84px;
    --hdc-single-trust-badges-row-top-gap: 10px;
    --hdc-single-section-gap: 18px;
    --hdc-single-title-size: 27px;
    --hdc-single-rating-size: 12px;
    --hdc-single-price-size: 34px;
    --hdc-single-old-price-size: 15px;
    --hdc-single-rating-color: #FFB900;
    --hdc-single-price-color: #000000;
    --hdc-single-old-price-color: #DC2626;
    --hdc-single-stock-background: #ECFDF3;
    --hdc-single-stock-border: #86EFAC;
    --hdc-single-stock-text: #15803D;
    --hdc-single-action-hover-background: #FFFFFF;
    --hdc-single-action-hover-border: #F97316;
    --hdc-single-action-hover-text: #EA580C;
    --hdc-single-tab-button-height: 40px;
    --hdc-single-tab-button-padding-x: 18px;
    --hdc-single-tabs-panel-padding: 14px;
    --hdc-single-attributes-cell-padding: 16px;
    --hdc-single-breadcrumb-top-gap: 5px;
    --hdc-single-breadcrumb-bottom-gap: 12px;
    --hdc-single-thumb-size: 64px;
    --hdc-single-related-columns: 4;
}

body.hdc-single-product-page .site-main,
body.hdc-single-product-page .hdf-page,
body.hdc-single-product-page .content-area,
body.hdc-single-product-page .woocommerce {
    width: 100%;
    max-width: none;
}

body.hdc-single-product-page .site-main > .woocommerce {
    width: 100%;
    margin-inline: 0;
}

body.hdc-single-product-page .woocommerce-breadcrumb,
body.hdc-single-product-page .woocommerce .woocommerce-breadcrumb {
    width: min(var(--hdc-single-page-width), calc(100% - (var(--hdc-single-page-gutter) * 2)));
    margin-inline: auto;
}

body.hdc-single-product-page .woocommerce-notices-wrapper,
body.hdc-single-product-page .woocommerce-message,
body.hdc-single-product-page .woocommerce-info,
body.hdc-single-product-page .woocommerce-error {
    display: none;
}

body.hdc-single-product-page .hdc-single-product-layout {
    display: grid;
    width: min(var(--hdc-single-page-width), calc(100% - (var(--hdc-single-page-gutter) * 2)));
    min-width: 0;
    margin-inline: auto;
    align-items: stretch;
    gap: 20px;
}

body.hdc-single-product-page .hdc-single-product-layout--no-sidebar {
    grid-template-columns: minmax(0, 1fr);
}

body.hdc-single-product-page .hdc-single-product-layout--has-sidebar {
    grid-template-columns: minmax(250px, 292px) minmax(0, 1fr);
    grid-template-areas: "product-sidebar product-primary";
}

body.hdc-single-product-page .hdc-single-product-primary {
    min-width: 0;
    grid-area: product-primary;
}

body.hdc-single-product-page .hdc-single-product-layout > .hdf-context-sidebar--product {
    min-width: 0;
    height: 100%;
    grid-area: product-sidebar;
    align-self: stretch;
}

body.hdc-single-product-page .hdc-single-product-managed {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: minmax(0, calc(var(--hdc-single-gallery-percent) - var(--hdc-single-gallery-width-adjustment))) minmax(0, 1fr);
    grid-auto-flow: row;
    align-items: start;
    column-gap: var(--hdc-single-summary-gap);
    row-gap: 0;
    margin-inline: 0;
    isolation: isolate;
}

body.hdc-single-product-page .hdc-single-product-managed::before,
body.hdc-single-product-page .hdc-single-product-managed::after {
    display: none;
    content: none;
}

body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-gallery,
body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary,
body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-details,
body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-recommendations {
    min-width: 0;
    box-sizing: border-box;
}

body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary,
body.hdc-single-product-page .hdc-single-product-managed .woocommerce-product-gallery,
body.hdc-single-product-page .hdc-single-product-managed div.images {
    float: none;
    clear: none;
    width: 100%;
    max-width: none;
    margin: 0;
}

/* The right column is one unified premium surface, matching the reference
 * product page. Its child sections remain isolated renderers, but no longer
 * create a stack of unrelated boxes. */
body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary {
    position: relative;
    display: flex;
    align-self: stretch;
    flex-direction: column;
    gap: 0;
    overflow: hidden;
    border: 1px solid var(--hdc-flat-border);
    border-radius: var(--hdc-single-section-radius, var(--hdc-radius));
    background: var(--hdc-flat-surface);
}

body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > * {
    position: relative;
    z-index: 1;
}

body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > .hdc-raised-surface {
    border: 0;
    border-radius: 0;
    background: transparent;
}

body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > section:not(:last-child),
body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > .hdc-single-product-services {
    border-bottom: 1px solid var(--hdc-border);
}

/* Actions and purchase are one continuous summary block. The former divider,
 * and only the padding attached to that divider, are intentionally removed. */
body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > .hdc-single-product-actions {
    border-bottom: 0;
}

body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > .hdc-single-product-purchase {
    border-top: 0;
}

body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > .hdc-single-product-services {
    border-bottom: 0;
}

body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > .hdc-single-product-actions::after,
body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary > .hdc-single-product-purchase::before {
    display: none;
    content: none;
}

body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-details,
body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-recommendations {
    grid-column: 1 / -1;
}

.hdc-raised-surface {
    position: relative;
    border: 1px solid var(--hdc-flat-border);
    border-radius: var(--hdc-single-section-radius, var(--hdc-radius));
    background: var(--hdc-flat-surface);
}

.hdc-single-product-section-heading {
    display: flex;
    min-height: 44px;
    align-items: center;
    padding: 9px 14px;
    border: 1px solid var(--hdc-flat-border);
    border-radius: var(--hdc-single-section-radius, var(--hdc-radius));
    background: var(--hdc-flat-surface);
    color: var(--hdc-text);
}

.hdc-single-product-section-heading h2 {
    margin: 0;
    color: inherit;
    font-family: var(--hdc-font-heading);
    font-size: clamp(18px, 1.7vw, 24px);
    font-weight: var(--hdc-font-weight-heading);
    line-height: 1.15;
}

body.hdc-single-product-page .woocommerce-message,
body.hdc-single-product-page .woocommerce-info,
body.hdc-single-product-page .woocommerce-error {
    width: min(var(--hdc-single-page-width), calc(100% - (var(--hdc-single-page-gutter) * 2)));
    margin-inline: auto;
    border: 1px solid var(--hdc-flat-border);
    border-radius: var(--hdc-single-section-radius, var(--hdc-radius));
    box-shadow:none;
}

/* source: modules/single-product/gallery.css */
.hdc-single-product-gallery {
    position: relative;
    display: flex;
    min-width: 0;
    align-self: stretch;
    flex-direction: column;
    padding: var(--hdc-single-gallery-padding) var(--hdc-single-gallery-padding) 0;
}

.hdc-single-product-gallery__badges {
    position: absolute;
    z-index: 8;
    top: calc(var(--hdc-single-gallery-padding) + 4px);
    inset-inline-start: calc(var(--hdc-single-gallery-padding) + 4px);
    display: flex;
    align-items: center;
    gap: 10px;
    pointer-events: none;
}

.hdc-single-product-badge {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    padding: 5px 10px;
    border: 1px solid currentColor;
    border-radius: 999px;
    background: var(--hdc-surface);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    line-height: 1;
    text-transform: uppercase;
}

.hdc-single-product-badge--sale {
    color: var(--hdc-danger);
}

.hdc-single-product-gallery__media {
    position: relative;
    min-width: 0;
}

.hdc-single-product-gallery .woocommerce-product-gallery {
    float: none;
    clear: none;
    width: 100%;
    max-width: none;
    margin: 0;
    /* WooCommerce emits inline opacity:0 until its gallery script initializes.
     * The first server-rendered image is already usable, so keep it paintable
     * immediately and let enhancement add controls without a blank LCP box. */
    opacity: 1 !important;
}

.hdc-single-product-gallery .woocommerce-product-gallery .flex-viewport {
    margin: 0;
}

.hdc-single-product-gallery .woocommerce-product-gallery__wrapper {
    overflow: hidden;
    margin: 0;
    border: 1px solid var(--hdc-flat-border);
    border-radius: calc(var(--hdc-radius) - 4px);
    background: var(--hdc-surface);
}

.hdc-single-product-gallery .woocommerce-product-gallery__image,
.hdc-single-product-gallery .woocommerce-product-gallery__image a {
    min-width: 0;
    margin: 0;
}

.hdc-single-product-gallery .woocommerce-product-gallery__image a {
    display: grid;
    box-sizing: border-box;
    min-height: 0;
    place-items: center;
    padding: 10px;
    line-height: 0;
    cursor: zoom-in;
}

.hdc-single-product-gallery__trust {
    display: grid;
    width: auto;
    height: var(--hdc-single-trust-zone-height);
    min-height: var(--hdc-single-trust-zone-height);
    box-sizing: border-box;
    flex: 0 0 var(--hdc-single-trust-zone-height);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 8px;
    margin: auto 0 0;
    padding: var(--hdc-single-trust-badges-row-top-gap, 10px) var(--hdc-single-gallery-padding) 12px;
    border-top: 1px solid var(--hdc-border);
}

.hdc-single-product-gallery__trust .hdc-single-product-service {
    min-height: 0;
    box-sizing: border-box;
    border: 1px solid var(--hdc-flat-border);
    background: var(--hdc-surface);
}

.hdc-single-product-gallery .woocommerce-product-gallery__image img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: var(--hdc-single-gallery-max-height);
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
    opacity: 1;
    filter: none;
}

.hdc-single-product-gallery .flex-control-thumbs {
    display: flex;
    width: 100%;
    min-width: 0;
    gap: 8px;
    overflow-x: auto;
    margin: var(--hdc-single-thumbnail-top-gap) 0 0;
    padding: 0;
    list-style: none;
    scrollbar-width: thin;
    scroll-snap-type: x proximity;
}

.hdc-single-product-gallery .flex-control-thumbs li {
    flex: 0 0 var(--hdc-single-thumb-size);
    width: var(--hdc-single-thumb-size);
    height: var(--hdc-single-thumb-size);
    box-sizing: border-box;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--hdc-flat-border);
    border-radius: 9px;
    background: var(--hdc-surface);
    scroll-snap-align: start;
}

.hdc-single-product-gallery .flex-control-thumbs li[hidden] {
    display: none;
}

.hdc-single-product-gallery .flex-control-thumbs li.is-current,
.hdc-single-product-gallery .flex-control-thumbs li:has(img.flex-active),
.hdc-single-product-gallery .flex-control-thumbs li:focus-within {
    border-color: var(--hdc-primary);
}

.hdc-single-product-gallery .flex-control-thumbs img {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 3px;
    object-fit: contain;
    opacity: 1;
    filter: none;
    cursor: pointer;
}

.hdc-single-product-gallery .flex-control-thumbs img:focus-visible {
    outline: 2px solid var(--hdc-primary);
    outline-offset: -2px;
}

.hdc-single-product-gallery .woocommerce-product-gallery__trigger {
    top: 18px;
    right: 18px;
    width: 38px;
    height: 38px;
    border: 1px solid var(--hdc-flat-border);
    border-radius: 999px;
    background: var(--hdc-surface);
    color: var(--hdc-text);
}

.hdc-single-product-gallery__navigation {
    position: absolute;
    z-index: 7;
    top: 50%;
    inset-inline: 10px;
    display: flex;
    justify-content: space-between;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%);
    transition: opacity 140ms ease;
}

.hdc-single-product-gallery__navigation[hidden] {
    display: none;
}

.hdc-single-product-gallery__media.is-navigation-visible .hdc-single-product-gallery__navigation {
    opacity: 1;
    pointer-events: auto;
}

.hdc-single-product-gallery__nav {
    display: inline-flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--hdc-flat-border);
    border-radius: 999px;
    background: var(--hdc-surface);
    color: var(--hdc-text);
    font-family: var(--hdc-font-ui);
    font-size: 0;
    font-weight: 500;
    line-height: 0;
    cursor: pointer;
}

.hdc-single-product-gallery__nav svg {
    display: block;
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.25;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.hdc-single-product-gallery__nav:hover,
.hdc-single-product-gallery__nav:focus-visible {
    border-color: var(--hdc-primary);
    background: var(--hdc-primary);
    color: var(--hdc-button-text);
}

body.hdc-single-product-image-square .hdc-single-product-gallery .flex-viewport {
    width: 100%;
    aspect-ratio: 1 / 1;
}

body.hdc-single-product-image-square .hdc-single-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper,
body.hdc-single-product-image-square .hdc-single-product-gallery .flex-viewport .woocommerce-product-gallery__image,
body.hdc-single-product-image-square .hdc-single-product-gallery .flex-viewport .woocommerce-product-gallery__image a {
    height: 100%;
}

body.hdc-single-product-image-square .hdc-single-product-gallery .woocommerce-product-gallery__image a {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

body.hdc-single-product-image-square .hdc-single-product-gallery .woocommerce-product-gallery__image img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
    object-position: center;
}

body.hdc-single-product-image-natural .hdc-single-product-gallery .woocommerce-product-gallery__image img {
    width: 100%;
    height: auto;
    max-height: var(--hdc-single-gallery-max-height);
    object-fit: contain;
}

.hdc-single-product-viewer {
    position: fixed;
    z-index: 100000;
    inset: 0;
    display: grid;
    overflow: hidden;
    overscroll-behavior: contain;
    touch-action: none;
    opacity: 0;
    visibility: hidden;
    background: #000000;
    transition: opacity 140ms ease, visibility 140ms ease;
}

.hdc-single-product-viewer[hidden] {
    display: none;
}

.hdc-single-product-viewer.is-open {
    opacity: 1;
    visibility: visible;
}

.hdc-single-product-viewer__backdrop {
    position: absolute;
    inset: 0;
    background: #000000;
}

.hdc-single-product-viewer__dialog {
    position: relative;
    z-index: 1;
    display: grid;
    width: 100%;
    height: 100dvh;
    min-height: 0;
    box-sizing: border-box;
    grid-template-rows: auto minmax(0, 1fr) auto;
    padding: 14px;
    color: #FFFFFF;
}

.hdc-single-product-viewer__toolbar {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0 0 10px;
}

.hdc-single-product-viewer__help {
    overflow: hidden;
    color: #FFFFFF;
    font-size: 12px;
    line-height: 1.4;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hdc-single-product-viewer__close,
.hdc-single-product-viewer__nav {
    display: inline-grid;
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .58);
    border-radius: 999px;
    background: rgba(0, 0, 0, .38);
    color: #FFFFFF;
    font-family: var(--hdc-font-ui);
    line-height: 1;
    cursor: pointer;
}

.hdc-single-product-viewer__close {
    font-size: 30px;
    font-weight: 400;
}

.hdc-single-product-viewer__close:hover,
.hdc-single-product-viewer__close:focus-visible,
.hdc-single-product-viewer__nav:hover,
.hdc-single-product-viewer__nav:focus-visible {
    border-color: var(--hdc-primary);
    background: var(--hdc-primary);
    color: #FFFFFF;
}

.hdc-single-product-viewer__stage {
    position: relative;
    display: grid;
    min-width: 0;
    min-height: 0;
    place-items: center;
}

.hdc-single-product-viewer__viewport {
    position: relative;
    display: grid;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    place-items: center;
    cursor: zoom-in;
    touch-action: none;
    user-select: none;
}

.hdc-single-product-viewer__viewport.is-zoomed {
    cursor: grab;
}

.hdc-single-product-viewer__viewport.is-zoomed:active {
    cursor: grabbing;
}

.hdc-single-product-viewer__image {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    transform-origin: center center;
    will-change: transform;
}

.hdc-single-product-viewer__image.is-loading {
    opacity: .5;
}

.hdc-single-product-viewer__nav {
    position: absolute;
    z-index: 2;
    top: 50%;
    font-size: 32px;
    font-weight: 400;
    transform: translateY(-50%);
}

.hdc-single-product-viewer__nav[hidden] {
    display: none;
}

.hdc-single-product-viewer__nav--previous {
    inset-inline-start: 8px;
}

.hdc-single-product-viewer__nav--next {
    inset-inline-end: 8px;
}

.hdc-single-product-viewer__status {
    min-height: 22px;
    padding: 8px 0 0;
    color: #FFFFFF;
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
}

@media (hover: none) {
    .hdc-single-product-gallery__navigation {
        opacity: 1;
        pointer-events: auto;
    }
}

@media (max-width: 560px) {
    .hdc-single-product-viewer__dialog {
        padding: 10px;
    }

    .hdc-single-product-viewer__help {
        max-width: calc(100vw - 78px);
    }

    .hdc-single-product-viewer__viewport {
        width: 100%;
        height: 100%;
    }

    .hdc-single-product-viewer__nav {
        width: 38px;
        height: 38px;
    }

    .hdc-single-product-viewer__nav--previous {
        inset-inline-start: 2px;
    }

    .hdc-single-product-viewer__nav--next {
        inset-inline-end: 2px;
    }
}

/* source: modules/single-product/summary.css */
.hdc-single-product-summary-header {
    display: grid;
    gap: 9px;
    padding: 16px 18px 7px;
}

.hdc-single-product-taxonomy {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 14px;
    color: var(--hdf-breadcrumb-text, var(--hdc-muted-text));
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.4;
    text-transform: none;
}

.hdc-single-product-taxonomy__trail {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.hdc-single-product-taxonomy a {
    color: inherit;
    text-decoration: none;
}

.hdc-single-product-taxonomy a:hover,
.hdc-single-product-taxonomy a:focus-visible {
    color: var(--hdc-primary-hover);
    text-decoration: underline;
    text-underline-offset: 3px;
}

body.hdc-single-product-page .hdc-single-product-summary-header .product_title {
    margin: 0;
    color: var(--hdc-text);
    font-family: var(--hdc-font-heading);
    font-size: clamp(21px, 2.35vw, var(--hdc-single-title-size));
    font-weight: var(--hdc-font-weight-heading);
    line-height: 1.1;
    letter-spacing: -.02em;
}

.hdc-single-product-rating-row {
    display: flex;
    min-width: 0;
    min-height: 22px;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    overflow-x: auto;
    scrollbar-width: none;
    white-space: nowrap;
}

.hdc-single-product-rating-row::-webkit-scrollbar {
    display: none;
}

.hdc-single-product-rating-row__stars {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
}

.hdc-single-product-rating-row .star-rating {
    float: none;
    width: 5.4em;
    height: 1em;
    margin: 0;
    color: var(--hdc-single-rating-color, #FFB900);
    font-size: var(--hdc-single-rating-size);
    line-height: 1;
}

.hdc-single-product-rating-row .star-rating::before {
    color: var(--hdc-single-rating-color, #FFB900);
}

.hdc-single-product-rating-row .star-rating span::before {
    color: var(--hdc-single-rating-color, #FFB900);
}

.hdc-single-product-review-link {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    color: var(--hdc-muted-text);
    font-size: 12px;
    line-height: 1.2;
    text-decoration: none;
}

.hdc-single-product-review-link:hover,
.hdc-single-product-review-link:focus-visible {
    color: var(--hdc-primary-hover);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.hdc-single-product-review-link + .hdc-single-product-review-link::before {
    margin-inline-end: 8px;
    color: var(--hdc-border);
    content: "|";
}

/* source: modules/single-product/purchase.css */
.hdc-single-product-purchase {
    display: flex;
    min-height: 0;
    flex-direction: column;
    flex: 1 1 auto;
    gap: 0;
    padding: 0 var(--hdc-single-summary-row-padding-x, 18px) var(--hdc-single-cta-row-gap, 8px);
}

.hdc-single-product-purchase__price-stock-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) max-content;
    min-width: 0;
    align-items: center;
    column-gap: 20px;
    margin-block-end: var(--hdc-single-price-row-gap, 12px);
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__price-stock-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) max-content !important;
    align-items: center !important;
}

.hdc-single-product-purchase__price {
    min-width: 0;
}

.hdc-single-product-purchase__price .price,
.hdc-single-product-purchase__price > p.price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 5px var(--hdc-single-variation-price-gap, 20px) !important;
    margin: 0;
    color: var(--hdc-single-price-color, #000000) !important;
    font-family: var(--hdc-font-heading);
    font-size: var(--hdc-single-price-size);
    font-weight: 700;
    line-height: 1;
}

.hdc-single-product-purchase__price .hdc-single-product-unselected-variation-prices {
    column-gap: var(--hdc-single-variation-price-gap, 20px) !important;
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase.has-selected-variation .hdc-single-product-purchase__price .hdc-single-product-selected-variation-price,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase.has-selected-variation .hdc-single-product-purchase__price .hdc-single-product-selected-variation-price ins,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase.has-selected-variation .hdc-single-product-purchase__price .hdc-single-product-selected-variation-price ins .amount,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase.has-selected-variation .hdc-single-product-purchase__price .hdc-single-product-selected-variation-price > .amount {
    font-family: var(--hdc-font-heading);
    font-size: var(--hdc-single-price-size) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase.has-selected-variation .hdc-single-product-purchase__price .hdc-single-product-selected-variation-price del,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase.has-selected-variation .hdc-single-product-purchase__price .hdc-single-product-selected-variation-price del .amount {
    font-size: var(--hdc-single-old-price-size) !important;
    line-height: 1.15 !important;
}

.hdc-single-product-variation-endpoint {
    display: inline-flex;
    align-items: baseline;
    color: var(--hdc-single-price-color, #000000) !important;
    text-decoration: none;
}

.hdc-single-product-variation-endpoint--first {
    font-size: var(--hdc-single-old-price-size);
    line-height: 1.15;
}

.hdc-single-product-variation-endpoint--second {
    font-size: var(--hdc-single-price-size);
    line-height: 1;
}

.hdc-single-product-purchase__price > .price > .amount,
.hdc-single-product-purchase__price .hdc-single-product-variation-endpoint .amount,
.hdc-single-product-purchase__price ins,
.hdc-single-product-purchase__price ins .amount,
.hdc-single-product-purchase__form .woocommerce-variation-price ins,
.hdc-single-product-purchase__form .woocommerce-variation-price ins .amount {
    color: var(--hdc-single-price-color, #000000) !important;
}

.hdc-single-product-purchase__price del,
.hdc-single-product-purchase__price del .amount,
.hdc-single-product-purchase__form .woocommerce-variation-price del,
.hdc-single-product-purchase__form .woocommerce-variation-price del .amount {
    color: var(--hdc-single-old-price-color);
}

.hdc-single-product-purchase__price del,
.hdc-single-product-purchase__form .woocommerce-variation-price del {
    display: inline-flex;
    font-size: var(--hdc-single-old-price-size);
    font-weight: 700;
    line-height: 1.15;
    opacity: 1;
}

.hdc-single-product-purchase__price ins,
.hdc-single-product-purchase__form .woocommerce-variation-price ins {
    display: inline-flex;
    text-decoration: none;
}

.hdc-single-product-stock {
    display: inline-flex;
    flex: 0 0 auto;
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    min-height: 26px;
    align-items: center;
    padding: 4px 9px;
    border: 1px solid var(--hdc-single-stock-border);
    border-radius: 999px;
    background: var(--hdc-single-stock-background);
    color: var(--hdc-single-stock-text);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.hdc-single-product-stock.is-out {
    border-color: #FCA5A5;
    background: #FEF2F2;
    color: #B91C1C;
}

.hdc-single-product-purchase__excerpt {
    min-width: 0;
    margin: 0 0 var(--hdc-single-short-description-row-gap, 12px);
    padding: 0;
    border: 0;
    background: transparent !important;
    color: var(--hdc-muted-text);
    font-family: var(--hdc-font-ui);
    font-size: 13px;
    font-weight: 400 !important;
    line-height: 1.55;
    box-shadow: none !important;
}

.hdc-single-product-purchase__excerpt-toggle {
    display: flex;
    width: 100%;
    min-width: 0;
    align-items: baseline;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    cursor: pointer;
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__excerpt .hdc-single-product-purchase__excerpt-toggle {
    min-height: 0;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-family: var(--hdc-font-ui) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    box-shadow: none !important;
    transform: none !important;
}

body.hdc-single-product-page .hdc-single-product-purchase__excerpt-toggle:hover,
body.hdc-single-product-page .hdc-single-product-purchase__excerpt-toggle:active,
body.hdc-single-product-page .hdc-single-product-purchase__excerpt-toggle:focus-visible {
    border-color: transparent;
    background: transparent !important;
    color: inherit;
    box-shadow: none;
    transform: none;
}

body.hdc-single-product-page .hdc-single-product-purchase__excerpt-toggle:focus-visible {
    outline: 1px dashed currentColor;
    outline-offset: 3px;
}

.hdc-single-product-purchase__excerpt-preview {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 400 !important;
}

.hdc-single-product-purchase__excerpt-more,
.hdc-single-product-purchase__excerpt-less {
    color: var(--hdc-primary-hover);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.hdc-single-product-purchase__excerpt-more {
    flex: 0 0 auto;
    margin-inline-start: 20px;
}

.hdc-single-product-purchase__excerpt-panel[hidden],
.hdc-single-product-purchase__excerpt-toggle[hidden],
.hdc-single-product-purchase__excerpt-less[hidden] {
    display: none;
}

.hdc-single-product-purchase__excerpt-panel {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent !important;
    overflow-wrap: anywhere;
    box-shadow: none !important;
}

.hdc-single-product-purchase__excerpt-copy {
    display: inline;
    margin: 0;
    padding: 0;
    background: transparent !important;
    font-weight: 400 !important;
    cursor: pointer;
}

body.hdc-single-product-page .hdc-single-product-purchase__excerpt-less:hover,
body.hdc-single-product-page .hdc-single-product-purchase__excerpt-less:active,
body.hdc-single-product-page .hdc-single-product-purchase__excerpt-less:focus-visible {
    border-color: transparent;
    background: transparent !important;
    color: inherit;
    box-shadow: none;
    transform: none;
}

body.hdc-single-product-page .hdc-single-product-purchase__excerpt-less:focus-visible {
    outline: 1px dashed currentColor;
    outline-offset: 3px;
}

.hdc-single-product-purchase__excerpt-copy > * {
    margin-block: 0 7px;
}

.hdc-single-product-purchase__excerpt--static > :first-child {
    margin-block-start: 0;
}

.hdc-single-product-purchase__excerpt--static > :last-child {
    margin-block-end: 0;
}

.hdc-single-product-purchase__excerpt-copy > :last-child {
    display: inline;
    margin: 0;
}

.hdc-single-product-purchase__excerpt-less {
    display: inline-flex;
    align-items: baseline;
    margin: 0 0 0 15px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.hdc-single-product-purchase__form form.cart,
.hdc-single-product-purchase__form .variations_form {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: var(--hdc-single-purchase-gap, 9px);
    margin: 0;
}

.hdc-single-product-purchase__form {
    margin-top: auto;
}

.hdc-single-product-purchase__form .variations_form {
    column-gap: var(--hdc-single-purchase-gap, 9px);
    row-gap: var(--hdc-single-swatches-row-gap, 12px);
}

/*
 * Canonical purchase-action row. Single Product owns the geometry for Qty,
 * Add to Cart, WhatsApp Order and Product Download. Optional actions never
 * grow into spare space, preserving one stable row on every desktop width.
 */
body.hdc-single-product-page .hdc-single-product-purchase__form form.cart:not(.variations_form):not(.grouped_form),
body.hdc-single-product-page .hdc-single-product-purchase__form .woocommerce-variation-add-to-cart {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: clamp(4px, .7vw, var(--hdc-single-purchase-gap, 9px));
    max-width: 100%;
}

.hdc-single-product-purchase__form .variations {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

.hdc-single-product-purchase__form .variations tbody {
    display: grid;
    row-gap: 8px;
}

.hdc-single-product-purchase__form .variations tr {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    column-gap: 20px;
    align-items: center;
}

.hdc-single-product-purchase__form .variations tr > th.label,
.hdc-single-product-purchase__form .variations tr > td.value {
    display: flex;
    min-height: var(--hdc-swatch-height, 38px);
    align-items: center;
    align-self: center;
}

.hdc-single-product-purchase__form .variations tr > td.value {
    gap: var(--hdc-swatch-clear-gap, 20px);
}

.hdc-single-product-purchase__form .variations th,
.hdc-single-product-purchase__form .variations td {
    min-width: 0;
    padding: 0;
    text-align: left;
}

.hdc-single-product-purchase__form .variations label {
    display: inline-flex;
    align-items: center;
    color: var(--hdc-text);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

body.hdc-single-product-page .hdc-single-product-purchase__form select {
    box-sizing: border-box;
    height: 42px;
    min-height: 42px;
    border: 1px solid var(--hdc-flat-border);
    border-radius: 8px;
    background: var(--hdc-surface);
    color: var(--hdc-text);
}

.hdc-single-product-purchase__form .quantity {
    display: inline-flex;
    box-sizing: border-box;
    flex: 0 1 var(--hdc-single-purchase-quantity-width, 80px);
    width: var(--hdc-single-purchase-quantity-width, 80px);
    max-width: var(--hdc-single-purchase-quantity-width, 80px);
    min-width: 50px;
    align-items: stretch;
    margin: 0;
}

body.hdc-single-product-page .hdc-single-product-purchase__form input.qty {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    height: var(--hdc-single-purchase-height, 54px);
    min-height: var(--hdc-single-purchase-height, 54px);
    max-height: var(--hdc-single-purchase-height, 54px);
    border: 1px solid var(--hdc-flat-border);
    border-radius: var(--hdc-single-purchase-quantity-radius, 5px);
    background: var(--hdc-surface);
    color: var(--hdc-text);
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.single_add_to_cart_button,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart a.button,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.button,
body.hdc-single-product-page .hdc-single-product-purchase__form .hdc-whatsapp-button--product,
body.hdc-single-product-page .hdc-single-product-purchase__form .hdc-single-product-download-button {
    display: inline-flex;
    box-sizing: border-box;
    flex: 0 1 var(--hdc-single-purchase-button-width, 130px);
    width: var(--hdc-single-purchase-button-width, 130px);
    max-width: var(--hdc-single-purchase-button-width, 130px);
    min-width: 72px;
    height: var(--hdc-single-purchase-height, 54px);
    min-height: var(--hdc-single-purchase-height, 54px);
    max-height: var(--hdc-single-purchase-height, 54px);
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding-block: 0;
    padding-inline: clamp(8px, 1.2vw, 15px);
    border-radius: var(--hdc-single-purchase-button-radius, 30px);
    font-family: var(--hdc-font-ui);
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    text-decoration: none;
    white-space: nowrap;
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.single_add_to_cart_button,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart a.button,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.button {
    border: 1px solid var(--hdc-primary-hover);
    background: var(--hdc-primary);
    color: var(--hdc-button-text);
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.single_add_to_cart_button:hover,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.single_add_to_cart_button:focus-visible,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart a.button:hover,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart a.button:focus-visible,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.button:hover,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.button:focus-visible {
    background: var(--hdc-primary-hover);
    color: var(--hdc-button-text);
}

.hdc-single-product-purchase__form .hdc-single-product-download-button {
    border: 1px solid var(--hdc-single-download-background, #374151);
    background: var(--hdc-single-download-background, #374151);
    color: var(--hdc-single-download-text, #fff);
    transition: background-color var(--hdc-transition, 160ms ease), border-color var(--hdc-transition, 160ms ease), color var(--hdc-transition, 160ms ease);
}

.hdc-single-product-purchase__form .hdc-single-product-download-button:hover,
.hdc-single-product-purchase__form .hdc-single-product-download-button:focus-visible {
    border-color: var(--hdc-single-download-hover, #111827);
    background: var(--hdc-single-download-hover, #111827);
    color: var(--hdc-single-download-text, #fff);
    text-decoration: none;
}

.hdc-single-product-download-button__icon,
.hdc-single-product-download-button__icon .hdc-icon {
    display: inline-flex;
    width: var(--hdc-single-download-icon-size, 18px);
    min-width: var(--hdc-single-download-icon-size, 18px);
    height: var(--hdc-single-download-icon-size, 18px);
    align-items: center;
    justify-content: center;
    color: currentColor;
}

.hdc-single-product-download-button__icon .hdc-icon {
    fill: none;
    stroke: currentColor;
}

/* The package-owned stock tag is the only visible availability presentation. */
.hdc-single-product-purchase__form p.stock,
.hdc-single-product-purchase__form .woocommerce-variation-availability {
    display: none;
}

.hdc-single-product-purchase__form .woocommerce-variation {
    width: 100%;
}

.hdc-single-product-purchase__form .woocommerce-variation-price {
    margin-bottom: 7px;
    color: var(--hdc-single-price-color);
    font-family: var(--hdc-font-heading);
    font-size: var(--hdc-single-price-size);
    font-weight: 700;
    line-height: 1;
}

.hdc-single-product-purchase.has-selected-variation .hdc-single-product-purchase__form .woocommerce-variation-price {
    display: none;
}

.hdc-single-product-purchase__form .reset_variations {
    color: var(--hdc-danger);
    font-size: 11px;
}

.hdc-single-product-purchase__form .single_variation_wrap,
.hdc-single-product-purchase__form .woocommerce-variation-add-to-cart,
.hdc-single-product-purchase__form .group_table {
    width: 100%;
}

.hdc-single-product-purchase__form .group_table {
    border-collapse: separate;
    border-spacing: 0 7px;
}

.hdc-single-product-purchase__form .group_table td {
    padding: 8px 10px;
    border: 1px solid var(--hdc-border);
    background: var(--hdc-surface);
}

/* source: modules/single-product/actions.css */
.hdc-single-product-actions {
    display: grid;
    gap: 10px;
    padding: 12px 18px 0;
}

.hdc-single-product-actions__selection,
.hdc-single-product-share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
}

.hdc-single-product-actions .hdc-selection-button,
.hdc-single-product-share a,
.hdc-single-product-share button {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: 0;
    padding: 6px 10px;
    border: 1px solid var(--hdc-flat-border);
    border-radius: 999px;
    background: var(--hdc-surface);
    color: var(--hdc-text);
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

.hdc-single-product-actions .hdc-selection-button {
    border: 0;
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-actions .hdc-selection-button,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-actions .hdc-selection-button:hover,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-actions .hdc-selection-button:active,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-actions .hdc-selection-button:focus-visible,
body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-actions .hdc-selection-button[aria-pressed="true"] {
    border: 0 !important;
    box-shadow: none;
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-actions .hdc-selection-button:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--hdc-primary-hover) 35%, transparent);
    outline-offset: 2px;
}

.hdc-single-product-share a,
.hdc-single-product-share button {
    width: 34px;
    padding-inline: 0;
}

.hdc-single-product-actions .hdc-selection-button:hover,
.hdc-single-product-actions .hdc-selection-button:focus-visible,
.hdc-single-product-share a:hover,
.hdc-single-product-share a:focus-visible,
.hdc-single-product-share button:hover,
.hdc-single-product-share button:focus-visible {
    border-color: var(--hdc-single-action-hover-border);
    background: var(--hdc-single-action-hover-background);
    color: var(--hdc-single-action-hover-text);
}

.hdc-single-product-actions .hdc-icon,
.hdc-single-product-share .hdc-icon {
    width: 15px;
    height: 15px;
}

.hdc-single-product-share__label {
    margin-inline-end: 3px;
    color: var(--hdc-muted-text);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.hdc-single-product-actions .hdc-selection-button[aria-pressed="true"] {
    background: var(--hdc-primary);
    color: var(--hdc-button-text);
}

.hdc-single-product-actions .hdc-selection-button[data-hdc-wishlist][aria-pressed="true"] {
    background: var(--hdc-surface);
    color: var(--hdc-card-wishlist-active-color, var(--hdc-success));
}

.hdc-single-product-actions .hdc-selection-button[data-hdc-wishlist][aria-pressed="true"] .hdc-icon,
.hdc-single-product-actions .hdc-selection-button[data-hdc-wishlist][aria-pressed="true"] .hdc-icon path {
    fill: currentColor;
    stroke: currentColor;
}

/* source: modules/single-product/services.css */
.hdc-single-product-services {
    display: grid;
    height: var(--hdc-single-trust-zone-height);
    min-height: var(--hdc-single-trust-zone-height);
    box-sizing: border-box;
    flex: 0 0 var(--hdc-single-trust-zone-height);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 8px;
    padding: var(--hdc-single-trust-badges-row-top-gap, 10px) var(--hdc-single-summary-row-padding-x, 18px) var(--hdc-single-trust-badges-row-padding, 12px);
}

.hdc-single-product-service {
    display: grid;
    min-width: 0;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding: 9px;
    border-radius: 10px;
}

.hdc-single-product-service__icon {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 999px;
    background: color-mix(in srgb, var(--hdc-primary) 8%, var(--hdc-flat-surface));
    color: var(--hdc-primary-hover);
}

.hdc-single-product-service__icon .hdc-icon {
    width: 16px;
    height: 16px;
}

.hdc-single-product-service > span:last-child {
    display: grid;
    gap: 2px;
}

.hdc-single-product-service__title,
.hdc-single-product-service__compact-title {
    color: var(--hdc-text);
    font-size: 10px;
}

.hdc-single-product-service__compact-title {
    display: none;
}

.hdc-single-product-service > span:last-child > span {
    display: -webkit-box;
    overflow: hidden;
    color: var(--hdc-muted-text);
    font-size: 9px;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* source: modules/single-product/meta.css */
.hdc-single-product-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: clamp(18px, 2.4vw, 28px);
    padding: 16px 0 0;
    border-top: 1px solid var(--hdc-border);
    color: var(--hdc-muted-text);
    font-size: 12px;
}

.hdc-single-product-meta span {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.hdc-single-product-meta strong {
    color: var(--hdc-text);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.hdc-single-product-meta__value {
    text-transform: uppercase;
}

.hdc-single-product-meta a {
    color: var(--hdc-primary-hover);
    text-decoration: none;
}

.hdc-single-product-meta a:hover,
.hdc-single-product-meta a:focus-visible {
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* source: modules/single-product/tabs.css */
.hdc-single-product-details {
    overflow: hidden;
    margin-top: var(--hdc-single-section-gap);
}

.hdc-single-product-details__body {
    padding: 0;
}

.hdc-single-product-details .woocommerce-tabs {
    margin: 0;
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 10px 12px;
    border: 0;
    border-bottom: 1px solid var(--hdc-border);
    background: var(--hdc-subtle);
}

.hdc-single-product-details .woocommerce-tabs ul.tabs::before,
.hdc-single-product-details .woocommerce-tabs ul.tabs li::before,
.hdc-single-product-details .woocommerce-tabs ul.tabs li::after {
    display: none;
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li {
    display: flex;
    min-height: var(--hdc-single-tab-button-height);
    align-items: stretch;
    margin: 0;
    padding: 0;
    border: 1px solid var(--hdc-flat-border);
    border-radius: 8px;
    background: var(--hdc-surface);
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li:hover,
body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li:focus-within {
    border-color: var(--hdc-primary);
    background: var(--hdc-surface);
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li a {
    display: inline-flex;
    min-height: var(--hdc-single-tab-button-height);
    align-items: center;
    justify-content: center;
    padding: 8px var(--hdc-single-tab-button-padding-x);
    color: var(--hdc-text);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li.active,
body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li.active:hover,
body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li.active:focus-within {
    border-color: var(--hdc-primary);
    background: var(--hdc-primary);
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li.active a,
body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li.active:hover a,
body.hdc-single-product-page .hdc-single-product-details .woocommerce-tabs ul.tabs li.active:focus-within a {
    color: #FFFFFF;
}

body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-details .woocommerce-tabs .woocommerce-Tabs-panel.panel {
    min-width: 0;
    box-sizing: border-box;
    margin: 0;
    padding: var(--hdc-single-tabs-panel-padding);
    color: var(--hdc-text);
    font-size: 14px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-Tabs-panel > :first-child {
    margin-top: 0;
}

body.hdc-single-product-page .hdc-single-product-details .woocommerce-Tabs-panel > :last-child {
    margin-bottom: 0;
}

.hdc-single-product-details table.shop_attributes {
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--hdc-border);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 8px;
}

.hdc-single-product-details table.shop_attributes th,
.hdc-single-product-details table.shop_attributes td {
    padding: var(--hdc-single-attributes-cell-padding);
    border-color: var(--hdc-border);
    vertical-align: middle;
}

.hdc-single-product-details table.shop_attributes td,
.hdc-single-product-details table.shop_attributes td p {
    font-style: normal;
}

.hdc-single-product-details table.shop_attributes td p {
    margin: 0;
    line-height: 1.55;
}

.hdc-single-product-details #reviews #comments,
.hdc-single-product-details #review_form_wrapper {
    padding: 0;
}

/* Description media keeps its source orientation and never overgrows the tab. */
.hdc-single-product-details .hdc-description-media {
    display: block;
    width: 100%;
    margin: 18px auto;
}

.hdc-single-product-details .hdc-description-media .wp-block-embed__wrapper {
    position: static;
    padding: 0;
}

.hdc-single-product-details .hdc-description-media .wp-block-embed__wrapper::before {
    display: none;
    padding-top: 0;
    content: none;
}

.hdc-single-product-details .hdc-description-media iframe,
.hdc-single-product-details .hdc-description-media video,
.hdc-single-product-details .hdc-description-media embed,
.hdc-single-product-details .hdc-description-media object {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    border: 0;
    background: #000000;
}

.hdc-single-product-details .hdc-description-media--horizontal {
    max-width: 760px;
}

.hdc-single-product-details .hdc-description-media--horizontal iframe,
.hdc-single-product-details .hdc-description-media--horizontal video,
.hdc-single-product-details .hdc-description-media--horizontal embed,
.hdc-single-product-details .hdc-description-media--horizontal object {
    aspect-ratio: 16 / 9;
    height: auto;
}

.hdc-single-product-details .hdc-description-media--vertical {
    max-width: 360px;
}

.hdc-single-product-details .hdc-description-media--vertical iframe,
.hdc-single-product-details .hdc-description-media--vertical video,
.hdc-single-product-details .hdc-description-media--vertical embed,
.hdc-single-product-details .hdc-description-media--vertical object {
    aspect-ratio: 9 / 16;
    height: auto;
    object-fit: contain;
}

/* source: modules/single-product/recommendations.css */
.hdc-single-product-recommendations {
    display: grid;
    gap: 13px;
    margin-top: var(--hdc-single-section-gap);
}

.hdc-single-product-recommendations__grid {
    display: grid;
    grid-template-columns: repeat(var(--hdc-single-related-columns), minmax(0, 1fr));
    gap: 14px;
}

.hdc-single-product-recommendations__item {
    min-width: 0;
}

.hdc-single-product-recommendations__item .hdc-product-card {
    height: 100%;
}

/* source: modules/single-product/responsive.css */
@media (max-width: 1100px) {
    body.hdc-single-product-page {
        --hdc-single-page-gutter: 20px;
        --hdc-single-gallery-percent: 44%;
        --hdc-single-summary-gap: 16px;
        --hdc-single-related-columns: 3;
    }

    .hdc-single-product-services {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 5px;
        padding-inline: 8px;
    }

    .hdc-single-product-gallery__trust {
        display: none;
    }

    .hdc-single-product-gallery {
        padding-bottom: var(--hdc-single-gallery-padding);
    }

    .hdc-single-product-service {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 3px;
        padding: 5px 3px;
        text-align: center;
    }

    .hdc-single-product-service__icon {
        width: 26px;
        height: 26px;
    }

    .hdc-single-product-service__title,
    .hdc-single-product-service__copy {
        display: none !important;
    }

    .hdc-single-product-service__compact-title {
        display: block;
        font-size: 9px;
        line-height: 1;
    }

    body.hdc-single-product-page .hdc-single-product-layout--has-sidebar {
        grid-template-columns: minmax(220px, 250px) minmax(0, 1fr);
        grid-template-areas: "product-sidebar product-primary";
        gap: 16px;
    }
}

@media (max-width: 900px) {
    body.hdc-single-product-page .hdc-single-product-layout--has-sidebar {
        grid-template-columns: 1fr;
        grid-template-areas:
            "product-primary"
            "product-sidebar";
    }

    body.hdc-single-product-page .hdc-single-product-layout > .hdf-context-sidebar--product {
        position: static;
    }
}

@media (max-width: 820px) {
    body.hdc-single-product-page {
        --hdc-single-page-gutter: 16px;
        --hdc-single-related-columns: 2;
    }

    body.hdc-single-product-page .hdc-single-product-managed {
        grid-template-columns: 1fr;
        row-gap: 16px;
    }

    body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-gallery,
    body.hdc-single-product-page div.product.hdc-single-product-managed > div.summary,
    body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-details,
    body.hdc-single-product-page .hdc-single-product-managed > .hdc-single-product-recommendations {
        grid-column: 1;
    }

}

@media (max-width: 560px) {
    body.hdc-single-product-page {
        --hdc-single-page-gutter: 12px;
        --hdc-single-related-columns: 1;
        --hdc-single-thumb-size: 58px;
    }

    .hdc-single-product-gallery {
        padding: 10px;
    }


    .hdc-single-product-purchase__form form.cart,
    .hdc-single-product-purchase__form .variations_form {
        align-items: stretch;
    }

    body.hdc-single-product-page .hdc-single-product-purchase__form form.cart:not(.variations_form):not(.grouped_form),
    body.hdc-single-product-page .hdc-single-product-purchase__form .woocommerce-variation-add-to-cart {
        flex-wrap: nowrap;
        gap: 4px;
    }

    body.hdc-single-product-page .hdc-single-product-purchase__form .quantity {
        min-width: 44px;
    }

    body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.single_add_to_cart_button,
    body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart a.button,
    body.hdc-single-product-page div.product.hdc-single-product-managed .hdc-single-product-purchase__form form.cart button.button,
    body.hdc-single-product-page .hdc-single-product-purchase__form .hdc-whatsapp-button--product,
    body.hdc-single-product-page .hdc-single-product-purchase__form .hdc-single-product-download-button {
        flex: 0 1 var(--hdc-single-purchase-button-width, 130px);
        min-width: 62px;
        padding-inline: 6px;
        font-size: clamp(9px, 2.8vw, 12px);
    }

    body.hdc-single-product-page .hdc-single-product-download-button__icon,
    body.hdc-single-product-page .hdc-single-product-download-button__icon .hdc-icon,
    body.hdc-single-product-page .hdc-whatsapp-button--product .hdc-whatsapp-button__icon,
    body.hdc-single-product-page .hdc-whatsapp-button--product .hdc-whatsapp-button__icon .hdc-icon {
        width: clamp(13px, 4vw, 18px);
        min-width: clamp(13px, 4vw, 18px);
        height: clamp(13px, 4vw, 18px);
    }

    .hdc-single-product-actions__selection,
    .hdc-single-product-share {
        gap: 6px;
    }

    .hdc-single-product-details .woocommerce-tabs ul.tabs {
        display: grid;
        grid-template-columns: 1fr;
    }
}
