/*
 * Commerce surfaces — COMMERCE-W3 (docs/commerce/WEB_V1_COMMERCE_W3_UI.md): cart, checkout, order
 * confirmation, login / registration / password recovery and My Account.
 * Loaded only on those surfaces (inc/commerce.php) and scoped to body.smq-commerce-surface, so no rule
 * here can reach an editorial page. Tokens from tokens.css only: no new colour, font or radius. It dresses
 * WooCommerce's own markup (classic account templates and the Cart / Checkout blocks) inside the existing
 * .smq-page-hero + .smq-page-section page system; it does not restructure it.
 * Contrast (DS-A11Y-01): text is navy-950 / navy-700 on white or gray-50; filled buttons are white on
 * blue-interactive-strong (5.13:1); red and green are only ever borders / markers, never text.
 */

/* ---- Page frame ------------------------------------------------------------------------------- */
.smq-commerce-hero.smq-page-hero {
	padding: var(--smq-space-6) 0 var(--smq-space-5);
}
.smq-commerce-hero .smq-page-hero-inner {
	width: min(1120px, calc(100% - 48px));
	max-width: none;
}
.smq-commerce-hero .smq-page-hero-title {
	margin-bottom: var(--smq-space-3);
}
.smq-commerce-hero .smq-page-hero-lead {
	margin-bottom: 0;
}
.smq-page-section.smq-commerce-section {
	padding: var(--smq-space-5) 0 var(--smq-space-7);
}
.smq-commerce-inner {
	width: min(1120px, calc(100% - 48px));
	margin-inline: auto;
	font-family: var(--smq-font-text);
	color: var(--smq-navy-950);
}

/* WooCommerce caps its wrapper at 1000px in block themes; the commerce column is the only width here. */
.smq-commerce-surface main .smq-commerce-inner .woocommerce {
	max-width: none;
}

/* Purchase steps (hero, navy surface). The current step is told by aria-current and weight, not colour alone. */
.smq-commerce-steps {
	display: flex;
	flex-wrap: wrap;
	gap: var(--smq-space-2) var(--smq-space-4);
	list-style: none;
	margin: 0;
	padding: 0;
	counter-reset: smq-step;
	font-family: var(--smq-font-text);
	font-size: 0.9rem;
	color: var(--smq-gray-400);
}
.smq-commerce-step {
	counter-increment: smq-step;
}
.smq-commerce-step::before {
	content: counter(smq-step) ". ";
	font-family: var(--smq-font-mono);
}
.smq-commerce-step.is-done {
	color: var(--smq-gray-200);
}
.smq-commerce-step.is-current {
	color: var(--smq-white);
	font-weight: 600;
	border-bottom: 2px solid var(--smq-blue-interactive);
	padding-bottom: 2px;
}

/* ---- Shared text, links, headings -------------------------------------------------------------- */
.smq-commerce-surface .smq-commerce-inner h2,
.smq-commerce-surface .woocommerce h2,
.smq-commerce-surface .woocommerce h3 {
	font-family: var(--smq-font-display);
	font-weight: 700;
	line-height: 1.25;
	color: var(--smq-navy-950);
	margin: 0 0 var(--smq-space-3);
}
.smq-commerce-surface .smq-commerce-inner h2,
.smq-commerce-surface .woocommerce h2 {
	font-size: 1.35rem;
}
.smq-commerce-surface .woocommerce h3 {
	font-size: 1.1rem;
}
.smq-commerce-surface .smq-commerce-inner a,
.smq-commerce-surface .woocommerce a {
	color: var(--smq-blue-interactive-strong);
	text-underline-offset: 3px;
}

