/*
 * MedFast refinement pass
 * Editorial precision, restrained motion, no floating-card aesthetic.
 */

/* Global geometry */
.medfast-audited {
	--mfx-radius-control: 3px;
}

.medfast-audited button,
.medfast-audited input,
.medfast-audited select,
.medfast-audited textarea,
.medfast-audited .button,
.medfast-audited .wp-block-button__link {
	border-radius: var(--mfx-radius-control);
}

.medfast-audited a {
	transition: color .22s ease, background-color .22s ease, border-color .22s ease;
}

/* Header: fixed to the viewport, stable and unobtrusive */
.mfx-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 9990;
	box-shadow: none;
}

#page {
	padding-top: 126px;
}

.mfx-header::after {
	content: "";
	position: absolute;
	left: 0;
	right: auto;
	bottom: -1px;
	width: var(--mfx-scroll-progress, 0%);
	height: 1px;
	background: var(--mfx-teal);
	z-index: 10;
	transition: width .08s linear;
}

.mfx-scrolled .mfx-header {
	box-shadow: 0 8px 24px rgba(6,27,45,.065);
}

.mfx-header__main,
.mfx-brand__mark,
.mfx-brand__text strong {
	transition: min-height .3s ease, width .3s ease, height .3s ease, font-size .3s ease;
}

.mfx-scrolled .mfx-header__main {
	min-height: 78px;
}

.mfx-scrolled .mfx-brand__mark {
	width: 38px;
	height: 38px;
}

.mfx-scrolled .mfx-brand__text strong {
	font-size: 25px;
}

.mfx-brand__mark {
	border-radius: 12px 5px 12px 5px;
	box-shadow: 0 10px 25px rgba(12,167,157,.23);
}

.mfx-header-search {
	border-radius: 2px;
	background: transparent;
	box-shadow: inset 0 -1px 0 var(--mfx-line);
}

.mfx-header-search:focus-within {
	border-color: var(--mfx-teal);
	background: var(--mfx-white);
	box-shadow: inset 0 -2px 0 var(--mfx-teal);
}

.mfx-header-search button,
.mfx-quote-link,
.mfx-cart-pill,
.mfx-menu-toggle,
.mfx-mobile-search input,
.mfx-mobile-search button,
.mfx-mobile-panel__shortcuts a {
	border-radius: 2px;
	box-shadow: none;
}

.mfx-cart-pill {
	background: transparent;
}

.mfx-cart-pill > b {
	border-radius: 2px;
}

.mfx-main-menu > li > a,
.mfx-nav-row__links a {
	position: relative;
	isolation: isolate;
	transition: color .28s ease, text-shadow .28s ease;
}

.mfx-main-menu > li > a::after,
.mfx-nav-row__links a::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 8px;
	width: calc(100% - 28px);
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(12,167,157,.78) 24%, rgba(12,167,157,.78) 76%, transparent);
	opacity: 0;
	transform: translateX(-50%) scaleX(.12);
	transform-origin: center;
	transition:
		opacity .24s ease,
		transform .36s cubic-bezier(.2,.75,.25,1);
}

.mfx-nav-row__links a::after {
	bottom: -6px;
	width: 100%;
}

.mfx-main-menu > li > a:hover,
.mfx-main-menu > li > a:focus-visible,
.mfx-main-menu > li.current-menu-item > a,
.mfx-nav-row__links a:hover,
.mfx-nav-row__links a:focus-visible {
	color: var(--mfx-teal-dark);
	text-shadow: 0 0 15px rgba(12,167,157,.12);
}

.mfx-main-menu > li > a:hover::after,
.mfx-main-menu > li > a:focus-visible::after,
.mfx-main-menu > li.current-menu-item > a::after,
.mfx-nav-row__links a:hover::after,
.mfx-nav-row__links a:focus-visible::after {
	opacity: 1;
	transform: translateX(-50%) scaleX(1);
}

.mfx-quote-link svg,
.mfx-button svg,
.mfx-button > span,
.mfx-finder__inner > a span,
.mfx-section-head--products > a span,
.mfx-product-quote span {
	transition: transform .24s cubic-bezier(.2,.75,.25,1);
}

