html {
	font-size: 18px;
	scroll-behavior: smooth;
	line-height: 1.3;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

html,
body {
	margin: 0;
	padding: 0;
	background: rgb(240 240 241);
}

.tbl {
	/* Typography */
	--tbl-font-sans: "Instrument Sans", Helvetica, Arial, sans-serif;
	--tbl-font-display: "Roboto Flex Variable", "Roboto Flex", "Arial Narrow", Helvetica, Arial, sans-serif;
	--tbl-font-symbol: Helvetica, Arial, sans-serif;
	--tbl-display-settings: "opsz" 14, "wght" 397, "GRAD" 13.5, "wdth" 80.44, "slnt" 0, "XOPQ" 152.8, "YOPQ" 25, "XTRA" 465.8, "YTUC" 711.28, "YTLC" 520.72, "YTAS" 710.5, "YTDE" -203, "YTFI" 738;
	--tbl-type-ui-size: .7777778rem;
	--tbl-type-action-size: .75rem;
	--tbl-type-body-size: 1rem;
	--tbl-type-h3-size: 1.3333333rem;
	--tbl-type-feature-size: 1.5rem;
	--tbl-type-product-title-size: 2rem;
	--tbl-type-h2-size: 2.2rem;
	--tbl-type-legal-chapter-size: 3.2rem;
	--tbl-type-h1-size: 5rem;
	--tbl-type-display-size: 7rem;
	--tbl-weight-body: 425;
	--tbl-weight-regular: 450;
	--tbl-weight-medium: 525;
	--tbl-weight-strong: 550;
	--tbl-weight-heading: 575;
	--tbl-weight-h1: 600;
	--tbl-weight-display: 397;
	--tbl-leading-body: 1.36;
	--tbl-leading-h3: 1.05;
	--tbl-leading-heading: .92;
	--tbl-leading-h1: .9;
	--tbl-leading-display: .82;
	--tbl-tracking-body: -.01em;
	--tbl-tracking-h3: -.012em;
	--tbl-tracking-heading: -.03em;
	--tbl-tracking-h1: -.035em;
	--tbl-tracking-action: .1em;
	/* Color */
	--tbl-color-ink: #222120;
	--tbl-color-action-hover: #121212;
	--tbl-color-error: #e17272;
	--tbl-color-surface: #ffffff;
	--tbl-color-surface-muted: #f0f0f1;
	--tbl-color-dark: #464542;
	--tbl-color-white: #ffffff;
	--tbl-color-on-dark: var(--tbl-color-white);
	--tbl-color-glass: rgb(255 255 255 / 20%);
	--tbl-fill-passive: color-mix(in srgb, var(--tbl-color-ink) 8%, transparent);
	--tbl-fill-passive-dark: rgb(255 255 255 / 9%);
	--tbl-fill-panel: color-mix(in srgb, var(--tbl-color-ink) 4%, transparent);
	--tbl-fill-control: color-mix(in srgb, var(--tbl-color-ink) 40%, transparent);
	--tbl-fill-action-light: rgb(244 244 244);
	--tbl-fill-action-light-hover: var(--tbl-color-white);
	/* Geometry */
	--tbl-page-padding: 2rlh;
	--tbl-grid-gap: 1rlh;
	--tbl-section-gap: 1rlh;
	--tbl-section-padding-block: 2rlh;
	--tbl-section-padding-inline: 1.5rlh;
	--tbl-card-padding: 1rlh;
	--tbl-radius-large: 2rlh;
	--tbl-radius-small: .5rlh;
	--tbl-radius-label: .5rlh;
	--tbl-radius-cover: 2rlh;
	--tbl-block-min-height: 620px;
	--tbl-screen-section-height: calc(100dvh - var(--tbl-section-gap));
	--tbl-copy-measure: 34ch;
	--tbl-copy-measure-wide: 42ch;
	--tbl-copy-inset: 1rlh;
	/* Motion */
	--tbl-ease-out: cubic-bezier(.16, 1, .3, 1);
	--tbl-duration-fast: 360ms;
	--tbl-duration-medium: 420ms;
	padding: 0 var(--tbl-page-padding);
	display: grid;
	row-gap: 0;
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-body-size);
	font-weight: var(--tbl-weight-body);
	line-height: var(--tbl-leading-body);
	letter-spacing: var(--tbl-tracking-body);
	font-synthesis: none;
	color: var(--tbl-color-ink);
}

.tbl,
.tbl *,
.tbl *::before,
.tbl *::after {
	box-sizing: border-box;
}

.tbl *,
.tbl *::before,
.tbl *::after {
	margin: 0;
	padding: 0;
}

.tbl :where(h1,
h2,
h3,
h4,
h5,
h6) {
	font: inherit;
}

/* Core editorial hierarchy: Instrument Sans owns content and UI. */

.tbl h1 {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-h1-size);
	line-height: var(--tbl-leading-h1);
	font-weight: var(--tbl-weight-h1);
	letter-spacing: var(--tbl-tracking-h1);
}

.tbl h2 {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-h2-size);
	line-height: var(--tbl-leading-heading);
	font-weight: var(--tbl-weight-heading);
	letter-spacing: var(--tbl-tracking-heading);
}

.tbl .tbl-tagline {
	padding-top: .5rlh;
}

.tbl h3 {
	font-size: var(--tbl-type-h3-size);
	line-height: var(--tbl-leading-h3);
	font-weight: var(--tbl-weight-medium);
	letter-spacing: var(--tbl-tracking-h3);
}

/* Display face is opt-in only through .tbl-font-brand. */

.tbl .tbl-hero-title {
	font-size: var(--tbl-type-display-size);
	line-height: var(--tbl-leading-display);
}

.tbl strong {
	font-weight: var(--tbl-weight-strong);
}

/* Typography roles: semantics and visual role are separate. */

.tbl .tbl-type-display {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-display-size);
	line-height: var(--tbl-leading-display);
	font-weight: var(--tbl-weight-display);
	letter-spacing: 0;
}

.tbl .tbl-type-heading {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-h2-size);
	line-height: var(--tbl-leading-heading);
	font-weight: var(--tbl-weight-heading);
	letter-spacing: var(--tbl-tracking-heading);
}

.tbl .tbl-type-subheading {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-product-title-size);
	line-height: .98;
	font-weight: var(--tbl-weight-medium);
	letter-spacing: var(--tbl-tracking-h3);
}

.tbl .tbl-type-body {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-body-size);
	line-height: var(--tbl-leading-body);
	font-weight: var(--tbl-weight-body);
	letter-spacing: var(--tbl-tracking-body);
}

.tbl .tbl-type-body-strong {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-body-size);
	line-height: 1.2;
	font-weight: var(--tbl-weight-strong);
	letter-spacing: 0;
}

.tbl .tbl-type-ui {
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-action-size);
	line-height: 1;
	font-weight: var(--tbl-weight-medium);
	letter-spacing: var(--tbl-tracking-action);
}

.tbl .tbl-font-brand {
	font-family: var(--tbl-font-display);
	font-weight: var(--tbl-weight-display);
	font-optical-sizing: none;
	font-variation-settings: var(--tbl-display-settings);
	font-kerning: normal;
	font-feature-settings: "kern" 1, "liga" 1;
	letter-spacing: 0;
}

.tbl .tbl-text-uppercase {
	text-transform: uppercase;
}

.tbl .tbl-brand-lockup {
	display: inline-flex;
	align-items: baseline;
	gap: 1.25em;
	font-size: var(--tbl-type-body-size);
	line-height: 1.2;
	font-weight: var(--tbl-weight-medium);
	letter-spacing: 0;
}

.tbl-brand-lockup__text {
	white-space: nowrap;
}

.tbl-mark {
	display: inline-block;
	white-space: nowrap;
}

.tbl-mark-sup,
.tbl-mark-sub {
	position: relative;
	font-size: .6em;
	font-weight: 700;
	-webkit-text-stroke: .065em;
}

.tbl-mark-sup {
	top: -.45em;
	margin-right: .1em;
}

.tbl-mark-sub {
	top: -.045em;
	margin-left: .1em;
}

/* Text roles inherit from the block root unless a semantic role above overrides them. */

.tbl-flow {
	display: flex;
	flex-direction: column;
	gap: 1rlh;
}

/* Editorial measures: Grid controls position; measure controls readable line length. */

/* Reusable editorial inset: widen a grid span, then keep copy away from its outer rail. */

.tbl-flow--heading {
	gap: 2rlh;
}

.tbl-flow-tail {
	flex: 1 1 auto;
	max-inline-size: var(--tbl-copy-measure-wide);
	display: flex;
	flex-direction: column;
	gap: 1rlh;
}

.tbl-flow-tail > :where(h1,
h2,
h3,
p,
dt,
dd,
summary,
a,
button,
label,
legend):last-child {
	text-box-trim: trim-end;
}

.tbl ul,
.tbl ol {
	list-style: none;
}

.tbl img,
.tbl picture,
.tbl svg,
.tbl video,
.tbl canvas {
	display: block;
	max-width: 100%;
}

.tbl :where(input,
button,
textarea,
select) {
	font: inherit;
	color: inherit;
	background: none;
	border: 0;
	border-radius: 0;
}

.tbl button {
	cursor: pointer;
}

.tbl textarea {
	resize: none;
}

.tbl fieldset {
	min-inline-size: 0;
	border: 0;
}

.tbl legend {
	padding: 0;
}

.tbl :where(a) {
	color: inherit;
	text-decoration: none;
}

.tbl-text-link {
	border-bottom: 1px solid color-mix(in srgb, var(--tbl-color-ink) 33%, transparent);
	padding-bottom: .2em;
}

.tbl table {
	border-collapse: collapse;
	border-spacing: 0;
}

.tbl summary {
	cursor: pointer;
}

.tbl [hidden] {
	display: none !important;
}

.tbl-section {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: var(--tbl-grid-gap);
}

.tbl-section--screen {
	min-height: max(var(--tbl-block-min-height), var(--tbl-screen-section-height));
}

.tbl-section--cover {
	padding: var(--tbl-section-padding-block) var(--tbl-section-padding-inline) 1.5rlh;
}

/*
Full-bleed cover primitive for Home and future standalone device pages.
The surface reaches the viewport edges, while its content remains aligned
to the same document rails as ordinary sections.
*/

.tbl-cover {
	margin-inline: calc(0px - var(--tbl-page-padding));
	padding-inline: var(--tbl-page-padding);
	border-radius: 0 0 var(--tbl-radius-cover) var(--tbl-radius-cover);
}

.tbl-cover.tbl-section--screen {
	min-height: max(var(--tbl-block-min-height), 100dvh);
}

.tbl-section--plain {
	padding: 4rlh 0 0;
}

.tbl[data-tilda-page="/"] .tbl-section--plain {
	padding-top: 0;
}

.tbl.tbl-section-spacer {
	height: 4rlh;
	min-height: 4rlh;
	padding: 0;
	display: block;
}

.tbl-section-spacer > .tbl-block-spacer {
	width: 100%;
	height: 100%;
}

/* Full-bleed scene primitive: immersive/product stages touch the viewport rails. */

.tbl-scene {
	margin-inline: calc(0px - var(--tbl-page-padding));
	min-height: 100dvh;
}

/*
Primary editorial action. White actions live on imagery; ink actions live
on the main page surface. Both share one motion language.
*/

.tbl-action {
	--tbl-action-bg: rgb(244 244 244);
	--tbl-action-bg-hover: var(--tbl-color-white);
	--tbl-action-fg: var(--tbl-color-ink);
	width: max-content;
	max-width: 100%;
	min-width: 0;
	height: 3rlh;
	display: grid;
	grid-template-columns: 3rlh max-content;
	column-gap: 0;
	align-items: stretch;
	color: var(--tbl-action-fg);
	text-decoration: none;
	transform: translateZ(0);
	transform-origin: center;
}

.tbl-action:hover,
.tbl-action:focus-visible {
	transform: translateZ(0);
}

.tbl-action__label,
.tbl-action__icon {
	grid-row: 1;
	display: flex;
	align-items: center;
	background: var(--tbl-action-bg);
	color: var(--tbl-action-fg);
	transition: background-color var(--tbl-duration-medium) var(--tbl-ease-out), color var(--tbl-duration-medium) var(--tbl-ease-out), transform var(--tbl-duration-medium) var(--tbl-ease-out);
}

.tbl-action:hover .tbl-action__label,
.tbl-action:hover .tbl-action__icon,
.tbl-action:focus-visible .tbl-action__label,
.tbl-action:focus-visible .tbl-action__icon {
	background: var(--tbl-action-bg-hover);
	color: var(--tbl-action-fg);
}

.tbl-action__label {
	grid-column: 2;
	min-width: max-content;
	padding: 0 1.75rlh;
	justify-content: center;
	border-radius: 1.5rlh;
	text-align: center;
	white-space: nowrap;
}

.tbl-action__icon {
	grid-column: 1;
	position: relative;
	z-index: 1;
	width: 3rlh;
	height: 3rlh;
	justify-content: center;
	border-radius: 50%;
}

/* ↓ rests as ↘ and resolves to ↓ on interaction. */

/* Product + becomes ×-like without changing colour. */

.tbl-action:hover .tbl-action__icon:not(.tbl-action__icon--forward),
.tbl-action:focus-visible .tbl-action__icon:not(.tbl-action__icon--forward) {
	transform: rotate(45deg);
}