/* ---- Buttons (classic .button and block buttons) ------------------------------------------------ */
.smq-commerce-surface .woocommerce a.button,
.smq-commerce-surface .woocommerce button.button,
.smq-commerce-surface .woocommerce .woocommerce-button,
.smq-commerce-surface .smq-commerce-inner .wc-block-components-button:not(.is-link),
.smq-commerce-surface .smq-commerce-inner a.smq-commerce-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px var(--smq-space-4);
	border: 0;
	border-radius: 4px;
	background: var(--smq-blue-interactive-strong);
	color: var(--smq-white);
	font-family: var(--smq-font-text);
	font-weight: 600;
	font-size: 0.95rem;
	line-height: 1.3;
	text-decoration: none;
	cursor: pointer;
	transition: filter 0.15s ease;
}
.smq-commerce-surface .woocommerce a.button:hover,
.smq-commerce-surface .woocommerce button.button:hover,
.smq-commerce-surface .woocommerce .woocommerce-button:hover,
.smq-commerce-surface .smq-commerce-inner .wc-block-components-button:not(.is-link):hover,
.smq-commerce-surface .smq-commerce-inner a.smq-commerce-button:hover {
	filter: brightness(0.9);
	color: var(--smq-white);
}
/* Same two-tone focus indicator as the shared CTA primitive (DS-A11Y-01). */
.smq-commerce-surface .woocommerce a.button:focus-visible,
.smq-commerce-surface .woocommerce button.button:focus-visible,
.smq-commerce-surface .woocommerce .woocommerce-button:focus-visible,
.smq-commerce-surface .smq-commerce-inner .wc-block-components-button:not(.is-link):focus-visible,
.smq-commerce-surface .smq-commerce-inner a.smq-commerce-button:focus-visible {
	outline: 2px solid var(--smq-white);
	outline-offset: 2px;
	box-shadow: 0 0 0 2px var(--smq-navy-950);
}
.smq-commerce-surface .woocommerce button.button:disabled,
.smq-commerce-surface .smq-commerce-inner .wc-block-components-button:disabled {
	background: var(--smq-gray-600);
	cursor: not-allowed;
}

/* ---- Forms (login, registration, recovery, account data, addresses) ------------------------------ */
.smq-commerce-surface .woocommerce form.woocommerce-form,
.smq-commerce-surface .woocommerce form.woocommerce-ResetPassword,
.smq-commerce-surface .woocommerce form.woocommerce-EditAccountForm,
.smq-commerce-surface .woocommerce .woocommerce-address-fields {
	max-width: 520px;
	margin: 0 0 var(--smq-space-5);
	padding: 0;
	border: 0;
}
.smq-commerce-surface .woocommerce form .form-row {
	margin: 0 0 20px;
	padding: 0;
}
.smq-commerce-surface .woocommerce form .form-row label {
	display: block;
	margin-bottom: 6px;
	font-weight: 600;
	font-size: 0.95rem;
	line-height: 1.4;
	color: var(--smq-navy-950);
}
.smq-commerce-surface .woocommerce form .form-row label.woocommerce-form__label-for-checkbox {
	display: inline-flex;
	align-items: center;
	gap: var(--smq-space-2);
	margin: 0 var(--smq-space-3) var(--smq-space-3) 0;
	font-weight: 400;
}
.smq-commerce-surface .woocommerce form .form-row br {
	display: none;
}
.smq-commerce-surface .woocommerce form .form-row .required {
	color: var(--smq-navy-950);
	text-decoration: none;
}
.smq-commerce-surface .woocommerce form .input-text,
.smq-commerce-surface .woocommerce form select,
.smq-commerce-surface .woocommerce form textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 48px;
	padding: 12px 14px;
	border: 1px solid var(--smq-gray-400);
	border-radius: 4px;
	background: var(--smq-white);
	color: var(--smq-navy-950);
	font-family: var(--smq-font-text);
	font-size: 1rem;
	line-height: 1.4;
}
.smq-commerce-surface .woocommerce form .woocommerce-invalid .input-text,
.smq-commerce-surface .woocommerce form .input-text[aria-invalid="true"] {
	border-color: var(--smq-red-500);
	box-shadow: inset 3px 0 0 var(--smq-red-500);
}
.smq-commerce-surface .woocommerce form fieldset {
	margin: var(--smq-space-4) 0;
	padding: var(--smq-space-3) var(--smq-space-3) 0;
	border: 1px solid var(--smq-gray-200);
}
.smq-commerce-surface .woocommerce form legend {
	padding: 0 var(--smq-space-2);
	font-weight: 600;
}
.smq-commerce-surface .woocommerce .woocommerce-LostPassword {
	margin: 0;
	font-size: 0.95rem;
}
/* Login + registration side by side when the store offers both; stacked under 768px. */
.smq-commerce-surface .woocommerce .u-columns.col2-set {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--smq-space-6);
}
.smq-commerce-surface .woocommerce .u-columns.col2-set::before,
.smq-commerce-surface .woocommerce .u-columns.col2-set::after {
	content: none;
}
.smq-commerce-surface .woocommerce .u-columns.col2-set > .u-column1,
.smq-commerce-surface .woocommerce .u-columns.col2-set > .u-column2 {
	float: none;
	width: auto;
}

