.examprep-theme-shell.woocommerce-cart,
.examprep-theme-shell.woocommerce-checkout,
.examprep-theme-shell.woocommerce-account {
	background: #f5f7fb;
}

.examprep-theme-shell.woocommerce-checkout .site-main:not(.examprep-commerce-template) {
	max-width: 1180px;
	margin: 0 auto;
	padding: clamp(2rem, 4vw, 4rem) 1.25rem;
}

.examprep-theme-shell.woocommerce-checkout .entry-header {
	margin-bottom: 1.5rem;
}

.examprep-theme-shell.woocommerce-checkout .entry-title {
	color: #08295a;
	font-size: clamp(2.25rem, 5vw, 4.5rem);
	letter-spacing: -0.055em;
	line-height: 0.96;
}

/* ============================================================
 * Checkout layout — two-column grid (main form + sticky summary)
 * ============================================================ */

.examprep-checkout-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(320px, 0.85fr);
	gap: clamp(1.25rem, 2.5vw, 2.25rem);
	align-items: start;
}

.examprep-checkout-main {
	display: grid;
	gap: clamp(1rem, 1.8vw, 1.4rem);
	min-width: 0;
}

.examprep-checkout-sidebar {
	min-width: 0;
}

/* ----- shipping disclaimer at top of checkout ----- */

.examprep-checkout-shipping-notice {
	margin: 0 0 clamp(1rem, 1.8vw, 1.4rem);
	padding: clamp(0.9rem, 1.6vw, 1.1rem) clamp(1rem, 2vw, 1.35rem);
	border: 1px solid rgba(12, 113, 195, 0.28);
	border-left: 4px solid #0c71c3;
	border-radius: 14px;
	background: linear-gradient(180deg, rgba(12, 113, 195, 0.08), rgba(12, 113, 195, 0.02));
}

.examprep-checkout-shipping-notice__warning {
	display: flex;
	gap: 0.55rem;
	align-items: center;
	margin: 0 0 0.5rem;
	color: #002e62;
	font-size: 0.98rem;
	font-weight: 800;
	line-height: 1.35;
}

.examprep-checkout-shipping-notice__icon {
	display: inline-flex;
	flex: 0 0 auto;
	color: #0c71c3;
}

.examprep-checkout-shipping-notice__details {
	margin: 0;
	padding: 0 0 0 0.35rem;
	list-style: none;
	color: #4b5563;
	font-size: 0.86rem;
	line-height: 1.5;
}

.examprep-checkout-shipping-notice__details li {
	position: relative;
	padding-left: 0.95rem;
	margin: 0.18rem 0;
}

.examprep-checkout-shipping-notice__details li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: rgba(12, 113, 195, 0.55);
}

.examprep-checkout-shipping-notice__details a {
	color: #0c71c3;
	text-decoration: underline;
	font-weight: 600;
}

.examprep-checkout-shipping-notice__details a:hover {
	color: #002e62;
}

/* ----- ship-to-different-address toggle banner ----- */