.tbl-action--compact {
	height: 3rlh;
}

.tbl-action--compact .tbl-action__label {
	padding-inline: 1.5rlh;
	border-radius: 1.5rlh;
}

.tbl-action--compact .tbl-action__icon {
	width: 3rlh;
	height: 3rlh;
}

.tbl-action--ink {
	--tbl-action-bg: var(--tbl-color-dark);
	--tbl-action-bg-hover: var(--tbl-color-action-hover);
	--tbl-action-fg: var(--tbl-color-white);
}

/*
==========================================================================
TBL HOME / PAGE-SPECIFIC LAYOUT
Keep homepage-only geometry here. Shared primitives stay above.
==========================================================================
*/

/* HOME / HERO */

.tbl-hero {
	--tbl-hero-parallax: 0px;
	--tbl-hero-bg-parallax: 0px;
	--tbl-hero-radius: 0px;
	position: relative;
	isolation: isolate;
	overflow: hidden;
	grid-template-rows: auto minmax(0, 1fr) auto;
	align-items: stretch;
	row-gap: .75rlh;
	column-gap: var(--tbl-grid-gap);
	color: var(--tbl-color-white);
	background-color: var(--tbl-color-surface-muted);
	border-radius: 0 0 var(--tbl-hero-radius) var(--tbl-hero-radius);
}

/* Structural wrapper only: Hero children participate in the main 12-column grid. */

.tbl-hero-left {
	display: contents;
}

.tbl-hero .tbl-brand-lockup {
	grid-column: 1 / span 4;
	grid-row: 1;
	align-self: start;
	justify-self: start;
	z-index: 2;
}

.tbl-hero-content {
	grid-column: 4 / 10;
	grid-row: 2;
	min-width: 0;
	align-self: center;
	justify-self: center;
	text-align: center;
	transform: translate3d(0, calc(-.75rlh + var(--tbl-hero-parallax)), 0);
	will-change: transform;
	z-index: 1;
}

.tbl-hero .tbl-hero-title {
	text-align: center;
}

.tbl-hero .tbl-tagline {
	text-align: center;
}

.tbl-hero-intro {
	grid-column: 9 / -1;
	grid-row: 3;
	min-width: 0;
	align-self: end;
	justify-self: stretch;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--tbl-grid-gap);
	align-items: end;
	padding-bottom: 0;
	z-index: 1;
}

.tbl-hero-intro > p {
	min-width: 0;
	max-inline-size: none;
	color: var(--tbl-color-white);
	text-box-trim: trim-both;
}

.tbl-hero-intro strong {
	color: inherit;
}

.tbl-hero-actions {
	grid-column: 1 / span 4;
	grid-row: 3;
	min-width: 0;
	align-self: end;
	display: flex;
	align-items: end;
}

.tbl-hero .tbl-brand-lockup,
.tbl-hero-intro,
.tbl-hero-actions {
	transform: translate3d(0, var(--tbl-hero-parallax), 0);
	will-change: transform;
}

.tbl-hero .tbl-brand-lockup,
.tbl-hero h1.tbl-hero-title,
.tbl-hero .tbl-tagline {
	color: var(--tbl-color-white);
}

.tbl-hero-contact {
	grid-column: auto;
	width: max-content;
	grid-template-columns: 3rlh max-content;
}

.tbl-previews {
	grid-column: 10 / -1;
	grid-row: 1;
	min-width: 0;
	width: min(100%, 12rem);
	justify-self: end;
	align-self: start;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .75rlh;
	z-index: 1;
}

.tbl-preview {
	position: relative;
	z-index: 1;
	width: 100%;
	min-height: 0;
	aspect-ratio: 5 / 7;
	overflow: hidden;
	border-radius: .5rlh;
	transform: scale(1);
	transform-origin: center;
	transition: transform 900ms var(--tbl-ease-out);
	will-change: transform;
}

.tbl-preview:hover,
.tbl-preview:focus-visible {
	z-index: 3;
	transform: scale(1.12);
}

.tbl-preview > .tbl-product-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center top;
}

.tbl-preview-content {
	position: absolute;
	z-index: 1;
	inset: 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	padding: .4rlh;
	color: var(--tbl-color-on-dark);
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-body-size);
	font-weight: var(--tbl-weight-medium);
	text-align: center;
	background: linear-gradient(to bottom, color-mix(in srgb, var(--tbl-color-ink) 44%, transparent), transparent 38%);
}

.tbl-preview-label {
	font: inherit;
	color: inherit;
}

/*
Shared edition badge for product and content labels.
*/

.tbl-badge {
	min-height: 1.5rlh;
	padding: 0 .5rlh;
	display: inline-flex;
	align-items: center;
	border-radius: var(--tbl-radius-label);
	background: var(--tbl-color-glass);
	color: var(--tbl-color-on-dark);
	font-size: var(--tbl-type-ui-size);
	backdrop-filter: blur(.5rlh);
	-webkit-backdrop-filter: blur(.5rlh);
}

.tbl-founder {
	margin-bottom: 0;
	padding: 0;
	overflow: visible;
	background: transparent;
	opacity: 0;
	transition: opacity 900ms var(--tbl-ease-out);
}

.tbl-founder.is-visible {
	opacity: 1;
}

.tbl-founder-split-layout {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-template-rows: auto auto;
	column-gap: var(--tbl-grid-gap);
	row-gap: 2rlh;
	align-items: start;
}

.tbl-founder-identity {
	grid-column: 1 / span 3;
	grid-row: 1 / span 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2rlh;
}

.tbl-founder-heading h2 {
	max-inline-size: 11ch;
}

.tbl-founder-person {
	display: grid;
	gap: .75rlh;
}

.tbl-founder-media {
	width: 8rlh;
	max-width: 100%;
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 50%;
	background: var(--tbl-color-surface-muted);
}

.tbl-founder-media img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

.tbl-founder-signature {
	max-inline-size: 24ch;
	font-size: .9rem;
	line-height: 1.3;
}

.tbl-founder-copy {
	min-width: 0;
	max-inline-size: none;
	padding-inline-end: var(--tbl-copy-inset);
	display: flex;
	flex-direction: column;
	gap: 1rlh;
}

.tbl-founder-copy--left {
	grid-column: 5 / span 4;
	grid-row: 1;
}

.tbl-founder-copy--right {
	grid-column: 9 / -1;
	grid-row: 1;
	padding-top: 0;
}

.tbl-founder-lead {
	font-size: 1.05rem;
	line-height: 1.3;
}

.tbl-founder-action {
	grid-column: 9 / -1;
	grid-row: 2;
	align-self: end;
	justify-self: stretch;
	width: 100%;
	grid-template-columns: 3rlh minmax(0, 1fr);
}

.tbl-options > header {
	position: static;
	grid-column: 2 / 12;
	width: auto;
	max-width: none;
	transform: none;
	pointer-events: auto;
	text-align: center;
}

.tbl-options > header h2 {
	white-space: nowrap;
	color: var(--tbl-color-ink);
	text-align: center;
	mix-blend-mode: normal;
}

.tbl-product-stage > .tbl-product {
	grid-column: span 6;
	height: 100%;
	border-radius: 0;
}

.tbl-product {
	min-height: 0;
	position: relative;
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	grid-template-rows: minmax(0, 1fr);
	column-gap: var(--tbl-grid-gap);
	overflow: hidden;
}

.tbl-product::after {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(to bottom, rgb(0 0 0 / 22%), transparent 28%, transparent 58%, rgb(0 0 0 / 38%));
}

.tbl-product > .tbl-product-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center top;
	transform: scale(1);
	transition: transform 7000ms cubic-bezier(.12, .72, .18, 1);
	will-change: transform;
}

.tbl-product:hover > .tbl-product-image,
.tbl-product:focus-within > .tbl-product-image {
	transform: scale(1.075);
}

.tbl-product-hitarea {
	position: absolute;
	z-index: 1;
	inset: 0;
}

.tbl-product-name {
	position: absolute;
	z-index: 2;
	top: var(--tbl-section-padding-block);
	left: 0;
	right: 0;
	height: 1.2em;
	padding: 0 var(--tbl-page-padding);
	color: var(--tbl-color-on-dark);
	font-size: var(--tbl-type-body-size);
	font-weight: var(--tbl-weight-medium);
	grid-column: 1 / -1;
	grid-row: 1;
	align-self: start;
	display: flex;
	align-items: center;
	gap: .5rlh;
}

.tbl-product:first-child .tbl-product-name {
	justify-self: start;
	text-align: left;
}

.tbl-product:last-child .tbl-product-name {
	justify-self: end;
	text-align: right;
}

.tbl-product-content {
	z-index: 2;
	color: var(--tbl-color-on-dark);
	grid-column: 1 / -1;
	grid-row: 1;
	align-self: end;
	justify-self: stretch;
	padding: var(--tbl-page-padding);
}

.tbl-product:first-child .tbl-product-content {
	align-items: flex-start;
	text-align: left;
}

.tbl-product:last-child .tbl-product-content {
	align-items: flex-end;
	text-align: right;
}

.tbl-product:last-child .tbl-product-content .tbl-action {
	align-self: flex-end;
}

.tbl-product-content h3 {
	max-inline-size: 17ch;
}

.tbl-product-name,
.tbl-product-content {
	pointer-events: none;
}

.tbl-product-mobile-edition {
	display: none;
}

.tbl-product-content .tbl-action {
	pointer-events: auto;
	width: max-content;
	grid-template-columns: 3rlh max-content;
}

.tbl-contact {
	min-height: 0;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-template-rows: minmax(0, 1fr) auto;
	gap: var(--tbl-grid-gap);
}

.tbl-contact > header {
	grid-column: 1 / span 4;
	grid-row: 1;
	align-self: start;
}

.tbl-contact > form {
	grid-column: 8 / -1;
	grid-row: 1;
	align-self: start;
}

.tbl-contact > .tbl-tagline {
	grid-column: 1 / span 6;
	grid-row: 2;
	align-self: first baseline;
}

.tbl-contact > .tbl-brand-lockup {
	grid-column: 7 / -1;
	grid-row: 2;
	align-self: first baseline;
	justify-self: end;
	text-align: right;
}

.tbl-form {
	--tbl-form-stroke: .1em;
	--tbl-form-line-color: color-mix(in srgb, var(--tbl-color-ink) 40%, transparent);
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	row-gap: 2rlh;
	column-gap: 1rlh;
}

.tbl-field--name {
	grid-column: 1 / span 3;
}

.tbl-field--email {
	grid-column: 4 / span 3;
}

.tbl-field--message,
.tbl-interest,
.tbl-form-actions {
	grid-column: 1 / -1;
}

.tbl-field {
	position: relative;
	display: grid;
}

.tbl-field > input,
.tbl-field > textarea {
	width: 100%;
	font-family: var(--tbl-font-sans);
	font-size: var(--tbl-type-body-size);
	line-height: var(--tbl-leading-body);
	font-weight: var(--tbl-weight-regular);
	letter-spacing: var(--tbl-tracking-body);
}

.tbl-field-error {
	position: absolute;
	z-index: 1;
	top: calc(100% + .15rlh);
	left: 0;
	color: var(--tbl-color-error);
	font-size: var(--tbl-type-body-size);
	font-weight: var(--tbl-weight-body);
	line-height: var(--tbl-leading-body);
	letter-spacing: var(--tbl-tracking-body);
	white-space: nowrap;
}

.tbl-field-error:empty {
	display: none;
}

.tbl-field > input::placeholder,
.tbl-field > textarea::placeholder {
	color: currentColor;
	opacity: 1;
	font-weight: var(--tbl-weight-strong);
}

.tbl-field > input:focus,
.tbl-field > textarea:focus {
	outline: 0;
	box-shadow: none;
}

.tbl-field > input:focus::placeholder,
.tbl-field > textarea:focus::placeholder {
	opacity: 0;
}

.tbl-field > input {
	padding: .5rlh 0;
	border-bottom: var(--tbl-form-stroke) solid var(--tbl-form-line-color);
}

.tbl-field--message {
	border-radius: .5rlh;
}

.tbl-field--message::before {
	content: "";
	position: absolute;
	inset: 0;
	border: var(--tbl-form-stroke) solid var(--tbl-form-line-color);
	border-radius: inherit;
	pointer-events: none;
	-webkit-mask: linear-gradient(var(--tbl-color-ink) 0 0) left top / .75rlh .75rlh no-repeat, linear-gradient(var(--tbl-color-ink) 0 0) right top / .75rlh .75rlh no-repeat, linear-gradient(var(--tbl-color-ink) 0 0) left bottom / .75rlh .75rlh no-repeat, linear-gradient(var(--tbl-color-ink) 0 0) right bottom / .75rlh .75rlh no-repeat;
	mask: linear-gradient(var(--tbl-color-ink) 0 0) left top / .75rlh .75rlh no-repeat, linear-gradient(var(--tbl-color-ink) 0 0) right top / .75rlh .75rlh no-repeat, linear-gradient(var(--tbl-color-ink) 0 0) left bottom / .75rlh .75rlh no-repeat, linear-gradient(var(--tbl-color-ink) 0 0) right bottom / .75rlh .75rlh no-repeat;
}

.tbl-field--message > textarea {
	min-height: 4rlh;
	padding: .75rlh;
	border-radius: inherit;
}

