:root {
	/* Color variables */
	--color-black: #000;
	--color-white: #fff;
	--color-deep-teal-1: #285161;
	--color-deep-teal-2: #19919c;
	--color-twilight: #54aaa9;
	--color-cream: #fbefd2;
	--color-cream-soft: #f8e7bd;
	--color-coral: #ca5e4b;
	--color-gold: #df9e49;
	--color-brown-sugar: #d47f50;
	--color-vapor: #d0e7f9;
	--color-sky-soft: #d6eef3;
	--color-off-white: #f8f3e4;
	--color-ink: #173944;
	--rgb-black: 0, 0, 0;
	--rgb-cream: 251, 239, 210;
	--rgb-deep-teal-1: 40, 81, 97;

	/* Typography variables */
	/* 	--font-display: "Eveleth", "Arial Black", Impact, sans-serif; */
	--font-display: "EvelethClean-Regular", "Arial Black", Impact, sans-serif;
	--font-body: Helvetica, Arial, sans-serif;
	--font-manrope: "Manrope", Arial, sans-serif;
	--font-script: "relation-two", "Brush Script MT", cursive;
	--font-size-h1: 54px;
	--font-size-h2: 42px;
	--font-size-h3: 32px;
	--font-size-h4: 26px;
	--font-size-h5: 20px;
	--font-size-h6: 18px;
	--font-size-display-md: 44px;
	--font-size-display-sm: 32px;
	--font-size-script: 28px;
	--font-size-body-xl: 22px;
	--font-size-body-lg: 20px;
	--font-size-body: 18px;
	--font-size-body-sm: 16px;
	--font-size-label: 14px;
	--font-size-caption: 12px;
	--font-size-micro: 10px;
	--line-height-heading: 1.4;
	--line-height-heading-compact: 1.32;
	--line-height-body: 1.3;
	--line-height-body-relaxed: 1.4;
	--line-height-body-18: 23px;
	--line-height-body-phone: 21px;
	--line-height-script: 38px;
	--line-height-script-mobile: 30px;
	--line-height-hero: 1.2;
	--line-height-hero-mobile: 1.22;
	--line-height-tight: 1;
	--line-height-micro: 1.1;
	--letter-spacing-normal: 0;

	/* Layout variables */
	--container: 1280px;
	--container-wide: 1600px;
	--gutter: 0px;
	--radius: 12px;
	--section-padding-block: 120px;
	--space-section: 96px;
	--space-section-tablet: 80px;
	--space-section-mobile: 64px;
	--space-section-compact: 48px;
	--space-content: 24px;
}

.page-id-59 .rim-steps h2{
	color: #285161;
}
.page-id-59 .warm-gold-glow-section:before{
	content: none;
}
@font-face {
	font-display: swap;
	font-family: "EvelethClean-Regular";
	font-style: normal;
	font-weight: 400;
	src: url("/wp-content/uploads/2026/07/EvelethClean-Regular.woff2") format("woff2"),
		url("/wp-content/uploads/2026/07/EvelethClean-Regular.woff") format("woff");
}


