/* Product pages only. Native gallery, product form and responsive column behavior remain. */
.single-product .product-main{padding-top:26px;padding-bottom:24px;color:#26352b}
.single-product .product-main .product-gallery{background:#fff;border:1px solid #e6e8e3;border-radius:12px;padding:18px}
.single-product .product-main .woocommerce-product-gallery__image img:not(.zoomImg){object-fit:contain;background:#fff}
.single-product .product-main .product-thumbnails img{border-radius:6px}
.single-product .product-main .product-info{padding-top:8px}
.single-product .product-main .product-info h1.product-title{font-size:clamp(26px,2.4vw,36px);font-weight:500;line-height:1.2;letter-spacing:-.025em;color:#26352b;text-transform:none;margin-bottom:16px}
.single-product .product-main .product-info>.price-wrapper .price{font-size:26px;line-height:1.4;font-weight:600;color:#30553c;margin-bottom:18px}
.single-product .product-main .product-info>.price-wrapper .price .amount{color:inherit}
.single-product .product-main .product-info .woocommerce-product-details__short-description{font-size:15px;line-height:1.7;color:#566157}
.single-product .product-main .product-info .woocommerce-product-details__short-description ul{margin-left:1.2em}
.single-product .product-main .product-info form.cart{padding-top:14px;padding-bottom:8px;margin-bottom:16px;border-top:1px solid #e6e8e3}
.single-product .product-main .product-info form.cart .single_add_to_cart_button{background:#30553c;border-color:#30553c;color:#fff;border-radius:6px;min-height:48px;line-height:1.4;font-size:14px;letter-spacing:.025em;padding:12px 24px;white-space:normal}
.single-product .product-main .product-info form.cart .quantity input{min-height:48px;font-size:16px}
.single-product .product-main .product-info form.cart .variations select{min-height:44px;font-size:16px;border-radius:5px;border:1px solid #d5ddd3;box-shadow:none}
.single-product .product-main .product-info form.cart .variations label{font-size:14px;font-weight:600;color:#26352b}
.single-product .product-main .product-info .product_meta{border-top:1px solid #e6e8e3;padding-top:16px;font-size:13px;color:#566157}
.single-product .product-main .product-info .product_meta a{color:#30553c}
.single-product .product-main .woocommerce-breadcrumb{font-size:12px;line-height:1.6;text-transform:none;letter-spacing:0;color:#566157}
.single-product .mtpp-delivery-note{background:#f7f5ef;border:1px solid #e8e5db;border-radius:8px;padding:16px;margin:12px 0 20px;font-size:13px;line-height:1.6;color:#566157}
.single-product .mtpp-delivery-note strong{display:block;color:#30553c;font-weight:600;margin-bottom:4px}
.single-product .mtpp-delivery-note p{margin:0}
.single-product .woocommerce-tabs{padding-top:24px;border-top:1px solid #e6e8e3}
.single-product .woocommerce-tabs .tabs a{color:#26352b;font-size:14px;letter-spacing:0;text-transform:none}
.single-product .woocommerce-tabs .tabs li.active a{color:#30553c}
.single-product .woocommerce-tabs .panel{font-size:15px;line-height:1.7;color:#566157}
.single-product .woocommerce-tabs .panel h2{font-size:22px;font-weight:500;letter-spacing:-.02em;color:#26352b}
.single-product .mtpp-delivery-table{max-width:720px;margin:18px 0;font-size:14px}
.single-product .mtpp-delivery-table caption{text-align:left;color:#26352b;font-weight:600;margin-bottom:10px}
.single-product .mtpp-delivery-table th,.single-product .mtpp-delivery-table td{padding:12px;border-bottom:1px solid #e6e8e3;text-transform:none;letter-spacing:0}
.single-product .mtpp-delivery-table tbody th{font-weight:400;color:#566157}
.single-product .mtpp-delivery-table td{white-space:nowrap;color:#30553c}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells){padding-top:30px;margin-top:20px;border-top:1px solid #e6e8e3}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells)>:is(h2,h3){color:#26352b;font-size:clamp(22px,2.1vw,28px);font-weight:500;text-transform:none;letter-spacing:-.02em;margin-bottom:24px}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .row{align-items:stretch}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .product-small.col{display:flex}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .product-small.col>.col-inner{display:flex;flex-direction:column;width:100%;min-width:0}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .product-small.box{display:flex;flex-direction:column;flex:1;width:100%;height:auto;min-width:0;background:#fff;border:1px solid #e6e8e3;border-radius:8px;overflow:hidden}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .box-image{position:relative;aspect-ratio:1/1;flex:none;width:100%;margin:0;background:#fff}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .box-image>div:first-child{height:100%}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .box-image .image-cover{position:absolute;inset:0;padding-top:0!important;height:100%}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .box-image>div:first-child img{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none;object-fit:contain!important;padding:10px;box-sizing:border-box;background:#fff}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .box-text{display:flex;flex-direction:column;flex:1;padding:12px!important;text-align:left;position:static}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .product-title{min-height:2.9em;font-size:14px;line-height:1.45;margin:0 0 8px;overflow-wrap:anywhere;text-transform:none}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .product-title a{color:#26352b}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .price-wrapper{margin-top:auto}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .price{color:#30553c;font-size:15px;font-weight:600;white-space:normal}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .price .amount{color:inherit}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .add-to-cart-button .button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;margin:10px 0 0;font-size:12px;line-height:1.4;white-space:normal;border-radius:4px;background:#30553c;color:#fff;border-color:#30553c;text-align:center}
.single-product .product-main :is(a,button,input,select):focus-visible,.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) a:focus-visible{outline:2px solid #ae4c27;outline-offset:3px}
@media(max-width:549px){
.single-product .product-main{padding-top:16px}
.single-product .product-main .product-gallery{padding:10px}
.single-product .product-main .product-info>.price-wrapper .price{font-size:24px}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .box-text{padding:10px!important}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .product-title{font-size:13px}
.single-product :is(.related,.related-products-wrapper,.up-sells,.upsells) .price{font-size:14px}
}

/* Compact natural-height gallery: avoid stretching its decorative column to the summary. */
.single-product .product-main .product-gallery{align-self:flex-start;height:auto!important;min-height:0;border:0;border-radius:0;padding:0;background:transparent}
.single-product .product-main .product-gallery>.col-inner{height:auto!important;min-height:0}
.single-product .product-main .woocommerce-product-gallery__image img:not(.zoomImg),
.single-product .product-main .product-gallery-slider .slide img:not(.zoomImg){display:block;width:auto!important;max-width:100%;height:auto!important;max-height:min(65vh,480px);object-fit:contain;margin-left:auto;margin-right:auto;border-radius:8px}
@media(max-width:549px){
.single-product .product-main .product-gallery{padding:0}
.single-product .product-main .woocommerce-product-gallery__image img:not(.zoomImg),
.single-product .product-main .product-gallery-slider .slide img:not(.zoomImg){max-height:min(60vh,360px)}
}