.tbl-interest {
	display: grid;
	grid-template-columns: auto max-content;
	justify-content: start;
	align-items: center;
	gap: 1rlh;
}

.tbl-interest > span {
	font-size: var(--tbl-type-body-size);
	line-height: var(--tbl-leading-body);
	font-weight: var(--tbl-weight-strong);
	letter-spacing: var(--tbl-tracking-body);
}

.tbl-interest-options label {
	position: relative;
	flex: 0 0 auto;
	cursor: pointer;
}

.tbl-interest-options input {
	position: absolute;
	inline-size: 1px;
	block-size: 1px;
	opacity: 0;
	pointer-events: none;
}

.tbl-interest-options label > span {
	min-height: 1.7rlh;
	padding: 0 .5rlh;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	color: var(--tbl-color-on-dark);
	font-size: var(--tbl-type-body-size);
	line-height: 1.2;
	font-weight: var(--tbl-weight-strong);
	letter-spacing: var(--tbl-tracking-body);
	white-space: nowrap;
	transition: background-color var(--tbl-duration-fast) var(--tbl-ease-out), color var(--tbl-duration-fast) var(--tbl-ease-out), transform var(--tbl-duration-fast) var(--tbl-ease-out);
}

.tbl-interest-options input:checked + span {
	background: var(--tbl-color-surface);
	color: var(--tbl-color-ink);
	transform: translateZ(0);
}

.tbl-interest-options input:focus-visible + span {
	outline: var(--tbl-form-stroke) solid #ffffff;
	outline-offset: calc(var(--tbl-form-stroke) * -1);
}

.tbl-form-actions {
	display: grid;
	gap: 1rlh;
}

.tbl-text-small {
	font-size: .85rem;
	line-height: 1.33333;
	font-weight: var(--tbl-weight-medium);
	letter-spacing: inherit;
	text-align: center;
	opacity: .4;
}

.tbl-form-submit {
	width: 100%;
	grid-template-columns: 3rlh minmax(0, 1fr);
}

.tbl-align-right {
	text-align: right;
	justify-self: end;
}

/*
==========================================================================
TBL FOOTER / FUTURE GLOBAL TILDA FOOTER BLOCK
This entire component remains in this file for now and can later move as-is.
==========================================================================
*/

.tbl-footer-note {
	grid-column: 1 / span 7;
	grid-row: 1;
	text-align: left;
}

.tbl-footer-copyright {
	grid-column: 1 / span 4;
	grid-row: 2;
	align-self: end;
}

.tbl-footer-legal {
	grid-column: 8 / -1;
	grid-row: 1;
	display: flex;
	justify-content: flex-end;
	align-self: start;
	gap: 1rlh;
}

.tbl-footer-madeby {
	grid-column: 9 / -1;
	grid-row: 2;
	align-self: end;
	color: rgb(34 33 32 / 40%);
}

/*
==========================================================================
TBL DEVICE PAGES / TILDA BLOCKS
Each semantic device block is wrapped by its own .tbl root in the HTML.
Shared CSS remains site-wide; no popup shell is used.
==========================================================================
*/

/*
Tilda split-page rhythm: preserve the original 3rlh gap when body content
is distributed across independent HTML/Vibe blocks.
*/

.tbl-device-page__body > section {
	grid-column: 1 / -1;
}

.tbl-device-page__body > .tbl-faq {
	grid-column: 1 / span 4;
}

.tbl-device-page__body > .tbl-specifications {
	grid-column: 7 / -1;
}

.tbl-device-card-grid {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: var(--tbl-grid-gap);
	align-items: stretch;
}

.tbl-device-card-stack {
	grid-column: 7 / -1;
	display: grid;
	align-content: start;
	gap: 2rlh;
}

.tbl-device-card {
	padding: var(--tbl-card-padding);
	background: var(--tbl-color-surface-muted);
	border-radius: var(--tbl-radius-small);
}

.tbl-device-card-stack .tbl-device-card {
	padding: 0;
	background: transparent;
	border-radius: 0;
}

.tbl-device-page__cta > p {
	grid-column: 1 / span 6;
}

.tbl-specs,
.tbl-features {
	display: grid;
	gap: var(--tbl-grid-gap);
}

.tbl-specs {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	row-gap: 1rlh;
	column-gap: var(--tbl-grid-gap);
}

.tbl-symbol {
	display: inline-block;
	font-family: var(--tbl-font-symbol);
	font-weight: 400;
	letter-spacing: 0;
}

.tbl-symbol--plusminus,
.tbl-symbol--less,
.tbl-symbol--times {
	line-height: 1;
}

.tbl-contact > .tbl-brand-lockup--footer {
	font-size: var(--tbl-type-h3-size);
	line-height: var(--tbl-leading-h3);
	font-weight: var(--tbl-weight-medium);
	letter-spacing: var(--tbl-tracking-h3);
}

/*
==========================================================================
TBL LEGAL / SEPARATE TILDA HEADER + EDITORIAL PAGE
Header is its own Tilda block. Legal body uses the same muted site surface
and an eight-column text field aligned to the right document rail.
==========================================================================
*/

.tbl[data-tilda-block="legal-header"],
.tbl[data-tilda-block="legal-page"] {
	padding-inline: 0;
}

.tbl-legal-page__intro,
.tbl-legal-page__content {
	grid-column: 5 / -1;
	min-width: 0;
}

.tbl-legal-page__intro h1 {
	max-inline-size: 12ch;
	font-size: var(--tbl-type-legal-chapter-size);
	line-height: .94;
	font-weight: var(--tbl-weight-heading);
	letter-spacing: var(--tbl-tracking-heading);
}

.tbl-legal-page__intro-copy {
	width: 100%;
	display: grid;
	gap: .75rlh;
}

.tbl-legal-page__content > .tbl-legal-chapter {
	margin-top: 4rlh;
	font-size: var(--tbl-type-h2-size);
	line-height: var(--tbl-leading-heading);
	font-weight: var(--tbl-weight-heading);
	letter-spacing: var(--tbl-tracking-heading);
	scroll-margin-top: 4rlh;
}

.tbl-legal-page__content > .tbl-legal-chapter:first-child {
	margin-top: 0;
}

.tbl-legal-page__content > p,
.tbl-legal-page__content > ul {
	width: 100%;
	max-inline-size: none;
	margin-top: 1rlh;
	font-size: var(--tbl-type-body-size);
	line-height: var(--tbl-leading-body);
	font-weight: var(--tbl-weight-body);
	letter-spacing: var(--tbl-tracking-body);
}

/*
==========================================================================
HOME / ADAPTIVE STORY — CANONICAL STORYBOARD
Four narrative phases share one full-screen stage. Benefits are not a
separate phase: the Why-come rail remains part of the composition from
Change through Rest, exactly as in the approved storyboard.
==========================================================================
*/

.tbl[data-tilda-block="home-adaptive-story"] {
	padding-inline: 0;
}

.tbl-adaptive-story {
	--tbl-story-bg: rgb(240 240 241);
	--tbl-story-fg: var(--tbl-color-ink);
	--tbl-story-image-opacity: 0;
	--tbl-story-visual-left-x: -4.4rlh;
	--tbl-story-visual-right-x: 4.4rlh;
	--tbl-story-visual-scale: .84;
	--tbl-story-hypoxia-opacity: 0;
	--tbl-story-hypoxia-stroke: 1px;
	--tbl-story-normal-opacity: 0;
	--tbl-story-visual-core-scale: .52;
	--tbl-story-core-center: rgb(34 33 32 / 16%);
	--tbl-story-core-mid: rgb(34 33 32 / 8%);
	--tbl-story-core-edge: transparent;
	--tbl-story-chrome-opacity: 1;
	--tbl-story-chrome-color: var(--tbl-color-ink);
	min-height: 700dvh;
	position: relative;
	z-index: 0;
}

.tbl-adaptive-story__anchor {
	position: absolute;
	left: 0;
	width: 1px;
	height: 1px;
	pointer-events: none;
}

.tbl-adaptive-story__anchor--change,
.tbl-adaptive-story__anchor--reasons {
	top: 0;
}

.tbl-adaptive-story__anchor--cellular {
	top: 272dvh;
}

.tbl-adaptive-story__anchor--adaptation {
	top: 408dvh;
}

.tbl-adaptive-story__anchor--rest,
.tbl-adaptive-story__anchor--experience {
	top: 544dvh;
}

.tbl-adaptive-story__stage {
	position: sticky;
	z-index: 1;
	top: 0;
	width: 100%;
	height: 100dvh;
	min-height: max(620px, 100dvh);
	overflow: hidden;
	color: var(--tbl-story-fg);
	background: var(--tbl-story-bg);
	isolation: isolate;
}

.tbl-adaptive-story__stage::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: -5%;
	background: linear-gradient(90deg, rgb(0 0 0 / 54%), rgb(0 0 0 / 14%) 58%, rgb(0 0 0 / 26%)), url("https://static.tildacdn.com/tild3839-6638-4563-a664-306463336631/7.jpg") center top / cover no-repeat;
	opacity: var(--tbl-story-image-opacity);
	pointer-events: none;
	will-change: opacity;
}

.tbl-adaptive-story__stage::after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 42% 0 0;
	background: linear-gradient(180deg, transparent 0%, rgb(70 69 66 / 22%) 34%, var(--tbl-color-dark) 100%);
	opacity: var(--tbl-story-dark-gradient-opacity, 0);
	pointer-events: none;
	will-change: opacity;
}

.tbl-adaptive-story__content {
	width: 100%;
	height: 100%;
	padding: calc(var(--tbl-section-padding-block) - .375rlh) var(--tbl-page-padding) 2rlh;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-template-rows: auto minmax(0, 1fr) auto;
	column-gap: var(--tbl-grid-gap);
	row-gap: 1rlh;
}

.tbl-adaptive-story__index {
	grid-column: 1 / span 5;
	grid-row: 1;
	display: flex;
	flex-wrap: nowrap;
	gap: .5rlh;
	align-items: center;
	justify-content: flex-start;
	position: relative;
	z-index: 20;
	white-space: nowrap;
	opacity: var(--tbl-story-chrome-opacity);
	transition: opacity var(--tbl-duration-medium) var(--tbl-ease-out);
}

.tbl-adaptive-story__index a {
	display: inline-flex;
	align-items: center;
	min-height: inherit;
	color: inherit;
}

.tbl-adaptive-story__index li.is-active {
	color: var(--tbl-color-white);
	background: var(--tbl-color-dark);
	opacity: 1;
}

.tbl-adaptive-story__stage.is-dark .tbl-adaptive-story__index li.is-active {
	color: var(--tbl-color-ink);
	background: var(--tbl-story-fg);
}

.tbl-adaptive-story__states {
	grid-column: 1 / -1;
	grid-row: 2;
	min-height: 0;
	position: relative;
}

/*
Physiological metaphor:
hypoxia = geometrically precise ring with one subtly unstable quarter;
normal air = stable ideal circle; their convergence resolves to the stable
circle, while the soft core represents the adaptive response.
*/

.tbl-adaptive-story__visual {
	position: absolute;
	z-index: 0;
	opacity: var(--tbl-story-visual-opacity, 1);
	left: 50%;
	top: 50%;
	width: 15rlh;
	height: 15rlh;
	transform: translate(-50%, -50%) scale(var(--tbl-story-visual-scale));
	pointer-events: none;
	will-change: transform;
}

.tbl-adaptive-story__ring {
	position: absolute;
	inset: 0;
	will-change: transform, opacity;
}

.tbl-adaptive-story__ring svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.tbl-adaptive-story__ring path,
.tbl-adaptive-story__ring circle {
	fill: none;
	stroke: currentColor;
	vector-effect: non-scaling-stroke;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.tbl-adaptive-story__ring--hypoxia {
	transform: translateX(var(--tbl-story-visual-left-x));
}

.tbl-adaptive-story__ring--hypoxia svg {
	transform-origin: 50% 50%;
	animation: tbl-hypoxia-spin 18s linear infinite;
}

@keyframes tbl-hypoxia-spin {
	to {
		transform: rotate(360deg);
	}

}

.tbl-adaptive-story__hypoxia-morph {
	stroke-opacity: var(--tbl-story-hypoxia-opacity);
	stroke-width: var(--tbl-story-hypoxia-stroke);
}

.tbl-adaptive-story__ring--normal {
	transform: translateX(var(--tbl-story-visual-right-x));
}

.tbl-adaptive-story__ring--normal circle {
	stroke-opacity: var(--tbl-story-normal-opacity);
}

.tbl-adaptive-story__ring--core {
	inset: 23%;
	transform: scale(var(--tbl-story-visual-core-scale));
}

.tbl-adaptive-story__ring--core::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: radial-gradient(circle at center, var(--tbl-story-core-center) 0%, var(--tbl-story-core-mid) 50%, var(--tbl-story-core-edge) 79%);
	animation: tbl-core-breathe 6.6s ease-in-out infinite;
	transform-origin: center;
}

@keyframes tbl-core-breathe {
	0%,
	100% {
		transform: scale(.975);
	}

	50% {
		transform: scale(1.025);
	}

}

.tbl-adaptive-story__state {
	position: absolute;
	z-index: 1;
	inset: 0;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--tbl-grid-gap);
	align-content: center;
	opacity: 0;
	visibility: hidden;
	transform: translateY(.75rlh);
	pointer-events: none;
	will-change: opacity, transform;
}