@font-face {
	font-display: swap;
	font-family: "Helvetica";
	font-style: normal;
	font-weight: 400;
	src: url("/wp-content/uploads/2026/07/helvetica.woff2") format("woff2"),
		url("/wp-content/uploads/2026/07/helvetica.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-family: "Helvetica";
	font-style: normal;
	font-weight: 700;
	src: url("/wp-content/uploads/2026/07/helvetica-bold.woff2") format("woff2"),
		url("/wp-content/uploads/2026/07/helvetica-bold.woff") format("woff");
}

@font-face {
	font-display: swap;
	font-family: "Manrope";
	font-style: normal;
	font-weight: 700;
	src: url("https://theperfectrim.techsolutionn.com/wp-content/uploads/2026/07/manrope-700-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

*, *::before, *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	scroll-behavior: smooth;
}


/* =========================
Base Typography
========================= */

body {
	background: linear-gradient(0deg, rgba(var(--rgb-cream), .4) 0%, rgba(var(--rgb-cream), .4) 100%), var(--color-white);
	color: var(--color-deep-teal-1);
	--type-font-family: var(--font-body);
	--type-line-height: var(--line-height-body);
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}

img, svg, video {
	display: block;
	height: auto;
	max-width: 100%;
}

img.brand-wordmark {
	aspect-ratio: 1340 / 123;
	height: auto;
	object-fit: contain;
}

/* Shared certification badge group */
.certification-badges {
	aspect-ratio: 439 / 128;
	flex: none;
	height: auto;
	max-width: 100%;
	position: relative;
	width: min(439px, 100%);
}

.certification-badges__item {
	display: block;
	height: 88.446%;
	max-width: none;
	object-fit: contain;
	position: absolute;
	top: 5.9%;
	width: 25.788%;
}

[data-status="sent"] .wpcf7-response-output{
	color: green;
}
.wpcf7 form .wpcf7-response-output {
	margin: 0.5em 0.5em 1em;
}
.error404 #primary-menu a{
	color: #285161;
}

.certification-badges__item--sugar {
	left: .948%;
	transform: rotate(4.2deg);
	width: 26.373%;
}

.comparison__sticky.is-stack-heading-released{
	margin-bottom: 40px;
}

.certification-badges__item--gmo {
	left: 24.651%;
	top: 5.774%;
	transform: rotate(-7.56deg);
	width: 27.287%;
}

.certification-badges__item--gluten {
	left: 50.365%;
	transform: rotate(5.53deg);
}

.certification-badges__item--usa {
	left: 73.16%;
	transform: rotate(5.08deg);
}

/* Shared light pool-water section with responsive edge fades */
.water-transition-section {
	--water-fade-top: 16%;
	--water-fade-bottom: 86%;
	background-color: #fdf9ed;
	background-image:
		linear-gradient(
			180deg,
			#fdf9ed 0%,
			rgba(253, 249, 237, 0) var(--water-fade-top),
			rgba(253, 249, 237, 0) var(--water-fade-bottom),
			#fdf9ed 100%
		),
		linear-gradient(rgba(208, 231, 249, .6), rgba(208, 231, 249, .6)),
		var(--water-transition-background, none);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

/* Shared warm-gold glow used behind final CTA sections */
.warm-gold-glow-section {
	--warm-gold-glow-top: 0px;
	background: #fdf9ed;
	isolation: isolate;
	overflow: visible;
	position: relative;
}
.wpcf7 form .wpcf7-response-output{
	border-radius: 20px;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form .wpcf7-response-output {
	border-color: var(--color-coral);
}
.wpcf7-not-valid-tip {
	color: var(--color-coral) !important;
	margin-top: 15px;
}

.warm-gold-glow-section::before {
	background: rgba(252, 210, 95, .3);
	content: "";
	filter: blur(50px);
	height: 665px;
	inset-inline: 0;
	pointer-events: none;
	position: absolute;
	top: var(--warm-gold-glow-top);
	z-index: 0;
}

.warm-gold-glow-section > * {
	position: relative;
	z-index: 1;
}

a {
	color: inherit;
	text-decoration: none;
}

button {
	background: none;
	border: 0;
	color: inherit;
	cursor: pointer;

}

ul, ol {
	list-style: none;
}

/* =========================
Heading Styles
========================= */

h1, h2, h3, h4, h5, h6 {
	color: inherit;
	--type-font-family: var(--font-display);
	--type-font-weight: 750;
	--type-letter-spacing: var(--letter-spacing-normal);
	--type-line-height: var(--line-height-heading);
	--type-text-transform: uppercase;
}

h1 {
	color: var(--color-cream);
	--type-font-size: var(--font-size-h1);
	--type-line-height: 1.08;
	max-width: 700px;
}

h2 {
	--type-font-size: var(--font-size-h2);
}

h3 {
	--type-font-size: var(--font-size-h3);
}

h4 {
	--type-font-size: var(--font-size-h4);
}

h5 {
	--type-font-size: var(--font-size-h5);
}

h6 {
	--type-font-size: var(--font-size-h6);
}

p {
	--type-font-size: var(--font-size-body);
}

strong {
	--type-font-weight: 700;
}

/* =========================
Reusable Typography Roles
========================= */

.heading-display,
.distributor-hero h1,
.how-intro h1,
.product-hero h1,
.product-video h2 {
	--type-font-size: var(--font-size-display-md);
	--type-line-height: 1.3;
}

.heading-display-fixed,
.contact-intro h1,
.operational-hero h1 {
	--type-font-size: var(--font-size-display-md);
	--type-line-height: 57px;
}

.heading-section {
	--type-font-size: var(--font-size-h2);
	--type-line-height: var(--line-height-heading);
}

.heading-section-tablet,
.how-steps h2,
.how-cta h2,
.product-page .better-way h2,
.product-page .product-steps h2,
.product-page .sku-snapshot h2,
.product-page .operator-benefits h2,
.product-page .hospitality-environments h2,
.product-page .decision-numbers h2,
.product-page .product-final-cta h2 {
	--type-font-size: var(--font-size-h2);
	--type-line-height: var(--line-height-heading);
}

.heading-section-mobile,
.how-explainer h2,
.better-prep h2,
.hospitality-product h2,
.operator-switch h2,
.business-case h2,
.hospitality-audiences h2,
.quick-process h2,
.operational-cta h2 {
	--type-font-size: var(--font-size-h2);
	--type-line-height: var(--line-height-heading);
}

.heading-section-prominent,
.book-fit h2,
.sku-value h2,
.economics h2,
.distributor-page .sku-snapshot h2,
.accounts h2,
.distributor-steps h2,
.objections h2,
.reorder-potential h2,
.distributor-contact h2,
.hidden-cost h2 {
	--type-font-size: var(--font-size-h2);
	--type-line-height: var(--line-height-heading);
}

.heading-subsection,
.distributor-hero__copy h2,
.book-fit__group h3,
.sku-value__benefits h3,
.economics-card h3,
.owner-math h3,
.operational-hero h2,
.hidden-cost h3 {
	--type-font-size: var(--font-size-h5);
	--type-line-height: var(--line-height-heading);
}

.heading-card,
.account-card h3,
.distributor-step-card h3,
.faq__group > h3,
.product-step h3,
.operator-card h3,
.environment-card h3 {
	--type-font-size: var(--font-size-h5);
	--type-line-height: var(--line-height-tight);
}

.body-md,
.product-benefits li {
	--type-font-size: var(--font-size-body);
	--type-line-height: var(--line-height-body);
}

.body-md-static,
.final-cta__text p {
	--type-font-size: var(--font-size-body);
	--type-line-height: var(--line-height-body);
}

.body-md-late,
.distributor-hero__copy p,
.book-fit__copy p,
.sku-value__copy p,
.economics-card p,
.accounts__heading p,
.account-card p,
.distributor-step-card p,
.objections__heading p,
.faq__answer p,
.reorder-potential p,
.distributor-contact__heading p,
.better-prep p,
.hospitality-product p,
.business-case p,
.quick-process p,
.operational-cta p,
.operator-card p {
	--type-font-size: var(--font-size-body);
	--type-line-height: var(--line-height-body);
}

.body-md-compact,
.environment-card p,
.decision-card > p,
.decision-card__copy > p,
.product-final-cta__copy p {
	--type-font-size: var(--font-size-body);
	--type-line-height: var(--line-height-body);
}

.body-lg,
.book-fit__group li,
.sku-value__benefits li,
.method-list li,
.hidden-cost__results li,
.operator-switch__grid li,
.audience-row__content strong {
	--type-font-size: var(--font-size-body-lg);
	--type-line-height: var(--line-height-body);
}

.body-copy-fixed,
.contact-intro__heading p,
.intro__copy p,
.feature-arch__costs p,
.feature-arch__costs li,
.feature-arch__better p,
.operational-hero p,
.hidden-cost p,
.economics-card__amount span,
.owner-math__formula span {
	--type-font-size: var(--font-size-body);
	--type-line-height: var(--line-height-body-18);
}

.text-label,
.contact-form label,
.contact-form__status {
	--type-font-size: var(--font-size-label);
	--type-line-height: 18px;
}

.text-caption,
.contact-form__error {
	--type-font-size: var(--font-size-caption);
	--type-line-height: 16px;
}

.container {
	margin-inline: auto;
	max-width: var(--container);
	padding-inline: var(--gutter);
	width: 100%;
}

.section-pad {
	padding-block: var(--section-padding-block);
}

/*
* Shared vertical rhythm for top-level page content sections.
* Hero and ticker sections retain their component-specific dimensions.
*/
main > section:not(.hero):not(.feature-arch):not(.marquee-strip):not(.ticker):not(.distributor-ticker) {
	padding-bottom: var(--section-padding-block) !important;
	padding-top: var(--section-padding-block) !important;
}
html body #page main > .better-way.water-transition-section{
	padding-block: 70px !important;
}
html body main section.feature-arch{
	padding-top: 200px !important;
	padding-bottom: 120px !important;
}

.section-heading {
	display: grid;
	gap: 12px;
}

.section-heading--center {
	margin-inline: auto;
	max-width: 780px;
	text-align: center;
}

.section-heading--center p {
	margin-inline: auto;
}

/* =========================
Supporting Text
========================= */

.eyebrow {
	color: var(--color-gold);
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-label);
	--type-font-weight: 950;
	--type-letter-spacing: .02em;
	--type-text-transform: uppercase;
}

.eyebrow--teal {
	color: var(--color-deep-teal-2);
}

/* =========================
Buttons and Navigation
========================= */

.btn {
	--btn-bg: transparent;
	--btn-border: transparent;
	--btn-hover-bg: currentColor;
	--btn-hover-text: var(--color-cream);
	--btn-text: currentColor;
	align-items: center;
	background: var(--btn-bg);
	border: 1px solid var(--btn-border);
	border-radius: 50px;
	color: var(--btn-text);
	display: inline-flex;
	flex: 0 0 auto;
	--type-font-size: var(--font-size-label);
	gap: 10px;
	justify-content: center;
	isolation: isolate;
	--type-line-height: 16px;
	overflow: hidden;
	padding: 15px 24px;
	position: relative;
	--type-text-transform: uppercase;
	transition: border-color .3s ease, color .3s ease;
	white-space: nowrap;
}

.btn::before {
	background: var(--btn-hover-bg);
	border-radius: 50%;
	content: "";
	height: 20px;
	left: 50%;
	opacity: 1;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) scale(0);
	transition: transform .42s cubic-bezier(.4, 0, .2, 1);
	width: 20px;
	z-index: 0;
}
header .btn:before{
	background: #CA5E4B;
}
.btn.btn--coral-outline:before ,
.distributor-hero__cta:before{
	background: #CA5E4B;
}
.distributor-hero__cta:hover{
	border-color: #CA5E4B;
}

.btn__clip {
	display: block;
	height: 16px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.btn__stack {
	display: flex;
	flex-direction: column;
	gap: 10px;
	--type-line-height: 16px;
	transform: translateY(0);
	transition: transform .32s cubic-bezier(.4, 0, .2, 1);
}

.btn__text {
	color: var(--btn-text);
	display: block;
	--type-line-height: 16px;
}

.btn__text--hover {
	color: var(--btn-hover-text);
}

.btn:hover::before,
.btn:focus-visible::before {
	transform: translate(-50%, -50%) scale(18);
}

.btn:hover .btn__stack,
.btn:focus-visible .btn__stack {
	transform: translateY(-26px);
}

.btn--cream {
	--btn-bg: var(--color-cream);
	--btn-hover-bg: var(--color-coral);
	--btn-hover-text: var(--color-cream);
	--btn-text: var(--color-coral);
}

.btn--coral {
	--btn-bg: var(--color-coral);
	--btn-hover-bg: var(--color-cream);
	--btn-hover-text: var(--color-coral);
	--btn-text: var(--color-cream);
}

.btn--coral-outline {
	--btn-hover-bg: var(--color-coral);
	--btn-hover-text: var(--color-cream);
	--btn-text: var(--color-coral);
	box-shadow: inset 0 0 0 1px var(--color-coral);
}

.btn--outline {
	--btn-border: var(--color-cream);
	--btn-hover-bg: var(--color-cream);
	--btn-hover-text: var(--color-coral);
	--btn-text: var(--color-cream);
}

/* Shared "Perfect Rims in Three Simple Steps" section */
.rim-steps h2 {
	color: var(--color-deep-teal-2);
	margin-inline: auto;
	max-width: 676px;
	text-align: center;
}

.rim-steps__grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 32px;
}

.rim-step-card {
	background: var(--color-vapor);
	border-radius: 10px;
	height: 455px;
	overflow: hidden;
	position: relative;
}

.rim-step-card__content {
	color: var(--color-deep-teal-1);
	left: 32px;
	position: absolute;
	top: 32px;
	width: 80%;
	z-index: 2;
}

.rim-step-card__number {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-display-md);
	--type-font-weight: 950;
	--type-line-height: 1.3864;
	color: var(--color-brown-sugar);
	display: block;
	margin-bottom: 16px;
}

.rim-step-card__content h3 {
	--type-font-size: var(--font-size-h5);
	--type-line-height: var(--line-height-heading);
	margin-bottom: 8px;
}

.rim-step-card__body {
	display: grid;
	gap: 8px;
}

