body.single-product #primary.site-main { max-width: 1120px; margin-inline: auto; padding: 40px 24px 72px; }
body.single-product .product-gallery-summary { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); align-items: start; gap: clamp(28px, 5vw, 72px); }
body.single-product .product-gallery-summary > .woocommerce-product-gallery,
body.single-product .product-gallery-summary > .summary { width: 100%; max-width: 100%; min-width: 0; float: none; margin: 0; }
body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery img { max-width: 100%; }
body.single-product .summary.entry-summary { padding: clamp(20px, 3vw, 36px); border: 1px solid #e4e9e2; border-radius: 20px; background: #fafcf8; }
body.single-product .product_title { font-size: clamp(1.9rem, 3vw, 2.8rem); line-height: 1.16; letter-spacing: -.025em; margin-bottom: 16px; overflow-wrap: anywhere; }
body.single-product .summary .price { font-size: 1.55rem; font-weight: 700; color: #1d513a; margin-bottom: 20px; }
body.single-product .woocommerce-product-details__short-description { line-height: 1.7; overflow-wrap: anywhere; }
body.single-product .single_add_to_cart_button { border-radius: 10px; min-height: 48px; }
body.single-product .bh-purchase-terms { margin-top: 28px; padding: 24px; border-radius: 14px; background: #eaf2eb; color: #243a2c; line-height: 1.55; }
body.single-product .bh-purchase-terms h2 { font-size: 1.1rem; margin: 0 0 14px; }
body.single-product .bh-purchase-terms p { margin: 0 0 12px; }
body.single-product .bh-purchase-terms p:last-child { margin-bottom: 0; font-size: .9rem; }
body.single-product .woocommerce-tabs.wc-tabs-wrapper { display: none; }
body.single-product .bh-product-description { clear: both; max-width: 820px; margin: 55px auto 0; padding: 32px 0; border-top: 1px solid #e4e9e2; line-height: 1.7; overflow-wrap: anywhere; }
body.single-product .bh-product-description img,
body.single-product .bh-product-description video { max-width: 100%; height: auto; }
body.single-product .bh-product-description table { display: block; max-width: 100%; overflow-x: auto; }
body.single-product .bh-product-description h2 { font-size: 1.4rem; margin-bottom: 16px; }
@media (max-width: 780px) {
 body.single-product #primary.site-main { width: 100%; padding: 16px 14px 42px; }
 body.single-product .product-gallery-summary { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
 body.single-product .product-gallery-summary > .woocommerce-product-gallery,
 body.single-product .product-gallery-summary > .summary { width: 100% !important; min-width: 0; }
 body.single-product .woocommerce-product-gallery { overflow: hidden; }
 body.single-product .summary.entry-summary { padding: 20px 16px; border-radius: 14px; }
 body.single-product .product_title { font-size: clamp(1.55rem, 7vw, 2.1rem); }
 body.single-product .summary .price { font-size: 1.35rem; }
 body.single-product form.cart { display: flex; align-items: stretch; flex-wrap: wrap; gap: 10px; }
 body.single-product form.cart .quantity { float: none; margin: 0; }
 body.single-product form.cart .single_add_to_cart_button { flex: 1 1 170px; margin: 0; }
 body.single-product .bh-purchase-terms { padding: 18px 16px; margin-top: 22px; }
 body.single-product .bh-product-description { margin-top: 30px; padding-top: 24px; }
}