.examprep-ship-to-different {
	margin: 0 0 clamp(0.85rem, 1.6vw, 1.25rem);
	padding: clamp(0.85rem, 1.5vw, 1.05rem) clamp(1rem, 1.8vw, 1.25rem);
	border: 1.5px solid rgba(12, 113, 195, 0.32);
	border-radius: 14px;
	background: linear-gradient(180deg, rgba(12, 113, 195, 0.07), rgba(12, 113, 195, 0.02));
	transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.examprep-ship-to-different:hover {
	border-color: rgba(12, 113, 195, 0.5);
	background: rgba(12, 113, 195, 0.08);
}

.examprep-ship-to-different:has(input:checked),
.examprep-ship-to-different.is-checked {
	border-color: #0c71c3;
	background: rgba(12, 113, 195, 0.1);
	box-shadow: 0 6px 18px rgba(12, 113, 195, 0.14);
}

.examprep-ship-to-different__label {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 0.7rem;
	align-items: start;
	margin: 0;
	cursor: pointer;
}

.examprep-ship-to-different__input {
	margin: 0.18rem 0 0 !important;
	width: 20px;
	height: 20px;
	accent-color: #0c71c3;
}

.examprep-ship-to-different__copy {
	display: block;
	min-width: 0;
}

.examprep-ship-to-different__title {
	display: block;
	margin: 0 0 0.18rem;
	color: #002e62;
	font-size: 0.98rem;
	font-weight: 800;
	line-height: 1.3;
}

.examprep-ship-to-different__help {
	display: block;
	color: #4b5563;
	font-size: 0.85rem;
	font-weight: 500;
	line-height: 1.45;
}

/* Hide the shipping card entirely when the toggle is unchecked. WC's checkout.js
 * already hides the inner .shipping_address div; this CSS hides the wrapping card so
 * we don't show an empty card header. Falls back gracefully if :has() is unsupported. */
.examprep-checkout-form:not(:has(#ship-to-different-address-checkbox:checked)) .examprep-checkout-card--shipping {
	display: none;
}

/* ----- form sections (Step cards) ----- */

.examprep-checkout-card {
	border: 1px solid rgba(8, 41, 90, 0.1);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 32px rgba(8, 41, 90, 0.06);
	overflow: hidden;
}

.examprep-checkout-card__header {
	padding: clamp(1.25rem, 2.2vw, 1.75rem) clamp(1.25rem, 2.4vw, 1.75rem) 0;
}

.examprep-checkout-card__header .section-eyebrow {
	display: inline-block;
	margin: 0 0 0.4rem;
	padding: 0.18rem 0.6rem;
	border-radius: 999px;
	background: rgba(12, 113, 195, 0.1);
	color: #0c71c3;
	font-size: 0.7rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.examprep-checkout-card__header h2 {
	margin: 0;
	color: #002e62;
	font-size: clamp(1.2rem, 1.7vw, 1.45rem);
	font-weight: 800;
	letter-spacing: -0.005em;
	line-height: 1.15;
}

.examprep-checkout-card__lead {
	margin: 0.5rem 0 0;
	color: #555;
	font-size: 0.92rem;
	line-height: 1.45;
}

.examprep-checkout-card__body {
	padding: clamp(1rem, 1.9vw, 1.5rem) clamp(1.25rem, 2.4vw, 1.75rem) clamp(1.25rem, 2.4vw, 1.75rem);
}

/* Suppress the WC default field-group headings — our wrapper supplies them */
.examprep-checkout-form .woocommerce-billing-fields > h3,
.examprep-checkout-form .woocommerce-shipping-fields > h3,
.examprep-checkout-form .woocommerce-additional-fields > h3 {
	display: none;
}

.examprep-theme-shell.woocommerce-checkout .examprep-agent-checkout-banner,
.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-tools,
.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_create_user_field {
	background: #08295a;
	color: #fff;
}

.examprep-theme-shell.woocommerce-checkout .examprep-agent-checkout-banner {
	margin: 0 0 1.25rem;
	padding: 1rem 1.25rem;
	border: 3px dashed #55d66b;
	border-left: 8px solid #f5821f;
	border-radius: 18px;
	box-shadow: 0 18px 42px rgba(8, 41, 90, 0.16);
}

.examprep-theme-shell.woocommerce-checkout .examprep-agent-checkout-banner strong {
	display: block;
	color: #55d66b;
	font-size: 0.8rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.examprep-theme-shell.woocommerce-checkout .examprep-agent-checkout-banner span {
	display: block;
	margin-top: 0.2rem;
	color: rgba(255, 255, 255, 0.9);
	font-weight: 700;
}

.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_create_user_field {
	position: relative;
	margin: 0 !important;
	padding: 1.25rem;
	border-radius: 18px;
	border-left: 8px solid #f5821f;
}

.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_create_user_field::before {
	content: "Agent Mode - Checkout As Client";
	display: block;
	margin-bottom: 0.75rem;
	color: #55d66b;
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_create_user_field label {
	color: rgba(255, 255, 255, 0.82);
}

.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_create_user_field select {
	background-color: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.28);
	color: #fff;
}

.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_create_user_field select option {
	color: #08295a;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-tools {
	margin: 0 0 1.25rem;
	padding: 1rem 1.25rem 1.25rem;
	border-left: 8px solid #f5821f;
	border-radius: 18px;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-tools label {
	display: block;
	margin-bottom: 0.5rem;
	color: rgba(255, 255, 255, 0.86);
	font-weight: 800;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-search input {
	width: 100%;
	min-height: 48px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-search input::placeholder {
	color: rgba(255, 255, 255, 0.52);
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-status {
	margin-top: 0.55rem;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.9rem;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-status[data-status="success"] {
	color: #55d66b;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-status[data-status="warning"],
.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-status[data-status="error"] {
	color: #ffd166;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-results {
	display: grid;
	gap: 0.5rem;
	margin-top: 0.85rem;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-result {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
	padding: 0.7rem 0.85rem;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	text-align: left;
	cursor: pointer;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-result:hover,
.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-result:focus {
	border-color: #55d66b;
	background: rgba(85, 214, 107, 0.16);
	outline: none;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-result__label {
	font-weight: 800;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-as-client-result__email {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.9rem;
}

/* ----- form fields (inputs, selects, labels) ----- */

.examprep-checkout-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem 1rem;
}

.examprep-checkout-fields .form-row {
	display: block;
	margin: 0;
	padding: 0;
	min-width: 0;
}

.examprep-checkout-fields .form-row-wide,
.examprep-checkout-fields .form-row.notes,
.examprep-checkout-fields .form-row-full {
	grid-column: 1 / -1;
}

.examprep-checkout-fields .form-row-first {
	grid-column: 1 / 2;
}

.examprep-checkout-fields .form-row-last {
	grid-column: 2 / 3;
}

.examprep-checkout-form .form-row label {
	display: block;
	margin-bottom: 0.3rem;
	color: #1a1a1a;
	font-size: 0.9rem;
	font-weight: 600;
	letter-spacing: 0;
}

.examprep-checkout-form .form-row label .required {
	color: #c92227;
	margin-left: 0.15rem;
	text-decoration: none;
}

.examprep-checkout-form .form-row label .optional {
	color: #888;
	font-weight: 400;
	font-size: 0.8rem;
	margin-left: 0.25rem;
}

.examprep-checkout-form .woocommerce-input-wrapper {
	display: block;
	width: 100%;
}

.examprep-checkout-form .form-row input.input-text,
.examprep-checkout-form .form-row textarea,
.examprep-checkout-form .form-row select,
.examprep-checkout-form .select2-container .select2-selection--single {
	display: block;
	width: 100%;
	min-height: 46px;
	padding: 0.65rem 0.85rem;
	border: 1.5px solid rgba(8, 41, 90, 0.16);
	border-radius: 10px;
	background: #fff;
	color: #1a1a1a;
	font-size: 1rem;
	font-family: inherit;
	box-shadow: none;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.examprep-checkout-form .form-row textarea {
	min-height: 84px;
	padding-top: 0.6rem;
	resize: vertical;
	line-height: 1.5;
}

.examprep-checkout-form .form-row input.input-text::placeholder,
.examprep-checkout-form .form-row textarea::placeholder {
	color: #9aa3b2;
}

.examprep-checkout-form .form-row input.input-text:focus,
.examprep-checkout-form .form-row textarea:focus,
.examprep-checkout-form .form-row select:focus,
.examprep-checkout-form .select2-container--focus .select2-selection--single {
	border-color: #0c71c3;
	outline: none;
	box-shadow: 0 0 0 3px rgba(12, 113, 195, 0.18);
}

.examprep-checkout-form .form-row.woocommerce-invalid input.input-text,
.examprep-checkout-form .form-row.woocommerce-invalid select,
.examprep-checkout-form .form-row.woocommerce-invalid textarea {
	border-color: #c92227;
}

.examprep-checkout-form .form-row.woocommerce-validated input.input-text,
.examprep-checkout-form .form-row.woocommerce-validated select {
	border-color: rgba(4, 120, 87, 0.55);
}

.examprep-checkout-form .select2-container--default .select2-selection--single .select2-selection__rendered {
	padding: 0;
	line-height: 44px;
	color: #1a1a1a;
}

.examprep-checkout-form .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 44px;
	right: 8px;
}

.examprep-checkout-form .examprep-checkout-checkbox {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	padding: 0.85rem 0.95rem;
	border: 1.5px solid rgba(8, 41, 90, 0.14);
	border-radius: 10px;
	background: #f8fafc;
	cursor: pointer;
	transition: border-color 160ms ease, background 160ms ease;
}

.examprep-checkout-form .examprep-checkout-checkbox:hover {
	border-color: rgba(12, 113, 195, 0.42);
	background: #f0f7ff;
}

.examprep-checkout-form .examprep-checkout-checkbox input[type="checkbox"] {
	flex: 0 0 auto;
	margin: 0.18rem 0 0;
	width: 18px;
	height: 18px;
	accent-color: #0c71c3;
}

.examprep-checkout-form .examprep-checkout-checkbox span {
	display: block;
	color: #1a1a1a;
	font-weight: 600;
	font-size: 0.92rem;
	line-height: 1.35;
}

.examprep-checkout-form .examprep-ship-to-toggle {
	margin: 0 0 1rem;
}

.examprep-checkout-form .examprep-ship-to-toggle__note {
	display: block;
	margin: 0.45rem 0 0 0.1rem;
	color: #6b7280;
	font-size: 0.78rem;
}

/* ============================================================
 * Order summary sidebar
 * ============================================================ */

.examprep-checkout-summary {
	position: sticky;
	top: calc(var(--header-height, 78px) + 16px);
	display: flex;
	flex-direction: column;
	border: 1px solid rgba(8, 41, 90, 0.1);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 18px 42px rgba(8, 41, 90, 0.08);
	overflow: hidden;
}

.examprep-checkout-summary__header {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: baseline;
	justify-content: space-between;
	padding: 1.15rem 1.35rem 0.95rem;
	border-bottom: 1px solid rgba(8, 41, 90, 0.08);
	background: linear-gradient(180deg, #fafcff, #fff);
}

.examprep-checkout-summary__header h2 {
	margin: 0;
	color: #002e62;
	font-size: 1.1rem;
	font-weight: 800;
	letter-spacing: -0.005em;
}

.examprep-checkout-summary__count {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 0.2rem 0.65rem;
	border-radius: 999px;
	background: rgba(12, 113, 195, 0.1);
	color: #0c71c3;
	font-size: 0.78rem;
	font-weight: 700;
}

/* Order items list */

.examprep-checkout-summary #order_review {
	padding: 1rem 1.35rem 1.1rem;
}

.examprep-checkout-items {
	display: grid;
	gap: 0.9rem;
	margin: 0 0 1rem;
	padding: 0 0 1rem;
	border-bottom: 1px solid rgba(8, 41, 90, 0.08);
}

.examprep-checkout-item {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr) auto;
	gap: 0.85rem;
	align-items: flex-start;
}

.examprep-checkout-item__media {
	position: relative;
	width: 56px;
	height: 56px;
	border: 1px solid rgba(8, 41, 90, 0.1);
	border-radius: 10px;
	background: #f3f4f6;
	overflow: hidden;
}

.examprep-checkout-item__img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	display: block;
}

.examprep-checkout-item__qty-badge {
	position: absolute;
	top: -7px;
	right: -7px;
	display: grid;
	place-items: center;
	min-width: 22px;
	height: 22px;
	padding: 0 5px;
	border-radius: 999px;
	background: #002e62;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 800;
	box-shadow: 0 0 0 2px #fff;
}

.examprep-checkout-item__body {
	min-width: 0;
}

.examprep-checkout-item__name {
	display: block;
	color: #1a1a1a;
	font-size: 0.92rem;
	font-weight: 700;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.examprep-checkout-item__name a {
	color: inherit;
	text-decoration: none;
}

.examprep-checkout-item__meta {
	margin-top: 0.18rem;
	color: #6b7280;
	font-size: 0.78rem;
	line-height: 1.4;
}

.examprep-checkout-item__meta dl {
	margin: 0;
	display: inline;
}

.examprep-checkout-item__qty {
	margin-top: 0.2rem;
	color: #6b7280;
	font-size: 0.78rem;
	font-weight: 600;
}

.examprep-checkout-item__price {
	color: #002e62;
	font-size: 0.95rem;
	font-weight: 700;
	white-space: nowrap;
	text-align: right;
}

/* Totals dl */

.examprep-checkout-totals {
	display: grid;
	gap: 0.45rem;
	margin: 0;
}

.examprep-checkout-totals__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1rem;
	align-items: baseline;
	margin: 0;
	color: #374151;
	font-size: 0.92rem;
}

.examprep-checkout-totals__row dt,
.examprep-checkout-totals__row dd {
	margin: 0;
}

.examprep-checkout-totals__row dd {
	text-align: right;
	color: #1a1a1a;
	font-weight: 600;
	white-space: nowrap;
}

.examprep-checkout-totals__row.cart-discount {
	color: #047857;
}

.examprep-checkout-totals__row.cart-discount dd {
	color: #047857;
}

.examprep-checkout-totals__row--shipping dt {
	font-weight: 700;
	color: #1a1a1a;
}

.examprep-checkout-totals__row--shipping ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.85rem;
}

.examprep-checkout-totals__row--total {
	margin-top: 0.55rem;
	padding-top: 0.85rem;
	border-top: 1.5px solid rgba(8, 41, 90, 0.12);
	font-size: 1.05rem;
}

.examprep-checkout-totals__row--total dt {
	font-weight: 800;
	color: #002e62;
}

.examprep-checkout-totals__row--total dd {
	font-size: 1.25rem;
	font-weight: 800;
	color: #002e62;
}

.examprep-checkout-totals__row--total .woocommerce-Price-amount {
	font-size: 1.25rem;
}

.examprep-checkout-totals__row--total small {
	display: block;
	color: #6b7280;
	font-size: 0.74rem;
	font-weight: 500;
	margin-top: 0.15rem;
}

/* Coupon block */

.examprep-checkout-coupon {
	margin: 1rem 0;
	border: 1.5px dashed rgba(12, 113, 195, 0.32);
	border-radius: 12px;
	background: linear-gradient(180deg, rgba(12, 113, 195, 0.06), rgba(12, 113, 195, 0.01));
	overflow: hidden;
}

.examprep-checkout-coupon__toggle {
	display: flex;
	gap: 0.65rem;
	align-items: center;
	width: 100%;
	padding: 0.75rem 0.95rem;
	border: 0;
	background: transparent;
	color: #0c71c3;
	font-size: 0.9rem;
	font-weight: 700;
	text-align: left;
	cursor: pointer;
}

.examprep-checkout-coupon__toggle:hover {
	background: rgba(12, 113, 195, 0.05);
}

.examprep-checkout-coupon__toggle.is-active {
	color: #047857;
}

.examprep-checkout-coupon__icon {
	display: inline-flex;
	color: inherit;
	flex: 0 0 auto;
}

.examprep-checkout-coupon__label {
	flex: 1 1 auto;
	min-width: 0;
}

.examprep-checkout-coupon__chevron {
	flex: 0 0 auto;
	transition: transform 160ms ease;
}

.examprep-checkout-coupon__toggle[aria-expanded="true"] .examprep-checkout-coupon__chevron {
	transform: rotate(180deg);
}

.examprep-checkout-coupon__panel {
	padding: 0 0.95rem 0.95rem;
}

.examprep-checkout-coupon__panel[hidden] {
	display: none;
}

.examprep-checkout-coupon__fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.5rem;
}

.examprep-checkout-coupon__fields .input-text {
	min-height: 44px;
	padding: 0 0.85rem;
	border: 1.5px solid rgba(8, 41, 90, 0.18);
	border-radius: 10px;
	background: #fff;
	color: #1a1a1a;
	font-size: 0.95rem;
}

.examprep-checkout-coupon__fields .input-text:focus {
	border-color: #0c71c3;
	outline: none;
	box-shadow: 0 0 0 3px rgba(12, 113, 195, 0.18);
}

.examprep-checkout-coupon__apply {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 1rem;
	border: 0;
	border-radius: 10px;
	background: #002e62;
	color: #fff;
	font-size: 0.88rem;
	font-weight: 700;
	cursor: pointer;
	transition: background 160ms ease;
}

.examprep-checkout-coupon__apply:hover {
	background: #0c71c3;
}

.examprep-checkout-coupon__apply:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.examprep-checkout-coupon__status {
	margin: 0.6rem 0 0;
	font-size: 0.82rem;
	line-height: 1.4;
	min-height: 1.2em;
}

.examprep-checkout-coupon__status[data-tone="success"] {
	color: #047857;
}

.examprep-checkout-coupon__status[data-tone="error"] {
	color: #c92227;
}

.examprep-checkout-coupon__status[data-tone="pending"] {
	color: #6b7280;
}

.examprep-checkout-coupon__remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 0.4rem;
	width: 18px;
	height: 18px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: rgba(4, 120, 87, 0.14);
	color: #047857;
	cursor: pointer;
	vertical-align: middle;
}

.examprep-checkout-coupon__remove:hover {
	background: rgba(4, 120, 87, 0.28);
}

/* Payment block (kept inside #order_review via standard hook) */

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment {
	margin: 1.1rem 0 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods {
	margin: 0 0 0.85rem;
	padding: 0;
	border: 0;
	border-radius: 12px;
	background: #f8fafc;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods li.wc_payment_method {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	gap: 0 0.5rem;
	align-items: start;
	margin: 0;
	padding: 0.85rem 0.95rem;
	border-bottom: 1px solid rgba(8, 41, 90, 0.07);
	list-style: none;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods li.wc_payment_method:last-child {
	border-bottom: 0;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods li.wc_payment_method::before,
.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods li.wc_payment_method::after {
	display: none;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods li.wc_payment_method label {
	grid-column: 2;
	grid-row: 1;
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	align-items: center;
	min-width: 0;
	color: #1a1a1a;
	font-size: 0.95rem;
	font-weight: 700;
	cursor: pointer;
}

.examprep-theme-shell.woocommerce-checkout #payment ul.payment_methods li label[for="payment_method_authorize_net_cim_credit_card"] {
	display: flex !important;
	gap: 0.35rem 0.5rem !important;
}

.examprep-payment-card-brands {
	display: inline-flex;
	flex: 0 1 auto;
	flex-wrap: nowrap;
	gap: 0.35rem;
	align-items: center;
	min-width: 0;
}

.examprep-payment-card-brand {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 23px;
	padding: 0 0.38rem;
	border: 1px solid rgba(8, 41, 90, 0.14);
	border-radius: 5px;
	background: #fff;
	color: #08295a;
	font-size: 0.58rem;
	font-weight: 900;
	letter-spacing: 0.04em;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: inset 0 -1px 0 rgba(8, 41, 90, 0.06);
}

.examprep-payment-card-brand--visa {
	color: #143f8f;
}

.examprep-payment-card-brand--master {
	min-width: 31px;
	color: #1a1a1a;
	background: linear-gradient(90deg, rgba(235, 0, 27, 0.18), rgba(247, 158, 27, 0.2)), #fff;
}

.examprep-payment-card-brand--amex {
	min-width: 40px;
	color: #0c5f94;
}

.examprep-payment-card-brand--discover {
	min-width: 38px;
	color: #7a3b00;
}

.examprep-theme-shell.woocommerce-checkout #payment ul.payment_methods li label[for="payment_method_authorize_net_cim_credit_card"] .sv-wc-payment-gateway-card-icons,
.examprep-theme-shell.woocommerce-checkout #payment ul.payment_methods li label[for="payment_method_authorize_net_cim_credit_card"] img.sv-wc-payment-gateway-icon {
	display: none !important;
}

.examprep-theme-shell.woocommerce-checkout #payment ul.payment_methods li label[for="payment_method_authorize_net_cim_credit_card"] img:not(.sv-wc-payment-gateway-icon) {
	flex: 0 0 auto;
	width: 40px !important;
	height: 25px !important;
	margin-left: 0 !important;
	object-fit: contain;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods li.wc_payment_method input[type="radio"] {
	grid-column: 1;
	grid-row: 1;
	width: 18px;
	height: 18px;
	margin: 0.2rem 0 0;
	accent-color: #0c71c3;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment .payment_box {
	grid-column: 1 / -1;
	width: 100%;
	margin: 0.65rem 0 0;
	padding: 0.85rem 1rem;
	border-radius: 10px;
	background: #fff;
	color: #374151;
	font-size: 0.86rem;
	line-height: 1.5;
}

.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment .payment_box::before {
	display: none;
}

.examprep-theme-shell.woocommerce-checkout .payment_box.payment_method_authorize_net_cim_credit_card fieldset {
	min-width: 0;
	margin: 0.85rem 0 0;
	padding: 0;
	border: 0;
}

.examprep-theme-shell.woocommerce-checkout .payment_box.payment_method_authorize_net_cim_credit_card .form-row {
	float: none;
	width: 100%;
	margin: 0 0 0.75rem;
	padding: 0;
}

.examprep-theme-shell.woocommerce-checkout .payment_box.payment_method_authorize_net_cim_credit_card .form-row:last-child {
	margin-bottom: 0;
}

.examprep-theme-shell.woocommerce-checkout .payment_box.payment_method_authorize_net_cim_credit_card label {
	display: block;
	margin-bottom: 0.3rem;
	color: #1a1a1a;
	font-size: 0.86rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.3;
}

.examprep-theme-shell.woocommerce-checkout .payment_box.payment_method_authorize_net_cim_credit_card .woocommerce-input-wrapper {
	display: block;
	width: 100%;
}

.examprep-theme-shell.woocommerce-checkout #payment div.payment_box.payment_method_authorize_net_cim_credit_card input.input-text.js-sv-wc-payment-gateway-credit-card-form-input {
	display: block;
	width: 100% !important;
	min-height: 46px;
	padding: 0.68rem 0.85rem !important;
	border: 1.5px solid rgba(8, 41, 90, 0.16) !important;
	border-radius: 10px;
	background-color: #fff;
	background-image: none !important;
	background-position: 0 0 !important;
	background-repeat: no-repeat !important;
	background-size: 0 0 !important;
	color: #1a1a1a;
	font-size: 1rem !important;
	font-family: inherit;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0 !important;
	line-height: 1.3;
	box-shadow: none;
}

.examprep-theme-shell.woocommerce-checkout #payment div.payment_box.payment_method_authorize_net_cim_credit_card input.input-text.js-sv-wc-payment-gateway-credit-card-form-input:focus {
	border-color: #0c71c3;
	outline: none;
	box-shadow: 0 0 0 3px rgba(12, 113, 195, 0.18);
}

.examprep-checkout-place-order {
	margin: 0;
	padding: 0;
}

.examprep-checkout-place-order__reassurance {
	display: block;
	margin: 0.6rem 0 0;
	color: #6b7280;
	font-size: 0.78rem;
	line-height: 1.4;
	text-align: center;
}

.examprep-checkout-place-order__reassurance svg {
	display: inline-block;
	margin-right: 0.35rem;
	color: #047857;
	vertical-align: -0.18em;
}

.examprep-theme-shell.woocommerce-checkout #place_order,
.examprep-checkout-place-order__button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 100%;
	min-height: 54px;
	padding: 0.85rem 1.25rem;
	border: 0;
	border-radius: 14px;
	background: #c92227;
	color: #fff;
	font-size: 1.05rem;
	font-weight: 800;
	letter-spacing: 0.01em;
	text-transform: none;
	cursor: pointer;
	box-shadow: 0 10px 28px rgba(201, 34, 39, 0.32);
	transition: background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.examprep-theme-shell.woocommerce-checkout #place_order:hover,
.examprep-checkout-place-order__button:hover {
	background: #9f171c;
	color: #fff;
	box-shadow: 0 14px 36px rgba(159, 23, 28, 0.36);
}

.examprep-theme-shell.woocommerce-checkout #place_order:focus-visible,
.examprep-checkout-place-order__button:focus-visible {
	outline: 3px solid rgba(201, 34, 39, 0.4);
	outline-offset: 2px;
}

.examprep-theme-shell.woocommerce-cart .checkout-button {
	width: 100%;
	border-radius: 14px;
	background: #c92227;
	color: #fff;
	font-weight: 800;
	letter-spacing: 0.01em;
}

.examprep-theme-shell.woocommerce-cart .checkout-button:hover {
	background: #9f171c;
	color: #fff;
}

/* Trust + guarantee strip */

.examprep-checkout-summary__trust {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.75rem;
	align-items: center;
	justify-content: space-between;
	padding: 0.9rem 1.35rem;
	background: #f8fafc;
	border-top: 1px solid rgba(8, 41, 90, 0.08);
}

.examprep-checkout-summary__lock {
	display: inline-flex;
	gap: 0.4rem;
	align-items: center;
	color: #047857;
	font-size: 0.8rem;
	font-weight: 700;
}

.examprep-checkout-summary__methods {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.examprep-checkout-summary__methods li {
	padding: 0.18rem 0.5rem;
	border: 1px solid rgba(8, 41, 90, 0.14);
	border-radius: 6px;
	background: #fff;
	color: #4b5563;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.examprep-checkout-summary__privacy {
	padding: 0.85rem 1.35rem 0.95rem;
	background: #fafcff;
	color: #6b7280;
	border-top: 1px solid rgba(8, 41, 90, 0.08);
}

.examprep-checkout-summary__privacy p,
.examprep-checkout-summary__privacy .woocommerce-privacy-policy-text {
	margin: 0;
	color: #6b7280;
	font-size: 0.8rem;
	line-height: 1.5;
}

.examprep-checkout-summary__privacy a,
.examprep-checkout-summary__privacy .woocommerce-privacy-policy-link {
	color: #0c71c3;
	font-weight: 600;
	text-decoration: underline;
}

.examprep-checkout-summary__privacy a:hover,
.examprep-checkout-summary__privacy .woocommerce-privacy-policy-link:hover {
	color: #002e62;
}

.examprep-checkout-summary__guarantee {
	display: flex;
	gap: 0.7rem;
	align-items: flex-start;
	padding: 0.9rem 1.35rem 1.05rem;
	background: #f0fdf4;
	color: #065f46;
	border-top: 1px solid rgba(4, 120, 87, 0.12);
}

.examprep-checkout-summary__guarantee-icon {
	display: inline-flex;
	flex: 0 0 auto;
	margin-top: 0.1rem;
	color: #047857;
}

.examprep-checkout-summary__guarantee strong {
	display: block;
	color: #065f46;
	font-size: 0.85rem;
	font-weight: 800;
	margin-bottom: 0.15rem;
}

.examprep-checkout-summary__guarantee p {
	margin: 0;
	color: #065f46;
	font-size: 0.78rem;
	line-height: 1.45;
}

/* WooCommerce notices inside checkout */

.examprep-theme-shell.woocommerce-checkout .woocommerce-notices-wrapper {
	margin-bottom: 1rem;
}

.examprep-theme-shell.woocommerce-checkout .woocommerce-NoticeGroup-checkout {
	margin-bottom: 1rem;
}

/* Shop-as-client overrides: integrate visually as agent panel inside the billing card */

.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_field,
.examprep-theme-shell.woocommerce-checkout #billing_shop_as_client_create_user_field {
	grid-column: 1 / -1;
}

.examprep-theme-shell .examprep-hidden-field {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.examprep-theme-shell.woocommerce-checkout .examprep-zip-city-prompt {
	margin: -0.4rem 0 1rem;
	padding: 0.9rem 1rem;
	border: 1px solid rgba(31, 115, 201, 0.24);
	border-left: 5px solid #1f73c9;
	border-radius: 14px;
	background: #eef5ff;
	color: #08295a;
	box-shadow: 0 10px 28px rgba(8, 41, 90, 0.08);
}

.examprep-theme-shell.woocommerce-checkout .examprep-zip-city-prompt p {
	margin: 0 0 0.75rem;
	color: #08295a;
	font-weight: 700;
	line-height: 1.45;
}

.examprep-theme-shell.woocommerce-checkout .examprep-zip-city-prompt__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
}

.examprep-theme-shell.woocommerce-checkout .examprep-zip-city-prompt .button {
	min-height: 38px;
	border-radius: 12px;
	background: #1f73c9;
	color: #fff;
	font-weight: 800;
}

.examprep-theme-shell.woocommerce-checkout .examprep-zip-city-prompt .button:hover {
	background: #155da6;
	color: #fff;
}

.examprep-theme-shell.woocommerce-checkout .examprep-zip-city-prompt__keep {
	background: #fff !important;
	color: #08295a !important;
	border: 1px solid rgba(8, 41, 90, 0.2) !important;
}

.examprep-theme-shell.woocommerce-cart:not(.examprep-full-bleed-template) .woocommerce-cart-form,
.examprep-theme-shell.woocommerce-cart:not(.examprep-full-bleed-template) .cart-collaterals {
	padding: clamp(1rem, 2.5vw, 1.75rem);
}

@media (max-width: 1100px) {
	.examprep-checkout-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.examprep-checkout-summary {
		position: static;
	}

	.examprep-checkout-fields {
		grid-template-columns: 1fr;
	}

	.examprep-checkout-fields .form-row-first,
	.examprep-checkout-fields .form-row-last {
		grid-column: 1 / -1;
	}
}

@media (max-width: 520px) {
	.examprep-checkout-card__header {
		padding: 1rem 1rem 0;
	}

	.examprep-checkout-card__body {
		padding: 0.85rem 1rem 1rem;
	}

	.examprep-checkout-summary__header,
	.examprep-checkout-summary #order_review,
	.examprep-checkout-summary__trust,
	.examprep-checkout-summary__guarantee {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.examprep-checkout-item {
		grid-template-columns: 48px minmax(0, 1fr) auto;
	}

	.examprep-checkout-item__media {
		width: 48px;
		height: 48px;
	}
}

@media (max-width: 420px) {
	.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary #payment ul.payment_methods li.wc_payment_method {
		padding-right: 0.85rem;
		padding-left: 0.85rem;
	}

	.examprep-payment-card-brands {
		gap: 0.25rem;
	}

	.examprep-payment-card-brand {
		min-width: 30px;
		height: 21px;
		padding: 0 0.28rem;
		border-radius: 4px;
		font-size: 0.5rem;
		letter-spacing: 0.025em;
	}

	.examprep-payment-card-brand--master {
		min-width: 27px;
	}

	.examprep-payment-card-brand--amex {
		min-width: 34px;
	}

	.examprep-payment-card-brand--discover {
		min-width: 32px;
	}

	.examprep-theme-shell.woocommerce-checkout #payment ul.payment_methods li label[for="payment_method_authorize_net_cim_credit_card"] img:not(.sv-wc-payment-gateway-icon) {
		width: 34px !important;
		height: auto !important;
	}
}

.examprep-commerce-template {
	background: #f5f7fb;
}

.examprep-commerce-progress {
	padding: clamp(0.85rem, 1.7vw, 1.2rem) 0 clamp(0.8rem, 1.5vw, 1.1rem);
	background:
		linear-gradient(135deg, rgba(31, 115, 201, 0.2), rgba(8, 41, 90, 0) 58%),
		#08295a;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: 0 18px 38px rgba(8, 41, 90, 0.18);
}

.examprep-commerce-progress .progress-steps {
	display: flex;
	gap: 0;
	max-width: 760px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.examprep-commerce-progress .progress-step {
	position: relative;
	flex: 1 1 0;
	text-align: center;
	font-size: 0.86rem;
	font-weight: 800;
	letter-spacing: 0.01em;
}

/* Connector track, split into an incoming (left) and outgoing (right) half so
   the green "completed" fill can stop exactly at the current dot. The two halves
   meet at the column centre, under the 34px dot, so the seam is never visible. */
.examprep-commerce-progress .progress-step::before,
.examprep-commerce-progress .progress-step::after {
	content: "";
	position: absolute;
	top: 17px;
	z-index: 0;
	height: 2px;
	background: rgba(255, 255, 255, 0.24);
}

.examprep-commerce-progress .progress-step::before {
	left: 0;
	right: 50%;
}

.examprep-commerce-progress .progress-step::after {
	left: 50%;
	right: 0;
}

/* The incoming half turns green once you have reached this step (active or done);
   the outgoing half turns green only once this step itself is done. */
.examprep-commerce-progress .progress-step.active::before,
.examprep-commerce-progress .progress-step.done::before,
.examprep-commerce-progress .progress-step.done::after {
	background: rgba(85, 214, 107, 0.7);
}

.examprep-commerce-progress .progress-step:first-child::before,
.examprep-commerce-progress .progress-step:last-child::after {
	display: none;
}

.examprep-commerce-progress .progress-step__body,
.examprep-commerce-progress .progress-step__link {
	position: relative;
	z-index: 1;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	color: inherit;
	text-decoration: none;
}

.examprep-commerce-progress .progress-step__link:hover .step-label {
	color: #fff;
}

.examprep-commerce-progress .step-dot {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	margin: 0 auto 6px;
	border: 2px solid rgba(255, 255, 255, 0.38);
	border-radius: 50%;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0.07)),
		#11366f;
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.84rem;
	font-weight: 900;
	box-shadow:
		0 0 0 5px rgba(8, 41, 90, 0.98),
		inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.examprep-commerce-progress .progress-step.active .step-dot {
	border-color: #fff;
	background: #fff;
	color: #08295a;
	box-shadow:
		0 0 0 5px rgba(8, 41, 90, 0.98),
		0 0 0 9px rgba(255, 255, 255, 0.1),
		0 11px 26px rgba(0, 0, 0, 0.2);
}

.examprep-commerce-progress .progress-step.active .step-dot::after {
	content: "";
	position: absolute;
	inset: -10px;
	border: 2px solid rgba(255, 255, 255, 0.66);
	border-radius: inherit;
	animation: examprep-progress-current 2.35s ease-in-out infinite;
}

.examprep-commerce-progress .progress-step.done .step-dot {
	border-color: rgba(117, 232, 150, 0.95);
	background: #55d66b;
	color: #08295a;
	box-shadow:
		0 0 0 5px rgba(8, 41, 90, 0.98),
		inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.examprep-commerce-progress .progress-step .step-label {
	color: rgba(255, 255, 255, 0.72);
}

.examprep-commerce-progress .progress-step.active .step-label {
	color: #fff;
	font-weight: 900;
}

.examprep-commerce-progress .progress-step.done .step-label {
	color: rgba(255, 255, 255, 0.92);
}

@keyframes examprep-progress-current {
	0% {
		opacity: 0.68;
		transform: scale(0.86);
	}

	55%,
	100% {
		opacity: 0;
		transform: scale(1.28);
	}
}

@media (prefers-reduced-motion: reduce) {
	.examprep-commerce-progress .progress-step.active .step-dot::after {
		animation: none;
		opacity: 0.35;
		transform: none;
	}
}

.examprep-commerce-heading {
	max-width: 760px;
	margin: 0 0 clamp(1.25rem, 2.4vw, 2rem);
}

.examprep-commerce-heading h1,
.examprep-account-hero h1 {
	margin-bottom: var(--sp-2);
	font-size: clamp(2.1rem, 5vw, 4rem);
	letter-spacing: 0;
	line-height: 1;
}

.examprep-account-hero h1 {
	margin-bottom: var(--sp-3);
}

.examprep-commerce-template .examprep-breadcrumbs--commerce {
	margin-bottom: clamp(0.65rem, 1.2vw, 0.95rem);
}

.examprep-commerce-heading .section-eyebrow {
	margin-bottom: 6px;
}

.examprep-commerce-heading p:last-child {
	color: var(--color-text-muted);
	font-size: var(--font-size-lg);
}

.examprep-cart-section,
.examprep-checkout-section {
	padding-top: clamp(0.85rem, 1.8vw, 1.35rem);
}

.examprep-account-section {
	padding-top: clamp(2rem, 5vw, 4rem);
}

.examprep-cart-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
	gap: var(--sp-6);
	align-items: start;
}

.examprep-cart-main {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--sp-5);
	min-width: 0;
}

.examprep-cart-items,
.examprep-cart-summary-panel,
.examprep-account-content,
.examprep-account-login-card,
.examprep-account-support-card,
.examprep-account-section-card,
.examprep-account-card {
	border: 1px solid rgba(0, 46, 98, 0.12);
	border-radius: var(--radius-md);
	background: #fff;
	box-shadow: var(--shadow-card);
}

.examprep-cart-template .woocommerce-cart-form,
.examprep-cart-template .cart-collaterals,
.examprep-cart-template .cart_totals {
	float: none;
	width: auto;
}

.examprep-cart-main > .woocommerce-cart-form.examprep-cart-items {
	justify-self: stretch;
	width: auto;
	max-width: 100%;
}

.examprep-cart-items {
	min-width: 0;
	padding: clamp(1rem, 2vw, 1.5rem);
}

.examprep-cart-business-law-reminder {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--sp-4);
	align-items: center;
	margin-bottom: var(--sp-4);
	padding: var(--sp-4);
	color: var(--color-text);
	background:
		linear-gradient(135deg, rgba(12, 113, 195, 0.1), rgba(21, 128, 61, 0.08)),
		#fff;
	border: 1px solid rgba(12, 113, 195, 0.18);
	border-radius: var(--radius-md);
}

.examprep-cart-business-law-reminder strong {
	display: block;
	margin-bottom: 4px;
	color: var(--color-brand-primary);
	font-size: 1rem;
	font-weight: 900;
}

.examprep-cart-business-law-reminder p {
	margin: 0;
	color: var(--color-text-muted);
	font-size: var(--font-size-sm);
	line-height: 1.5;
}

.examprep-cart-business-law-reminder small {
	display: block;
	margin-top: 6px;
	color: var(--color-brand-primary);
	font-size: var(--font-size-xs);
	font-weight: 900;
	line-height: 1.4;
}

.examprep-cart-business-law-reminder__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-2);
	justify-content: flex-end;
	min-width: 220px;
}

.examprep-cart-business-law-reminder .btn {
	min-height: 44px;
	padding: 11px 14px;
	font-size: var(--font-size-xs);
}

.examprep-cart-items__header,
.examprep-cart-actions,
.examprep-account-dashboard__header,
.examprep-account-section-card__header {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-3);
	align-items: center;
	justify-content: space-between;
}

.examprep-cart-items__header {
	padding-bottom: var(--sp-4);
	border-bottom: 1px solid var(--color-border);
}

.examprep-cart-items__header h2,
.cart-summary h2,
.examprep-account-dashboard h2,
.examprep-account-section-card h3,
.examprep-account-card h3,
.examprep-account-login-card h2,
.examprep-account-support-card h2 {
	margin-bottom: var(--sp-2);
	font-size: clamp(1.15rem, 2vw, 1.35rem);
	letter-spacing: 0;
}

.examprep-cart-items__header p {
	color: var(--color-text-muted);
	font-size: var(--font-size-sm);
}

.examprep-cart-list {
	display: grid;
}

.examprep-cart-item {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr) minmax(110px, auto);
	gap: var(--sp-4);
	align-items: start;
	padding: var(--sp-4) 0;
	border-bottom: 1px solid var(--color-border);
}

.examprep-cart-item:last-child {
	border-bottom: 0;
}

.examprep-cart-item__image {
	width: 88px;
	aspect-ratio: 1;
	overflow: hidden;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	background: var(--color-surface-muted);
}

.examprep-cart-item__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.examprep-cart-item__body {
	display: grid;
	gap: var(--sp-2);
	min-width: 0;
}

.examprep-cart-item .cart-item-title {
	overflow-wrap: anywhere;
	color: var(--color-brand-primary);
	font-weight: var(--font-weight-semi);
	line-height: 1.35;
	text-decoration: none;
}

.examprep-cart-item .cart-item-title:hover {
	color: var(--color-brand-action);
	text-decoration: underline;
}

.examprep-cart-item__meta,
.examprep-cart-item__meta p,
.examprep-cart-item__meta dl,
.examprep-cart-item__price span,
.examprep-cart-item__price small {
	color: var(--color-text-muted);
	font-size: var(--font-size-sm);
}

.examprep-cart-item__meta dl {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 0 var(--sp-2);
	margin: 0;
}

.examprep-cart-item__meta dt,
.examprep-cart-item__meta dd,
.examprep-cart-item__meta p {
	margin: 0;
}

.examprep-cart-badges,
.examprep-cart-item__controls {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-2);
	align-items: center;
}