.rim-step-card__body h3 {
	margin-bottom: 0;
}

.rim-step-card__visual {
	overflow: hidden;
	position: absolute;
	z-index: 1;
}

.rim-step-card__visual img {
	max-width: none;
	position: absolute;
}

.rim-step-card--dip .rim-step-card__visual, .distributor-step-card--dip .distributor-step-card__visual {
	height: 277px !important;
	left: auto !important;
	top: 160px !important;
	width: 347px !important;
	right: 0;
}

.rim-step-card--dip .rim-step-card__visual img, .distributor-step-card--dip .distributor-step-card__visual img {
	height: 100% !important;
	left: 0 !important;
	top: 0 !important;
	transform: scaleX(-1) !important;
	width: 100% !important;
	object-fit: cover;
}

.rim-step-card--dress .rim-step-card__visual, .distributor-step-card--dress .distributor-step-card__visual {
	height: 297px !important;
	right: -.33px !important;
	top: 163px !important;
	width: 353px !important;
}

.rim-step-card--dress .rim-step-card__visual img, .distributor-step-card--dress .distributor-step-card__visual img {
	height: 100% !important;
	left: 24px !important;
	top: 20px !important;
	transform: scaleX(-1) !important;
	width: 100% !important;
	object-fit: cover;
}
.rim-step-card--deliver .rim-step-card__visual, .distributor-step-card--deliver .distributor-step-card__visual {
	height: 260px !important;
	right: 0 !important;
	top: 194px !important;
	width: 348px !important;
}

.rim-step-card--deliver .rim-step-card__visual img, .distributor-step-card--deliver .distributor-step-card__visual img {
	height: 100% !important;
	inset: 0;
	object-fit: cover !important;
	width: 100% !important;
}

/* Shared repeated content sections */
.method-card {
	display: flex;
	overflow: hidden;
	position: relative;
}

.method-card__image {
	overflow: hidden;
	position: relative;
	z-index: 2;
}

.method-card__image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.method-card__panel {
	background: var(--color-twilight);
	color: var(--color-cream);
	display: flex;
	flex-direction: column;
	gap: 24px;
	position: relative;
	z-index: 1;
}

.method-card__panel h3 {
	color: var(--color-cream);
	text-align: center;
}

.method-card--old .method-card__image {
	border-radius: 12px 0 0 12px;
}

.method-card--old .method-card__panel {
	border-radius: 12px;
	margin-left: -73px;
	padding: 80px 60px 60px 133px;
}

.method-card--new .method-card__panel {
	border-radius: 12px;
	padding: 67px 133px 66px 60px;
}

.method-card--new .method-card__image {
	border-radius: 0 12px 12px 0;
	margin-left: -73px;
}

.method-list {
	display: grid;
	gap: 32px;
	align-items: flex-start;
}

.method-list li {
	color: var(--color-cream);
	padding-left: 28px;
	position: relative;
}

.method-list li::before {
	background: center / contain no-repeat;
	content: "";
	height: 14px;
	left: 0;
	position: absolute;
	top: 4px;
	width: 14px;
}

.sku-snapshot {
	background: linear-gradient(180deg, rgba(251, 239, 210, 0) 0%, var(--color-cream) 12%, var(--color-cream) 88%, rgba(251, 239, 210, 0) 100%);
}

.sku-table {
	width: 100%;
}

.sku-table > div {
	align-items: center;
	border-bottom: 1px solid rgba(25, 145, 156, .2);
	display: grid;
	gap: 32px;
	grid-template-columns: 230px minmax(0, 1fr);
	padding: 14px 16px 15px;
}

.sku-table > div:first-child {
	border-top: 1px solid rgba(25, 145, 156, .2);
	padding-top: 15px;
}

.sku-table dt {
	color: var(--color-deep-teal-2);
	--type-font-size: 16px;
	--type-line-height: 1.3;
}

.sku-table dd {
	color: var(--color-deep-teal-1);
	--type-font-size: 18px;
	--type-line-height: 1.3;
}

.site-header {
	color: var(--color-cream);
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 50;
}

.site-header.is-scrolled {
	background: transparent;
}

.announcement-bar {
	align-items: center;
	background: var(--color-cream);
	display: flex;
	justify-content: center;
	overflow: hidden;
	padding-block: 8px;
	width: 100%;
}

.announcement-bar p {
	color: var(--color-deep-teal-2);
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-label);
	--type-font-weight: 400;
	--type-letter-spacing: 1.4px;
	--type-line-height: normal;
	max-width: 663px;
	text-align: center;
	--type-text-transform: uppercase;
	width: 100%;
}

.site-header__inner {
	margin-inline: auto;
	max-width: var(--container);
	padding: 0;
	position: relative;
	width: calc(100% - (var(--gutter) * 2));
}

.site-header__inner::after {
	background: var(--color-coral);
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	right: 0;
	top: 80px;
}

.brand {
	align-items: center;
	color: var(--color-cream);
	display: inline-flex;
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-body-sm);
	gap: 10px;
	--type-text-transform: uppercase;
}

.brand img {
	height: 42px;
	object-fit: contain;
	width: 45px;
}

.brand .custom-logo-link,
.scroll-header__brand .custom-logo-link {
	display: block;
	height: 100%;
	width: 100%;
}

.site-header .brand {
	gap: 0;
	height: 100px;
	left: 50%;
	position: absolute;
	top: 12px;
	transform: translateX(-50%);
	width: 105.7786102295px;
	z-index: 2;
}

.site-header .brand span {
	display: none;
}

.site-header .brand img {
	height: 100px;
	width: 105.7786102295px;
}

.site-header .btn--small {
	left: auto;
	position: absolute;
	right: 0;
	top: 18px;
}

.site-header--light {
	color: var(--color-deep-teal-1);
}

.site-header--light .announcement-bar {
	background: #fdf9ed;
}

.site-header--light .site-nav ul {
	color: var(--color-deep-teal-1);
}

.site-nav {
	left: 0;
	position: absolute;
	top: 32px;
}

.site-nav ul {
	align-items: center;
	color: var(--color-cream);
	display: flex;
	gap: 0;
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-body-sm);
	--type-font-weight: 400;
	--type-line-height: 18px;
	--type-text-transform: uppercase;
}

.site-nav a {
	display: block;
	opacity: 1;
	text-align: center;
	transition: opacity .2s ease;
	white-space: nowrap;
	width: 100%;
}

.site-nav a:hover {
	opacity: .68;
}

.site-header--hero .site-header__inner,
.site-header--inner .site-header__inner {
	max-width: 1408px;
	width: calc(100% - 32px);
}

.site-header--hero .site-nav,
.site-header--inner .site-nav {
	left: 64px;
}

.site-header--hero .btn--small,
.site-header--inner .btn--small {
	right: 64px;
}

.site-header--inner .site-header__inner,
.scroll-header--glass .scroll-header__bar {
	-webkit-backdrop-filter: blur(25px);
	backdrop-filter: blur(25px);
	background: rgb(195 195 195 / 38%);
	border-radius: 110px;
}

.site-header--inner .site-header__inner {
	height: 81px;
}

.site-header--inner {
	position: fixed;
}

.site-header--hero .announcement-bar,
.site-header--inner .announcement-bar,
.scroll-header--glass .announcement-bar {
	background: var(--color-cream);
	height: 32px;
	padding-block: 0;
}

.site-header--hero .announcement-bar p,
.site-header--inner .announcement-bar p,
.scroll-header--glass .announcement-bar p {
	--type-font-size: clamp(8.5px, 2.45vw, 14px);
	--type-letter-spacing: clamp(.5px, .22vw, 1.4px);
	--type-line-height: 16px;
	height: 16px;
	max-width: 663px;
	padding-inline: 0;
	white-space: nowrap;
}

.site-header--inner.is-scrolled {
	background: transparent;
}

.site-header--inner .site-header__inner::after {
	display: none;
}

.scroll-header {
	backface-visibility: hidden;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	right: 0;
	top: 0;
	transform: translate3d(0, -116px, 0);
	transition:
		opacity .32s ease,
		transform .46s cubic-bezier(.22, 1, .36, 1),
		visibility 0s linear .46s;
	visibility: hidden;
	will-change: transform, opacity;
	z-index: 70;
}

.scroll-header.is-visible {
	backface-visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transform: none;
	transition-delay: 0s;
	visibility: visible;
	will-change: auto;
}

.scroll-header__bar {
	background: #fffdf8;
	border-radius: 48px;
	height: 81px;
	margin: 16px auto 0;
	max-width: 1408px;
	position: relative;
	width: calc(100% - 32px);
}

.scroll-header--glass .scroll-header__bar {
	margin-top: 0;
}

