/* Task 05E — cart, checkout, account and service pages. */
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account,
body.page-id-14,
body.page-id-2181 {
	--hhm-commerce-ink: #171a18;
	--hhm-commerce-muted: #68706b;
	--hhm-commerce-line: #d9d7cd;
	--hhm-commerce-surface: #fffefa;
	--hhm-commerce-soft: #f2f0e8;
	--hhm-commerce-gold: #c6a55b;
	background: #f5f3ec;
}

.hhm-standard-page {
	--hhm-commerce-ink: #171a18;
	--hhm-commerce-muted: #68706b;
	--hhm-commerce-line: #d9d7cd;
	--hhm-commerce-surface: #fffefa;
	--hhm-commerce-soft: #f2f0e8;
	--hhm-commerce-gold: #c6a55b;
	padding: 24px 0 74px;
}
.hhm-standard-page__breadcrumb {
	display: flex;
	gap: 9px;
	align-items: center;
	margin-bottom: 18px;
	color: #777d78;
	font-size: .8rem;
}
.hhm-standard-page__breadcrumb a { color: #464d48; }
.hhm-standard-page__hero {
	margin-bottom: 24px;
	padding: clamp(24px, 4vw, 48px);
	border-radius: 20px;
	background: linear-gradient(125deg, #171a18 0%, #202522 72%, #2e3028 100%);
	color: #fff;
	box-shadow: 0 18px 44px rgba(21, 24, 21, .12);
}
.hhm-standard-page__hero > span,
.hhm-professional__hero-grid > div > span,
.hhm-professional__paths header > span,
.hhm-professional__process > .hhm-container > div > span,
.hhm-professional__cta span {
	display: block;
	margin-bottom: 10px;
	color: #dcc47f;
	font-size: .71rem;
	font-weight: 850;
	letter-spacing: .14em;
	text-transform: uppercase;
}
.hhm-standard-page__hero h1 {
	max-width: 950px;
	margin: 0;
	color: #fff !important;
	font-size: clamp(2rem, 4vw, 3.7rem);
	line-height: 1;
	letter-spacing: -.045em;
}
body.hhm-site .hhm-standard-page .hhm-standard-page__hero h1,
body.hhm-site .hhm-professional .hhm-professional__hero h1 {
	color: #fff !important;
}
.hhm-order-confidence {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1px;
	margin: -8px 0 24px;
	overflow: hidden;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 13px;
	background: var(--hhm-commerce-line);
}
.hhm-order-confidence span {
	display: flex;
	min-height: 58px;
	gap: 9px;
	align-items: center;
	padding: 12px 16px;
	background: var(--hhm-commerce-surface);
	color: #3d453f;
	font-size: .8rem;
	font-weight: 750;
}
.hhm-order-confidence svg { flex: 0 0 19px; width: 19px; height: 19px; color: var(--hhm-commerce-gold); }
.hhm-standard-page__content {
	color: #3f4742;
	line-height: 1.72;
}
.hhm-standard-page__content > :first-child { margin-top: 0; }
.hhm-standard-page--service .ez-toc-container,
.hhm-standard-page--service #ez-toc-container { display: none !important; }
.hhm-standard-page__content h2,
.hhm-standard-page__content h3 { color: var(--hhm-commerce-ink); }

/* Shared WooCommerce feedback and controls. */
.hhm-standard-page .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.hhm-standard-page .woocommerce-error,
.hhm-standard-page .woocommerce-info,
.hhm-standard-page .woocommerce-message,
.hhm-standard-page .wc-block-components-notice-banner {
	margin: 0 0 18px !important;
	padding: 14px 17px !important;
	border: 1px solid #c9d9cc !important;
	border-left: 4px solid #39734b !important;
	border-radius: 10px !important;
	background: #edf5ef !important;
	color: #2c4934 !important;
	font-size: .86rem;
	line-height: 1.55;
}
.hhm-standard-page .woocommerce-error {
	border-color: #e0c3be !important;
	border-left-color: #a13c32 !important;
	background: #f9ecea !important;
	color: #742c25 !important;
}
.hhm-standard-page .woocommerce-info {
	border-color: #ded6bd !important;
	border-left-color: #9a7d38 !important;
	background: #f8f4e8 !important;
	color: #5e512e !important;
}
.hhm-standard-page .woocommerce-error::before,
.hhm-standard-page .woocommerce-info::before,
.hhm-standard-page .woocommerce-message::before { display: none; }
.hhm-standard-page button.button,
.hhm-standard-page a.button,
.hhm-standard-page input.button,
.hhm-standard-page .wc-block-components-button {
	min-height: 46px;
	padding: 11px 18px !important;
	border: 1px solid var(--hhm-commerce-ink) !important;
	border-radius: 9px !important;
	background: var(--hhm-commerce-ink) !important;
	color: #fff !important;
	font-size: .82rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
}
.hhm-standard-page button.button:hover,
.hhm-standard-page a.button:hover,
.hhm-standard-page .wc-block-components-button:hover {
	border-color: #333a35 !important;
	background: #333a35 !important;
}
.hhm-standard-page button[disabled],
.hhm-standard-page .button.disabled { cursor: not-allowed; opacity: .48; }
.hhm-standard-page input[type="text"],
.hhm-standard-page input[type="email"],
.hhm-standard-page input[type="tel"],
.hhm-standard-page input[type="password"],
.hhm-standard-page input[type="number"],
.hhm-standard-page select,
.hhm-standard-page textarea {
	min-height: 48px;
	padding: 10px 12px;
	border: 1px solid #bfc1ba;
	border-radius: 8px;
	background: #fff;
	color: var(--hhm-commerce-ink);
	box-shadow: none;
}
.hhm-standard-page textarea { min-height: 120px; }
body.hhm-site .hhm-standard-page input[type="text"],
body.hhm-site .hhm-standard-page input[type="email"],
body.hhm-site .hhm-standard-page input[type="tel"],
body.hhm-site .hhm-standard-page input[type="password"],
body.hhm-site .hhm-standard-page input[type="number"],
body.hhm-site .hhm-standard-page select,
body.hhm-site .hhm-standard-page textarea {
	background: #fff !important;
	color: var(--hhm-commerce-ink) !important;
}
.hhm-standard-page input:focus,
.hhm-standard-page select:focus,
.hhm-standard-page textarea:focus {
	border-color: var(--hhm-commerce-ink);
	outline: 3px solid rgba(198, 165, 91, .32);
	outline-offset: 1px;
}
.hhm-standard-page .is-submitting { opacity: .72; pointer-events: none; }

/* Classic cart — current configured WooCommerce cart page. */
body.woocommerce-cart .hhm-standard-page__content > .woocommerce {
	display: grid;
	grid-template-columns: minmax(0, 1.65fr) minmax(300px, .75fr);
	gap: 24px;
	align-items: start;
}
body.woocommerce-cart .woocommerce-cart-form {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 16px;
	background: var(--hhm-commerce-surface);
	box-shadow: 0 14px 38px rgba(30, 33, 30, .05);
}
body.woocommerce-cart .woocommerce-cart-form table.shop_table {
	margin: 0;
	border: 0;
	border-collapse: collapse;
	border-radius: 16px;
}
body.woocommerce-cart .woocommerce-cart-form th {
	padding: 14px 12px;
	border-bottom: 1px solid var(--hhm-commerce-line);
	background: #f2f0e8;
	color: #686e69;
	font-size: .7rem;
	font-weight: 850;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: #686e69 !important;
}
body.woocommerce-cart .woocommerce-cart-form td {
	padding: 17px 12px;
	border-color: var(--hhm-commerce-line);
	vertical-align: middle;
	color: #3f4742 !important;
}
body.woocommerce-cart .product-thumbnail { width: 96px; }
body.woocommerce-cart .product-thumbnail img {
	width: 76px;
	height: 76px;
	padding: 5px;
	border-radius: 10px;
	background: #f1efe8;
	object-fit: contain;
	mix-blend-mode: multiply;
}
body.woocommerce-cart .product-name a {
	color: var(--hhm-commerce-ink);
	font-size: .9rem;
	font-weight: 800;
	line-height: 1.35;
}
body.woocommerce-cart .product-name dl.variation {
	margin: 7px 0 0;
	color: var(--hhm-commerce-muted);
	font-size: .72rem;
}
body.woocommerce-cart .product-name dl.variation dt { font-weight: 800; }
body.woocommerce-cart .product-price,
body.woocommerce-cart .product-subtotal {
	color: var(--hhm-commerce-ink);
	font-size: .9rem;
	font-weight: 800;
	white-space: nowrap;
}
body.woocommerce-cart .product-remove a {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border: 1px solid #e2ccc8;
	border-radius: 50%;
	background: #faf1ef;
	color: #9a372e !important;
	font-size: 1.1rem;
}
body.woocommerce-cart .product-remove a:hover { background: #f3dfdc; }
body.woocommerce-cart .actions {
	padding: 16px !important;
	background: #faf9f4;
}
body.woocommerce-cart .actions .coupon {
	display: flex;
	gap: 8px;
}
body.woocommerce-cart .actions .coupon label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); }
body.woocommerce-cart .actions .coupon .input-text { width: 170px !important; margin: 0 !important; }
body.woocommerce-cart .cart-collaterals {
	float: none;
	width: auto;
	margin: 0;
	padding: 20px;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 16px;
	background: var(--hhm-commerce-surface);
	box-shadow: 0 14px 38px rgba(30, 33, 30, .05);
}
body.woocommerce-cart .cart-collaterals .cart_totals {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}
body.woocommerce-cart .cart_totals h2 {
	margin: 0 0 16px;
	font-size: 1.35rem;
	letter-spacing: -.025em;
}
body.woocommerce-cart .cart_totals table { margin: 0 0 15px; border: 0; }
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td {
	padding: 12px 0;
	border-color: var(--hhm-commerce-line);
	background: transparent;
	font-size: .82rem;
	color: #4a514c !important;
}
body.woocommerce-cart .cart_totals td { text-align: right; }
body.woocommerce-cart .order-total th,
body.woocommerce-cart .order-total td {
	padding-top: 17px;
	color: var(--hhm-commerce-ink);
	font-size: 1rem;
	font-weight: 850;
}
body.woocommerce-cart .wc-proceed-to-checkout { padding: 8px 0 0; }
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	display: flex;
	width: 100%;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	background: #9a773d !important;
	border-color: #9a773d !important;
}
body.woocommerce-cart .woocommerce-shipping-calculator { font-size: .76rem; }
body.woocommerce-cart .woocommerce-shipping-calculator a { color: #5f4c24; font-weight: 800; text-decoration: underline; }
.hhm-cart-quantity {
	display: grid !important;
	grid-template-columns: 32px 42px 32px;
	width: 108px !important;
	height: 40px;
	overflow: hidden;
	border: 1px solid #bfc1ba;
	border-radius: 8px;
	background: #fff;
}
body.woocommerce-cart .woocommerce .hhm-cart-quantity .qty {
	width: 42px !important;
	min-height: 38px;
	padding: 0 3px !important;
	border: 0 !important;
	border-radius: 0;
	text-align: center;
	appearance: textfield;
}
.hhm-cart-quantity__button {
	min-width: 32px;
	padding: 0;
	border: 0;
	background: #f0eee6;
	color: var(--hhm-commerce-ink);
	font-size: 1rem;
}
.hhm-cart-quantity__button:hover { background: #e6e2d6; }

/* Empty cart and optional block cart clone. */
body.woocommerce-cart .cart-empty,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
	grid-column: 1 / -1;
	padding: clamp(38px, 7vw, 84px);
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 18px;
	background: var(--hhm-commerce-surface);
	text-align: center;
}
body.woocommerce-cart .return-to-shop { grid-column: 1 / -1; text-align: center; }
.wp-block-woocommerce-cart-cross-sells-block { display: none; }
.hhm-standard-page .wc-block-cart {
	gap: 24px;
	align-items: start;
}
.hhm-standard-page .wc-block-cart-items {
	border: 1px solid var(--hhm-commerce-line) !important;
	border-radius: 15px;
	background: var(--hhm-commerce-surface);
}
.hhm-standard-page .wc-block-cart-items__row { padding: 18px !important; }
.hhm-standard-page .wc-block-cart__sidebar {
	padding: 20px !important;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 15px;
	background: var(--hhm-commerce-surface);
}

/* Classic checkout — preserve field, shipping, tax and payment behavior. */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon { max-width: 760px; margin-inline: auto; }
body.woocommerce-checkout form.checkout_coupon {
	display: flex;
	gap: 8px;
	margin-bottom: 22px;
	padding: 16px;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 12px;
	background: var(--hhm-commerce-surface);
}
body.woocommerce-checkout form.checkout_coupon p { margin: 0; }
body.woocommerce-checkout form.checkout_coupon .form-row-first { flex: 1; }
body.woocommerce-checkout form.checkout_coupon .form-row-last { flex: 0 0 auto; }
body.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(350px, .88fr);
	gap: 0 26px;
	align-items: start;
}
body.woocommerce-checkout #customer_details {
	grid-column: 1;
	grid-row: 2;
	float: none;
	width: auto;
	padding: clamp(20px, 3vw, 30px);
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 16px;
	background: var(--hhm-commerce-surface);
	box-shadow: 0 14px 38px rgba(30, 33, 30, .05);
}
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
	float: none;
	width: 100%;
	padding: 0;
}
body.woocommerce-checkout #customer_details .col-2 { margin-top: 24px; }
body.woocommerce-checkout form.checkout > h3,
body.woocommerce-checkout #order_review_heading {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	padding: 18px 20px;
	border: 1px solid var(--hhm-commerce-line);
	border-bottom: 0;
	border-radius: 16px 16px 0 0;
	background: #f1efe7;
	font-size: 1.2rem;
}
body.woocommerce-checkout #order_review {
	float: none;
	width: 100% !important;
	padding: 0 20px 20px;
	border: 1px solid var(--hhm-commerce-line);
	border-top: 0;
	border-radius: 0 0 16px 16px;
	background: var(--hhm-commerce-surface);
	box-shadow: 0 14px 38px rgba(30, 33, 30, .05);
}
body.woocommerce-checkout form.checkout > .order-review-wrapper {
	grid-column: 2;
	grid-row: 1 / 3;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	align-self: start;
	border: 0 !important;
	background: transparent !important;
}
body.woocommerce-checkout .order-review-wrapper #order_review_heading_v2 {
	margin: 0;
	padding: 18px 20px;
	border: 1px solid var(--hhm-commerce-line);
	border-bottom: 0;
	border-radius: 16px 16px 0 0;
	background: #f1efe7;
	color: var(--hhm-commerce-ink) !important;
	font-size: 1.2rem;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3 {
	margin: 0 0 18px;
	font-size: 1.35rem;
}
body.woocommerce-checkout #customer_details .ez-toc-container,
body.woocommerce-checkout #customer_details #ez-toc-container {
	display: none !important;
}
body.woocommerce-checkout .form-row { margin: 0 0 15px; padding: 0; }
body.woocommerce-checkout .form-row label {
	margin-bottom: 6px;
	color: #3f4641;
	font-size: .78rem;
	font-weight: 800;
}
body.woocommerce-checkout .form-row .required { color: #9c342b; }
body.woocommerce-checkout .form-row.woocommerce-invalid input,
body.woocommerce-checkout .form-row.woocommerce-invalid select {
	border-color: #ad4037;
	background: #fff8f7;
	box-shadow: 0 0 0 3px rgba(173, 64, 55, .12);
}
body.woocommerce-checkout .select2-container .select2-selection--single {
	height: 48px;
	border: 1px solid #bfc1ba;
	border-radius: 8px;
	background: #fff;
}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered { padding: 9px 12px; line-height: 28px; }
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow { height: 46px; }
body.woocommerce-checkout #order_review table.shop_table {
	margin: 0 0 18px;
	border: 0;
	border-collapse: collapse;
}
body.woocommerce-checkout #order_review th,
body.woocommerce-checkout #order_review td {
	padding: 12px 0;
	border-color: var(--hhm-commerce-line);
	background: transparent;
	font-size: .79rem;
	color: #4a514c !important;
}
body.woocommerce-checkout #order_review td:last-child,
body.woocommerce-checkout #order_review th:last-child { text-align: right; }
body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td {
	color: var(--hhm-commerce-ink);
	font-size: .98rem;
	font-weight: 850;
}
body.woocommerce-checkout #payment {
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 12px;
	background: #f5f3ec;
}
body.woocommerce-checkout #payment ul.payment_methods {
	padding: 16px;
	border-bottom: 1px solid var(--hhm-commerce-line);
}
body.woocommerce-checkout #payment div.payment_box {
	margin: 10px 0;
	border-radius: 8px;
	background: #fff;
	color: #4f5651;
	font-size: .78rem;
}
body.woocommerce-checkout #payment div.form-row { padding: 16px; }
body.woocommerce-checkout #place_order {
	width: 100%;
	min-height: 54px;
	background: #9a773d !important;
	border-color: #9a773d !important;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	color: #616862;
	font-size: .75rem;
	line-height: 1.55;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions {
	max-height: 230px;
	padding: 14px;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 8px;
	background: #fff;
}
body.woocommerce-checkout .wcpay-express-checkout-wrapper {
	grid-column: 1;
	grid-row: 1;
	margin-bottom: 18px;
	border-radius: 12px;
}