.examprep-cart-badges .badge {
	font-size: 0.72rem;
}

.examprep-cart-item__controls .quantity {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	overflow: hidden;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	background: #fff;
}

.examprep-cart-item__controls .qty {
	width: 72px;
	min-height: 40px;
	padding: 0 var(--sp-2);
	border: 0;
	text-align: center;
}

.examprep-cart-remove {
	color: var(--color-brand-accent);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-semi);
	text-decoration: underline;
}

.examprep-cart-remove:hover {
	color: #9f171c;
}

.examprep-cart-item__price {
	display: grid;
	gap: var(--sp-1);
	justify-items: end;
	text-align: right;
}

.examprep-cart-item__price strong,
.examprep-cart-totals-table .order-total td,
.examprep-order-total strong {
	color: var(--color-brand-primary);
	font-size: 1.1rem;
	font-weight: var(--font-weight-bold);
}

.examprep-cart-actions {
	padding-top: var(--sp-4);
	border-top: 1px solid var(--color-border);
}

.examprep-cart-actions .examprep-empty-cart-button {
	border-color: rgba(201, 34, 39, 0.28);
	background: #fff;
	color: #9f171c;
}

.examprep-cart-actions .examprep-empty-cart-button:hover,
.examprep-cart-actions .examprep-empty-cart-button:focus {
	border-color: rgba(201, 34, 39, 0.46);
	background: rgba(201, 34, 39, 0.08);
	color: #7f1116;
}