/* Context line shown when the visitor is sent here from the checkout. */
.smq-commerce-context {
	margin: 0 0 var(--smq-space-5);
	padding: var(--smq-space-3) var(--smq-space-4);
	background: var(--smq-gray-50);
	border-left: 4px solid var(--smq-blue-brand);
	line-height: 1.6;
}
.smq-commerce-context p {
	margin: 0;
}
.smq-commerce-context .smq-commerce-context-title {
	margin-bottom: var(--smq-space-1);
	font-weight: 600;
}

/* Legal slots: W4's text reads as body copy; an unresolved slot is unmistakably a placeholder. */
.smq-legal-slot {
	margin: 0 0 var(--smq-space-3);
	font-size: 0.9rem;
	line-height: 1.6;
	color: var(--smq-navy-700);
}
.smq-legal-slot--pending {
	padding: var(--smq-space-2) var(--smq-space-3);
	border: 1px dashed var(--smq-gray-600);
	font-family: var(--smq-font-mono);
	font-size: 0.8rem;
}
.smq-legal-slot a,
.smq-legal-check-text a {
	color: var(--smq-blue-brand);
	text-decoration: underline;
	overflow-wrap: anywhere;
}

/* A legal slot the visitor ticks: the whole row is the target, the box never shrinks, the text wraps. */
.smq-legal-check {
	margin: 0 0 var(--smq-space-4);
}
.smq-legal-check-label {
	display: flex;
	align-items: flex-start;
	gap: var(--smq-space-2);
	min-height: 48px;
	line-height: 1.6;
	cursor: pointer;
}
.smq-legal-check-input {
	flex: 0 0 auto;
	width: 1.25rem;
	height: 1.25rem;
	margin: 0.2rem 0 0;
}
.smq-legal-check-text {
	min-width: 0;
	overflow-wrap: anywhere;
}

/* Summary printed above the Cart and Checkout blocks: body-size copy, read before the payment button. */
.smq-commerce-legal {
	margin: 0 0 var(--smq-space-5);
	padding: var(--smq-space-3) var(--smq-space-4);
	background: var(--smq-gray-50);
	border-left: 4px solid var(--smq-navy-700);
}
.smq-commerce-legal .smq-legal-slot {
	margin: 0;
	font-size: 1rem;
	overflow-wrap: anywhere;
}

/* ---- Notices and errors (classic and block notices) ---------------------------------------------- */
.smq-commerce-surface .woocommerce-error,
.smq-commerce-surface .woocommerce-info,
.smq-commerce-surface .woocommerce-message,
.smq-commerce-surface .wc-block-components-notice-banner {
	margin: 0 0 var(--smq-space-4);
	padding: var(--smq-space-3) var(--smq-space-4);
	border: 1px solid var(--smq-gray-200);
	border-left: 4px solid var(--smq-blue-brand);
	border-radius: 0;
	background: var(--smq-gray-50);
	color: var(--smq-navy-950);
	font-family: var(--smq-font-text);
	font-size: 0.95rem;
	line-height: 1.6;
	list-style: none;
}
.smq-commerce-surface .woocommerce-error,
.smq-commerce-surface .wc-block-components-notice-banner.is-error {
	border-left-color: var(--smq-red-500);
}
.smq-commerce-surface .woocommerce-message,
.smq-commerce-surface .wc-block-components-notice-banner.is-success {
	border-left-color: var(--smq-green-500);
}
.smq-commerce-surface .woocommerce-error::before,
.smq-commerce-surface .woocommerce-info::before,
.smq-commerce-surface .woocommerce-message::before {
	content: none;
}
.smq-commerce-surface .wc-block-components-notice-banner a,
.smq-commerce-surface .woocommerce-error a,
.smq-commerce-surface .woocommerce-info a,
.smq-commerce-surface .woocommerce-message a {
	color: var(--smq-blue-interactive-strong);
}
.smq-commerce-surface .wc-block-components-validation-error {
	color: var(--smq-navy-950);
	font-size: 0.9rem;
}
.smq-commerce-surface .wc-block-components-validation-error > p {
	padding-left: var(--smq-space-2);
	border-left: 3px solid var(--smq-red-500);
}