.scroll-header__nav {
	color: var(--color-deep-teal-1);
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-body-sm);
	--type-font-weight: 400;
	left: 40px;
	--type-line-height: 18px;
	position: absolute;
	--type-text-transform: uppercase;
	top: 32px;
}

.scroll-header__nav a {
	display: block;
	text-align: center;
	transition: opacity .2s ease;
	white-space: nowrap;
	width: 123px;
}

.scroll-header__nav a:hover {
	opacity: .68;
}

.scroll-header__brand {
	height: 100px;
	left: 50%;
	position: absolute;
	top: 12px;
	transform: translateX(-50%);
	width: 105.7786102295px;
	z-index: 2;
}

.scroll-header__brand img {
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.scroll-header__contact {
	position: absolute;
	right: 64px;
	top: 18px;
}

/* Shared site footer */
.site-footer {
	background-color: var(--color-sky-soft);
	background-image: var(--footer-background-image, none);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 960px;
	overflow: hidden;
	position: relative;
}

.site-footer__panel {
	background: #fdf9ed;
	display: grid;
	gap: 48px;
	grid-template-columns: minmax(0, 1fr);
	margin: 20px auto;
	padding: 64px 64px 24px;
	position: relative;
	width: 98vw;
	z-index: 1;
}

html {
	scroll-padding-top: 150px;
}

@media only screen and (max-width: 1366px) {
	:root {
		--font-size-h1: 22px;
		--font-size-h2: 38px;
		--font-size-h3: 30px;
		--font-size-h4: 26px;
		--font-size-h5: 20px;
		--font-size-h6: 18px;
		--font-size-body: 18px;
		--font-size-body-sm: 16px;
		--font-size-label: 14px;
		--font-size-caption: 12px;
		--font-size-micro: 10px;
		--font-size-display-md: var(--font-size-h1);
		--font-size-display-sm: var(--font-size-h3);
		--font-size-script: var(--font-size-h3);
		--font-size-body-xl: var(--font-size-body);
		--font-size-body-lg: var(--font-size-body);
		--space-content: 32px;
	}

	.ticker__track{
		column-gap: 20px;
	}
	.method-list li::before {
		top: 1px;
	}
	body.home-page .marquee-strip__text ,
	body.home-page .ticker__item span{
		font-size: 24px;
	}
	.ticker__item {
		flex: unset !important;
	}
	.ticker__item {
		padding-left: 0px !important;
		gap: 20px !important;
	}
	.ticker__group{
		gap: 20px;	
	}
	.marquee-strip {
		padding-block: 20px;
	}
	.intro__wordmark {
		width: min(1340px, calc(100% - 170px));
	}
	.intro__grid {
		grid-template-columns: 1fr 1fr;
	}
	.marquee-strip img {
		height: 40px;
		width: 40px;
	}
	.marquee-strip__group {
		gap: 30px;
		padding-right: 30px;
	}

	input,
	select,
	textarea {
		max-width: 100%;
	}

	/* Generic WordPress output: default pages, search results, and 404. */
	.generic-main,
	body.search .site-main,
	body.error404 .site-main {
		background: #fdf9ed;
		min-height: 620px;
		overflow: hidden;
		padding: 180px max(var(--gutter), 24px) var(--space-section);
	}

	.generic-content,
	body.search .site-main > *,
	body.error404 .site-main > * {
		margin-inline: auto;
		max-width: 960px;
		width: 100%;
	}

	.generic-content {
		display: grid;
		gap: 32px;
	}

	.generic-content .page-title,
	.generic-content .entry-title,
	body.search .site-main h1,
	body.error404 .site-main h1 {
		color: var(--color-deep-teal-1);
		max-width: none;
	}

	.generic-content .page-content,
	.generic-content .entry-content,
	body.search .site-main .page-content,
	body.error404 .site-main .page-content {
		display: grid;
		gap: var(--space-content);
	}

	.generic-content article {
		display: grid;
		gap: var(--space-content);
	}

	.generic-content .navigation {
		margin-top: 24px;
	}

	.search-form {
		align-items: stretch;
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
		max-width: 640px;
	}

	.search-form label {
		flex: 1 1 260px;
		min-width: 0;
	}

	.search-form .search-field {
		background: #fffdf8;
		border: 1px solid rgba(25, 145, 156, .35);
		border-radius: 999px;
		color: var(--color-deep-teal-1);
		min-height: 48px;
		padding: 12px 20px;
		width: 100%;
	}

	.search-form .search-submit {
		background: var(--color-coral);
		border: 1px solid var(--color-coral);
		border-radius: 999px;
		color: var(--color-white);
		min-height: 48px;
		padding: 12px 24px;
	}

	.search-form .search-field:focus-visible,
	.search-form .search-submit:focus-visible {
		outline: 3px solid var(--color-gold);
		outline-offset: 3px;
	}
}

.site-footer__top {
	align-items: center;
	display: flex;
	gap: 32px;
	justify-content: space-between;
}

.site-footer__headline {
	color: var(--color-deep-teal-1);
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-body-xl);
	--type-font-weight: 950;
	--type-line-height: var(--line-height-body);
	--type-text-transform: uppercase;
}

.site-footer__divider {
	height: 1px;
	width: 100%;
}

.site-footer__main {
	border-bottom: 1px solid #87d1d4;
	display: flex;
	gap: 48px;
	justify-content: space-between;
	padding-bottom: 48px;
}

.site-footer__brand {
	display: grid;
	gap: 12px;
	width: 360px;
}

.site-footer__brand > a {
	display: block;
	width: fit-content;
}

.site-footer__brand img {
	width: 116px;
}

.site-footer__tagline {
	color: var(--color-deep-teal-2);
	--type-font-family: var(--font-script);
	--type-font-size: var(--font-size-body-xl);
	--type-font-weight: 700;
	--type-line-height: var(--line-height-body);
}

.site-footer__brand > p:last-child,
.site-footer__bottom,
.footer-nav a {
	color: var(--color-deep-teal-1);
	--type-font-size: var(--font-size-label);
	--type-line-height: var(--line-height-body);
}

.site-footer__bottom p {
	--type-font-size: var(--font-size-label) !important;
}

.footer-nav {
	display: flex;
	gap: 84px;
	justify-content: space-between;
	width: 764px;
}

.footer-nav__group {
	align-content: start;
	display: grid;
	gap: 12px;
}

.footer-nav__list {
	display: grid;
	gap: 12px;
}

.footer-nav__group h2 {
	color: var(--color-gold);
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-label);
	--type-font-weight: 400;
	--type-line-height: var(--line-height-body);
	--type-text-transform: uppercase;
}

.footer-nav__group--inquiries a {
	--type-font-size: var(--font-size-body-sm);
}

.footer-nav a,
.site-footer__bottom a {
	transition: color .2s ease;
}

.footer-nav a {
	display: block;
	width: 100%;
}

.footer-nav a:hover,
.site-footer__bottom a:hover {
	color: var(--color-coral);
}

