.product-purchase .product_title { font-size: clamp(25px, 2.3vw, 34px); line-height: 1.15; margin-bottom: 10px; }
.product-purchase > .sp-merch-proof { display: none; }
.product-purchase .product_price { align-items: center; display: flex; float: none; flex-wrap: nowrap; gap: 6px 11px; margin: 10px 0 15px; }
.product-purchase .product_price .price { color: var(--color-1st, #764998); font-size: clamp(30px, 3vw, 38px); font-weight: 750; letter-spacing: -.035em; line-height: 1; }
.product-purchase .product_price del { color: #68616e; font-size: 15px; font-weight: 500; }
.product-purchase .product_price .on_sale { align-items: center; background: #f4eef8; border: 1px solid #e8ddef; border-radius: 999px; color: var(--color-1st, #764998); display: inline-flex; flex: none; font-size: 12px; font-weight: 700; line-height: 1; padding: 7px 10px; white-space: nowrap; }
.product-purchase .product-short-description { color: #625d69; font-size: 15px; line-height: 1.62; margin: 0 0 16px; padding: 0; }
.product-purchase .product-short-description p { line-height: inherit; margin-bottom: 5px; }
.product-purchase .product-short-description p:first-child { color: #56515e; font-size: 15px; margin-bottom: 9px; }
.product-purchase .product-short-description p:last-child { margin-bottom: 0; }
.product-purchase .product-short-description ul { margin: 7px 0; padding-left: 20px; }
.product-purchase .product-short-description strong { color: #28242c; font-weight: 650; }
.product-purchase .product-format-selector { margin: 0 0 14px; width: 100%; }
.product-purchase .product-format-heading { align-items: center; display: flex; gap: 14px; justify-content: space-between; margin-bottom: 10px; }
.product-purchase .product-format-heading > span:first-child { color: #252129; font-size: 16px; font-weight: 700; letter-spacing: -.01em; }
.product-purchase .product-format-heading .number-items-available { flex: none; font-size: 13px; margin: 0; }
.product-purchase .product-format-heading .number-items-available .text-success::before { background: currentColor; border-radius: 50%; content: ''; display: inline-block; height: 7px; margin-right: 6px; width: 7px; }
.product-purchase .product-format-selector .bb-product-attribute-swatch,
.product-purchase .product-format-selector .bb-product-attribute-swatch-list { display: block; width: 100%; }
.product-purchase .product-format-selector .bb-product-attribute-swatch-title { display: none; }
.product-purchase .product-format-native-select { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
.product-purchase .product-format-grid { display: grid; gap: 9px; grid-template-columns: repeat(5, minmax(0, 1fr)); width: 100%; }
.product-purchase .product-format-option { align-content: center; background: #fff; border: 1px solid #e6e3e9; border-radius: 11px; box-shadow: 0 2px 7px rgba(35, 27, 40, .02); color: #29252e; cursor: pointer; display: grid; gap: 4px; min-height: 72px; min-width: 0; padding: 10px 13px; text-align: left; transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease, transform .18s ease; }
.product-purchase .product-format-option:hover { border-color: #ad8fc1; box-shadow: 0 6px 16px rgba(46, 31, 57, .07); transform: translateY(-1px); }
.product-purchase .product-format-option__name { font-size: 14px; font-weight: 700; letter-spacing: .01em; line-height: 1.15; white-space: nowrap; }
.product-purchase .product-format-option__price { color: #716b76; font-size: 13px; font-weight: 600; line-height: 1.15; white-space: nowrap; }
.product-purchase .product-format-option.is-selected { background: var(--color-1st, #764998); border-color: var(--color-1st, #764998); box-shadow: 0 7px 17px rgba(118, 73, 152, .18); color: #fff; }
.product-purchase .product-format-option.is-selected .product-format-option__price { color: rgba(255, 255, 255, .88); }
.product-purchase .product-format-option:disabled { background: #f7f6f8; border-color: #eceaee; box-shadow: none; color: #aaa5ad; cursor: not-allowed; opacity: .68; transform: none; }
.product-purchase .product-format-option:focus-visible { outline: 2px solid var(--color-1st, #764998); outline-offset: 2px; }
.product-purchase .product-purchase-actions { margin-top: 10px; width: 100%; }
.product-purchase .product-purchase-actions > .sp-merch-proof { display: none; }
.product-purchase .cart-product-quantity { flex: none; margin: 0; }
.product-purchase .cart-product-quantity .quantity { display: grid; float: none; grid-template-columns: 38px 42px 38px; margin: 0; }
.product-purchase .cart-product-quantity .quantity .minus,
.product-purchase .cart-product-quantity .quantity .plus,
.product-purchase .cart-product-quantity .quantity .qty { border-color: #e3e0e6; height: 52px; margin: 0; width: 100%; }
.product-purchase .cart-product-quantity .quantity .minus { border-radius: 11px 0 0 11px; }
.product-purchase .cart-product-quantity .quantity .plus { border-radius: 0 11px 11px 0; }
.product-purchase .cart_btn { align-items: stretch; display: flex; flex: 1; flex-wrap: nowrap; gap: 8px; margin: 0; min-width: 0; }
.product-purchase .cart_btn .btn { margin: 0; white-space: nowrap; }
.product-purchase .cart_btn .btn-fill-out { border-radius: 11px; flex: 1 1 auto; font-weight: 700; min-height: 52px; padding-inline: 18px; }
.product-purchase .cart_btn .btn-dark { border-radius: 11px; flex: 0 0 auto; min-height: 52px; padding-inline: 16px; }
.product-purchase .cart_btn .add_wishlist,
.product-purchase .cart_btn .add_compare { align-items: center; border: 1px solid #e4e1e7; border-radius: 11px; display: inline-flex; flex: 0 0 52px; justify-content: center; margin: 0; min-height: 52px; min-width: 52px; }
.product-purchase .cart_btn .add_wishlist.active,
.product-purchase .cart_btn .js-remove-from-wishlist-button { background: #fff1f2; border-color: #efb8bd; color: #d93445; }
.product-purchase .cart_btn .add_wishlist.active i,
.product-purchase .cart_btn .js-remove-from-wishlist-button i { color: #d93445; }
.product-purchase .product-stock-status,
.product-purchase .number-items-available .text-success { color: #27854b; font-weight: 600; }
.product-purchase > hr { margin: 15px 0 10px; }
.product-purchase .product-meta { margin-top: 0; }
.product-purchase .product-meta li { font-size: 13px; margin-bottom: 4px; }
.product-image .product_img_box { height: min(490px, 58vh); }
.product-image .product_img_box img { height: 100%; object-fit: contain; width: 100%; }
.product-image #pr_item_gallery { margin-top: 8px; }
.product-image #pr_item_gallery .product_gallery_item img { display: block; margin-inline: auto; max-height: 76px; object-fit: contain; }

@media (max-width: 1199px) and (min-width: 768px) {
    .product-purchase .product-format-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .product-purchase .product-purchase-actions { align-items: stretch; flex-wrap: wrap; }
    .product-purchase .cart_btn { flex-basis: calc(100% - 128px); }
    .product-purchase .cart_btn .btn-fill-out { padding-inline: 12px; }
}

@media (max-width: 767px) {
    .product-purchase .product_price { align-items: center; flex-wrap: nowrap; gap: 5px 8px; }
    .product-purchase .product_price .price { font-size: 26px; }
    .product-purchase .product_price del { font-size: 13px; }
    .product-purchase .product_price .on_sale { font-size: 9px; padding: 5px 6px; }
    .product-purchase .product-short-description { margin-bottom: 15px; }
    .product-purchase .product-format-heading { align-items: flex-start; flex-direction: column; gap: 5px; }
    .product-purchase .product-format-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .product-purchase .product-format-option { border-radius: 9px; min-height: 56px; padding: 7px 9px; }
    .product-purchase .product-format-option__name { font-size: 12px; }
    .product-purchase .product-format-option__price { font-size: 11px; }
    .product-purchase .cart_btn { align-items: stretch; display: grid; gap: 8px; grid-template-columns: 104px minmax(0, 1fr) 48px; width: 100%; }
    .product-purchase .cart-product-quantity { grid-column: 1; grid-row: 1; width: 104px; }
    .product-purchase .cart-product-quantity .quantity { grid-template-columns: 32px 40px 32px; }
    .product-purchase .cart-product-quantity .quantity .minus,
    .product-purchase .cart-product-quantity .quantity .plus,
    .product-purchase .cart-product-quantity .quantity .qty { height: 50px; }
    .product-purchase .cart_btn .btn-fill-out { font-size: 12px; grid-column: 2; grid-row: 1; min-height: 50px; padding-inline: 10px; transition: none; }
    .product-purchase .cart_btn .btn-fill-out::before,
    .product-purchase .cart_btn .btn-fill-out::after { transition: none !important; width: 51% !important; }
    .product-purchase .cart_btn .btn-fill-out:hover { color: #fff !important; }
    .product-purchase .cart_btn .add_wishlist { grid-column: 3; grid-row: 1; min-height: 50px; min-width: 0; }
    .product-purchase .cart_btn .add_compare { grid-column: 3; grid-row: 2; min-height: 48px; min-width: 0; }
    .product-image .product_img_box { height: 360px; }
    .product-image .product_img_box,
    .product-image #product_img { pointer-events: none !important; touch-action: pan-y !important; user-select: none; -webkit-user-drag: none; }
    .zoomContainer { pointer-events: none !important; touch-action: pan-y !important; }
    .product-image .product_img_zoom { pointer-events: auto; }
}

@media (max-width: 374px) {
    .product-purchase .product-format-grid { gap: 8px; }
    .product-purchase .product-format-option { padding-inline: 10px; }
    .product-purchase .cart_btn .btn-dark { padding-inline: 12px; }
}

/* Product-page audit: readable secondary text and usable carousel targets. */
body.single-product .product_wrap.modern-card .product_price del,
body.single-product .product_wrap.modern-card .rating_num { color: #68616e; }
body.single-product .product_wrap.modern-card .on_sale,
body.single-product .product_wrap.modern-card .on_sale span { color: #28733c; }
body.single-product .owl-carousel .owl-dots button.owl-dot { align-items: center; display: inline-flex; justify-content: center; min-width: 44px; min-height: 44px; }
body.single-product .owl-carousel .owl-dots button.owl-dot:focus-visible { outline: 2px solid var(--color-1st, #764998); outline-offset: 2px; }
.product-purchase .product-format-native-select:focus-visible { clip: auto; clip-path: none; height: auto; position: relative; width: 100%; margin-bottom: 8px; outline: 2px solid var(--color-1st, #764998); outline-offset: 2px; }

/* Reserve the mobile gallery row and avoid font-swap reflow in breadcrumbs. */
@media (max-width: 767px) {
    body.single-product .breadcrumb_section .breadcrumb,
    body.single-product .breadcrumb_section .page-title > * { font-family: Arial, sans-serif; }
    body.single-product .breadcrumb_section .breadcrumb { align-items: center; gap: 4px 0; line-height: 21px; }
    body.single-product .breadcrumb_section .breadcrumb-item { align-items: center; display: flex; max-width: 100%; min-height: 44px; }
    body.single-product .breadcrumb_section .breadcrumb-item::before { flex: none; }
    body.single-product .breadcrumb_section .breadcrumb-item a { align-items: center; display: inline-flex; min-height: 44px; min-width: 44px; overflow-wrap: anywhere; padding-block: 8px; }
    body.single-product .breadcrumb_section .breadcrumb-item a:focus-visible { outline: 2px solid var(--color-1st, #764998); outline-offset: 2px; }
    .product-image #pr_item_gallery { min-height: 88px; }
    .product-image #pr_item_gallery .product_gallery_item { align-items: center; display: flex; justify-content: center; height: 88px; }
    .product-image #pr_item_gallery:not(.slick-initialized) { display: flex; overflow: hidden; }
    .product-image #pr_item_gallery:not(.slick-initialized) > .item { flex: 0 0 25%; min-width: 0; padding-inline: 5px; }
}

/* Product breadcrumbs: full container on desktop, compact ancestry on mobile. */
body.single-product .breadcrumb_section .product-breadcrumb {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    min-width: 0;
    margin: 0;
}
body.single-product .product-breadcrumb .breadcrumb-item {
    display: flex;
    align-items: center;
    flex: 0 1 auto;
    min-width: 0;
    white-space: nowrap;
}
body.single-product .product-breadcrumb .breadcrumb-item::before { flex: none; }
body.single-product .product-breadcrumb .breadcrumb-item a {
    display: flex;
    min-width: 0;
    overflow-wrap: normal;
}
body.single-product .product-breadcrumb .breadcrumb-label {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}
body.single-product .product-breadcrumb .breadcrumb-short-label { display: none; }
@media (max-width: 767px) {
    body.single-product .breadcrumb_section.page-title-mini { padding-block: 14px; }
    body.single-product .breadcrumb_section .product-breadcrumb { justify-content: flex-start; }
    body.single-product .product-breadcrumb .product-breadcrumb-middle { display: none; }
    body.single-product .product-breadcrumb .breadcrumb-item:not(.active) { flex: none; }
    body.single-product .product-breadcrumb .breadcrumb-item.active { flex: 0 1 auto; }
    body.single-product .product-breadcrumb .product-breadcrumb-parent .breadcrumb-label {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        clip-path: inset(50%);
    }
    body.single-product .product-breadcrumb .breadcrumb-short-label {
        display: block;
        width: 44px;
        text-align: center;
    }
}
