.hg-article--blocks .hg-article__content.entry-content > .alignfull {
	margin-top: 0;
}

.entry-content .wp-block-cover {
	margin-bottom: 0;
	align-items: flex-end !important;
	justify-content: center !important;
	min-height: var(--hg-banner-min) !important;
	padding-top: 80px !important;
	padding-right: 0 !important;
	padding-bottom: 48px !important;
	padding-left: 0 !important;
}

.entry-content .wp-block-cover.has-custom-content-position.is-position-bottom-left,
.entry-content .wp-block-cover.has-custom-content-position.is-position-bottom-center,
.entry-content .wp-block-cover.has-custom-content-position.is-position-center-center {
	align-items: flex-end !important;
	justify-content: center !important;
}

.entry-content .wp-block-cover .wp-block-cover__background {
	opacity: 1 !important;
	background: linear-gradient(90deg, rgba(1, 38, 31, 0.92) 0%, rgba(1, 38, 31, 0.55) 55%, rgba(1, 38, 31, 0.2) 100%) !important;
}

/*
 * Same geometry as .hg-page-banner > .hg-wrap:
 * a max-width container centered in the banner, copy left-aligned inside.
 */
.entry-content .wp-block-cover .wp-block-cover__inner-container,
.entry-content .wp-block-cover.has-custom-content-position .wp-block-cover__inner-container,
.entry-content .wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container,
.entry-content .wp-block-cover.has-custom-content-position.is-position-bottom-left .wp-block-cover__inner-container,
.entry-content .wp-block-cover.has-custom-content-position.is-position-bottom-center .wp-block-cover__inner-container,
.entry-content .wp-block-cover.has-custom-content-position.is-position-center-center .wp-block-cover__inner-container {
	box-sizing: border-box;
	flex: 0 1 var(--hg-max) !important;
	width: 100% !important;
	max-width: var(--hg-max) !important;
	min-width: 0;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--hg-pad);
	padding-right: var(--hg-pad);
	text-align: left;
}

.hg-article--blocks .hg-article__content.entry-content > .alignwide {
	width: calc(100% - (2 * var(--hg-pad)));
	margin-left: auto;
	margin-right: auto;
}

/* Centered intros (certs / values) share the same wide axis as the card rows. */
.hg-article--blocks .hg-article__content.entry-content > p.has-text-align-center {
	max-width: 1152px;
	width: calc(100% - (2 * var(--hg-pad)));
}

.entry-content .wp-block-cover .wp-block-heading,
.entry-content .wp-block-cover h1.wp-block-heading {
	margin: 12px 0 0;
	max-width: 720px;
	width: auto;
	font-family: var(--hg-display);
	font-size: 48px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.6px;
	overflow-wrap: break-word;
	text-align: left;
}

.entry-content .wp-block-cover .wp-block-cover__inner-container > p {
	max-width: 560px;
	margin: 16px 0 0;
	font-family: inherit;
	font-size: 16px;
	font-weight: inherit;
	line-height: 1.6;
	letter-spacing: 0.16px;
	text-align: left;
	color: var(--hg-mist);
	opacity: 0.9;
}

.entry-content .wp-block-cover .wp-block-cover__inner-container > p.hg-cover-kicker {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	margin: 0;
	max-width: none;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1.2px;
	line-height: 1;
	text-transform: uppercase;
	color: var(--hg-green-200);
}

.entry-content .hg-cover-kicker::before {
	content: "";
	width: 48px;
	height: 2px;
	background: currentColor;
}

.entry-content .wp-block-media-text {
	margin-top: 64px;
	margin-bottom: 24px;
	gap: 48px;
}

.entry-content .wp-block-media-text img {
	border-radius: 16px;
	display: block;
}

.entry-content .wp-block-heading {
	font-family: var(--hg-display);
	color: var(--hg-ink);
}

.entry-content h2.wp-block-heading {
	font-size: 32px;
	line-height: 1.25;
	letter-spacing: 0.28px;
}

.entry-content p {
	color: var(--hg-muted);
	line-height: 1.65;
}

.entry-content .wp-block-columns,
.entry-content .wp-block-columns.is-layout-flex,
.entry-content .wp-block-columns.wp-block-columns-is-layout-flex {
	align-items: stretch !important;
}

.entry-content .wp-block-column {
	display: flex;
	flex-direction: column;
	align-self: stretch;
	min-width: 0;
}

.entry-content .hg-stats {
	margin: 16px auto 48px;
}

.entry-content .hg-stat {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 28px 20px;
	border: 1px solid var(--hg-line);
	border-radius: 16px;
	background:
		linear-gradient(180deg, rgba(188, 240, 174, 0.16) 0%, rgba(255, 255, 255, 0) 70%),
		var(--hg-white);
	text-align: center;
}

.entry-content .hg-stat h3 {
	margin: 0 0 6px;
	font-size: 36px;
	font-weight: 700;
	letter-spacing: -0.4px;
	color: var(--hg-green-900);
}