.tbl-adaptive-story__state.is-active {
	visibility: visible;
}

.tbl-adaptive-story__left,
.tbl-adaptive-story__right {
	display: grid;
	gap: 1rlh;
	align-content: center;
}

.tbl-adaptive-story__left {
	grid-column: 1 / span 4;
	max-inline-size: 34ch;
}

.tbl-adaptive-story__right {
	grid-column: 9 / -1;
	max-inline-size: 36ch;
	justify-self: end;
}

.tbl-adaptive-story__phase-title {
	max-inline-size: 10ch;
	font-size: var(--tbl-type-legal-chapter-size);
	line-height: .94;
}

.tbl-adaptive-story__state--intro,
.tbl-adaptive-story__state--change {
	align-content: center;
}

.tbl-adaptive-story__state--intro .tbl-adaptive-story__left > h2,
.tbl-adaptive-story__state--change .tbl-adaptive-story__left > h2 {
	max-inline-size: 14ch;
}

.tbl-adaptive-story__state--change .tbl-adaptive-story__right > p:first-child {
	font-weight: var(--tbl-weight-strong);
}

/* Why-come is one persistent lower rail, not a separate storyboard frame. */

.tbl-adaptive-story__benefit-rail > h2 {
	grid-column: 1 / span 3;
	max-inline-size: 13ch;
	font-size: 1.65rem;
	line-height: .98;
}

.tbl-adaptive-story__state--rest {
	align-content: center;
}

.tbl-adaptive-story__rest-signals {
	display: grid;
	gap: 2rlh;
}

.tbl-adaptive-story__rest-signals > div {
	display: grid;
	gap: .5rlh;
	max-inline-size: 34ch;
}

.tbl-adaptive-story__rest-signals h3 {
	font-size: var(--tbl-type-feature-size);
	line-height: 1;
	font-weight: var(--tbl-weight-strong);
}

.tbl-adaptive-story__rest-signals p {
	opacity: .76;
}

.tbl-adaptive-story__state--intro .tbl-adaptive-story__right p {
	max-inline-size: 34ch;
}

/*
==========================================================================
MOTION / SCROLL CONTROLLERS
One motion/state layer only. Base components stay canonical above.
==========================================================================
*/

.tbl-hero::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: -7%;
	background-image: url("https://static.tildacdn.com/tild6432-6166-4564-b134-613234336530/6.jpg");
	background-position: center top;
	background-size: cover;
	background-repeat: no-repeat;
	transform: translate3d(0, var(--tbl-hero-bg-parallax), 0) scale(1.08);
	transform-origin: center center;
	will-change: transform;
}

/* One site-wide Tilda header owns navigation on every page. */

.tbl[data-tilda-block="global-header"] {
	padding: 0;
	display: block;
}

/*
Fixed navigation: full menu on the first screen; after scroll it becomes
one always-visible circular control. Opening expands the same matte surface
symmetrically from the centre.
*/

.tbl-top-nav {
	--tbl-nav-button-size: 2rlh;
	--tbl-nav-open-width: 46rem;
	position: fixed;
	z-index: 1000;
	top: calc(var(--tbl-section-padding-block) - .55rlh);
	left: 50%;
	width: var(--tbl-nav-open-width);
	height: var(--tbl-nav-button-size);
	padding: 0;
	border: 0;
	outline: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--tbl-color-white);
	white-space: nowrap;
	transform: translateX(-50%);
	isolation: isolate;
	overflow: visible;
	transition: width 700ms var(--tbl-ease-out);
}

.tbl-top-nav.is-initializing {
	transition: none;
}

.tbl-top-nav::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	border-radius: inherit;
	border: 0;
	background: rgb(126 125 121 / 58%);
	box-shadow: none;
	backdrop-filter: blur(1.55rlh) saturate(68%) brightness(.94);
	-webkit-backdrop-filter: blur(1.55rlh) saturate(68%) brightness(.94);
	opacity: 0;
	pointer-events: none;
	transition: opacity 420ms var(--tbl-ease-out);
}

.tbl-top-nav__group {
	position: absolute;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
	gap: 1.25rem;
	opacity: 1;
	pointer-events: auto;
	transition: opacity 260ms var(--tbl-ease-out), transform 700ms var(--tbl-ease-out);
}

.tbl-top-nav__group--left {
	right: calc(50% + .625rem);
	justify-content: flex-end;
}

.tbl-top-nav__group--right {
	left: calc(50% + .625rem);
	justify-content: flex-start;
}

.tbl-top-nav__toggle {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	width: var(--tbl-nav-button-size);
	height: var(--tbl-nav-button-size);
	display: grid;
	place-items: center;
	border: 0;
	border-radius: 50%;
	color: currentColor;
	background: transparent;
	transform: translate(-50%, -50%) scale(.72);
	opacity: 0;
	pointer-events: none;
	transition: opacity 260ms var(--tbl-ease-out), transform 700ms var(--tbl-ease-out);
}

.tbl-top-nav__glyph {
	width: .78rlh;
	height: .52rlh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}

.tbl-top-nav__glyph > span {
	display: block;
	height: 1.5px;
	border-radius: 999px;
	background: currentColor;
}

.tbl-top-nav__glyph > span:nth-child(1) {
	width: 42%;
}
.tbl-top-nav__glyph > span:nth-child(2) {
	width: 100%;
}
.tbl-top-nav__glyph > span:nth-child(3) {
	width: 68%;
}

.tbl-top-nav.is-compact {
	width: var(--tbl-nav-button-size);
	overflow: hidden;
}

.tbl-top-nav.is-compact::before {
	opacity: 1;
}

.tbl-top-nav.is-compact .tbl-top-nav__toggle {
	opacity: 1;
	pointer-events: auto;
	transform: translate(-50%, -50%) scale(1);
}

.tbl-top-nav.is-compact .tbl-top-nav__group {
	width: 0;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

.tbl-top-nav.is-compact .tbl-top-nav__group--left {
	right: calc(50% + 1.85rlh);
	transform: translateX(.5rlh);
}

.tbl-top-nav.is-compact .tbl-top-nav__group--right {
	left: calc(50% + 1.85rlh);
	transform: translateX(-.5rlh);
}

.tbl-top-nav.is-compact.is-open {
	width: min(var(--tbl-nav-open-width), calc(100vw - 2rlh));
	padding-inline: 1rlh;
	display: flex;
	align-items: center;
	justify-content: center;
}


.tbl-top-nav.is-compact.is-open .tbl-top-nav__toggle {
	position: static;
	width: 0;
	height: 0;
	flex: 0 0 0;
	opacity: 0;
	pointer-events: none;
	transform: none;
}

.tbl-top-nav.is-compact.is-open .tbl-top-nav__group {
	position: static;
	width: auto;
	height: 100%;
	overflow: visible;
	opacity: 1;
	pointer-events: auto;
	transform: none;
	transition-delay: 100ms, 0ms;
}

.tbl-top-nav.is-compact.is-open .tbl-top-nav__group--left {
	margin-right: 1.25rem;
}

.tbl-top-nav__toggle:focus-visible {
	outline: 1px solid currentColor;
	outline-offset: 2px;
}

/*
Product theatre: title + cards are one naturally scrolling scene.
Entry expands from the document content width to the viewport. Full-screen
is a single transition point, not a sticky plateau. From that point the
scene keeps scrolling upward while shrinking back to content width.
*/

/*
Options owns its own hand-off surface. While the cards enter, the exposed
area stays dark and continues the Rest scene. At the exact full-screen
point the surface switches, invisibly behind the cards, to the canonical
page background. Therefore the exit/shrink reveals rgb(240 240 241), not
the previous dark scene.
*/

.tbl[data-tilda-block="home-options"] {
	--tbl-options-underlay: var(--tbl-color-dark);
	padding-inline: 0;
	background: var(--tbl-options-underlay);
}

.tbl-options {
	--tbl-stage-scale: .955;
	--tbl-stage-radius: 3rlh;
	--tbl-options-title-rail: 4rlh;
	min-height: 0;
	margin-inline: 0;
	padding: 0;
	display: block;
	overflow: visible;
}

.tbl-options-scene {
	position: relative;
	top: auto;
	width: 100vw;
	height: calc(100dvh + var(--tbl-options-title-rail));
	display: grid;
	grid-template-rows: var(--tbl-options-title-rail) 100dvh;
	transform: scale(var(--tbl-stage-scale));
	transform-origin: center calc(var(--tbl-options-title-rail) + 50dvh);
	will-change: transform;
}

.tbl-options-scene > header {
	grid-column: 1;
	grid-row: 1;
	width: 100%;
	padding: 0 var(--tbl-page-padding) 2rlh;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 4;
	text-align: center;
}

.tbl-options-scene > header h2 {
	white-space: nowrap;
	color: var(--tbl-color-white);
	text-align: center;
	mix-blend-mode: normal;
}

.tbl-product-stage {
	grid-column: 1;
	grid-row: 2;
	position: relative;
	width: 100vw;
	height: 100dvh;
	min-height: 100dvh;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	overflow: hidden;
	border-radius: var(--tbl-stage-radius);
	background: var(--tbl-color-dark);
	transform: none;
	will-change: auto;
}

/*
Footer has no entrance scale/corner animation. Only its background keeps
the previously approved parallax depth.
*/

.tbl[data-tilda-block="global-footer"] {
	padding-inline: 0;
}

.tbl-footer {
	--tbl-footer-bg-parallax: 0px;
	position: relative;
	isolation: isolate;
	width: 100vw;
	margin-inline: auto;
	padding: 4rlh var(--tbl-page-padding) var(--tbl-page-padding);
	display: grid;
	grid-template-rows: minmax(0, 1fr) auto;
	gap: 0;
	border-radius: var(--tbl-radius-cover) var(--tbl-radius-cover) 0 0;
	overflow: hidden;
	contain: paint;
	background-color: var(--tbl-color-surface-muted);
	transform: none;
}

.tbl-footer::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: -7%;
	background-image: url("https://static.tildacdn.com/tild3065-3534-4835-a537-303430383831/5.jpg");
	background-position: center top;
	background-size: cover;
	background-repeat: no-repeat;
	transform: translate3d(0, var(--tbl-footer-bg-parallax), 0) scale(1.08);
	transform-origin: center center;
	will-change: transform;
}

/*
Homepage mobile containment: keep the editorial hierarchy without allowing
desktop display measures or nowrap controls to enlarge the document.
*/

/*
==========================================================================
CANONICAL CROSS-PAGE COMPONENT STATES
Fill roles, navigation, device geometry, FAQ, footer metadata and legal rails.
==========================================================================
*/

/*
Fill system: passive information is quiet and squared-off; interactive
controls keep the capsule language.
*/

.tbl-badge,
.tbl-adaptive-story__benefits li {
	background: var(--tbl-fill-passive);
	border-radius: var(--tbl-radius-label);
}

.tbl-interest-options {
	width: max-content;
	max-width: 100%;
	padding: .1em;
	display: flex;
	gap: .15rlh;
	border-radius: 999px;
	background: var(--tbl-fill-control);
}

/* Fixed nav alignment and visual weight. */

.tbl-top-nav,
.tbl-top-nav a {
	font-weight: var(--tbl-weight-strong);
}

.tbl-top-nav a {
	transition: opacity var(--tbl-duration-fast) var(--tbl-ease-out);
	opacity: .7;
}

.tbl-top-nav a:hover,
.tbl-top-nav a:focus-visible {
	opacity: 1;
}

.tbl[data-tilda-block="global-header"].is-legal-context .tbl-top-nav {
	color: var(--tbl-color-ink);
}

.tbl[data-tilda-block="global-header"].is-legal-context .tbl-top-nav::before {
	background: rgb(236 236 234 / 88%);
}

/* Story top controls align optically with the fixed nav. */

.tbl-adaptive-story__index li {
	padding: 0 .75rlh;
	display: inline-flex;
	align-items: center;
	font-size: .9rem;
	line-height: 1;
	font-weight: var(--tbl-weight-strong);
	opacity: .5;
	transition: opacity var(--tbl-duration-medium) var(--tbl-ease-out), background-color var(--tbl-duration-medium) var(--tbl-ease-out), color var(--tbl-duration-medium) var(--tbl-ease-out);
	border-radius: 999px;
	background: var(--tbl-fill-passive);
	min-height: 1.65rlh;
	padding-inline: .75rlh;
}

.tbl-adaptive-story__benefit-rail {
	grid-column: 1 / -1;
	grid-row: 3;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--tbl-grid-gap);
	align-items: start;
	position: relative;
	z-index: 4;
	padding-top: .5rlh;
	opacity: var(--tbl-story-chrome-opacity);
	transition: opacity var(--tbl-duration-medium) var(--tbl-ease-out);
	color: var(--tbl-story-chrome-color);
}

.tbl-adaptive-story__benefits {
	flex-wrap: wrap;
	justify-content: flex-start;
	grid-column: 8 / -1;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: .42rlh .5rlh;
	align-content: start;
}

.tbl-adaptive-story__benefits li {
	border-radius: var(--tbl-radius-label);
	background: color-mix(in srgb, currentColor 9%, transparent);
	height: 2.05rlh;
	min-height: 2.05rlh;
	padding: .3rlh .58rlh;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	font-size: .84rem;
	line-height: 1.12;
	font-weight: 475;
}