/* ---- My Account layout ----------------------------------------------------------------------------- */
.smq-commerce-surface--account .woocommerce::after {
	content: "";
	display: table;
	clear: both;
}
.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-navigation {
	float: left;
	width: 240px;
}
.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	margin-left: 288px;
	line-height: 1.65;
}
.smq-commerce-surface--account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid var(--smq-gray-200);
}
.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-navigation li {
	margin: 0;
	padding: 0;
}
.smq-commerce-surface--account .woocommerce-MyAccount-navigation li + li {
	border-top: 1px solid var(--smq-gray-200);
}
.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-navigation a {
	display: block;
	min-height: 48px;
	box-sizing: border-box;
	padding: 12px var(--smq-space-3);
	color: var(--smq-navy-950);
	font-weight: 500;
	text-decoration: none;
}
.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-navigation a:hover {
	background: var(--smq-gray-50);
}
.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-navigation .is-active a {
	background: var(--smq-gray-50);
	box-shadow: inset 4px 0 0 var(--smq-blue-interactive-strong);
	font-weight: 700;
	text-decoration: none;
}

/* Summary: greeting, accesses, shortcuts. */
.smq-account-greeting {
	margin: 0 0 var(--smq-space-1);
	font-size: 1.1rem;
}
.smq-account-intro {
	margin: 0 0 var(--smq-space-5);
	color: var(--smq-navy-700);
}
.smq-account-access {
	display: grid;
	gap: var(--smq-space-4);
	margin: 0 0 var(--smq-space-5);
}
.smq-account-group {
	padding: var(--smq-space-4);
	border: 1px solid var(--smq-gray-200);
	background: var(--smq-white);
}
.smq-account-group:empty {
	display: none;
}
.smq-account-group ul {
	margin: 0;
	padding-left: var(--smq-space-4);
}
.smq-account-group li {
	margin: 0 0 var(--smq-space-2);
}
.smq-account-group p:last-child {
	margin-bottom: 0;
}
.smq-account-group .smq-account-items {
	list-style: none;
	padding: 0;
	display: grid;
	gap: var(--smq-space-3);
}
.smq-account-item {
	margin: 0;
	padding: var(--smq-space-3);
	background: var(--smq-gray-50);
}
.smq-account-item p {
	margin: 0 0 var(--smq-space-1);
}
.smq-account-item-title {
	font-weight: 600;
}
/* Status: always a text label; the marker only reinforces it. */
.smq-account-status {
	padding-left: var(--smq-space-2);
	border-left: 3px solid var(--smq-gray-600);
	font-size: 0.95rem;
}
.smq-account-status-label {
	color: var(--smq-navy-700);
}
.smq-account-status--active {
	border-left-color: var(--smq-green-500);
}
.smq-account-status--pending_payment,
.smq-account-status--pending_fulfillment {
	border-left-color: var(--smq-blue-brand);
}
.smq-account-status--attention {
	border-left-color: var(--smq-red-500);
}
/* A field the account asks the customer for (course delivery: the Google account). */
.smq-account-item-form {
	display: grid;
	gap: var(--smq-space-1);
	max-width: 32rem;
	margin: var(--smq-space-2) 0;
}
.smq-account-item-form label {
	font-weight: 600;
	font-size: 0.95rem;
}
.smq-account-item-form input[type="email"] {
	width: 100%;
	padding: var(--smq-space-2);
	border: 1px solid var(--smq-gray-600);
	font: inherit;
}
.smq-account-item-form .button {
	justify-self: start;
}
.smq-account-item-form-help {
	color: var(--smq-navy-700);
	font-size: 0.9rem;
}
.smq-account-item-detail,
.smq-account-empty {
	color: var(--smq-navy-700);
	font-size: 0.95rem;
}
.smq-account-shortcuts ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--smq-space-2) var(--smq-space-4);
	list-style: none;
	margin: 0;
	padding: var(--smq-space-3) 0 0;
	border-top: 1px solid var(--smq-gray-200);
}
.smq-account--inactive {
	max-width: 760px;
	line-height: 1.7;
}

