/* Product-specific layout; typography, colours and buttons inherit the site kit. */
.chl-single {
    --pdp-border:var(--e-global-color-chlborder, var(--border-light, #ededed));
    --pdp-muted:var(--e-global-color-chlmuted, var(--text-muted, #8f8f8f));
    --pdp-green:var(--e-global-color-primary, var(--brand-primary, #183921));
    width:min(var(--content-width, 1576px), calc(100% - 64px)); margin:40px auto 100px;
}
.chl-single *, .chl-single *::before, .chl-single *::after { box-sizing:border-box; }
.chl-single [hidden] { display:none !important; }
.chl-single .chl-breadcrumbs { margin:0 0 72px; }
.chl-single__layout { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:clamp(32px, 6vw, 120px); align-items:start; }
.chl-single__visual,.chl-single__summary { min-width:0; }
.chl-single__heading { display:flex; align-items:start; justify-content:space-between; gap:20px; }
.chl-single .product_title { display:block; min-width:0; overflow-wrap:anywhere; font-size:clamp(26px, 2.2vw, 32px); line-height:1.4; margin:0; }
.chl-single__price { margin:16px 0 24px; }
.chl-single div.product .chl-single__price .price { color:inherit; font-size:24px; margin:0; }
.chl-single .price ins { background:none; text-decoration:none; }
.chl-single__stock { display:flex; align-items:center; gap:8px; font-size:14px; color:var(--pdp-muted); margin:0 0 24px; }
.chl-single__buy { margin-bottom:48px; }
.chl-single .chl-single__shipping-time { margin:16px 0 0; font-size:14px; line-height:1.5; color:inherit; overflow-wrap:anywhere; }
.chl-single div.product form.cart { margin:0; }
.chl-single form.cart:not(.variations_form):not(.grouped_form),.chl-single .woocommerce-variation-add-to-cart { display:flex; gap:24px; flex-wrap:nowrap; align-items:center; }
/* Woo's clearfix pseudo-elements become empty flex items and add side gaps. */
.chl-single form.cart:not(.variations_form):not(.grouped_form)::before,.chl-single form.cart:not(.variations_form):not(.grouped_form)::after,.chl-single .woocommerce-variation-add-to-cart::before,.chl-single .woocommerce-variation-add-to-cart::after { display:none; }
.chl-single div.product form.cart div.quantity { float:none; margin:0; }
.chl-single .quantity { display:flex; align-items:stretch; background:var(--pdp-border); border-radius:4px; flex:none; }
.chl-single .quantity input.qty { width:48px; min-height:50px; padding:8px 2px; border:0; border-radius:0; background:transparent; color:inherit; font:inherit; text-align:center; appearance:textfield; }
.chl-single .quantity input::-webkit-inner-spin-button,.chl-single .quantity input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.chl-single .quantity button { width:44px; min-height:50px; padding:0; border:0; background:transparent; color:inherit; font-size:0; }
.chl-single .quantity button::before { content:''; display:block; width:20px; height:20px; margin:auto; background:center/contain no-repeat; }
.chl-single .quantity .chl-single__minus::before { background-image:url('../icons/product/minus.svg'); }
.chl-single .quantity .chl-single__plus::before { background-image:url('../icons/product/plus.svg'); }
.chl-single .quantity button:hover { color:var(--pdp-green); background:var(--pdp-border); }
.chl-single div.product form.cart .single_add_to_cart_button { float:none; flex:1; min-height:50px; border:0; background:var(--pdp-green); font:inherit; font-size:var(--e-global-typography-accent-font-size,14px); font-weight:400; letter-spacing:.02em; text-transform:uppercase; }
.chl-single .single_add_to_cart_button::after { content:''; display:inline-block; width:20px; height:20px; margin-left:8px; vertical-align:middle; background:url('../icons/cart-white.svg') center/contain no-repeat; }
.chl-single div.product form.cart .single_add_to_cart_button:hover { background:var(--e-global-color-secondary, var(--brand-secondary, #5d0609)); }
.chl-single div.product form.cart .variations { margin:0 0 24px; }
.chl-single div.product form.cart .variations th,.chl-single div.product form.cart .variations td { background:none; border:0; padding:0 12px 8px 0; }
.chl-single .variations select { min-height:44px; font:inherit; font-size:16px; width:100%; }
.chl-single .reset_variations { display:inline-block; font-size:12px; }
.chl-variation-tiles-pending .chl-single .variations_form:not(.chl-variation-tiles-ready) .variations { visibility:hidden; }
.chl-single .chl-variation-tiles-ready .variations tr { display:flex; flex-direction:column; gap:10px; }
.chl-single div.product .chl-variation-tiles-ready .variations th,.chl-single div.product .chl-variation-tiles-ready .variations td { padding:0 0 8px; text-align:left; }
.chl-single .chl-variation-tiles-ready .variations label { font:inherit; font-size:14px; }
.chl-variation-tiles { display:flex; flex-wrap:wrap; gap:8px; }
.chl-single .chl-variation-tile { min-width:64px; min-height:44px; padding:10px 16px; border:1px solid var(--pdp-border); border-radius:4px; background:var(--e-global-color-chlwhite,#fff); color:inherit; font:inherit; font-size:14px; text-transform:none; cursor:pointer; }
.chl-single .chl-variation-tile:hover { border-color:var(--pdp-green); background:var(--e-global-color-chlwhite,#fff); color:var(--pdp-green); }
.chl-single .chl-variation-tile[aria-pressed="true"] { background:var(--pdp-green); border-color:var(--pdp-green); color:var(--e-global-color-chlwhite,#fff); }
.chl-single .chl-variation-tile:disabled { background:var(--pdp-border); border-color:var(--pdp-border); color:var(--pdp-muted); cursor:not-allowed; text-decoration:line-through; }
.chl-single .woocommerce-variation-price { margin-bottom:16px; }
.chl-single--enhanced .woocommerce-variation-price { display:none; }
.chl-single .chl-single__buy .stock { display:none; }
.chl-single__section { border-bottom:1px solid var(--pdp-border); padding:0 0 24px; margin-bottom:24px; }
.chl-single__section > summary,.chl-single .chl-single__label { font-family:inherit; font-size:16px; font-weight:400; line-height:1.6; text-transform:uppercase; letter-spacing:.02em; }
.chl-single__section > summary { display:flex; align-items:center; gap:12px; justify-content:space-between; list-style:none; cursor:pointer; }
.chl-single__section > summary::-webkit-details-marker { display:none; }
.chl-single__section > summary > img { flex:none; transform:rotate(90deg); }
.chl-single__section[open] > summary > img { transform:rotate(-90deg); }
.chl-single__section > summary::marker { content:''; }
.chl-single__section > .chl-single__prose,.chl-single__section > #comments,.chl-single__section > #review_form_wrapper { margin-top:16px; }
.chl-single__prose { font-size:16px; overflow-wrap:anywhere; }
.chl-single__prose > :last-child { margin-bottom:0; }
.chl-single__prose img,.chl-single__prose video { max-width:100%; height:auto; }
.chl-single__prose table { display:block; max-width:100%; overflow:auto; }
.chl-single__long { margin-top:64px; }
.chl-single .chl-single__label { margin:0 0 16px; }
.chl-single__gallery { position:relative; display:flow-root; }
#content.chl-single div.product .chl-single__gallery div.images { float:none; width:100%; margin:0; }
.chl-single .woocommerce-product-gallery__wrapper { margin:0; }
#content.chl-single div.product .chl-single__gallery .woocommerce-product-gallery__image img { width:100%; aspect-ratio:712 / 787; height:auto; object-fit:contain; }
#content.chl-single div.product .chl-single__gallery .woocommerce-product-gallery__image .zoomImg { aspect-ratio:auto; }
#content.chl-single div.product .chl-single__gallery .flex-control-thumbs { display:flex; gap:8px; margin:40px 104px 0 0; overflow:auto; padding-bottom:6px; }
#content.chl-single div.product .chl-single__gallery .flex-control-thumbs li { width:46px; flex:0 0 46px; float:none; margin:0; }
#content.chl-single div.product .chl-single__gallery .flex-control-thumbs img { aspect-ratio:1; object-fit:cover; opacity:.6; border-bottom:2px solid transparent; padding-bottom:4px; }
#content.chl-single div.product .chl-single__gallery .flex-control-thumbs img.flex-active { opacity:1; border-color:var(--pdp-green); }
#content.chl-single div.product .chl-single__gallery div.images .woocommerce-product-gallery__trigger { top:16px; right:16px; width:40px; height:40px; border-radius:4px; background:rgba(24,57,33,.55) url('../icons/product/gallery-expand.svg') center no-repeat; font-size:0; }
.chl-single .woocommerce-product-gallery__trigger::before,.chl-single .woocommerce-product-gallery__trigger::after,.chl-single .woocommerce-product-gallery__trigger img { display:none !important; }
.chl-single__gallery-nav { display:flex; gap:16px; position:absolute; bottom:8px; right:0; }
.chl-single .chl-single__gallery-nav button { display:flex; align-items:center; justify-content:center; padding:0; width:40px; height:40px; background:none; border:0; border-radius:0; }
.chl-single__gallery-nav button:first-child img { transform:rotate(180deg); }
.chl-single__wishlist { flex:none; }
.chl-single__buy .tinv-wraper { display:none; }
.chl-single__wishlist .tinv-wraper { margin:0; }
.chl-single__wishlist .tinvwl_add_to_wishlist_button { margin:0; width:40px; min-height:40px; display:flex; align-items:center; justify-content:center; color:inherit; }
.chl-single__wishlist .tinvwl_add_to_wishlist_button::before { margin:0; }
.chl-single__wishlist .tinvwl_add_to_wishlist-text,.chl-single__wishlist .tinvwl_remove_from_wishlist-text { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.chl-single__reviews { font-size:14px; }
.chl-single--enhanced .woocommerce-Reviews-title,.chl-single--enhanced .comment-reply-title { display:none; }
.chl-single .chl-single__review-label { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.chl-single #reviews #comments ol.commentlist { padding:0; margin:0; }
.chl-single #reviews #comments ol.commentlist li { margin-bottom:24px; }
.chl-single #reviews #comments ol.commentlist li img.avatar { border:0; padding:0; border-radius:50%; width:36px; }
.chl-single #reviews #comments ol.commentlist li .comment-text { margin-left:48px; padding:0; border:0; }
.chl-single #reviews #comments ol.commentlist li .comment-text p.meta { font-size:12px; margin-bottom:8px; }
.chl-single #reviews .star-rating { color:inherit; }
.chl-single #review_form textarea,.chl-single #review_form input:not([type=submit]):not([type=checkbox]) { max-width:100%; width:100%; font:inherit; }
.chl-single #review_form .comment-form-cookies-consent { display:flex; align-items:start; gap:8px; font-size:12px; }
.chl-single #review_form #respond input#submit { background:var(--pdp-green); color:var(--e-global-color-chlwhite,#fff); font:inherit; text-transform:uppercase; padding:15px 25px; border-radius:4px; }
.chl-single #review_form #respond input#submit:hover { background:var(--e-global-color-secondary,var(--brand-secondary,#5d0609)); }
.chl-single__related { margin-top:80px; }
.chl-single__related > h2 { margin-bottom:32px; }
.chl-single :is(button,a,summary,select,input,textarea):focus-visible { outline:2px solid var(--pdp-green); outline-offset:4px; }
@media(max-width:1024px) {
    .chl-single { width:calc(100% - 40px); }
    .chl-single__layout { gap:32px; }
    .chl-single .chl-breadcrumbs { margin-bottom:40px; }
    .chl-single .quantity button { width:36px; }
    .chl-single form.cart:not(.variations_form),.chl-single .woocommerce-variation-add-to-cart { gap:12px; }
}
@media(max-width:767px) {
    .chl-single { width:calc(100% - 32px); margin:24px auto 56px; }
    .chl-single__layout { display:flex; flex-direction:column; gap:32px; }
    .chl-single__visual { display:contents; }
    .chl-single__gallery,.chl-single__summary,.chl-single__long { width:100%; }
    .chl-single__gallery { order:0; }
    .chl-single__summary { order:1; }
    .chl-single__long { order:2; margin:0; }
    .chl-single .chl-breadcrumbs { margin-bottom:24px; }
    .chl-single__buy { margin-bottom:32px; }
    .chl-single form.cart:not(.variations_form):not(.grouped_form),.chl-single .woocommerce-variation-add-to-cart { gap:8px; }
    .chl-single .quantity button { width:32px; }
    .chl-single .quantity input.qty { width:36px; }
    .chl-single div.product form.cart .single_add_to_cart_button { min-width:0; width:auto; padding:12px 8px; font-size:12px; display:flex; align-items:center; justify-content:center; gap:6px; white-space:nowrap; }
    .chl-single .single_add_to_cart_button::after { flex:0 0 18px; width:18px; height:18px; margin:0; }
    .chl-single__related { margin-top:48px; }
}
@media(max-width:360px) {
    .chl-single div.product form.cart .single_add_to_cart_button { font-size:11px; padding-inline:6px; gap:4px; }
}
