/* Salsa Gatineau 1.2.15 — commerce visual continuity
   Produits, boutique, panier, checkout, confirmation et Mon compte.
   WooCommerce demeure le moteur; cette couche ne modifie pas les calculs, taxes, stocks ou paiements. */

body.sgpp-native-commerce{
    margin:0!important;
    background:#f7f3f2!important;
    color:#111827!important;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;
}
body.sgpp-native-commerce #wpadminbar{position:fixed}
body.sgpp-native-commerce .sgpp-commerce-shell{min-height:100vh;background:#f7f3f2;color:#111827;overflow:visible}
body.sgpp-native-commerce .sgpp-commerce-top{background:rgba(6,7,8,.985)}
body.sgpp-native-commerce .sgpp-commerce-cart-link{display:inline-flex!important;align-items:center;gap:7px}
body.sgpp-native-commerce .sgpp-commerce-cart-link span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#e31b23;color:#fff;font-size:10px;font-weight:900}

.sgpp-commerce-main{background:#f7f3f2;min-height:62vh}
.sgpp-commerce-intro{position:relative;overflow:hidden;background:#08090a;color:#fff;padding:64px 0 58px;border-bottom:1px solid #222}
.sgpp-commerce-intro:after{content:"";position:absolute;right:-130px;top:-210px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(227,27,35,.24),rgba(227,27,35,.05) 38%,transparent 70%);pointer-events:none}
.sgpp-commerce-intro .sgpp-wrap{position:relative;z-index:1}
.sgpp-commerce-intro small{display:block;color:#e31b23;font-size:12px;font-weight:900;letter-spacing:2.1px;text-transform:uppercase;margin-bottom:10px}
.sgpp-commerce-intro h1{max-width:900px;margin:0!important;color:#fff!important;font-size:clamp(38px,5vw,60px)!important;line-height:1.02!important;letter-spacing:-1.4px!important;font-weight:850!important;text-transform:none!important}
.sgpp-commerce-intro p{max-width:760px;margin:15px 0 0!important;color:#d5d9dd!important;font-size:16px!important;line-height:1.55!important}
.sgpp-commerce-trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:25px;color:#eef0f2;font-size:12px;font-weight:750}
.sgpp-commerce-trust span:before{color:#e31b23}

.sgpp-commerce-body{padding:46px 0 70px;background:#f7f3f2}
.sgpp-commerce-card{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:22px;padding:clamp(20px,3.3vw,46px);box-shadow:0 14px 42px rgba(17,24,39,.08);overflow:hidden}
.sgpp-commerce-card *{box-sizing:border-box}
.sgpp-commerce-card .woocommerce{color:#20242b}
.sgpp-commerce-card .woocommerce:after,.sgpp-commerce-card .woocommerce:before{content:"";display:table;clear:both}
.sgpp-commerce-card .woocommerce-breadcrumb{margin:0 0 24px!important;color:#78808a!important;font-size:12px!important}
.sgpp-commerce-card .woocommerce-breadcrumb a{color:#e31b23!important;text-decoration:none!important;font-weight:750!important}

/* Notices */
.sgpp-commerce-card .woocommerce-message,
.sgpp-commerce-card .woocommerce-info,
.sgpp-commerce-card .woocommerce-error{
    margin:0 0 22px!important;padding:15px 18px!important;border-radius:12px!important;border:1px solid #e6e8eb!important;border-top:0!important;background:#f8fafc!important;color:#242a31!important;box-shadow:none!important;line-height:1.45!important;
}
.sgpp-commerce-card .woocommerce-message{border-left:4px solid #16a34a!important}
.sgpp-commerce-card .woocommerce-info{border-left:4px solid #2563eb!important}
.sgpp-commerce-card .woocommerce-error{border-left:4px solid #e31b23!important}
.sgpp-commerce-card .woocommerce-message:before,.sgpp-commerce-card .woocommerce-info:before,.sgpp-commerce-card .woocommerce-error:before{display:none!important}

/* Typography */
.sgpp-commerce-card h1,.sgpp-commerce-card h2,.sgpp-commerce-card h3,.sgpp-commerce-card h4{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,Helvetica,sans-serif!important;color:#111827!important;text-transform:none!important}
.sgpp-commerce-card h1{font-size:clamp(30px,4vw,46px)!important;line-height:1.05!important;font-weight:850!important;letter-spacing:-.8px!important}
.sgpp-commerce-card h2{font-size:27px!important;line-height:1.15!important;font-weight:800!important}
.sgpp-commerce-card h3{font-size:19px!important;font-weight:800!important}
.sgpp-commerce-card p,.sgpp-commerce-card li{color:#545d68;line-height:1.65}
.sgpp-commerce-card a{color:#e31b23}

/* Product detail */
.sgpp-commerce-card div.product{display:block!important;margin:0!important}
.sgpp-commerce-card div.product .woocommerce-product-gallery{margin-bottom:28px!important}
.sgpp-commerce-card div.product div.images img{border-radius:16px!important;background:#f8f8f8!important;box-shadow:none!important}
.sgpp-commerce-card div.product div.summary{padding:4px 0 0!important}
.sgpp-commerce-card div.product .product_title{margin:0 0 13px!important;font-size:clamp(27px,2.55vw,34px)!important;line-height:1.12!important;font-weight:850!important;letter-spacing:-.55px!important;color:#111827!important}
.sgpp-commerce-card div.product p.price,.sgpp-commerce-card div.product span.price{color:#e31b23!important;font-size:26px!important;font-weight:900!important;line-height:1.1!important}
.sgpp-commerce-card div.product .woocommerce-product-details__short-description{margin:18px 0 24px!important;padding:0!important;color:#59616b!important;font-size:16px!important}
.sgpp-commerce-card div.product .product_meta{margin-top:24px!important;padding-top:18px!important;border-top:1px solid #eceef0!important;color:#7c838c!important;font-size:12px!important}
.sgpp-commerce-card div.product .product_meta a{font-weight:750!important;text-decoration:none!important}
.sgpp-commerce-card .woocommerce-product-rating{margin:0 0 14px!important}
.sgpp-commerce-card .star-rating span:before{color:#e31b23!important}

/* Purchase controls */
.sgpp-commerce-card form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:20px 0!important}
.sgpp-commerce-card form.cart .quantity{margin:0!important}
.sgpp-commerce-card .quantity .qty{width:78px!important;min-height:50px!important;padding:0 10px!important;border:1px solid #d7dce1!important;border-radius:10px!important;background:#fff!important;color:#111827!important;font-size:15px!important;box-shadow:none!important}
.sgpp-commerce-card select,
.sgpp-commerce-card input.input-text,
.sgpp-commerce-card input[type=text],
.sgpp-commerce-card input[type=email],
.sgpp-commerce-card input[type=tel],
.sgpp-commerce-card input[type=password],
.sgpp-commerce-card input[type=number],
.sgpp-commerce-card textarea{
    width:100%;min-height:50px;padding:12px 14px!important;border:1px solid #d7dce1!important;border-radius:10px!important;background:#fff!important;color:#111827!important;font-size:15px!important;box-shadow:none!important;outline:0!important;
}
.sgpp-commerce-card textarea{min-height:110px!important;resize:vertical}
.sgpp-commerce-card select:focus,.sgpp-commerce-card input:focus,.sgpp-commerce-card textarea:focus{border-color:#e31b23!important;box-shadow:0 0 0 3px rgba(227,27,35,.08)!important}
.sgpp-commerce-card label{color:#252b33!important;font-weight:750!important;font-size:13px!important}
.sgpp-commerce-card .select2-container .select2-selection--single{height:50px!important;border:1px solid #d7dce1!important;border-radius:10px!important}
.sgpp-commerce-card .select2-container .select2-selection--single .select2-selection__rendered{line-height:48px!important;padding-left:14px!important}
.sgpp-commerce-card .select2-container .select2-selection--single .select2-selection__arrow{height:48px!important}

/* Buttons */
.sgpp-commerce-card .button,
.sgpp-commerce-card button.button,
.sgpp-commerce-card input.button,
.sgpp-commerce-card a.button,
.sgpp-commerce-card .single_add_to_cart_button,
.sgpp-commerce-card #place_order,
.sgpp-commerce-card .wc-block-components-button{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:50px!important;padding:0 21px!important;border:1px solid #e31b23!important;border-radius:10px!important;background:#e31b23!important;color:#fff!important;font-size:12px!important;line-height:1.1!important;font-weight:850!important;letter-spacing:.35px!important;text-decoration:none!important;text-transform:uppercase!important;box-shadow:0 8px 20px rgba(227,27,35,.16)!important;transition:.18s ease!important;
}
.sgpp-commerce-card .button:hover,.sgpp-commerce-card button.button:hover,.sgpp-commerce-card input.button:hover,.sgpp-commerce-card a.button:hover,.sgpp-commerce-card .single_add_to_cart_button:hover,.sgpp-commerce-card #place_order:hover,.sgpp-commerce-card .wc-block-components-button:hover{transform:translateY(-1px);background:#c9151d!important;border-color:#c9151d!important;color:#fff!important}
.sgpp-commerce-card .button.alt,.sgpp-commerce-card .checkout-button{background:#111827!important;border-color:#111827!important;box-shadow:none!important}
.sgpp-commerce-card .button.alt:hover,.sgpp-commerce-card .checkout-button:hover{background:#050607!important;border-color:#050607!important}
.sgpp-commerce-card .remove{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border-radius:50%!important;color:#e31b23!important;text-decoration:none!important}
.sgpp-commerce-card .remove:hover{background:#fff1f2!important;color:#b91c1c!important}

/* Variations */
.sgpp-commerce-card .variations{margin:16px 0 10px!important;border:0!important}
.sgpp-commerce-card .variations td,.sgpp-commerce-card .variations th{padding:7px 8px 7px 0!important;border:0!important;background:transparent!important}
.sgpp-commerce-card .variations label{font-weight:800!important}
.sgpp-commerce-card .reset_variations{display:inline-block;margin-top:6px;font-size:12px;font-weight:750;text-decoration:none}
.sgpp-commerce-card .woocommerce-variation-price{margin:10px 0 14px}

/* Product tabs */
.sgpp-commerce-card .woocommerce-tabs{clear:both;margin-top:44px!important;padding-top:30px!important;border-top:1px solid #eceef0!important}
.sgpp-commerce-card .woocommerce-tabs ul.tabs{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0 0 24px!important;padding:0!important;border:0!important}
.sgpp-commerce-card .woocommerce-tabs ul.tabs:before,.sgpp-commerce-card .woocommerce-tabs ul.tabs li:before,.sgpp-commerce-card .woocommerce-tabs ul.tabs li:after{display:none!important}
.sgpp-commerce-card .woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:1px solid #e0e3e6!important;border-radius:999px!important;background:#fff!important}
.sgpp-commerce-card .woocommerce-tabs ul.tabs li.active{background:#111827!important;border-color:#111827!important}
.sgpp-commerce-card .woocommerce-tabs ul.tabs li a{padding:9px 15px!important;color:#555f69!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important}
.sgpp-commerce-card .woocommerce-tabs ul.tabs li.active a{color:#fff!important}

/* Related / product grids */
.sgpp-commerce-card ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;margin:28px 0 0!important;padding:0!important}
.sgpp-commerce-card ul.products:before,.sgpp-commerce-card ul.products:after{display:none!important}
.sgpp-commerce-card ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:14px!important;border:1px solid #e8eaed!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 22px rgba(17,24,39,.05)!important}
.sgpp-commerce-card ul.products li.product img{border-radius:12px!important;margin:0 0 14px!important}
.sgpp-commerce-card ul.products li.product .woocommerce-loop-product__title{padding:0!important;margin:0 0 8px!important;font-size:17px!important;line-height:1.25!important;font-weight:800!important;color:#111827!important}
.sgpp-commerce-card ul.products li.product .price{color:#e31b23!important;font-weight:850!important;font-size:16px!important}
.sgpp-commerce-card ul.products li.product .button{width:100%;margin-top:12px!important}

/* Cart tables */
.sgpp-commerce-card table.shop_table{width:100%!important;margin:0 0 24px!important;border:1px solid #e7e9ec!important;border-radius:14px!important;border-collapse:separate!important;border-spacing:0!important;overflow:hidden!important;background:#fff!important}
.sgpp-commerce-card table.shop_table th{padding:14px 15px!important;background:#111827!important;color:#fff!important;border:0!important;font-size:11px!important;letter-spacing:.45px!important;text-transform:uppercase!important}
.sgpp-commerce-card table.shop_table td{padding:16px 15px!important;border:0!important;border-bottom:1px solid #eceef0!important;background:#fff!important;color:#3d454f!important;vertical-align:middle!important}
.sgpp-commerce-card table.shop_table tr:last-child td{border-bottom:0!important}
.sgpp-commerce-card table.shop_table .product-thumbnail img{width:78px!important;border-radius:9px!important}
.sgpp-commerce-card table.shop_table .product-name a{color:#111827!important;font-weight:800!important;text-decoration:none!important}
.sgpp-commerce-card .coupon{display:flex!important;gap:8px!important;align-items:center!important}
.sgpp-commerce-card .coupon #coupon_code{width:210px!important;min-height:50px!important;margin:0!important}
.sgpp-commerce-card .cart-collaterals{margin-top:28px!important}
.sgpp-commerce-card .cart_totals{float:none!important;width:min(100%,520px)!important;margin-left:auto!important;padding:24px!important;border:1px solid #e7e9ec!important;border-radius:16px!important;background:#f8fafc!important}
.sgpp-commerce-card .cart_totals h2{margin-top:0!important}
.sgpp-commerce-card .wc-proceed-to-checkout{padding:12px 0 0!important}
.sgpp-commerce-card .wc-proceed-to-checkout .checkout-button{width:100%!important;margin:0!important;font-size:13px!important}

/* Checkout */
.sgpp-commerce-card form.checkout{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr)!important;gap:34px!important;align-items:start!important}
.sgpp-commerce-card form.checkout #customer_details{grid-column:1;display:block!important;width:auto!important}
.sgpp-commerce-card form.checkout #customer_details .col-1,.sgpp-commerce-card form.checkout #customer_details .col-2{float:none!important;width:100%!important;margin:0 0 24px!important;padding:0!important}
.sgpp-commerce-card form.checkout #order_review_heading{grid-column:2;margin:0 0 -22px!important;padding:24px 24px 0!important;background:#f8fafc!important;border:1px solid #e7e9ec!important;border-bottom:0!important;border-radius:16px 16px 0 0!important}
.sgpp-commerce-card form.checkout #order_review{grid-column:2;padding:18px 24px 24px!important;background:#f8fafc!important;border:1px solid #e7e9ec!important;border-top:0!important;border-radius:0 0 16px 16px!important}
.sgpp-commerce-card .woocommerce-billing-fields>h3,.sgpp-commerce-card .woocommerce-additional-fields>h3{margin-top:0!important}
.sgpp-commerce-card .form-row{margin:0 0 15px!important;padding:0!important}
.sgpp-commerce-card .form-row-first,.sgpp-commerce-card .form-row-last{width:48.5%!important}
.sgpp-commerce-card #payment{background:#fff!important;border:1px solid #e4e7ea!important;border-radius:14px!important;overflow:hidden!important}
.sgpp-commerce-card #payment ul.payment_methods{padding:18px!important;border-bottom:1px solid #e7e9ec!important}
.sgpp-commerce-card #payment div.payment_box{background:#f4f6f8!important;color:#4c5560!important;border-radius:10px!important}
.sgpp-commerce-card #payment div.payment_box:before{border-bottom-color:#f4f6f8!important}
.sgpp-commerce-card #payment div.form-row{padding:18px!important;margin:0!important}
.sgpp-commerce-card #place_order{width:100%!important;min-height:54px!important;font-size:13px!important}

/* Thank-you / order details */
.sgpp-commerce-card .woocommerce-thankyou-order-received{padding:18px 20px!important;border-radius:13px!important;background:#ecfdf3!important;border:1px solid #bbf7d0!important;color:#166534!important;font-size:17px!important;font-weight:800!important}
.sgpp-commerce-card ul.order_details{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important;margin:22px 0 30px!important;padding:0!important}
.sgpp-commerce-card ul.order_details li{float:none!important;margin:0!important;padding:15px!important;border:1px solid #e6e8eb!important;border-radius:12px!important;background:#f8fafc!important;color:#626b75!important;font-size:10px!important;text-transform:uppercase!important}
.sgpp-commerce-card ul.order_details li strong{display:block!important;margin-top:7px!important;color:#111827!important;font-size:14px!important;text-transform:none!important}

/* My Account */
.sgpp-commerce-card .woocommerce-MyAccount-navigation{float:left!important;width:25%!important}
.sgpp-commerce-card .woocommerce-MyAccount-navigation ul{margin:0!important;padding:0!important;list-style:none!important;border:1px solid #e7e9ec!important;border-radius:14px!important;overflow:hidden!important}
.sgpp-commerce-card .woocommerce-MyAccount-navigation li{margin:0!important;border-bottom:1px solid #eceef0!important}
.sgpp-commerce-card .woocommerce-MyAccount-navigation li:last-child{border-bottom:0!important}
.sgpp-commerce-card .woocommerce-MyAccount-navigation a{display:block!important;padding:13px 15px!important;color:#3f4751!important;font-weight:750!important;text-decoration:none!important;background:#fff!important}
.sgpp-commerce-card .woocommerce-MyAccount-navigation .is-active a{background:#111827!important;color:#fff!important}
.sgpp-commerce-card .woocommerce-MyAccount-content{float:right!important;width:71%!important}

/* WooCommerce Blocks — cart / checkout */
.sgpp-commerce-card .wc-block-cart,.sgpp-commerce-card .wc-block-checkout{font-family:inherit!important;color:#20242b!important}
.sgpp-commerce-card .wc-block-components-sidebar-layout{gap:28px!important}
.sgpp-commerce-card .wc-block-components-sidebar{padding:22px!important;border:1px solid #e7e9ec!important;border-radius:16px!important;background:#f8fafc!important}
.sgpp-commerce-card .wc-block-components-totals-wrapper{border-top-color:#e7e9ec!important}
.sgpp-commerce-card .wc-block-components-text-input input,.sgpp-commerce-card .wc-blocks-components-select .wc-blocks-components-select__select{border-radius:10px!important;border-color:#d7dce1!important;background:#fff!important}
.sgpp-commerce-card .wc-block-components-checkout-place-order-button{width:100%!important}

.sgpp-commerce-bottom-cta{background:#e31b23;color:#fff;padding:38px 0}
.sgpp-commerce-bottom-cta .sgpp-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}
.sgpp-commerce-bottom-cta small{font-size:11px;font-weight:900;letter-spacing:1.8px}
.sgpp-commerce-bottom-cta h2{margin:4px 0 2px;color:#fff;font-size:32px;line-height:1;font-weight:900}
.sgpp-commerce-bottom-cta p{margin:0;color:#fff;font-size:14px}
.sgpp-commerce-bottom-cta .sgpp-btn{flex:0 0 auto}

@media(max-width:1024px){
    .sgpp-commerce-card ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .sgpp-commerce-card form.checkout{grid-template-columns:1fr!important;gap:18px!important}
    .sgpp-commerce-card form.checkout #customer_details,.sgpp-commerce-card form.checkout #order_review_heading,.sgpp-commerce-card form.checkout #order_review{grid-column:1!important}
    .sgpp-commerce-card form.checkout #order_review_heading{margin-top:10px!important}
    .sgpp-commerce-card ul.order_details{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:782px){
    body.sgpp-native-commerce .sgpp-commerce-top{top:46px}
}
@media(max-width:700px){
    .sgpp-commerce-intro{padding:45px 0 40px}
    .sgpp-commerce-intro h1{font-size:36px!important;letter-spacing:-.7px!important}
    .sgpp-commerce-intro p{font-size:15px!important}
    .sgpp-commerce-trust{display:grid;grid-template-columns:1fr;gap:6px;margin-top:18px}
    .sgpp-commerce-body{padding:24px 0 45px}
    .sgpp-commerce-card{padding:19px;border-radius:17px}
    .sgpp-commerce-card div.product .product_title{font-size:34px!important}
    .sgpp-commerce-card ul.products{grid-template-columns:1fr!important}
    .sgpp-commerce-card .coupon{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
    .sgpp-commerce-card .coupon #coupon_code{width:100%!important}
    .sgpp-commerce-card table.shop_table_responsive tr td{padding:12px!important}
    .sgpp-commerce-card .form-row-first,.sgpp-commerce-card .form-row-last{float:none!important;width:100%!important}
    .sgpp-commerce-card ul.order_details{grid-template-columns:1fr!important}
    .sgpp-commerce-card .woocommerce-MyAccount-navigation,.sgpp-commerce-card .woocommerce-MyAccount-content{float:none!important;width:100%!important}
    .sgpp-commerce-card .woocommerce-MyAccount-navigation{margin-bottom:24px!important}
    .sgpp-commerce-bottom-cta .sgpp-wrap{align-items:flex-start;flex-direction:column}
    .sgpp-commerce-bottom-cta h2{font-size:28px}
}

/* Product page 1.2.12 — balanced service + booking layout.
   Desktop: image and service description on the left, booking controls on the right.
   Mobile: natural order image -> description -> booking. */
body.single-product .sgpp-commerce-intro{padding:46px 0 42px}
body.single-product .sgpp-commerce-intro h1{max-width:820px;font-size:clamp(31px,3.55vw,44px)!important;line-height:1.08!important;letter-spacing:-.75px!important}
body.single-product .sgpp-commerce-trust{margin-top:18px}

.sgpp-commerce-card .sgpp-product-description-under-image{
    color:#4f5964;font-size:15.5px;line-height:1.72;
}
.sgpp-commerce-card .sgpp-product-description-under-image>*:first-child{margin-top:0!important}
.sgpp-commerce-card .sgpp-product-description-under-image>*:last-child{margin-bottom:0!important}
.sgpp-commerce-card .sgpp-product-description-under-image p{margin:0 0 13px!important;color:#4f5964!important}

@media(min-width:769px){
    .sgpp-commerce-card .woocommerce div.product{
        position:relative!important;
        display:grid!important;
        grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)!important;
        grid-template-areas:"gallery summary" "description summary"!important;
        column-gap:38px!important;
        row-gap:20px!important;
        align-items:start!important;
    }
    .sgpp-commerce-card .woocommerce div.product:before,
    .sgpp-commerce-card .woocommerce div.product:after{display:none!important}
    .sgpp-commerce-card .woocommerce div.product div.images{
        grid-area:gallery!important;float:none!important;width:100%!important;margin:0!important;
    }
    .sgpp-commerce-card .woocommerce div.product .sgpp-product-description-under-image{
        grid-area:description!important;
        margin:0!important;padding:19px 21px!important;
        border:1px solid #e8eaed!important;border-radius:14px!important;background:#fafafa!important;
    }
    .sgpp-commerce-card .woocommerce div.product div.summary{
        grid-area:summary!important;float:none!important;width:100%!important;margin:0!important;
        padding:24px!important;border:1px solid #e5e8eb!important;border-radius:16px!important;
        background:#fff!important;box-shadow:0 8px 24px rgba(17,24,39,.055)!important;
    }
    .sgpp-commerce-card .woocommerce div.product div.summary .product_title{margin-bottom:10px!important}
    .sgpp-commerce-card .woocommerce div.product div.summary form.cart{margin-bottom:8px!important}
    .sgpp-commerce-card .woocommerce div.product .woocommerce-tabs,
    .sgpp-commerce-card .woocommerce div.product .related,
    .sgpp-commerce-card .woocommerce div.product .upsells{
        grid-column:1/-1!important;width:100%!important;clear:both!important;
    }
}
@media(max-width:768px){
    .sgpp-commerce-card .woocommerce div.product{display:block!important}
    .sgpp-commerce-card .woocommerce div.product div.images,
    .sgpp-commerce-card .woocommerce div.product div.summary{float:none!important;width:100%!important}
    .sgpp-commerce-card .woocommerce div.product .sgpp-product-description-under-image{
        margin:0 0 22px!important;padding:17px 18px!important;
        border:1px solid #e8eaed!important;border-radius:13px!important;background:#fafafa!important;
    }
    .sgpp-commerce-card .woocommerce div.product div.summary{
        padding:20px!important;border:1px solid #e5e8eb!important;border-radius:15px!important;background:#fff!important;
    }
}
@media(max-width:700px){
    body.single-product .sgpp-commerce-intro{padding:36px 0 33px}
    body.single-product .sgpp-commerce-intro h1{font-size:30px!important;line-height:1.1!important}
    .sgpp-commerce-card div.product .product_title{font-size:27px!important;line-height:1.13!important}
}


/* 1.2.13 — PRODUCT COMPOSITION CORRECTIVE
   Exact target: left = image + real service description; right = title + price + choices + purchase + express pay.
   The WooCommerce Description tab is removed server-side to avoid the duplicate full-width block. */
body.single-product .sgpp-commerce-card .woocommerce div.product .product_title{
    font-size:clamp(25px,2.15vw,30px)!important;
    line-height:1.15!important;
    letter-spacing:-.38px!important;
    margin:0 0 10px!important;
}
body.single-product .sgpp-commerce-card .woocommerce div.product p.price,
body.single-product .sgpp-commerce-card .woocommerce div.product span.price{
    font-size:25px!important;
    margin:0 0 20px!important;
}
body.single-product .sgpp-commerce-card .woocommerce div.product .product_meta{
    display:none!important;
}
body.single-product .sgpp-commerce-card .sgpp-product-description-under-image{
    font-size:14.5px!important;
    line-height:1.68!important;
    color:#4f5964!important;
}
body.single-product .sgpp-commerce-card .sgpp-product-description-under-image .sgpp-product-description-kicker{
    margin:0 0 11px!important;
    color:#e31b23!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:1.15px!important;
}
body.single-product .sgpp-commerce-card .sgpp-product-description-under-image h1,
body.single-product .sgpp-commerce-card .sgpp-product-description-under-image h2,
body.single-product .sgpp-commerce-card .sgpp-product-description-under-image h3{
    margin:0 0 10px!important;
    font-size:19px!important;
    line-height:1.25!important;
}
body.single-product .sgpp-commerce-card .sgpp-product-description-under-image p{
    margin:0 0 10px!important;
    color:#4f5964!important;
}

/* A booking form must behave like one compact vertical control panel, never a flex row. */
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary form.cart,
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary form.variations_form{
    display:block!important;
    width:100%!important;
    margin:18px 0 12px!important;
}
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary form.cart > *,
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary form.variations_form > *{
    max-width:100%!important;
}
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary form.cart .single_add_to_cart_button,
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary form.variations_form .single_add_to_cart_button{
    width:100%!important;
    float:none!important;
    clear:both!important;
    margin:14px 0 0!important;
}
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary form.cart .quantity{
    float:none!important;
    margin:0 0 10px!important;
}
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary .variations,
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary .single_variation_wrap,
body.single-product .sgpp-commerce-card .woocommerce div.product div.summary .woocommerce-variation-add-to-cart{
    width:100%!important;
    float:none!important;
    clear:both!important;
}

@media(min-width:769px){
    body.single-product .sgpp-commerce-card .woocommerce div.product{
        grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
        grid-template-areas:"gallery summary" "description summary"!important;
        column-gap:32px!important;
        row-gap:16px!important;
    }
    body.single-product .sgpp-commerce-card .woocommerce div.product .sgpp-product-description-under-image{
        align-self:start!important;
        padding:18px 20px!important;
        background:#fafafa!important;
        border:1px solid #e8eaed!important;
        border-radius:14px!important;
    }
    body.single-product .sgpp-commerce-card .woocommerce div.product div.summary{
        padding:22px!important;
    }
}
@media(max-width:768px){
    body.single-product .sgpp-commerce-card .woocommerce div.product .product_title{
        font-size:25px!important;
    }
    body.single-product .sgpp-commerce-card .woocommerce div.product div.images{
        margin-bottom:14px!important;
    }
}

/* Shop 1.2.14 — direct-to-products archive.
   WooCommerce may render these controls through theme-specific markup; hide them as a visual fallback too. */
body.post-type-archive-product .sgpp-commerce-card .woocommerce-products-header,
body.post-type-archive-product .sgpp-commerce-card .woocommerce-products-header__title,
body.post-type-archive-product .sgpp-commerce-card .page-title,
body.post-type-archive-product .sgpp-commerce-card .woocommerce-result-count,
body.post-type-archive-product .sgpp-commerce-card .woocommerce-ordering,
body.woocommerce-shop .sgpp-commerce-card .woocommerce-products-header,
body.woocommerce-shop .sgpp-commerce-card .woocommerce-products-header__title,
body.woocommerce-shop .sgpp-commerce-card .page-title,
body.woocommerce-shop .sgpp-commerce-card .woocommerce-result-count,
body.woocommerce-shop .sgpp-commerce-card .woocommerce-ordering{display:none!important}
body.post-type-archive-product .sgpp-commerce-card ul.products,
body.woocommerce-shop .sgpp-commerce-card ul.products{margin-top:0!important}


/* 1.2.15 — CHECKOUT BALANCE / COMPACT ORDER PANEL
   Human-UAT corrective: classic Woo checkout had #order_review in a second CSS-grid row,
   producing a large empty right column. JS now wraps heading+review into one grid item. */
body.woocommerce-checkout.sgpp-native-commerce .sgpp-commerce-body{padding-top:30px!important}
body.woocommerce-checkout.sgpp-native-commerce .sgpp-commerce-card{padding:clamp(22px,2.8vw,38px)!important;overflow:visible!important}

/* Coupon: compact, full-width notice but not visually dominant. */
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-form-coupon-toggle{margin:0 0 20px!important}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-form-coupon-toggle .woocommerce-info{margin:0!important;padding:13px 15px!important;font-size:13px!important}
body.woocommerce-checkout .sgpp-commerce-card form.checkout_coupon{max-width:680px!important;margin:0 0 22px!important;padding:16px!important;border:1px solid #e5e8eb!important;border-radius:12px!important;background:#fafbfc!important}

/* Express checkout — keep Apple Pay / Google Pay / Link together and center the separator. */
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout,
body.woocommerce-checkout .sgpp-commerce-card .wc-stripe-banner-checkout,
body.woocommerce-checkout .sgpp-commerce-card .wc-stripe-checkout-banner,
body.woocommerce-checkout .sgpp-commerce-card .wc-stripe-payment-request-wrapper,
body.woocommerce-checkout .sgpp-commerce-card #wc-stripe-payment-request-wrapper,
body.woocommerce-checkout .sgpp-commerce-card .wc-stripe-express-checkout,
body.woocommerce-checkout .sgpp-commerce-card .wc-stripe-express-checkout-wrapper,
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-payments-express-checkout,
body.woocommerce-checkout .sgpp-commerce-card #wcpay-express-checkout-element{
    width:100%!important;max-width:760px!important;margin:0 auto 24px!important;
}
body.woocommerce-checkout .sgpp-commerce-card .wc-stripe-payment-request-button-separator,
body.woocommerce-checkout .sgpp-commerce-card #wc-stripe-payment-request-button-separator,
body.woocommerce-checkout .sgpp-commerce-card .wc-stripe-banner-checkout-separator,
body.woocommerce-checkout .sgpp-commerce-card .express-payment-methods-separator{
    width:100%!important;max-width:760px!important;margin:14px auto 24px!important;text-align:center!important;
}

/* Main checkout composition: client information left; order/payment right. */
body.woocommerce-checkout .sgpp-commerce-card form.checkout{
    display:grid!important;
    grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr)!important;
    grid-template-areas:"customer order"!important;
    column-gap:34px!important;row-gap:0!important;align-items:start!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout #customer_details{
    grid-area:customer!important;display:flex!important;flex-direction:column!important;gap:20px!important;
    min-width:0!important;width:100%!important;margin:0!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout #customer_details .col-1,
body.woocommerce-checkout .sgpp-commerce-card form.checkout #customer_details .col-2{
    display:block!important;float:none!important;clear:both!important;width:100%!important;max-width:none!important;
    margin:0!important;padding:0!important;flex:0 0 auto!important;
}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields,
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-additional-fields{
    padding:0!important;margin:0!important;
}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields>h3,
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-additional-fields>h3{
    margin:0 0 16px!important;font-size:20px!important;line-height:1.15!important;
}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-checkout-additional{
    padding-top:20px!important;border-top:1px solid #eceef1!important;
}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-additional-fields__field-wrapper textarea{
    min-height:92px!important;
}

/* Billing fields: use available horizontal space instead of one narrow vertical strip. */
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields__field-wrapper{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 16px!important;
}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields__field-wrapper .form-row{
    float:none!important;clear:none!important;width:100%!important;margin:0!important;padding:0!important;
}
body.woocommerce-checkout .sgpp-commerce-card #billing_email_field,
body.woocommerce-checkout .sgpp-commerce-card #billing_company_field,
body.woocommerce-checkout .sgpp-commerce-card #billing_country_field,
body.woocommerce-checkout .sgpp-commerce-card #billing_address_1_field,
body.woocommerce-checkout .sgpp-commerce-card #billing_address_2_field,
body.woocommerce-checkout .sgpp-commerce-card #billing_phone_field{
    grid-column:1/-1!important;
}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields__field-wrapper input,
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields__field-wrapper select,
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields__field-wrapper .select2-container{
    width:100%!important;max-width:none!important;
}

/* One actual right-side card: fixes the large white gap from 1.2.14. */
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column{
    grid-area:order!important;min-width:0!important;width:100%!important;margin:0!important;
    position:sticky!important;top:112px!important;
    border:1px solid #e2e6ea!important;border-radius:16px!important;background:#f8fafc!important;
    box-shadow:0 10px 28px rgba(17,24,39,.055)!important;overflow:hidden!important;
}
body.admin-bar.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column{top:144px!important}
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column #order_review_heading{
    display:block!important;width:100%!important;margin:0!important;padding:20px 22px 15px!important;
    background:#f8fafc!important;border:0!important;border-bottom:1px solid #e5e8eb!important;border-radius:0!important;
    font-size:20px!important;line-height:1.15!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column #order_review{
    display:block!important;width:100%!important;margin:0!important;padding:18px 20px 20px!important;
    background:#f8fafc!important;border:0!important;border-radius:0!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review_heading,
body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review{
    grid-column:auto!important;grid-row:auto!important;
}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-checkout-review-order-table{margin:0 0 18px!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-checkout-review-order-table td{padding:12px 13px!important;font-size:13px!important;vertical-align:top!important}
body.woocommerce-checkout .sgpp-commerce-card #payment{margin:0!important;background:#fff!important}
body.woocommerce-checkout .sgpp-commerce-card #payment ul.payment_methods{padding:16px!important}
body.woocommerce-checkout .sgpp-commerce-card #payment div.form-row{padding:16px!important}
body.woocommerce-checkout .sgpp-commerce-card #place_order{width:100%!important;min-height:54px!important;font-size:13px!important;margin-top:4px!important}
body.woocommerce-checkout .sgpp-commerce-card .woocommerce-privacy-policy-text{font-size:12.5px!important;line-height:1.55!important;color:#5d6670!important;margin-bottom:14px!important}

/* Keep validation notices from unexpectedly spanning/offsetting grid items. */
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.woocommerce-NoticeGroup,
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.woocommerce-error,
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.woocommerce-message{
    grid-column:1/-1!important;
}

@media(max-width:1100px){
    body.woocommerce-checkout .sgpp-commerce-card form.checkout{
        grid-template-columns:minmax(0,1fr) minmax(340px,.86fr)!important;column-gap:24px!important;
    }
}
@media(max-width:900px){
    body.woocommerce-checkout .sgpp-commerce-card form.checkout{
        grid-template-columns:1fr!important;grid-template-areas:"customer" "order"!important;row-gap:24px!important;
    }
    body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column{
        position:static!important;top:auto!important;
    }
}
@media(max-width:640px){
    body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr!important;gap:13px!important}
    body.woocommerce-checkout .sgpp-commerce-card .woocommerce-billing-fields__field-wrapper .form-row{grid-column:1!important}
    body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column #order_review_heading{padding:18px 17px 13px!important}
    body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column #order_review{padding:15px!important}
}


/* 1.2.16 — CHECKOUT EXPRESS PLACEMENT
   Express payment belongs above customer details, after the coupon area. */
body.woocommerce-checkout .sgpp-commerce-card>.sgpp-express-checkout-zone{
    width:100%!important;max-width:820px!important;margin:0 auto 28px!important;padding:18px 20px 0!important;
    border:1px solid #e7e9ec!important;border-radius:16px!important;background:#fafbfc!important;
}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout-title{
    margin:0 0 14px!important;text-align:center!important;font-size:14px!important;line-height:1.2!important;
    font-weight:900!important;letter-spacing:.07em!important;color:#111827!important;
}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout-content{
    width:100%!important;max-width:760px!important;margin:0 auto!important;
}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout-zone .sgpp-express-checkout{
    width:100%!important;max-width:none!important;margin:0 0 10px!important;
}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout-zone .sgpp-express-checkout:last-child{margin-bottom:0!important}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout-separator{
    display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;max-width:760px!important;
    margin:16px auto 0!important;padding:0 0 18px!important;color:#6b7280!important;font-size:11px!important;font-weight:800!important;
}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout-separator:before,
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-checkout-separator:after{content:""!important;height:1px!important;background:#dfe3e8!important;flex:1 1 auto!important}
body.woocommerce-checkout .sgpp-commerce-card .sgpp-express-original-separator{display:none!important}
@media(max-width:640px){
    body.woocommerce-checkout .sgpp-commerce-card>.sgpp-express-checkout-zone{padding:16px 14px 0!important;margin-bottom:20px!important}
}


/* 1.2.17 — PAYMENT PLUGINS FOR STRIPE 4.x EXPRESS PLACEMENT
   The express zone is now a direct child of form.checkout so the Stripe containers stay
   inside the canonical checkout form while spanning both desktop columns. */
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone{
    grid-column:1/-1!important;grid-row:1!important;width:100%!important;max-width:820px!important;
    margin:0 auto 26px!important;padding:18px 20px 0!important;border:1px solid #e7e9ec!important;
    border-radius:16px!important;background:#fafbfc!important;align-self:start!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone + #customer_details,
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone ~ #customer_details{grid-row:2!important}
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone ~ .sgpp-checkout-order-column{grid-row:2!important}
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone .sgpp-express-checkout-content{
    width:100%!important;max-width:760px!important;margin:0 auto!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone .sgpp-express-checkout,
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone [id^="wc-stripe_applepay-checkout"],
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone [id^="wc-stripe_googlepay-checkout"],
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone [id^="wc-stripe_link-checkout"]{
    display:block!important;width:100%!important;max-width:none!important;margin:0 0 10px!important;float:none!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone .sgpp-express-checkout:last-child{margin-bottom:0!important}
@media(max-width:900px){
    body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone{grid-row:auto!important;margin-bottom:4px!important}
    body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone ~ #customer_details,
    body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone ~ .sgpp-checkout-order-column{grid-row:auto!important}
}
@media(max-width:640px){
    body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone{padding:16px 14px 0!important;margin-bottom:4px!important}
}

/* ============================================================
   1.2.20 — TRANSACTION-SAFE CHECKOUT CORRECTIVE
   ------------------------------------------------------------
   Reliability rule: NEVER re-parent WooCommerce checkout nodes.
   The native DOM order remains untouched. Layout is CSS only.
   This block intentionally overrides 1.2.15-1.2.17 wrapper/express rules.
   ============================================================ */
body.woocommerce-checkout .sgpp-commerce-card form.checkout{
    display:grid!important;
    grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr)!important;
    grid-template-areas:
        "customer heading"
        "customer review"!important;
    grid-template-rows:auto auto!important;
    column-gap:34px!important;
    row-gap:0!important;
    align-items:start!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout #customer_details{
    grid-area:customer!important;
    grid-row:1 / span 2!important;
    min-width:0!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review_heading{
    grid-area:heading!important;
    grid-column:2!important;
    grid-row:1!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:20px 22px 15px!important;
    background:#f8fafc!important;
    border:1px solid #e2e6ea!important;
    border-bottom:1px solid #e5e8eb!important;
    border-radius:16px 16px 0 0!important;
    font-size:20px!important;
    line-height:1.15!important;
    box-shadow:0 10px 28px rgba(17,24,39,.035)!important;
}
body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review{
    grid-area:review!important;
    grid-column:2!important;
    grid-row:2!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:18px 20px 20px!important;
    background:#f8fafc!important;
    border:1px solid #e2e6ea!important;
    border-top:0!important;
    border-radius:0 0 16px 16px!important;
    box-shadow:0 10px 28px rgba(17,24,39,.055)!important;
}
/* No synthetic wrapper is required or expected in 1.2.20. */
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-checkout-order-column{
    display:contents!important;
    position:static!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
/* If a gateway natively mounts an express checkout element as a direct child,
   let it span the checkout width WITHOUT moving it to another parent. */
body.woocommerce-checkout .sgpp-commerce-card form.checkout>
:is(.wc-stripe-banner-checkout,.wc-stripe-checkout-banner,.wc-stripe-payment-request-wrapper,.wc-stripe-express-checkout,.wc-stripe-express-checkout-wrapper,.woocommerce-payments-express-checkout),
body.woocommerce-checkout .sgpp-commerce-card form.checkout>#wc-stripe-payment-request-wrapper,
body.woocommerce-checkout .sgpp-commerce-card form.checkout>#wcpay-express-checkout-element,
body.woocommerce-checkout .sgpp-commerce-card form.checkout>[id*="wc-stripe_applepay"][id*="checkout"],
body.woocommerce-checkout .sgpp-commerce-card form.checkout>[id*="wc-stripe_googlepay"][id*="checkout"],
body.woocommerce-checkout .sgpp-commerce-card form.checkout>[id*="wc-stripe_link"][id*="checkout"]{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:820px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}
/* Legacy synthetic express zone is no longer created. Keep it harmless if a
   back/forward cache restores stale markup during an in-progress navigation. */
body.woocommerce-checkout .sgpp-commerce-card form.checkout>.sgpp-express-checkout-zone{
    grid-column:1/-1!important;
    position:static!important;
}
@media(max-width:1100px){
    body.woocommerce-checkout .sgpp-commerce-card form.checkout{
        grid-template-columns:minmax(0,1fr) minmax(340px,.86fr)!important;
        column-gap:24px!important;
    }
}
@media(max-width:900px){
    body.woocommerce-checkout .sgpp-commerce-card form.checkout{
        grid-template-columns:1fr!important;
        grid-template-areas:"customer" "heading" "review"!important;
        grid-template-rows:auto auto auto!important;
        row-gap:0!important;
    }
    body.woocommerce-checkout .sgpp-commerce-card form.checkout #customer_details{
        grid-column:1!important;grid-row:1!important;margin-bottom:24px!important;
    }
    body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review_heading{
        grid-column:1!important;grid-row:2!important;
    }
    body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review{
        grid-column:1!important;grid-row:3!important;
    }
}
@media(max-width:640px){
    body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review_heading{padding:18px 17px 13px!important}
    body.woocommerce-checkout .sgpp-commerce-card form.checkout #order_review{padding:15px!important}
}