/* ---- Tables: orders, order detail, classic totals ------------------------------------------------ */
.smq-commerce-surface .woocommerce table.shop_table {
	width: 100%;
	margin: 0 0 var(--smq-space-5);
	border: 1px solid var(--smq-gray-200);
	border-radius: 0;
	border-collapse: collapse;
	font-size: 0.95rem;
}
.smq-commerce-surface .woocommerce table.shop_table th,
.smq-commerce-surface .woocommerce table.shop_table td {
	padding: 12px var(--smq-space-3);
	border-top: 1px solid var(--smq-gray-200);
	text-align: left;
	vertical-align: middle;
}
.smq-commerce-surface .woocommerce table.shop_table thead th {
	border-top: 0;
	background: var(--smq-gray-50);
	font-weight: 600;
}
.smq-commerce-surface .woocommerce table.shop_table .button {
	min-height: 40px;
	padding: 8px var(--smq-space-3);
}
.smq-commerce-surface .woocommerce .woocommerce-customer-details address {
	padding: var(--smq-space-3);
	border: 1px solid var(--smq-gray-200);
	border-radius: 0;
	font-style: normal;
	line-height: 1.6;
}
.smq-commerce-surface .woocommerce mark {
	background: none;
	color: inherit;
	font-weight: 600;
}

/* ---- Cart and Checkout blocks ---------------------------------------------------------------------- */
.smq-commerce-surface .wp-block-woocommerce-cart,
.smq-commerce-surface .wp-block-woocommerce-checkout {
	font-family: var(--smq-font-text);
	color: var(--smq-navy-950);
}
.smq-commerce-surface .wc-block-components-product-name {
	color: var(--smq-navy-950);
	font-weight: 600;
	text-decoration: none;
}
.smq-commerce-surface .wc-block-components-title,
.smq-commerce-surface .wc-block-components-checkout-step__title,
.smq-commerce-surface .wc-block-cart__totals-title,
.smq-commerce-surface .wc-block-components-checkout-order-summary__title-text {
	font-family: var(--smq-font-display);
	font-weight: 700;
	color: var(--smq-navy-950);
}
.smq-commerce-surface .wc-block-components-sidebar,
.smq-commerce-surface .wc-block-components-order-summary {
	font-size: 0.95rem;
}
.smq-commerce-surface .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.smq-commerce-surface .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-weight: 700;
}
.smq-commerce-surface .wc-block-components-text-input input,
.smq-commerce-surface .wc-blocks-components-select .wc-blocks-components-select__select,
.smq-commerce-surface .wc-block-components-textarea {
	border-color: var(--smq-gray-400);
	border-radius: 4px;
	color: var(--smq-navy-950);
	font-family: var(--smq-font-text);
}
.smq-commerce-surface .wc-block-components-text-input.has-error input {
	border-color: var(--smq-red-500);
}
.smq-commerce-surface .wc-block-cart__submit-button,
.smq-commerce-surface .wc-block-components-checkout-place-order-button {
	width: 100%;
}
.smq-commerce-surface .wc-block-components-button.is-link,
.smq-commerce-surface .wc-block-cart-item__remove-link,
.smq-commerce-surface .wc-block-components-checkout-return-to-cart-button {
	color: var(--smq-blue-interactive-strong);
}

/* Empty cart and "what happens next" on the order confirmation. */
.smq-commerce-empty,
.smq-commerce-next {
	max-width: 760px;
	margin: 0 0 var(--smq-space-5);
	padding: var(--smq-space-4);
	border: 1px solid var(--smq-gray-200);
	background: var(--smq-gray-50);
	line-height: 1.65;
}
.smq-commerce-empty p,
.smq-commerce-next p {
	margin: 0 0 var(--smq-space-3);
}
.smq-commerce-empty-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--smq-space-2) var(--smq-space-4);
	list-style: none;
	margin: 0;
	padding: 0;
}
.smq-commerce-next .smq-commerce-next-action {
	margin: var(--smq-space-3) 0 0;
}
.smq-commerce--confirmation .wc-block-order-confirmation-status,
.smq-commerce--confirmation .wc-block-order-confirmation-summary,
.smq-commerce--confirmation .wc-block-order-confirmation-totals-wrapper,
.smq-commerce--confirmation .wc-block-order-confirmation-billing-wrapper {
	margin: 0 0 var(--smq-space-5);
}

