/* ==========================================================================
   Purchase flow: cart → checkout → thank you
   ========================================================================== */
body.woocommerce-cart .site-main, body.woocommerce-checkout .site-main { max-width: 1240px; }
body.woocommerce-cart .page-header, body.woocommerce-checkout .page-header, body.woocommerce-cart h1.entry-title, body.woocommerce-checkout h1.entry-title { display: none; }
.ez-hidden { display: none !important; }

/* Steps */
.ez-steps { margin: 28px 0 22px; }
.ez-steps ol { list-style: none; margin: 0 auto; padding: 0; display: flex; justify-content: center; align-items: center; gap: 0; max-width: 640px; }
.ez-steps li { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 6px; position: relative; color: var(--text-dim); font-weight: 600; font-size: .9rem; }
.ez-steps li + li::before { content: ""; position: absolute; top: 17px; right: calc(-50% + 20px); left: calc(50% + 20px); height: 2px; background: rgba(83, 29, 48, .15); }
.ez-steps li.is-done + li::before, .ez-steps li.is-on::before { background: var(--ez-wine); }
.ez-steps__n { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; background: #fff; border: 2px solid rgba(83, 29, 48, .2); color: var(--text-dim); font-weight: 800; position: relative; z-index: 1; }
.ez-steps li.is-on .ez-steps__n { background: var(--ez-wine); border-color: var(--ez-wine); color: #F2E8D9; box-shadow: 0 0 0 5px rgba(83, 29, 48, .12); }
.ez-steps li.is-done .ez-steps__n { background: var(--ez-gold); border-color: var(--ez-gold); color: #121015; }
.ez-steps li.is-on { color: var(--heading); }
.ez-flow-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 14px; }
.ez-flow-title { font-size: clamp(2rem, 4vw, 2.8rem); margin: 0; }

/* Cart */
body.woocommerce-cart .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 28px; align-items: start; }
body.woocommerce-cart .woocommerce > .ez-steps, body.woocommerce-cart .woocommerce > .ez-flow-head, body.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper, body.woocommerce-cart .woocommerce > .ez-empty, body.woocommerce-cart .woocommerce > .return-to-shop, body.woocommerce-cart .woocommerce > .cart-empty { grid-column: 1 / -1; }
body.woocommerce-cart .cart-collaterals { width: 100% !important; position: sticky; top: 110px; }
body.woocommerce-cart .cart-collaterals .cart_totals { width: 100% !important; float: none !important; background: #fff; border: 1px solid rgba(83, 29, 48, .1); border-radius: 22px; padding: 22px; box-shadow: 0 30px 60px -40px rgba(83, 29, 48, .45); }
body.woocommerce-cart .cart_totals > h2 { font-size: 1.6rem; margin: 0 0 12px; }
body.woocommerce-cart table.shop_table.cart { border: 0 !important; background: transparent; }
body.woocommerce-cart table.cart thead { display: none; }
body.woocommerce-cart table.cart tbody { display: grid; gap: 12px; }
body.woocommerce-cart table.cart tr.cart_item { display: grid; grid-template-columns: 96px minmax(0, 1fr) auto auto 36px; grid-template-areas: "img name qty sub rm" "img price qty sub rm"; gap: 4px 18px; align-items: center; background: #fff; border: 1px solid rgba(83, 29, 48, .1); border-radius: 20px; padding: 14px 18px; box-shadow: 0 1px 2px rgba(83, 29, 48, .04); }
body.woocommerce-cart table.cart tr.cart_item td { border: 0 !important; padding: 0 !important; display: block; background: none !important; }
body.woocommerce-cart table.cart td::before { display: none !important; }
body.woocommerce-cart table.cart td.product-thumbnail { grid-area: img; }
body.woocommerce-cart table.cart td.product-thumbnail img { width: 96px !important; height: 96px !important; object-fit: contain; background: #fff; border-radius: 14px; }
body.woocommerce-cart table.cart td.product-name { grid-area: name; font-weight: 700; font-size: 1.05rem; }
body.woocommerce-cart table.cart td.product-name a { text-decoration: none; color: var(--heading); }
body.woocommerce-cart table.cart td.product-price { grid-area: price; color: var(--text-dim); font-size: .92rem; }
body.woocommerce-cart table.cart td.product-quantity { grid-area: qty; }
body.woocommerce-cart table.cart td.product-subtotal { grid-area: sub; font-weight: 800; font-size: 1.15rem; color: var(--heading); min-width: 90px; text-align: left; }
body.woocommerce-cart table.cart td.product-remove { grid-area: rm; }
body.woocommerce-cart table.cart a.remove { width: 34px; height: 34px; line-height: 32px; border-radius: 50%; color: var(--text-dim) !important; border: 1px solid rgba(83, 29, 48, .15); font-size: 1.3rem; display: grid !important; place-items: center; }
body.woocommerce-cart table.cart a.remove:hover { background: var(--ez-wine) !important; color: #F2E8D9 !important; }
body.woocommerce-cart table.cart tr:not(.cart_item) { display: block; }
body.woocommerce-cart table.cart td.actions { border: 0 !important; padding: 6px 0 !important; background: none !important; }
body.woocommerce-cart table.cart td.actions [name=update_cart] { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
body.woocommerce-cart .coupon { display: flex; gap: 8px; margin-top: 8px; }
body.woocommerce-cart .coupon[hidden] { display: none; }
body.woocommerce-cart .coupon label { display: none; }
body.woocommerce-cart .coupon input { max-width: 220px; }
.ez-coupon-toggle { background: none; border: 0; padding: 0; cursor: pointer; font: inherit; font-weight: 600; }
body.woocommerce-cart .cart_totals table.shop_table { border: 0 !important; background: none; }
body.woocommerce-cart .cart_totals table.shop_table th, body.woocommerce-cart .cart_totals table.shop_table td { padding: 10px 0 !important; background: none !important; border-color: rgba(83, 29, 48, .08) !important; }
body.woocommerce-cart .cart_totals .order-total td, body.woocommerce-cart .cart_totals .order-total th { font-size: 1.25rem; font-weight: 800; color: var(--heading); }
body.woocommerce-cart .wc-proceed-to-checkout { padding-bottom: 0; }
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { width: 100%; min-height: 58px; font-size: 1.15rem !important; }
.ez-cart-trust { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 6px; font-size: .88rem; color: var(--text-dim); }
.ez-cart-trust li::before { content: "✓"; color: var(--ez-wine); font-weight: 800; margin-inline-end: 8px; }
body.woocommerce-cart #shipping_method { padding: 0; }
body.woocommerce-cart .woocommerce-shipping-calculator { display: none; }

/* Quantity stepper */
.ez-qty { display: inline-flex !important; align-items: center; border: 1px solid rgba(83, 29, 48, .2); border-radius: 999px; background: #fff; overflow: hidden; }
.ez-qty input.qty { width: 46px !important; min-height: 40px !important; border: 0 !important; text-align: center; padding: 0 !important; background: transparent !important; -moz-appearance: textfield; font-weight: 700; }
.ez-qty input.qty::-webkit-outer-spin-button, .ez-qty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.ez-qty__btn { width: 40px; height: 40px; border: 0; background: transparent; color: var(--ez-wine); font-size: 1.25rem; font-weight: 700; cursor: pointer; }
.ez-qty__btn:hover { background: var(--bg-2); }
body.ez-site.single-product form.cart .ez-qty input.qty { width: 50px !important; }

/* Free shipping bar */
.ez-freebar { margin: 0 0 14px; padding: 12px 14px; border-radius: 14px; background: var(--bg-2); }
.ez-freebar p { margin: 0 0 8px; font-size: .92rem; color: var(--heading); }
.ez-freebar__track { display: block; height: 8px; border-radius: 999px; background: rgba(83, 29, 48, .1); overflow: hidden; }
.ez-freebar__track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--ez-gold), var(--ez-magenta)); transition: width .6s var(--ez-ease); }
.ez-freebar.is-done { background: rgba(31, 122, 77, .1); }
.ez-freebar.is-done .ez-freebar__track span { background: #1f7a4d; }
.ez-freebar-row td { padding: 8px 0 !important; }

/* Checkout layout */
body.woocommerce-checkout form.checkout { display: grid !important; grid-template-columns: minmax(0, 1fr) 400px; gap: 28px; align-items: start; }
body.woocommerce-checkout form.checkout > * { grid-column: auto !important; grid-row: auto !important; }
.ez-co-main { display: grid; gap: 18px; min-width: 0; }
.ez-co-aside { position: sticky; top: 110px; background: #fff; border: 1px solid rgba(83, 29, 48, .1); border-radius: 22px; padding: 20px; box-shadow: 0 30px 60px -40px rgba(83, 29, 48, .45); }
.ez-co-aside #order_review_heading { font-size: 1.5rem; margin: 0 0 10px; }
.ez-co-sec, body.woocommerce-checkout #customer_details { background: #fff; border: 1px solid rgba(83, 29, 48, .1); border-radius: 22px; padding: 22px; box-shadow: 0 1px 2px rgba(83, 29, 48, .04); }
body.woocommerce-checkout #customer_details { display: grid; gap: 14px; }
body.woocommerce-checkout #customer_details .col-1, body.woocommerce-checkout #customer_details .col-2 { width: 100% !important; float: none !important; max-width: none; }
body.woocommerce-checkout .woocommerce-billing-fields > h3, body.woocommerce-checkout .woocommerce-additional-fields > h3 { display: none; }
.ez-co-h { display: flex; align-items: center; gap: 12px; font-size: 1.5rem !important; margin: 0 0 16px !important; }
.ez-co-h span { width: 34px; height: 34px; flex: none; border-radius: 50%; background: var(--ez-wine); color: #F2E8D9; display: grid; place-items: center; font-family: var(--ez-body); font-size: 1rem; font-weight: 800; }
.ez-co-sub { font-family: var(--ez-body) !important; font-size: 1rem !important; font-weight: 700 !important; color: var(--gold-text) !important; margin: 14px 0 6px !important; clear: both; width: 100%; }
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 14px; }
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row { width: auto !important; float: none !important; margin: 0 0 10px !important; padding: 0 !important; }
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row-wide, body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .ez-co-sub { grid-column: 1 / -1; }
body.woocommerce-checkout .form-row label { font-size: .86rem; font-weight: 700; color: var(--text-dim); margin-bottom: 4px; display: block; }
body.woocommerce-checkout .form-row input.input-text, body.woocommerce-checkout .form-row textarea, body.woocommerce-checkout .form-row select { background: #fff !important; min-height: 50px; border-radius: 14px !important; font-size: 1rem; }
body.woocommerce-checkout .form-row textarea { min-height: 84px; }
body.woocommerce-checkout .form-row.woocommerce-invalid input.input-text { border-color: #b42336 !important; box-shadow: 0 0 0 3px rgba(180, 35, 54, .1); }
body.woocommerce-checkout .form-row.woocommerce-validated input.input-text { border-color: rgba(31, 122, 77, .5) !important; }
body.woocommerce-checkout .select2-container .select2-selection--single { min-height: 50px !important; border-radius: 14px !important; display: flex !important; align-items: center; background: #fff !important; }
body.woocommerce-checkout .woocommerce-additional-fields { margin-top: 4px; }
body.woocommerce-checkout .woocommerce-form-login-toggle, body.woocommerce-checkout .woocommerce-form-coupon-toggle { grid-column: 1 / -1; }
body.ez-co-pickup .ez-addr, body.ez-co-pickup .woocommerce-shipping-fields { display: none !important; }

/* Delivery tiles */
.ez-ship-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.ez-tile { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; text-align: right; padding: 16px 18px; border-radius: 18px; border: 2px solid rgba(83, 29, 48, .14); background: #fff; cursor: pointer; font: inherit; color: var(--text); transition: border-color .2s, box-shadow .2s, transform .2s; }
.ez-tile:hover { border-color: rgba(83, 29, 48, .4); transform: translateY(-2px); }
.ez-tile.is-on { border-color: var(--ez-wine); box-shadow: 0 0 0 4px rgba(83, 29, 48, .1), 0 18px 34px -24px rgba(83, 29, 48, .6); background: linear-gradient(180deg, #fff, #fbf6ef); }
.ez-tile__ico { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: var(--bg-2); color: var(--ez-wine); }
.ez-tile.is-on .ez-tile__ico { background: var(--ez-wine); color: #F2E8D9; }
.ez-tile__txt { display: grid; gap: 2px; } .ez-tile__txt b { font-size: 1.05rem; color: var(--heading); } .ez-tile__txt small { color: var(--text-dim); }
.ez-tile__price { font-weight: 800; color: var(--ez-wine); white-space: nowrap; }

/* Order summary */
.ez-co-aside table.shop_table { border: 0 !important; background: none; }
.ez-co-aside table.shop_table thead { display: none; }
.ez-co-aside table.shop_table th, .ez-co-aside table.shop_table td { padding: 10px 0 !important; background: none !important; border-color: rgba(83, 29, 48, .08) !important; vertical-align: middle; }
.ez-co-aside td.product-name { font-weight: 400; }
.ez-sum-item { display: inline-flex; align-items: center; gap: 10px; }
.ez-sum-item img { width: 52px; height: 52px; object-fit: contain; background: #fff; border: 1px solid rgba(83, 29, 48, .1); border-radius: 12px; flex: none; }
.ez-sum-item span { display: grid; } .ez-sum-item b { font-weight: 600; line-height: 1.3; } .ez-sum-item small { color: var(--text-dim); }
.ez-co-aside .product-quantity { color: var(--text-dim); font-weight: 700; }
.ez-co-aside tr.order-total th, .ez-co-aside tr.order-total td { font-size: 1.3rem; font-weight: 800; color: var(--heading); border-top: 2px solid rgba(83, 29, 48, .15) !important; }
.ez-co-aside #shipping_method { margin: 0; padding: 0; }
.ez-co-aside #shipping_method li { margin: 0 !important; }
.ez-co-aside #shipping_method li input { display: none; }
.ez-co-aside #shipping_method li:not(:has(input:checked)):not(:only-child) { display: none; }
.ez-co-aside #shipping_method li label { font-weight: 600; }

/* Payment */
.ez-co-pay #payment { background: none !important; border: 0 !important; border-radius: 0; }
.ez-co-pay #payment ul.payment_methods { padding: 0 !important; border: 0 !important; display: grid; gap: 10px; }
.ez-co-pay #payment ul.payment_methods li { list-style: none; border: 2px solid var(--ez-wine); border-radius: 18px; padding: 14px 16px !important; background: #fbf6ef; }
.ez-co-pay #payment ul.payment_methods li label { font-weight: 700; color: var(--heading); font-size: 1.05rem; }
.ez-co-pay #payment div.payment_box { background: transparent !important; padding: 6px 0 0 !important; margin: 0 !important; color: var(--text-dim) !important; font-size: .92rem; }
.ez-co-pay #payment div.payment_box::before { display: none; }
.ez-co-pay #payment .place-order { padding: 18px 0 0 !important; }
.ez-co-pay .woocommerce-privacy-policy-text { font-size: .82rem; color: var(--text-dim); }
.ez-co-pay .woocommerce-terms-and-conditions-wrapper .form-row { margin: 8px 0; }
.ez-co-pay #place_order { width: 100% !important; min-height: 60px; font-size: 1.2rem !important; float: none !important; }
.ez-co-pay .ez-age-declare { background: #fbf6ef; border-color: rgba(197, 167, 123, .8); }

/* Thank you */
body.woocommerce-order-received .woocommerce-notice--success, body.woocommerce-order-received p.woocommerce-thankyou-order-received { display: none; }
body.woocommerce-order-received .woocommerce-order-overview { display: none !important; }
body.woocommerce-order-received .woocommerce-order > p:not(.ez-night-note) { display: none; }
.ez-ty { display: grid; grid-template-columns: auto 1fr; gap: clamp(16px, 4vw, 48px); align-items: start; background: radial-gradient(70% 90% at 90% 0%, rgba(239, 55, 126, .08), transparent 60%), linear-gradient(135deg, #fff, #fbf6ef); border: 1px solid rgba(197, 167, 123, .45); border-radius: 28px; padding: clamp(20px, 4vw, 44px); margin-bottom: 26px; box-shadow: 0 40px 80px -50px rgba(83, 29, 48, .5); }
.ez-ty__fig .ez-figure { width: clamp(140px, 18vw, 230px); }
.ez-ty__title { font-size: clamp(2.6rem, 6vw, 4.4rem); margin: 0 0 6px; }
.ez-ty__lead { font-size: 1.1rem; margin: 0 0 18px; }
.ez-ty__timeline { list-style: none; margin: 0 0 18px; padding: 0; display: flex; gap: 0; }
.ez-ty__timeline li { flex: 1; position: relative; padding-top: 26px; font-weight: 600; color: var(--text-dim); font-size: .92rem; }
.ez-ty__timeline li span { position: absolute; top: 0; right: 0; width: 18px; height: 18px; border-radius: 50%; background: #fff; border: 2px solid rgba(83, 29, 48, .25); }
.ez-ty__timeline li::before { content: ""; position: absolute; top: 8px; right: 22px; left: 4px; height: 2px; background: rgba(83, 29, 48, .12); }
.ez-ty__timeline li:last-child::before { display: none; }
.ez-ty__timeline li.is-done { color: var(--heading); }
.ez-ty__timeline li.is-done span { background: var(--ez-magenta); border-color: var(--ez-magenta); box-shadow: 0 0 0 5px rgba(239, 55, 126, .18); }
.ez-ty__cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.ez-ty__card { background: #fff; border: 1px solid rgba(83, 29, 48, .1); border-radius: 18px; padding: 16px; }
.ez-ty__card h2 { font-family: var(--ez-body) !important; font-size: 1rem !important; font-weight: 800 !important; color: var(--gold-text) !important; margin: 0 0 6px; letter-spacing: .02em; }
.ez-ty__card p { margin: 0 0 6px; }
.ez-ty__btns { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.ez-ty__btns .ez-btn { min-height: 42px; padding: 8px 16px; font-size: .92rem; }
body.woocommerce-order-received .woocommerce-order-details, body.woocommerce-order-received .woocommerce-customer-details { background: #fff; border: 1px solid rgba(83, 29, 48, .1); border-radius: 22px; padding: 20px; margin-bottom: 16px; }

@media (max-width: 960px) {
	body.woocommerce-cart .woocommerce, body.woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
	body.woocommerce-cart .cart-collaterals, .ez-co-aside { position: static; }
	.ez-co-aside { order: -1; }
	body.woocommerce-cart table.cart tr.cart_item { grid-template-columns: 76px minmax(0, 1fr) 34px; grid-template-areas: "img name rm" "img price rm" "img qty sub"; padding: 12px; }
	body.woocommerce-cart table.cart td.product-thumbnail img { width: 76px !important; height: 76px !important; }
	body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; }
	.ez-ty { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	.ez-ty__body { width: 100%; text-align: right; }
	.ez-steps__l { font-size: .78rem; }
}
body.woocommerce-cart .woocommerce > *:not(.woocommerce-cart-form):not(.cart-collaterals) { grid-column: 1 / -1; }
body.woocommerce-cart .woocommerce > .woocommerce-cart-form { grid-column: 1; }
body.woocommerce-cart .woocommerce > .cart-collaterals { grid-column: 2; }
body.woocommerce-cart .woocommerce-message .button, body.woocommerce-cart .woocommerce-message a.wc-forward { display: none !important; }
body.woocommerce-cart .woocommerce-notices-wrapper:empty { display: none; }
@media (max-width: 960px) { body.woocommerce-cart .woocommerce > .cart-collaterals, body.woocommerce-cart .woocommerce > .woocommerce-cart-form { grid-column: 1; } }
body.ez-site .ez-co-pay #payment { background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; box-shadow: none !important; }
body.woocommerce-checkout .ez-co-pay .woocommerce-privacy-policy-text p { font-size: .84rem; margin: 10px 0; }
body.woocommerce-cart .ez-chat-invite, body.woocommerce-checkout .ez-chat-invite { display: none !important; }
.ez-ship-tiles { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
.ez-tile { min-width: 0; overflow: hidden; }
.ez-tile__txt { min-width: 0; }
.ez-tile__txt b, .ez-tile__txt small { overflow-wrap: anywhere; }
.ez-tile__price { justify-self: end; }

/* Product hover: calm glow, no tilt or lift */
.ez-card, .ez-site ul.products li.product { transform: none !important; transition: border-color .35s, box-shadow .45s !important; }
.ez-card:hover, .ez-site ul.products li.product:hover { transform: none !important; border-color: rgba(197, 167, 123, .85) !important; box-shadow: 0 0 0 1px rgba(197, 167, 123, .45), 0 0 34px 2px rgba(197, 167, 123, .38), 0 18px 40px -26px rgba(83, 29, 48, .35) !important; }
.ez-card__media img, .ez-card:hover .ez-card__media img { transform: none !important; }
.ez-site ul.products li.product:hover a img.wp-post-image { transform: none !important; }
.ez-card__media::after { display: none !important; }
.ez-products__track { perspective: none; }

/* Purchase flow CTAs: deep wine, cream text */
body.ez-site.woocommerce-cart .woocommerce a.checkout-button, body.ez-site.woocommerce-checkout .woocommerce #place_order, body.ez-site.woocommerce-checkout #place_order {
	background: linear-gradient(135deg, #6a2740, #531D30 55%, #3f1524) !important; border: 1px solid #531D30 !important; color: #F7EEDF !important;
	letter-spacing: .02em; font-weight: 700 !important; box-shadow: 0 14px 30px -16px rgba(83, 29, 48, .75), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
	transition: box-shadow .3s, filter .3s !important;
}
body.ez-site.woocommerce-cart .woocommerce a.checkout-button:hover, body.ez-site.woocommerce-checkout .woocommerce #place_order:hover, body.ez-site.woocommerce-checkout #place_order:hover {
	background: linear-gradient(135deg, #7a2f4b, #5e2237 55%, #46182a) !important; color: #fff !important; transform: none !important;
	box-shadow: 0 0 0 3px rgba(197, 167, 123, .45), 0 18px 34px -16px rgba(83, 29, 48, .8) !important;
}

/* Single consent checkbox */
.ez-consent { margin: 14px 0 18px; }
.ez-consent__row { display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px; border: 1px solid rgba(197, 167, 123, .6); border-radius: 16px; background: #fffaf2; cursor: pointer; transition: border-color .25s, background .25s; }
.ez-consent__row:hover { border-color: #C5A77B; }
.ez-consent__box { position: absolute; opacity: 0; width: 1px; height: 1px; }
.ez-consent__check { flex: 0 0 26px; width: 26px; height: 26px; margin-top: 1px; border-radius: 8px; border: 2px solid rgba(83, 29, 48, .45); background: #fff; display: grid; place-items: center; color: transparent; transition: .2s; }
.ez-consent__box:checked + .ez-consent__check { background: #531D30; border-color: #531D30; color: #F2E8D9; }
.ez-consent__box:focus-visible + .ez-consent__check { outline: 3px solid #EF377E; outline-offset: 2px; }
.ez-consent__txt { font-size: .98rem; line-height: 1.6; color: var(--heading); font-weight: 600; }
.ez-consent__txt a { color: #531D30; text-decoration: underline; text-decoration-color: rgba(197, 167, 123, .9); text-underline-offset: 3px; }
.ez-consent__txt small { display: block; margin-top: 6px; font-size: .84rem; font-weight: 400; color: var(--text-dim); }
.ez-consent__txt .required { color: #b3261e; text-decoration: none; border: 0; }
.ez-consent__row:has(.ez-consent__box:checked) { border-color: #531D30; background: #fff; }

/* Shipping tiles: icon + text, price as a corner pill */
body.ez-site .ez-tile { position: relative; display: grid !important; grid-template-columns: 52px minmax(0, 1fr) !important; align-items: center; gap: 14px; padding: 18px 18px 18px 18px !important; min-height: 92px; white-space: normal !important; text-align: right !important; background: #fff !important; color: var(--text) !important; line-height: 1.35; text-transform: none; letter-spacing: 0; }
body.ez-site .ez-tile:hover, body.ez-site .ez-tile:focus { background: #fff !important; color: var(--text) !important; transform: none; }
body.ez-site .ez-tile.is-on { background: linear-gradient(180deg, #fff, #fbf6ef) !important; }
body.ez-site .ez-tile__ico { width: 52px; height: 52px; border-radius: 16px; }
body.ez-site .ez-tile__txt { display: flex; flex-direction: column; gap: 3px; padding-inline-end: 58px; }
body.ez-site .ez-tile__txt b { font-size: 1.05rem; font-weight: 700; color: var(--heading); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.ez-site .ez-tile__txt small { font-size: .85rem; color: var(--text-dim); }
body.ez-site .ez-tile__price { position: absolute; top: 12px; inset-inline-end: 12px; padding: 3px 10px; border-radius: 999px; background: rgba(197, 167, 123, .22); color: #531D30; font-size: .8rem; font-weight: 800; }
body.ez-site .ez-tile__price:empty { display: none; }
body.ez-site .ez-tile.is-on .ez-tile__price { background: #531D30; color: #F2E8D9; }

/* Consent + tiles: final layout */
body.ez-site .woocommerce .ez-consent label.ez-consent__row { display: flex !important; flex-direction: row; align-items: flex-start; gap: 12px; margin: 0 !important; font-weight: 600 !important; }
body.ez-site .woocommerce .ez-consent input.ez-consent__box { position: absolute !important; opacity: 0 !important; width: 1px !important; height: 1px !important; margin: 0 !important; pointer-events: none; }
body.ez-site .woocommerce .ez-consent .ez-consent__txt { flex: 1; min-width: 0; }
body.ez-site .ez-tile { grid-template-columns: 52px minmax(0, 1fr) !important; grid-template-areas: "ico txt" "ico price"; row-gap: 6px; }
body.ez-site .ez-tile__ico { grid-area: ico; }
body.ez-site .ez-tile__txt { grid-area: txt; padding-inline-end: 0; }
body.ez-site .ez-tile__txt b { white-space: normal; overflow: visible; text-overflow: clip; }
body.ez-site .ez-tile__price { grid-area: price; position: static; justify-self: start; }

/* ==========================================================================
   Promo banner (auto from CRM promos): compact strip, scene left, copy right
   ========================================================================== */
.ez-pb { position: relative; display: grid; max-width: 1480px; width: calc(100% - 2 * clamp(16px, 4vw, 56px)); margin: clamp(18px, 3vw, 34px) auto; border-radius: 26px; overflow: hidden; background: #F3EADC; border: 1px solid rgba(197, 167, 123, .55); box-shadow: 0 24px 60px -42px rgba(83, 29, 48, .55); isolation: isolate; }
.ez-pb__slide { --pb-h: clamp(250px, 23vw, 330px); grid-area: 1 / 1; position: relative; display: grid; grid-template-columns: minmax(0, 1fr) min(calc(var(--pb-h) * 1.7778), 52%); align-items: center; height: var(--pb-h); opacity: 0; visibility: hidden; transition: opacity .8s var(--ez-ease), visibility 0s .8s; }
.ez-pb__slide.is-on { opacity: 1; visibility: visible; transition: opacity .8s var(--ez-ease), visibility 0s; z-index: 1; }
.ez-pb__media { grid-column: 2; grid-row: 1; height: 100%; width: 100%; position: relative; overflow: hidden; -webkit-mask-image: linear-gradient(to right, #000 62%, transparent 98%); mask-image: linear-gradient(to right, #000 62%, transparent 98%); }
.ez-pb__video { width: 100%; height: 100%; object-fit: cover; object-position: 0 50%; display: block; }
.ez-pb__copy { grid-column: 1; grid-row: 1; position: relative; z-index: 1; padding: 0 clamp(24px, 4vw, 64px); display: flex; flex-direction: column; align-items: flex-start; gap: 4px; text-align: right; }
.ez-pb__top { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; }
.ez-pb__kicker { margin: 0; font-size: .82rem; font-weight: 700; letter-spacing: .12em; color: #8a6d45; }
.ez-pb__badge { margin: 0; font-family: var(--ez-display); font-size: clamp(2.2rem, 4vw, 3.6rem); line-height: 1; color: #531D30; }
.ez-pb__title { margin: 2px 0 0; font-family: var(--ez-display); font-weight: 400; font-size: clamp(1.35rem, 2.1vw, 2rem); line-height: 1.15; color: #2a1018; }
.ez-pb__sub { margin: 2px 0 0; font-size: clamp(.92rem, 1.1vw, 1.02rem); line-height: 1.5; color: #4b3a3f; max-width: 52ch; }
.ez-pb__coupon { margin: 6px 0 0; padding: 4px 12px; border: 1.5px dashed #C5A77B; border-radius: 10px; background: #fff; font-size: .9rem; }
.ez-pb__coupon b { color: #531D30; letter-spacing: .08em; }
.ez-pb__row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 12px; }
.ez-pb__cta { display: inline-flex; align-items: center; gap: 10px; padding: 12px 24px; border-radius: 999px; background: linear-gradient(135deg, #6a2740, #531D30 55%, #3f1524); color: #F7EEDF !important; font-weight: 700; text-decoration: none !important; box-shadow: 0 12px 26px -16px rgba(83, 29, 48, .8); transition: box-shadow .3s; }
.ez-pb__cta:hover, .ez-pb__cta:focus-visible { box-shadow: 0 0 0 3px rgba(197, 167, 123, .5), 0 16px 30px -16px rgba(83, 29, 48, .85); }
.ez-pb__end { margin: 0; font-size: .8rem; color: #7b6a6e; }
.ez-pb__slide .ez-pb__copy > * { opacity: 0; transform: translateY(10px); }
.ez-pb__slide.is-on .ez-pb__copy > * { opacity: 1; transform: none; transition: opacity .6s var(--ez-ease), transform .6s var(--ez-ease); }
.ez-pb__slide.is-on .ez-pb__copy > :nth-child(2) { transition-delay: .08s; } .ez-pb__slide.is-on .ez-pb__copy > :nth-child(3) { transition-delay: .16s; } .ez-pb__slide.is-on .ez-pb__copy > :nth-child(n+4) { transition-delay: .24s; }
.ez-pb__nav { position: absolute; z-index: 3; bottom: 14px; right: clamp(24px, 4vw, 64px); display: flex; align-items: center; gap: 10px; }
.ez-pb__dots { display: flex; gap: 6px; }
.ez-pb__dot { width: 9px; height: 9px; padding: 0 !important; min-height: 0 !important; border-radius: 999px !important; border: 0 !important; background: rgba(83, 29, 48, .22) !important; cursor: pointer; transition: width .3s, background .3s; }
.ez-pb__dot.is-on { width: 26px; background: #531D30 !important; }
.ez-pb__arrow, .ez-pb__pause { width: 30px; height: 30px; padding: 0 !important; min-height: 0 !important; border-radius: 50% !important; border: 1px solid rgba(197, 167, 123, .7) !important; background: #fffdf9 !important; color: #531D30 !important; font-size: .9rem; line-height: 1; cursor: pointer; display: grid; place-items: center; }
.ez-pb__pause { font-size: .62rem; }
.ez-pb__arrow:hover, .ez-pb__pause:hover { background: #531D30 !important; color: #F2E8D9 !important; }
.ez-pb__video.is-still { animation: ez-pb-ken 16s ease-in-out infinite alternate; transform-origin: 25% 40%; }
@keyframes ez-pb-ken { from { transform: scale(1); } to { transform: scale(1.06); } }
@media (prefers-reduced-motion: reduce) { .ez-pb__slide, .ez-pb__slide .ez-pb__copy > * { transition: none !important; transform: none !important; } .ez-pb__video.is-still { animation: none; } }
@media (max-width: 900px) and (min-width: 761px) { .ez-pb__slide { --pb-h: 260px; } .ez-pb__sub { display: none; } }
@media (max-width: 760px) {
	.ez-pb { border-radius: 20px; }
	.ez-pb__slide { grid-template-columns: 1fr; height: auto; align-items: start; }
	.ez-pb__media { aspect-ratio: 16 / 8; }
	.ez-pb__media { grid-column: 1; grid-row: 1; width: 100%; height: auto; aspect-ratio: 16 / 8; -webkit-mask-image: linear-gradient(to top, transparent 0, #000 30%); mask-image: linear-gradient(to top, transparent 0, #000 30%); }
	.ez-pb__video { object-position: 0 18%; }
	.ez-pb__copy { grid-column: 1; grid-row: 2; padding: 0 18px 58px; margin-top: -18px; align-items: center; text-align: center; }
	.ez-pb__top { justify-content: center; }
	.ez-pb__row { justify-content: center; }
	.ez-pb__nav { right: 50%; transform: translateX(50%); bottom: 14px; }
}
/* Promo landing page */
.ez-pp { max-width: 1480px; margin: 0 auto 48px; }
.ez-pp .ez-pb--page { width: auto; margin: 10px 0 24px; }
.ez-pp__count { font-family: var(--ez-display); font-weight: 400; font-size: 1.6rem; color: var(--heading); margin: 0 0 14px; }
.ez-pp__more { text-align: center; margin: 18px 0 0; }
.ez-pp-empty { text-align: center; padding: 60px 20px; }

/* Header cart count: small wine badge with a cream ring */
body.ez-site .ez-cart-count { top: -2px; left: -2px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #531D30; color: #F7EEDF; font-size: .68rem; font-weight: 700; line-height: 1; box-shadow: 0 0 0 2px #FBF6EE; }
body.ez-site .ez-cart-count[data-count="0"] { display: none; }
/* Chat invite: keep its look on hover/focus (global button hover was turning it pink) */
body.ez-site .ez-chat-invite__bubble, body.ez-site .ez-chat-invite__bubble:hover, body.ez-site .ez-chat-invite__bubble:focus, body.ez-site .ez-chat-invite__bubble:active { background: #FFFDF9 !important; color: var(--heading) !important; border: 1px solid rgba(197, 167, 123, .6) !important; transform: none !important; box-shadow: none !important; }
body.ez-site .ez-chat-invite__bubble:hover { border-color: #C5A77B !important; }
body.ez-site .ez-chat-invite__bubble:hover b { color: #531D30 !important; }
body.ez-site .ez-chat-invite__bubble:hover span { color: var(--text-dim) !important; }
body.ez-site .ez-chat-invite__x:hover { background: #531D30 !important; color: #F2E8D9 !important; }
/* Sale page layout */
.ez-sale-page { padding: clamp(18px, 3vw, 36px) clamp(16px, 4vw, 56px) 40px !important; max-width: 1480px; margin: 0 auto; }
.ez-sale-page .ez-page-title .elementor-heading-title { font-size: clamp(2rem, 4vw, 3rem); color: var(--heading); }
.ez-pp .ez-filters { display: none !important; }
.ez-pp .ez-pb--page { width: 100%; }

/* ==========================================================================
   No pink buttons with dark text: every filled CTA is wine with cream text
   ========================================================================== */
body.ez-site .ez-btn--magenta, body.ez-site a.ez-btn--magenta, body.ez-site button.ez-btn--magenta,
body.ez-site .ez-el-btn--magenta .elementor-button,
body.ez-site .button.alt, body.ez-site .woocommerce .button.alt, body.ez-site .woocommerce button.button.alt, body.ez-site .woocommerce a.button.alt,
body.ez-site .single_add_to_cart_button, body.ez-site .woocommerce .single_add_to_cart_button, body.ez-site.single-product form.cart .single_add_to_cart_button,
body.ez-site .checkout-button, body.ez-site .woocommerce a.checkout-button, body.ez-site #place_order, body.ez-site .woocommerce #place_order,
body.ez-site .ez-skip {
	background: linear-gradient(135deg, #6a2740, #531D30 55%, #3f1524) !important; border: 1px solid #531D30 !important; color: #F7EEDF !important;
	box-shadow: 0 12px 26px -16px rgba(83, 29, 48, .75), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}
body.ez-site .ez-btn--magenta:hover, body.ez-site .ez-btn--magenta:focus-visible,
body.ez-site .ez-el-btn--magenta .elementor-button:hover,
body.ez-site .button.alt:hover, body.ez-site .woocommerce button.button.alt:hover, body.ez-site .woocommerce a.button.alt:hover,
body.ez-site .single_add_to_cart_button:hover, body.ez-site.single-product form.cart .single_add_to_cart_button:hover,
body.ez-site .checkout-button:hover, body.ez-site .woocommerce a.checkout-button:hover, body.ez-site #place_order:hover, body.ez-site .woocommerce #place_order:hover {
	background: linear-gradient(135deg, #7a2f4b, #5e2237 55%, #46182a) !important; border-color: #5e2237 !important; color: #fff !important; transform: none !important;
	box-shadow: 0 0 0 3px rgba(197, 167, 123, .45), 0 16px 30px -16px rgba(83, 29, 48, .8) !important;
}
body.ez-site .ez-btn:hover, body.ez-site .button:hover { box-shadow: 0 10px 26px -14px rgba(83, 29, 48, .45); }
/* Small tags and pills */
body.ez-site .ez-badge, body.ez-site ul.products li.product .onsale, body.ez-site span.onsale,
body.ez-site .woocommerce-pagination span.current, body.ez-site .ez-promo-line span {
	background: #531D30 !important; color: #F7EEDF !important;
}
.ez-footer__credit { text-align: center; margin: 6px 0 0; font-size: .78rem; color: var(--text-dim); opacity: .75; }
.ez-footer__credit a { color: inherit !important; text-decoration: underline; text-decoration-color: rgba(197, 167, 123, .7); text-underline-offset: 3px; }
.ez-footer__credit a:hover { color: #C5A77B !important; }

/* Coupon card in the summary column */
.ez-coupon { margin: 0 0 16px; padding: 16px 18px; border-radius: 18px; background: linear-gradient(180deg, #FFFDF9, #FBF4E8); border: 1.5px dashed #C5A77B; box-shadow: 0 10px 24px -20px rgba(83, 29, 48, .5); }
.ez-coupon__label { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; font-family: var(--ez-display); font-size: 1.25rem; color: #531D30; cursor: pointer; }
.ez-coupon__label svg { color: #C5A77B; flex: none; }
.ez-coupon__row { display: flex; gap: 8px; }
body.ez-site .ez-coupon input { flex: 1; min-width: 0; height: 46px; padding: 0 14px; border-radius: 12px; border: 1px solid rgba(83, 29, 48, .2); background: #fff; font: 600 1rem var(--ez-body); letter-spacing: .06em; text-transform: uppercase; }
body.ez-site .ez-coupon input:focus { outline: 2px solid #C5A77B; outline-offset: 1px; border-color: #C5A77B; }
body.ez-site .ez-coupon__btn { flex: none; height: 46px; min-height: 0 !important; padding: 0 20px !important; border-radius: 12px !important; border: 0 !important; background: linear-gradient(135deg, #6a2740, #531D30 55%, #3f1524) !important; color: #F7EEDF !important; font: 700 .98rem var(--ez-body); cursor: pointer; }
body.ez-site .ez-coupon__btn:hover, body.ez-site .ez-coupon__btn:focus-visible { box-shadow: 0 0 0 3px rgba(197, 167, 123, .5) !important; color: #fff !important; }
.ez-coupon__msg { margin: 8px 0 0; font-size: .88rem; color: var(--text-dim); min-height: 0; }
.ez-coupon__msg:empty { display: none; }
.ez-coupon__msg.is-ok { color: #2e6b3a; font-weight: 600; }
.ez-coupon__msg.is-err { color: #b3261e; font-weight: 600; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle[hidden], body.woocommerce-checkout form.checkout_coupon { display: none !important; }

/* Round arrow buttons everywhere: same shape in every state */
body.ez-site .ez-iconbtn, body.ez-site .ez-show__nav .ez-iconbtn, body.ez-site .ez-pb__arrow { border-radius: 50% !important; }
body.ez-site .ez-iconbtn:focus, body.ez-site .ez-iconbtn:active { border-radius: 50% !important; }
body.ez-site .ez-iconbtn:focus:not(:focus-visible) { outline: none; }
body.ez-site .ez-show__nav .ez-iconbtn { width: 54px; height: 54px; padding: 0 !important; display: grid; place-items: center; background: rgba(255, 253, 249, .92) !important; border: 1px solid rgba(197, 167, 123, .6) !important; color: #531D30 !important; box-shadow: 0 10px 24px -14px rgba(83, 29, 48, .45) !important; transition: background .25s, color .25s, box-shadow .25s; }
body.ez-site .ez-show__nav .ez-iconbtn:hover, body.ez-site .ez-show__nav .ez-iconbtn:focus-visible { background: #531D30 !important; color: #F2E8D9 !important; border-color: #531D30 !important; box-shadow: 0 0 0 3px rgba(197, 167, 123, .45), 0 12px 26px -14px rgba(83, 29, 48, .6) !important; outline: none; }
body.ez-site .ez-show__nav .ez-iconbtn .ez-ico { width: 22px; height: 22px; }

/* Gift option */
body.woocommerce-checkout .woocommerce-shipping-fields { margin-top: 18px; }
body.woocommerce-checkout #ship-to-different-address { margin: 0 !important; font: inherit !important; }
body.woocommerce-checkout #ship-to-different-address label { display: flex !important; align-items: center; gap: 12px; margin: 0; padding: 16px 18px 16px 60px; border-radius: 18px; border: 1.5px dashed #C5A77B; background: linear-gradient(180deg, #FFFDF9, #FBF4E8) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 11h16v10H4zM3 7h18v4H3zM12 7v14M12 7c-1.5-3-5-3.5-5-1s3 1 5 1c2 0 5 1.5 5-1s-3.5-2-5 1' fill='none' stroke='%23531D30' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat left 18px center / 28px; cursor: pointer; font-family: var(--ez-display); font-size: 1.2rem; color: #531D30; line-height: 1.3; }
body.woocommerce-checkout #ship-to-different-address label:hover { border-color: #531D30; }
body.woocommerce-checkout #ship-to-different-address input[type=checkbox] { width: 22px; height: 22px; margin: 0; flex: none; accent-color: #531D30; }
body.woocommerce-checkout #ship-to-different-address:has(input:checked) label { border-style: solid; border-color: #531D30; background-color: #fff; border-radius: 18px 18px 0 0; }
body.woocommerce-checkout .shipping_address { padding: 18px 18px 6px; border: 1.5px solid #531D30; border-top: 0; border-radius: 0 0 18px 18px; background: #fff; }
.ez-gift-note { margin: 0 0 14px; padding: 12px 14px; border-radius: 12px; background: #FBF6EE; color: #4b3a3f; font-size: .92rem; line-height: 1.55; }
body.woocommerce-checkout .ez-gift-card textarea { font-family: var(--ez-body); font-size: 1rem; line-height: 1.6; background: #FFFDF9; border: 1.5px dashed #C5A77B !important; }
body.woocommerce-checkout #shipping_country_field { display: none !important; }
/* Customer block on thank-you / account */
.ez-cust-wrap { margin-top: 24px; }
.ez-cust-wrap table { border: 0 !important; }
.ez-cust-wrap td { border: 1px solid #EADFCC !important; }
@media (max-width: 600px) { .ez-cust-wrap table, .ez-cust-wrap tr, .ez-cust-wrap td { display: block; width: 100% !important; } .ez-cust-wrap td[width="12"] { display: none; } .ez-cust-wrap td + td { margin-top: 10px; } }
body.woocommerce-checkout #billing_country_field, body.woocommerce-checkout #billing_state_field, body.woocommerce-checkout #shipping_state_field, body.woocommerce-checkout #shipping_postcode_field { display: none !important; }
.ez-hero__bg img { transform-origin: 50% 100%; }

/* ==========================================================================
   Accessibility pass (IS 5568 / WCAG 2.1 AA)
   ========================================================================== */
.ez-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
/* Strong, visible keyboard focus: wine ring with a gold halo; cream ring on dark areas */
.ez-site :focus-visible { outline: 2px solid #531D30 !important; outline-offset: 3px; box-shadow: 0 0 0 6px rgba(197, 167, 123, .5); }
.ez-footer :focus-visible, .ez-topbar :focus-visible, .ez-chat__head :focus-visible, .ez-pb__cta:focus-visible, .ez-btn--magenta:focus-visible { outline-color: #F2E8D9 !important; }
/* Links inside running text are underlined (not color-only) */
.ez-site .elementor-widget-text-editor a:not([class]), .ez-legal a:not([class]), .ez-site .woocommerce-breadcrumb a, .ez-form__privacy a, .ez-site p > a:not([class]) { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.ez-site .ez-nav a, .ez-site .ez-drawer a, .ez-footer nav a, .ez-site .ez-footer li > a { text-decoration: none; }
/* Contrast */
.ez-pb__kicker { color: #6b5030 !important; }
body.ez-site .ez-btn--magenta, body.ez-site .ez-el-btn--magenta .elementor-button, body.ez-site .button.alt, body.ez-site .single_add_to_cart_button, body.ez-site .checkout-button, body.ez-site #place_order, body.ez-site .ez-pb__cta, body.ez-site .ez-coupon__btn { background-color: #531D30 !important; }
/* Showcase pause */
body.ez-site .ez-show__pause { position: absolute; z-index: 4; left: 50%; bottom: 8px; transform: translateX(-50%); width: 38px; height: 38px; padding: 0 !important; display: grid; place-items: center; background: rgba(255, 253, 249, .92) !important; border: 1px solid rgba(197, 167, 123, .6) !important; color: #531D30 !important; font-size: .72rem; }
body.ez-site .ez-show__pause:hover { background: #531D30 !important; color: #F2E8D9 !important; }
/* Prominent "cancel a transaction" (Consumer Protection) */
.ez-topbar { position: relative; }
.ez-topbar__cancel { position: absolute; left: clamp(10px, 2vw, 24px); top: 50%; transform: translateY(-50%); padding: 3px 12px; border-radius: 999px; border: 1px solid rgba(242, 232, 217, .7); color: #F2E8D9 !important; font-size: .8rem; font-weight: 700; text-decoration: none !important; white-space: nowrap; }
.ez-topbar__cancel:hover, .ez-topbar__cancel:focus-visible { background: #F2E8D9; color: #531D30 !important; }
@media (max-width: 700px) { .ez-topbar__track { padding-left: 110px; justify-content: flex-start; } }
.ez-footer__cancel { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; margin: 26px 0 0; padding: 16px 20px; border-radius: 16px; border: 1px solid rgba(197, 167, 123, .55); background: rgba(242, 232, 217, .07); }
.ez-footer__cancel p { margin: 0; color: var(--text); }
.ez-footer__cancel-btn { display: inline-flex; align-items: center; padding: 11px 22px; border-radius: 999px; background: #F2E8D9; color: #531D30 !important; font-weight: 700; text-decoration: none !important; }
.ez-footer__cancel-btn:hover, .ez-footer__cancel-btn:focus-visible { background: #C5A77B; }
/* Assistant link buttons */
.ez-chat__links { align-self: flex-start; display: flex; flex-wrap: wrap; gap: 8px; margin: 2px 0 6px; }
.ez-chat__link { display: inline-flex; align-items: center; padding: 8px 14px; border-radius: 999px; border: 1px solid #C5A77B; background: #fff; color: #531D30 !important; font-weight: 700; font-size: .9rem; text-decoration: none !important; }
.ez-chat__link::after { content: "←"; margin-inline-start: 6px; }
.ez-chat__link:hover, .ez-chat__link:focus-visible { background: #531D30; color: #F7EEDF !important; border-color: #531D30; }