.examprep-cart-summary-panel {
	position: sticky;
	top: calc(var(--header-height) + 16px);
	padding: var(--sp-5);
}

.examprep-cart-summary-panel .cart-summary {
	border: 0;
	box-shadow: none;
	padding: 0;
	width: 100%;
}

.examprep-cart-totals-table,
.examprep-cart-totals-table tbody,
.examprep-cart-totals-table tr,
.examprep-cart-totals-table th,
.examprep-cart-totals-table td {
	display: block;
	border: 0;
}

.examprep-cart-totals-table {
	margin: 0;
}

.examprep-cart-totals-table tr {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--sp-3);
	align-items: start;
	padding: var(--sp-2) 0;
	font-size: var(--font-size-sm);
}

.examprep-theme-shell.woocommerce-cart .examprep-cart-summary-panel .examprep-cart-totals-table th,
.examprep-theme-shell.woocommerce-cart .examprep-cart-summary-panel .examprep-cart-totals-table td,
.examprep-cart-totals-table th,
.examprep-cart-totals-table td {
	min-width: 0;
	padding: 0;
	background: transparent;
	color: var(--color-text);
	text-align: right;
}

.examprep-cart-totals-table th {
	text-align: left;
	font-weight: var(--font-weight-normal);
}

.examprep-cart-totals-table .order-total {
	margin-top: var(--sp-2);
	padding-top: var(--sp-3);
	border-top: 2px solid var(--color-border);
}

