/* Product pages only; native galleries, variation resolution and forms retained. */
body.sx-product-layout.woocommerce #primary { width: 100% !important; max-width: 100%; float: none; padding-left: 0; padding-right: 0; }
body.sx-product-layout .shop-sidebar { display: none; }
body.sx-product-layout #primary div.product > .images { width: 48%; float: left; margin: 0 0 32px; }
body.sx-product-layout #primary div.product > .summary { width: 48%; float: right; margin: 0 0 32px; padding: 0; min-width: 0; }
body.sx-product-layout #primary div.product > .summary .product_title { width: 100%; margin: 0 0 16px; font-size: 28px; line-height: 1.25; text-transform: none; overflow-wrap: anywhere; }
body.sx-product-layout #primary div.product > .summary > .price { margin: 0 0 18px; font-size: 26px; line-height: 1.3; font-weight: 600; color: #282329; }
body.sx-product-layout #primary .summary .woocommerce-price-suffix { font-size: 13px; font-weight: 400; }
body.sx-product-layout #primary .summary .woocommerce-product-details__short-description { margin: 0 0 22px; font-size: 16px; line-height: 1.6; }
body.sx-product-layout #primary .summary .woocommerce-product-details__short-description h2 { margin: 0; font-size: 16px; line-height: 1.6; font-weight: 400; text-transform: none; }
body.sx-product-layout #primary .summary form.cart { padding: 20px 0 0; margin: 0 0 20px; border-top: 1px solid #e5e0e3; }
body.sx-product-layout #primary .summary form.cart .variations { width: 100%; border: 0; margin-bottom: 18px; }
body.sx-product-layout #primary .summary form.cart .variations tbody,
body.sx-product-layout #primary .summary form.cart .variations tr,
body.sx-product-layout #primary .summary form.cart .variations th,
body.sx-product-layout #primary .summary form.cart .variations td { display: block; width: 100%; padding: 0; border: 0; background: transparent; text-align: left; }
body.sx-product-layout #primary .summary form.cart .variations label { display: block; margin: 0 0 8px; font-size: 15px; line-height: 1.4; font-weight: 600; }
body.sx-product-layout #primary .summary form.cart .variations tr { margin-bottom: 12px; }
body.sx-product-layout #primary .summary form.cart .variations select { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 46px; padding: 10px 36px 10px 12px; font-size: 16px; border: 1px solid #aaa; border-radius: 4px; }
body.sx-product-layout #primary .summary form.cart .variations .sx-native-size { display: none; }
body.sx-product-layout #primary .summary .sx-size-options { display: flex; flex-wrap: wrap; gap: 8px; }
body.sx-product-layout #primary .summary button.sx-size-option { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; float: none; position: static; min-width: 48px; min-height: 46px; max-width: 100%; height: auto; margin: 0; padding: 10px 14px; border: 1px solid #aaa; border-radius: 4px; background: #fff; box-shadow: none; color: #282329; font: inherit; font-size: 15px; line-height: 1.3; text-transform: none; text-indent: 0; white-space: normal; cursor: pointer; }
body.sx-product-layout #primary .summary button.sx-size-option::before,
body.sx-product-layout #primary .summary button.sx-size-option::after { content: none; }
body.sx-product-layout #primary .summary button.sx-size-option[aria-pressed="true"] { border-color: #a20c56; background: #a20c56; color: #fff; font-weight: 600; }
body.sx-product-layout #primary .summary button.sx-size-option:disabled { border-color: #ddd; background: #f5f5f5; color: #777; text-decoration: line-through; cursor: not-allowed; opacity: 1; }
body.sx-product-layout #primary .summary button:focus-visible,
body.sx-product-layout #primary .summary a:focus-visible { outline: 2px solid #861247; outline-offset: 3px; }
body.sx-product-layout #primary .summary .sx-size-hint { margin: 10px 0 0; font-size: 13px; line-height: 1.5; color: #555; }
body.sx-product-layout #primary .summary .sx-size-hint[hidden] { display: none; }
body.sx-product-layout #primary .summary .reset_variations { display: inline-flex; position: static; align-items: center; min-height: 44px; margin: 4px 0 0; padding: 0; font-size: 13px; text-decoration: underline; }
body.sx-product-layout #primary .summary .single_variation { margin-bottom: 14px; }
body.sx-product-layout #primary .summary .stock { margin: 10px 0; font-size: 15px; line-height: 1.5; }
body.sx-product-layout #primary .summary .stock.in-stock { color: #356132; }
body.sx-product-layout #primary .summary .stock.out-of-stock { color: #a12634; }
body.sx-product-layout #primary .summary .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: 10px; }
body.sx-product-layout #primary .summary form.cart div.quantity { float: none; flex: 0 0 76px; width: 76px; margin: 0; }
body.sx-product-layout #primary .summary form.cart input.qty { box-sizing: border-box; width: 76px; min-height: 50px; height: auto; padding: 10px 6px; border: 1px solid #aaa; border-radius: 4px; font-size: 16px; line-height: 1.5; }
body.sx-product-layout #primary .summary form.cart .single_add_to_cart_button { position: static; display: inline-flex; align-items: center; justify-content: center; flex: 1 1 180px; float: none; box-sizing: border-box; min-height: 50px; height: auto; max-width: 100%; margin: 0; padding: 12px 20px; border: 1px solid #a20c56; border-radius: 4px; background: #a20c56; box-shadow: none; color: #fff; font-size: 16px; font-weight: 600; line-height: 1.5; text-transform: none; white-space: normal; }
body.sx-product-layout #primary .summary form.cart .single_add_to_cart_button::before,
body.sx-product-layout #primary .summary form.cart .single_add_to_cart_button::after { content: none; }
body.sx-product-layout #primary .summary form.cart .single_add_to_cart_button.disabled,
body.sx-product-layout #primary .summary form.cart .single_add_to_cart_button:disabled { background: #eee; border-color: #ccc; color: #666; opacity: 1; }
body.sx-product-layout #primary .summary form.cart:not(.variations_form):not(.grouped_form) { display: flex; flex-wrap: wrap; align-items: stretch; gap: 10px; }
body.sx-product-layout #primary div.product > .woocommerce-tabs { clear: both; padding-top: 24px; margin-top: 20px; border-top: 1px solid #e5e0e3; }
body.sx-product-layout #primary .woocommerce-tabs .panel { max-width: 960px; margin: 0 auto 32px; line-height: 1.65; }
body.sx-product-layout #primary .woocommerce-tabs .panel h1,
body.sx-product-layout #primary .woocommerce-tabs .panel h2 { font-size: 22px; line-height: 1.35; }
body.sx-product-layout #primary .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 6px; padding-left: 0; }
body.sx-product-layout #primary .woocommerce-tabs ul.tabs li { margin: 0; }
body.sx-product-layout #primary .woocommerce-tabs ul.tabs li a { min-height: 44px; padding: 12px; font-size: 15px; white-space: normal; }
@media (max-width: 767px) {
    body.sx-product-layout #primary div.product > .images,
    body.sx-product-layout #primary div.product > .summary { float: none; width: 100%; margin-bottom: 24px; }
    body.sx-product-layout #primary div.product > .summary .product_title { font-size: 23px; }
    body.sx-product-layout #primary div.product > .summary > .price { font-size: 25px; }
    body.sx-product-layout #primary .summary .woocommerce-product-details__short-description,
    body.sx-product-layout #primary .summary .woocommerce-product-details__short-description h2 { font-size: 15px; }
    body.sx-product-layout #primary .woocommerce-tabs ul.tabs li a { font-size: 14px; }
}