.entry-content .hg-stat p {
	margin: 0;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	color: var(--hg-green-700);
}

.entry-content .hg-products {
	margin: 32px auto 8px;
}

.entry-content .hg-products .wp-block-column {
	display: flex;
}

.entry-content .hg-product-tile {
	display: flex;
	flex-direction: column;
	height: 100%;
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 12px;
	background: var(--hg-white);
	box-shadow: 0 8px 30px rgba(26, 60, 52, 0.05);
}

.entry-content figure.wp-block-image.hg-product-tile img {
	width: 100%;
	height: 180px !important;
	max-height: 180px;
	object-fit: cover;
	object-position: center;
	display: block;
	aspect-ratio: auto;
}

.entry-content .hg-product-tile figcaption,
.entry-content .hg-product-tile .wp-element-caption {
	padding: 12px 14px 16px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.2px;
	color: var(--hg-green-900);
}

.entry-content .wp-block-pullquote {
	margin: 32px auto;
	padding: 32px;
	border: 0;
	border-radius: 16px;
	background: var(--hg-green-900);
	color: var(--hg-white);
}

.entry-content .wp-block-pullquote.alignwide {
	max-width: 1152px;
	width: calc(100% - (2 * var(--hg-pad)));
	margin-left: auto;
	margin-right: auto;
}

.entry-content .wp-block-pullquote p {
	font-family: var(--hg-display);
	font-size: 24px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--hg-white);
}

.entry-content .wp-block-pullquote cite {
	color: var(--hg-green-200);
	font-style: normal;
	letter-spacing: 0.4px;
	text-transform: uppercase;
	font-size: 12px;
}

.entry-content .hg-cert {
	display: flex;
	flex-direction: column;
	padding: 28px 24px;
	border: 1px solid var(--hg-line);
	border-radius: 16px;
	background: var(--hg-white);
}

.entry-content .hg-cert img {
	width: 48px;
	height: 48px;
	margin-bottom: 16px;
}

.entry-content .hg-cert h3 {
	margin: 0 0 8px;
	font-size: 18px;
	color: var(--hg-green-900);
}

.entry-content .hg-cert p {
	margin: 0;
	font-size: 14px;
}

.entry-content .hg-value {
	display: flex;
	flex-direction: column;
	padding: 24px;
	border-radius: 16px;
	background: var(--hg-white);
	border: 1px solid rgba(193, 200, 196, 0.7);
}

.entry-content .hg-value p {
	margin-bottom: 0;
}

.entry-content .hg-value img,
.entry-content .hg-icon img {
	width: 48px;
	height: 48px;
}

.entry-content .hg-value h3 {
	margin: 12px 0 8px;
	font-size: 18px;
	color: var(--hg-green-900);
}

.entry-content .hg-cta-band {
	margin-top: 48px !important;
	padding: 64px 48px;
	border-radius: 0;
}

.entry-content .hg-cta-band .wp-block-heading,
.entry-content .hg-cta-band p {
	color: var(--hg-white);
}

.entry-content .wp-block-button__link {
	padding: 14px 28px;
	border-radius: 8px;
}

.entry-content .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: rgba(251, 249, 248, 0.45);
	color: var(--hg-white);
}

.entry-content ul.wp-block-list {
	color: var(--hg-muted);
}

.entry-content .wp-block-list li {
	margin: 0 0 8px;
}

.entry-content .hg-legal {
	margin-top: 56px;
	margin-bottom: 48px;
}

.entry-content .hg-legal.is-layout-constrained > * {
	max-width: none;
}

.entry-content .hg-legal > .wp-block-heading {
	margin-top: 40px;
	margin-bottom: 12px;
}

.entry-content .hg-legal > h3.wp-block-heading {
	margin-top: 28px;
	font-size: 18px;
	letter-spacing: 0.2px;
}

.entry-content .hg-legal > .wp-block-heading:first-child {
	margin-top: 0;
}

.entry-content .hg-legal .hg-legal__updated {
	display: inline-block;
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.96px;
	text-transform: uppercase;
	color: var(--hg-green-700);
}

.entry-content .hg-legal ul.wp-block-list {
	margin: 0 0 16px;
	padding-left: 20px;
}

.entry-content .hg-contact-intro {
	margin-top: 56px;
	margin-bottom: 0;
}

.entry-content .hg-contact-intro > .wp-block-heading {
	margin-top: 0;
	max-width: 720px;
}

.entry-content .hg-contact-intro > p {
	max-width: 720px;
}

.entry-content .hg-contact-details {
	margin-top: 32px;
	padding: 8px 24px;
	border: 1px solid var(--hg-line);
	border-radius: 16px;
	background: var(--hg-white);
}

.entry-content .hg-contact-card {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 16px;
	margin: 0;
	padding: 20px 0;
	border-bottom: 1px solid var(--hg-line);
}

.entry-content .hg-contact-details .hg-contact-card:last-child {
	border-bottom: 0;
}