.mfx-quote-link:hover svg,
.mfx-button:hover svg,
.mfx-button:hover > span,
.mfx-finder__inner > a:hover span,
.mfx-section-head--products > a:hover span,
.mfx-product-quote:hover span {
	transform: translateX(4px);
}

/* Buttons: movement belongs to arrow, not container */
.mfx-button {
	border-radius: 2px;
	box-shadow: none;
	transform: none;
}

.mfx-button:hover {
	transform: none;
	box-shadow: none;
}

.mfx-button--primary {
	box-shadow: none;
}

.mfx-button--primary:hover {
	box-shadow: none;
}

.mfx-button--secondary {
	background: transparent;
}

.mfx-button--secondary:hover {
	border-color: var(--mfx-navy);
	background: transparent;
}

/* Hero: one coherent editorial canvas */
.mfx-showcase {
	min-height: 490px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #e7f0f1;
	box-shadow: none;
	color: var(--mfx-navy);
}

.mfx-showcase::before {
	opacity: .34;
	background-image:
		linear-gradient(rgba(6,27,45,.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(6,27,45,.055) 1px, transparent 1px);
	background-size: 34px 34px;
	mask-image: linear-gradient(130deg,#000,transparent 76%);
}

.mfx-showcase__top {
	height: 53px;
	padding: 0 20px;
	border-bottom: 1px solid rgba(6,27,45,.13);
}

.mfx-showcase__top span {
	color: var(--mfx-navy);
}

.mfx-showcase__top small {
	color: rgba(6,27,45,.48);
}

.mfx-showcase__stage {
	display: grid;
	grid-template-columns: 1.35fr .65fr;
	grid-template-rows: 1fr 1fr;
	height: 382px;
}

.mfx-showcase__rings {
	display: none;
}

.mfx-showcase-product,
.mfx-showcase-product--1,
.mfx-showcase-product--2,
.mfx-showcase-product--3 {
	position: relative;
	inset: auto;
	display: grid;
	width: auto;
	padding: 18px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transform: none;
	overflow: hidden;
}

.mfx-showcase-product:hover {
	z-index: auto;
	transform: none;
}

.mfx-showcase-product--1 {
	grid-row: 1 / 3;
	border-right: 1px solid rgba(6,27,45,.13);
}

.mfx-showcase-product--2 {
	border-bottom: 1px solid rgba(6,27,45,.13);
}

.mfx-showcase-product__image {
	width: 100%;
	height: 100%;
	min-height: 0;
	aspect-ratio: auto;
	border-radius: 0;
	background: transparent;
	overflow: visible;
}

.mfx-showcase-product__image img {
	width: 78%;
	height: 78%;
	object-fit: contain;
	mix-blend-mode: multiply;
	transition: transform .55s cubic-bezier(.2,.75,.25,1);
}

.mfx-showcase-product--2 .mfx-showcase-product__image img,
.mfx-showcase-product--3 .mfx-showcase-product__image img {
	width: 65%;
	height: 65%;
}

.mfx-showcase-product:hover .mfx-showcase-product__image img {
	transform: scale(1.035);
}

.mfx-showcase-product__meta {
	position: absolute;
	left: 18px;
	right: 18px;
	bottom: 14px;
	margin: 0;
	padding-top: 8px;
	border-top: 1px solid rgba(6,27,45,.18);
}

.mfx-showcase-product__meta small {
	color: var(--mfx-teal-dark);
}

.mfx-showcase-product__meta strong {
	max-width: 92%;
	color: var(--mfx-navy);
	font-size: 9px;
	transform: translateX(0);
	transition: transform .28s ease;
}

.mfx-showcase-product:hover .mfx-showcase-product__meta strong {
	transform: translateX(4px);
}

.mfx-showcase__bottom {
	height: 55px;
	padding: 0 20px;
	border-top: 1px solid rgba(6,27,45,.13);
}

.mfx-showcase__bottom span {
	color: rgba(6,27,45,.52);
}

/* Search finder becomes a continuous navigation band */
.mfx-finder {
	margin-top: 0;
	border-bottom: 1px solid var(--mfx-line);
	background: var(--mfx-white);
}

.mfx-finder__inner {
	min-height: 96px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
}

.mfx-finder form {
	border-inline: 1px solid var(--mfx-line);
	padding-inline: 24px;
}

.mfx-finder input[type="search"] {
	border: 0;
	border-bottom: 1px solid #aabdc1;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.mfx-finder input[type="search"]:focus {
	border-color: var(--mfx-teal);
	box-shadow: none;
}

.mfx-finder button {
	border-radius: 0;
}

/* Categories: columns, not cards */
.mfx-universe-grid {
	gap: 0;
	border-top: 1px solid var(--mfx-line);
	border-bottom: 1px solid var(--mfx-line);
}

.mfx-universe {
	min-height: 370px;
	padding: 30px;
	border: 0;
	border-right: 1px solid var(--mfx-line);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transform: none;
	transition: background-color .32s ease;
}

.mfx-universe:last-child {
	border-right: 0;
}

.mfx-universe::before {
	content: "";
	position: absolute;
	left: 0;
	top: -1px;
	width: 0;
	height: 2px;
	background: var(--mfx-teal);
	transition: width .38s cubic-bezier(.2,.75,.25,1);
}

.mfx-universe::after {
	display: none;
}

.mfx-universe:hover {
	background: rgba(241,246,247,.65);
	box-shadow: none;
	transform: none;
}

.mfx-universe:hover::before {
	width: 100%;
}

.mfx-universe__icon {
	width: 92px;
	height: 92px;
	margin: 48px 0 31px;
	border-radius: 50%;
	background: transparent !important;
	color: var(--mfx-teal-dark);
	transition: transform .42s cubic-bezier(.2,.75,.25,1);
}

.mfx-universe__icon svg {
	width: 70px;
}

.mfx-universe:hover .mfx-universe__icon {
	transform: translateX(7px);
}

.mfx-universe h3 {
	font-size: 29px;
	transition: color .22s ease;
}

.mfx-universe b {
	display: flex;
	align-items: center;
	gap: 7px;
}

.mfx-universe b span {
	margin: 0;
	transition: transform .24s ease;
}

.mfx-universe:hover b span {
	transform: translate(3px,-3px);
}

/* Products: image, type, name, price. No card chrome. */
.mfx-product-grid {
	gap: 42px 26px;
}

.mfx-product-card {
	position: relative;
	overflow: visible;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transform: none;
}

.mfx-product-card::after {
	content: "";
	position: absolute;
	left: 0;
	right: 100%;
	bottom: -1px;
	height: 1px;
	background: var(--mfx-teal);
	transition: right .38s cubic-bezier(.2,.75,.25,1);
}

.mfx-product-card:hover {
	box-shadow: none;
	transform: none;
}

.mfx-product-card:hover::after {
	right: 0;
}

.mfx-product-card__visual {
	aspect-ratio: 1.25;
	padding: 28px;
	border: 0;
	border-radius: 0;
	background: #e9f0f1;
}

.mfx-product-card__visual::after {
	content: "";
	position: absolute;
	inset: 0;
	border: 1px solid rgba(6,27,45,.07);
	pointer-events: none;
}

.mfx-product-card__visual img {
	width: 72%;
	height: 72%;
	transition: transform .55s cubic-bezier(.2,.75,.25,1);
}

.mfx-product-card:hover .mfx-product-card__visual img {
	transform: scale(1.035);
}

.mfx-product-card__sku {
	top: 0;
	left: 0;
	padding: 7px 9px;
	border-radius: 0;
	background: var(--mfx-navy);
}

.mfx-product-card__view {
	right: 0;
	bottom: 0;
	padding: 9px 11px;
	border: 0;
	border-radius: 0;
	background: var(--mfx-white);
	opacity: 0;
	transform: translateX(8px);
	transition: opacity .28s ease, transform .28s ease;
}

.mfx-product-card:hover .mfx-product-card__view {
	opacity: 1;
	transform: translateX(0);
}

.mfx-product-card__body {
	padding: 18px 0 17px;
	border-bottom: 1px solid var(--mfx-line);
}

.mfx-product-card h3 {
	min-height: 42px;
	font-size: 15px;
}

.mfx-product-card__body > div {
	border-top: 0;
}

/* Dark section: retain continuous surface, refine rows */
.mfx-approach__points > div {
	position: relative;
	overflow: hidden;
}

.mfx-approach__points > div::before {
	content: "";
	position: absolute;
	inset: 0 100% 0 0;
	background: rgba(255,255,255,.035);
	transition: right .35s ease;
}

.mfx-approach__points > div:hover::before {
	right: 0;
}

.mfx-approach__points h3,
.mfx-approach__points p,
.mfx-approach__points span {
	position: relative;
	z-index: 1;
}

.mfx-approach__points h3 {
	transition: transform .28s ease;
}

.mfx-approach__points > div:hover h3 {
	transform: translateX(4px);
}

/* Process: one architectural row, no framed cards */
.mfx-step-grid {
	border: 0;
	border-top: 1px solid var(--mfx-line);
	border-bottom: 1px solid var(--mfx-line);
	border-radius: 0;
}

.mfx-step-grid > a {
	overflow: hidden;
	border-right: 1px solid var(--mfx-line);
	background: transparent;
}

.mfx-step-grid > a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 2px;
	background: var(--mfx-teal);
	transition: width .35s cubic-bezier(.2,.75,.25,1);
}

.mfx-step-grid > a:hover {
	background: transparent;
}

.mfx-step-grid > a:hover::before {
	width: 100%;
}

.mfx-step-grid svg {
	transition: transform .35s cubic-bezier(.2,.75,.25,1);
}

.mfx-step-grid > a:hover svg {
	transform: translateX(6px);
}

/* Shop: an editorial filter bar */
.mfx-shop-tools {
	padding: 25px 0;
	border: 0;
	border-top: 1px solid var(--mfx-line);
	border-bottom: 1px solid var(--mfx-line);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.mfx-shop-tools form {
	border: 0;
	border-bottom: 1px solid #aabdc1;
	border-radius: 0;
	background: transparent;
}

.mfx-shop-tools form:focus-within {
	border-color: var(--mfx-teal);
}

.mfx-shop-tools button {
	border-radius: 0;
}

.mfx-shop-tools__terms a {
	border: 0;
	border-bottom: 1px solid var(--mfx-line);
	border-radius: 0;
	background: transparent;
}

.mfx-shop-tools__terms a:hover {
	border-color: var(--mfx-teal);
	background: transparent;
}

.mfx-shop-tools__terms small {
	border-radius: 2px;
}

/* Core WooCommerce listing: remove card stack */
.woocommerce ul.products,
ul.products {
	gap: 42px 25px;
}

.woocommerce ul.products li.product,
ul.products li.product {
	position: relative;
	overflow: visible;
	padding: 0 0 18px;
	border: 0;
	border-bottom: 1px solid var(--mfx-line);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	transform: none;
}

.woocommerce ul.products li.product::after,
ul.products li.product::after {
	content: "";
	position: absolute;
	left: 0;
	right: 100%;
	bottom: -1px;
	height: 1px;
	background: var(--mfx-teal);
	transition: right .36s cubic-bezier(.2,.75,.25,1);
}

.woocommerce ul.products li.product:hover,
ul.products li.product:hover {
	transform: none;
	box-shadow: none;
}

.woocommerce ul.products li.product:hover::after,
ul.products li.product:hover::after {
	right: 0;
}

.woocommerce ul.products li.product img,
ul.products li.product img {
	aspect-ratio: 1.2;
	margin-bottom: 17px;
	border-radius: 0;
	background: #e9f0f1;
	transition: transform .48s cubic-bezier(.2,.75,.25,1);
}

.woocommerce ul.products li.product:hover img,
ul.products li.product:hover img {
	transform: scale(1.025);
}

.woocommerce ul.products li.product .button,
ul.products li.product .button {
	position: relative;
	width: auto;
	padding: 9px 0;
	border-bottom: 1px solid var(--mfx-navy);
	border-radius: 0;
	background: transparent;
	color: var(--mfx-navy);
	text-align: left;
}

.woocommerce ul.products li.product .button:hover,
ul.products li.product .button:hover {
	border-color: var(--mfx-teal);
	background: transparent;
	color: var(--mfx-teal-dark);
	transform: none;
}

/* Product detail: remove nested panels */
.single-product div.product {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.single-product div.product .woocommerce-product-gallery {
	padding: 36px;
	border-radius: 0;
	background: #e9f0f1;
}

.single-product div.product .summary {
	padding-top: 5px;
}

.mfx-product-support {
	gap: 0;
	border-top: 1px solid var(--mfx-line);
	border-bottom: 1px solid var(--mfx-line);
}

.mfx-product-support > div {
	padding: 14px 14px 14px 0;
	border: 0;
	border-right: 1px solid var(--mfx-line);
	border-radius: 0;
	background: transparent;
}

.mfx-product-support > div:last-child {
	padding-left: 14px;
	border-right: 0;
}

.mfx-product-quote {
	border: 0;
	border-top: 1px solid var(--mfx-teal);
	border-bottom: 1px solid var(--mfx-teal);
	border-radius: 0;
	background: transparent;
}

.mfx-product-quote:hover {
	background: var(--mfx-mint);
	color: var(--mfx-teal-dark);
}

.woocommerce-tabs ul.tabs {
	border-top-color: var(--mfx-line);
}

.mfx-product-confidence {
	border: 0;
	border-top: 1px solid var(--mfx-line);
	border-bottom: 1px solid var(--mfx-line);
	border-radius: 0;
}

.mfx-product-confidence > div {
	background: transparent;
}

/* Forms and account: professional utility surfaces, not floating boxes */
.mf-service-aside,
.mf-service-form,
.wpcf7-form,
.woocommerce-MyAccount-navigation ul,
table.shop_table,
.wc-block-components-totals-wrapper,
.woocommerce-checkout-review-order {
	border-radius: 0;
	box-shadow: none;
}

.mf-service-form {
	border: 0;
	border-top: 1px solid var(--mfx-line);
	border-bottom: 1px solid var(--mfx-line);
}

.mf-service-aside {
	border-radius: 0;
}

.mf-form-grid input:not([type="submit"]),
.mf-form-grid textarea {
	border-radius: 0;
	border-width: 0 0 1px;
	background: transparent;
}

.mf-form-grid input:focus,
.mf-form-grid textarea:focus {
	box-shadow: none;
}

.mf-form-submit input {
	border-radius: 0;
}

/* Reveal is deliberately modest */
.mfx-reveal {
	opacity: 0;
	transform: translateY(8px);
	transition:
		opacity .6s ease calc(var(--mfx-order,0) * 55ms),
		transform .6s cubic-bezier(.2,.75,.25,1) calc(var(--mfx-order,0) * 55ms);
}

.mfx-reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}

@media (max-width: 820px) {
	#page {
		padding-top: 66px;
	}

	.mfx-scrolled .mfx-header__main {
		min-height: 66px;
	}

	.mfx-scrolled .mfx-brand__mark {
		width: 34px;
		height: 34px;
	}

	.mfx-scrolled .mfx-brand__text strong {
		font-size: 22px;
	}

	.mfx-header-search,
	.mfx-cart-pill {
		border-radius: 2px;
	}

	.mfx-showcase {
		min-height: 455px;
	}

	.mfx-showcase__stage {
		height: 347px;
	}

	.mfx-finder {
		padding: 16px 0;
	}

	.mfx-finder__inner {
		min-height: 0;
	}

	.mfx-finder form {
		padding: 0;
		border: 0;
	}

	.mfx-universe-grid {
		border-bottom: 0;
	}

	.mfx-universe {
		min-height: 285px;
		border-right: 0;
		border-bottom: 1px solid var(--mfx-line);
	}

	.mfx-universe__icon {
		margin-top: 25px;
	}

	.mfx-step-grid > a {
		border-right: 0;
	}

	.mfx-product-support > div,
	.mfx-product-support > div:last-child {
		padding: 13px 0;
		border-right: 0;
		border-bottom: 1px solid var(--mfx-line);
	}

	.mfx-product-support > div:last-child {
		border-bottom: 0;
	}
}

@media (max-width: 520px) {
	.mfx-showcase {
		min-height: 410px;
	}

	.mfx-showcase__stage {
		grid-template-columns: 1.22fr .78fr;
		height: 302px;
	}

	.mfx-showcase-product,
	.mfx-showcase-product--1,
	.mfx-showcase-product--2,
	.mfx-showcase-product--3 {
		width: auto;
		padding: 10px;
	}

	.mfx-showcase-product__meta {
		left: 10px;
		right: 10px;
		bottom: 8px;
	}

	.mfx-showcase-product__meta strong {
		font-size: 7px;
	}

	.mfx-showcase-product__meta small {
		font-size: 6px;
	}

	.mfx-universe {
		padding-inline: 5px;
	}

	.mfx-product-grid {
		gap: 34px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mfx-header__main,
	.mfx-brand__mark,
	.mfx-brand__text strong,
	.mfx-main-menu > li > a,
	.mfx-main-menu > li > a::after,
	.mfx-nav-row__links a,
	.mfx-nav-row__links a::after,
	.mfx-showcase-product__image img,
	.mfx-universe__icon,
	.mfx-product-card__visual img,
	.woocommerce ul.products li.product img,
	ul.products li.product img {
		transition: none;
	}
}
/* MedFast finalisation: reversible catalogue-only mode and mobile safeguards. */
html,
body {
  max-width: 100%;
  overflow-x: clip;
}

.tagged_as {
  display: none !important;
}

.mfx-header__actions {
  margin-left: auto;
}

.mf-form-privacy {
  color: #586d7c;
  font-size: 13px;
}

.mf-form-privacy a {
  color: inherit;
  font-weight: 700;
  text-underline-offset: 3px;
}

:where(a, button, input, textarea, select):focus-visible {
  outline: 3px solid #48d1d7;
  outline-offset: 3px;
}

@media (max-width: 767px) {
  .mfx-header__actions {
    gap: 8px;
  }
}

/* Final UI audit: navigation alignment, cart spacing, stable coupon popover and footer contrast. */
@media (min-width: 821px) {
	.mfx-navigation {
		margin-left: -14px;
	}

	.mfx-main-menu > li:first-child > a {
		padding-left: 14px;
	}
}

.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper {
	padding-right: 18px;
	padding-left: 18px;
}

@media (min-width: 768px) {
	.woocommerce-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block {
		position: relative;
		z-index: 4;
		overflow: visible;
	}

	.woocommerce-cart .wc-block-components-totals-coupon {
		position: relative;
	}

	.woocommerce-cart .wc-block-components-totals-coupon .wc-block-components-panel__content {
		position: absolute;
		top: calc(100% + 16px);
		left: -18px;
		right: -18px;
		z-index: 5;
		padding: 14px 18px;
		border: 1px solid var(--mfx-line);
		background: var(--mfx-white);
		box-shadow: 0 14px 30px rgba(6, 27, 45, .14);
	}
}

.mf-footer a {
	color: rgba(255, 255, 255, .72);
}

/* Keep the cart viewport stable and remove Storefront's redundant mobile footer bar. */
@media (min-width: 768px) {
	html {
		overflow-y: scroll;
		scrollbar-gutter: stable;
	}
}

.storefront-handheld-footer-bar {
	display: none !important;
}

/* Storefront reserves 62px for its handheld bar even when that bar is hidden. */
@media (max-width: 767px) {
	body {
		padding-bottom: 0 !important;
	}
}

/* Fill tall viewports so the footer remains flush with the bottom edge. */
#page {
	display: flex;
	flex-direction: column;
	min-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
}

#content {
	flex: 1 0 auto;
	width: 100%;
}

.site-footer {
	flex: 0 0 auto;
}

/* WooCommerce adds a 16px bottom margin to the toggle only while expanded. */
.woocommerce-cart .wc-block-components-totals-coupon .wc-block-components-panel__button[aria-expanded="true"] {
	margin-bottom: 0;
}

/* Keep the homepage headline factual and visually balanced. */
.mfx-hero h1 {
	max-width: 620px;
	font-size: clamp(48px, 4.6vw, 64px);
	line-height: 1.02;
	letter-spacing: -.04em;
}

.mfx-hero h1 span {
	color: #1f506b;
}

@media (min-width: 821px) {
	.mfx-hero__copy {
		align-self: stretch;
		display: flex;
		flex-direction: column;
		min-height: 490px;
	}

	.mfx-hero__copy .mfx-hero__lead {
		margin-top: auto;
	}
}