/* ---- My Account endpoints (W5-A0 visual fix) ------------------------------------------------------ */
/* The content column is its own formatting context: WooCommerce's `.clear` between form rows otherwise
   clears the floated account menu and opens a menu-high gap in the form. */
.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-content {
	display: flow-root;
}
/* Account data: first / last name share the form width exactly, in two halves. */
.smq-commerce-surface .woocommerce form.woocommerce-EditAccountForm .form-row-first,
.smq-commerce-surface .woocommerce form.woocommerce-EditAccountForm .form-row-last {
	width: calc(50% - var(--smq-space-2));
}
/* Password recovery has a single field: it takes the form width, like the login form. */
.smq-commerce-surface .woocommerce form.woocommerce-ResetPassword .form-row-first,
.smq-commerce-surface .woocommerce form.woocommerce-ResetPassword .form-row-last {
	float: none;
	width: 100%;
}
/* Address cards. WooCommerce marks each card title up as a <header>, which the site header rule
   (header.css) would otherwise paint navy. */
.smq-commerce-surface--account .woocommerce .woocommerce-Addresses .woocommerce-Address {
	padding: var(--smq-space-4);
	border: 1px solid var(--smq-gray-200);
	background: var(--smq-white);
}
.smq-commerce-surface--account .woocommerce .woocommerce-Address .woocommerce-Address-title {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--smq-space-2) var(--smq-space-3);
	margin: 0 0 var(--smq-space-3);
	padding: 0;
	background: transparent;
	color: var(--smq-navy-950);
}
/* WooCommerce's clearfix pseudo-elements would become flex items and push the title off the card edge. */
.smq-commerce-surface--account .woocommerce .woocommerce-Address .woocommerce-Address-title::before,
.smq-commerce-surface--account .woocommerce .woocommerce-Address .woocommerce-Address-title::after {
	content: none;
}
.smq-commerce-surface--account .woocommerce .woocommerce-Address .woocommerce-Address-title h2 {
	float: none;
	margin: 0;
}
.smq-commerce-surface--account .woocommerce .woocommerce-Address .woocommerce-Address-title .edit {
	float: none;
	font-weight: 600;
}
.smq-commerce-surface--account .woocommerce .woocommerce-Address address {
	color: var(--smq-navy-700);
	font-style: normal;
}
/* Actions inside notices ("confirm your email", "browse"): WooCommerce dims them to plain grey text and
   floats them. They are links, shown as links, always under the message. */
.smq-commerce-surface .wc-block-components-notice-banner > .wc-block-components-notice-banner__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--smq-space-2);
}
.smq-commerce-surface .woocommerce .wc-block-components-notice-banner > .wc-block-components-notice-banner__content a.wc-forward {
	order: 1;
	float: none;
	width: auto;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--smq-blue-interactive-strong);
	font-weight: 600;
	text-align: left;
	text-decoration: underline;
	opacity: 1;
}
.smq-commerce-surface .woocommerce .wc-block-components-notice-banner > .wc-block-components-notice-banner__content a.wc-forward:hover {
	background: transparent;
	color: var(--smq-navy-950);
}

/* ---- Responsive (baseline breakpoints 768 / 375) -------------------------------------------------- */
@media (max-width: 768px) {
	.smq-commerce-inner,
	.smq-commerce-hero .smq-page-hero-inner {
		width: calc(100% - 32px);
	}
	.smq-page-section.smq-commerce-section {
		padding: var(--smq-space-4) 0 var(--smq-space-6);
	}
	.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-navigation {
		float: none;
		width: auto;
		margin: 0 0 var(--smq-space-4);
	}
	.smq-commerce-surface--account .woocommerce .woocommerce-MyAccount-content {
		margin-left: 0;
	}
	.smq-commerce-surface .woocommerce .u-columns.col2-set {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--smq-space-5);
	}
	.smq-commerce-surface .woocommerce a.button,
	.smq-commerce-surface .woocommerce button.button,
	.smq-commerce-surface .smq-commerce-inner a.smq-commerce-button {
		width: 100%;
		box-sizing: border-box;
	}
	.smq-commerce-surface .woocommerce table.shop_table .button {
		width: auto;
	}
	.smq-commerce-steps {
		font-size: 0.85rem;
		gap: var(--smq-space-1) var(--smq-space-3);
	}
}