.tbl-adaptive-story__benefit-copy {
	max-inline-size: 42ch;
	display: grid;
	gap: .5rlh;
	line-height: 1.22;
	grid-column: 4 / span 4;
	padding-inline-end: var(--tbl-copy-inset);
}

.tbl-adaptive-story__stage.is-dark .tbl-adaptive-story__index li {
	background: var(--tbl-fill-passive-dark);
}

.tbl-adaptive-story__state--rest p,
.tbl-adaptive-story__state--rest h3 {
	color: rgb(220 216 210 / 94%);
}

/* Precise forward arrow: SVG geometry rotates, not a font glyph. */

.tbl-action__arrow {
	width: 1rem;
	height: 1rem;
	display: block;
	overflow: visible;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.55;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.tbl-action__icon--forward {
	transform: rotate(-45deg);
	transform-origin: center;
}

.tbl-action:hover .tbl-action__icon--forward,
.tbl-action:focus-visible .tbl-action__icon--forward {
	transform: rotate(0deg);
}

/*
Device covers use the same 12-column rails and corner/parallax gesture as
the homepage cover. Top corners never round.
*/

.tbl-device-page__hero {
	--tbl-device-parallax: 0px;
	--tbl-device-bg-parallax: 0px;
	--tbl-device-radius: 0px;
	position: relative;
	min-height: max(var(--tbl-block-min-height), 100dvh);
	padding: var(--tbl-section-padding-block) var(--tbl-page-padding) 1.5rlh;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-template-rows: auto minmax(0, 1fr) auto;
	column-gap: var(--tbl-grid-gap);
	row-gap: .75rlh;
	align-items: stretch;
	overflow: hidden;
	color: var(--tbl-color-on-dark);
	border-radius: 0 0 var(--tbl-device-radius) var(--tbl-device-radius);
}

.tbl-device-page__hero > .tbl-product-image {
	position: absolute;
	z-index: 0;
	inset: -7%;
	width: 114%;
	height: 114%;
	max-width: none;
	object-fit: cover;
	object-position: center top;
	transform: translate3d(0, var(--tbl-device-bg-parallax), 0) scale(1.08);
	transform-origin: center;
	will-change: transform;
}

.tbl-device-page__hero::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(180deg, rgb(0 0 0 / 8%), rgb(0 0 0 / 22%));
	pointer-events: none;
}

.tbl-device-page__brand {
	position: relative;
	z-index: 2;
	grid-column: 1 / span 4;
	grid-row: 1;
	top: auto;
	left: auto;
	align-self: start;
	display: inline-flex;
	align-items: center;
	gap: .5rlh;
	font-size: var(--tbl-type-body-size);
	transform: translate3d(0, var(--tbl-device-parallax), 0);
}

.tbl-device-page__heading {
	position: relative;
	z-index: 2;
	grid-column: 1 / span 7;
	grid-row: 3;
	align-self: end;
	display: grid;
	gap: 1rlh;
	transform: translate3d(0, var(--tbl-device-parallax), 0);
}

.tbl-device-page__heading > h1 {
	max-inline-size: 18ch;
	font-size: 4rem;
	line-height: .92;
	font-weight: var(--tbl-weight-h1);
}

.tbl-device-page__heading > p {
	max-inline-size: 38ch;
	color: rgb(255 255 255 / 88%);
	font-weight: var(--tbl-weight-medium);
}

.tbl-device-page__scroll {
	position: relative;
	z-index: 2;
	grid-column: 12;
	grid-row: 3;
	align-self: end;
	justify-self: end;
	right: auto;
	bottom: auto;
	width: 3rlh;
	height: 3rlh;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--tbl-fill-action-light);
	color: var(--tbl-color-ink);
	text-decoration: none;
	transform: translate3d(0, var(--tbl-device-parallax), 0) rotate(-45deg);
	transform-origin: center;
	transition: background-color var(--tbl-duration-medium) var(--tbl-ease-out), transform var(--tbl-duration-medium) var(--tbl-ease-out);
}

.tbl-device-page__scroll:hover,
.tbl-device-page__scroll:focus-visible {
	background: var(--tbl-fill-action-light-hover);
	transform: translate3d(0, var(--tbl-device-parallax), 0) rotate(0deg);
}

.tbl-device-page__scroll .tbl-action__arrow {
	width: 1rem;
	height: 1rem;
}

/* Device content is pinned to exactly the same document rails as Home. */

.tbl-device-page__body {
	width: 100%;
	padding: 3rlh 0;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--tbl-grid-gap);
	row-gap: 3rlh;
}

.tbl-device-page__body--block {
	padding-block: 1.5rlh;
}

.tbl-device-page__body--first {
	padding-top: 5rlh;
}

.tbl-device-page__body--last {
	padding-bottom: 3rlh;
}

.tbl-device-page__body > .tbl-device-page__intro {
	grid-column: 1 / span 8;
}

.tbl-device-page__intro > .tbl-flow-tail {
	max-width: var(--tbl-copy-measure);
}

.tbl-device-section-label {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .5rlh;
}

.tbl-device-page__brand .tbl-badge,
.tbl-device-section-label .tbl-badge {
	color: rgb(244 243 240);
	background: var(--tbl-color-dark);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.tbl-device-card--primary > :not(.tbl-device-section-label) {
	max-inline-size: 31ch;
}

.tbl[data-tilda-block="at-home-technology"] .tbl-device-card-stack .tbl-device-card > * {
	max-inline-size: 31ch;
}

.tbl-device-card--primary {
	grid-column: 1 / span 6;
	padding: 0;
	background: transparent;
	border-radius: 0;
}

/* FAQ: each item is one quiet passive card; plus/minus is actual inline SVG. */

.tbl-faq {
	display: grid;
	align-content: start;
	gap: .5rlh;
}

.tbl-faq > h3 {
	margin-bottom: .5rlh;
}

.tbl-faq-item {
	padding: .7rlh .85rlh;
	background: var(--tbl-fill-panel);
	border-radius: .8rlh;
}

.tbl-faq__question {
	width: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 1rem;
	gap: var(--tbl-grid-gap);
	align-items: start;
	color: inherit;
	text-align: left;
	cursor: pointer;
}

.tbl-faq__icon {
	width: 1rem;
	height: 1rem;
	display: block;
	justify-self: end;
	margin-top: .08em;
}

.tbl-faq__icon svg {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
}

.tbl-faq__icon-v {
	transform-origin: 9px 9px;
	transition: transform 480ms var(--tbl-ease-out), opacity 360ms var(--tbl-ease-out);
}

.tbl-faq-item.is-open .tbl-faq__icon-v {
	transform: scaleY(0);
	opacity: 0;
}

.tbl-faq__answer {
	height: 0;
	opacity: 0;
	overflow: hidden;
	transition: height 720ms var(--tbl-ease-out), opacity 460ms var(--tbl-ease-out);
}

.tbl-faq__answer > div {
	padding-top: .3rlh;
}

.tbl-faq-item.is-open .tbl-faq__answer {
	opacity: 1;
}

.tbl-faq__answer p {
	max-width: 34ch;
}

span.tbl-symbol.tbl-symbol--plusminus {
	position: relative;
	top: -0.12em;
	margin-right: 0.1em;
}

span.tbl-symbol.tbl-symbol--less {
	position: relative;
	top: -0.075em;
	margin-right: 0.15em;
}

span.tbl-symbol.tbl-symbol--times {
	position: relative;
	top: -0.1em;
}

/* Device CTA: slogan remains, no panel, content-width dark action. */

.tbl-device-page__cta {
	gap: var(--tbl-grid-gap);
	padding-top: 1rlh;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--tbl-grid-gap);
	align-items: center;
	background: transparent;
}

.tbl-device-page__cta > h3 {
	grid-column: 1 / span 6;
	font-size: var(--tbl-type-h3-size);
	line-height: var(--tbl-leading-h3);
	font-weight: var(--tbl-weight-medium);
}

.tbl-device-page__cta > .tbl-action {
	grid-column: 7 / -1;
	width: max-content;
	justify-self: end;
	grid-template-columns: 3rlh max-content;
}

/*
Footer meta: use an opaque quiet tone rather than fading the whole block;
this stays sharp over photography without shouting.
*/

.tbl-footer-meta {
	padding: 3rlh 0 0;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	row-gap: 1rlh;
	column-gap: var(--tbl-grid-gap);
	align-items: start;
	color: var(--tbl-color-ink);
}

.tbl-footer-note,
.tbl-footer-copyright {
	opacity: .4;
}

.tbl-footer .tbl-text-link {
	border-bottom: 0;
	padding-bottom: 0;
	font-weight: var(--tbl-weight-strong);
	color: var(--tbl-color-ink);
	opacity: .4;
	transition: opacity var(--tbl-duration-fast) var(--tbl-ease-out);
}

.tbl-footer .tbl-text-link:hover,
.tbl-footer .tbl-text-link:focus-visible {
	opacity: 1;
}

/* Legal header: brand/date share the exact centreline of the ordinary nav. */

.tbl-legal-header-root {
	position: fixed;
	z-index: 950;
	inset: 0 0 auto;
	min-height: 4rlh;
	padding: 0;
	background: transparent;
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--tbl-duration-fast) var(--tbl-ease-out);
}

.tbl-legal-header-root.is-active {
	opacity: 1;
}

.tbl-legal-header {
	font-family: var(--tbl-font-sans);
	letter-spacing: 0;
	min-height: 4rlh;
	padding: calc(var(--tbl-section-padding-block) - .55rlh) var(--tbl-page-padding) 0;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--tbl-grid-gap);
	align-items: start;
	color: var(--tbl-color-ink);
	font-size: var(--tbl-type-body-size);
	line-height: 1.2;
	font-weight: var(--tbl-weight-strong);
}

.tbl-legal-header .tbl-brand-lockup {
	min-height: 2rlh;
	display: flex;
	align-items: center;
	font: inherit;
	color: inherit;
	grid-column: 1 / span 4;
}

.tbl-legal-page__updated {
	align-self: flex-end;
	margin-bottom: 2rlh;
	font-size: var(--tbl-type-body-size);
	font-weight: var(--tbl-weight-strong);
	opacity: .7;
}

.tbl-legal-page {
	min-height: 100dvh;
	padding: 4rlh var(--tbl-page-padding) 5rlh;
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--tbl-grid-gap);
	color: var(--tbl-color-ink);
	background: var(--tbl-color-surface-muted);
	padding-top: 2rlh;
	grid-template-rows: auto auto;
	align-items: start;
}

.tbl-legal-page__rail {
	grid-column: 1 / span 3;
	grid-row: 1 / span 2;
	position: sticky;
	top: 5rlh;
	align-self: start;
	display: grid;
	gap: .55rlh;
	font-size: var(--tbl-type-body-size);
	font-weight: var(--tbl-weight-strong);
}

.tbl-legal-page__rail a {
	width: max-content;
	max-width: 100%;
	opacity: .7;
	text-decoration: none;
	transition: opacity var(--tbl-duration-fast) var(--tbl-ease-out);
}

.tbl-legal-page__rail a:hover,
.tbl-legal-page__rail a:focus-visible,
.tbl-legal-page__rail a.is-active {
	opacity: 1;
}

.tbl-legal-page__intro {
	min-height: 46dvh;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 1rlh;
	padding-bottom: 4rlh;
	grid-column: 8 / -1;
	grid-row: 1;
}

.tbl-legal-page__content {
	grid-column: 8 / -1;
	grid-row: 2;
}

.tbl-legal-page__content > .tbl-legal-section,
.tbl-legal-page__content > .tbl-legal-subsection {
	width: 100%;
	max-inline-size: none;
	font-size: var(--tbl-type-body-size);
	line-height: var(--tbl-leading-body);
	letter-spacing: var(--tbl-tracking-body);
	font-weight: var(--tbl-weight-strong);
}

.tbl-legal-page__content > .tbl-legal-section {
	max-inline-size: 30ch;
	font-size: var(--tbl-type-h3-size);
	line-height: var(--tbl-leading-h3);
	font-weight: var(--tbl-weight-strong);
	letter-spacing: var(--tbl-tracking-h3);
	scroll-margin-top: 4rlh;
	margin-top: 2rlh;
}

.tbl-legal-page__content > .tbl-legal-subsection {
	font-size: var(--tbl-type-body-size);
	line-height: var(--tbl-leading-body);
	font-weight: var(--tbl-weight-strong);
	letter-spacing: var(--tbl-tracking-body);
	scroll-margin-top: 4rlh;
	margin-top: 1rlh;
}

.tbl-legal-page__content > .tbl-legal-section + p,
.tbl-legal-page__content > .tbl-legal-subsection + p {
	margin-top: .35rlh;
}

.tbl-legal-page__content ul {
	list-style: none;
	padding-left: 0;
}

.tbl-legal-page__content p + ul {
	margin-top: 0;
}

.tbl-legal-page__content li {
	position: relative;
	padding-left: 1.1em;
}

.tbl-legal-page__content li::before {
	content: "—";
	position: absolute;
	left: 0;
	top: 0;
}

.tbl-legal-page__content li + li {
	margin-top: .2rlh;
}