.examprep-cart-summary-panel .examprep-cart-totals-table.shop_table_responsive tr td::before {
	display: none;
	content: none;
}

.examprep-cart-summary-panel .examprep-cart-totals-table.shop_table_responsive tr th {
	display: block;
}

.examprep-cart-totals-table .shipping {
	grid-template-columns: minmax(5rem, 0.45fr) minmax(8.75rem, 0.55fr);
}

.examprep-cart-totals-table .shipping td {
	justify-self: end;
	width: min(100%, 11rem);
	text-align: left;
}

.examprep-cart-summary-panel #shipping_method {
	display: grid;
	gap: 0.65rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.examprep-cart-summary-panel #shipping_method li {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	gap: 0.5rem;
	align-items: start;
	margin: 0;
	padding: 0;
	line-height: 1.35;
}

.examprep-cart-summary-panel #shipping_method input {
	width: 18px;
	height: 18px;
	margin: 0.1rem 0 0;
}

.examprep-cart-summary-panel #shipping_method label {
	margin: 0;
	color: var(--color-text);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-normal);
	line-height: 1.35;
}

.examprep-cart-summary-panel .woocommerce-shipping-destination {
	margin: var(--sp-3) 0 0;
	color: var(--color-text-muted);
	font-size: 0.82rem;
	line-height: 1.4;
}

