:root {
	--rx-font-body: Inter, system-ui, sans-serif;
	--rx-font-heading: Manrope, system-ui, sans-serif;
	--rx-font-weight-regular: 400;
	--rx-font-weight-medium: 600;
	--rx-font-weight-semibold: var(--rx-font-weight-medium);
	--rx-font-weight-heading: 700;
	--rx-font-weight-strong: 800;
	--rx-type-display: clamp(40px, 5vw, 64px);
	--rx-type-section: clamp(30px, 3.5vw, 48px);
	--rx-type-feature: 18px;
	--rx-type-lead: clamp(17px, 1.5vw, 20px);
	--rx-type-body: 16px;
	--rx-type-body-sm: 14px;
	--rx-type-label: 12px;
	--rx-type-meta: 14px;
	--rx-type-meta-label: 11px;
	--rx-type-caption: 12px;
	--rx-leading-display: 1.06;
	--rx-leading-heading: 1.2;
	--rx-leading-body: 1.55;
	--rx-leading-lead: 1.65;
	--rx-leading-compact: 1.25;
	--rx-tracking-display: -.04em;
	--rx-tracking-eyebrow: .12em;
	--rx-tracking-label: .08em;
	--rx-tracking-normal: normal;
	--rx-bg: #f7f2ea;
	--rx-bg-alt: #f1ebe1;
	--rx-surface: #fff;
	--rx-surface-field: #f7f2ea;
	--rx-surface-elevated: #fff;
	--rx-primary: #0b1f2a;
	--rx-text: #10232e;
	--rx-text-muted: #637886;
	--rx-accent: #1f5e58;
	--rx-accent-hover: #0f5c58;
	--rx-accent-strong: #0f5c58;
	--rx-status-success: #2f7f5f;
	--rx-text-body: var(--rx-text);
	--rx-text-supporting: var(--rx-text-muted);
	--rx-muted: var(--rx-text-muted);
	--rx-text-accent: var(--rx-accent);
	--rx-text-link: var(--rx-accent-strong);
	--rx-text-link-hover: var(--rx-accent-hover);
	--rx-text-on-accent: #fffdf8;
	--rx-on-accent: var(--rx-text-on-accent);
	--rx-gold: #c7a96b;
	--rx-brass: #b89551;
	--rx-border: #d9e1de;
	--rx-border-strong: #b8cbc7;
	--rx-text-placeholder: #637886;
	--rx-placeholder: var(--rx-text-placeholder);
	--rx-text-disabled: #a7b8b6;
	--rx-disabled: var(--rx-text-disabled);
	--rx-icon-default: var(--rx-text-supporting);
	--rx-icon-accent: var(--rx-accent-strong);
	--rx-icon-success: var(--rx-status-success);
	--rx-icon-muted: var(--rx-text-muted);
	--rx-icon-disabled: var(--rx-text-disabled);
	--rx-shadow: 0 18px 44px rgba(11, 31, 42, .1);
	--rx-radius-sm: 10px;
	--rx-radius-md: 14px;
	--rx-radius-lg: 20px;
	--rx-container: min(1280px, calc(100% - 48px));
	--rx-focus: 0 0 0 4px rgba(28, 112, 107, .12);
	--rx-transition: 180ms ease;
	--rx-ease: cubic-bezier(.22, 1, .36, 1);
}

body.rx-platform {
	--rx-bg: #f7f3eb;
	--rx-bg-alt: #f1ebe1;
	--rx-surface: #fffdf8;
	--rx-surface-field: #f7f3eb;
	--rx-surface-elevated: #fff;
	--rx-primary: #0b1f2a;
	--rx-text: #071d24;
	--rx-text-muted: #6e8490;
	--rx-accent: #1c706b;
	--rx-accent-hover: #0f5c58;
	--rx-accent-strong: #0f5c58;
	--rx-status-success: #2f7f5f;
	--rx-text-body: var(--rx-text);
	--rx-text-supporting: var(--rx-text-muted);
	--rx-muted: var(--rx-text-muted);
	--rx-text-accent: var(--rx-accent);
	--rx-text-link: var(--rx-accent-strong);
	--rx-text-link-hover: var(--rx-accent-hover);
	--rx-text-on-accent: #fffdf8;
	--rx-on-accent: var(--rx-text-on-accent);
	--rx-gold: #c7a96b;
	--rx-brass: #b89551;
	--rx-border: rgba(7, 29, 36, .12);
	--rx-border-strong: rgba(7, 29, 36, .24);
	--rx-text-placeholder: #6e8490;
	--rx-placeholder: var(--rx-text-placeholder);
	--rx-text-disabled: #a7b8b6;
	--rx-disabled: var(--rx-text-disabled);
	--rx-shadow: 0 18px 44px rgba(11, 31, 42, .1);
	color: var(--rx-text);
	font: var(--rx-font-weight-regular) var(--rx-type-body) / var(--rx-leading-body) var(--rx-font-body);
}

