/* Gallery and detail column beside a focused buying panel. */
.single-product .os-catalogue{padding-top:28px}
.single-product .woocommerce-breadcrumb{font-size:12px;line-height:1.7;margin-bottom:24px;color:#628368}
.os-product-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(340px,1fr);grid-template-areas:"media buy" "details buy";gap:28px 36px;align-items:start;margin-bottom:42px}
.os-product-media{grid-area:media;min-width:0;position:relative}
.woocommerce div.product .os-product-media div.images,.os-product-media .os-external-gallery{float:none;width:100%;margin:0}
.os-product-media .woocommerce-product-gallery,.os-product-media .os-external-gallery>a{background:#fff;border:1px solid #d2e9d6;border-radius:22px;overflow:hidden;box-shadow:0 8px 28px #60401906}
.os-product-media .woocommerce-product-gallery__image>a>img,.os-product-media .os-external-gallery>a>img{width:100%;height:auto;aspect-ratio:1;max-height:650px;object-fit:contain;padding:24px;border-radius:0}
.os-product-media .woocommerce-product-gallery .flex-control-thumbs{padding:10px;display:flex;gap:8px;overflow:auto}
.os-product-media .woocommerce-product-gallery .flex-control-thumbs li{float:none!important;width:76px!important;min-width:76px;border:1px solid #caead0;border-radius:10px;overflow:hidden}
.os-product-media .woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:1;object-fit:contain}
.os-product-media .os-external-thumbs{gap:9px;margin-top:13px;padding:3px 1px 8px;scrollbar-width:thin}
.os-product-media .os-external-thumbs a{flex:0 0 76px;border:1px solid #c9e5ce;border-radius:11px;background:#fff;overflow:hidden;transition:border-color .2s}
.os-product-media .os-external-thumbs img{width:74px;height:74px;object-fit:contain;padding:5px}
.os-product-media .os-external-thumbs a[aria-current=true]{border:2px solid #319b45}
.os-product-media .os-external-thumbs a[aria-current=true] img{width:72px;height:72px;padding:4px}
.woocommerce div.product .os-product-layout>.summary{grid-area:buy;float:none;width:auto;min-width:0;margin:0;padding:28px;background:#f6fcf7;border:1px solid #c3e7ca;border-radius:22px;box-shadow:0 10px 32px #59402708}
.os-product-brand{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px;color:#2d8f40;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.woocommerce div.product .os-product-layout .product_title{font-size:clamp(25px,2.45vw,36px);line-height:1.18;margin:0 0 21px;overflow-wrap:anywhere}
.woocommerce div.product .os-product-layout .summary>.price{font-size:30px;font-weight:650;line-height:1.3;padding-top:19px;border-top:1px solid #cbe9d1;margin:0 0 17px;color:#252822}
.woocommerce div.product .os-product-layout .summary>.price del{font-size:20px;font-weight:400;color:#64846a}
.woocommerce div.product .os-product-layout .summary>.price ins{text-decoration:none}
.woocommerce div.product .os-product-layout .woocommerce-product-details__short-description{font-size:14px;line-height:1.7;color:#4f6754;margin:17px 0 22px}
.os-product-layout .woocommerce-product-details__short-description p{color:inherit;margin:0 0 10px}
.os-product-layout .woocommerce-product-details__short-description ul{padding-left:18px}
.woocommerce div.product .os-product-layout .stock{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;background:#edf1e4;color:#455a35;border-radius:7px;font-size:12px;font-weight:600;line-height:1.4;margin:0 0 15px}
.woocommerce div.product .os-product-layout .stock:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.woocommerce div.product .os-product-layout .stock.out-of-stock{background:#e1f5e5;color:#2e9141}
.woocommerce div.product .os-product-layout form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:11px;margin:0 0 21px}
.woocommerce div.product .os-product-layout form.cart .quantity{float:none;margin:0}
.woocommerce div.product .os-product-layout form.cart .quantity .qty{height:52px;min-height:52px;width:70px;margin:0;background:#fff;border-color:#b5d9bc;font-size:16px}
.woocommerce div.product .os-product-layout form.cart .single_add_to_cart_button{flex:1;float:none;min-height:52px;margin:0;font-size:15px;font-weight:650;border-radius:10px;background:#319b45;color:#172419}
.woocommerce div.product .os-product-layout form.cart .single_add_to_cart_button:hover{background:#319b45}
.woocommerce div.product .os-product-layout form.variations_form,.woocommerce div.product .os-product-layout form.grouped_form{display:block}
.os-product-layout .variations{width:100%}.os-product-layout .variations select{width:100%;padding:11px;border:1px solid #b6dcbd;border-radius:8px;background:#fff}
.os-product-layout .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:11px}
.os-product-layout .woocommerce-variation-add-to-cart .quantity{flex:0 0 auto}
.os-product-purchase-help{border-top:1px solid #c4e7cb;margin-top:22px;padding-top:20px;display:grid;gap:18px}
.os-product-purchase-help>div{display:flex;gap:12px;align-items:flex-start}
.os-product-purchase-help>div>span{display:grid;place-items:center;width:31px;height:31px;flex-shrink:0;border-radius:10px;background:#d7f2dc;color:#287d38;font-size:18px}
.os-product-purchase-help p{margin:0;font-size:12px;line-height:1.5;color:#48664e}
.os-product-purchase-help strong{display:block;color:#243227;font-size:13px;margin-bottom:2px}
.os-product-purchase-help small{font-size:12px}.os-product-purchase-help a{color:#2c8d3f;text-decoration:underline;text-underline-offset:3px}
.woocommerce div.product .os-product-layout>.woocommerce-tabs{grid-area:details;min-width:0;clear:none;margin:0;padding:24px;background:#fafdfa;border:1px solid #d1e9d6;border-radius:20px}
.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:7px;padding:0!important;margin:0 0 24px;overflow:visible}
.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs:before{display:none}
.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs li{display:block;background:#dff4e3;border:1px solid transparent;margin:0;padding:0;border-radius:9px}
.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs li a{font-size:12px;font-weight:600;padding:11px 13px;color:#446a4b;border:0}
.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs li.active{background:#d1f0d7;border-color:#319b45}
.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs li.active a{color:#1e5f2a;border:0}
.woocommerce div.product .os-product-layout .woocommerce-tabs .panel{margin:0;font-size:14px;line-height:1.8}
.woocommerce div.product .os-product-layout .woocommerce-tabs .panel h2{font-size:25px;margin:0 0 19px}
.woocommerce div.product .os-product-layout .woocommerce-tabs .panel h3{font-size:21px;line-height:1.3;margin:24px 0 12px}
.os-product-layout .woocommerce-tabs .panel ul,.os-product-layout .woocommerce-tabs .panel ol{padding-left:21px}
.os-product-layout .woocommerce-tabs .panel table{width:100%;table-layout:fixed}
.woocommerce .os-product-layout table.shop_attributes{border:0;border-collapse:collapse;margin:0}
.woocommerce .os-product-layout table.shop_attributes th,.woocommerce .os-product-layout table.shop_attributes td{border:0;border-bottom:1px solid #d5eeda;padding:12px 10px;text-align:left;vertical-align:top;font-size:13px;background:transparent!important}
.woocommerce .os-product-layout table.shop_attributes th{width:42%;font-weight:600;color:#3d6344}
.woocommerce .os-product-layout table.shop_attributes td{font-style:normal}.woocommerce .os-product-layout table.shop_attributes td p{margin:0;padding:0}
.os-product-layout .os-finder-controls{display:flex;flex-wrap:wrap}.os-product-layout .os-finder-controls>label{min-width:0;flex:1 1 180px}.os-product-layout .os-finder-controls select{max-width:100%}
.single-product .related,.single-product .up-sells{clear:both}
.single-product .related .os-part-number,.single-product .up-sells .os-part-number{display:none}
@media(min-width:1001px){.os-product-layout>.summary.os-product-can-stick{position:sticky;top:var(--os-product-sticky-top,180px)}}
@media(max-width:1000px){.os-product-layout{grid-template-columns:minmax(0,1.1fr) minmax(310px,1fr);gap:22px}.woocommerce div.product .os-product-layout>.summary{padding:23px}.woocommerce div.product .os-product-layout .product_title{font-size:27px}}
@media(max-width:760px){.single-product .os-catalogue{padding-top:19px}.single-product .woocommerce-breadcrumb{font-size:11px;margin-bottom:18px}.os-product-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"media" "buy" "details";gap:21px;margin-bottom:28px}.os-product-media .woocommerce-product-gallery,.os-product-media .os-external-gallery>a{border-radius:17px}.os-product-media .woocommerce-product-gallery__image>a>img,.os-product-media .os-external-gallery>a>img{padding:17px;max-height:430px}.woocommerce div.product .os-product-layout>.summary{padding:23px 20px;border-radius:18px}.woocommerce div.product .os-product-layout .product_title{font-size:27px}.woocommerce div.product .os-product-layout .summary>.price{font-size:29px}.woocommerce div.product .os-product-layout>.woocommerce-tabs{padding:21px 17px;border-radius:17px}.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs{gap:6px}.woocommerce div.product .os-product-layout .woocommerce-tabs ul.tabs li a{font-size:11px;padding:10px}.woocommerce div.product .os-product-layout .woocommerce-tabs .panel h2{font-size:23px}.woocommerce .os-product-layout table.shop_attributes th{width:43%}}
@media(prefers-reduced-motion:reduce){.os-product-media .os-external-thumbs a{transition:none}}

/* Compact confirmed model list in the product's buying column. */
.os-product-layout .os-known-fit{margin:20px 0;padding:17px;background:var(--os-fit-bg,#fff4e7);border:1px solid var(--os-fit-border,#efd7bb);border-radius:13px;min-width:0}
.os-product-layout .os-known-fit-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:11px}
.os-product-layout .os-known-fit-heading h2{font-size:16px;line-height:1.35;letter-spacing:normal;margin:0;color:inherit}
.os-known-fit-check{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--os-fit-pill,#ffe2bf);color:var(--os-fit-accent,#873e17);font-weight:700;font-size:14px}
.os-known-fit-count{margin-left:auto;color:var(--os-fit-accent,#873e17);font-size:11px;white-space:nowrap}
.os-product-layout .os-known-fit-models{list-style:none;padding:0;margin:0;display:grid;gap:5px}
.os-product-layout .os-known-fit-models li{margin:0;padding:0;min-width:0}
.os-product-layout .os-known-fit-models a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:7px;background:var(--os-fit-link,#fffcf7);color:var(--os-fit-accent,#873e17);font-size:13px;line-height:1.5;text-decoration:none}
.os-known-fit-models a span:first-child{overflow-wrap:anywhere;min-width:0}.os-known-fit-models a span:last-child{flex-shrink:0}
.os-product-layout .os-known-fit-models a:hover{text-decoration:underline;text-underline-offset:3px}
.os-known-fit a:focus-visible,.os-known-fit summary:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.os-known-fit-models small{display:block;padding:3px 10px 7px;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.os-product-layout .os-known-fit-more{padding:0;margin-top:9px;border:0;background:transparent;box-shadow:none}
.os-known-fit-more summary{display:list-item;cursor:pointer;padding:7px 2px;color:var(--os-fit-accent,#873e17);font-size:12px;font-weight:650}
.os-known-fit-more .os-known-fit-hide,.os-known-fit-more[open] .os-known-fit-show{display:none}.os-known-fit-more[open] .os-known-fit-hide{display:inline}
.os-known-fit-more[open] .os-known-fit-models{margin-top:7px;max-height:260px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:3px}
.os-product-layout .os-known-fit-note{margin:11px 0 0;font-size:11px;line-height:1.5;color:inherit;opacity:.8}

.os-known-fit{--os-fit-bg:#edf5e8;--os-fit-border:#c9ddbe;--os-fit-pill:#d8ebca;--os-fit-accent:#285c3c;--os-fit-link:#f9fcf6}

/* Native model dropdown; compact on desktop and touch-friendly on phones. */
.os-product-layout .os-known-fit-form{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;margin:0}
.os-product-layout .os-known-fit-select{flex:1 1 190px;min-width:0;width:100%;max-width:100%;min-height:44px;padding:10px 30px 10px 11px;border:1px solid var(--os-fit-border,#efd7bb);border-radius:8px;background-color:var(--os-fit-link,#fffcf7);color:var(--os-fit-accent,#873e17);font:inherit;font-size:13px;text-overflow:ellipsis}
.os-product-layout .os-known-fit-submit{flex:0 0 auto;min-height:44px;margin:0;padding:10px 13px;border:1px solid var(--os-fit-border,#efd7bb);border-radius:8px;background:var(--os-fit-pill,#ffe2bf);color:var(--os-fit-accent,#873e17);font:inherit;font-size:12px;font-weight:650;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.os-known-fit-select:focus-visible,.os-known-fit-submit:focus-visible{outline:2px solid var(--os-fit-accent,#873e17);outline-offset:3px}
.os-known-fit-submit:hover{filter:brightness(.97)}
@media(max-width:480px){.os-product-layout .os-known-fit-select{flex-basis:100%;font-size:16px}.os-product-layout .os-known-fit-submit{width:100%}}
