/* Basket, checkout, account and legal pages (same look as the Elementor pages) */
.alf-co-hero{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px 20px 32px;background:#F5F5F5;text-align:center}
.alf-co-title{margin:0;font-size:44px;line-height:1.15;font-weight:600;color:#000}
.alf-steps{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.alf-steps li{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:500;color:#858585}
.alf-steps li+li::before{content:'';width:32px;height:1px;background:#CFCFCF;margin-right:2px}
.alf-steps li span{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;background:#fff;border:1px solid #CFCFCF;color:#858585}
.alf-steps li.is-active,.alf-steps li.is-done{color:#000}
.alf-steps li.is-active span{background:#C22636;border-color:#C22636;color:#fff}
.alf-steps li.is-done span{background:#000;border-color:#000;color:#fff}
.alf-co-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;list-style:none;margin:0;padding:0}
.alf-co-pills li{display:inline-flex;align-items:center;gap:7px;margin:0;padding:7px 14px;background:#fff;border:1px solid #E6E6E6;border-radius:999px;font-size:13px;font-weight:500;color:#000}
.alf-co-pills svg{color:#C22636;flex:none}
.alf-co-main{max-width:1200px;margin:0 auto;padding:36px 20px 64px;box-sizing:border-box}
.alf-co-main .woocommerce,.alf-acc .woocommerce{max-width:none!important;margin:0!important}

/* basket */
.alf-co-main--cart>.woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:28px;align-items:start}
.alf-co-main--cart>.woocommerce>*{grid-column:1/-1;min-width:0}
.alf-co-main--cart>.woocommerce>.woocommerce-cart-form{grid-column:1;background:#fff;border:1px solid #ECECEC;border-radius:14px;padding:24px;margin:0}
.alf-co-main--cart>.woocommerce>.cart-collaterals{grid-column:2;width:auto;margin:0}
.alf-co-main--cart .cart-collaterals .cart_totals{float:none;width:auto;background:#fff;border:1px solid #ECECEC;border-radius:14px;padding:24px}
.alf-co-main--cart .cart-collaterals::before,.alf-co-main--cart .cart-collaterals::after{display:none}
.alf-co-main--cart table.shop_table{border:0;border-radius:0;margin:0;width:100%;border-collapse:collapse}
.alf-co-main--cart table.cart td.product-remove{width:40px;padding-right:0!important}
.alf-co-main--cart table.cart td.actions{padding:20px 0 0!important;border-top:1px solid #F0F0F0!important}
.alf-co-main--cart table.cart td.actions .coupon{display:flex;gap:10px;flex-wrap:wrap;align-items:center;float:none;margin:0}
.alf-co-main--cart table.cart td.actions .coupon label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.alf-co-main--cart table.cart td.actions .coupon .input-text{flex:1 1 200px;width:auto;max-width:none;height:46px;border:1px solid #E3E3E3;border-radius:999px;padding:0 18px;background:#fff;font-size:15px;font-family:inherit;box-sizing:border-box}
.alf-co-main--cart table.cart td.actions .coupon .button{height:46px;padding:0 24px;border-radius:999px;border:1px solid #000;background:#fff;color:#000;font-weight:600;font-size:15px;font-family:inherit;cursor:pointer;transition:background .2s,color .2s}
.alf-co-main--cart table.cart td.actions .coupon .button:hover{background:#000;color:#fff}
.alf-co-main--cart table.cart td.actions>[name=update_cart]{display:none}
.alf-co-main--cart .cart_totals h2{font-size:20px;font-weight:600;margin:0 0 12px;color:#000}
.alf-co-main--cart .cart_totals table{width:100%}
.alf-co-main--cart .cart_totals td{text-align:right}
.alf-co-main--cart .cart_totals .woocommerce-shipping-methods li{text-align:right;margin:0 0 4px}
.alf-co-main--cart .cart_totals .shipping-calculator-button{color:#C22636;font-size:14px;text-decoration:none}
.alf-co-main--cart .wc-proceed-to-checkout .checkout-button{margin:0;font-family:inherit;text-decoration:none}
/* PayPal / Google Pay buttons under "Proceed to Checkout" keep their own look */
.alf-co-main--cart .wc-proceed-to-checkout>*:not(.checkout-button){margin-top:10px}
.alf-co-main .cart-empty.woocommerce-info{background:none!important;border:0!important;padding:24px 0 0!important;text-align:center;font-size:24px;color:#333}
.alf-co-main .cart-empty.woocommerce-info::before{display:none}
.alf-co-main .return-to-shop{text-align:center;margin:24px 0 48px}
.alf-co-main .return-to-shop .button,.alf-acc .woocommerce-button,.alf-acc .woocommerce-Button,.alf-acc button.button,.alf-acc a.button{display:inline-block;background:#C22636;color:#fff;border:0;border-radius:999px;padding:14px 32px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s}
.alf-co-main .return-to-shop .button:hover,.alf-acc .woocommerce-button:hover,.alf-acc .woocommerce-Button:hover,.alf-acc button.button:hover,.alf-acc a.button:hover{background:#000;color:#fff}
.alf-co-also{margin-top:64px}
.alf-co-also__title{margin:0 0 28px;text-align:center;font-size:22px;font-weight:600;color:#000}

/* checkout */
.alf-co-main--checkout .woocommerce-form-coupon-toggle .woocommerce-info{margin:0 0 16px!important}
.alf-co-main--checkout form.checkout_coupon{border:1px solid #ECECEC;border-radius:14px;padding:20px;margin:0 0 20px}
.alf-co-main--checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) 440px;grid-template-rows:auto auto 1fr;column-gap:32px;align-items:start}
.alf-co-main--checkout .woocommerce-form-coupon-toggle .woocommerce-info{background:#fff!important;border:1px solid #ECECEC!important;border-radius:14px;padding:18px 24px!important;color:#858585!important;font-size:15px}
.alf-co-main--checkout .woocommerce-form-coupon-toggle .woocommerce-info::before{display:none}
.alf-co-main--checkout .woocommerce-form-coupon-toggle a{color:#C22636;font-weight:600;text-decoration:none}
.alf-co-main--checkout form.checkout_coupon .form-row{display:inline-block;width:auto;margin:0 8px 0 0!important;vertical-align:middle}
.alf-co-main--checkout form.checkout_coupon .input-text{height:46px;border:1px solid #E3E3E3;border-radius:999px;padding:0 18px;min-width:240px}
.alf-co-main--checkout form.checkout_coupon .button{height:46px;padding:0 24px;border-radius:999px;border:1px solid #000;background:#fff;color:#000;font-weight:600;font-family:inherit;cursor:pointer}
.alf-co-main--checkout form.checkout_coupon .button:hover{background:#000;color:#fff}
.alf-co-main--checkout form.checkout>*{grid-column:1/-1;min-width:0}
.alf-co-main--checkout form.checkout>#customer_details{grid-column:1;grid-row:2/span 2;width:auto;float:none}
.alf-co-main--checkout form.checkout>#order_review_heading{grid-column:2;grid-row:2;margin:0!important;padding:24px 24px 4px;background:#FAFAFA;border:1px solid #ECECEC;border-bottom:0;border-radius:14px 14px 0 0}
.alf-co-main--checkout form.checkout>#order_review{grid-column:2;grid-row:3;padding:0 24px 24px;background:#FAFAFA;border:1px solid #ECECEC;border-top:0;border-radius:0 0 14px 14px}
.alf-co-main--checkout #customer_details .col-1,.alf-co-main--checkout #customer_details .col-2{float:none;width:auto}
.alf-co-main--checkout #customer_details::before,.alf-co-main--checkout #customer_details::after{display:none}
.alf-co-main--checkout .woocommerce-billing-fields__field-wrapper,.alf-co-main--checkout .woocommerce-shipping-fields__field-wrapper{display:flex;flex-wrap:wrap;column-gap:4%}
.alf-co-main--checkout .form-row{width:100%;float:none;padding:0;box-sizing:border-box}
.alf-co-main--checkout .form-row-first,.alf-co-main--checkout .form-row-last{width:48%}
.alf-co-main--checkout .form-row input.input-text,.alf-co-main--checkout .form-row textarea,.alf-co-main--checkout .form-row select{width:100%;font-family:inherit;box-sizing:border-box}
.alf-co-main--checkout #ship-to-different-address{font-size:16px!important;margin:0!important}
.alf-co-main--checkout #ship-to-different-address label{display:flex;align-items:center;gap:8px;cursor:pointer}
.alf-co-main--checkout #order_review .product-name{font-size:14px}
.alf-co-main--checkout #order_review td:last-child,.alf-co-main--checkout #order_review th:last-child{text-align:right}
.alf-co-main--checkout #order_review .woocommerce-shipping-methods li{text-align:right}
.alf-co-main--checkout #payment{margin-top:16px}
.alf-co-main--checkout #payment ul.payment_methods{padding:0 0 12px!important;border-bottom:1px solid #ECECEC!important;margin:0}
.alf-co-main--checkout #payment ul.payment_methods li{list-style:none;margin:0 0 6px}
.alf-co-main--checkout #payment div.payment_box{background:#fff!important;border:1px solid #ECECEC;border-radius:10px;font-size:14px}
.alf-co-main--checkout #payment div.payment_box::before{display:none}
.alf-co-main--checkout #payment .place-order{padding:16px 0 0!important;margin:0}
.alf-co-main--checkout #place_order{width:100%;float:none;border-radius:999px;padding:17px 24px;font-family:inherit;font-size:16px;font-weight:600;background:#C22636;color:#fff;border:0;cursor:pointer;transition:background .2s}
.alf-co-main--checkout #place_order:hover{background:#000}
.alf-co-main--checkout .woocommerce-privacy-policy-text{font-size:13px;color:#54595F}
.alf-co-main--checkout .woocommerce-privacy-policy-text a,.alf-co-main--checkout .woocommerce-terms-and-conditions-link{color:#C22636}
/* order received */
.alf-co-main.is-done .woocommerce-order{max-width:820px;margin:0 auto}
.alf-co-main.is-done .woocommerce-thankyou-order-received{font-size:20px;font-weight:600;text-align:center;color:#000;margin:0 0 24px}
.alf-co-main.is-done ul.order_details{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0 0 32px;padding:0}
.alf-co-main.is-done ul.order_details::before,.alf-co-main.is-done ul.order_details::after{display:none}
.alf-co-main.is-done ul.order_details li{flex:1 1 150px;float:none;margin:0;padding:14px 16px;border:1px solid #ECECEC;border-radius:12px;font-size:12px;text-transform:uppercase;color:#858585}
.alf-co-main.is-done ul.order_details li strong{display:block;margin-top:4px;font-size:15px;text-transform:none;color:#000}
.alf-co-main.is-done h2{font-size:20px;font-weight:600;color:#000}
.alf-co-main.is-done table.shop_table{border:1px solid #ECECEC;border-radius:14px}

/* account */
.alf-acc{max-width:1140px;margin:0 auto;padding:40px 20px 80px;box-sizing:border-box}
.alf-acc__title{margin:0 0 32px;text-align:center;font-size:64px;font-weight:400;line-height:1.3;color:#000}
.alf-acc h2{font-size:18px;font-weight:600;color:#000;margin:0 0 16px}
.alf-acc form.login,.alf-acc form.register,.alf-acc form.lost_reset_password{border:1px solid #ECECEC;border-radius:14px;padding:28px;margin:0 0 24px}
.alf-acc .form-row{padding:0;margin:0 0 16px}
.alf-acc .form-row label{display:block;font-size:14px;font-weight:500;color:#000;margin-bottom:6px}
.alf-acc input.input-text,.alf-acc select,.alf-acc textarea{width:100%;min-height:48px;border:1px solid #E3E3E3;border-radius:10px;background:#fff;padding:10px 14px;font-family:inherit;font-size:15px;box-sizing:border-box}
.alf-acc input.input-text:focus{border-color:#C22636;box-shadow:0 0 0 4px rgba(194,38,54,.12);outline:none}
.alf-acc .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:6px;margin-left:12px;font-size:14px}
.alf-acc .lost_password a,.alf-acc .woocommerce-MyAccount-content a:not(.button){color:#C22636}
.alf-acc__body.is-in>.woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:start}
.alf-acc__body.is-in>.woocommerce>*{grid-column:1/-1}
.alf-acc__body.is-in .woocommerce-MyAccount-navigation{grid-column:1;float:none;width:auto}
.alf-acc__body.is-in .woocommerce-MyAccount-content{grid-column:2;float:none;width:auto}
.alf-acc .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.alf-acc .woocommerce-MyAccount-navigation li{margin:0}
.alf-acc .woocommerce-MyAccount-navigation a{display:block;padding:11px 16px;border-radius:10px;color:#000;font-weight:500;font-size:15px;text-decoration:none;transition:background .2s,color .2s}
.alf-acc .woocommerce-MyAccount-navigation a:hover{background:#F5F5F5}
.alf-acc .woocommerce-MyAccount-navigation li.is-active a{background:#C22636;color:#fff}
.alf-acc table.shop_table{border:1px solid #ECECEC;border-radius:14px;width:100%}

/* legal */
.alf-legal{padding-top:40px;padding-bottom:80px}
.alf-legal__title{margin:0 0 20px;font-size:64px;font-weight:400;line-height:1.3;color:#333}
.alf-legal__body{font-size:16px;line-height:1.5;color:#333}
.alf-legal__body h2{margin:8px 0 16px;font-size:32px;font-weight:500;line-height:1.2;color:#333}
.alf-legal__body h3{margin:8px 0 12px;font-size:24px;font-weight:500;color:#333}
.alf-legal__body p{margin:0}
.alf-legal__body ul,.alf-legal__body ol{margin:0 0 0 1.4em;padding:0}
.alf-legal__body a{color:#C22636}
.alf-legal__block+.alf-legal__block,.alf-legal__body>h2+.alf-legal__block{margin-top:20px}

@media (max-width:1024px){
.alf-co-main--cart>.woocommerce,.alf-co-main--checkout form.checkout{grid-template-columns:minmax(0,1fr)}
.alf-co-main--cart>.woocommerce>.cart-collaterals,.alf-co-main--checkout form.checkout>#order_review_heading,.alf-co-main--checkout form.checkout>#order_review{grid-column:1}
.alf-co-main--checkout form.checkout>#customer_details{grid-row:auto;margin-bottom:24px}
.alf-co-main--checkout form.checkout>#order_review_heading{grid-row:auto}
.alf-co-main--checkout form.checkout>#order_review{grid-row:auto}
.alf-acc__body.is-in>.woocommerce{grid-template-columns:minmax(0,1fr);gap:24px}
.alf-acc__body.is-in .woocommerce-MyAccount-navigation,.alf-acc__body.is-in .woocommerce-MyAccount-content{grid-column:1}
.alf-acc .woocommerce-MyAccount-navigation ul{flex-direction:row;flex-wrap:wrap}
}
@media (max-width:767px){
.alf-co-title{font-size:32px}
.alf-co-hero{padding:32px 16px 24px}
.alf-steps li{font-size:13px}
.alf-steps li+li::before{width:16px}
.alf-co-main{padding:24px 16px 40px}
.alf-co-main--cart>.woocommerce>.woocommerce-cart-form,.alf-co-main--cart .cart-collaterals .cart_totals{padding:18px}
.alf-co-main--checkout .form-row-first,.alf-co-main--checkout .form-row-last{width:100%}
.alf-acc__title,.alf-legal__title{font-size:40px}
.alf-steps{gap:6px}
.alf-steps li{font-size:12px;gap:6px}
.alf-steps li+li::before{width:12px}
.alf-steps li span{width:22px;height:22px;font-size:12px}
.alf-co-main--cart table.cart thead{display:none}
.alf-co-main--cart table.cart tr.cart_item{display:grid;grid-template-columns:72px minmax(0,1fr) 30px;column-gap:12px;row-gap:6px;padding:16px 0;border-top:1px solid #F0F0F0}
.alf-co-main--cart table.cart tbody tr:first-child.cart_item{border-top:0;padding-top:0}
.alf-co-main--cart table.cart tr.cart_item td{display:block!important;padding:0!important;border:0!important;text-align:left!important;background:none!important}
.alf-co-main--cart table.cart tr.cart_item td::before{display:none!important}
.alf-co-main--cart table.cart td.product-thumbnail{grid-column:1;grid-row:1/span 3;width:72px}
.alf-co-main--cart table.cart td.product-thumbnail img{width:72px!important;height:72px!important}
.alf-co-main--cart table.cart td.product-name{grid-column:2;grid-row:1;font-size:14px}
.alf-co-main--cart table.cart td.product-price{grid-column:2;grid-row:2;font-size:14px;color:#54595F}
.alf-co-main--cart table.cart td.product-quantity{grid-column:2;grid-row:3}
.alf-co-main--cart table.cart tr.cart_item td.product-subtotal{display:none!important}
.alf-co-main--cart table.cart td.actions .coupon .input-text,.alf-co-main--cart table.cart td.actions .coupon .button{flex:1 1 100%;width:100%}
.alf-co-main--cart table.cart td.product-remove{grid-column:3;grid-row:1;width:auto}
.alf-co-main--cart table.cart tr:not(.cart_item),.alf-co-main--cart table.cart td.actions{display:block}
.alf-co-main--cart table.cart td.actions::before{display:none!important}
.alf-legal__body h2{font-size:26px}
}
