.new-home {
	/* Drives both the sticky site header and any element that must clear it
	   (e.g. the sticky pricing table header on /pricing). */
	--nh-header-height: 80px;
	--proof-section-gap: 64px;
	--ink: #19251f;
	--muted: #647069;
	--brand: #5c3fff;
	--brand-hover: #4b2ee5;
	--on-brand: #fff;
	--accent-soft: #e4deff;
	--accent-surface: #f1edff;
	--accent-subtle: #f7f5ff;
	--accent-line: #c4b8ff;
	--paper: #fff;
	--soft: #f5f6f2;
	--line: #e0e4dd;
	--accent: #5c3fff;
	--radius: 22px;
	font-family: 'DM Sans', Arial, sans-serif;
	color: var(--ink);
	background: var(--paper);
	font-synthesis: none;
}
.new-home[data-nh-theme='dark'] {
	color-scheme: dark;
	--ink: #f2f5ef;
	--muted: #a7b2a9;
	--accent-soft: #36295e;
	--accent-surface: #251e3d;
	--accent-subtle: #1d192c;
	--accent-line: #69549b;
	--paper: #0d110f;
	--soft: #1b241e;
	--line: #303a33;
	--accent: #b19aff;
	--surface: #151d18;
	--raised: #1d2821;
}
.new-home * {
	box-sizing: border-box;
}
.new-home svg circle,
.new-home svg path,
.new-home svg rect {
	fill: inherit;
	stroke: inherit;
}
.new-home h1,
.new-home h2,
.new-home h3,
.new-home h4,
.new-home p,
.new-home figure {
	margin: 0;
}
.new-home button,
.new-home a {
	-webkit-tap-highlight-color: transparent;
}
.new-home button {
	font: inherit;
}
.new-home button,
.new-home a {
	touch-action: manipulation;
}
.new-home a {
	color: inherit;
	text-decoration: none;
}
.new-home button {
	cursor: pointer;
	background: none;
}
.new-home img {
	max-width: 100%;
	display: block;
}
.new-home h1,
.new-home h2,
.new-home h3,
.new-home h4 {
	font-family: Manrope, Arial, sans-serif;
}
.new-home h1,
.new-home h2 {
	font-weight: 600;
	letter-spacing: -0.065em;
	line-height: 1.06;
}
.new-home p {
	line-height: 1.6;
}
.new-home a:focus-visible,
.new-home button:focus-visible {
	outline: 3px solid var(--accent);
	outline-offset: 5px;
}
.new-home .section-wrap {
	max-width: 1320px;
	padding-left: 54px;
	padding-right: 54px;
	margin: auto;
}
.new-home section[id] {
	scroll-margin-top: 105px;
}
.new-home .skip-link {
	position: fixed;
	left: 12px;
	top: -80px;
	z-index: 100;
	background: var(--ink);
	color: white;
	padding: 15px;
}
.new-home[data-nh-theme='dark'] .skip-link {
	background: var(--brand);
	color: var(--on-brand);
}
.new-home .skip-link:focus {
	top: 10px;
}
.new-home .header {
	height: var(--nh-header-height);
	position: sticky;
	top: 0;
	z-index: 30;
	background: #ffffffed;
	backdrop-filter: blur(18px);
	border-bottom: 1px solid #e0e4dd80;
}
.new-home[data-nh-theme='dark'] .header {
	background: #0d110fed;
	border-bottom-color: var(--line);
}
.new-home .nav-wrap {
	height: 100%;
	max-width: 1320px;
	padding: 0 54px;
	margin: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
}
.new-home .nav-brand {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}
.new-home .brand {
	display: flex;
	align-items: center;
	gap: 7px;
	font-family: Manrope, sans-serif;
	font-size: 29px;
	font-weight: 800;
	letter-spacing: -1.7px;
}
/* Full Satlantis lockup (symbol + wordmark), so it sizes by height, not as a square. */
.new-home .brand img {
	height: 34px;
	width: auto;
	display: block;
	flex-shrink: 0;
}
.new-home .brand-period {
	margin-left: -7px;
}
.new-home .nav {
	display: flex;
	gap: 28px;
	font-size: 14px;
	font-weight: 550;
}
.new-home .nav a:hover,
.new-home .login:hover {
	color: var(--accent);
}
.new-home[data-nh-theme='dark'] .nav a:hover,
.new-home[data-nh-theme='dark'] .login:hover,
.new-home[data-nh-theme='dark'] .text-link:hover,
.new-home[data-nh-theme='dark'] .footer-top > div > a:hover {
	color: var(--accent);
}
.new-home .nav-actions {
	display: flex;
	align-items: center;
	gap: 18px;
}
.new-home .login {
	font-size: 14px;
}
.new-home .theme-toggle {
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	border: 1px solid var(--line);
	border-radius: 50%;
	color: var(--ink);
	flex-shrink: 0;
	transition:
		background 0.2s,
		border-color 0.2s;
}
.new-home .theme-toggle:hover {
	background: var(--soft);
	border-color: #b8c1b8;
}
.new-home .theme-toggle svg {
	width: 18px;
	height: 18px;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.new-home .button {
	min-height: 53px;
	padding: 16px 23px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 27px;
	font-weight: 550;
	font-size: 15px;
	border: 1px solid transparent;
	border-radius: 8px;
	transition:
		transform 0.2s,
		background 0.2s;
	white-space: nowrap;
}
.new-home .button:hover {
	transform: translateY(-2px);
}
.new-home .button.dark {
	background: var(--brand);
	color: white;
}
.new-home .button.dark:hover {
	background: var(--brand-hover);
}
.new-home .button.primary {
	background: var(--brand);
	color: var(--on-brand);
}
.new-home[data-nh-theme='dark'] .button.dark,
.new-home[data-nh-theme='dark'] .button.primary {
	background: var(--brand);
	color: var(--on-brand);
}
.new-home[data-nh-theme='dark'] .button.dark:hover,
.new-home[data-nh-theme='dark'] .button.primary:hover {
	background: var(--brand-hover);
}
.new-home .button.small {
	min-height: 43px;
	padding: 11px 16px;
	font-size: 14px;
	gap: 18px;
}
.new-home .button span {
	font-size: 21px;
	line-height: 1;
}
.new-home .menu-toggle {
	display: none;
}
.new-home .home-hero {
	display: grid;
	grid-template-columns: 1.04fr 1fr;
	gap: 52px;
	padding-top: 64px;
	padding-bottom: 76px;
	align-items: center;
	justify-items: stretch;
}
.new-home .hero-copy,
.new-home .hero-art {
	min-width: 0;
}
.new-home .eyebrow {
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 1.5px;
	line-height: 1.5;
	margin-bottom: 25px;
}
.new-home .home-hero h1 {
	font-size: clamp(48px, 5.05vw, 69px);
	margin-bottom: 28px;
	letter-spacing: -0.07em;
}
.new-home .home-hero h1 > span {
	padding-right: 9px;
}
.new-home[data-nh-theme='dark'] .home-hero h1 > span {
	color: var(--accent);
}
.new-home .hero-description {
	max-width: 490px;
	color: #57645b;
	font-size: 17px;
	line-height: 1.65;
}
.new-home[data-nh-theme='dark'] .hero-description {
	color: #b5bfb6;
}
.new-home .button-row {
	display: flex;
	align-items: center;
	gap: 24px;
	margin-top: 30px;
}
.new-home .text-link {
	font-size: 14px;
	font-weight: 550;
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
.new-home .text-link:hover {
	color: var(--accent);
}
.new-home .discover-icon {
	width: 28px;
	height: 28px;
	border: 1px solid #b8c1b8;
	border-radius: 50%;
	display: grid;
	place-items: center;
	flex-shrink: 0;
	transition: border-color 0.2s;
}
.new-home[data-nh-theme='dark'] .discover-icon {
	border-color: #64725f;
}
.new-home .discover-icon svg {
	width: 14px;
	height: 14px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.new-home .text-link:hover .discover-icon {
	border-color: currentColor;
}
.new-home .microcopy {
	font-size: 12px;
	color: var(--muted);
	margin-top: 15px;
}
.new-home .hero-art {
	position: relative;
	margin-left: 10px;
}
.new-home .hero-photo {
	position: relative;
	border-radius: 135px 22px 22px 22px;
	overflow: hidden;
	/* Tracks the viewport so the hero, the overlapping event card and the top of the
	   stats strip all fit on a 16:9 desktop screen (~430px tall at 1080p). Clamped so
	   the photo never gets cramped on short windows or oversized on tall ones. */
	height: clamp(340px, 22.2vh + 190px, 500px);
	background: #bcc5ae;
}
.new-home[data-nh-theme='dark'] .hero-photo {
	background: #263329;
	box-shadow: 0 20px 65px #00000035;
}
.new-home .hero-photo > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 48% center;
}
.new-home .hero-photo:after {
	content: '';
	position: absolute;
	inset: 30% 0 0;
	background: linear-gradient(transparent, #17231b8a);
}
.new-home[data-nh-theme='dark'] .hero-photo:after {
	background: linear-gradient(transparent, #09140ab8);
}
.new-home .hero-photo figcaption {
	position: absolute;
	/* Clears the event card, which overhangs the photo's bottom edge by 36px. */
	bottom: 112px;
	left: 34px;
	right: 34px;
	z-index: 1;
	color: white;
}
.new-home .hero-photo figcaption span {
	font-size: 12px;
	letter-spacing: 1px;
	font-weight: 500;
	display: block;
	margin-bottom: 10px;
}
.new-home .hero-photo figcaption strong {
	display: block;
	font:
		500 clamp(34px, 2.4vw, 44px) / 1.08 Manrope,
		sans-serif;
	letter-spacing: -2px;
}
.new-home .floating-event {
	position: absolute;
	bottom: -36px;
	left: -36px;
	right: 25px;
	background: white;
	border: 1px solid var(--line);
	border-radius: 13px;
	padding: 18px;
	display: flex;
	align-items: center;
	gap: 14px;
	box-shadow: 0 15px 45px #1f30201a;
}
.new-home[data-nh-theme='dark'] .floating-event {
	background: var(--raised);
	border-color: #455242;
	box-shadow: 0 18px 45px #00000070;
}
.new-home .date-tile {
	flex-shrink: 0;
	border-radius: 8px;
	background: #f1f3ec;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 62px;
}
.new-home[data-nh-theme='dark'] .date-tile {
	background: #2e3c2c;
	color: var(--ink);
}
.new-home .date-tile small {
	font-size: 12px;
	letter-spacing: 1px;
}
.new-home[data-nh-theme='dark'] .date-tile small {
	color: var(--accent);
}
.new-home .date-tile b {
	font-size: 26px;
	font-weight: 500;
	line-height: 1.2;
}
.new-home .floating-event .event-label {
	font-size: 12px;
	letter-spacing: 1.1px;
	color: var(--muted);
	display: block;
}
.new-home .floating-event strong {
	font-size: 17px;
	display: block;
	margin: 4px 0;
}
.new-home .event-meta {
	color: var(--muted);
	font-size: 12px;
}
.new-home .round-arrow {
	background: var(--brand);
	color: var(--on-brand);
	height: 38px;
	width: 38px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	margin-left: auto;
	font-size: 23px;
	flex-shrink: 0;
}
.new-home[data-nh-theme='dark'] .round-arrow {
	color: var(--on-brand);
}
.new-home .floating-members {
	color: var(--on-brand);
	position: absolute;
	top: 47px;
	right: -22px;
	display: flex;
	gap: 10px;
	align-items: center;
	padding: 13px 17px;
	border-radius: 10px;
	background: var(--brand);
	box-shadow: 0 8px 24px #22301518;
	transform: rotate(4deg);
}
.new-home[data-nh-theme='dark'] .floating-members {
	color: var(--on-brand);
	box-shadow: 0 10px 30px #00000045;
}
.new-home .check-circle {
	width: 28px;
	height: 28px;
	background: var(--on-brand);
	color: var(--brand);
	border-radius: 50%;
	display: grid;
	place-items: center;
}
.new-home[data-nh-theme='dark'] .check-circle {
	background: var(--on-brand);
	color: var(--brand);
}
.new-home .floating-members strong,
.new-home .floating-members div > span {
	font-size: 12px;
	display: block;
	line-height: 1.5;
}
.new-home .proof {
	display: grid;
	grid-template-columns: 1.15fr 1fr 1fr 1fr;
	align-items: stretch;
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
	padding-top: 44px;
	padding-bottom: 44px;
}
.new-home .proof-intro {
	font-size: 15px;
	color: var(--muted);
	align-self: center;
	padding-right: 30px;
}
.new-home .proof-intro > strong {
	color: var(--ink);
	font-weight: 500;
}
/* Each figure owns its own cell, so the number and label share one centre line. */
.new-home .proof .stat {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 10px;
	padding: 0 20px;
	border-left: 1px solid var(--line);
}
.new-home .proof .stat-value {
	display: flex;
	align-items: baseline;
	justify-content: center;
	/* Reuses the editorial serif already carried by `.serif` elsewhere on the page. */
	font-family: Georgia, serif;
	font-weight: 400;
	font-size: clamp(44px, 4vw, 60px);
	line-height: 1;
	letter-spacing: -0.04em;
	/* Tabular figures keep the number from jittering while it counts up. */
	font-variant-numeric: tabular-nums;
	font-feature-settings: 'tnum' 1;
}
.new-home .proof .stat-suffix {
	color: var(--accent);
	margin-left: 0.04em;
}
.new-home .proof .stat-label {
	font-size: 12px;
	font-weight: 550;
	letter-spacing: 0.9px;
	text-transform: uppercase;
	color: var(--muted);
	line-height: 1.45;
	max-width: 15ch;
}
.new-home .proof .stat-label.two-line-label {
	max-width: none;
}
.new-home .proof .stat-label.two-line-label .stat-label-line {
	display: block;
	white-space: nowrap;
}
.new-home .connection {
	padding-top: 105px;
	padding-bottom: 100px;
	text-align: center;
}
.new-home .connection h2 {
	font-size: 56px;
}
.new-home .serif {
	font-family: Georgia, serif;
	font-weight: 400;
	font-style: italic;
	letter-spacing: -0.055em;
}
.new-home .section-description {
	font-size: 17px;
	color: var(--muted);
	margin-top: 23px;
}
.new-home .connection-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	text-align: left;
	gap: 55px;
	margin-top: 105px;
}
.new-home .connection-grid > div {
	border-top: 1px solid var(--line);
	padding-top: 22px;
}
.new-home .step-number {
	font-size: 13px;
	color: var(--muted);
	display: block;
	margin-bottom: 25px;
}
.new-home[data-nh-theme='dark'] .step-number {
	color: var(--accent);
}
.new-home .connection h3 {
	font-size: 25px;
	letter-spacing: -1px;
	margin-bottom: 10px;
}
.new-home .connection-grid p {
	font-size: 16px;
	color: var(--muted);
}
.new-home .feature-icon svg {
	width: 21px;
	height: 21px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.new-home .section-heading {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 40px;
	margin-bottom: 45px;
}
.new-home .section-heading h2 {
	font-size: 49px;
}
.new-home .section-heading > p {
	font-size: 16px;
	color: var(--muted);
	line-height: 1.7;
	padding-bottom: 4px;
}
.new-home .platform {
	padding-bottom: 75px;
}
.new-home .platform-inner {
	--accent: #b19aff;
	background: #17261f;
	color: white;
	border-radius: 25px;
	padding: 48px 42px 0;
	overflow: hidden;
}
.new-home[data-nh-theme='dark'] .platform-inner {
	background: #151e18;
	border: 1px solid #34432f;
	box-shadow: 0 28px 70px #00000025;
}
.new-home .platform-inner .eyebrow {
	color: #b6c4b8;
}
.new-home[data-nh-theme='dark'] .platform-inner .eyebrow,
.new-home[data-nh-theme='dark'] .feature-number {
	color: #bfceaf;
}
.new-home .platform .section-heading h2 {
	font-size: 46px;
	letter-spacing: -2.5px;
}
.new-home .platform .section-heading > p {
	color: #b7c4bc;
}
.new-home[data-nh-theme='dark'] .platform .section-heading > p,
.new-home[data-nh-theme='dark'] .product-copy > p {
	color: #b6c2b7;
}
.new-home .product-tabs {
	display: flex;
	gap: 6px;
	border-top: 1px solid #ffffff25;
	border-bottom: 1px solid #ffffff25;
	padding: 16px 0;
}
.new-home[data-nh-theme='dark'] .product-tabs {
	border-color: #354130;
}
.new-home .product-tabs button {
	border: 0;
	color: #ccd5cf;
	background: transparent;
	padding: 13px 17px;
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 14px;
	border-radius: 7px;
	flex: 1;
	justify-content: center;
	transition:
		background 0.2s,
		color 0.2s;
}
.new-home[data-nh-theme='dark'] .product-tabs button {
	color: #cbd5c9;
}
.new-home .product-tabs button[aria-selected='true'] {
	color: var(--on-brand);
	background: var(--brand);
}
.new-home[data-nh-theme='dark'] .product-tabs button[aria-selected='true'] {
	color: var(--on-brand);
}
.new-home .product-tabs button:hover:not([aria-selected='true']) {
	background: #ffffff10;
}
.new-home[data-nh-theme='dark'] .product-tabs button:hover:not([aria-selected='true']) {
	background: #283425;
}
.new-home .tab-icon {
	display: inline-flex;
}
.new-home .tab-icon svg {
	width: 21px;
	height: 21px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.new-home .product-panel {
	display: grid;
	grid-template-columns: 0.88fr 1.12fr;
	gap: 55px;
	padding: 48px 0;
	align-items: center;
	min-height: 640px;
}
.new-home .product-panel[hidden] {
	display: none;
}
.new-home .feature-number {
	color: #c1cec5;
	font-size: 12px;
	letter-spacing: 1px;
	display: block;
	margin-bottom: 28px;
}
.new-home .product-copy h3 {
	font-size: 36px;
	letter-spacing: -1.7px;
	font-weight: 500;
	line-height: 1.15;
	margin-bottom: 21px;
}
.new-home .product-copy > p {
	font-size: 16px;
	color: #b7c4bc;
	line-height: 1.7;
}
.new-home .check-list {
	list-style: none;
	margin: 26px 0 29px;
	padding: 0;
	display: grid;
	gap: 13px;
}
.new-home .check-list li {
	font-size: 14px;
	line-height: 1.5;
	padding-left: 23px;
	position: relative;
}
.new-home .check-list li:before {
	content: '✓';
	position: absolute;
	left: 0;
	color: inherit;
}
.new-home .product-copy .check-list {
	color: #e1e8e3;
}
.new-home .product-copy .check-list li:before {
	color: var(--accent);
}
.new-home .text-link.light {
	color: white;
	gap: 16px;
}
.new-home .text-link.light:hover {
	color: var(--accent);
}
.new-home .product-preview {
	--accent: #5c3fff;
	background: #fff;
	color: var(--ink);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 18px 55px #0002;
	border: 1px solid #ffffff20;
	align-self: center;
}
.new-home[data-nh-theme='dark'] .product-preview {
	--accent: #b19aff;
	background: var(--raised);
	border-color: #465341;
	box-shadow: 0 20px 55px #00000050;
}
.new-home .preview-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 12px 18px;
	border-bottom: 1px solid var(--line);
	font-size: 12px;
	color: #738076;
}
.new-home[data-nh-theme='dark'] .preview-bar {
	background: #111a14;
	color: #b0bdae;
}
.new-home .mini-brand {
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.8px;
	color: var(--ink);
}
.new-home .event-preview > img {
	width: 100%;
	height: 174px;
	object-fit: cover;
	object-position: center 53%;
}
.new-home .event-preview-copy {
	padding: 23px 25px;
}
.new-home .preview-kicker {
	display: block;
	font-size: 12px;
	letter-spacing: 1px;
	color: #758276;
	line-height: 1.5;
}
.new-home[data-nh-theme='dark'] .preview-kicker {
	color: #bdcbae;
}
.new-home .event-preview-copy h4,
.new-home .community-body h4,
.new-home .membership-body > h4,
.new-home .contacts-body h4 {
	font-size: 29px;
	letter-spacing: -1.4px;
	font-weight: 650;
	margin: 6px 0;
}
.new-home .event-preview-copy > p {
	font-size: 13px;
	color: var(--muted);
	margin-bottom: 21px;
}
.new-home .preview-detail {
	display: flex;
	gap: 12px;
	margin: 14px 0;
	align-items: center;
}
.new-home .preview-detail strong,
.new-home .preview-detail div > span {
	display: block;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
}
.new-home .preview-detail div > span {
	color: var(--muted);
	font-weight: 400;
}
.new-home .preview-detail .detail-icon {
	width: 34px;
	height: 34px;
	border: 1px solid var(--line);
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.new-home[data-nh-theme='dark'] .preview-detail .detail-icon {
	background: #263226;
}
.new-home .preview-detail svg {
	width: 18px;
	height: 18px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.new-home .ticket-option {
	padding: 15px 0 0;
	border-top: 1px solid var(--line);
	margin-top: 18px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}
.new-home .ticket-option strong {
	font-size: 14px;
	display: block;
}
.new-home .ticket-option div > span {
	font-size: 12px;
	color: var(--muted);
	display: block;
	margin-top: 5px;
}
.new-home .ticket-option b {
	font-size: 21px;
	font-weight: 600;
}
.new-home .preview-button {
	display: flex;
	justify-content: space-between;
	background: var(--brand);
	color: #fff;
	margin-top: 18px;
	padding: 12px 16px;
	border-radius: 7px;
	font-size: 14px;
}
.new-home[data-nh-theme='dark'] .preview-button {
	background: var(--brand);
	color: #fff;
}
.new-home .platform-bottom {
	padding: 22px 0;
	border-top: 1px solid #ffffff25;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	font-size: 12px;
	color: #b7c4bc;
}
.new-home[data-nh-theme='dark'] .platform-bottom {
	border-color: #354130;
	color: #afbeac;
}
.new-home .platform-bottom > span:first-child {
	display: flex;
	align-items: center;
	gap: 9px;
	color: white;
	font-size: 14px;
}
.new-home .inline-icon {
	display: inline-flex;
}
.new-home .inline-icon svg {
	width: 21px;
	height: 21px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.new-home .inline-badge {
	display: inline-block;
	border: 1px solid #b1c0b5;
	border-radius: 4px;
	font-size: 12px;
	padding: 4px 6px;
	letter-spacing: 0;
	margin-top: 7px;
}
.new-home[data-nh-theme='dark'] .inline-badge {
	border-color: #657a53;
	color: var(--accent);
}
.new-home .community-cover {
	position: relative;
}
.new-home .community-cover > img {
	height: 170px;
	width: 100%;
	object-fit: cover;
}
.new-home .community-cover > span {
	position: absolute;
	left: 22px;
	bottom: 16px;
	font-size: 13px;
	font-weight: 600;
	color: #fff;
	text-shadow: 0 1px 8px #0008;
	letter-spacing: 1px;
}
.new-home .community-body {
	padding: 22px;
}
.new-home[data-nh-theme='dark'] .community-body,
.new-home[data-nh-theme='dark'] .contacts-body {
	background: var(--raised);
}
.new-home .community-body > p {
	font-size: 13px;
	color: var(--muted);
}
.new-home .mock-nav {
	display: flex;
	gap: 22px;
	font-size: 12px;
	border-bottom: 1px solid var(--line);
	margin: 23px 0 12px;
}
.new-home .mock-nav > span {
	padding-bottom: 11px;
}
.new-home .mock-nav .selected {
	border-bottom: 2px solid var(--accent);
}
.new-home[data-nh-theme='dark'] .mock-nav .selected {
	color: var(--accent);
	border-bottom-color: var(--accent);
}
.new-home .mini-event {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 13px 0;
	border-bottom: 1px solid var(--line);
}
.new-home .mini-event strong,
.new-home .mini-event div > span {
	display: block;
	font-size: 14px;
}
.new-home .mini-event div > span {
	font-size: 12px;
	color: var(--muted);
	margin-top: 6px;
}
.new-home .mini-event .date-tile {
	width: 45px;
	height: 53px;
}
.new-home .mini-event .date-tile b {
	font-size: 22px;
}
.new-home .member-note {
	display: flex;
	align-items: center;
	margin-top: 22px;
}
.new-home .avatar-letter {
	width: 33px;
	height: 33px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--accent-soft);
	color: #43327b;
	font-size: 12px;
	font-weight: 600;
	border-radius: 50%;
	flex-shrink: 0;
}
.new-home[data-nh-theme='dark'] .avatar-letter {
	background: var(--accent-soft);
	color: #d9d0ff;
}
.new-home .avatar-letter.lavender {
	background: #e8dffb;
	color: #5c4188;
}
.new-home[data-nh-theme='dark'] .avatar-letter.lavender {
	background: #40324f;
	color: #e0c4ff;
}
.new-home .avatar-letter.peach {
	background: #f4ded0;
	color: #835838;
}
.new-home[data-nh-theme='dark'] .avatar-letter.peach {
	background: #49362b;
	color: #f0c9a9;
}
.new-home .member-note > .avatar-letter + .avatar-letter {
	margin-left: -7px;
	border: 2px solid white;
}
.new-home[data-nh-theme='dark'] .member-note > .avatar-letter + .avatar-letter {
	border-color: var(--raised);
}
.new-home .member-note > span:last-child {
	font-size: 12px;
	color: var(--muted);
	margin-left: 10px;
}
.new-home .membership-body {
	padding: 30px 30px 20px;
	background: #f5f4f0;
}
.new-home[data-nh-theme='dark'] .membership-body {
	background: #18221b;
}
.new-home .membership-body > h4 {
	font-size: 32px;
	margin: 10px 0;
}
.new-home .membership-body > p {
	font-size: 14px;
	color: var(--muted);
}
.new-home .membership-card {
	background: var(--accent-soft);
	padding: 25px;
	border-radius: 12px;
	margin: 28px 0 14px;
	box-shadow: 0 12px 30px #19311b10;
	transform: rotate(-2deg);
}
.new-home[data-nh-theme='dark'] .membership-card {
	background: linear-gradient(130deg, #362950, #211a34);
	color: var(--ink);
	border: 1px solid var(--accent-line);
	box-shadow: 0 15px 35px #00000045;
}
.new-home .membership-card > div {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 35px;
}
.new-home .membership-symbol svg {
	width: 33px;
	height: 33px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.new-home .membership-card h4 {
	font-size: 29px;
	letter-spacing: -1.3px;
	margin-bottom: 10px;
}
.new-home[data-nh-theme='dark'] .membership-card h4,
.new-home[data-nh-theme='dark'] .membership-symbol,
.new-home[data-nh-theme='dark'] .membership-card li:before {
	color: var(--accent);
}
.new-home[data-nh-theme='dark'] .membership-card .preview-kicker {
	color: #d1c6eb;
}
.new-home .membership-card p {
	font-size: 14px;
}
.new-home[data-nh-theme='dark'] .membership-card p {
	color: #c8c0d9;
}
.new-home .membership-card ul {
	padding: 0;
	list-style: none;
	font-size: 13px;
	line-height: 2;
	margin-top: 20px;
}
.new-home .membership-card li:before {
	content: '✓';
	margin-right: 8px;
}
.new-home .member-card-bottom {
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #17261f35;
	margin-top: 25px;
	padding-top: 15px;
	font-size: 12px;
}
.new-home[data-nh-theme='dark'] .member-card-bottom {
	border-top-color: var(--accent-line);
	color: #dfd5f5;
}
.new-home .membership-body .concept-note {
	font-size: 12px;
	text-align: center;
}
.new-home .contacts-body {
	padding: 32px 25px;
}
.new-home .contacts-body h4 {
	margin: 13px 0 25px;
}
.new-home .contact-filter {
	display: flex;
	gap: 20px;
	padding: 12px 0;
	font-size: 12px;
	border-bottom: 1px solid var(--line);
	color: var(--accent);
}
.new-home[data-nh-theme='dark'] .contact-filter {
	color: var(--accent);
}
.new-home .contact-filter span {
	color: var(--muted);
}
.new-home .contact-row {
	display: flex;
	gap: 13px;
	align-items: center;
	padding: 20px 0;
	border-bottom: 1px solid var(--line);
}
.new-home .contact-row > div {
	flex: 1;
}
.new-home .contact-row strong,
.new-home .contact-row div > span {
	display: block;
	font-size: 13px;
	font-weight: 500;
}
.new-home .contact-row div > span {
	font-size: 12px;
	color: var(--muted);
	margin-top: 5px;
	font-weight: 400;
}
.new-home .status-label {
	font-size: 12px;
	color: #4b673d;
	background: #eef3e7;
	padding: 5px 8px;
	border-radius: 5px;
}
.new-home[data-nh-theme='dark'] .status-label {
	background: #33452a;
	color: #d1eeb2;
}
.new-home .status-label.guest {
	background: #f2efe9;
	color: #7d6951;
}
.new-home[data-nh-theme='dark'] .status-label.guest {
	background: #463c2b;
	color: #efdab3;
}
.new-home .email-preview {
	background: #f4f1fb;
	padding: 21px;
	border-radius: 10px;
	display: flex;
	gap: 15px;
	margin-top: 28px;
}
.new-home[data-nh-theme='dark'] .email-preview {
	background: #30283e;
	border: 1px solid #4d405f;
}
.new-home .email-preview svg {
	color: var(--accent);
	width: 27px;
	height: 27px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.new-home .email-preview strong {
	display: block;
	font-size: 16px;
	margin: 6px 0;
}
.new-home .email-preview p {
	font-size: 13px;
	color: var(--muted);
}
.new-home[data-nh-theme='dark'] .email-preview .preview-kicker {
	color: #d0b7f3;
}
.new-home .feature-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 34px;
	padding-top: 105px;
}
.new-home .feature-grid article > .feature-icon {
	background: var(--soft);
	width: 42px;
	height: 42px;
	border-radius: 9px;
	margin-bottom: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.new-home[data-nh-theme='dark'] .feature-grid article > .feature-icon {
	color: var(--accent);
	border: 1px solid #35432e;
}
.new-home .feature-grid h3 {
	font-size: 18px;
	letter-spacing: -0.6px;
	margin-bottom: 11px;
}
.new-home .feature-grid p {
	font-size: 1rem;
	color: var(--muted);
	line-height: 1.65;
}
.new-home .communities {
	padding-top: 50px;
	padding-bottom: 80px;
}
.new-home .communities .section-heading h2 {
	font-size: 49px;
}
.new-home .audience-carousel {
	--visible-cards: 3;
	--card-gap: 25px;
	min-width: 0;
}
.new-home .audience-carousel-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 23px;
}
.new-home .audience-carousel-toolbar > p {
	font-size: 14px;
	color: var(--muted);
}
.new-home .carousel-controls {
	display: flex;
	align-items: center;
	gap: 9px;
	flex-shrink: 0;
}
.new-home .carousel-status {
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	color: var(--muted);
	margin-right: 9px;
	min-width: 48px;
}
.new-home .carousel-controls button {
	width: 44px;
	height: 44px;
	display: grid;
	place-items: center;
	border: 1px solid var(--line);
	background: var(--paper);
	border-radius: 50%;
	color: var(--ink);
	font-size: 23px;
	transition:
		background 0.2s,
		border-color 0.2s;
}
.new-home .carousel-controls button:hover:not(:disabled) {
	background: var(--brand);
	border-color: var(--brand);
	color: var(--on-brand);
}
.new-home .carousel-controls button:disabled {
	opacity: 0.35;
	cursor: default;
}
.new-home .audience-track {
	display: flex;
	gap: var(--card-gap);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
	scrollbar-color: var(--accent-line) transparent;
	padding: 5px 5px 20px;
	margin: -5px -5px 0;
	scroll-padding-inline: 5px;
}
.new-home[data-nh-theme='dark'] .audience-track {
	scrollbar-color: var(--accent-line) transparent;
}
.new-home .audience-track:focus-visible {
	outline: 2px solid var(--accent);
	outline-offset: 5px;
	border-radius: 8px;
}
.new-home .audience-carousel .audience-card {
	flex: 0 0 calc((100% - (var(--visible-cards) - 1) * var(--card-gap)) / var(--visible-cards));
	min-width: 0;
	display: flex;
	flex-direction: column;
	scroll-snap-align: start;
	scroll-margin-inline: 0;
}
.new-home .audience-image {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	flex-shrink: 0;
}
.new-home[data-nh-theme='dark'] .audience-image {
	box-shadow: 0 10px 30px #00000030;
}
.new-home .audience-image > img {
	width: 100%;
	height: 275px;
	object-fit: cover;
	transition: transform 0.6s;
}
.new-home .audience-card:hover .audience-image img {
	transform: scale(1.035);
}
.new-home .audience-image:after {
	position: absolute;
	content: '';
	inset: 55% 0 0;
	background: linear-gradient(transparent, #0008);
}
.new-home[data-nh-theme='dark'] .audience-image:after {
	background: linear-gradient(transparent, #071208b3);
}
.new-home .audience-image > span {
	position: absolute;
	bottom: 18px;
	left: 19px;
	right: 15px;
	z-index: 1;
	color: white;
	font-size: 12px;
	letter-spacing: 0.7px;
	line-height: 1.5;
}
.new-home .audience-carousel .audience-card h3 {
	font-size: 23px;
	line-height: 1.25;
	letter-spacing: -0.9px;
	margin: 23px 0 13px;
	min-height: 58px;
	max-width: 310px;
}
.new-home .audience-carousel .audience-card p {
	font-size: 1rem;
	color: var(--muted);
	line-height: 1.7;
	flex: 1;
}
.new-home .audience-carousel .audience-card .text-link {
	align-self: flex-start;
	margin-top: 22px;
	font-size: 14px;
	gap: 13px;
	line-height: 1.5;
	min-height: 42px;
}
.new-home .bitcoin-image > img {
	object-position: 72% center;
}
.new-home .bitcoin-mark {
	position: absolute;
	top: 18px;
	right: 18px;
	width: 47px;
	height: 47px;
	border-radius: 50%;
	background: #f7931a;
	color: #fff;
	display: grid;
	place-items: center;
	font-size: 33px;
	font-weight: 500;
	transform: rotate(12deg);
	box-shadow: 0 4px 16px #0002;
}
.new-home .audience-footnote {
	margin-top: 42px;
	border-top: 1px solid var(--line);
	padding-top: 24px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
}
.new-home .audience-footnote > span {
	font-size: 16px;
	font-weight: 500;
}
.new-home .audience-footnote p {
	font-size: 14px;
	color: var(--muted);
}
.new-home .mission {
	background: var(--accent-soft);
	margin: 0 0 90px;
}
.new-home[data-nh-theme='dark'] .mission {
	background: var(--accent-subtle);
	border-top: 1px solid var(--accent-line);
	border-bottom: 1px solid var(--accent-line);
}
.new-home .mission-inner {
	padding-top: 85px;
	padding-bottom: 30px;
	display: grid;
	grid-template-columns: 1.13fr 1fr;
	gap: 30px 78px;
}
.new-home .mission h2 {
	font-size: 65px;
	letter-spacing: -3.8px;
	line-height: 1.05;
}
.new-home[data-nh-theme='dark'] .mission .eyebrow,
.new-home[data-nh-theme='dark'] .mission h2 .serif {
	color: var(--accent);
}
.new-home .mission-copy {
	padding-top: 37px;
}
.new-home .mission-copy p {
	font-size: 16px;
	line-height: 1.75;
	margin-bottom: 18px;
	color: #4b4164;
}
.new-home[data-nh-theme='dark'] .mission-copy p {
	color: #c3b9d8;
}
.new-home .mission-copy .mission-lead {
	font-size: 23px;
	line-height: 1.4;
	letter-spacing: -0.6px;
	font-weight: 500;
	color: var(--ink);
}
.new-home[data-nh-theme='dark'] .mission-copy .mission-lead {
	color: #f1edfa;
}
.new-home .mission-copy > strong {
	font-size: 17px;
	line-height: 1.6;
	font-weight: 550;
	display: block;
	margin-top: 25px;
}
.new-home[data-nh-theme='dark'] .mission-copy > strong {
	color: #f1edfa;
}
.new-home .mission-footer {
	grid-column: 1/-1;
	display: block;
	border-top: 1px solid #5c3fff30;
	padding-top: 22px;
	margin-top: 30px;
	font-size: 12px;
	letter-spacing: 1.5px;
}
.new-home[data-nh-theme='dark'] .mission-footer {
	border-top-color: var(--accent-line);
	color: #d3c5ee;
}
/* Home-only bridge from the plan cards to the full comparison on /pricing. */
.new-home .pricing-compare-cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	flex-wrap: wrap;
	padding-top: 34px;
	padding-bottom: 34px;
	margin-top: -30px;
	border-top: 1px solid var(--line);
}
.new-home .pricing-compare-cta .eyebrow {
	margin-bottom: 8px;
	color: var(--accent);
}
.new-home .pricing-compare-cta > div > p:not(.eyebrow) {
	font-size: 17px;
	color: var(--muted);
	max-width: 440px;
}

.new-home .faq {
	display: grid;
	grid-template-columns: 0.8fr 1.2fr;
	gap: 90px;
	padding-top: 25px;
	padding-bottom: 100px;
}
.new-home .faq h2 {
	font-size: 40px;
	letter-spacing: -2px;
}
.new-home .faq .text-link {
	margin-top: 27px;
}
.new-home .faq-item {
	border-bottom: 1px solid var(--line);
}
.new-home .faq-item:first-child {
	border-top: 1px solid var(--line);
}
.new-home .faq-item h3 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}
.new-home .faq-summary {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	padding: 21px 0;
	font-size: 16px;
	font-weight: 500;
	font-family: inherit;
	color: inherit;
	text-align: left;
	cursor: pointer;
	line-height: 1.4;
}
.new-home[data-nh-theme='dark'] .faq-summary:hover {
	color: var(--accent);
}
.new-home .faq-summary > span {
	font-size: 22px;
	font-weight: 400;
	transition: transform 0.25s ease;
	flex-shrink: 0;
}
.new-home .faq-summary[aria-expanded='true'] > span {
	transform: rotate(45deg);
}
.new-home .faq-panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.3s ease;
}
.new-home .faq-panel.open {
	grid-template-rows: 1fr;
}
.new-home .faq-panel-inner {
	overflow: hidden;
}
.new-home .faq-panel p {
	color: var(--muted);
	font-size: 15px;
	margin: 0 28px 21px 0;
	line-height: 1.7;
}
.new-home .closing {
	padding-bottom: 65px;
}
.new-home .closing-inner {
	--accent: #b19aff;
	background: #17261f;
	color: white;
	border-radius: 25px;
	padding: 65px 30px;
	text-align: center;
}
.new-home[data-nh-theme='dark'] .closing-inner {
	background: var(--accent-subtle);
	border: 1px solid var(--accent-line);
	box-shadow: 0 20px 65px #00000035;
}
.new-home .closing h2 {
	font-size: 57px;
	letter-spacing: -3px;
}
.new-home .closing .eyebrow {
	color: #c9d6cb;
}
.new-home[data-nh-theme='dark'] .closing .eyebrow {
	color: #d3c6eb;
}
.new-home .closing h2 .serif {
	color: var(--accent);
}
.new-home .closing p:not(.eyebrow) {
	color: #b7c4bc;
	font-size: 16px;
	margin-top: 25px;
}
.new-home[data-nh-theme='dark'] .closing p:not(.eyebrow) {
	color: #c5bad9;
}
.new-home .closing .button-row {
	justify-content: center;
	margin-top: 28px;
}
.new-home .footer-top {
	display: grid;
	grid-template-columns: 1.7fr 1fr 1fr 1fr;
	gap: 45px;
	padding-bottom: 50px;
}
.new-home .footer-top > div {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	font-size: 14px;
}
.new-home .footer-top > div > strong {
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 8px;
}
.new-home[data-nh-theme='dark'] .footer-top > div > strong {
	color: #e6efdd;
}
.new-home .footer-top > div > a:not(.brand) {
	color: var(--muted);
}
.new-home .footer-top > div > a:hover {
	color: var(--accent);
}
.new-home .footer-top p {
	color: var(--muted);
	font-size: 14px;
	margin-top: 5px;
}
.new-home .footer-bottom {
	border-top: 1px solid var(--line);
	padding: 22px 0 28px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
	font-size: 12px;
	color: var(--muted);
}
.new-home .footer-bottom > div {
	display: flex;
	gap: 24px;
}

/* Payment overview */
.new-home .payment-overview {
	padding-top: var(--proof-section-gap);
	scroll-margin-top: 110px;
}
.new-home .payment-panel {
	background: var(--accent-subtle);
	border: 1px solid var(--accent-line);
	border-radius: 20px;
	padding: 30px 32px 23px;
}
.new-home[data-nh-theme='dark'] .payment-panel {
	background: var(--accent-subtle);
	border-color: var(--accent-line);
}
.new-home .payment-heading {
	display: flex;
	justify-content: space-between;
	gap: 30px;
	align-items: center;
	margin-bottom: 27px;
}
.new-home .payment-heading .eyebrow {
	font-size: 12px;
	letter-spacing: 1.1px;
	margin-bottom: 12px;
	color: var(--accent);
}
.new-home[data-nh-theme='dark'] .payment-heading .eyebrow {
	color: var(--accent);
}
.new-home .payment-heading h2 {
	font-size: 35px;
	line-height: 1.1;
	letter-spacing: -1.6px;
}
.new-home .payment-heading > p {
	font-size: 1rem;
	color: var(--muted);
	max-width: 460px;
}
.new-home[data-nh-theme='dark'] .payment-heading > p {
	color: var(--muted);
}
.new-home .payment-methods {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}
.new-home .payment-method {
	background: var(--paper);
	border: 1px solid var(--accent-line);
	border-radius: 12px;
	padding: 20px;
	display: flex;
	align-items: flex-start;
	gap: 14px;
}
.new-home[data-nh-theme='dark'] .payment-method {
	background: var(--paper);
	border-color: var(--accent-line);
}
.new-home .payment-symbol {
	flex-shrink: 0;
	width: 42px;
	height: 42px;
	display: grid;
	place-items: center;
	border-radius: 10px;
	font-family: Arial, sans-serif;
}
.new-home .fiat-symbol {
	background: #f0ecff;
	color: #6550c9;
	font-size: 15px;
	letter-spacing: -1px;
	font-weight: 600;
}
.new-home[data-nh-theme='dark'] .fiat-symbol {
	background: #342c4c;
	color: #d5c4ff;
}
.new-home .bitcoin-symbol {
	background: #fff1dc;
	color: #ad5900;
	font-size: 30px;
}
.new-home[data-nh-theme='dark'] .bitcoin-symbol {
	background: #3c2b18;
	color: #ffb965;
}
.new-home .lightning-symbol {
	background: var(--accent-soft);
	color: var(--accent);
	font-size: 35px;
	font-weight: 700;
}
.new-home[data-nh-theme='dark'] .lightning-symbol {
	background: var(--accent-soft);
	color: var(--accent);
}
.new-home .payment-method h3 {
	font-size: 18px;
	line-height: 1.3;
	letter-spacing: -0.5px;
	margin-bottom: 8px;
}
.new-home .payment-method p {
	font-size: 1rem;
	line-height: 1.5;
	color: var(--muted);
}
.new-home .payment-method a {
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-color: var(--accent-line);
}
.new-home[data-nh-theme='dark'] .payment-method a {
	text-decoration-color: var(--accent-line);
}
.new-home .payment-method a:hover {
	color: var(--accent);
}
.new-home .payment-next {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 14px;
	margin-top: 23px;
}
.new-home .payment-coming {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 14px;
	font-size: 15px;
	font-weight: 500;
}
.new-home .coming-label {
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 0.7px;
	color: var(--accent);
	padding: 5px 7px;
}
.new-home[data-nh-theme='dark'] .coming-label {
	color: var(--accent);
}
.new-home .payment-divider {
	color: var(--muted);
}
.new-home[data-nh-theme='dark'] .payment-divider {
	color: var(--muted);
}
.new-home .payment-next > p {
	font-size: 12px;
	color: var(--muted);
	line-height: 1.5;
	text-align: left;
}
.new-home .payment-copy {
	padding-left: 8px;
}
.new-home[data-nh-theme='dark'] .payment-next > p {
	color: var(--muted);
}
.new-home .payment-feature-link {
	margin-top: 14px;
	line-height: 1.5;
}

@media (min-width: 1500px) {
	.new-home {
		--proof-section-gap: 74px;
	}
	.new-home .home-hero {
		padding-top: 72px;
		padding-bottom: 84px;
	}
	.new-home .hero-photo {
		height: clamp(400px, 22.2vh + 200px, 540px);
	}
	.new-home .home-hero h1 {
		font-size: 71px;
	}
}
@media (max-width: 1100px) {
	.new-home {
		--proof-section-gap: 49px;
	}
	.new-home .section-wrap {
		padding-left: 35px;
		padding-right: 35px;
	}
	.new-home .nav-wrap {
		padding-left: 35px;
		padding-right: 35px;
		gap: 22px;
	}
	.new-home .nav {
		gap: 18px;
	}
	.new-home .nav-actions {
		gap: 14px;
	}
	.new-home .home-hero {
		gap: 30px;
		padding-top: 52px;
		padding-bottom: 68px;
	}
	.new-home .home-hero h1 {
		font-size: 55px;
	}
	.new-home .hero-photo {
		height: clamp(330px, 22vh + 175px, 480px);
	}
	.new-home .hero-description {
		font-size: 16px;
	}
	.new-home .home-hero .button-row {
		gap: 17px;
		flex-wrap: wrap;
	}
	.new-home .floating-members {
		color: var(--on-brand);
		right: -8px;
		padding: 12px;
	}
	.new-home .floating-event {
		left: -17px;
		right: 5px;
		padding: 15px;
		gap: 10px;
	}
	.new-home .floating-event strong {
		font-size: 15px;
	}
	.new-home .hero-photo figcaption {
		left: 25px;
	}
	.new-home .hero-photo figcaption span {
		max-width: 250px;
	}
	.new-home .hero-photo figcaption strong {
		font-size: 41px;
	}
	.new-home .proof .stat {
		padding: 0 14px;
	}
	.new-home .proof .stat-label {
		font-size: 11px;
		letter-spacing: 0.7px;
	}
	.new-home .platform-inner {
		--accent: #b19aff;
		padding: 37px 30px 0;
	}
	.new-home .product-panel {
		gap: 30px;
		grid-template-columns: 0.85fr 1.15fr;
	}
	.new-home .product-tabs button {
		font-size: 12px;
		padding: 12px 10px;
		gap: 7px;
	}
	.new-home .tab-icon svg {
		width: 18px;
		height: 18px;
	}
	.new-home .product-copy h3 {
		font-size: 30px;
	}
	.new-home .product-copy .check-list li {
		font-size: 13px;
	}
	.new-home .product-copy > p {
		font-size: 15px;
	}
	.new-home .section-heading h2,
	.new-home .communities .section-heading h2 {
		font-size: 43px;
	}
	.new-home .platform .section-heading h2 {
		font-size: 42px;
	}
	.new-home .feature-grid {
		gap: 22px;
	}
	.new-home .feature-grid h3 {
		font-size: 17px;
	}
	.new-home .audience-carousel {
		--card-gap: 20px;
	}
	.new-home .audience-carousel .audience-image > img {
		height: 245px;
	}
	.new-home .mission h2 {
		font-size: 56px;
	}
	.new-home .mission-inner {
		column-gap: 45px;
	}
	.new-home .faq {
		gap: 50px;
	}
	.new-home .faq h2 {
		font-size: 36px;
	}
	.new-home .payment-method {
		flex-direction: column;
	}
	.new-home .payment-heading {
		align-items: flex-start;
	}
	.new-home .payment-heading > p {
		max-width: 360px;
	}
}
@media (max-width: 880px) {
	.new-home {
		--nh-header-height: 79px;
	}
	.new-home .nav {
		position: absolute;
		top: var(--nh-header-height);
		left: 0;
		right: 0;
		background: white;
		display: none;
		padding: 22px 30px;
		border-bottom: 1px solid var(--line);
		box-shadow: 0 16px 20px #17261f08;
	}
	.new-home[data-nh-theme='dark'] .nav {
		background: #151d18;
		box-shadow: 0 20px 30px #00000065;
	}
	.new-home .nav.open {
		display: flex;
		flex-direction: column;
		gap: 0;
	}
	.new-home .nav a {
		padding: 14px;
		font-size: 16px;
	}
	.new-home .menu-toggle {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 6px;
		width: 40px;
		height: 40px;
		border: 0;
		background: transparent;
	}
	.new-home .menu-toggle span {
		display: block;
		width: 22px;
		height: 1.5px;
		background: var(--ink);
	}
	.new-home .home-hero h1 {
		font-size: 46px;
	}
	.new-home .home-hero {
		gap: 23px;
		padding-top: 50px;
	}
	.new-home .home-hero .eyebrow {
		font-size: 12px;
		letter-spacing: 1px;
	}
	.new-home .hero-photo {
		height: 455px;
		border-top-left-radius: 100px;
	}
	.new-home .hero-photo figcaption strong {
		font-size: 36px;
	}
	.new-home .floating-event {
		left: -20px;
		right: -5px;
	}
	.new-home .floating-event .round-arrow {
		display: none;
	}
	.new-home .floating-members {
		color: var(--on-brand);
		top: 37px;
		right: -10px;
		transform: rotate(3deg);
	}
	.new-home .floating-members strong,
	.new-home .floating-members div > span {
		font-size: 12px;
	}
	.new-home .check-circle {
		width: 23px;
		height: 23px;
	}
	.new-home .proof {
		gap: 26px 12px;
		grid-template-columns: 1fr 1fr 1fr;
		padding-top: 34px;
		padding-bottom: 34px;
	}
	.new-home .proof-intro {
		grid-column: 1/-1;
		display: flex;
		gap: 5px;
		padding-right: 0;
	}
	.new-home .proof-intro br {
		display: none;
	}
	.new-home .proof .stat {
		padding: 0 6px;
		border-left: 0;
	}
	/* Keep a divider between the three figures now the left rail is gone. */
	.new-home .proof .stat + .stat {
		border-left: 1px solid var(--line);
	}
	.new-home .connection {
		padding-top: 75px;
		padding-bottom: 75px;
	}
	.new-home .connection h2 {
		font-size: 48px;
	}
	.new-home .connection-grid {
		gap: 28px;
		margin-top: 75px;
	}
	.new-home .connection h3 {
		font-size: 23px;
	}
	.new-home .connection-grid p {
		font-size: 15px;
	}
	.new-home .platform-inner {
		--accent: #b19aff;
		padding: 32px 28px 0;
	}
	.new-home .section-heading {
		display: block;
	}
	.new-home .section-heading > p {
		margin-top: 20px;
	}
	.new-home .product-panel {
		grid-template-columns: 1fr;
		gap: 32px;
		padding-top: 35px;
		min-height: 0;
	}
	.new-home .product-copy h3 {
		font-size: 35px;
	}
	.new-home .product-copy h3 br {
		display: none;
	}
	.new-home .product-copy > p {
		font-size: 16px;
		max-width: 570px;
	}
	.new-home .product-copy .check-list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 20px;
	}
	.new-home .product-copy .check-list li {
		font-size: 14px;
	}
	.new-home .feature-number {
		margin-bottom: 18px;
	}
	.new-home .product-preview {
		max-width: 530px;
		width: 100%;
		margin: auto;
	}
	.new-home .product-tabs {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
	.new-home .product-tabs button {
		font-size: 14px;
		justify-content: flex-start;
		padding-left: 14px;
	}
	.new-home .platform-bottom {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
		padding: 20px 0;
	}
	.new-home .feature-grid {
		grid-template-columns: 1fr 1fr;
		gap: 35px;
		padding-top: 75px;
	}
	.new-home .feature-grid h3 {
		font-size: 20px;
	}
	.new-home .audience-carousel {
		--visible-cards: 2;
	}
	.new-home .audience-carousel .audience-card h3 {
		font-size: 23px;
	}
	.new-home .audience-carousel .audience-image > img {
		height: 260px;
	}
	.new-home .mission-inner {
		grid-template-columns: 1fr;
		gap: 0;
		padding-top: 65px;
		padding-bottom: 25px;
	}
	.new-home .mission h2 {
		font-size: 62px;
	}
	.new-home .mission-copy {
		padding-top: 35px;
		max-width: 570px;
	}
	.new-home .mission-copy p {
		font-size: 17px;
	}
	.new-home .mission-copy .mission-lead {
		font-size: 24px;
	}
	.new-home .mission-footer {
		margin-top: 35px;
	}
	.new-home .faq {
		grid-template-columns: 1fr;
		gap: 40px;
		padding-bottom: 75px;
	}
	.new-home .faq h2 {
		font-size: 40px;
	}
	.new-home .closing h2 {
		font-size: 45px;
	}
	.new-home .footer-top {
		grid-template-columns: 1.5fr 1fr 1fr;
		gap: 35px;
	}
	.new-home .footer-top > div:first-child {
		grid-column: 1/-1;
	}
	.new-home .footer-bottom {
		flex-direction: column;
		gap: 15px;
	}
	.new-home .payment-heading {
		display: block;
	}
	.new-home .payment-heading > p {
		margin-top: 15px;
		max-width: none;
	}
	.new-home .payment-heading > p br {
		display: none;
	}
	.new-home .payment-method {
		padding: 17px;
	}
	.new-home .payment-next {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}
	.new-home .payment-next > p {
		max-width: none;
		align-self: flex-start;
	}
}
@media (max-width: 600px) {
	.new-home .pricing-compare-cta {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}
	.new-home .pricing-compare-cta .button {
		width: 100%;
	}

	.new-home {
		--proof-section-gap: 38px;
	}
	.new-home .section-wrap {
		padding-left: 23px;
		padding-right: 23px;
	}
	.new-home .nav-wrap {
		padding: 0 16px;
		gap: 10px;
	}
	.new-home {
		--nh-header-height: 74px;
	}
	.new-home .nav {
		top: var(--nh-header-height);
	}
	.new-home .brand {
		font-size: 27px;
		gap: 6px;
	}
	.new-home .brand img {
		height: 30px;
	}
	.new-home .nav-brand .brand {
		font-size: 24px;
	}
	.new-home .nav-actions {
		gap: 8px;
	}
	.new-home .login {
		display: none;
	}
	.new-home .nav-actions .button.small {
		font-size: 12px;
		min-height: 38px;
		padding: 10px 12px;
		gap: 10px;
	}
	.new-home .nav-actions .button.small span {
		font-size: 17px;
	}
	.new-home .theme-toggle {
		width: 34px;
		height: 34px;
	}
	.new-home .menu-toggle {
		width: 30px;
	}
	.new-home .home-hero {
		grid-template-columns: 1fr;
		padding-top: 39px;
		padding-bottom: 67px;
		gap: 40px;
	}
	.new-home .home-hero .eyebrow {
		font-size: 12px;
		letter-spacing: 1px;
		margin-bottom: 20px;
		max-width: 310px;
	}
	.new-home .home-hero h1 {
		font-size: clamp(40px, 10.4vw, 61px);
		line-height: 1.07;
		margin-bottom: 22px;
		letter-spacing: -0.065em;
	}
	.new-home .hero-description {
		font-size: 16px;
		max-width: 450px;
	}
	.new-home .home-hero .button-row {
		gap: 17px;
		margin-top: 25px;
	}
	.new-home .button {
		padding: 14px 18px;
		min-height: 50px;
		font-size: 14px;
		gap: 20px;
	}
	.new-home .home-hero .text-link {
		font-size: 12px;
		gap: 6px;
	}
	.new-home .discover-icon {
		width: 23px;
		height: 23px;
	}
	.new-home .discover-icon svg {
		width: 12px;
		height: 12px;
	}
	.new-home .microcopy {
		font-size: 12px;
		margin-top: 13px;
	}
	.new-home .hero-art {
		margin: 0 5px 0 10px;
	}
	.new-home .hero-photo {
		height: 415px;
		border-radius: 100px 15px 15px 15px;
	}
	.new-home .hero-photo figcaption {
		left: 25px;
		bottom: 105px;
	}
	.new-home .hero-photo figcaption strong {
		font-size: 39px;
	}
	.new-home .hero-photo figcaption span {
		max-width: 230px;
	}
	.new-home .floating-members {
		color: var(--on-brand);
		right: -11px;
		top: 29px;
		padding: 11px 13px;
		gap: 8px;
	}
	.new-home .floating-event {
		left: -10px;
		right: 6px;
		bottom: -29px;
		padding: 13px;
		gap: 12px;
	}
	.new-home .floating-event .event-label {
		letter-spacing: 0.4px;
	}
	.new-home .floating-event strong {
		font-size: 15px;
	}
	.new-home .date-tile {
		width: 47px;
		height: 57px;
	}
	.new-home .proof {
		gap: 20px 8px;
		padding-top: 28px;
		padding-bottom: 28px;
	}
	.new-home .proof-intro {
		font-size: 14px;
		line-height: 1.4;
		margin-bottom: 2px;
	}
	.new-home .proof .stat {
		gap: 7px;
		padding: 0 2px;
	}
	.new-home .proof .stat-value {
		font-size: 30px;
		letter-spacing: -0.03em;
	}
	.new-home .proof .stat-label {
		font-size: 10px;
		letter-spacing: 0.5px;
		line-height: 1.4;
		max-width: 12ch;
	}
	.new-home .proof .stat-label.two-line-label {
		font-size: 9px;
		letter-spacing: 0.3px;
	}
	.new-home .connection {
		padding-top: 63px;
		padding-bottom: 61px;
		text-align: left;
	}
	.new-home .eyebrow {
		font-size: 12px;
		letter-spacing: 1px;
		margin-bottom: 20px;
	}
	.new-home .connection h2 {
		font-size: 44px;
	}
	.new-home .section-description {
		font-size: 16px;
		margin-top: 20px;
	}
	.new-home .desktop-break {
		display: none;
	}
	.new-home .connection-grid {
		grid-template-columns: 1fr;
		gap: 24px;
		margin-top: 63px;
	}
	.new-home .connection-grid > div {
		display: grid;
		grid-template-columns: 32px 1fr;
		gap: 0 18px;
		padding-top: 20px;
	}
	.new-home .connection-grid .step-number {
		grid-row: 1/3;
		margin-top: 5px;
	}
	.new-home .connection h3 {
		font-size: 24px;
		margin-bottom: 8px;
	}
	.new-home .connection-grid p {
		font-size: 16px;
	}
	.new-home .platform {
		padding-left: 13px;
		padding-right: 13px;
		padding-bottom: 45px;
	}
	.new-home .platform-inner {
		--accent: #b19aff;
		padding: 30px 20px 0;
		border-radius: 17px;
	}
	.new-home .section-heading {
		margin-bottom: 30px;
	}
	.new-home .section-heading h2,
	.new-home .communities .section-heading h2,
	.new-home .platform .section-heading h2 {
		font-size: 36px;
		letter-spacing: -1.9px;
	}
	.new-home .section-heading > p {
		font-size: 16px;
		margin-top: 19px;
	}
	.new-home .product-tabs {
		gap: 6px;
		padding: 12px 0;
	}
	.new-home .product-tabs button {
		font-size: 12px;
		gap: 7px;
		padding: 12px 7px;
	}
	.new-home .tab-icon svg {
		width: 18px;
		height: 18px;
	}
	.new-home .product-panel {
		padding: 30px 0;
		gap: 30px;
	}
	.new-home .product-copy h3 {
		font-size: 32px;
	}
	.new-home .product-copy h3 br {
		display: block;
	}
	.new-home .product-copy > p {
		font-size: 16px;
	}
	.new-home .product-copy .check-list {
		grid-template-columns: 1fr;
		gap: 11px;
		margin: 24px 0;
	}
	.new-home .product-copy .check-list li {
		font-size: 14px;
	}
	.new-home .preview-bar {
		padding: 12px;
		gap: 8px;
	}
	.new-home .preview-bar > span:last-child {
		max-width: 150px;
		text-align: right;
	}
	.new-home .mini-brand {
		font-size: 15px;
	}
	.new-home .event-preview > img {
		height: 155px;
	}
	.new-home .event-preview-copy {
		padding: 20px 17px;
	}
	.new-home .event-preview-copy h4 {
		font-size: 27px;
	}
	.new-home .preview-kicker {
		letter-spacing: 0.6px;
	}
	.new-home .event-preview-copy > p {
		font-size: 12px;
	}
	.new-home .ticket-option div > span {
		max-width: 170px;
		font-size: 12px;
		line-height: 1.4;
	}
	.new-home .product-preview {
		border-radius: 11px;
	}
	.new-home .community-body {
		padding: 20px 16px;
	}
	.new-home .community-body h4 {
		font-size: 27px;
	}
	.new-home .community-body > p {
		font-size: 13px;
	}
	.new-home .mock-nav {
		gap: 18px;
	}
	.new-home .mini-event {
		gap: 12px;
	}
	.new-home .mini-event strong {
		font-size: 13px;
	}
	.new-home .mini-event div > span {
		font-size: 12px;
		line-height: 1.4;
	}
	.new-home .membership-body {
		padding: 25px 18px 20px;
	}
	.new-home .membership-card {
		padding: 23px 19px;
	}
	.new-home .membership-card h4 {
		font-size: 27px;
	}
	.new-home .member-card-bottom {
		font-size: 12px;
		gap: 15px;
		line-height: 1.5;
	}
	.new-home .contacts-body {
		padding: 25px 17px;
	}
	.new-home .contacts-body h4 {
		font-size: 26px;
	}
	.new-home .contact-filter {
		gap: 14px;
	}
	.new-home .email-preview {
		padding: 17px;
		gap: 11px;
	}
	.new-home .platform-bottom {
		font-size: 12px;
		line-height: 1.5;
	}
	.new-home .platform-bottom > span:first-child {
		font-size: 14px;
	}
	.new-home .feature-grid {
		padding: 63px 10px 0;
		gap: 29px 23px;
	}
	.new-home .feature-grid h3 {
		font-size: 18px;
		line-height: 1.3;
	}
	.new-home .feature-grid article > .feature-icon {
		margin-bottom: 15px;
	}
	.new-home .communities {
		padding-top: 25px;
		padding-bottom: 54px;
	}
	.new-home .audience-carousel {
		--visible-cards: 1;
		--card-gap: 20px;
	}
	.new-home .audience-carousel-toolbar {
		align-items: flex-start;
		gap: 12px;
	}
	.new-home .audience-carousel-toolbar > p {
		max-width: 160px;
		line-height: 1.5;
	}
	.new-home .carousel-controls {
		gap: 6px;
	}
	.new-home .carousel-status {
		margin-right: 4px;
	}
	.new-home .carousel-controls button {
		width: 40px;
		height: 40px;
	}
	.new-home .audience-carousel .audience-image > img {
		height: 290px;
	}
	.new-home .audience-carousel .audience-card h3 {
		font-size: 26px;
		min-height: 0;
	}
	.new-home .audience-carousel .audience-card .text-link {
		min-height: 0;
	}
	.new-home .audience-track {
		padding-bottom: 18px;
	}
	.new-home .mission {
		margin-bottom: 60px;
	}
	.new-home .mission-inner {
		padding-top: 51px;
		padding-bottom: 23px;
	}
	.new-home .mission h2 {
		font-size: clamp(43px, 11vw, 61px);
		letter-spacing: -2.7px;
	}
	.new-home .mission-copy {
		padding-top: 29px;
	}
	.new-home .mission-copy .mission-lead {
		font-size: 23px;
	}
	.new-home .mission-copy p {
		font-size: 16px;
	}
	.new-home .mission-copy > strong {
		font-size: 17px;
	}
	.new-home .mission-footer {
		font-size: 12px;
		letter-spacing: 1px;
		line-height: 1.5;
	}
	.new-home .faq {
		padding-top: 10px;
		padding-bottom: 56px;
		gap: 30px;
	}
	.new-home .faq h2 {
		font-size: 37px;
	}
	.new-home .faq-summary {
		font-size: 16px;
		gap: 18px;
	}
	.new-home .faq-panel p {
		font-size: 15px;
	}
	.new-home .closing {
		padding: 0 13px 47px;
	}
	.new-home .closing-inner {
		--accent: #b19aff;
		padding: 45px 22px;
		border-radius: 17px;
	}
	.new-home .closing .eyebrow {
		font-size: 12px;
		line-height: 1.7;
		max-width: 250px;
		margin: 0 auto 22px;
	}
	.new-home .closing h2 {
		font-size: 36px;
		letter-spacing: -1.7px;
	}
	.new-home .closing p:not(.eyebrow) {
		font-size: 15px;
	}
	.new-home .closing .button-row {
		gap: 20px;
		flex-wrap: wrap;
	}
	.new-home .closing .text-link {
		font-size: 14px;
	}
	.new-home .footer-top {
		grid-template-columns: 1fr 1fr;
		gap: 32px 25px;
		padding-bottom: 35px;
	}
	.new-home .footer-top > div:first-child {
		grid-column: 1/-1;
	}
	.new-home .footer-top > div {
		font-size: 14px;
		gap: 12px;
	}
	.new-home .footer-top > div > strong {
		font-size: 14px;
	}
	.new-home .footer-bottom {
		font-size: 12px;
		padding-bottom: 23px;
	}
	.new-home .footer-bottom > div {
		gap: 20px;
	}
	.new-home .payment-panel {
		padding: 24px 20px 22px;
		border-radius: 15px;
	}
	.new-home .payment-heading {
		margin-bottom: 22px;
	}
	.new-home .payment-heading h2 {
		font-size: 31px;
	}
	.new-home .payment-methods {
		grid-template-columns: 1fr;
		gap: 12px;
	}
	.new-home .payment-method {
		flex-direction: row;
		gap: 14px;
		padding: 18px;
	}
	.new-home .payment-method h3 {
		font-size: 19px;
	}
	.new-home .payment-coming {
		gap: 10px 12px;
	}
	.new-home .coming-label {
		flex-basis: 100%;
		border: 0;
		padding: 0;
		margin-bottom: 2px;
	}
	.new-home .payment-next > p {
		font-size: 12px;
		white-space: normal;
	}
	.new-home .payment-copy {
		padding-left: 0;
	}
}
@media (max-width: 360px) {
	.new-home .nav-wrap {
		padding: 0 12px;
		gap: 8px;
	}
	.new-home .nav-brand {
		gap: 4px;
	}
	.new-home .nav-brand .brand {
		font-size: 20px;
	}
	.new-home .nav-brand .brand img {
		height: 26px;
	}
	.new-home .menu-toggle {
		width: 26px;
	}
	.new-home .nav-actions {
		gap: 6px;
	}
	.new-home .nav-actions .button.small {
		padding: 10px 8px;
		gap: 6px;
		font-size: 11px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.new-home {
		scroll-behavior: auto;
	}
	.new-home *,
	.new-home *:before,
	.new-home *:after {
		transition: none !important;
		animation: none !important;
	}
}
.pricing {
	--price-surface: var(--surface, #fff);
	--price-featured: var(--accent-surface);
	--price-featured-line: var(--accent-line);
	--price-tint: var(--accent-subtle);
	--price-accent: var(--accent);
	--price-button: var(--brand);
	--price-button-text: var(--on-brand);
	--price-hero-ink: var(--accent);
	max-width: 1320px;
	padding: 0 54px 85px;
	margin: auto;
	scroll-margin-top: 105px;
}
.pricing * {
	box-sizing: border-box;
}
.pricing h2,
.pricing h3,
.pricing p,
.pricing figure {
	margin: 0;
}
.pricing h2,
.pricing h3 {
	font-family: Manrope, Arial, sans-serif;
}
.pricing h2 {
	font-weight: 600;
	letter-spacing: -0.065em;
	line-height: 1.06;
}
.pricing p {
	line-height: 1.6;
}
.pricing a {
	color: inherit;
	text-decoration: none;
}
.pricing button {
	font: inherit;
	cursor: pointer;
	/* Plan CTAs are <button> (they open the waitlist modal, not a link), so they need the
	   colour and background an <a> would have inherited. */
	color: inherit;
	background: none;
}
.pricing a,
.pricing button {
	touch-action: manipulation;
}
.pricing a:focus-visible,
.pricing button:focus-visible,
.pricing .table-scroll:focus-visible {
	outline: 3px solid var(--accent);
	outline-offset: 5px;
}
.pricing .serif {
	font-family: Georgia, serif;
	font-weight: 400;
	font-style: italic;
	letter-spacing: -0.055em;
}
.pricing .eyebrow {
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 1.5px;
	line-height: 1.5;
	margin-bottom: 25px;
}
.pricing .section-heading {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 40px;
	margin-bottom: 45px;
}
.pricing .section-heading h2 {
	font-size: 49px;
}
.pricing .section-heading > p {
	font-size: 16px;
	color: var(--muted);
	line-height: 1.7;
	padding-bottom: 4px;
}
.pricing .text-link {
	font-size: 14px;
	font-weight: 550;
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
.pricing .text-link:hover {
	color: var(--accent);
}
.pricing .compare-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
}
.pricing .compare-arrow svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.pricing .button {
	min-height: 53px;
	padding: 16px 23px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 27px;
	font-weight: 550;
	font-size: 15px;
	border: 1px solid transparent;
	border-radius: 8px;
	transition:
		transform 0.2s,
		background 0.2s;
}
.pricing .button:hover {
	transform: translateY(-2px);
}
.pricing .button.dark {
	background: var(--brand);
	color: var(--on-brand);
}
.pricing .button.dark:hover {
	background: var(--brand-hover);
}
.pricing .button.outline-button {
	border-color: var(--accent-line);
	background: transparent;
}
.pricing .button.outline-button:hover {
	background: var(--accent-subtle);
}
.pricing .button span {
	font-size: 21px;
	line-height: 1;
}
.pricing .plan-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.pricing .plan-icon svg {
	width: 21px;
	height: 21px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}
.pricing .sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.pricing .pricing-intro {
	display: grid;
	grid-template-columns: 1.55fr 0.85fr;
	gap: 70px;
	align-items: center;
	padding-top: 60px;
	padding-bottom: 132px;
}
.pricing .pricing-intro .eyebrow {
	color: var(--muted);
	margin-bottom: 24px;
	letter-spacing: 1.2px;
}
.pricing .pricing-intro h2 {
	font-size: clamp(44px, 4.6vw, 62px);
	font-weight: 600;
	letter-spacing: -0.065em;
	line-height: 1.08;
}
.pricing .pricing-intro h2 > span {
	color: var(--accent);
}
.pricing .pricing-intro-copy > p:not(.eyebrow) {
	font-size: 17px;
	color: var(--muted);
	line-height: 1.65;
	max-width: 580px;
	margin-top: 23px;
}
.pricing .pricing-intro .text-link {
	margin-top: 22px;
}
.pricing .pricing-story {
	position: relative;
	min-width: 0;
	height: 278px;
	border-radius: 80px 16px 16px 16px;
	overflow: hidden;
	background: #425442;
}
.pricing .pricing-story > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 52% 48%;
}
.pricing .pricing-story:after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(transparent 25%, #0d1e15b8);
}
.pricing .pricing-story figcaption {
	position: absolute;
	z-index: 1;
	left: 25px;
	bottom: 24px;
	color: #fff;
}
.pricing .pricing-story figcaption > span {
	font-size: 12px;
	font-weight: 550;
	letter-spacing: 0.8px;
	display: block;
	max-width: 210px;
	line-height: 1.6;
	margin-bottom: 10px;
}
.pricing .pricing-story figcaption strong {
	font:
		500 34px/1.05 Manrope,
		Arial,
		sans-serif;
	letter-spacing: -1.7px;
}
.pricing .story-logo {
	position: absolute;
	top: 17px;
	right: 17px;
	z-index: 2;
}
/* Sits over the photo, so it uses the white symbol in both themes. */
.pricing .story-logo img {
	width: 44px;
	height: 44px;
}
.pricing .pricing-billing-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	padding-top: 18px;
	padding-bottom: 29px;
}
.pricing .pricing-billing-row .eyebrow {
	font-size: 12px;
	margin-bottom: 7px;
	letter-spacing: 1.2px;
}
.pricing .pricing-billing-row > div > p:not(.eyebrow) {
	font-size: 15px;
	color: var(--muted);
}
.pricing .billing-choice {
	text-align: right;
	flex-shrink: 0;
}
.pricing .billing {
	display: inline-flex;
	gap: 4px;
	background: var(--soft);
	border: 1px solid var(--line);
	border-radius: 9px;
	padding: 4px;
}
.pricing .billing button {
	min-height: 41px;
	padding: 11px 22px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: var(--muted);
	font-size: 14px;
}
.pricing .billing button[aria-pressed='true'] {
	background: var(--price-button);
	color: var(--price-button-text);
}
.pricing .billing button:hover:not([aria-pressed='true']) {
	color: var(--ink);
	background: var(--line);
}
.pricing .pricing-billing-row .billing-choice > p {
	font-size: 12px;
	margin-top: 9px;
}
.pricing .pricing-plans {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	align-items: stretch;
}
.pricing .pricing-plan {
	background: var(--price-surface);
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 27px 26px 23px;
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.pricing .pricing-plan.featured {
	background: var(--price-featured);
	border-color: var(--price-featured-line);
}
.pricing .pricing-plan-top {
	min-height: 34px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 9px;
}
.pricing .pricing-plan-top h3 {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 23px;
	font-weight: 650;
	letter-spacing: -0.9px;
}
.pricing .pricing-plan-top .plan-icon {
	width: 30px;
	height: 30px;
	border-radius: 7px;
	background: var(--soft);
	color: var(--accent);
}
.pricing .pricing-plan.featured .pricing-plan-top .plan-icon {
	background: var(--brand);
	color: var(--on-brand);
}
.pricing .plan-tag {
	font-size: 12px;
	letter-spacing: 0.4px;
	border: 1px solid var(--price-featured-line);
	border-radius: 4px;
	padding: 5px 6px;
	line-height: 1.2;
	white-space: nowrap;
	color: var(--price-accent);
}
.pricing .pricing-plan-description {
	font-size: 16px;
	line-height: 1.55;
	color: var(--muted);
	margin-top: 17px;
	min-height: 76px;
}
.pricing .price-line {
	display: flex;
	align-items: baseline;
	gap: 9px;
	margin-top: 20px;
}
.pricing .price {
	font:
		500 58px/1.12 Manrope,
		Arial,
		sans-serif;
	letter-spacing: -3.5px;
	font-variant-numeric: tabular-nums;
}
.pricing .price-line small {
	font-size: 14px;
	color: var(--muted);
}
.pricing .pricing-plan.featured .price {
	color: var(--price-accent);
}
.pricing .billing-detail {
	font-size: 13px;
	line-height: 1.6;
	color: var(--muted);
	margin-top: 9px;
	min-height: 43px;
}
.pricing .billing-detail strong {
	font-weight: 500;
	color: var(--price-accent);
}
.pricing .pricing-plan > .button {
	width: 100%;
	justify-content: space-between;
	font-size: 14px;
	padding: 14px 17px;
	gap: 13px;
	margin-top: 22px;
	min-height: 50px;
	white-space: normal;
}
.pricing .pricing-plan .fee {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	margin-top: 24px;
	border-bottom: 1px solid var(--line);
	padding-bottom: 23px;
}
.pricing .pricing-plan.featured .fee {
	border-color: var(--price-featured-line);
}
.pricing .fee > span {
	font-size: 14px;
	color: var(--muted);
}
.pricing .fee strong {
	font:
		500 25px/1.2 Manrope,
		Arial,
		sans-serif;
	letter-spacing: -1px;
}
.pricing .featured .fee strong {
	color: var(--price-accent);
}
.pricing .includes {
	margin: 23px 0 17px;
	font-size: 14px;
	font-weight: 600;
}
.pricing .features {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 13px;
}
.pricing .features li {
	position: relative;
	padding-left: 23px;
	font-size: 15px;
	line-height: 1.55;
	color: var(--muted);
}
.pricing .features li:before {
	content: '✓';
	position: absolute;
	left: 0;
	color: var(--price-accent);
}
.pricing .features strong {
	font-weight: 500;
	color: var(--ink);
}
.pricing .features small {
	display: block;
	font-size: 12px;
	margin-top: 4px;
	color: var(--price-accent);
}
.pricing .pricing-plan-bottom {
	margin-top: auto;
	padding-top: 26px;
}
.pricing .pricing-plan-bottom a {
	font-size: 13px;
	color: var(--price-accent);
	text-decoration: underline;
	text-underline-offset: 5px;
}
.pricing .pricing-plan-note {
	display: flex;
	justify-content: space-between;
	gap: 25px;
	margin-top: 21px;
}
.pricing .pricing-plan-note p {
	font-size: 12px;
	color: var(--muted);
	max-width: 850px;
}
.pricing .pricing-plan-note > span {
	font-size: 12px;
	color: var(--muted);
	flex-shrink: 0;
	line-height: 1.7;
}
.pricing .included-strip {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	margin-top: 37px;
	padding: 23px 0;
	border-top: 1px solid var(--line);
	border-bottom: 1px solid var(--line);
}
.pricing .included-strip > p {
	font-size: 14px;
	color: var(--muted);
}
.pricing .included-strip strong {
	font-weight: 500;
	color: var(--ink);
}
.pricing .included-items {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 24px;
}
.pricing .included-items span {
	font-size: 14px;
}
.pricing .included-items span:before {
	content: '✓';
	color: var(--price-accent);
	margin-right: 8px;
}

.pricing .pricing-comparison {
	padding-top: 75px;
	padding-bottom: 0;
	scroll-margin-top: 115px;
}
.pricing .pricing-comparison .section-heading {
	margin-bottom: 34px;
}
.pricing .pricing-comparison .section-heading .eyebrow {
	color: var(--muted);
}
.pricing .pricing-comparison .section-heading > p {
	max-width: 405px;
}
.pricing .table-scroll {
	/* No scroll container at this width: the table fits, and any `overflow` other than
	   `visible` on either axis would make this element the sticky containing block,
	   trapping the header row inside the table instead of pinning it to the viewport.
	   Horizontal scrolling is re-enabled below 880px, where the table needs it. */
	overflow: visible;
	border: 1px solid var(--line);
	border-radius: 14px;
	scrollbar-color: var(--price-featured-line) var(--soft);
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
	overscroll-behavior-y: auto;
	touch-action: pan-x pan-y;
}
.pricing .table-scroll table {
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
	min-width: 740px;
	text-align: center;
	font-size: 14px;
}
.pricing .table-scroll thead th {
	padding: 24px 20px;
	/* Opaque so body rows never show through while pinned. */
	background: var(--soft);
	position: sticky;
	top: var(--nh-header-height, 96px);
	/* Above body rows, including the horizontally sticky first column (z-index 2). */
	z-index: 4;
	font:
		600 20px/1.3 Manrope,
		Arial,
		sans-serif;
	border-bottom: 1px solid var(--line);
}
.pricing .table-scroll thead th:first-child {
	text-align: left;
	font:
		500 14px/1.5 'DM Sans',
		Arial,
		sans-serif;
	color: var(--muted);
}
.pricing .table-scroll thead th:nth-child(3) {
	color: var(--price-accent);
	background: var(--price-featured);
}
/* `border-collapse: separate` drops the header's bottom border once it detaches,
   so draw it as a shadow that travels with the pinned row. */
.pricing .table-scroll thead th {
	box-shadow: inset 0 -1px 0 var(--line);
}
/* `overflow-y: visible` stops the container clipping the header's corners, so round
   the end cells themselves to keep the table's 14px frame intact. */
.pricing .table-scroll thead th:first-child {
	border-top-left-radius: 13px;
}
.pricing .table-scroll thead th:last-child {
	border-top-right-radius: 13px;
}
.pricing .table-scroll tbody tr:last-child > *:first-child {
	border-bottom-left-radius: 13px;
}
.pricing .table-scroll tbody tr:last-child > *:last-child {
	border-bottom-right-radius: 13px;
}
.pricing .table-scroll tbody th,
.pricing .table-scroll td {
	padding: 17px 20px;
	border-bottom: 1px solid var(--line);
	line-height: 1.5;
}
.pricing .table-scroll tbody th {
	width: 40%;
	text-align: left;
	font-weight: 400;
	color: var(--muted);
	background: var(--paper);
}
.pricing .table-scroll td {
	width: 20%;
}
.pricing .table-scroll td:nth-child(3) {
	background: var(--price-tint);
}
.pricing .table-scroll tbody .group th {
	padding: 23px 20px 12px;
	background: var(--soft);
	color: var(--price-accent);
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.pricing .table-scroll tbody tr:last-child > * {
	border-bottom: 0;
}
.pricing .table-scroll .yes {
	color: var(--price-accent);
	font-size: 19px;
}
.pricing .table-scroll .no {
	color: var(--muted);
}
.pricing .table-scroll .cell-note {
	display: block;
	color: var(--muted);
	font-size: 12px;
	margin-top: 4px;
}
.pricing .soon {
	display: inline-block;
	padding: 4px 7px;
	font-size: 12px;
	border: 1px solid var(--price-featured-line);
	border-radius: 4px;
	color: var(--price-accent);
	background: var(--price-tint);
}
.pricing .table-notes {
	display: flex;
	justify-content: space-between;
	gap: 35px;
	margin-top: 18px;
}
.pricing .table-notes p {
	max-width: 560px;
	font-size: 12px;
	color: var(--muted);
}
.pricing .mobile-hint {
	display: none;
	color: var(--muted);
	font-size: 13px;
	margin-bottom: 15px;
}

@media (max-width: 1100px) {
	.pricing .pricing-intro {
		gap: 40px;
		grid-template-columns: 1.4fr 0.85fr;
	}
	.pricing .pricing-intro h2 {
		font-size: 51px;
	}
	.pricing .pricing-story {
		height: 265px;
	}
	.pricing .pricing-plan {
		padding: 24px 20px;
	}
	.pricing .pricing-plan-top {
		flex-wrap: wrap;
		align-items: flex-start;
		min-height: 64px;
	}
	.pricing .pricing-plan-description {
		min-height: 100px;
	}
	.pricing .price {
		font-size: 53px;
	}
	.pricing .included-items {
		max-width: 560px;
	}
	.pricing .pricing-billing-row > div:first-child {
		max-width: 430px;
	}
}
@media (max-width: 880px) {
	.pricing .pricing-intro {
		padding-top: 42px;
		padding-bottom: 114px;
		gap: 30px;
	}
	.pricing .pricing-intro h2 {
		font-size: 43px;
	}
	.pricing .pricing-intro .eyebrow {
		font-size: 12px;
		letter-spacing: 0.6px;
	}
	.pricing .pricing-story {
		height: 260px;
		border-top-left-radius: 60px;
	}
	.pricing .pricing-story figcaption {
		left: 19px;
		bottom: 21px;
	}
	.pricing .pricing-story figcaption strong {
		font-size: 29px;
	}
	.pricing .pricing-story figcaption > span {
		font-size: 12px;
		max-width: 160px;
	}
	.pricing .pricing-billing-row {
		align-items: flex-start;
	}
	.pricing .pricing-billing-row > div:first-child {
		max-width: 350px;
	}
	.pricing .pricing-billing-row > div > p:not(.eyebrow) {
		font-size: 14px;
	}
	.pricing .pricing-plans {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.pricing .pricing-plan {
		display: grid;
		grid-template-columns: 1fr 1.15fr;
		gap: 0 40px;
		padding: 29px;
	}
	.pricing .pricing-plan-top {
		grid-column: 1;
		min-height: 34px;
		align-items: center;
		flex-wrap: nowrap;
	}
	.pricing .pricing-plan-description {
		grid-column: 1;
		min-height: 0;
	}
	.pricing .price-line {
		grid-column: 1;
	}
	.pricing .billing-detail {
		grid-column: 1;
	}
	.pricing .pricing-plan > .button {
		grid-column: 1;
		grid-row: 6;
		align-self: end;
	}
	.pricing .pricing-plan .fee {
		grid-column: 1;
		grid-row: 5;
	}
	.pricing .includes {
		grid-column: 2;
		grid-row: 1;
		margin: 0;
		align-self: center;
	}
	.pricing .features {
		grid-column: 2;
		grid-row: 2/7;
		padding-top: 18px;
	}
	.pricing .pricing-plan-bottom {
		grid-column: 1/-1;
	}
	.pricing .included-strip {
		align-items: flex-start;
		flex-direction: column;
		gap: 16px;
	}
	.pricing .included-items {
		max-width: none;
	}
	/* Narrow screens need the table to scroll sideways, and a horizontal scroll
	   container cannot also let its rows stick to the viewport: the browser computes
	   the other axis to `auto`, making this element the sticky containing block. So
	   here the header pins to the top of the table's own scroll box instead. The box
	   is capped to the viewport below the site header, which keeps the column labels
	   on screen the whole way down the table. */
	.pricing .table-scroll {
		overflow-x: auto;
		overflow-y: auto;
		/* Leaves the site header clear of the scroll box so the pinned row is never
		   tucked underneath it. */
		position: sticky;
		top: calc(var(--nh-header-height, 74px) + 12px);
		max-height: calc(100vh - var(--nh-header-height, 74px) - 36px);
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		scrollbar-color: var(--price-featured-line) var(--soft);
	}
	.pricing .table-scroll thead th {
		top: 0;
	}
	.pricing .table-scroll tbody th[scope='row'] {
		position: sticky;
		left: 0;
		z-index: 2;
		box-shadow: 1px 0 0 var(--line);
	}
	/* Pinned on both axes, so it must sit above the sticky first column and the
	   rest of the header row. */
	.pricing .table-scroll thead th:first-child {
		left: 0;
		z-index: 5;
		box-shadow:
			1px 0 0 var(--line),
			inset 0 -1px 0 var(--line);
	}
	.pricing .mobile-hint {
		display: block;
	}
}
@media (max-width: 600px) {
	.pricing .pricing-intro {
		grid-template-columns: 1fr;
		padding-top: 33px;
		padding-bottom: 83px;
		gap: 25px;
	}
	.pricing .pricing-intro h2 {
		font-size: clamp(36px, 9.6vw, 56px);
	}
	.pricing .pricing-intro .eyebrow {
		max-width: 320px;
		line-height: 1.7;
		margin-bottom: 17px;
	}
	.pricing .pricing-intro-copy > p:not(.eyebrow) {
		font-size: 16px;
		margin-top: 20px;
	}
	.pricing .pricing-story {
		height: 190px;
		border-radius: 55px 13px 13px 13px;
	}
	.pricing .pricing-story > img {
		object-position: 50% 52%;
	}
	.pricing .pricing-story figcaption {
		bottom: 20px;
		left: 23px;
	}
	.pricing .pricing-story figcaption > span {
		max-width: none;
		font-size: 12px;
		margin-bottom: 8px;
	}
	.pricing .pricing-story figcaption strong {
		font-size: 28px;
	}
	.pricing .pricing-billing-row {
		flex-direction: column;
		gap: 18px;
		padding-top: 10px;
		padding-bottom: 23px;
	}
	.pricing .billing-choice {
		text-align: left;
		width: 100%;
	}
	.pricing .billing {
		width: 100%;
	}
	.pricing .billing button {
		flex: 1;
	}
	.pricing .pricing-billing-row .billing-choice > p {
		font-size: 12px;
	}
	.pricing .pricing-plan {
		display: flex;
		padding: 25px 23px;
	}
	.pricing .pricing-plan-top {
		min-height: 34px;
	}
	.pricing .pricing-plan-description {
		font-size: 16px;
		min-height: 0;
	}
	.pricing .price {
		font-size: 56px;
	}
	.pricing .billing-detail {
		min-height: 0;
	}
	.pricing .pricing-plan > .button {
		margin-top: 23px;
	}
	.pricing .pricing-plan .fee {
		margin-top: 24px;
	}
	.pricing .includes {
		margin: 23px 0 17px;
		align-self: flex-start;
	}
	.pricing .features {
		padding: 0;
	}
	.pricing .features li {
		font-size: 16px;
	}
	.pricing .pricing-plan-note {
		flex-direction: column;
		gap: 10px;
	}
	.pricing .included-items {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 14px;
	}
	.pricing .included-items span {
		font-size: 13px;
		line-height: 1.5;
	}
	.pricing .pricing-comparison {
		padding-top: 52px;
		scroll-margin-top: 95px;
	}
	.pricing .table-scroll table {
		width: 580px;
		min-width: 580px;
		table-layout: fixed;
	}
	.pricing .table-scroll {
		scroll-snap-type: x proximity;
		scroll-padding-left: 118px;
	}
	.pricing .table-scroll .feature-column {
		width: 118px;
	}
	.pricing .table-scroll .plan-column {
		width: 154px;
	}
	.pricing .table-scroll thead th:not(:first-child) {
		scroll-snap-align: start;
	}
	.pricing .table-scroll tbody th {
		width: 118px;
		max-width: 118px;
	}
	.pricing .table-scroll tbody th,
	.pricing .table-scroll td,
	.pricing .table-scroll thead th {
		padding: 14px 12px;
	}
	.pricing .table-notes {
		flex-direction: column;
		gap: 10px;
	}
}

@media (max-width: 1100px) {
	.pricing {
		padding-left: 35px;
		padding-right: 35px;
	}
}
@media (max-width: 880px) {
	.pricing .section-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 20px;
	}
	.pricing .section-heading h2 {
		font-size: 43px;
	}
}
@media (max-width: 600px) {
	.pricing {
		padding: 0 23px 55px;
		scroll-margin-top: 90px;
	}
	.pricing .section-heading h2 {
		font-size: 37px;
	}
	.pricing .pricing-plan-top {
		flex-wrap: wrap;
	}
}
@media (prefers-reduced-motion: reduce) {
	.pricing .button {
		transition: none;
	}
}
.svelte-rl4mjs{font-family:'PP Neue Montreal', sans-serif}