.site-footer__bottom {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.site-footer__legal {
	display: flex;
	gap: 20px;
}

.site-footer__bottle {
	bottom: 32px;
	height: 502px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 254px;
	z-index: 2;
}

.site-footer__bottle-image {
	bottom: 0;
	height: 502px;
	left: 50%;
	max-width: none;
	position: absolute;
	transform: translateX(-50%);
	width: 145px;
}

.site-footer__bottle-shadow {
	bottom: -20px;
	height: 36px;
	left: 0;
	max-width: none;
	position: absolute;
	width: 254px;
}
.rim-step-card--deliver .rim-step-card__visual img, .distributor-step-card--deliver .distributor-step-card__visual img {
	height: 80% !important;

}
.rim-step-card--dress .rim-step-card__visual, .distributor-step-card--dress .distributor-step-card__visual {
	height: 220px !important;
	width: 275px !important;
}
.rim-step-card{
	height:430px;
}
@media only screen and (min-width: 900px) and (max-width: 1366px) {
	.rim-step-card--dip .rim-step-card__visual img, .distributor-step-card--dip .distributor-step-card__visual img {
		left: auto !important;
		right: 0;
		height: 80% !important;
		width: 90% !important;
	}
}

@media only screen and (max-width: 1315px) and (min-width: 1200px) {
	.site-header__inner {
		width: calc(100% - 40px);
	}
}

@media only screen and (max-width: 1199px) {
	.btn {
		padding: 12px 20px;
	}
	:root {
		--font-size-h1: 38px;
		--font-size-h2: 32px;
		--font-size-h3: 28px;
		--font-size-h4: 24px;
		--font-size-h5: 18px;
		--font-size-h6: 16px;
		--font-size-body: 18px;
		--space-content: 28px;
	}
	.rim-step-card--dip .rim-step-card__visual, .distributor-step-card--dip .distributor-step-card__visual{
		left: auto !important;
		right: 0;
	}
	.rim-step-card--dip .rim-step-card__visual img, .distributor-step-card--dip .distributor-step-card__visual img{
		width:100% !important;
		left: 0 !important;
		height: 90% !important;

	}
	.rim-steps__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rim-steps__grid > .rim-step-card:last-child:nth-child(odd) {
		grid-column: 1 / -1;
		justify-self: center;
		width: calc(50% - 12px);
	}

	.rim-step-card__content {
		left: 28px;
		right: 28px;
		width: auto;
	}

	.rim-step-card__content p {
		--type-font-size: 16px;
	}
	.site-header--hero .site-nav, .site-header--inner .site-nav {
		left: 15px;
	}
	.site-header--hero .btn--small, .site-header--inner .btn--small {
		right: 15px;
	}
	.method-card.method-card--old .method-card__image,
	.method-card.method-card--new .method-card__image {
		border-radius: 12px 12px 0 0;
	}

	.method-card.method-card--old .method-card__panel,
	.method-card.method-card--new .method-card__panel {
		border-radius: 0 0 12px 12px;
	}
	.method-list li::before {
		top: 6px;
	}
	.site-footer {
		min-height: 0;
	}

	.site-footer__panel {
		padding: 52px 44px 24px;
	}

	.site-footer__main {
		gap: 36px;
	}

	.site-footer__brand {
		width: 34%;
	}

	.footer-nav {
		gap: clamp(24px, 5vw, 64px);
		width: 60%;
	}

	.site-footer__bottle {
		bottom: auto;
		height: 340px;
		left: auto;
		margin: 28px auto 0;
		position: relative;
		transform: none;
		width: 172px;
		margin-bottom: 20px;
		margin-top: -150px;
	}

	.site-footer__bottle-image {
		height: 340px;
		width: 98px;
	}

	.site-footer__bottle-shadow {
		bottom: -14px;
		width: 172px;
		z-index: -1;
	}
}

@media only screen and (max-width: 1024px) {
	.btn {
		padding: 12px 18px;
	}
	html {
		scroll-padding-top: 90px;
	}
	:root {
		--font-size-h1: 34px;
		--font-size-h2: 28px;
		--font-size-h3: 26px;
		--font-size-h4: 22px;
		--font-size-h5: 18px;
		--font-size-h6: 16px;
		--font-size-body: 16px;
		--space-content: 24px;
	}
	/* 	.site-header--light .site-nav {
	background: #fdf9ed;
} */
	.hero{
		position: relative !important;
	}
	.hero:before{
		content: "" !important;
		height: 100% !important;
		width: 100% !important;
		position: absolute !important;
		background: #00000040 !important;
	}
	.how-intro.hero:before ,
	.product-hero:before ,
	.contact-intro:before ,
	.privacy-hero:before{
		content: none !important;
	}

	.site-header--light .site-nav ul {
		color: var(--color-deep-teal-1);
	}
}

@media only screen and (max-width: 899px) {
	.rim-step-card__content {
		left: 24px;
		right: 24px;
		width: auto;
	}

	.rim-step-card--dip .rim-step-card__visual,
	.rim-step-card--dress .rim-step-card__visual,
	.rim-step-card--deliver .rim-step-card__visual {
		height: auto;
		left: auto;
		right: 0;
		top: auto;
	}

	.rim-step-card--dip .rim-step-card__visual {
		aspect-ratio: 347 / 277;
		bottom: 0;
		width: min(82%, 347px);
	}

	.rim-step-card--dress .rim-step-card__visual {
		aspect-ratio: 353 / 297;
		bottom: -2px;
		width: min(86%, 353px);
	}

	.rim-step-card--deliver .rim-step-card__visual {
		aspect-ratio: 348 / 260;
		bottom: 4px;
		width: min(85%, 348px);
	}

	.site-footer__main {
		display: grid;
		gap: 40px;
	}

	.site-footer__brand,
	.footer-nav {
		width: 100%;
	}
}


@media only screen and (min-width: 767px) {
	header ul{
		display: flex !important;
		gap: 30px !important;
	}
}

@media only screen and (max-width: 767px) {
	.site-footer__bottle {
		margin-top: 0px;
	}
	body.home-page .marquee-strip__text ,
	body.home-page .ticker__item span{
		font-size: 20px;
	}
	.ticker__item {
		flex: unset !important;
	}
	.ticker__group ,
	.ticker__track{
		gap: 20px;
	}
	.method-list li::before {
		top: 3px;
	}
	.rim-step-card__content h3 {
		margin-bottom: 6px;
	}
	.rim-step-card__number {
		margin-bottom: 10px;
	}
	.rim-steps__grid, .distributor-steps__grid {
		grid-template-columns: 1fr;
		max-width:500px !important;
		margin: 0 auto !important;
		width: 100%;
	}

	.rim-steps__grid > .rim-step-card:last-child:nth-child(odd) {
		grid-column: auto;
		width: 100%;
	}

	.rim-step-card, .distributor-step-card {
		height: 410px;
	}
	.rim-steps__grid{
		padding-top: 20px;
	}
	.rim-step-card--dip .rim-step-card__visual, .distributor-step-card--dip .distributor-step-card__visual{
		width: 230px;
		top: 140px !important;
	}
	.rim-step-card--dress .rim-step-card__visual img, .distributor-step-card--dress .distributor-step-card__visual img{
		top:0px !important;
	}
	:root {
		--font-size-h1: 30px;
		--font-size-h2: 26px;
		--font-size-h3: 24px;
		--font-size-h4: 20px;
		--font-size-h5: 16px;
		--font-size-h6: 16px;
		--font-size-body: 16px;
		--space-content: 20px;
	}
	.site-footer__top {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.site-footer {
		background-size: auto 100%;
	}

	.site-footer__panel {
		padding: 44px 32px 24px;
	}

	.footer-nav {
		gap: 32px;
	}
	html body header ul#primary-menu li a{
		font-size: 14px !important;
	}
}

@media only screen and (max-width: 576px) {
	.body-md-compact,
	.environment-card p,
	.decision-card > p,
	.decision-card__copy > p,
	.product-final-cta__copy p {
		--type-font-size: var(--font-size-body-sm);
	}
}

@media only screen and (max-width: 479px) {
	:root {
		--font-size-h1: 28px;
		--font-size-h2: 24px;
		--font-size-h3: 22px;
		--space-content: 18px;
	}

	.site-footer__panel {
		gap: 32px;
		margin: 12px;
		padding: 32px 20px 20px;
		width: auto;
	}

	.site-footer__top,
	.site-footer__main,
	.site-footer__bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.site-footer__top {
		gap: 20px;
	}

	.site-footer__headline {
		--type-font-size: var(--font-size-body-lg);
	}

	.site-footer__main {
		gap: 40px;
		padding-bottom: 20px;
	}
	.site-footer__bottom {
		margin-top: -20px;
	}

	.site-footer__brand,
	.footer-nav {
		width: 100%;
	}

	.footer-nav {
		display: grid;
		gap: 32px 24px;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.footer-nav__group--inquiries {
		grid-column: 1 / -1;
	}

	.site-footer__bottom {
		gap: 12px;
	}

	.site-footer__bottle {
		height: 300px;
		margin-top: 20px;
		width: 152px;
	}

	.site-footer__bottle-image {
		height: 300px;
		width: 86px;
	}

	.site-footer__bottle-shadow {
		width: 152px;
	}
}

@media only screen and (max-width: 374px) {
	:root {
		--font-size-h1: 26px;
		--font-size-h2: 22px;
		--font-size-h3: 20px;
	}
}

a:focus-visible,
button:focus-visible {
	outline: 3px solid var(--color-gold);
	outline-offset: 3px;
}
.rim-step-card--dip .rim-step-card__visual, .distributor-step-card--dip .distributor-step-card__visual {
	height: 247px !important;
	width: 287px !important;
}
.rim-step-card--deliver .rim-step-card__visual img, .distributor-step-card--deliver .distributor-step-card__visual img {
	height: 70% !important;
	left: 60px !important;
	width: 83% !important;
}
.rim-step-card, .distributor-step-card {
	height: 390px !important;
}


/* =========================
Responsive Layout
========================= */

@media only screen and (max-width: 1360px) {
	:root {
		--section-padding-block: 80px;
	}
	html body main section.feature-arch{
		padding-top: 170px !important;
		padding-bottom: 80px !important;
	}
}

@media only screen and (max-width: 1199px) {
	:root {
		--container: 100%;
		--gutter: 28px;
		--section-padding-block: 60px;
	}
	html body main section.feature-arch{
		padding-top: 150px !important;
		padding-bottom: 60px !important;
	}
}

@media only screen and (max-width: 1024px) {
	:root {
		--section-padding-block: 50px;
	}

	html body main section.feature-arch{
		padding-top: 90px !important;
		padding-bottom: 50px !important;
	}

	.final-cta__palm--left ,
	.final-cta__palm--right{
		width: 125px !important;
	}
	.announcement-bar p {
		--type-font-size: var(--font-size-caption);
		--type-letter-spacing: 1.2px;
		padding-inline: 20px;
	}
	.site-header__inner::after {
		left: 0;
		right: 0;
		top: 85px;
	}
	.site-header .brand {
		height: 72px;
		top: 7px;
		width: 76px;
	}
	.site-header .brand img {
		height: 72px;
		width: 76px;
	}
	.scroll-header__bar {
		width: calc(100% - 24px);
	}
	.scroll-header__nav {
		left: 20px;
	}
	.scroll-header__contact {
		right: 28px;
	}
}

@media only screen and (max-width: 767px) {
	:root {
		--gutter: 20px;
		--section-padding-block: 40px;
	}
	.generic-main,
	body.search .site-main,
	body.error404 .site-main {
		min-height: 500px;
		padding: 132px var(--gutter) var(--space-section-mobile);
	}
	.announcement-bar p {
		--type-font-size: clamp(9px, 2.45vw, 14px);
		--type-letter-spacing: clamp(.6px, .22vw, 1.4px);
		padding-inline: 8px;
		white-space: nowrap;
	}
	.site-nav {
		top: 31px;
	}
	.site-nav ul {
		--type-font-size: 11px;
		--type-line-height: 14px;
	}
	.site-nav a {
		width: auto;
	}
	.site-header .btn--small {
		--type-font-size: 11px;
		padding: 12px 16px;
		top: 20px;
	}
}

@media only screen and (max-width: 479px) {
	.site-nav ul {
		--type-font-size: 10px;
	}
	.site-header .btn--small {
		--type-font-size: 10px;
		padding: 12px 14px;
		top: 19px;
	}
	.generic-content {
		gap: 24px;
	}
	.search-form {
		flex-direction: column;
	}
	.search-form label,
	.search-form .search-submit {
		flex-basis: auto;
		width: 100%;
	}
	.scroll-header__bar {
		border-radius: 34px;
		height: 64px;
		margin-top: 10px;
		width: calc(100% - 20px);
	}
	.scroll-header__nav {
		--type-font-size: 10px;
		left: 14px;
		--type-line-height: 14px;
		top: 25px;
	}
	.scroll-header__nav a {
		width: auto;
	}
	.scroll-header__brand {
		height: 66px;
		top: 3px;
		width: 70px;
	}
	.scroll-header__contact {
		--type-font-size: 10px;
		padding: 12px 14px;
		right: 12px;
		top: 11px;
	}
}

@media only screen and (max-width: 374px) {
	:root { --gutter: 16px; }
	.announcement-bar p {
		--type-font-size: 8.5px;
		--type-letter-spacing: .5px;
		padding-inline: 4px;
	}
}

@media (min-width: 992px) and (max-width: 1366px) and (max-height: 700px) {
	body.home-page .hero,
	body.home-page .hero__inner {
		/* 		height: 100svh; */
		height: 100%;
		min-height: 600px;
	}

	.hero {
		background-position: center right !important;
	}

	body.product-page .product-hero {
		min-height: 780px;
		padding-top: 168px;
	}

	body.distributor-page .distributor-hero,
	body.operational-page .operational-hero {
		min-height: 720px;
	}
}
@media (min-width: 992px) and (max-width: 1366px){
	body.product-page .product-hero {
		padding-top: 168px;
	}
}

@media (max-width: 767px) and (orientation: landscape) {
	.mobile-site-menu {
		overflow-y: auto;
		overscroll-behavior: contain;
	}
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}

/* Single typography property source */
:where(body, body *) {
	--type-font-family: initial;
	--type-font-size: initial;
	--type-font-style: initial;
	--type-font-variant: initial;
	--type-font-weight: initial;
	--type-letter-spacing: initial;
	--type-line-height: initial;
	--type-text-transform: initial;
	font-family: var(--type-font-family, inherit);
	font-size: var(--type-font-size, inherit);
	font-style: var(--type-font-style, inherit);
	font-variant: var(--type-font-variant, inherit);
	font-weight: var(--type-font-weight, inherit);
	letter-spacing: var(--type-letter-spacing, inherit);
	line-height: var(--type-line-height, inherit);
	text-transform: var(--type-text-transform, inherit);
}

/* Consolidated page typography */

/* contact-us.css */
body.contact-page .contact-form input,
body.contact-page .contact-form textarea {
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-body-sm);
	--type-line-height: 22px;
}

@media only screen and (max-width: 479px) {
	body.contact-page .contact-form label {
		--type-font-size: var(--font-size-caption);
	}
}

@media only screen and (max-width: 479px) {
	body.contact-page .contact-form input,
	body.contact-page .contact-form textarea {
		--type-font-size: var(--font-size-label);
	}
}

/* distributor-program.css */
body.distributor-page .distributor-step-card__content > span {
	--type-font-family: var(--font-display) !important;
	--type-font-size: var(--font-size-display-md) !important;
	--type-line-height: 1.3864;
	--type-font-weight: 950;
}

body.distributor-page .faq__group > h3 {
	--type-text-transform: uppercase;
}

body.distributor-page .faq__item button {
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-body-lg);
	--type-font-weight: 700;
	--type-line-height: 1.3;
}

