/* Elivena – cart page, checkout notices, logged-out account page (design DS v0.5).
   Loaded by novamira-sandbox/elivena-cart.php on the cart, checkout and account pages only. */

/* =========================================================================
   Cart page
   ====================================================================== */

/* Notices (added-to-cart, Build a Box): compact so the first line stays on screen on phones */
body.woocommerce-cart .woocommerce > .before-cart {
	grid-column: 1 / -1; width: 100%; max-width: none; margin: 0; padding: 0;
	display: flex; flex-direction: column; gap: .8rem;
}
body.woocommerce-cart .before-cart .woocommerce-notices-wrapper:empty { display: none; }
body.woocommerce-cart .before-cart .woocommerce-info,
body.woocommerce-cart .before-cart .woocommerce-message,
body.woocommerce-cart .before-cart .woocommerce-error {
	margin: 0; padding: 1rem 1.4rem 1rem 4.2rem; font-size: 1.4rem; line-height: 1.45; border-radius: 1rem;
	display: flex; flex-wrap: wrap; gap: .2rem 1.2rem; align-items: center;
}
body.woocommerce-cart .before-cart .woocommerce-info::before,
body.woocommerce-cart .before-cart .woocommerce-message::before,
body.woocommerce-cart .before-cart .woocommerce-error::before { top: 1.1rem; left: 1.6rem; font-size: 1.4rem; }
body.woocommerce-cart .before-cart .woocommerce-message .wc-forward { display: none; }
body.woocommerce-cart .before-cart .fi-bab-notice a { margin-left: auto; font-weight: 600; color: var(--c-navy); text-decoration: underline; text-underline-offset: 3px; }
body.woocommerce-cart .before-cart .woocommerce-message a:not(.button) { font-weight: 600; color: var(--c-navy); }