/* Account, authentication and endpoint screens. */
body.woocommerce-account .hhm-standard-page__content > .woocommerce {
	display: grid;
	grid-template-columns: 240px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}
body.woocommerce-account .woocommerce-MyAccount-navigation {
	float: none;
	width: auto;
	padding: 10px;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 14px;
	background: var(--hhm-commerce-surface);
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
body.woocommerce-account .woocommerce-MyAccount-navigation li + li { margin-top: 3px; }
body.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: flex;
	min-height: 43px;
	align-items: center;
	padding: 9px 11px;
	border-radius: 8px;
	color: #4c544f;
	font-size: .8rem;
	font-weight: 750;
}
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
	background: var(--hhm-commerce-ink);
	color: #fff;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover { background: #efede5; color: var(--hhm-commerce-ink); }
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a:hover { background: var(--hhm-commerce-ink); color: #fff; }
body.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	min-height: 300px;
	padding: clamp(20px, 3vw, 32px);
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 14px;
	background: var(--hhm-commerce-surface);
}
body.woocommerce-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
body.woocommerce-account .woocommerce-MyAccount-content a { color: #725a2e; font-weight: 750; text-decoration: underline; text-underline-offset: 2px; }
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-table {
	margin: 0;
	border: 1px solid var(--hhm-commerce-line);
	border-collapse: collapse;
	border-radius: 10px;
}
body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td,
body.woocommerce-account .woocommerce-table th,
body.woocommerce-account .woocommerce-table td {
	padding: 11px;
	border-color: var(--hhm-commerce-line);
	font-size: .78rem;
}
body.woocommerce-account .woocommerce-Address {
	float: none;
	width: auto;
	margin-top: 15px;
	padding: 18px;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 10px;
	background: #faf9f4;
}
body.woocommerce-account .u-columns,
body.woocommerce-account .col2-set {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
	grid-column: 1 / -1;
}
body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2 {
	float: none;
	width: auto;
	padding: clamp(20px, 3vw, 30px);
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 14px;
	background: var(--hhm-commerce-surface);
}
body.woocommerce-account form.login,
body.woocommerce-account form.register,
body.woocommerce-account form.lost_reset_password,
body.woocommerce-account form.edit-account {
	margin: 0;
	padding: 0;
	border: 0;
}
body.woocommerce-account fieldset {
	margin: 22px 0;
	padding: 18px;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 10px;
}

/* Wishlist, order tracking, contact and static service content. */
.hhm-standard-page__content .track_order,
.hhm-standard-page__content .woocommerce-form-track-order {
	max-width: 720px;
	margin: 0 auto;
	padding: clamp(22px, 4vw, 36px);
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 14px;
	background: var(--hhm-commerce-surface);
}
.hhm-standard-page__content .track_order .form-row { float: none; width: 100%; margin: 0 0 14px; }
.hhm-standard-page__content .wishlist_table {
	margin: 0;
	border: 1px solid var(--hhm-commerce-line);
	border-collapse: collapse;
	border-radius: 12px;
	background: var(--hhm-commerce-surface);
}
.hhm-standard-page__content .wishlist_table th,
.hhm-standard-page__content .wishlist_table td { padding: 13px; border-color: var(--hhm-commerce-line); }
.hhm-standard-page__content .wishlist_table img { width: 74px; height: 74px; object-fit: contain; }
.hhm-standard-page__content .wpforms-container,
.hhm-standard-page__content .wpcf7,
.hhm-standard-page__content form:not(.woocommerce-form):not(.cart):not(.checkout) {
	max-width: 860px;
}
.hhm-standard-page__content .vc_row { margin-inline: 0; }
.hhm-standard-page__content iframe { max-width: 100%; border: 0; border-radius: 14px; }

/* Comparison page — compatible with current YITH data structures. */
.hhm-compare-empty {
	display: grid;
	max-width: 760px;
	min-height: 310px;
	margin: 0 auto;
	padding: clamp(30px, 6vw, 64px);
	place-items: center;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 18px;
	background: var(--hhm-commerce-surface);
	text-align: center;
}
.hhm-compare-empty > span {
	color: #9a793c;
	font-size: .72rem;
	font-weight: 850;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.hhm-compare-empty h2 { margin: 5px 0 0; font-size: clamp(1.7rem, 4vw, 2.7rem); }
.hhm-compare-empty p { max-width: 58ch; margin: 0; color: var(--hhm-commerce-muted); }
.hhm-compare-table {
	overflow-x: auto;
	border: 1px solid var(--hhm-commerce-line);
	border-radius: 16px;
	background: var(--hhm-commerce-surface);
	box-shadow: 0 14px 38px rgba(30, 33, 30, .05);
}
.hhm-compare-table table { min-width: 760px; margin: 0; border: 0; }
.hhm-compare-table th,
.hhm-compare-table td { padding: 15px; border-color: var(--hhm-commerce-line); }
.hhm-compare-table th {
	background: #f1efe7;
	color: var(--hhm-commerce-ink);
	font-size: .76rem;
	font-weight: 850;
}
.hhm-compare-table img { max-width: 180px; object-fit: contain; }

/* Genuine Professional Solutions page. */
.hhm-professional { background: #f5f3ec; }
.hhm-professional__hero {
	padding: clamp(52px, 8vw, 105px) 0;
	background: linear-gradient(125deg, #141715 0%, #202520 68%, #3a3526 100%);
	color: #fff;
}
.hhm-professional__hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(280px, .55fr);
	gap: clamp(36px, 7vw, 100px);
	align-items: center;
}
.hhm-professional__hero h1 {
	max-width: 900px;
	margin: 0 0 22px;
	color: #fff;
	font-size: clamp(2.7rem, 6vw, 5.6rem);
	line-height: .96;
	letter-spacing: -.055em;
}
.hhm-professional__hero-grid > div > p {
	max-width: 66ch;
	margin: 0;
	color: #c9cec9;
	font-size: clamp(1rem, 1.4vw, 1.16rem);
	line-height: 1.7;
}
.hhm-professional__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.hhm-professional__actions .hhm-button--ghost { border-color: #5d635e; color: #fff; }
.hhm-professional__hero aside {
	padding: clamp(24px, 4vw, 38px);
	border: 1px solid #444b45;
	border-radius: 18px;
	background: rgba(255, 255, 255, .055);
}
.hhm-professional__hero aside strong { display: block; color: #e0c779; font-size: clamp(3rem, 6vw, 5rem); line-height: 1; }
.hhm-professional__hero aside span { display: block; margin-top: 6px; color: #fff; font-weight: 800; }
.hhm-professional__hero aside p { margin: 18px 0 0; color: #bfc5bf; font-size: .82rem; line-height: 1.6; }
.hhm-professional__paths { padding: clamp(62px, 9vw, 110px) 0; }
.hhm-professional__paths header { max-width: 780px; margin-bottom: 34px; }
.hhm-professional__paths h2,
.hhm-professional__process h2,
.hhm-professional__cta h2 {
	margin: 0;
	color: #171a18;
	font-size: clamp(2rem, 4vw, 3.65rem);
	line-height: 1.02;
	letter-spacing: -.045em;
}
.hhm-professional__paths header p { margin: 16px 0 0; color: #676e68; line-height: 1.65; }
.hhm-professional__path-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}
.hhm-professional__path-grid > a {
	display: flex;
	min-height: 260px;
	flex-direction: column;
	padding: 24px;
	border: 1px solid #d8d6cc;
	border-radius: 15px;
	background: #fffefa;
	color: #171a18;
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.hhm-professional__path-grid > a:hover {
	transform: translateY(-3px);
	border-color: #b99a55;
	box-shadow: 0 18px 44px rgba(26, 29, 26, .08);
}
.hhm-professional__path-grid small { color: #a2813d; font-weight: 850; letter-spacing: .1em; }
.hhm-professional__path-grid h3 { margin: 22px 0 10px; font-size: 1.35rem; }
.hhm-professional__path-grid p { margin: 0; color: #686f69; font-size: .85rem; line-height: 1.6; }
.hhm-professional__path-grid > a > span { display: flex; gap: 8px; align-items: center; margin-top: auto; padding-top: 22px; font-size: .78rem; font-weight: 850; }
.hhm-professional__path-grid svg { width: 16px; height: 16px; }
.hhm-professional__process { padding: clamp(58px, 8vw, 96px) 0; background: #eae7dc; }
.hhm-professional__process > .hhm-container { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(30px, 6vw, 80px); }
.hhm-professional__process ol { display: grid; gap: 1px; margin: 0; padding: 0; overflow: hidden; border: 1px solid #d1cdc0; border-radius: 14px; background: #d1cdc0; list-style: none; counter-reset: steps; }
.hhm-professional__process li {
	display: grid;
	grid-template-columns: 180px 1fr;
	gap: 18px;
	padding: 20px;
	background: #f8f6ee;
	counter-increment: steps;
}
.hhm-professional__process li strong::before { margin-right: 10px; color: #a2813d; content: "0" counter(steps); }
.hhm-professional__process li span { color: #656c66; font-size: .83rem; }
.hhm-professional__cta { padding: 48px 0; background: #171a18; }
.hhm-professional__cta > .hhm-container { display: flex; gap: 30px; align-items: center; justify-content: space-between; }
.hhm-professional__cta h2 { max-width: 780px; color: #fff; }

@media (max-width: 980px) {
	body.woocommerce-cart .hhm-standard-page__content > .woocommerce { grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); gap: 16px; }
	body.woocommerce-checkout form.checkout { grid-template-columns: minmax(0, 1fr) minmax(320px, .85fr); gap: 0 18px; }
	.hhm-professional__path-grid { grid-template-columns: repeat(2, 1fr); }
	.hhm-professional__hero-grid { grid-template-columns: 1fr .5fr; gap: 34px; }
}

@media (max-width: 760px) {
	.hhm-standard-page { padding: 13px 0 54px; }
	.hhm-standard-page__hero { margin-bottom: 18px; padding: 24px 20px; border-radius: 14px; }
	.hhm-order-confidence { grid-template-columns: 1fr; margin-top: 0; }
	.hhm-order-confidence span { min-height: 48px; }
	body.woocommerce-cart .hhm-standard-page__content > .woocommerce,
	body.woocommerce-checkout form.checkout,
	body.woocommerce-account .hhm-standard-page__content > .woocommerce {
		display: block;
	}
	body.woocommerce-cart .woocommerce-cart-form { overflow: visible; }
	body.woocommerce-cart .woocommerce-cart-form thead { display: none; }
	body.woocommerce-cart .woocommerce-cart-form tbody,
	body.woocommerce-cart .woocommerce-cart-form tr,
	body.woocommerce-cart .woocommerce-cart-form td { display: block; width: 100%; }
	body.woocommerce-cart .woocommerce-cart-form tr.cart_item {
		position: relative;
		display: grid;
		grid-template-columns: 78px minmax(0, 1fr);
		gap: 4px 12px;
		padding: 15px;
		border-bottom: 1px solid var(--hhm-commerce-line);
	}
	body.woocommerce-cart .woocommerce-cart-form td { padding: 0; border: 0; text-align: left !important; }
	body.woocommerce-cart .woocommerce-cart-form .product-remove { position: absolute; top: 12px; right: 12px; width: auto; }
	body.woocommerce-cart .woocommerce-cart-form .product-thumbnail { grid-row: 1 / 5; width: 78px; }
	body.woocommerce-cart .woocommerce-cart-form .product-name,
	body.woocommerce-cart .woocommerce-cart-form .product-price,
	body.woocommerce-cart .woocommerce-cart-form .product-quantity,
	body.woocommerce-cart .woocommerce-cart-form .product-subtotal { grid-column: 2; padding-right: 36px; }
	body.woocommerce-cart .woocommerce-cart-form .product-price::before { content: "Price: "; color: var(--hhm-commerce-muted); font-weight: 600; }
	body.woocommerce-cart .woocommerce-cart-form .product-subtotal::before { content: "Subtotal: "; color: var(--hhm-commerce-muted); font-weight: 600; }
	body.woocommerce-cart .actions { display: grid !important; gap: 10px; }
	body.woocommerce-cart .actions .coupon { display: grid; grid-template-columns: 1fr auto; }
	body.woocommerce-cart .actions .coupon .input-text { width: 100% !important; }
	body.woocommerce-cart .actions > button { width: 100%; }
	body.woocommerce-cart .cart-collaterals { margin-top: 16px; }
	body.woocommerce-checkout form.checkout_coupon { display: grid; }
	body.woocommerce-checkout form.checkout_coupon .form-row { width: 100%; }
	body.woocommerce-checkout #customer_details,
	body.woocommerce-checkout #order_review {
		width: auto;
		margin: 0;
		padding: 18px 15px;
		border-radius: 14px;
	}
	body.woocommerce-checkout #order_review_heading {
		margin-top: 18px;
		padding: 17px 15px;
		border-radius: 14px 14px 0 0;
	}
	body.woocommerce-checkout form.checkout > .order-review-wrapper {
		margin-top: 18px !important;
	}
	body.woocommerce-checkout .order-review-wrapper #order_review_heading_v2 {
		padding: 17px 15px;
		border-radius: 14px 14px 0 0;
	}
	body.woocommerce-checkout #order_review { border-radius: 0 0 14px 14px; }
	body.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-bottom: 15px;
		overflow-x: auto;
	}
	body.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; gap: 5px; }
	body.woocommerce-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; margin: 0 !important; }
	body.woocommerce-account .woocommerce-MyAccount-content { padding: 18px 15px; }
	body.woocommerce-account .u-columns,
	body.woocommerce-account .col2-set { grid-template-columns: 1fr; }
	body.woocommerce-account .woocommerce-orders-table thead { display: none; }
	body.woocommerce-account .woocommerce-orders-table tr,
	body.woocommerce-account .woocommerce-orders-table td { display: block; width: 100%; }
	.hhm-standard-page__content .wishlist_table { display: block; overflow-x: auto; }
	.hhm-professional__hero { padding: 54px 0; }
	.hhm-professional__hero-grid,
	.hhm-professional__process > .hhm-container { grid-template-columns: 1fr; }
	.hhm-professional__hero h1 { font-size: clamp(2.45rem, 12vw, 3.5rem); }
	.hhm-professional__path-grid { grid-template-columns: 1fr; }
	.hhm-professional__path-grid > a { min-height: 225px; }
	.hhm-professional__process li { grid-template-columns: 1fr; gap: 6px; }
	.hhm-professional__cta > .hhm-container { align-items: flex-start; flex-direction: column; }
}