body.distributor-page .distributor-ticker__item span {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-h3);
	--type-line-height: 1;
	--type-text-transform: uppercase;
	font-weight: 900;
}

body.distributor-page .distributor-form label {
	--type-font-size: var(--font-size-label);
	--type-line-height: 1.3;
}

body.distributor-page .distributor-form input,
body.distributor-page .distributor-form textarea {
	--type-font-size: var(--font-size-body-sm);
	--type-line-height: 1.3;
	--type-font-family: var(--font-body);
}

/* home.css */
body.home-page .hero__kicker {
	--type-font-family: var(--font-script);
	--type-font-size: var(--font-size-script);
	--type-line-height: var(--line-height-script);
	--type-text-transform: capitalize;
}

body.home-page .hero h1 {
	--type-font-size: var(--font-size-display-md);
	--type-line-height: var(--line-height-hero);
}

body.home-page .hero__support {
	--type-line-height: var(--line-height-body);
}

body.home-page .hero__copy {
	--type-font-size: var(--font-size-body);
	--type-line-height: var(--line-height-body-18);
}

body.home-page .hero__steps {
	--type-font-size: var(--font-size-body-lg);
	--type-font-weight: 700;
	--type-line-height: var(--line-height-body);
}

body.home-page .marquee-strip__text {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-display-sm);
	--type-line-height: var(--line-height-heading);
	--type-text-transform: uppercase;
	font-weight: 900;
}

body.home-page .method-card__panel h3 {
	--type-font-size: var(--font-size-h3);
	--type-line-height: normal;
}

body.home-page .feature-arch__costs h2,
body.home-page .feature-arch__better h2 {
	--type-font-size: var(--font-size-h3);
	--type-line-height: var(--line-height-tight);
}

body.home-page .feature-arch__costs h2 {
	--type-line-height: 44px;
}

body.home-page .feature-arch__better h2 {
	--type-font-size: var(--font-size-h4);
	--type-line-height: var(--line-height-heading);
}

body.home-page .feature-arch__result-title {
	--type-font-size: var(--font-size-body-lg) !important;
	--type-font-weight: 700;
	--type-line-height: 30px !important;
}

body.home-page .feature-list li {
	--type-font-size: var(--font-size-body-xl);
	--type-line-height: var(--line-height-body);
}

body.home-page .experience-card h3 {
	--type-font-size: var(--font-size-h5);
}

body.home-page .experience-card p {
	--type-line-height: var(--line-height-body-18);
}

body.home-page .ticker__item span {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-h3);
	--type-line-height: var(--line-height-tight);
	--type-text-transform: uppercase;
	font-weight: 900;
}

body.home-page main [class] h2 {
	--type-font-size: var(--home-h2-size);
}

body.home-page main .feature-arch__costs h2 {
	--type-font-size: var(--font-size-h3);
	/* 	--type-line-height: 44px; */
	--type-line-height: normal;
}

body.home-page main .feature-arch__better h2 {
	--type-font-size: var(--font-size-h4);
	--type-line-height: 36px;
}

