/* Cart, checkout and account experience. */
.woocommerce-cart .woocommerce-area,
.woocommerce-checkout .woocommerce-area,
.woocommerce-account .woocommerce-area { padding-top: 32px; }
.enco-checkout-steps { margin: 0 0 28px; }
.enco-checkout-steps ol { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 900px; margin: 0 auto; padding: 0; list-style: none; }
.enco-checkout-steps li { position: relative; display: grid; justify-items: center; gap: 7px; color: #95887c; font-size: 10px; text-align: center; }
.enco-checkout-steps li:not(:last-child)::after { content: ""; position: absolute; top: 17px; left: calc(50% + 25px); right: calc(-50% + 25px); height: 2px; background: #dfd2c0; }
.enco-checkout-steps li span { position: relative; z-index: 2; display: grid; width: 35px; height: 35px; place-items: center; border: 2px solid #d5c6b3; border-radius: 50%; background: var(--c-cream); font-weight: 800; }
.enco-checkout-steps li.is-active,
.enco-checkout-steps li.is-complete { color: var(--c-ink); }
.enco-checkout-steps li.is-active span,
.enco-checkout-steps li.is-complete span { color: #fff; border-color: var(--c-gold); background: var(--c-gold); }
.enco-checkout-steps li.is-complete:not(:last-child)::after { background: var(--c-gold); }

.woocommerce table.shop_table { border-collapse: separate; border-spacing: 0; }
.woocommerce table.shop_table th { padding: 15px 17px; color: #fff; border: 0; background: var(--c-charcoal); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.woocommerce table.shop_table td { padding: 17px; border-top: 1px solid var(--c-line); }
.woocommerce-cart table.cart img { width: 92px; border: 1px solid var(--c-line); border-radius: 7px; }
.woocommerce-cart table.cart .product-name > a { display: inline-block; margin-bottom: 5px; font-family: var(--font-editorial); font-size: 23px; font-weight: 600; line-height: 1.05; }
.woocommerce-cart .variation { display: grid; grid-template-columns: auto 1fr; gap: 2px 8px; margin-top: 7px !important; color: var(--c-muted); font-size: 10px; }
.woocommerce-cart .variation dt,
.woocommerce-cart .variation dd { margin: 0 !important; }
.woocommerce-cart .actions .coupon { display: flex; gap: 8px; }
.woocommerce-cart .actions .coupon .input-text { width: 190px !important; min-height: 45px; padding: 8px 11px; }
.woocommerce-cart .cart-collaterals { margin-top: 30px; }
.woocommerce-cart .cart-collaterals .cart_totals { width: min(100%, 520px); padding: 30px; box-shadow: 0 14px 36px rgba(35,21,12,.07); }
.woocommerce-cart .cart-collaterals .cart_totals h2 { font-size: 37px; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { min-height: 58px; margin-bottom: 0; font-size: 12px; }
.enco-cart-continue { margin-top: 16px; }
.enco-empty-cart-help { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 22px; margin: 25px 0; padding: 25px; border: 1px solid var(--c-line); background: var(--c-paper); }

.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, .72fr); align-items: start; gap: 34px; }
.woocommerce-checkout #customer_details { display: grid; gap: 24px; }
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 { float: none; width: auto; padding: 27px; border: 1px solid var(--c-line); border-radius: 14px; background: var(--c-paper); }
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading { font-size: 36px; }
.woocommerce-checkout #order_review_heading { grid-column: 2; margin: 0 0 -18px; }
.woocommerce-checkout #order_review { position: sticky; top: 20px; grid-column: 2; padding: 28px; box-shadow: 0 15px 40px rgba(35,21,12,.08); }
.woocommerce form .form-row label { margin-bottom: 5px; color: #544a42; font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select { min-height: 46px; padding: 9px 12px; }
.woocommerce-checkout #payment { border: 1px solid var(--c-line); background: #f2e9dc; }
.woocommerce-checkout #payment ul.payment_methods { border-bottom-color: var(--c-line); }
.woocommerce-checkout #payment div.payment_box { background: #fffaf2; font-size: 12px; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fffaf2; }
.woocommerce-checkout #place_order { width: 100%; min-height: 60px; margin-top: 10px; font-size: 12px; }
.enco-checkout-reassurance { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-bottom: 15px; }
.enco-checkout-reassurance div { padding: 10px; border: 1px solid var(--c-line); background: #fffaf2; font-size: 10px; text-align: center; }

.woocommerce-order-received .woocommerce-order { padding: 26px; border: 1px solid var(--c-line); border-radius: 14px; background: var(--c-paper); }
.enco-order-next > div { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.enco-order-next article { padding: 20px; border: 1px solid var(--c-line); background: #fffaf2; }
.enco-order-next article > span { color: var(--c-gold-dark); font-family: var(--font-editorial); font-size: 32px; }

.woocommerce-account .woocommerce { display: grid; grid-template-columns: 250px minmax(0, 1fr); align-items: start; gap: 30px; }
.woocommerce-account .woocommerce-MyAccount-navigation { float: none; width: auto; }
.woocommerce-account .woocommerce-MyAccount-content { float: none; width: auto; min-width: 0; padding: 28px; border: 1px solid var(--c-line); border-radius: 14px; background: var(--c-paper); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { border-radius: 13px; box-shadow: 0 12px 30px rgba(35,21,12,.06); }
.woocommerce-account .woocommerce-MyAccount-navigation li a { padding: 14px 16px; font-size: 11px; font-weight: 750; }
.enco-account-intro { margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--c-line); }
.enco-account-intro__eyebrow { color: var(--c-gold-dark); font-size: 10px; font-weight: 800; text-transform: uppercase; }