.tbl-legal-page__content a {
	text-decoration-thickness: 1px;
	text-underline-offset: .16em;
	text-decoration: none;
	font-weight: var(--tbl-weight-medium);
	opacity: .72;
	transition: opacity var(--tbl-duration-fast) var(--tbl-ease-out);
}

.tbl-legal-page__content a:hover,
.tbl-legal-page__content a:focus-visible {
	opacity: 1;
}

/*
==========================================================================
RESPONSIVE SYSTEM / CANONICAL
One ordered cascade: desktop -> compact desktop -> tablet -> phone.
No historical mobile override stack remains below this point.
==========================================================================
*/

@media (max-width: 1279px) {
	:where(#adaptive-story, #options, #founder, #conversation, #at-home-content, #pro-content, #legal-page) {
		scroll-margin-top: 4rlh;
	}

	/* Compact menu is the only nav state below desktop. */
	.tbl-top-nav {
		--tbl-nav-button-size: 2rlh;
	}

	/* Story keeps three clear zones: copy / graphic / copy. */
	.tbl-adaptive-story__index {
		grid-column: 1 / span 6;
	}
	.tbl-adaptive-story__left {
		grid-column: 1 / span 3;
		max-inline-size: 22ch;
	}
	.tbl-adaptive-story__right {
		grid-column: 10 / -1;
		max-inline-size: 22ch;
	}
	.tbl-adaptive-story__visual {
		width: 10.4rlh;
		height: 10.4rlh;
	}
	.tbl-adaptive-story__benefit-rail > h2 {
		grid-column: 1 / span 3;
	}
	.tbl-adaptive-story__benefit-copy {
		grid-column: 4 / span 4;
		max-inline-size: 27ch;
	}
	.tbl-adaptive-story__benefits {
		grid-column: 8 / -1;
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	/* Buttons become slightly calmer before tablet widths. */
	.tbl-action:not(.tbl-form-submit) {
		height: 2.65rlh;
		grid-template-columns: 2.65rlh max-content;
	}
	.tbl-action:not(.tbl-form-submit) .tbl-action__icon {
		width: 2.65rlh;
		height: 2.65rlh;
	}
	.tbl-action:not(.tbl-form-submit) .tbl-action__label {
		padding-inline: 1.2rlh;
		border-radius: 1.35rlh;
		white-space: nowrap;
	}

	.tbl-founder-copy {
		max-inline-size: 35ch;
	}
	.tbl-device-page__heading {
		grid-column: 1 / span 7;
	}
	.tbl-device-page__heading > h1 {
		max-inline-size: 14ch;
	}
	.tbl-device-page__heading > p {
		max-inline-size: 32ch;
	}

	.tbl-legal-page__rail {
		grid-column: 1 / span 3;
	}
	.tbl-legal-page__intro,
	.tbl-legal-page__content {
		grid-column: 7 / -1;
	}
}

@media (max-width: 1099px) {
	/* Mid-size story: preserve air around the central diagram. */
	.tbl-adaptive-story__left {
		grid-column: 1 / span 3;
		max-inline-size: 20ch;
	}
	.tbl-adaptive-story__right {
		grid-column: 10 / -1;
		max-inline-size: 20ch;
	}
	.tbl-adaptive-story__visual {
		width: 9.4rlh;
		height: 9.4rlh;
	}

	.tbl-founder-identity {
		grid-column: 1 / span 4;
		grid-row: 1 / span 3;
	}
	.tbl-founder-copy--left {
		grid-column: 5 / -1;
		grid-row: 1;
	}
	.tbl-founder-copy--right {
		grid-column: 5 / -1;
		grid-row: 2;
		padding-top: 0;
	}
	.tbl-founder-action {
		grid-column: 5 / -1;
		grid-row: 3;
		justify-self: start;
	}

	/* Long device CTAs stop competing with their heading before they overflow. */
	.tbl-device-page__cta {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		row-gap: .75rlh;
	}
	.tbl-device-page__cta > h3 {
		grid-column: 1 / span 6;
		max-inline-size: 24ch;
	}
	.tbl-device-page__cta > .tbl-action {
		grid-column: 1 / -1;
		grid-row: 2;
		justify-self: start;
	}
}

@media (max-width: 979px) {
	.tbl {
		--tbl-page-padding: 1rlh;
		--tbl-grid-gap: .65rlh;
		--tbl-section-padding-inline: 1rlh;
		--tbl-radius-large: 1.25rlh;
		--tbl-radius-cover: 1.25rlh;
	}

	/* Anchors reserve their own two-row area; story copy starts below it. */
	.tbl-adaptive-story__index {
		grid-column: 1 / span 5;
		width: max-content;
		display: grid;
		grid-template-columns: max-content max-content;
		gap: .35rlh .45rlh;
		white-space: nowrap;
	}
	.tbl-adaptive-story__left {
		grid-column: 1 / span 3;
		max-inline-size: 18ch;
	}
	.tbl-adaptive-story__right {
		grid-column: 10 / -1;
		max-inline-size: 21ch;
		font-size: .88rem;
		line-height: 1.28;
	}
	.tbl-adaptive-story__visual {
		width: 8.6rlh;
		height: 8.6rlh;
	}
	.tbl-adaptive-story__benefit-rail > h2 {
		grid-column: 1 / span 3;
	}
	.tbl-adaptive-story__benefit-copy {
		grid-column: 4 / span 4;
	}
	.tbl-adaptive-story__benefits {
		grid-column: 8 / -1;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.tbl-interest {
		grid-template-columns: 1fr;
		align-items: start;
		gap: .45rlh;
	}
	.tbl-interest-options {
		width: 100%;
	}

	.tbl-device-page__heading {
		grid-column: 1 / span 8;
	}
	.tbl-device-page__heading > h1 {
		max-inline-size: 14ch;
	}
	.tbl-device-page__heading > p {
		max-inline-size: 34ch;
	}

	.tbl-legal-page__rail {
		grid-column: 1 / span 3;
	}
	.tbl-legal-page__intro,
	.tbl-legal-page__content {
		grid-column: 6 / -1;
	}
}

@media (max-width: 899px) {
	.tbl {
		--tbl-page-padding: .6rlh;
		--tbl-grid-gap: .45rlh;
		--tbl-section-gap: .45rlh;
		--tbl-section-padding-block: .85rlh;
		--tbl-section-padding-inline: .6rlh;
		--tbl-card-padding: .65rlh;
		--tbl-radius-large: 1rlh;
		--tbl-radius-cover: .9rlh;
		--tbl-type-body-size: .94rem;
		--tbl-type-h3-size: 1.15rem;
		--tbl-type-h2-size: 1.75rem;
		--tbl-type-h1-size: 3rem;
		--tbl-type-action-size: .68rem;
		--tbl-copy-inset: 0;
		min-width: 0;
	}

	.tbl-block-spacer {
		height: 1.5rlh;
	}

	/* Compact menu: button top-right; open state is a dedicated popover. */
	.tbl-top-nav {
		--tbl-nav-button-size: 2.05rlh;
		top: .6rlh;
		left: auto;
		right: .6rlh;
		width: var(--tbl-nav-button-size);
		max-width: calc(100vw - 1.2rlh);
		height: var(--tbl-nav-button-size);
		transform: none;
		margin: 0;
		overflow: hidden;
		transition: none;
	}
	.tbl-top-nav::before {
		opacity: 1;
	}
	.tbl-top-nav .tbl-top-nav__toggle {
		opacity: 1;
		pointer-events: auto;
		transform: translate(-50%, -50%) scale(1);
	}
	.tbl-top-nav.is-compact:not(.is-open) .tbl-top-nav__group {
		display: none;
	}
	.tbl-top-nav.is-compact.is-open {
		width: min(13.5rem, calc(100vw - 1.2rlh));
		height: auto;
		min-height: 0;
		padding: 2.05rlh .45rlh .45rlh;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: .05rlh;
		border-radius: .85rlh;
		overflow: hidden;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__group {
		position: static;
		width: 100%;
		height: auto;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: .02rlh;
		opacity: 1;
		overflow: visible;
		pointer-events: auto;
		transform: none;
		font-size: .86rem;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__group a {
		width: 100%;
		padding: .34rlh .45rlh;
		border-radius: .42rlh;
		text-align: left;
		line-height: 1.1;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__group a:hover,
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__group a:focus-visible {
		background: rgb(255 255 255 / 12%);
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__group--left,
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__group--right {
		margin: 0;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__toggle {
		position: absolute;
		top: .42rlh;
		right: .42rlh;
		left: auto;
		width: 1.35rlh;
		height: 1.35rlh;
		opacity: 1;
		pointer-events: auto;
		transform: none;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__glyph {
		position: relative;
		width: .68rlh;
		height: .68rlh;
		display: block;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__glyph > span {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 74%;
		transform-origin: center;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__glyph > span:nth-child(1) {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__glyph > span:nth-child(2) {
		opacity: 0;
	}
	.tbl-top-nav.is-compact.is-open .tbl-top-nav__glyph > span:nth-child(3) {
		transform: translate(-50%, -50%) rotate(-45deg);
	}

	/* One coherent mobile button scale. Form submit remains full-width. */
	.tbl-action:not(.tbl-form-submit),
	.tbl-action--compact:not(.tbl-form-submit) {
		width: max-content;
		max-width: 100%;
		height: 2.15rlh;
		grid-template-columns: 2.15rlh max-content;
		justify-self: start;
	}
	.tbl-action:not(.tbl-form-submit) .tbl-action__icon,
	.tbl-action--compact:not(.tbl-form-submit) .tbl-action__icon {
		width: 2.15rlh;
		height: 2.15rlh;
	}
	.tbl-action:not(.tbl-form-submit) .tbl-action__label,
	.tbl-action--compact:not(.tbl-form-submit) .tbl-action__label {
		min-width: 0;
		padding-inline: .72rlh;
		border-radius: 1.08rlh;
		font-size: var(--tbl-type-action-size);
		letter-spacing: .075em;
		white-space: nowrap;
	}
	.tbl-form-submit {
		width: 100%;
		height: 2.35rlh;
		grid-template-columns: 2.35rlh minmax(0, 1fr);
	}
	.tbl-form-submit .tbl-action__icon {
		width: 2.35rlh;
		height: 2.35rlh;
	}
	.tbl-form-submit .tbl-action__label {
		min-width: 0;
		padding-inline: .72rlh;
		border-radius: 1.175rlh;
		font-size: var(--tbl-type-action-size);
		white-space: nowrap;
	}

	/* Hero: title is independent from the grid and centred on the cover. */
	.tbl-hero {
		min-height: 100svh;
		padding: .6rlh;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		grid-template-rows: auto minmax(0, 1fr) auto;
		column-gap: .45rlh;
		row-gap: .55rlh;
	}
	.tbl-hero .tbl-brand-lockup {
		grid-column: 1 / span 3;
		grid-row: 1;
		padding-right: 2.8rlh;
		font-size: .82rem;
		z-index: 3;
	}
	.tbl-hero-content {
		position: absolute;
		z-index: 1;
		grid-column: 1 / -1;
		grid-row: 1 / -1;
		left: 50%;
		top: 50%;
		width: calc(100% - 1.2rlh);
		transform: translate(-50%, -50%);
		text-align: center;
	}
	.tbl .tbl-hero-title {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		font-size: clamp(3rem, 11vw, 4.25rem);
		line-height: .82;
		text-align: center;
	}
	.tbl-hero .tbl-tagline {
		padding-top: .4rlh;
		font-size: 1.18rem;
		text-align: center;
	}
	.tbl-previews {
		position: absolute;
		z-index: 2;
		top: 3.15rlh;
		right: .6rlh;
		width: min(9rem, 48vw);
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: .35rlh;
		margin: 0;
	}
	.tbl-preview {
		aspect-ratio: 5 / 7;
		border-radius: .38rlh;
	}
	.tbl-preview-content {
		padding: .3rlh;
	}
	.tbl-preview-label {
		font-size: .7rem;
	}
	.tbl-preview:hover,
	.tbl-preview:focus-visible {
		transform: none;
	}
	.tbl-hero-intro {
		grid-column: 3 / -1;
		grid-row: 3;
		align-self: end;
		display: grid;
		grid-template-columns: 1fr;
		gap: .3rlh;
		max-width: 27ch;
		justify-self: end;
		padding: 0;
		font-size: .88rem;
		line-height: 1.34;
		transform: none;
	}
	.tbl-hero-actions {
		grid-column: 1 / span 2;
		grid-row: 3;
		align-self: end;
		transform: none;
	}
	.tbl-hero .tbl-brand-lockup,
	.tbl-hero-intro,
	.tbl-hero-actions {
		transform: none;
	}
	.tbl-hero::before {
		transform: scale(1.08);
	}

	/* Compact story: anchors own the top band; all copy starts below it. */
	.tbl[data-tilda-block="home-adaptive-story"] {
		padding-inline: 0;
		overflow: clip;
	}
	.tbl-adaptive-story {
		min-height: 680svh;
		width: 100%;
		overflow: visible;
	}
	.tbl-adaptive-story__anchor--change {
		top: 0;
	}
	.tbl-adaptive-story__anchor--cellular {
		top: 224svh;
	}
	.tbl-adaptive-story__anchor--adaptation {
		top: 336svh;
	}
	.tbl-adaptive-story__anchor--reasons {
		top: 448svh;
	}
	.tbl-adaptive-story__anchor--rest,
	.tbl-adaptive-story__anchor--experience {
		top: 560svh;
	}
	.tbl-adaptive-story__stage {
		position: sticky;
		top: 0;
		width: 100%;
		height: 100svh;
		min-height: 34rem;
		overflow: hidden;
		border-radius: 0;
	}
	.tbl-adaptive-story__content {
		--tbl-story-index-top: .6rlh;
		--tbl-story-index-gap: .62rlh;
		--tbl-story-index-h: 2.7rlh;
		position: relative;
		width: 100%;
		height: 100%;
		padding: .6rlh;
		display: block;
	}
	.tbl-adaptive-story__index {
		position: absolute;
		z-index: 30;
		top: var(--tbl-story-index-top);
		left: .6rlh;
		width: max-content;
		max-width: calc(100% - 3.5rlh);
		display: grid;
		grid-template-columns: max-content max-content;
		gap: .28rlh .38rlh;
		white-space: nowrap;
		color: var(--tbl-story-chrome-color);
	}
	.tbl-adaptive-story__index li {
		min-height: 1.25rlh;
		padding-inline: .42rlh;
		font-size: .66rem;
	}
	.tbl-adaptive-story__states {
		position: absolute;
		top: calc(var(--tbl-story-index-top) + var(--tbl-story-index-h) + var(--tbl-story-index-gap));
		right: .6rlh;
		bottom: .6rlh;
		left: .6rlh;
		min-height: 0;
	}
	.tbl-adaptive-story__visual {
		position: absolute;
		z-index: 0;
		left: 50%;
		top: 51%;
		width: min(42vw, 7.6rlh);
		height: min(42vw, 7.6rlh);
		transform: translate(-50%, -50%) scale(var(--tbl-story-visual-scale));
	}
	.tbl-adaptive-story__state,
	.tbl-adaptive-story__state.is-active {
		position: absolute;
		inset: 0;
		width: 100%;
		min-height: 0;
		padding: 0;
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		grid-template-rows: auto minmax(0, 1fr) auto;
		gap: .4rlh;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}
	.tbl-adaptive-story__state.is-active {
		visibility: visible;
	}
	.tbl-adaptive-story__left,
	.tbl-adaptive-story__right {
		max-inline-size: none;
		text-align: left;
	}
	.tbl-adaptive-story__left {
		grid-column: 1 / span 2;
		grid-row: 1;
		align-self: start;
		padding: 0;
		max-inline-size: 16ch;
	}
	.tbl-adaptive-story__right {
		grid-column: 3 / -1;
		grid-row: 3;
		align-self: end;
		justify-self: end;
		padding: 0;
		max-inline-size: 23ch;
	}
	.tbl-adaptive-story__phase-title {
		max-inline-size: 10ch;
		font-size: 1.65rem;
	}
	.tbl-adaptive-story__state--rest .tbl-adaptive-story__left {
		grid-column: 1 / -1;
		max-inline-size: 19ch;
		gap: .3rlh;
		font-size: .8rem;
	}
	.tbl-adaptive-story__state--rest .tbl-adaptive-story__left h2 {
		max-inline-size: 10ch;
		font-size: 1.55rem;
	}
	.tbl-adaptive-story__state--rest .tbl-adaptive-story__right {
		grid-column: 1 / -1;
		width: 100%;
		max-inline-size: none;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: .45rlh;
		font-size: .68rem;
	}
	.tbl-adaptive-story__state--rest .tbl-adaptive-story__right h3 {
		font-size: .95rem;
	}
	.tbl-adaptive-story__rest-signals > div {
		padding-top: .25rlh;
	}
	.tbl-adaptive-story__benefit-rail {
		position: absolute;
		z-index: 10;
		top: calc(var(--tbl-story-index-top) + var(--tbl-story-index-h) + var(--tbl-story-index-gap));
		right: .6rlh;
		bottom: .6rlh;
		left: .6rlh;
		margin: 0;
		padding: 0;
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		grid-template-rows: auto auto minmax(0, 1fr);
		gap: .5rlh .4rlh;
		align-content: start;
		color: var(--tbl-story-chrome-color);
		background: transparent;
		opacity: var(--tbl-story-benefit-opacity, 0);
		visibility: var(--tbl-story-benefit-visibility, hidden);
		pointer-events: none;
	}
	.tbl-adaptive-story__benefit-rail > h2 {
		grid-column: 1 / -1;
		max-inline-size: 12ch;
		font-size: 1.55rem;
	}
	.tbl-adaptive-story__benefit-copy {
		grid-column: 1 / -1;
		max-inline-size: 29ch;
		padding: 0;
		gap: .32rlh;
		font-size: .82rem;
	}
	.tbl-adaptive-story__benefits {
		grid-column: 1 / -1;
		align-self: end;
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: .2rlh;
	}
	.tbl-adaptive-story__benefits li {
		width: 100%;
		min-height: 1.42rlh;
		padding: .22rlh .38rlh;
		font-size: .64rem;
		line-height: 1.12;
	}

	/* Options: dark title band -> edge-to-edge cards -> light surface. */
	.tbl[data-tilda-block="home-options"] {
		padding-inline: 0;
		background: var(--tbl-color-surface-muted);
	}
	.tbl-options {
		min-height: 0;
		padding: 0;
	}
	.tbl-options-scene {
		width: 100%;
		height: auto;
		display: grid;
		grid-template-rows: auto auto;
		transform: none;
	}
	.tbl-options-scene > header {
		min-height: 0;
		padding: 1.4rlh .6rlh 1.25rlh;
		justify-content: flex-start;
		text-align: left;
		background: var(--tbl-color-dark);
	}
	.tbl-options-scene > header h2 {
		max-inline-size: 14ch;
		white-space: normal;
		text-align: left;
		font-size: 1.65rem;
		color: var(--tbl-color-white);
	}
	.tbl-product-stage {
		width: 100%;
		height: auto;
		min-height: 0;
		display: grid;
		grid-template-columns: 1fr;
		gap: .5rlh;
		overflow: visible;
		border-radius: 0;
		background: var(--tbl-color-surface-muted);
	}
	.tbl-product-stage > .tbl-product {
		grid-column: 1;
		width: 100%;
		height: min(78svh, 31rem);
		min-height: 25rem;
		border-radius: .75rlh;
	}
	.tbl-product > .tbl-product-image {
		display: block;
		opacity: 1;
	}
	.tbl-product-name,
	.tbl-product:first-child .tbl-product-name,
	.tbl-product:last-child .tbl-product-name {
		top: .75rlh;
		height: auto;
		padding: 0 .75rlh;
		justify-content: flex-start;
		text-align: left;
	}
	.tbl-product-content,
	.tbl-product:first-child .tbl-product-content,
	.tbl-product:last-child .tbl-product-content {
		padding: .75rlh;
		align-items: flex-start;
		text-align: left;
	}
	.tbl-product-content h3 {
		max-inline-size: 14ch;
		font-size: 1.48rem;
	}
	.tbl-product:last-child .tbl-product-content .tbl-action {
		align-self: flex-start;
	}

	/* Founder uses one readable story column beside identity. */
	.tbl-founder {
		padding-bottom: 0;
	}
	.tbl-founder-split-layout {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: .45rlh;
		row-gap: 1.2rlh;
	}
	.tbl-founder-identity {
		grid-column: 1 / span 2;
		grid-row: 1 / span 2;
	}
	.tbl-founder-copy--left {
		grid-column: 3 / -1;
		grid-row: 1;
	}
	.tbl-founder-copy--right {
		grid-column: 3 / -1;
		grid-row: 2;
		padding-top: 0;
	}
	.tbl-founder-action {
		grid-column: 3 / -1;
		grid-row: 3;
		justify-self: start;
	}
	.tbl-founder-media {
		width: 5.5rlh;
	}
	.tbl-founder-copy {
		max-inline-size: 32ch;
	}

	/* Footer keeps every field inside one explicit content rail. */
	.tbl-footer {
		width: 100%;
		min-height: 0;
		padding: 1.7rlh .6rlh .6rlh;
		border-radius: .9rlh .9rlh 0 0;
		overflow: hidden;
	}
	.tbl-contact {
		min-width: 0;
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 1.5rlh .45rlh;
	}
	.tbl-contact > header,
	.tbl-contact > form,
	.tbl-contact > .tbl-tagline,
	.tbl-contact > .tbl-brand-lockup {
		grid-column: 1 / -1;
		grid-row: auto;
		justify-self: stretch;
		min-width: 0;
	}
	.tbl-contact > header h2 {
		max-inline-size: 13ch;
		font-size: 1.7rem;
	}
	.tbl-contact > header .tbl-flow-tail {
		max-inline-size: 31ch;
	}
	.tbl-form {
		min-width: 0;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		row-gap: 1rlh;
		column-gap: .45rlh;
	}
	.tbl-field--name {
		grid-column: 1 / span 2;
	}
	.tbl-field--email {
		grid-column: 3 / -1;
	}
	.tbl-field--message,
	.tbl-form-actions {
		grid-column: 1 / -1;
	}
	.tbl-field,
	.tbl-field input,
	.tbl-field textarea {
		min-width: 0;
		width: 100%;
	}
	.tbl-interest {
		grid-column: 1 / -1;
		min-width: 0;
		display: grid;
		grid-template-columns: max-content minmax(0, 1fr);
		align-items: center;
		gap: .45rlh;
	}
	.tbl-interest-options {
		width: 100%;
		min-width: 0;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: .08rlh;
		padding: .08rlh;
	}
	.tbl-interest-options label {
		min-width: 0;
	}
	.tbl-interest-options label > span {
		width: 100%;
		min-width: 0;
		padding-inline: .18rlh;
		font-size: .67rem;
		white-space: nowrap;
		text-align: center;
	}
	.tbl-field--message > textarea {
		min-height: 4.5rlh;
	}
	.tbl-footer-meta {
		padding-top: 1.5rlh;
		grid-template-columns: 1fr;
		row-gap: .6rlh;
		color: var(--tbl-color-ink);
		opacity: .4;
	}
	.tbl-footer-note,
	.tbl-footer-copyright,
	.tbl-footer-legal,
	.tbl-footer-madeby {
		grid-column: 1;
		grid-row: auto;
		justify-self: start;
		text-align: left;
	}

	/* Device covers: same compact rails, reduced corner radius, CTA stacks. */
	.tbl[data-tilda-page="/at-home"],
	.tbl[data-tilda-page="/pro"],
	.tbl[data-tilda-page="/legal"] {
		overflow-x: clip;
	}
	.tbl-device-page__hero {
		min-height: 100svh;
		padding: .6rlh;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		grid-template-rows: auto minmax(0, 1fr) auto;
		column-gap: .45rlh;
		row-gap: .55rlh;
	}
	.tbl-device-page__brand {
		grid-column: 1 / span 3;
		grid-row: 1;
		font-size: .82rem;
		padding-right: 2.7rlh;
	}
	.tbl-device-page__heading {
		grid-column: 1 / span 3;
		grid-row: 3;
		align-self: end;
		max-width: none;
		gap: .5rlh;
	}
	.tbl-device-page__heading > h1 {
		max-inline-size: 11ch;
		font-size: 2.45rem;
	}
	.tbl-device-page__heading > p {
		max-inline-size: 28ch;
		font-size: .86rem;
	}
	.tbl-device-page__scroll {
		grid-column: 4;
		grid-row: 3;
		align-self: end;
		justify-self: end;
		width: 2.15rlh;
		height: 2.15rlh;
		margin: 0;
	}
	.tbl-device-page__body {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: .45rlh;
		padding-inline: 0;
		padding-block: 1.7rlh;
	}
	.tbl-device-page__body > .tbl-device-page__intro,
	.tbl-device-card-grid,
	.tbl-device-page__body > .tbl-faq,
	.tbl-device-page__body > .tbl-specifications {
		grid-column: 1 / -1;
	}
	.tbl-device-page__intro > h2 {
		max-inline-size: 19ch;
	}
	.tbl-device-page__intro > .tbl-flow-tail,
	.tbl-device-card p,
	.tbl-device-card dd,
	.tbl-device-page__body p,
	.tbl-device-page__body dd {
		max-inline-size: 36ch;
	}
	.tbl-device-card-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: .7rlh .45rlh;
	}
	.tbl-device-card--primary {
		grid-column: 1 / span 2;
	}
	.tbl-device-card-stack {
		grid-column: 3 / -1;
		gap: .8rlh;
	}
	.tbl-device-page__cta {
		grid-template-columns: 1fr;
		row-gap: .6rlh;
		align-items: start;
	}
	.tbl-device-page__cta > h3,
	.tbl-device-page__cta > .tbl-action {
		grid-column: 1;
		justify-self: start;
	}
	.tbl-device-page__cta > h3 {
		max-inline-size: 26ch;
	}
	.tbl-device-page__cta .tbl-action__label {
		font-size: .63rem;
		letter-spacing: .055em;
		padding-inline: .55rlh;
	}

	/* Legal fixed layer contains only the brand. Last updated is normal content. */
	.tbl-legal-header-root {
		min-height: 2.55rlh;
		transition: none;
	}
	.tbl-legal-header-root.is-active,
	.tbl-legal-header {
		background: var(--tbl-color-surface-muted);
	}
	.tbl-legal-header {
		min-height: 2.55rlh;
		padding: .58rlh 3.25rlh .35rlh .6rlh;
		display: block;
		font-size: .73rem;
		line-height: 1.15;
	}
	.tbl-legal-header .tbl-brand-lockup {
		min-height: auto;
	}
	.tbl[data-tilda-block="legal-page"] {
		padding-inline: 0;
	}
	.tbl-legal-page {
		grid-template-columns: 1fr;
		padding: 3.25rlh .6rlh 3rlh;
	}
	.tbl-legal-page__rail {
		position: static;
		grid-column: 1;
		grid-row: auto;
		margin-bottom: 1.5rlh;
		gap: .38rlh;
	}
	.tbl-legal-page__intro,
	.tbl-legal-page__content {
		grid-column: 1;
		grid-row: auto;
		max-width: 100%;
	}
	.tbl-legal-page__intro {
		min-height: auto;
		padding-bottom: 2rlh;
	}
	.tbl-legal-page__updated {
		margin-bottom: 1.2rlh;
		font-size: .82rem;
		font-weight: var(--tbl-weight-strong);
		opacity: .72;
	}
	.tbl-legal-page__intro h1 {
		font-size: 2.35rem;
	}
}

@media (max-width: 639px) {
	.tbl {
		--tbl-page-padding: .5rlh;
		--tbl-section-padding-inline: .5rlh;
		--tbl-type-body-size: .92rem;
		--tbl-type-h3-size: 1.08rem;
		--tbl-type-h2-size: 1.62rem;
		--tbl-type-h1-size: 2.7rem;
		--tbl-type-action-size: .64rem;
	}

	.tbl-action:not(.tbl-form-submit),
	.tbl-action--compact:not(.tbl-form-submit) {
		height: 2.02rlh;
		grid-template-columns: 2.02rlh max-content;
	}
	.tbl-action:not(.tbl-form-submit) .tbl-action__icon,
	.tbl-action--compact:not(.tbl-form-submit) .tbl-action__icon {
		width: 2.02rlh;
		height: 2.02rlh;
	}
	.tbl-action:not(.tbl-form-submit) .tbl-action__label,
	.tbl-action--compact:not(.tbl-form-submit) .tbl-action__label {
		padding-inline: .58rlh;
		border-radius: 1.01rlh;
	}
	.tbl-form-submit {
		height: 2.08rlh;
		grid-template-columns: 2.08rlh minmax(0, 1fr);
	}
	.tbl-form-submit .tbl-action__icon {
		width: 2.08rlh;
		height: 2.08rlh;
	}
	.tbl-form-submit .tbl-action__label {
		border-radius: 1.04rlh;
		padding-inline: .58rlh;
	}

	.tbl-hero {
		padding: .5rlh;
		grid-template-rows: auto minmax(0, 1fr) auto auto;
	}
	.tbl-hero .tbl-brand-lockup {
		font-size: .76rem;
		padding-right: 2.6rlh;
	}
	.tbl .tbl-hero-title {
		font-size: clamp(2.85rem, 15vw, 3.55rem);
	}
	.tbl-hero .tbl-tagline {
		font-size: 1.08rem;
	}
	.tbl-previews {
		top: 3.35rlh;
		right: .5rlh;
		width: min(8.5rem, 55vw);
		align-items: start;
	}
	.tbl-preview {
		display: grid;
		grid-template-rows: auto auto;
		gap: .18rlh;
		aspect-ratio: auto;
		overflow: visible;
		border-radius: 0;
		background: transparent;
	}
	.tbl-preview > .tbl-product-image {
		position: relative;
		inset: auto;
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 5 / 7;
		border-radius: .38rlh;
		object-fit: cover;
	}
	.tbl-preview-content {
		position: static;
		inset: auto;
		display: block;
		min-width: 0;
		padding: .08rlh 0 0;
		color: var(--tbl-color-white);
		background: none;
		text-align: center;
	}
	.tbl-preview-label {
		display: block;
		font-size: .68rem;
		line-height: 1.1;
		font-weight: var(--tbl-weight-medium);
	}
	.tbl-hero-intro {
		grid-column: 1 / -1;
		grid-row: 3;
		justify-self: start;
		max-width: 30ch;
		font-size: .84rem;
	}
	.tbl-hero-actions {
		grid-column: 1 / -1;
		grid-row: 4;
		margin-top: .25rlh;
	}

	.tbl-adaptive-story__content {
		--tbl-story-index-top: .5rlh;
		--tbl-story-index-gap: .62rlh;
	}
	.tbl-adaptive-story__states,
	.tbl-adaptive-story__benefit-rail {
		right: .5rlh;
		bottom: .65rlh;
		left: .5rlh;
	}
	.tbl-adaptive-story__visual {
		top: 48%;
		width: min(55vw, 7.15rlh);
		height: min(55vw, 7.15rlh);
	}
	.tbl-adaptive-story__left {
		grid-column: 1 / -1;
		max-inline-size: 17ch;
	}
	.tbl-adaptive-story__right {
		grid-column: 1 / -1;
		justify-self: start;
		max-inline-size: 29ch;
	}
	.tbl-adaptive-story__state--rest .tbl-adaptive-story__left {
		max-inline-size: 20ch;
		font-size: .76rem;
	}
	.tbl-adaptive-story__state--rest .tbl-adaptive-story__right {
		font-size: .65rem;
		gap: .35rlh;
	}
	.tbl-adaptive-story__benefit-copy {
		font-size: .78rem;
	}
	.tbl-adaptive-story__benefits li {
		font-size: .64rem;
	}
	.tbl-adaptive-story__state > .tbl-adaptive-story__left > h2,
	.tbl-adaptive-story__benefit-rail > h2 {
		margin-top: .1rlh;
	}

	.tbl-product-stage {
		row-gap: 0;
	}
	.tbl-product-name .tbl-badge {
		display: none;
	}
	.tbl-product-mobile-edition {
		display: inline-flex;
		width: max-content;
		min-height: 1.35rlh;
		margin: .28rlh .5rlh .62rlh;
		padding: .24rlh .5rlh;
		align-items: center;
		justify-content: center;
		color: var(--tbl-color-ink);
		background: var(--tbl-color-passive-label);
		border-radius: var(--tbl-radius-label);
		font-size: .72rem;
		line-height: 1;
		font-weight: 475;
		text-align: left;
	}

	/* One-row selector even on narrow phones. */
	.tbl-contact {
		grid-template-columns: 1fr;
		gap: 1.2rlh;
	}
	.tbl-contact > header,
	.tbl-contact > form,
	.tbl-contact > .tbl-tagline,
	.tbl-contact > .tbl-brand-lockup {
		grid-column: 1;
	}
	.tbl-contact > header h2 {
		max-inline-size: 12ch;
	}
	.tbl-contact > header .tbl-flow-tail {
		max-inline-size: 34ch;
	}
	.tbl-form {
		grid-template-columns: 1fr;
		row-gap: .9rlh;
	}
	.tbl-field--name,
	.tbl-field--email,
	.tbl-field--message,
	.tbl-interest,
	.tbl-form-actions {
		grid-column: 1;
	}
	.tbl-interest {
		grid-template-columns: max-content minmax(0, 1fr);
		gap: .32rlh;
		align-items: center;
	}
	.tbl-interest-options {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.tbl-interest-options label > span {
		padding-inline: .08rlh;
		font-size: .61rem;
		white-space: nowrap;
	}

	.tbl-founder-split-layout {
		grid-template-columns: 1fr;
	}
	.tbl-founder-identity,
	.tbl-founder-copy--left,
	.tbl-founder-copy--right,
	.tbl-founder-action {
		grid-column: 1;
		grid-row: auto;
	}
	.tbl-founder-copy {
		max-inline-size: 34ch;
	}

	.tbl-device-page__hero {
		padding: .5rlh;
	}
	.tbl-device-page__brand {
		font-size: .76rem;
	}
	.tbl-device-page__heading {
		grid-column: 1 / -1;
		padding-right: 2.55rlh;
	}
	.tbl-device-page__heading > h1 {
		max-inline-size: 15ch;
		font-size: 2.22rem;
	}
	.tbl-device-page__heading > p {
		max-inline-size: 27ch;
		font-size: .82rem;
	}
	.tbl-device-page__scroll {
		width: 2.02rlh;
		height: 2.02rlh;
	}
	.tbl-device-card-grid {
		grid-template-columns: 1fr;
		row-gap: 1.25rlh;
	}
	.tbl-device-card--primary,
	.tbl-device-card-stack {
		grid-column: 1;
	}
	.tbl-device-page__intro > h2 {
		max-inline-size: 17ch;
	}
	.tbl-device-page__cta .tbl-action__label {
		font-size: .59rem;
		letter-spacing: .04em;
		padding-inline: .4rlh;
	}

	.tbl-legal-header-root,
	.tbl-legal-header {
		min-height: 2.05rlh;
	}
	.tbl-legal-header {
		padding: .38rlh 3rlh .22rlh .5rlh;
		font-size: .7rem;
	}
	.tbl-legal-page {
		padding: 3rlh .5rlh 2.5rlh;
	}
	.tbl-legal-page__intro h1 {
		font-size: 2.15rem;
	}
}

@media (max-width: 480px) {
	.tbl {
		--tbl-type-body-size: .9rem;
		--tbl-type-h2-size: 1.55rem;
		--tbl-type-h1-size: 2.55rem;
		--tbl-type-action-size: .62rem;
	}
	.tbl-top-nav {
		right: .5rlh;
		top: .5rlh;
	}
	.tbl-top-nav.is-compact.is-open {
		right: .5rlh;
		width: min(12.75rem, calc(100vw - 1rlh));
	}
	.tbl-previews {
		width: min(8rem, 58vw);
	}
	.tbl .tbl-hero-title {
		font-size: clamp(2.75rem, 15vw, 3.35rem);
	}

	.tbl-adaptive-story__index {
		left: .5rlh;
		top: var(--tbl-story-index-top);
	}
	.tbl-adaptive-story__states,
	.tbl-adaptive-story__benefit-rail {
		bottom: .6rlh;
	}
	.tbl-adaptive-story__phase-title {
		font-size: 1.52rem;
	}
	.tbl-adaptive-story__benefit-rail > h2 {
		font-size: 1.45rem;
	}

	.tbl-product-stage > .tbl-product {
		height: min(76svh, 28rem);
		min-height: 23rem;
		border-radius: .6rlh;
	}
	.tbl-product-content h3 {
		font-size: 1.4rem;
	}

	.tbl-footer {
		padding-inline: .5rlh;
	}
	.tbl-interest {
		gap: .24rlh;
	}
	.tbl-interest-options label > span {
		font-size: .58rem;
	}

	.tbl-device-page__heading > h1 {
		font-size: 2.08rem;
	}
	.tbl-device-page__cta .tbl-action__label {
		font-size: .565rem;
		padding-inline: .32rlh;
	}
}

@media (max-width: 360px) {
	.tbl {
		--tbl-type-body-size: .88rem;
		--tbl-type-h2-size: 1.48rem;
		--tbl-type-action-size: .64rem;
	}
	.tbl-interest {
		grid-template-columns: 1fr;
		gap: .32rlh;
	}
	.tbl-interest-options label > span {
		font-size: .62rem;
	}
	.tbl-hero .tbl-brand-lockup {
		font-size: .7rem;
	}
	.tbl-previews {
		width: min(7.5rem, 58vw);
	}
	.tbl-preview-label {
		font-size: .64rem;
	}
	.tbl .tbl-hero-title {
		font-size: clamp(2.65rem, 15vw, 3.15rem);
	}
	.tbl-hero-intro {
		font-size: .8rem;
	}
	.tbl-adaptive-story__index li {
		font-size: .62rem;
	}
	.tbl-adaptive-story__visual {
		top: 46%;
		width: min(50vw, 5.8rlh);
		height: min(50vw, 5.8rlh);
	}
	.tbl-adaptive-story__benefits li {
		font-size: .61rem;
	}
	.tbl-device-page__heading > h1 {
		font-size: 1.95rem;
	}
	.tbl-device-page__cta .tbl-action__label {
		font-size: .62rem;
		letter-spacing: .025em;
	}
}

@media (max-width: 899px) and (max-height: 600px) {
	.tbl-hero {
		min-height: 38rem;
	}
	.tbl-adaptive-story__stage {
		min-height: 34rem;
	}
	.tbl-product-stage > .tbl-product {
		min-height: 30rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.tbl-preview,
	.tbl-product > .tbl-product-image {
		transition: none;
	}

	.tbl-adaptive-story__ring--core::before,
	.tbl-adaptive-story__ring--hypoxia svg {
		animation: none;
	}

	.tbl-top-nav,
	.tbl-action__label,
	.tbl-action__icon,
	.tbl-interest-options label > span,
	.tbl-faq__answer,
	.tbl-faq__icon-v,
	.tbl-adaptive-story__index li,
	.tbl-adaptive-story__benefit-rail,
	.tbl-footer .tbl-text-link,
	.tbl-legal-page__rail a,
	.tbl-legal-page__content a {
		transition: none;
	}

	.tbl-hero .tbl-brand-lockup,
	.tbl-hero-intro,
	.tbl-hero-actions,
	.tbl-hero::before,
	.tbl-options-scene,
	.tbl-footer::before {
		transform: none;
	}

}