/* how-it-works.css */
body.how-page .how-intro__eyebrow {
	--type-font-family: var(--font-script);
	--type-font-size: var(--font-size-script);
	--type-font-weight: 700;
	--type-line-height: normal;
	--type-text-transform: capitalize;
}

body.how-page .method-card__panel h3 {
	--type-font-size: var(--font-size-h3);
	--type-line-height: 44px;
}

/* operational-benefits.css */
body.operational-page .economics-card__amount strong {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-h2);
	--type-font-weight: 950;
	--type-line-height: 59px;
}

body.operational-page .owner-math__formula strong {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-h2);
	--type-line-height: 59px;
}

body.operational-page .owner-math__formula span {
	--type-text-transform: uppercase;
}

body.operational-page .owner-math__formula b {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-h3);
	--type-line-height: 45px;
	--type-text-transform: uppercase;
}

body.operational-page .audience-row__content h3 {
	--type-font-size: var(--font-size-h3);
	--type-line-height: normal;
}

body.operational-page .audience-row__content p {
	--type-font-size: var(--font-size-body-sm);
	--type-line-height: var(--line-height-body);
}

body.operational-page .quick-process__tagline,
body.operational-page .operational-cta__tagline {
	--type-font-family: var(--font-script);
	--type-font-size: var(--font-size-h3) !important;
	--type-font-weight: 700;
}

/* privacy-policy.css */
body.privacy-page .privacy-hero__eyebrow {
	--type-font-family: var(--font-display);
	--type-font-size: 22px;
	--type-font-weight: 950;
	--type-letter-spacing: .04em;
	--type-line-height: 1.2;
	--type-text-transform: uppercase;
}

body.privacy-page .privacy-hero__tagline {
	--type-font-family: var(--font-script);
	--type-font-size: 30px;
	--type-font-weight: 700;
	--type-line-height: var(--line-height-script);
}

body.privacy-page .privacy-hero h1 {
	--type-font-size: var(--font-size-h1);
	--type-line-height: 1.15;
	--type-text-transform: uppercase;
}

body.privacy-page .privacy-hero__dates {
	--type-font-size: var(--font-size-body-sm);
}

body.privacy-page .privacy-hero__intro p {
	--type-font-size: var(--font-size-body);
	--type-line-height: 1.55;
}

body.privacy-page .privacy-hero__brand-note {
	--type-font-style: italic;
}

body.privacy-page .privacy-toc h2 {
	--type-font-size: 24px;
	--type-line-height: 1.2;
	--type-text-transform: uppercase;
}

body.privacy-page .privacy-toc li,
body.privacy-page .privacy-toc a {
	--type-font-size: var(--font-size-label);
	--type-line-height: 1.35;
}

body.privacy-page .privacy-section h2 {
	--type-font-size: 28px;
	--type-line-height: 1.25;
	--type-text-transform: uppercase;
}

body.privacy-page .privacy-subsection h3 {
	--type-font-family: var(--font-body);
	--type-font-size: 21px;
	--type-font-weight: 700;
	--type-line-height: 1.3;
}

body.privacy-page .privacy-copy p,
body.privacy-page .privacy-copy li,
body.privacy-page .privacy-copy address,
body.privacy-page .privacy-copy th,
body.privacy-page .privacy-copy td {
	--type-font-size: 17px;
	--type-line-height: 1.58;
}

body.privacy-page .privacy-copy address {
	--type-font-style: normal;
}

body.privacy-page .privacy-copy thead th {
	--type-font-weight: 700;
}

body.privacy-page .privacy-copy tbody th {
	--type-font-weight: 700;
}

body.privacy-page .privacy-legal-mark {
	--type-font-style: italic;
}

/* product-detail.css */
body.product-page .product-hero__eyebrow {
	--type-font-family: var(--font-script);
	--type-font-size: var(--font-size-script);
	--type-font-weight: 700;
	--type-line-height: 1;
}

body.product-page .product-hero__subtitle {
	--type-font-size: var(--font-size-body-lg);
	--type-font-weight: 700;
	--type-line-height: 1.3;
}

body.product-page .product-benefits h2 {
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-h5);
	--type-font-weight: 700;
	--type-line-height: 1.3;
	--type-text-transform: none;
}

body.product-page .decision-card__value {
	--type-font-family: var(--font-display);
	--type-font-size: var(--font-size-h2);
	--type-font-weight: 950;
	--type-line-height: 1.4;
}

body.product-page .decision-card h3 {
	--type-font-family: var(--font-body);
	--type-font-size: var(--font-size-h6);
	--type-font-weight: 400;
	--type-line-height: 1.3;
	--type-text-transform: uppercase;
}

body.product-page .decision-card__copy .decision-card__note {
	--type-font-size: var(--font-size-label);
	--type-font-style: oblique;
}

body.product-page .product-final-cta__copy .product-final-cta__tagline {
	--type-font-family: var(--font-script);
	--type-font-size: var(--font-size-display-sm);
	--type-font-weight: 700;
}

body.product-page .sku-dialog h2 {
	--type-font-size: 24px;
	--type-line-height: 1.2;
}

body.product-page .sku-dialog__bar button {
	--type-font-size: 36px;
	--type-line-height: 1;
}

.site-header__menu-toggle,
.mobile-site-menu {
	display: none;
}

.admin-bar .site-header,
.admin-bar .scroll-header {
	top: 32px;
}

@media only screen and (max-width: 782px) {
	.admin-bar .site-header,
	.admin-bar .scroll-header {
		top: 46px;
	}
}

@media only screen and (max-width: 767px) {
	.site-header,
	.site-header--inner {
		position: absolute;
	}

	.site-header .announcement-bar {
		height: 32px;
		padding-block: 0;
	}

	.site-header .site-header__inner {
		border-radius: 34px;
		height: 64px;
		width: calc(100% - 20px);
	}

	.site-header .site-header__inner::after {
		top: 63px;
	}

	.site-header .brand {
		height: 64px;
		top: 0;
		width: 68px;
	}

	.site-header .brand img {
		height: 64px;
		width: 68px;
	}

	.site-header.is-scrolled {
		position: fixed;
		top: 8px;
	}

	.admin-bar .site-header.is-scrolled {
		top: 54px;
	}

	.site-header.is-scrolled .announcement-bar {
		display: none;
	}

	.site-header.is-scrolled .site-header__inner {
		-webkit-backdrop-filter: blur(25px);
		backdrop-filter: blur(25px);
		background: rgba(255, 255, 255, .68);
		border: 1px solid rgba(255, 255, 255, .56);
		box-shadow: 0 10px 28px rgba(24, 65, 78, .12);
	}

	.site-header.is-scrolled .site-header__inner::after {
		display: none;
	}

	.site-header.is-scrolled .site-header__menu-toggle {
		color: var(--color-deep-teal-1);
	}

	.site-header__inner > .site-nav,
	.site-header__inner > .btn,
	.scroll-header {
		display: none;
	}

	.site-header__menu-toggle {
		align-items: center;
		background: rgba(255, 255, 255, .14);
		border: 1px solid rgba(255, 255, 255, .32);
		border-radius: 50%;
		color: var(--color-cream);
		cursor: pointer;
		display: flex;
		flex-direction: column;
		gap: 4px;
		height: 48px;
		justify-content: center;
		padding: 0;
		position: absolute;
		right: 8px;
		top: 8px;
		z-index: 55;
		transition: background-color .2s ease, border-color .2s ease, color .2s ease;
		width: 48px;
	}

	.site-header--light .site-header__menu-toggle {
		background: rgba(29, 79, 95, .06);
		border-color: rgba(29, 79, 95, .16);
		color: var(--color-deep-teal-1);
	}

	.site-header__menu-line {
		background: currentColor;
		display: block;
		height: 2px;
		transform-origin: center;
		transition: opacity .2s ease, transform .25s ease;
		width: 21px;
	}

	.site-header__menu-toggle[aria-expanded="true"] {
		background: rgba(29, 79, 95, .08);
		border-color: rgba(29, 79, 95, .18);
		color: var(--color-deep-teal-1);
	}

	.site-header__menu-toggle[aria-expanded="true"] .site-header__menu-line:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.site-header__menu-toggle[aria-expanded="true"] .site-header__menu-line:nth-child(2) {
		opacity: 0;
	}

	.site-header__menu-toggle[aria-expanded="true"] .site-header__menu-line:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	.mobile-site-menu {
		background: var(--color-deep-teal-1);
		bottom: 0;
		display: flex;
		left: 0;
		overflow-y: auto;
		padding: 120px 24px 32px;
		position: fixed;
		right: 0;
		top: 0;
		z-index: 52;
	}

	.mobile-site-menu[hidden] {
		display: none;
	}

	.mobile-site-menu nav {
		margin: 0;
		max-width: 520px;
		width: 100%;
	}

	.mobile-site-menu__list {
		align-items: flex-start;
		display: flex;
		flex-direction: column;
		gap: 0;
		width: 100%;
	}

	.mobile-site-menu__list > li {
		border-bottom: 1px solid rgba(251, 239, 210, .18);
		width: 100%;
	}

	.mobile-site-menu__list > li:last-child {
		border-bottom: 0;
	}

	.mobile-site-menu a {
		color: var(--color-cream);
		display: block;
		--type-font-family: var(--font-display);
		--type-font-size: clamp(20px, 5.5vw, 26px);
		--type-letter-spacing: -.02em;
		--type-line-height: 1.02;
		--type-text-transform: uppercase;
		padding-block: 10px;
		width: 100%;
	}

	.mobile-site-menu a:focus-visible {
		outline: 2px solid var(--color-coral);
		outline-offset: 3px;
	}

	.has-mobile-menu-open {
		overflow: hidden;
	}

	.has-mobile-menu-open .site-header {
		position: fixed;
		top: 8px;
	}

	.admin-bar.has-mobile-menu-open .site-header {
		top: 54px;
	}

	.has-mobile-menu-open .site-header .announcement-bar {
		display: none;
	}

	.has-mobile-menu-open .site-header .site-header__inner {
		-webkit-backdrop-filter: blur(25px);
		backdrop-filter: blur(25px);
		background: rgba(255, 255, 255, .76);
		border: 1px solid rgba(255, 255, 255, .6);
		box-shadow: 0 10px 28px rgba(24, 65, 78, .14);
		z-index: 54;
	}

	.has-mobile-menu-open .site-header .site-header__inner::after {
		display: none;
	}

	.has-mobile-menu-open .site-header .brand {
		z-index: 54;
	}
}