.entry-content .hg-contact-card .hg-icon,
.entry-content .hg-contact-card .wp-block-image {
	flex: 0 0 48px;
	width: 48px;
	margin: 0;
}

.entry-content .hg-contact-card > .wp-block-group {
	flex: 1;
	min-width: 0;
}

.entry-content .hg-contact-card h3 {
	margin: 2px 0 6px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.96px;
	text-transform: uppercase;
	color: var(--hg-green-700);
}

.entry-content .hg-contact-card p {
	margin: 0;
	font-size: 16px;
	line-height: 1.5;
	color: var(--hg-ink);
	overflow-wrap: anywhere;
	word-break: break-word;
}

.entry-content .hg-contact-card a {
	color: var(--hg-ink);
	text-decoration: underline;
	text-decoration-color: rgba(59, 105, 52, 0.35);
	text-underline-offset: 3px;
}

.entry-content .hg-contact-card a:hover {
	color: var(--hg-green-700);
	text-decoration-color: var(--hg-green-700);
}

.hg-page-contact {
	padding-bottom: 80px;
}

.hg-contact-form-slot {
	width: calc(100% - (2 * var(--hg-pad)));
	max-width: 1152px;
	margin: 40px auto 0;
	padding: 32px;
	border: 1px solid var(--hg-line);
	border-radius: 16px;
	background:
		linear-gradient(180deg, rgba(188, 240, 174, 0.14) 0%, rgba(255, 255, 255, 0) 42%),
		var(--hg-white);
}

.hg-contact-form-slot__kicker {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 10px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: var(--hg-green-700);
}

.hg-contact-form-slot__kicker::before {
	content: "";
	width: 32px;
	height: 2px;
	background: currentColor;
}

.hg-contact-form-slot__title {
	margin: 0 0 20px;
	font-family: var(--hg-display);
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.2px;
	color: var(--hg-green-900);
}

.hg-contact-form-slot__product {
	margin: -8px 0 20px;
	font-size: 14px;
	font-weight: 600;
	color: var(--hg-green-700);
}

.hg-contact-form-slot .hg-form--page {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.hg-contact-form-slot .hg-form__admin-note {
	margin-top: 8px;
}

@media (min-width: 961px) {
	.hg-page-contact.hg-article--blocks {
		display: grid;
		grid-template-columns:
			minmax(var(--hg-pad), 1fr)
			minmax(0, 664px)
			minmax(280px, 440px)
			minmax(var(--hg-pad), 1fr);
		column-gap: 48px;
		align-items: stretch;
	}

	.hg-page-contact.hg-article--blocks .hg-article__content.entry-content {
		display: contents;
	}

	.hg-page-contact.hg-article--blocks .hg-article__content.entry-content > .alignfull {
		grid-column: 1 / -1;
		grid-row: 1;
		width: auto;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
	}

	.hg-page-contact.hg-article--blocks .hg-contact-intro {
		grid-column: 2 / 4;
		grid-row: 2;
		width: auto;
		max-width: none;
		margin-left: 0;
		margin-right: 0;
		margin-top: 56px;
	}

	.hg-page-contact.hg-article--blocks .hg-contact-details {
		grid-column: 2;
		grid-row: 3;
		width: auto;
		max-width: none;
		margin: 32px 0 0;
		align-self: stretch;
	}

	.hg-contact-form-slot {
		grid-column: 3;
		grid-row: 3;
		width: auto;
		max-width: none;
		margin: 32px 0 0;
		align-self: stretch;
		display: flex;
		flex-direction: column;
	}

	.admin-bar .hg-contact-form-slot {
		top: auto;
	}
}

@media (max-width: 1100px) {
	.entry-content .wp-block-cover .wp-block-heading,
	.entry-content .wp-block-cover h1.wp-block-heading {
		font-size: 36px;
	}
}

@media (max-width: 800px) {
	.entry-content .wp-block-cover {
		padding: 56px 0 36px !important;
		min-height: var(--hg-banner-min) !important;
		align-items: flex-end !important;
		justify-content: center !important;
	}

	.entry-content .wp-block-cover .wp-block-heading,
	.entry-content .wp-block-cover h1.wp-block-heading {
		font-size: 32px;
	}

	.entry-content .wp-block-media-text {
		margin-top: 40px;
		gap: 24px;
	}

	.entry-content h2.wp-block-heading {
		font-size: 26px;
	}

	.entry-content .hg-cta-band {
		padding: 48px 24px;
	}

	.entry-content figure.wp-block-image.hg-product-tile img {
		height: 160px !important;
		max-height: 160px;
	}

	.entry-content .hg-contact-intro {
		margin-top: 40px;
	}

	.entry-content .hg-legal {
		margin-top: 40px;
		margin-bottom: 32px;
	}

	.entry-content .hg-contact-details {
		padding: 4px 16px;
	}

	.hg-contact-form-slot {
		margin-top: 28px;
		padding: 24px 20px;
	}
}