.examprep-cart-summary-panel .shipping-calculator-button {
	display: inline-block;
	margin-top: var(--sp-2);
	font-size: 0.82rem;
	line-height: 1.35;
}

.examprep-cart-summary-panel .shipping-calculator-form {
	margin-top: var(--sp-3);
}

.examprep-cart-summary-panel .wc-proceed-to-checkout {
	padding: var(--sp-4) 0 0;
}

.examprep-theme-shell.woocommerce-cart .examprep-cart-summary-panel .checkout-button,
.examprep-cart-summary-panel .checkout-button,
.examprep-cart-summary-panel .button.checkout-button {
	display: flex;
	align-items: center;
	gap: var(--sp-2);
	justify-content: center;
	width: 100%;
	min-height: 50px;
	padding: 0.85rem 1rem;
	border-radius: var(--radius-md);
	background: var(--color-brand-action);
	color: #fff;
	font-size: 1rem;
	font-weight: var(--font-weight-bold);
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

.examprep-theme-shell.woocommerce-cart .examprep-cart-summary-panel .checkout-button:hover,
.examprep-cart-summary-panel .checkout-button:hover,
.examprep-cart-summary-panel .button.checkout-button:hover {
	background: #0860a8;
	color: #fff;
}

.examprep-secure-payments {
	display: grid;
	gap: var(--sp-2);
	margin-top: var(--sp-4);
	text-align: center;
}

.examprep-secure-payments > span,
.examprep-cart-guarantee,
.examprep-account-empty,
.text-muted {
	color: var(--color-text-muted);
	font-size: var(--font-size-sm);
}

.examprep-secure-payments div {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-2);
	justify-content: center;
}