/* Semantic responsive typography.
* Desktop styles above 1366px remain unchanged. Breakpoints update only the
* core h1/h2/h3/body variables declared earlier in this file.
*/
@media only screen and (min-width: 1200px) and (max-width: 1366px) {
	:root {
		--font-size-h1: 32px;
		--font-size-h2: 30px;
		--font-size-h3: 28px;
		--font-size-h4: 26px;
		--font-size-h5: 18px;
		--font-size-h6: 18px;
		--font-size-body: 16px;
		--font-size-body-sm: 14px;
		--font-size-label: 14px;
		--font-size-caption: 12px;
		--font-size-micro: 10px;
		--font-size-display-md: var(--font-size-h1);
		--font-size-display-sm: var(--font-size-h3);
		--font-size-script: var(--font-size-h3);
		--font-size-body-xl: var(--font-size-body);
		--font-size-body-lg: var(--font-size-body);
		--space-content: 32px;
	}
}
@media only screen and (max-width: 1366px) {
	main h1 {
		font-size: var(--font-size-h1);
		line-height: 1.12;
	}

	main h2 {
		font-size: var(--font-size-h2);
		line-height: 1.2;
	}

	main h3 {
		font-size: var(--font-size-h3);
		line-height: 1.25;
	}

	main p,
	main li,
	main address,
	main th,
	main td {
		font-size: var(--font-size-body);
		line-height: 1.4;
	}

	/* Reusable type utilities for genuine visual exceptions. */
	.p14 { font-size: var(--font-size-label); }
	.p16 { font-size: var(--font-size-body-sm); }
	.p18 { font-size: var(--font-size-body); }
	.h4 { font-size: var(--font-size-h4); }
	.h5 { font-size: var(--font-size-h5); }
	.h6 { font-size: var(--font-size-h6); }

	/* Small headings that are intentionally subordinate to section h2/h3. */
	main :is(
	.product-benefits,
	.operational-hero__copy,
	.distributor-hero__copy
	) > h2,
	main :is(
	.step-card__content,
	.experience-card,
	.rim-step-card__body,
	.product-step__copy,
	.operator-card,
	.environment-card,
	.decision-card,
	.hidden-cost__results,
	.economics-card,
	.owner-math,
	.book-fit__group,
	.sku-value__benefits,
	.account-card,
	.distributor-step-card__content,
	.faq__group
	) h3 {
		font-size: var(--font-size-h5);
		line-height: 1.3;
	}

	main :is(.feature-arch__costs, .feature-arch__better) h2 {
		font-size: var(--font-size-h3);
		line-height: 1.2;
	}

	main :is(.privacy-toc, .privacy-section, .sku-dialog) h2 {
		font-size: var(--font-size-h4);
		line-height: 1.3;
	}

	main .privacy-subsection h3 {
		font-family: var(--font-body);
		font-size: var(--font-size-h5);
		line-height: 1.3;
	}

	/* Script labels and numerical display text are paragraph exceptions. */
	main :is(
	.hero__kicker,
	.how-intro__eyebrow,
	.product-hero__eyebrow,
	.privacy-hero__tagline,
	.quick-process__tagline,
	.operational-cta__tagline,
	.product-final-cta__tagline
	) {
		font-size: var(--font-size-script);
		line-height: 1.2;
	}

	main .privacy-hero__eyebrow {
		font-size: var(--font-size-h5);
	}

	main :is(
	.step-card__content,
	.how-step__copy,
	.product-step__copy,
	.distributor-step-card__content
	) > span,
	main :is(.product-step__number, .decision-card__value) {
		font-size: var(--font-size-h1);
		line-height: 1.1;
	}

	main :is(.privacy-hero__dates, .decision-card__note) {
		font-size: var(--font-size-body-sm);
	}

	main .privacy-toc :is(li, a) {
		font-size: var(--font-size-label);
	}

	body.home-page .section-heading,
	body.how-page .how-comparison__heading,
	body.operational-page .business-case__heading,
	body.distributor-page .objections__heading {
		gap: 12px;
	}

	body.product-page .sku-snapshot__inner,
	body.product-page .operator-benefits__inner,
	body.product-page .hospitality-environments__inner,
	body.product-page .decision-numbers__inner,
	body.distributor-page .distributor-steps__inner {
		gap: var(--space-content);
	}

	body.distributor-page .sku-snapshot h2 {
		margin-bottom: var(--space-content);
	}
}

@media only screen and (max-width: 1024px) {
	body.home-page .intro__grid {
		row-gap: 30px;
	}

	body.contact-page .contact-cta__actions {
		margin-top: var(--space-content);
	}
}



/* 404 Page Style */
.generic-main, body.search .site-main, body.error404 .site-main {
	padding: 180px max(var(--gutter), 24px) var(--space-section);
}
.error-404-page {
	display: flex;
	align-items: center;
}

.error-404-page .container {
	text-align: center;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	gap: 60px;
	align-items: center;
}

.error-title {
	font-size: clamp(80px, 12vw, 180px);
	line-height: 1;
	margin: 0 auto;
	font-weight: 900;
	text-transform: uppercase;
	background: linear-gradient(
		180deg,
		#ffb56b 0%,
		#f08f4f 50%,
		#ffe4c4 100%
	);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.heading {
	font-size: clamp(32px, 4vw, 56px);
	color: #0f5d64;
	margin: 20px 0;
	line-height: 1.1;
	text-transform: uppercase;
}

.description {
	font-size: 18px;
	line-height: 1.7;
	color: #555;
}

.error-actions {
	display: flex;
	gap: 15px;
	margin-top: 30px;
	flex-wrap: wrap;
	justify-content: center;
}

.btn-primary {
	padding: 14px 30px;
	border-radius: 50px;
	text-decoration: none;
	font-weight: 700;
	transition: all .3s ease;
}

.btn-primary {
	background: #46b4a6;
	color: #fff;
}

.btn-primary:hover {
	transform: translateY(-3px);
}
@media (max-width: 768px) {
	.error-404-page .container {
		grid-template-columns: 1fr;
		text-align: center;
	}

	.description {
		margin: 0 auto;
	}

	.error-actions {
		justify-content: center;
	}
}
/* 404 Page Style END */


#product-sku-dialog {
	overflow: hidden;
}

#product-sku-dialog img {
	width: 100%;
	display: block;
	will-change: transform, transform-origin;
	transition: transform 0.2s ease;
	cursor: zoom-in;
}
.card-stack .card-stack__item{
	background: #fdf8ed;
}
.method-card.card-stack__inner{
	border-radius: 12px;
}


.btn--coral-outline{
	background: var(--color-cream);
}
.site-footer__bottom{
	margin-top: -10px;
}
.minimum_text{
	padding-top: 20px;
}



html body #page main > section.pd_top_0{
	padding-top: 0px !important;
}
html body #page main > section.pd_bottom_0{
	padding-bottom: 0px !important;
}
html body #page main > section.mg_top_0{
	margin-top: 0px !important;
}