/* Line items: the WooCommerce table drawn as rows */
body.woocommerce-cart .woocommerce-cart-form { background: none; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart { display: block; width: 100%; margin: 0; border: 0; background: none; border-radius: 0; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead,
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tbody { display: block; width: 100%; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart th,
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart td { display: block; padding: 0; border: 0; background: none; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart td::before { display: none; }

body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead tr {
	display: grid; grid-template-columns: 6.4rem minmax(0, 1fr) 9.6rem 14.8rem 10.4rem; column-gap: 2rem;
	padding: 0 0 1.2rem; border-bottom: 1px solid var(--c-navy);
	font-size: 1.3rem; font-weight: 600; line-height: 1.35; color: var(--c-muted);
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead th.product-remove,
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead th.product-thumbnail { display: none; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead th.product-name { grid-column: 1 / 3; text-align: left; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead th.product-price,
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead th.product-subtotal { text-align: right; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead th.product-quantity { text-align: center; }

body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item {
	display: grid; grid-template-columns: 6.4rem minmax(0, 1fr) 9.6rem 14.8rem 10.4rem;
	grid-template-areas: "img name price qty total" "img rm price qty total";
	column-gap: 2rem; row-gap: .2rem; align-items: center;
	padding: 2rem 0; border-bottom: 1px solid var(--c-border); background: none;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-thumbnail { grid-area: img; align-self: center; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-thumbnail a { display: block; line-height: 0; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-thumbnail img {
	width: 6.4rem; height: 6.4rem; object-fit: contain; border-radius: .8rem; background: #fff; border: 1px solid var(--c-border);
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item th.product-name {
	grid-area: name; align-self: end; display: flex; flex-direction: column; align-items: flex-start; gap: .2rem; text-align: left; font-weight: 400; min-width: 0;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item th.product-name .elv-cart-cat { font-size: 1.3rem; line-height: 1.45; color: var(--c-muted); }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item th.product-name > a {
	font-size: 1.8rem; font-weight: 700; line-height: 1.2; color: var(--c-navy); text-decoration: none; letter-spacing: -.01em;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item th.product-name > a:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item dl.variation { margin: 0; display: flex; flex-wrap: wrap; gap: 0 .4rem; font-size: 1.3rem; line-height: 1.45; color: var(--c-muted); }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item dl.variation dt,
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item dl.variation dd { margin: 0; padding: 0; font-weight: 400; display: inline; float: none; clear: none; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item dl.variation dd p { margin: 0; display: inline; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-remove { grid-area: rm; align-self: start; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-remove a.remove {
	display: inline-block; width: auto; height: auto; padding: .4rem 0; margin: 0; border-radius: 0; background: none !important;
	font-size: 1.4rem; font-weight: 400; line-height: 1.4; text-align: left;
	color: var(--c-muted) !important; text-decoration: underline; text-decoration-color: rgba(0, 0, 112, .3); text-underline-offset: 4px;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-remove a.remove:hover { color: #B3261E !important; text-decoration-color: currentColor; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-price { grid-area: price; text-align: right; font-size: 1.5rem; color: var(--c-muted); font-variant-numeric: tabular-nums; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-quantity { grid-area: qty; justify-self: center; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-subtotal { grid-area: total; text-align: right; font-size: 1.7rem; font-weight: 700; color: var(--c-navy); font-variant-numeric: tabular-nums; }

/* Quantity stepper: one outlined pill, − value + */
body.woocommerce-cart .woocommerce-cart-form .quantity {
	display: inline-grid; grid-template-columns: 3.6rem 4.4rem 3.6rem; align-items: stretch; width: 11.8rem; min-width: 0; max-width: none; height: 4rem; margin: 0;
	border: 1px solid var(--c-border); border-radius: 1rem; background: #fff; overflow: hidden;
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-quantity { min-width: 0; width: auto; }
body.woocommerce-cart .woocommerce-cart-form .quantity .action { display: grid; place-items: center; cursor: pointer; color: var(--c-navy); border: 0; background: none; height: auto; width: auto; padding: 0; margin: 0; border-radius: 0; }
body.woocommerce-cart .woocommerce-cart-form .quantity .action svg { width: 1.4rem; height: 1.4rem; }
body.woocommerce-cart .woocommerce-cart-form .quantity .action:hover { background: var(--c-lavender-light); }
body.woocommerce-cart .woocommerce-cart-form .quantity .action.minus { order: 1; }
body.woocommerce-cart .woocommerce-cart-form .quantity .action.plus { order: 3; }
body.woocommerce-cart .woocommerce-cart-form .quantity input.qty {
	order: 2; width: 100% !important; max-width: none; min-width: 0; height: auto; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none;
	background: none; text-align: center; font-size: 1.5rem; font-weight: 600; color: var(--c-navy); -moz-appearance: textfield; appearance: textfield;
}
body.woocommerce-cart .woocommerce-cart-form .quantity input.qty::-webkit-outer-spin-button,
body.woocommerce-cart .woocommerce-cart-form .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
body.woocommerce-cart .woocommerce-cart-form .quantity input.qty:focus { outline: 2px solid rgba(108, 100, 222, .45); outline-offset: -2px; }

/* Coupon and update row */
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tbody > tr:not(.cart_item) { display: block; padding: 1.6rem 0 0; background: none; border: 0; }
body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart td.actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.2rem; padding: 0; background: none !important; border: 0; }
body.woocommerce-cart .woocommerce-cart-form td.actions .coupon { display: flex; flex-wrap: wrap; gap: .8rem; align-items: center; width: 100%; margin: 0; }
body.woocommerce-cart .woocommerce-cart-form td.actions .coupon .input-text {
	flex: 1 1 18rem; max-width: 26rem; width: auto !important; height: 4.4rem; padding: 0 1.4rem; margin: 0;
	border: 1px solid var(--c-border); border-radius: 1rem; background: #fff; font-size: 1.4rem; color: var(--c-navy);
}
body.woocommerce-cart .woocommerce-cart-form td.actions .coupon .input-text:focus { border-color: var(--c-navy); outline: 2px solid rgba(108, 100, 222, .35); outline-offset: 1px; }
body.woocommerce-cart .woocommerce-cart-form td.actions .button { height: 4.4rem; padding: 0 1.8rem; font-size: 1.4rem; margin: 0; }
body.woocommerce-cart .woocommerce-cart-form td.actions .elv-coupon-toggle {
	background: none; border: 0; padding: .4rem 0; margin: 0; font: inherit; font-size: 1.4rem; font-weight: 600; line-height: 1.4;
	color: var(--c-navy); text-decoration: underline; text-underline-offset: 4px; cursor: pointer; border-radius: 0;
}
body.woocommerce-cart .woocommerce-cart-form.elv-js td.actions .coupon { display: none !important; }
body.woocommerce-cart .woocommerce-cart-form.elv-js.elv-coupon-open td.actions .coupon { display: flex !important; }
body.woocommerce-cart .woocommerce-cart-form.elv-js td.actions button[name="update_cart"] { display: none; }
body.woocommerce-cart .woocommerce-cart-form .elv-cart-return { margin: 2.4rem 0 0; }
body.woocommerce-cart .woocommerce-cart-form .elv-cart-return a { display: inline-flex; align-items: center; gap: .8rem; font-size: 1.5rem; font-weight: 700; color: var(--c-navy); text-decoration: none; text-underline-offset: 5px; }
body.woocommerce-cart .woocommerce-cart-form .elv-cart-return a:hover { text-decoration: underline; }

/* Totals card */
body.woocommerce-cart .cart-collaterals { width: 100%; }
body.woocommerce-cart .cart-collaterals .cart_totals {
	display: flex; flex-direction: column; gap: 2rem; width: 100%; max-width: none; float: none; margin: 0;
	padding: 3.2rem; border: 0; border-radius: 1.8rem; background: #F1EBFA;
}
body.woocommerce-cart .cart-collaterals .cart_totals > h2 { order: -2; margin: 0; font-size: 2.2rem; font-weight: 600; line-height: 1.1; letter-spacing: -.02em; color: var(--c-navy); }
body.woocommerce-cart .cart-collaterals .cart_totals > .elv-meter { order: -1; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table { display: block; width: 100%; margin: 0; border: 0; background: none; font-size: 1.5rem; overflow: visible; border-collapse: separate; border-spacing: 0; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tbody { display: block; width: 100%; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr {
	display: flex; justify-content: space-between; align-items: baseline; gap: 1.6rem; padding: 1.4rem 0; border-top: 1px solid rgba(0, 0, 112, .16);
}
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr:first-child { border-top: 0; padding-top: 0; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td { display: block !important; padding: 0; border: 0; background: none; line-height: 1.4; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td::before { display: none !important; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th { font-weight: 400; color: var(--c-muted); text-align: left; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td { text-align: right !important; color: var(--c-ink); font-variant-numeric: tabular-nums; }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.fee th,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.cart-discount th { color: var(--c-mint-dark); }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.fee td,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.cart-discount td { color: var(--c-mint-dark); }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.cart-discount td a { margin-left: .6rem; font-size: 1.3rem; color: var(--c-muted); }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total { padding-top: 1.8rem; padding-bottom: .4rem; border-top: 1px solid rgba(0, 0, 112, .16); }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total th { font-size: 1.5rem; font-weight: 700; color: var(--c-ink); }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total td,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total td strong { font-size: 4rem; font-weight: 600; line-height: 1; letter-spacing: -.02em; color: var(--c-navy); }
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total td small { font-size: 1.3rem; font-weight: 400; color: var(--c-muted); letter-spacing: 0; }

body.woocommerce-cart .cart-collaterals .cart_totals .elv-meter { display: grid; gap: 1rem; font-size: 1.4rem; line-height: 1.4; color: var(--c-ink); }
body.woocommerce-cart .cart-collaterals .cart_totals .elv-meter b { font-weight: 700; font-variant-numeric: tabular-nums; }
body.woocommerce-cart .cart-collaterals .cart_totals .elv-meter-track { height: .4rem; border-radius: .2rem; background: #fff; box-shadow: inset 0 0 0 1px rgba(0, 0, 112, .16); overflow: hidden; }
body.woocommerce-cart .cart-collaterals .cart_totals .elv-meter-fill { height: 100%; border-radius: .2rem; background: linear-gradient(90deg, #6C64DE 0%, #A99BF0 55%, #F0A37A 100%); }
body.woocommerce-cart .cart-collaterals .cart_totals .elv-meter.is-free { color: var(--c-mint-dark); }
body.woocommerce-cart .cart-collaterals .cart_totals .elv-meter.is-free b { color: var(--c-mint-dark); }
body.woocommerce-cart .cart-collaterals .cart_totals .elv-meter .elv-ico { width: 1.8rem; height: 1.8rem; vertical-align: -.4rem; margin-right: .2rem; fill: currentColor; }

/* The checkout plugin makes this a sticky bar with a square panel background on phones; floating over the totals it showed
   the row lines above and below the button (Eunice). Plain block in the card instead. */
body.woocommerce-cart .cart-collaterals .cart_totals .wc-proceed-to-checkout { position: static; background: none; padding: 0; margin: 0; }
body.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button {
	display: inline-flex; align-items: center; justify-content: center; gap: 1rem; width: 100%; min-height: 5.6rem; margin: 0; padding: 1.2rem 2rem;
	background: var(--c-navy); border: 1px solid var(--c-navy); border-radius: 9999px; color: #fff; font-size: 1.5rem; font-weight: 600; line-height: 1.2; text-decoration: none;
}
body.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover { background: var(--c-violet-dark); border-color: var(--c-violet-dark); color: #fff; }
body.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button .elv-ico { width: 1.8rem; height: 1.8rem; fill: currentColor; flex: none; }
body.woocommerce-cart .cart-collaterals .elv-cart-note { margin: 0; font-size: 1.3rem; line-height: 1.5; color: var(--c-muted); }
body.woocommerce-cart .cart-collaterals .elv-chip-ruo {
	display: inline-flex; align-items: center; align-self: flex-start; height: 2.6rem; padding: 0 1rem; border-radius: 999px;
	background: var(--c-navy); color: #fff; font-size: 1.15rem; font-weight: 700; line-height: 1; letter-spacing: .01em; white-space: nowrap;
}

/* Empty cart */
body.woocommerce-cart .woocommerce .return-to-shop { display: none; }
body.woocommerce-cart .elv-cart-empty { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 1.6rem 0 2.4rem; margin: 0; border: 0; background: none; }
body.woocommerce-cart .elv-cart-empty::before { display: none; }
body.woocommerce-cart .elv-cart-empty .elv-empty-draw { width: 9.6rem; height: 8rem; display: block; }
body.woocommerce-cart .elv-cart-empty .elv-empty-draw .wire { fill: none; stroke: var(--c-navy); stroke-width: 1.5; stroke-linejoin: round; stroke-linecap: round; }
body.woocommerce-cart .elv-cart-empty .elv-empty-draw .wire.fill { fill: #fff; }
body.woocommerce-cart .elv-cart-empty .elv-empty-draw .wire.dash { stroke-dasharray: 3 3; }
body.woocommerce-cart .elv-cart-empty .elv-empty-draw .dot { fill: var(--c-violet); }
body.woocommerce-cart .elv-cart-empty .elv-empty-msg { margin: 1.6rem 0 0; font-size: 2.4rem; font-weight: 600; line-height: 1.2; letter-spacing: -.02em; color: var(--c-navy); }
body.woocommerce-cart .elv-cart-empty .elv-empty-sub { margin: .8rem auto 0; max-width: 36em; font-size: 1.6rem; line-height: 1.5; color: var(--c-muted); }
body.woocommerce-cart .elv-cart-empty .elv-empty-acts { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.2rem; margin-top: 2.4rem; }
body.woocommerce-cart .elv-cart-empty .elv-btn {
	display: inline-flex; align-items: center; justify-content: center; min-height: 5.2rem; padding: 1.2rem 2.8rem; border-radius: 9999px;
	font-size: 1.5rem; font-weight: 600; line-height: 1.2; text-decoration: none; transition: background .2s, border-color .2s, color .2s;
}
body.woocommerce-cart .elv-cart-empty .elv-btn-primary { background: var(--c-navy); border: 1px solid var(--c-navy); color: #fff; }
body.woocommerce-cart .elv-cart-empty .elv-btn-primary:hover { background: var(--c-violet-dark); border-color: var(--c-violet-dark); color: #fff; }
body.woocommerce-cart .elv-cart-empty .elv-btn-ghost { background: rgba(255, 255, 255, .7); border: 1px solid rgba(0, 0, 112, .25); color: var(--c-navy); }
body.woocommerce-cart .elv-cart-empty .elv-btn-ghost:hover { border-color: var(--c-navy); background: #fff; color: var(--c-navy); }

/* Tablet: the lines column is narrow next to the totals card, so the unit price column drops (the subtotal stays) */
@media (min-width: 768px) and (max-width: 1199px) {
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead tr,
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item { grid-template-columns: 6.4rem minmax(0, 1fr) 12.8rem 9.6rem; column-gap: 1.6rem; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item { grid-template-areas: "img name qty total" "img rm qty total"; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart th.product-price,
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart td.product-price { display: none; }
}

@media (max-width: 991px) {
	body.woocommerce-cart .woocommerce { display: flex; flex-direction: column; gap: 3.2rem; }
	body.woocommerce-cart .cart-collaterals { position: static; }
}

@media (max-width: 767px) {
	body.woocommerce-cart .woocommerce { gap: 2.8rem; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart thead { display: none; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tbody > tr.cart_item:first-child { border-top: 1px solid var(--c-border); }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item {
		grid-template-columns: 6.4rem minmax(0, 1fr) auto;
		grid-template-areas: "img name name" "img rm rm" "img qty total";
		column-gap: 1.4rem; row-gap: .4rem; align-items: start; padding: 1.8rem 0;
	}
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-thumbnail { align-self: start; grid-row: 1 / span 3; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item th.product-name { align-self: start; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-price { display: none; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-quantity { justify-self: start; margin-top: .8rem; }
	body.woocommerce-cart .woocommerce-cart-form table.shop_table.cart tr.cart_item td.product-subtotal { align-self: center; margin-top: .8rem; }
	body.woocommerce-cart .woocommerce-cart-form .quantity { grid-template-columns: 4.2rem 4.8rem 4.2rem; width: 13.4rem; height: 4.4rem; }
	body.woocommerce-cart .cart-collaterals .cart_totals { padding: 2.4rem 2rem; border-radius: 1.6rem; }
	body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total td,
	body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.order-total td strong { font-size: 3.2rem; }
	body.woocommerce-cart .elv-cart-empty .elv-empty-acts { flex-direction: column; align-items: stretch; width: 100%; }
	body.woocommerce-cart .elv-cart-empty .elv-empty-msg { font-size: 2.2rem; }
	body.woocommerce-cart .elv-cart-empty .elv-empty-sub { font-size: 1.5rem; }
}

/* =========================================================================
   Checkout: notice styling only (the green added-to-cart notice, same as the cart's)
   ====================================================================== */
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message,
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-info,
body.woocommerce-checkout .medical-checkout-notices .woocommerce-message,
body.woocommerce-checkout .medical-checkout-notices .woocommerce-info {
	/* px on purpose: the checkout plugin sets the root font-size to 14px on this page */
	padding: 10px 14px 10px 42px !important; font-size: 14px !important; line-height: 1.45 !important; border-radius: 10px !important;
	display: block;
}
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message::before,
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-info::before,
body.woocommerce-checkout .medical-checkout-notices .woocommerce-message::before,
body.woocommerce-checkout .medical-checkout-notices .woocommerce-info::before { top: 11px !important; left: 16px !important; font-size: 14px !important; }
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message a.button,
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message a.wc-forward,
body.woocommerce-checkout .medical-checkout-notices .woocommerce-message a.button,
body.woocommerce-checkout .medical-checkout-notices .woocommerce-message a.wc-forward {
	display: inline !important; float: none !important; width: auto !important; min-height: 0 !important; margin: 0 0 0 4px !important; padding: 0 !important;
	background: none !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important;
	color: var(--c-navy) !important; font: inherit !important; font-size: 14px !important; font-weight: 600 !important; line-height: inherit !important;
	text-decoration: underline !important; text-underline-offset: 3px;
}
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message a.wc-forward::after,
body.woocommerce-checkout .medical-checkout-notices .woocommerce-message a.wc-forward::after { content: none !important; }
/* The three reassurance lines show twice on phones (order summary and under Pay). The plugin keeps the one under Pay
   on phones and the one in the summary column on desktop, so the summary copy is hidden below 992px. */
@media (max-width: 991px) {
	body.woocommerce-checkout .checkout-column--summary .mc-summary-extras > .mc-usps { display: none !important; }
}

/* =========================================================================
   My account, logged out
   ====================================================================== */
body.woocommerce-account #brxe-acccon #customer_login > div > h2 { margin: 0 0 .4rem; font-size: 2.6rem; }
body.woocommerce-account #customer_login .elv-auth-sub { margin: 0 0 2.2rem; font-size: 1.45rem; line-height: 1.5; color: var(--c-muted); }
body.woocommerce-account #customer_login .required { display: none; }
body.woocommerce-account #customer_login .form-row label { display: block; margin-bottom: .6rem; }
body.woocommerce-account #customer_login .elv-label-row { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; margin-bottom: .6rem; }
body.woocommerce-account #customer_login .elv-label-row label { margin: 0; }
body.woocommerce-account #customer_login .elv-forgot { font-size: 1.3rem; font-weight: 500; color: var(--c-violet); text-decoration: none; white-space: nowrap; }
body.woocommerce-account #customer_login .elv-forgot:hover { text-decoration: underline; }
body.woocommerce-account #customer_login .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: .8rem; font-size: 1.4rem; font-weight: 600; color: var(--c-navy); min-height: 4.4rem; }
body.woocommerce-account #customer_login .woocommerce-form-login__rememberme input { margin: 0; width: 1.8rem; height: 1.8rem; accent-color: var(--c-navy); }
body.woocommerce-account #customer_login button[type="submit"] { width: 100%; display: block; }
body.woocommerce-account #customer_login .col-2 > form > p:not(.form-row) { margin: 0 0 1.4rem; font-size: 1.3rem; line-height: 1.5; color: var(--c-muted); }
body.woocommerce-account #customer_login .col-2 > form > p:not(.form-row) a { color: var(--c-navy); }
body.woocommerce-account #customer_login .col-2 > form > .woocommerce-privacy-policy-text p { margin: 1.2rem 0 0; font-size: 1.2rem; line-height: 1.5; color: var(--c-muted); }
body.woocommerce-account #customer_login .medical-turnstile-wrap { margin-top: 1.6rem; }
@media (max-width: 767px) {
	body.woocommerce-account #brxe-acccon #customer_login > div > h2 { font-size: 2.2rem; }
}


/* Checkout on phones: the order summary card had no inner padding and the coupon Apply button ran past its edge (Eunice).
   Same padding as the cart totals card on phones (24px 20px); px because the checkout plugin sets a 14px root here. */
@media (max-width: 767px) {
	body.woocommerce-checkout .checkout-column.checkout-column--summary { padding: 24px 20px !important; box-sizing: border-box; }
	body.woocommerce-checkout .checkout-column--summary .mc-coupon-field { display: flex; flex-wrap: nowrap; align-items: stretch; gap: 8px; width: 100%; }
	body.woocommerce-checkout .checkout-column--summary .mc-coupon-field input.input-text { flex: 1 1 0; min-width: 0; width: auto !important; }
	/* the table sized its price column to the long shipping rows, squeezing the product name */
	body.woocommerce-checkout .checkout-column--summary tr.cart_item td.product-name { width: 100%; }
	body.woocommerce-checkout .checkout-column--summary tr.cart_item td.product-total { width: 1%; white-space: nowrap; padding-left: 12px; }
	body.woocommerce-checkout #accordion-form .checkout-column--summary tr.shipping td { white-space: normal; }
	body.woocommerce-checkout .checkout-column--summary .mc-coupon-field .mc-coupon-field__apply { flex: none; }
}
