/* 20261004.3 — scoped presentation, native WooCommerce forms and SDKs retained. */
body.sx-commerce-polished { --sx-commerce-pink:#ba065f; --sx-commerce-ink:#29252b; --sx-commerce-blush:#fff5f9; --sx-commerce-border:#e8dfe4; }
body.sx-commerce-polished #masthead .site-logo img.custom-logo { width:164px; height:auto; max-height:76px; object-fit:contain; }
body.sx-commerce-polished .sx-mobile-logo img.custom-logo { width:116px; height:auto; max-height:52px; object-fit:contain; }
body.sx-commerce-polished #sx-site-footer.sx-service-footer img.sx-footer-logo { width:158px; height:auto; filter:brightness(0) invert(1); mix-blend-mode:normal; }
body.sx-commerce-polished #delayedPopup.delayedPopupWindow::before { width:154px; height:61px; background-image:url('../images/sexity-logo-wordmark-20261004.png'); }
@media (min-width:1025px) {
 body.sx-commerce-polished.sx-site-shell #masthead .grid-header { grid-template-columns:164px minmax(200px,1fr) auto; gap:32px; }
 body.sx-commerce-polished.sx-site-shell #masthead .site-branding { width:164px; }
}
.sx-review-responses { margin:22px 0 0; text-align:center; }
.sx-review-responses a { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:11px 23px; border:1px solid #ba065f; border-radius:999px; background:white; color:#ba065f; font-size:14px; font-weight:600; line-height:1.5; text-decoration:none; }
.sx-review-responses a:hover { background:#ba065f; color:white; }
.sx-review-responses a:focus-visible { outline:2px solid #ba065f; outline-offset:4px; }

/* Shared cart / classic checkout canvas. All selectors exclude payment endpoints. */
body.sx-purchase-page #content { background:#fff; color:var(--sx-commerce-ink); }
body.sx-purchase-page #content > .ed-container { box-sizing:border-box; width:calc(100% - 64px); max-width:1200px; padding:0; margin:0 auto 54px; }
body.sx-purchase-page #content .woocommerce-breadcrumb { margin:16px 0 24px; padding:0; background:none; border:0; color:#716771; font-size:12px; line-height:1.6; }
body.sx-purchase-page #content .woocommerce-breadcrumb a { color:#716771; }
body.sx-purchase-page #main > .page-header { display:none; }
.sx-purchase-intro { width:100%; clear:both; margin:12px 0 30px; text-align:center; }
.sx-purchase-steps { display:flex; justify-content:center; flex-wrap:wrap; gap:12px 26px; list-style:none; margin:0 0 22px; padding:0; font-size:13px; line-height:1.5; color:#756873; }
.sx-purchase-steps li { display:flex; align-items:center; gap:8px; }
.sx-purchase-steps li > span { display:inline-flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:#f5eff2; color:#6d5f6a; font-size:12px; }
.sx-purchase-steps li[aria-current] { color:#ba065f; font-weight:600; }
.sx-purchase-steps li[aria-current] > span { background:#ba065f; color:white; }
.sx-purchase-steps a { color:inherit; text-underline-offset:3px; }
body.sx-purchase-page #primary .sx-purchase-intro h1 { margin:0 0 10px; padding:0; font-size:clamp(25px,3vw,37px); font-weight:600; line-height:1.2; letter-spacing:-.8px; color:#29252b; text-transform:none; }
.sx-purchase-intro > p { max-width:670px; margin:0 auto; color:#716771; font-size:15px; line-height:1.65; }
.sx-purchase-reassurance { display:flex; align-items:start; justify-content:center; gap:12px; clear:both; margin:18px 0; padding:16px 6px; border-top:1px solid #eee3e9; }
.sx-purchase-reassurance > span { display:flex; flex:1 1 0; flex-direction:column; align-items:center; gap:7px; text-align:center; color:#5f535c; font-size:12px; line-height:1.45; }
.sx-purchase-reassurance svg { width:23px; height:23px; color:#ba065f; flex:none; }
body.sx-purchase-page #primary .woocommerce-info,
body.sx-purchase-page #primary .woocommerce-message { box-sizing:border-box; min-height:48px; margin-bottom:14px; padding:14px 18px 14px 46px; border:1px solid #e9dce3; border-radius:12px; background:#fff8fb; color:#4f3d49; font-size:14px; line-height:1.6; }
body.sx-purchase-page #primary .woocommerce-info::before,
body.sx-purchase-page #primary .woocommerce-message::before { top:15px; left:17px; color:#ba065f; }
body.sx-purchase-page #primary .woocommerce-info a,
body.sx-purchase-page #primary .woocommerce-message a { color:#a70655; font-weight:600; }
body.sx-purchase-page #primary .woocommerce-error { border-top-color:#b32d2e; border-radius:10px; font-size:14px; line-height:1.6; }
body.sx-purchase-page #primary .woocommerce-error a { color:#a70655; text-decoration:underline; }
body.sx-purchase-page #primary input:focus-visible,
body.sx-purchase-page #primary select:focus-visible,
body.sx-purchase-page #primary textarea:focus-visible,
body.sx-purchase-page #primary button:focus-visible,
body.sx-purchase-page #primary a:focus-visible { outline:2px solid #ba065f; outline-offset:3px; }

/* Compact product rows, a clear summary, retained native update/coupon controls. */
body.sx-purchase-page.sx-cart-layout #primary .page-content > .woocommerce { grid-template-columns:minmax(0,1.25fr) minmax(350px,1fr); column-gap:36px; row-gap:16px; }
body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item { grid-template-columns:88px minmax(0,1fr) auto; gap:8px 16px; padding:20px; border:1px solid #e8dfe4; border-radius:16px; background:white; }
body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-thumbnail { grid-row:1 / 4; }
body.sx-purchase-page.sx-cart-layout #primary table.cart .product-thumbnail img { width:88px; height:116px; border-radius:10px; }
body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-name { grid-column:2 / 4; }
body.sx-purchase-page.sx-cart-layout #primary table.cart .product-name > a { font-size:15px; font-weight:600; line-height:1.45; }
body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-price { grid-column:2 / 4; grid-row:2; color:#736771; }
body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-quantity { grid-column:2; grid-row:3; }
body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-subtotal { grid-column:3; grid-row:3; justify-content:flex-end; align-self:center; }
body.sx-purchase-page.sx-cart-layout #primary table.cart .product-subtotal .amount { color:#ba065f; font-size:17px; }
body.sx-purchase-page.sx-cart-layout #primary table.cart a.remove { width:36px; height:36px; border-radius:50%; color:#8c7a87!important; font-weight:400; }
body.sx-purchase-page.sx-cart-layout #primary table.cart input.qty { width:66px; min-height:42px; border-color:#ded1d9; border-radius:9px; background:#fff; color:#29252b; }
body.sx-purchase-page.sx-cart-layout #primary table.cart .actions .coupon { box-sizing:border-box; padding:16px; border-radius:12px; background:#fff5f9; }
body.sx-purchase-page.sx-cart-layout #primary #coupon_code { border-color:#ded1d9; border-radius:9px; background:white; }
body.sx-purchase-page.sx-cart-layout #primary .actions .button { border-color:#d7c6d1; border-radius:9px; color:#a70655; font-weight:600; }
body.sx-purchase-page.sx-cart-layout #primary .actions .button:disabled { color:#716a6f; background:#faf7f9; }
body.sx-purchase-page.sx-cart-layout #primary .cart-collaterals .cart_totals { padding:28px; border:1px solid #e8dfe4; border-radius:18px; background:white; box-shadow:0 12px 38px rgb(67 18 42 / 5%); }
body.sx-purchase-page.sx-cart-layout #primary .cart_totals > h2 { margin-bottom:22px; font-size:23px; font-weight:600; letter-spacing:-.45px; }
body.sx-purchase-page.sx-cart-layout #primary .cart_totals tr { border-color:#eee3e9; }
body.sx-purchase-page.sx-cart-layout #primary .cart_totals tr > th,
body.sx-purchase-page.sx-cart-layout #primary .cart_totals tr > td { float:none; }
body.sx-purchase-page.sx-cart-layout #primary .cart_totals .order-total { margin-top:8px; padding:20px 0 12px; }
body.sx-purchase-page.sx-cart-layout #primary .cart_totals .order-total strong .amount { font-size:25px; color:#ba065f; }
body.sx-purchase-page.sx-cart-layout #primary .wc-proceed-to-checkout a.checkout-button,
body.sx-purchase-page.sx-checkout-layout #primary #place_order { min-height:54px; padding:14px 18px; border:1px solid #ba065f; border-radius:11px; background:#ba065f; color:#fff; font-size:16px; font-weight:600; letter-spacing:0; box-shadow:0 5px 15px rgb(186 6 95 / 12%); }
body.sx-purchase-page.sx-cart-layout #primary .wc-proceed-to-checkout a.checkout-button:hover,
body.sx-purchase-page.sx-checkout-layout #primary #place_order:hover { background:#98064e; border-color:#98064e; }
body.sx-purchase-page.sx-cart-layout #primary .wc-proceed-to-checkout .sx-purchase-reassurance { margin:0 0 18px; border-top:0; padding:0; }

/* Shipping clarity: native address calculator shown ahead of pickup-only rates. */
.sx-shipping-explainer { margin:0 0 14px; }
.sx-shipping-explainer strong { display:block; font-size:15px; line-height:1.5; color:#29252b; }
.sx-shipping-explainer p { margin:7px 0 0; color:#70616b; font-size:13px; line-height:1.65; }
body.sx-purchase-page.sx-cart-layout #primary .woocommerce-shipping-calculator { margin:0 0 16px; }
body.sx-purchase-page.sx-cart-layout #primary .sx-shipping-open .shipping-calculator-button { display:none; }
body.sx-purchase-page.sx-cart-layout #primary .sx-shipping-open .shipping-calculator-form { display:block!important; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form { padding:15px; border:1px solid #eddce5; border-radius:12px; background:#fff7fb; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form p { margin:0 0 12px; padding:0; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form p:last-of-type { margin-bottom:0; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form label { display:block; margin:0 0 6px; font-size:13px; font-weight:500; color:#55434f; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form input,
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form select { border-color:#ded1d9; border-radius:8px; background:#fff; color:#29252b; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form .select2-container { width:100%!important; max-width:100%; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form .select2-selection { height:auto; min-height:44px; border-color:#ded1d9; border-radius:8px; padding:7px; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form .select2-selection__arrow { top:10px; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form .button { width:100%; border-color:#ba065f; border-radius:9px; background:#fff; color:#a70655; font-size:14px; font-weight:600; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-form .button:hover { background:#ba065f; color:#fff; }
body.sx-purchase-page.sx-cart-layout #primary .shipping-calculator-button { color:#a70655; font-weight:600; text-underline-offset:3px; }
.sx-pickup-help { margin:12px 0 0; color:#70616b; font-size:12px; line-height:1.6; }
body.sx-purchase-page .sx-obsolete-destination { display:none; }
body.sx-purchase-page #primary .cart_totals .woocommerce-shipping-methods li,
body.sx-purchase-page #primary #order_review .woocommerce-shipping-methods li { border-color:#e5d9e1; border-radius:10px; padding:14px; }
body.sx-purchase-page #primary .woocommerce-shipping-methods li:has(input[type=radio]:checked),
body.sx-purchase-page.sx-checkout-layout #primary #payment ul.payment_methods > li:has(> input[type=radio]:checked) { border-color:#ba065f; background:#fff7fb; }
body.sx-purchase-page #primary .woocommerce-shipping-methods input[type=radio],
body.sx-purchase-page.sx-checkout-layout #primary #payment ul.payment_methods > li > input[type=radio] { accent-color:#ba065f; }

/* Checkout: natural field order, readable labels, SDK colours untouched. */
body.sx-purchase-page.sx-checkout-layout #primary #customer_details { padding:28px; border-color:#e8dfe4; border-radius:16px; }
body.sx-purchase-page.sx-checkout-layout #primary #order_review_heading { border-color:#e8dfe4; border-radius:16px 16px 0 0; background:white; padding:28px 26px 18px; font-size:22px; font-weight:600; }
body.sx-purchase-page.sx-checkout-layout #primary #order_review { border-color:#e8dfe4; border-radius:0 0 16px 16px; background:white; padding:0 26px 26px; }
body.sx-purchase-page.sx-checkout-layout #primary #customer_details h3 { color:#29252b; font-weight:600; font-size:21px; }
body.sx-purchase-page.sx-checkout-layout #primary #customer_details input.input-text,
body.sx-purchase-page.sx-checkout-layout #primary #customer_details textarea,
body.sx-purchase-page.sx-checkout-layout #primary #customer_details select,
body.sx-purchase-page.sx-checkout-layout #primary #customer_details .select2-selection--single,
body.sx-purchase-page.sx-checkout-layout #primary form.woocommerce-form-login input.input-text,
body.sx-purchase-page.sx-checkout-layout #primary form.checkout_coupon input.input-text { border-color:#ded1d9; border-radius:9px; box-shadow:none; background:white; }
body.sx-purchase-page.sx-checkout-layout #primary #customer_details .woocommerce-invalid input.input-text,
body.sx-purchase-page.sx-checkout-layout #primary #customer_details .woocommerce-invalid select,
body.sx-purchase-page.sx-checkout-layout #primary #customer_details .woocommerce-invalid .select2-selection { border-color:#b32d2e; }
body.sx-purchase-page.sx-checkout-layout #primary #order_review table.shop_table tr { border-color:#eee3e9; }
body.sx-purchase-page.sx-checkout-layout #primary #order_review .order-total strong .amount { font-size:24px; color:#ba065f; }
body.sx-purchase-page.sx-checkout-layout #primary #payment ul.payment_methods > li { border-color:#e5d9e1; border-radius:11px; background:white; }
body.sx-purchase-page.sx-checkout-layout #primary #payment .payment_box { border-radius:9px; background:#fff5f9; color:#55434f; font-size:13px; line-height:1.7; }
body.sx-purchase-page.sx-checkout-layout #primary #payment .payment_box a { color:#a70655; }
body.sx-purchase-page.sx-checkout-layout #primary #payment .woocommerce-terms-and-conditions-wrapper { color:#65555f; }
body.sx-purchase-page.sx-checkout-layout #primary #payment .woocommerce-terms-and-conditions-wrapper a { color:#a70655; text-decoration:underline; text-underline-offset:3px; }
body.sx-purchase-page.sx-checkout-layout #primary form.checkout > .sx-recaptcha-notice { display:block; clear:both; float:none; width:100%; max-width:100%; box-sizing:border-box; padding-top:22px; margin:0; font-size:11px; line-height:1.6; text-align:center; }
body.sx-purchase-page.sx-checkout-layout #primary form.checkout > .sx-recaptcha-notice[hidden] { display:none; }
body.sx-purchase-page.sx-checkout-layout #primary form.checkout_coupon,
body.sx-purchase-page.sx-checkout-layout #primary form.woocommerce-form-login { border-color:#e8dfe4; border-radius:12px; background:#fff; }
body.sx-purchase-page.sx-checkout-layout #primary form.checkout_coupon button,
body.sx-purchase-page.sx-checkout-layout #primary form.woocommerce-form-login button { min-height:46px; padding:12px 18px; border:1px solid #ba065f; border-radius:9px; background:#ba065f; color:white; font-size:14px; }

/* Bon Plan uses existing refined catalogue CSS/JS for cards, hearts and sorting. */
body.sx-deals-page #content > .ed-container { width:calc(100% - 64px); max-width:1320px; padding:0; }
.sx-deals-hero { position:relative; isolation:isolate; overflow:hidden; margin:6px 0 30px; padding:38px 44px; border-radius:22px; background:linear-gradient(115deg,#fff7fb 0%,#fbe1ee 67%,#edb0ce 100%); }
.sx-deals-hero::after { content:''; position:absolute; z-index:-1; width:360px; height:360px; right:5%; top:-170px; border:54px solid rgb(186 6 95 / 8%); border-radius:50%; transform:rotate(-25deg); }
.sx-deals-hero > div { max-width:580px; }
.sx-deals-eyebrow { margin:0 0 12px; color:#8f0a4c; font-size:12px; font-weight:600; letter-spacing:1.2px; text-transform:uppercase; }
body.sx-deals-page #primary .sx-deals-hero h1 { margin:0 0 16px; color:#a70655; font-size:clamp(30px,4vw,50px); font-weight:600; line-height:1.08; letter-spacing:-1px; text-transform:none; }
.sx-deals-hero > div > p:last-child { margin:0; color:#614552; font-size:15px; line-height:1.7; }
body.sx-deals-page .woocommerce-products-header { margin-bottom:0; }
@media (max-width:1024px) {
 body.sx-purchase-page.sx-cart-layout #primary .page-content > .woocommerce { grid-template-columns:minmax(0,1fr); gap:18px; }
 body.sx-purchase-page.sx-cart-layout #primary .page-content > .woocommerce > .woocommerce-cart-form,
 body.sx-purchase-page.sx-cart-layout #primary .page-content > .woocommerce > .cart-collaterals { grid-column:1; }
}
@media (max-width:600px) {
 body.sx-purchase-page #content > .ed-container,
 body.sx-deals-page #content > .ed-container { width:calc(100% - 32px); padding:0; }
 .sx-purchase-intro { margin:8px 0 24px; }
 .sx-purchase-steps { gap:10px 18px; margin-bottom:18px; font-size:12px; }
 .sx-purchase-intro > p { font-size:14px; }
 body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item { grid-template-columns:64px minmax(0,1fr); padding:16px; gap:8px 12px; }
 body.sx-purchase-page.sx-cart-layout #primary table.cart .product-thumbnail img { width:64px; height:90px; }
 body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-name,
 body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-price { grid-column:2; }
 body.sx-purchase-page.sx-cart-layout #primary table.cart tr.cart_item > .product-subtotal { grid-column:2; grid-row:4; justify-content:flex-start; }
 body.sx-purchase-page.sx-cart-layout #primary .cart-collaterals .cart_totals { padding:20px 16px; border-radius:14px; }
 body.sx-purchase-page.sx-cart-layout #primary .cart_totals > h2 { font-size:21px; }
 body.sx-purchase-page.sx-cart-layout #primary table.cart .actions .coupon { padding:13px; }
 body.sx-purchase-page.sx-checkout-layout #primary #customer_details { padding:20px 16px; }
 body.sx-purchase-page.sx-checkout-layout #primary #order_review_heading { padding:22px 16px 14px; }
 body.sx-purchase-page.sx-checkout-layout #primary #order_review { padding:0 16px 20px; }
 .sx-deals-hero { padding:26px 23px; border-radius:16px; margin-bottom:22px; }
 .sx-deals-hero::after { right:-185px; }
 .sx-purchase-reassurance { gap:8px; }
 .sx-purchase-reassurance > span { font-size:11px; }
}
