/* Classic cart / checkout / account restyled to the Fus7a look (loaded only on those pages). */
.woocommerce { --r: 16px; font-family: var(--wp--preset--font-family--rubik); }
.woocommerce .fs-hidden-row { display: none !important; }

/* notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner { border: 0 !important; border-radius: var(--r); background: var(--wp--preset--color--tint) !important; color: var(--wp--preset--color--ink) !important; padding: 14px 16px !important; font-size: 14px; list-style: none; }
.woocommerce-error { background: #F8E6E3 !important; color: #9A3B2E !important; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none; }

/* forms */
.woocommerce form .form-row { padding: 0; margin: 0 0 14px; }
.woocommerce form .form-row label { font-size: 13px; font-weight: 600; margin-bottom: 6px; line-height: 1.4; }
.woocommerce form .form-row .required { color: #9A3B2E; text-decoration: none; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .woocommerce .select2-container .select2-selection--single {
	min-height: 50px; padding: 0 14px; border: 1px solid #D5DBD6; border-radius: 14px; background: #fff; font: 400 16px var(--wp--preset--font-family--rubik); color: var(--wp--preset--color--ink); box-sizing: border-box; width: 100%;
}
.woocommerce form .form-row textarea { padding: 12px 14px; min-height: 90px; }
.woocommerce .select2-container .select2-selection--single .select2-selection__rendered { line-height: 48px; padding: 0; }
.woocommerce .select2-container .select2-selection--single .select2-selection__arrow { height: 48px; }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus { outline: none; border-color: var(--wp--preset--color--deep); box-shadow: 0 0 0 3px rgba(62, 107, 86, .18); }
.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: #9A3B2E; }
.woocommerce-checkout #billing_phone { direction: ltr; text-align: right; }

/* checkout layout */
.woocommerce-checkout .col2-set, .woocommerce-checkout .col2-set .col-1, .woocommerce-checkout .col2-set .col-2 { width: 100% !important; float: none !important; }
.woocommerce-checkout h3 { font-size: 18px; margin: 0 0 14px; }
.woocommerce-checkout #order_review_heading { margin-top: 8px; }
@media (min-width: 960px) {
	form.woocommerce-checkout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); gap: 0 40px; align-items: start; }
	form.woocommerce-checkout > .col2-set { grid-column: 1; grid-row: 1 / span 3; }
	form.woocommerce-checkout > #order_review_heading, form.woocommerce-checkout > #order_review, form.woocommerce-checkout > .fs-shipbar { grid-column: 2; }
	form.woocommerce-checkout > #order_review { position: sticky; top: 100px; }
}
.woocommerce-checkout-review-order-table { border: 0 !important; border-radius: var(--r); background: var(--wp--preset--color--tint); overflow: hidden; font-size: 14px; }
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { border: 0 !important; padding: 10px 14px !important; }
.woocommerce-checkout-review-order-table .order-total th, .woocommerce-checkout-review-order-table .order-total td { font-size: 18px; font-weight: 800; border-top: 1px solid #CFDDD4 !important; }
.woocommerce-checkout-review-order-table .product-name { font-weight: 500; }
.woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; }

/* payment */
.woocommerce-checkout #payment { background: transparent; border-radius: 0; }
.woocommerce-checkout #payment ul.payment_methods { border: 0; padding: 0; margin: 16px 0; }
.woocommerce-checkout #payment ul.payment_methods li { list-style: none; border: 2px solid var(--wp--preset--color--deep); background: #F3F8F5; border-radius: var(--r); padding: 14px; }
.woocommerce-checkout #payment ul.payment_methods li label { font-weight: 700; }
.woocommerce-checkout #payment div.payment_box { background: transparent; padding: 4px 0 0; margin: 0; font-size: 13px; color: var(--wp--preset--color--muted); }
.woocommerce-checkout #payment div.payment_box::before { display: none; }
.woocommerce-checkout #payment div.form-row { padding: 0; }
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order, .woocommerce .checkout-button {
	width: 100%; min-height: 58px; border: 0; border-radius: 999px; background: var(--wp--preset--color--mustard); color: var(--wp--preset--color--ink); font: 700 18px var(--wp--preset--font-family--rubik); box-shadow: 0 8px 20px rgba(31, 42, 38, .12); cursor: pointer; float: none;
}
.woocommerce #payment #place_order:hover, .woocommerce .checkout-button:hover { background: #D39D22; }
.woocommerce-privacy-policy-text { font-size: 12px; color: var(--wp--preset--color--muted); }

/* cart page */
.woocommerce table.shop_table { border: 1px solid var(--wp--preset--color--line); border-radius: var(--r); background: #fff; border-collapse: separate; }
.woocommerce table.shop_table th { font-size: 13px; color: var(--wp--preset--color--muted); }
.woocommerce table.cart img { width: 64px; border-radius: 12px; }
.woocommerce a.remove { color: #9A3B2E !important; }
.woocommerce a.remove:hover { background: #F8E6E3; }
.woocommerce .cart-collaterals .cart_totals { width: 100%; float: none; }
@media (min-width: 960px) { .woocommerce .cart-collaterals .cart_totals { width: 420px; float: left; } }
.woocommerce button.button, .woocommerce a.button { border-radius: 999px; background: var(--wp--preset--color--deep); color: #fff; font-family: var(--wp--preset--font-family--rubik); font-weight: 600; padding: 12px 20px; }
.woocommerce button.button:hover, .woocommerce a.button:hover { background: var(--wp--preset--color--deeper); color: #fff; }
.woocommerce .quantity .qty { min-height: 44px; border: 1px solid #D5DBD6; border-radius: 12px; width: 64px; }