.examprep-secure-payments div span {
	padding: 4px 8px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	color: var(--color-text-muted);
	font-size: 0.72rem;
	font-weight: var(--font-weight-bold);
}

.examprep-cart-coupon {
	display: grid;
	gap: var(--sp-2);
	margin-top: var(--sp-4);
	padding-top: var(--sp-4);
	border-top: 1px solid var(--color-border);
}

.examprep-cart-coupon label {
	color: var(--color-brand-primary);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-semi);
}

.examprep-cart-coupon div {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--sp-2);
}

.examprep-cart-coupon input,
.examprep-account-template input.input-text,
.examprep-account-template input[type="email"],
.examprep-account-template input[type="password"],
.examprep-account-template input[type="text"] {
	width: 100%;
	min-height: 42px;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	background: #fff;
}

.examprep-cart-guarantee {
	display: flex;
	gap: var(--sp-2);
	align-items: flex-start;
	margin-top: var(--sp-4);
}

.examprep-cart-guarantee svg {
	flex: 0 0 auto;
	margin-top: 3px;
	color: var(--color-brand-accent);
}

.examprep-cart-cross-sells {
	margin-top: var(--sp-5);
	padding: var(--sp-4);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	background: var(--color-surface-muted);
}

.examprep-cart-cross-sells h2 {
	font-size: 1rem;
}

.examprep-cart-cross-sells ul.products {
	display: flex;
	gap: var(--sp-3);
	overflow-x: auto;
	margin: 0;
	padding: 0 0 var(--sp-2);
	scroll-snap-type: x proximity;
}

.examprep-cart-cross-sells ul.products li.product {
	flex: 0 0 220px;
	width: 220px;
	margin: 0;
	scroll-snap-align: start;
}

.examprep-cart-cross-sells .examprep-product-card__image {
	min-height: 112px;
	max-height: 140px;
}

.examprep-cart-cross-sells .examprep-product-card__summary {
	display: none;
}

.examprep-cart-empty {
	max-width: 720px;
	margin: 0 auto;
}

.examprep-cart-empty .cart-empty {
	margin-bottom: var(--sp-4);
}

.examprep-account-hero {
	padding: clamp(1.75rem, 4vw, 2.5rem) 0;
	color: #fff;
	background:
		linear-gradient(135deg, rgba(217, 33, 34, 0.16), transparent 42%),
		linear-gradient(135deg, #001a3d, #002e62 64%, #0c71c3);
}

.examprep-account-hero .examprep-breadcrumbs,
.examprep-account-hero .examprep-breadcrumbs a,
.examprep-account-hero .examprep-breadcrumbs span,
.examprep-account-hero .section-eyebrow,
.examprep-account-hero h1 {
	color: #fff;
}

.examprep-account-hero__inner {
	display: flex;
	gap: var(--sp-4);
	align-items: center;
	margin-top: var(--sp-4);
}

.examprep-account-avatar {
	display: grid;
	flex: 0 0 56px;
	width: 56px;
	height: 56px;
	place-items: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
	font-weight: 900;
}

.examprep-account-hero p:last-child {
	color: rgba(255, 255, 255, 0.78);
}

.examprep-account-layout {
	display: grid;
	grid-template-columns: 240px minmax(0, 1fr);
	gap: var(--sp-6);
	align-items: start;
}

.woocommerce-MyAccount-navigation.account-nav {
	position: sticky;
	top: calc(var(--header-height) + 16px);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	background: #fff;
	box-shadow: var(--shadow-card);
	overflow: hidden;
}

.account-nav__link {
	display: flex;
	gap: var(--sp-3);
	align-items: center;
	padding: var(--sp-3) var(--sp-4);
	border-bottom: 1px solid var(--color-border);
	color: var(--color-text);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-semi);
	text-decoration: none;
}

.account-nav__link:last-child {
	border-bottom: 0;
}

.account-nav__link svg {
	width: 16px;
	height: 16px;
	flex: 0 0 auto;
	color: var(--color-text-muted);
}

.account-nav__link:hover,
.account-nav__link.active {
	background: #f0f7ff;
	color: var(--color-brand-action);
}

.account-nav__link:hover svg,
.account-nav__link.active svg {
	color: var(--color-brand-action);
}

.account-nav__link--logout {
	color: var(--color-brand-accent);
}

.account-nav__link--logout svg {
	color: var(--color-brand-accent);
}

.examprep-account-content {
	padding: clamp(1rem, 2.4vw, 1.5rem);
}

.examprep-account-dashboard {
	display: grid;
	gap: var(--sp-5);
}

.examprep-account-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--sp-3);
}

.examprep-account-stats article {
	padding: var(--sp-4);
	border-radius: var(--radius-md);
	background: var(--color-surface-muted);
	text-align: center;
}

.examprep-account-stats strong {
	display: block;
	color: var(--color-brand-primary);
	font-size: 1.8rem;
	line-height: 1;
}

.examprep-account-stats span {
	color: var(--color-text-muted);
	font-size: var(--font-size-sm);
}

.examprep-account-card-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--sp-4);
}

.examprep-account-card,
.examprep-account-section-card {
	padding: var(--sp-5);
}

.examprep-account-card--support {
	background: #f0f7ff;
	border-color: rgba(12, 113, 195, 0.26);
}

.examprep-account-card--support a:not(.btn) {
	color: var(--color-brand-primary);
	font-weight: var(--font-weight-bold);
}

.examprep-order-list,
.examprep-download-list {
	display: grid;
}

.order-row,
.examprep-download-row {
	display: grid;
	grid-template-columns: minmax(92px, 0.35fr) minmax(0, 1fr) auto;
	gap: var(--sp-4);
	align-items: center;
	padding: var(--sp-4) 0;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-text-muted);
	font-size: var(--font-size-sm);
}

.order-row:last-child,
.examprep-download-row:last-child {
	border-bottom: 0;
}

.order-row strong,
.examprep-download-row span,
.examprep-order-number {
	display: block;
	color: var(--color-brand-primary);
	font-weight: var(--font-weight-semi);
}