body.rx-platform[data-rx-theme="dark"] {
	--rx-bg: #061b23;
	--rx-bg-alt: #10343b;
	--rx-surface: #0b2b31;
	--rx-surface-field: #0d3037;
	--rx-surface-elevated: #10343b;
	--rx-primary: #0b1f2a;
	--rx-text: #f2e9d8;
	--rx-text-muted: #afc1c3;
	--rx-accent: #17736d;
	--rx-accent-hover: #4fa9a1;
	--rx-accent-strong: #4fa9a1;
	--rx-status-success: #6fcb91;
	--rx-gold: #c5a45f;
	--rx-brass: #c5a45f;
	--rx-border: rgba(124, 203, 193, .18);
	--rx-border-strong: rgba(124, 203, 193, .35);
	--rx-text-placeholder: #afc1c3;
	--rx-text-disabled: #6e8b90;
	--rx-shadow: 0 18px 44px rgba(0, 0, 0, .24);
}

@media (prefers-color-scheme: dark) {
	body.rx-platform:not([data-rx-theme="light"]) {
		--rx-bg: #061b23;
		--rx-bg-alt: #10343b;
		--rx-surface: #0b2b31;
		--rx-surface-field: #0d3037;
		--rx-surface-elevated: #10343b;
		--rx-primary: #0b1f2a;
		--rx-text: #f2e9d8;
		--rx-text-muted: #afc1c3;
		--rx-accent: #17736d;
		--rx-accent-hover: #4fa9a1;
		--rx-accent-strong: #4fa9a1;
		--rx-status-success: #6fcb91;
		--rx-gold: #c5a45f;
		--rx-brass: #c5a45f;
		--rx-border: rgba(124, 203, 193, .18);
		--rx-border-strong: rgba(124, 203, 193, .35);
		--rx-text-placeholder: #afc1c3;
		--rx-text-disabled: #6e8b90;
		--rx-shadow: 0 18px 44px rgba(0, 0, 0, .24);
	}
}

.rx-container {
	width: var(--rx-container);
	margin-inline: auto;
}

.rx-section {
	padding-block: 84px;
}

.rx-eyebrow {
	color: var(--rx-text-accent);
	font-family: var(--rx-font-body);
	font-size: var(--rx-type-label);
	font-weight: var(--rx-font-weight-strong);
	letter-spacing: var(--rx-tracking-eyebrow);
	line-height: var(--rx-leading-body);
}

.rx-section-intro {
	max-width: 560px;
	color: var(--rx-text-supporting);
	font-family: var(--rx-font-body);
	font-size: var(--rx-type-body);
	font-weight: var(--rx-font-weight-regular);
	letter-spacing: var(--rx-tracking-normal);
	line-height: var(--rx-leading-body);
}

.rx-core-heading {
	color: var(--rx-text);
	font-family: var(--rx-font-heading);
	font-weight: var(--rx-font-weight-heading);
	letter-spacing: var(--rx-tracking-display);
	line-height: var(--rx-leading-display);
}

.rx-core-heading-large {
	font-size: var(--rx-type-display);
}

.rx-core-heading-section {
	font-size: var(--rx-type-section);
}

.rx-core-heading-feature {
	font-size: var(--rx-type-feature);
}

.rx-text-body {
	color: var(--rx-text);
	font-family: var(--rx-font-body);
	font-size: var(--rx-type-body);
	font-weight: var(--rx-font-weight-regular);
	letter-spacing: var(--rx-tracking-normal);
	line-height: var(--rx-leading-body);
}

.rx-text-body-sm {
	color: var(--rx-text-supporting);
	font-family: var(--rx-font-body);
	font-size: var(--rx-type-body-sm);
	font-weight: var(--rx-font-weight-regular);
	letter-spacing: var(--rx-tracking-normal);
	line-height: var(--rx-leading-body);
}

.rx-text-lead {
	color: var(--rx-text-supporting);
	font-family: var(--rx-font-body);
	font-size: var(--rx-type-lead);
	font-weight: var(--rx-font-weight-regular);
	letter-spacing: var(--rx-tracking-normal);
	line-height: var(--rx-leading-lead);
}

.rx-text-caption {
	color: var(--rx-text-supporting);
	font-family: var(--rx-font-body);
	font-size: var(--rx-type-caption);
	font-weight: var(--rx-font-weight-regular);
	letter-spacing: var(--rx-tracking-normal);
	line-height: var(--rx-leading-compact);
}

body.rx-platform .rx-text-link,
body.rx-platform .rx-text-link:visited {
	color: var(--rx-text-link);
	font: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: .14em;
	transition: color var(--rx-transition), text-decoration-color var(--rx-transition);
}

body.rx-platform .rx-text-link:hover,
body.rx-platform .rx-text-link:active {
	color: var(--rx-text-link-hover);
}

body.rx-platform .rx-text-link:focus-visible {
	outline: 0;
	box-shadow: var(--rx-focus);
}

body.rx-platform a,
body.rx-platform a:visited {
	color: var(--rx-text);
}

body.rx-platform a:hover,
body.rx-platform a:active {
	color: var(--rx-accent-strong);
}

.rx-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

@media (max-width: 900px) {
	:root {
		--rx-container: calc(100% - 32px);
	}
}

@media (max-width: 560px) {
	.rx-section {
		padding-block: 56px;
	}
}
