/*
 Yan Theme - Single product template styles.
 Loaded only on single product pages.
*/
.woocommerce.single-product button.single_add_to_cart_button.alt{border-color:var(--agr-navy-900);background:var(--agr-navy-900);color:#fff}
.woocommerce.single-product button.single_add_to_cart_button.alt:hover{border-color:var(--agr-brand-green-dark);background:var(--agr-brand-green-dark);color:#fff}
.yan-product-single-shell{width:min(calc(100% - 64px),1400px)}
.single-product div.product{display:grid;grid-template-columns:minmax(0,1fr);gap:64px}
.single-product .yan-product-overview{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:64px;align-items:start;min-width:0}
.single-product div.product:before,.single-product div.product:after{display:none}
.woocommerce.single-product div.product div.images,.woocommerce.single-product div.product div.summary{float:none;width:auto;min-width:100%;margin:0}
.woocommerce.single-product div.product div.woocommerce-product-gallery{position:sticky;top:calc(130px + var(--wp-admin--admin-bar--height,0px));align-self:start;grid-column:1;grid-row:1}
.single-product .woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:8px;overflow-x:auto;margin:14px 0 0;padding:2px 0 8px;list-style:none;scrollbar-width:thin}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{float:none;flex:0 0 68px;width:68px;margin:0}
.single-product .woocommerce-product-gallery .flex-control-thumbs li img{display:block;width:68px;height:68px;object-fit:contain;padding:4px;border:1px solid var(--agr-border);border-radius:6px;background:#fff;opacity:1;cursor:pointer;box-sizing:border-box}
.single-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active{border:2px solid var(--agr-brand-green-dark);padding:3px}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img{display:block;width:100%;height:auto;max-height:min(620px,calc(100vh - 234px - var(--wp-admin--admin-bar--height,0px)));object-fit:contain;background:#fff}
.single-product div.product .product_title{max-width:760px;margin:0 0 16px;font-size:clamp(34px,3.2vw,44px);line-height:1.12}
.single-product div.product p.price{margin:0 0 20px;color:var(--agr-navy-900);font-size:28px;font-weight:800}
.single-product div.product .woocommerce-product-details__short-description{max-width:720px;margin-bottom:24px}
.single-product div.product form.cart{display:flex;gap:12px;align-items:center;margin:28px 0}
.single-product div.product form.variations_form{display:block;margin-top:22px}
.single-product .variations{width:100%;margin:0 0 18px;border:0}
.single-product .variations tbody{display:grid;gap:16px}
.single-product .variations tr{display:grid;grid-template-columns:135px minmax(0,1fr);gap:14px;align-items:center}
.single-product .variations th,.single-product .variations td{display:block;padding:0!important;border:0!important;text-align:left;vertical-align:middle}
.single-product .variations label{color:var(--agr-navy-900);font-size:14px;font-weight:800;text-transform:capitalize}
.single-product .variations select{width:100%;min-height:46px;padding:9px 38px 9px 12px;border:1px solid var(--agr-border);border-radius:var(--agr-radius-sm);background:#fff;color:var(--agr-text)}
.single-product .variations select.yan-colour-select{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
.single-product .variations select.yan-size-select{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
.yan-size-choices{display:flex;flex-wrap:wrap;gap:8px}
.yan-size-choice{min-height:36px;padding:7px 12px;border:1px solid #c9cdd3;border-radius:4px;background:#fff;color:var(--agr-text);font:600 13px/1.2 var(--agr-font-body);cursor:pointer;transition:border-color .18s,background .18s,color .18s}
.yan-size-choice:hover{border-color:var(--agr-navy-900)}
.yan-size-choice.is-selected{border-color:var(--agr-navy-900);background:var(--agr-navy-900);color:#fff}
.yan-size-choice:focus-visible{outline:2px solid var(--agr-blue-600);outline-offset:2px}
.yan-size-choice:disabled{cursor:not-allowed;opacity:.35}
.yan-colour-swatches{display:flex;flex-wrap:wrap;gap:14px}
.yan-colour-swatch{display:grid;min-width:58px;justify-items:center;gap:6px;padding:3px;border:0;background:transparent;color:var(--agr-text);font:600 11px/1.2 var(--agr-font-body);cursor:pointer}
.yan-colour-swatch__image{display:block;width:42px;height:42px;border:2px solid #fff;border-radius:50%;background-color:#eee;background-position:center;background-size:cover;box-shadow:0 0 0 1px #c9cdd3;transition:box-shadow .18s,transform .18s}
.yan-colour-swatch:hover .yan-colour-swatch__image{transform:translateY(-1px);box-shadow:0 0 0 2px #8592a0}
.yan-colour-swatch.is-selected .yan-colour-swatch__image{box-shadow:0 0 0 2px var(--agr-navy-900),0 0 0 5px #fff,0 0 0 6px #b7bec7}
.yan-colour-swatch:focus-visible{outline:2px solid var(--agr-blue-600);outline-offset:3px;border-radius:4px}
.yan-colour-swatch:disabled{cursor:not-allowed;opacity:.3}
.yan-colour-swatch[hidden]{display:none!important}
.yan-colour-swatch__name{max-width:72px;text-align:center}
.single-product .reset_variations{display:inline-block;margin-top:6px;font-size:13px}
.single-product .single_variation_wrap{padding-top:4px}
.single-product .woocommerce-variation-price{margin:0 0 14px}
.single-product .woocommerce-variation-price .price{font-size:25px!important}
.single-product .woocommerce-variation-add-to-cart{display:flex;gap:12px;align-items:center}
.single-product div.product p.price del,.single-product .woocommerce-variation-price del{margin-right:8px;color:#858585;font-size:.72em;font-weight:500}
.single-product div.product p.price ins,.single-product .woocommerce-variation-price ins{color:var(--agr-sale);text-decoration:none}
.yan-rating-summary{display:flex;width:max-content;align-items:center;gap:9px;margin:-4px 0 16px;color:var(--agr-muted);font-size:14px}
.yan-rating-summary:hover{color:var(--agr-navy-900)}
.yan-rating-summary__stars{position:relative;color:#cfd3d8;font-size:15px;letter-spacing:1px;line-height:1;white-space:nowrap}.yan-rating-summary__stars>span{position:absolute;top:0;left:0;overflow:hidden;color:#e5a52b}
.single-product .quantity{display:inline-grid;grid-template-columns:46px 58px 46px;height:46px;overflow:hidden;border:1px solid var(--agr-border);border-radius:var(--agr-radius-sm);background:#fff}
.woocommerce.single-product .quantity .qty{width:58px;height:44px;margin:0;padding:0 6px;border:0;border-right:1px solid var(--agr-border);border-left:1px solid var(--agr-border);border-radius:0;background:#fff;color:var(--agr-navy-900);font-weight:800;text-align:center;-moz-appearance:textfield}
.woocommerce.single-product .quantity .qty::-webkit-inner-spin-button,.woocommerce.single-product .quantity .qty::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.single-product .quantity .yan-qty-button{display:flex;width:46px;height:44px;align-items:center;justify-content:center;padding:0;border:0;background:#fff;color:var(--agr-navy-900);font-size:22px;font-weight:700;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease}
.single-product .quantity .yan-qty-button:hover{background:var(--agr-navy-900);color:#fff}
.single-product .quantity .yan-qty-button:focus-visible{position:relative;z-index:1;outline:3px solid rgba(105,135,107,.28);outline-offset:-3px}
.single-product div.product .product_meta{display:grid;gap:6px;margin-top:28px;padding-top:20px;border-top:1px solid var(--agr-border);color:var(--agr-muted);font-size:14px}
.single-product div.product .yan-product-details,.single-product div.product .woocommerce-tabs,.single-product div.product .related,.single-product div.product .upsells{grid-column:1/-1;margin-top:40px}
.yan-product-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-top:40px;border-top:1px solid var(--agr-border)}
.yan-product-detail-card{padding:28px;border:1px solid var(--agr-border);border-radius:var(--agr-radius-md);background:var(--agr-surface-warm)}
.yan-product-detail-card h2{margin:0 0 20px;font-size:24px}
.yan-product-detail-card--specs{grid-column:1/-1}
.yan-product-detail-card dl{margin:0}
.yan-product-detail-card dl>div{display:grid;grid-template-columns:minmax(160px,.45fr) 1fr;gap:24px;padding:12px 0;border-top:1px solid var(--agr-border)}
.yan-product-detail-card dl>div:first-child{padding-top:0;border-top:0}
.yan-product-detail-card dt{color:var(--agr-navy-900);font-weight:700}
.yan-product-detail-card dd{margin:0}
.yan-product-option-list{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
.yan-product-option-list li{padding:8px 13px;border:1px solid #cfd3da;border-radius:var(--agr-radius-sm);background:#fff}
.yan-product-detail-card--download p{margin:0 0 16px;color:var(--agr-muted)}
.yan-product-detail-card--download a{font-weight:800;text-decoration:underline}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;border-bottom:1px solid var(--agr-border)}
.woocommerce div.product .woocommerce-tabs ul.tabs:before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0 6px 0 0;padding:0 20px;border:0;border-radius:0;background:transparent}
.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:3px solid var(--agr-orange-500);background:transparent}
.woocommerce div.product .woocommerce-tabs .panel{padding:20px 0}
.yan-product-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}
.yan-product-quote,.yan-product-download{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:10px 22px;border:1px solid var(--agr-navy-900);border-radius:999px;color:var(--agr-navy-900);font-weight:800;text-decoration:none}
.woocommerce.single-product .single_add_to_cart_button,.woocommerce.single-product .yan-product-quote{font-size:16px;font-weight:700;line-height:1.2}
.yan-product-quote:hover,.yan-product-download:hover{background:var(--agr-navy-900);color:#fff}
.yan-product-choice{margin:22px 0 0;padding:0;border:0}
.yan-product-choice legend{display:block;width:100%;margin:0 0 10px;color:var(--agr-navy-900);font-size:14px;font-weight:800;letter-spacing:.02em}
.yan-product-choice legend .yan-choice-required{margin-left:3px;color:var(--agr-sale);font-size:14px;font-weight:800;letter-spacing:0}
.yan-product-choice legend .yan-product-choice__hint{margin-left:8px;color:var(--agr-muted);font-size:12px;font-weight:500;letter-spacing:0}
.yan-product-choice__items{display:flex;flex-wrap:wrap;gap:9px}
.yan-choice-validation{margin:14px 0 0;padding:12px 14px;border:1px solid #e2a09a;border-radius:var(--agr-radius-sm);background:#fff5f4;color:#a1281e;font-size:14px;font-weight:700}
.yan-choice-validation[hidden]{display:none}
.yan-product-choice input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.yan-product-choice label{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:8px 15px;border:1px solid #c9ced6;border-radius:5px;background:#fff;color:var(--agr-navy-900);font-size:14px;font-weight:700;line-height:1.25;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}
.yan-product-choice__check{display:none}
.yan-product-choice label:hover{border-color:var(--agr-navy-900)}
.yan-product-choice.is-missing legend{color:var(--agr-sale)}
.yan-product-choice.is-missing label{border-color:#d98a82}
.yan-product-choice input:checked+label{border-color:var(--agr-navy-900);background:var(--agr-navy-900);color:#fff;box-shadow:0 0 0 1px var(--agr-navy-900)}
.yan-product-choice input:focus-visible+label{outline:3px solid rgba(105,135,107,.24);outline-offset:2px}
.yan-product-choice--colour label{position:relative;min-height:52px;padding-left:56px}
.yan-product-choice--colour label:before{position:absolute;left:12px;width:34px;height:34px;border:2px solid #fff;border-radius:50%;background-color:#d7d9dc;background-position:center;background-size:cover;box-shadow:0 0 0 1px #aeb4bd;content:""}
.yan-product-choice--colour label[data-choice-value*="beech"]:before{background-image:url("../../assets/colour-swatches/melamine-top/beech.jpg")}
.yan-product-choice--colour label[data-choice-value*="cherry"]:before{background-image:url("../../assets/colour-swatches/melamine-top/cherry.jpg")}
.yan-product-choice--colour label[data-choice-value*="redwood"]:before{background-image:url("../../assets/colour-swatches/melamine-top/redwood.jpg")}
.yan-product-choice--colour label[data-choice-value*="oak"]:before{background-image:url("../../assets/colour-swatches/melamine-top/oak.png")}
.yan-product-choice--colour label[data-choice-value*="white"]:before{background-image:url("../../assets/colour-swatches/melamine-base/white.png")}
.yan-product-choice--colour[data-choice-label="Top colour"] label[data-choice-value*="white"]:before{background-image:url("../../assets/colour-swatches/melamine-top/white.png")}
.yan-product-choice--colour label[data-choice-value*="wenge"]:before{background-image:url("../../assets/colour-swatches/melamine-top/wenge.png")}
.yan-product-choice--colour label[data-choice-value*="charcoal"]:before{background-image:url("../../assets/colour-swatches/melamine-base/charcoal.png")}
.yan-product-choice--colour label[data-choice-value*="silver"]:before{background-image:url("../../assets/colour-swatches/melamine-base/silver.png")}
.yan-product-choice--colour label[data-choice-value*="chrome"]:before{background-image:url("../../assets/colour-swatches/metal-base/chrome.png")}
.yan-product-choice--colour label[data-choice-value*="black"]:before{background-image:url("../../assets/colour-swatches/metal-base/black.png")}
.yan-product-choice--colour:has(label[data-choice-value*="black"],label[data-choice-value*="chrome"]) label[data-choice-value*="white"]:before{background-image:url("../../assets/colour-swatches/metal-base/white.png")}
.yan-product-choice--colour:has(label[data-choice-value*="black"],label[data-choice-value*="chrome"]) label[data-choice-value*="silver"]:before{background-image:url("../../assets/colour-swatches/metal-base/silver.png")}
.yan-product-choice--colour label[data-choice-value*="grey"]:before{background:#777d82}
.yan-product-choice--colour input:checked+label:before{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--agr-navy-900)}
.yan-product-choice--multiple{margin-top:26px;padding:18px;border:1px solid #d9dee5;border-radius:10px;background:#f8f9f7}
.yan-product-choice--multiple legend{float:left;margin-bottom:14px;font-size:16px}
.yan-product-choice--multiple legend+*{clear:both}
.yan-product-choice--multiple .yan-product-choice__items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.yan-product-choice--multiple label{min-height:48px;justify-content:flex-start;gap:10px;padding:10px 12px;border-color:#d7dce2;border-radius:7px;background:#fff;font-weight:600;text-align:left}
.yan-product-choice--multiple label:hover{border-color:#879489;background:#fbfcfa;box-shadow:0 2px 8px rgba(28,45,35,.06)}
.yan-product-choice--multiple .yan-product-choice__check{display:inline-flex;flex:0 0 20px;width:20px;height:20px;align-items:center;justify-content:center;border:1.5px solid #a7b0b8;border-radius:4px;background:#fff;color:#fff}
.yan-product-choice--multiple input:checked+label{border-color:var(--agr-brand-green-dark);background:#edf3ed;color:var(--agr-navy-900);box-shadow:0 0 0 1px var(--agr-brand-green-dark)}
.yan-product-choice--multiple input:checked+label .yan-product-choice__check{border-color:var(--agr-brand-green-dark);background:var(--agr-brand-green-dark)}
.yan-product-choice--multiple input:checked+label .yan-product-choice__check:after{width:5px;height:9px;margin-top:-2px;border:solid currentColor;border-width:0 2px 2px 0;content:"";transform:rotate(45deg)}
@media(max-width:1024px){.yan-product-single-shell{width:min(calc(100% - 48px),1400px)}
.single-product div.product{gap:36px}
.single-product .yan-product-overview{grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:36px}
}
@media(max-width:767px){.yan-product-single-shell{width:calc(100% - 32px)}
.single-product div.product{display:block}
.single-product .yan-product-overview{display:block}
.woocommerce.single-product div.product div.woocommerce-product-gallery{position:static;top:auto}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img{max-height:620px}
.single-product div.product div.summary{margin-top:32px}
.single-product .variations tr{grid-template-columns:1fr;gap:5px}.single-product .woocommerce-variation-add-to-cart{align-items:stretch;flex-direction:column}.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{min-height:46px}
.single-product div.product .yan-product-details,.single-product div.product .woocommerce-tabs,.single-product div.product .related,.single-product div.product .upsells{margin-top:36px}
.yan-product-details{grid-template-columns:1fr;gap:16px;padding-top:32px}
.yan-product-detail-card,.yan-product-detail-card--specs{grid-column:auto;padding:20px}
.yan-product-detail-card dl>div{grid-template-columns:1fr;gap:4px}
}
@media(max-width:767px){.yan-product-actions{display:grid}
.yan-product-choice--multiple{padding:15px}
.yan-product-choice--multiple .yan-product-choice__items{grid-template-columns:1fr}
.yan-product-choice legend span{display:block;margin:4px 0 0}
}