.examprep-order-total {
	display: grid;
	gap: var(--sp-1);
	justify-items: end;
	text-align: right;
}

.examprep-account-empty {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-3);
	align-items: center;
	justify-content: space-between;
}

.examprep-account-quick-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--sp-3);
}

.examprep-account-quick-links a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 0 var(--sp-3);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	background: #fff;
	font-weight: var(--font-weight-semi);
	text-decoration: none;
}

.examprep-account-login-shell {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.42fr);
	gap: var(--sp-5);
	align-items: start;
}

.examprep-account-login-shell.has-registration {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.examprep-account-login-shell.has-registration .examprep-account-support-card {
	grid-column: 1 / -1;
}

.examprep-account-login-card,
.examprep-account-support-card {
	padding: var(--sp-5);
}

.examprep-account-login-card form {
	display: grid;
	gap: var(--sp-3);
	margin-top: var(--sp-4);
}

.examprep-account-login-card .form-row {
	margin: 0;
}

.examprep-account-template label {
	color: var(--color-brand-primary);
	font-weight: var(--font-weight-semi);
}

.examprep-login-actions {
	display: grid;
	gap: var(--sp-3);
}

.examprep-account-support-card {
	background: var(--color-surface-muted);
}

.examprep-account-template .woocommerce-notices-wrapper,
.examprep-cart-template .woocommerce-notices-wrapper {
	margin-bottom: var(--sp-4);
}

@media (max-width: 1000px) {
	.examprep-cart-layout,
	.examprep-account-layout,
	.examprep-account-login-shell,
	.examprep-account-login-shell.has-registration {
		grid-template-columns: 1fr;
	}

	.examprep-cart-summary-panel,
	.woocommerce-MyAccount-navigation.account-nav {
		position: static;
	}

	.examprep-account-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.examprep-commerce-progress .progress-steps {
		max-width: none;
	}

	.examprep-commerce-progress .step-label {
		font-size: 0.78rem;
	}

	.examprep-cart-business-law-reminder {
		grid-template-columns: 1fr;
	}

	.examprep-cart-business-law-reminder__actions {
		justify-content: stretch;
	}

	.examprep-cart-business-law-reminder .btn {
		flex: 1 1 160px;
	}

	.examprep-cart-item {
		grid-template-columns: 72px minmax(0, 1fr);
	}

	.examprep-cart-item__image {
		width: 72px;
	}

	.examprep-cart-item__price {
		grid-column: 1 / -1;
		justify-items: start;
		text-align: left;
	}

	.examprep-cart-coupon div,
	.examprep-account-card-grid,
	.examprep-account-stats,
	.order-row,
	.examprep-download-row {
		grid-template-columns: 1fr;
	}

	.examprep-order-total {
		justify-items: start;
		text-align: left;
	}

	.examprep-account-hero__inner {
		align-items: flex-start;
	}
}

/* -------------------------------------------------------------------------
 * Payment methods: ensure Authorize.Net credit card renders as the default
 * radio, and PayPal sits below it with the Pay Later messaging banner
 * (.ppcp-messages) inside its expanded payment_box. The JS in
 * paypal-messaging.js relocates the banner; the rules below polish how it
 * looks once inside the PayPal radio's content area.
 * ------------------------------------------------------------------------- */

.examprep-theme-shell.woocommerce-checkout .payment_box.payment_method_ppcp-gateway .ppcp-messages {
	display: block;
	margin: 0.25rem 0 1rem;
	padding: 0.65rem 0.75rem;
	background: #f3f6fb;
	border: 1px solid #d6deec;
	border-radius: 12px;
}

/* Suppress PPCP's default "move .ppcp-messages above #payment" treatment
 * — if the SDK ever races our JS and the banner ends up above the
 * payment list, hide it until our JS catches up. The banner is only
 * allowed to appear when it's nested inside the PayPal radio's
 * payment_box (that selector is intentionally NOT in this list). */
.examprep-theme-shell.woocommerce-checkout #payment ~ .ppcp-messages,
.examprep-theme-shell.woocommerce-checkout > .ppcp-messages,
.examprep-theme-shell.woocommerce-checkout .examprep-checkout-summary > .ppcp-messages,
.examprep-theme-shell.woocommerce-checkout .woocommerce-checkout-review-order > .ppcp-messages,
.examprep-theme-shell.woocommerce-checkout .woocommerce-checkout-review-order .ppcp-messages:not(.payment_box.payment_method_ppcp-gateway .ppcp-messages) {
	display: none;
}

/* Hide any stray "Debit & Credit Cards" PPCP smart-button wrapper that
 * might sneak through in the PayPal payment_box — we don't accept PPCP's
 * card flow, so any rogue card-button container under .payment_box should
 * stay invisible until/unless explicitly allowed. */
.examprep-theme-shell.woocommerce-checkout .payment_box.payment_method_ppcp-gateway #ppc-button-ppcp-card-button-gateway {
	display: none !important;
}

/* ===== Cart page (parallel pass) =====
 * Scoped strictly to .woocommerce-cart so checkout/account (which share this
 * stylesheet) are untouched. Fixes the action-button hierarchy: the global
 * `.examprep-theme-shell .button` rule (solid action-blue, 0-2-0) was beating
 * `.btn-secondary` and the destructive `.examprep-empty-cart-button` override,
 * so "Update Cart" and "Empty Cart" both rendered as solid-blue primaries that
 * competed with the real "Proceed to checkout" CTA. We restore a clear order:
 * one solid primary (Proceed to checkout) + a secondary "Update Cart" + a
 * subtle destructive "Empty Cart", and demote the coupon "Apply" button to
 * secondary so the summary panel has a single primary action.
 */

/* "Update Cart" — secondary / outline (utility action, not a primary CTA). */
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions button[name="update_cart"].button,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions button[name="update_cart"].btn {
	color: var(--color-brand-action);
	background: #fff;
	border: 2px solid var(--color-brand-action);
}

.examprep-theme-shell.woocommerce-cart .examprep-cart-actions button[name="update_cart"].button:hover,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions button[name="update_cart"].button:focus-visible,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions button[name="update_cart"].btn:hover,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions button[name="update_cart"].btn:focus-visible {
	color: #fff;
	background: var(--color-brand-action);
	border-color: var(--color-brand-action);
}

/* "Empty Cart" — subtle destructive (make the intended white/red treatment win
 * over the global solid-blue `.button` rule). */
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions .examprep-empty-cart-button.button,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions .examprep-empty-cart-button.btn {
	color: #9f171c;
	background: #fff;
	border: 2px solid rgba(201, 34, 39, 0.32);
}

.examprep-theme-shell.woocommerce-cart .examprep-cart-actions .examprep-empty-cart-button.button:hover,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions .examprep-empty-cart-button.button:focus-visible,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions .examprep-empty-cart-button.btn:hover,
.examprep-theme-shell.woocommerce-cart .examprep-cart-actions .examprep-empty-cart-button.btn:focus-visible {
	color: #7f1116;
	background: rgba(201, 34, 39, 0.08);
	border-color: rgba(201, 34, 39, 0.5);
}

/* Coupon "Apply" — secondary so the summary panel keeps a single solid primary
 * ("Proceed to checkout"). */
.examprep-theme-shell.woocommerce-cart .examprep-cart-coupon button[name="apply_coupon"].button,
.examprep-theme-shell.woocommerce-cart .examprep-cart-coupon button[name="apply_coupon"].btn {
	color: var(--color-brand-action);
	background: #fff;
	border: 2px solid var(--color-brand-action);
}

.examprep-theme-shell.woocommerce-cart .examprep-cart-coupon button[name="apply_coupon"].button:hover,
.examprep-theme-shell.woocommerce-cart .examprep-cart-coupon button[name="apply_coupon"].button:focus-visible,
.examprep-theme-shell.woocommerce-cart .examprep-cart-coupon button[name="apply_coupon"].btn:hover,
.examprep-theme-shell.woocommerce-cart .examprep-cart-coupon button[name="apply_coupon"].btn:focus-visible {
	color: #fff;
	background: var(--color-brand-action);
	border-color: var(--color-brand-action);
}
