/**
 * RADIANCE Product Page — isolated stylesheet.
 * Save as assets/css/product-page.css.
 * Enqueued on is_product() by the final functions.php integration.
 * Product data, gallery slides, variations and prices remain WooCommerce data.
 */
body.single-product .site-main > .woocommerce,
body.single-product .site-main .woocommerce { max-width:1280px; margin-inline:auto; padding:32px 24px 56px; }
body.single-product .woocommerce div.product:not(.product-type-grouped) { position:relative; }
body.single-product .woocommerce div.product > .woocommerce-product-gallery {
 width:48%; float:left; margin:0 0 36px; min-width:0;
}
body.single-product .woocommerce div.product > .summary {
 width:48%; float:right; margin:0 0 36px; min-width:0;
}
body.single-product .woocommerce div.product > .summary .product_title {
 font-size:clamp(30px,3.1vw,46px); line-height:1.15; letter-spacing:-.025em;
 margin:0 0 22px; color:#10233f; overflow-wrap:anywhere;
}
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image a {
 display:block; background:#f8f5ef; border-radius:14px; overflow:hidden;
}
body.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img:not(.zoomImg) {
 display:block; width:100%; height:auto; aspect-ratio:1/1; object-fit:contain; object-position:center;
}
body.single-product .woocommerce-product-gallery .flex-viewport { border-radius:14px; }
body.single-product .woocommerce-product-gallery ol.flex-control-thumbs {
 display:flex; gap:12px; flex-wrap:wrap; padding:0; margin:16px 0 0; list-style:none;
}
body.single-product .woocommerce-product-gallery ol.flex-control-thumbs li {
 float:none; width:calc((100% - 24px)/3); max-width:140px; margin:0;
}
body.single-product .woocommerce-product-gallery ol.flex-control-thumbs li img {
 width:100%; height:auto; aspect-ratio:1/1; object-fit:contain; padding:5px;
 background:#f8f5ef; border:2px solid #e7e2da; border-radius:10px; opacity:.8; cursor:pointer;
}
body.single-product .woocommerce-product-gallery ol.flex-control-thumbs li img.flex-active,
body.single-product .woocommerce-product-gallery ol.flex-control-thumbs li img:hover { border-color:#b89556; opacity:1; }
body.single-product .woocommerce div.product > .summary p.price,
body.single-product .woocommerce div.product > .summary span.price { color:#10233f; font-size:23px; line-height:1.5; }
body.single-product .woocommerce div.product > .summary .price del { color:#667085; font-size:17px; text-decoration:line-through; opacity:.85; margin-right:10px; }
body.single-product .woocommerce div.product > .summary .price ins { color:#10233f; font-size:26px; font-weight:700; background:transparent; text-decoration:none; }
body.single-product .woocommerce-product-details__short-description { font-size:16px; line-height:1.75; color:#485365; }
body.single-product .woocommerce div.product form.cart .variations { width:100%; border:0; margin:22px 0; }
body.single-product .woocommerce div.product form.cart .variations th,
body.single-product .woocommerce div.product form.cart .variations td { border:0; padding:8px 0; vertical-align:middle; text-align:left; }
body.single-product .woocommerce div.product form.cart .variations th { width:120px; padding-right:14px; }
body.single-product .woocommerce div.product form.cart .variations label { color:#10233f; font-size:15px; font-weight:700; }
body.single-product .woocommerce div.product form.cart .variations select {
 width:100%; max-width:100%; min-width:0; min-height:48px; padding:10px 12px;
 border:1px solid #d9d3c8; border-radius:8px; background:#fff; color:#172235; font-size:16px;
}
body.single-product .woocommerce div.product form.cart .quantity input.qty {
 width:70px; min-height:48px; padding:8px; border:1px solid #d9d3c8; border-radius:8px; font-size:16px;
}
body.single-product .woocommerce div.product form.cart button.single_add_to_cart_button,
body.single-product .woocommerce div.product form.cart button.rc-buy-now {
 min-height:48px; padding:13px 22px; margin:0 6px 10px 0; border:1px solid #10233f;
 border-radius:8px; background:#10233f; color:#fff; font-size:15px; font-weight:700;
 line-height:1.4; white-space:normal; cursor:pointer;
}
body.single-product .woocommerce div.product form.cart button.rc-buy-now { background:#b89556; border-color:#b89556; }
body.single-product .woocommerce div.product form.cart button.disabled,
body.single-product .woocommerce div.product form.cart button:disabled { opacity:.5; cursor:not-allowed; }
body.single-product .woocommerce div.product form.cart button:not(:disabled):not(.disabled):hover { filter:brightness(.9); }
body.single-product .rc-product-trust { display:grid; gap:10px; margin-top:20px; padding:18px; background:#f8f5ef; border:1px solid #e7e2da; border-radius:10px; }
body.single-product .rc-product-trust strong { margin-right:7px; }
body.single-product .rc-product-service-note { margin:16px 0; line-height:1.7; }
body.single-product .woocommerce div.product .product_meta { font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
body.single-product .woocommerce div.product > .woocommerce-tabs,
body.single-product .woocommerce div.product > .related { clear:both; padding-top:28px; }
body.single-product .woocommerce div.product .woocommerce-tabs h2,
body.single-product .woocommerce div.product > .related h2 { font-size:clamp(25px,3vw,36px); line-height:1.2; }
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs { display:flex; flex-wrap:wrap; gap:6px; padding-left:0; }
body.single-product .woocommerce div.product .woocommerce-tabs .panel { font-size:16px; line-height:1.8; }
body.single-product .woocommerce div.product > .related ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
body.single-product .woocommerce div.product > .related ul.products::before,
body.single-product .woocommerce div.product > .related ul.products::after { display:none; }
body.single-product .woocommerce div.product > .related ul.products li.product { float:none; width:100%; margin:0; min-width:0; }
body.single-product .woocommerce select:focus-visible,
body.single-product .woocommerce button:focus-visible,
body.single-product .woocommerce a:focus-visible { outline:3px solid #d5bd8b; outline-offset:3px; }
@media(max-width:767px) {
 body.single-product .site-main > .woocommerce,
 body.single-product .site-main .woocommerce { padding:24px 16px 40px; }
 body.single-product .woocommerce div.product > .woocommerce-product-gallery,
 body.single-product .woocommerce div.product > .summary { float:none; width:100%; margin-bottom:28px; }
 body.single-product .woocommerce div.product > .summary .product_title { font-size:clamp(28px,7vw,38px); }
 body.single-product .woocommerce div.product form.cart .variations th { width:100px; }
 body.single-product .woocommerce div.product > .related ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
 body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li { margin:0; }
}
@media(max-width:360px) {
 body.single-product .woocommerce div.product form.cart .variations th,
 body.single-product .woocommerce div.product form.cart .variations td { display:block; width:100%; }
 body.single-product .woocommerce div.product form.cart .variations th { padding-bottom:0; }
 body.single-product .woocommerce div.product form.cart button.single_add_to_cart_button,
 body.single-product .woocommerce div.product form.cart button.rc-buy-now { padding-inline:14px; font-size:14px; }
}
