/**
 * The Lending Institute — v2 design system.
 * Values lifted from Website Design - v2. Do not round them.
 */

:root {
	--navy-900: #020c1f;
	--navy-800: #03122a;
	--navy-700: #04162e;
	--navy-600: #062245;
	--navy-500: #0a2e5e;
	--gold-700: #a87f26;
	--gold-500: #d3a542;
	--gold-300: #e3b863;
	--teal-700: #0e8f8c;
	--teal-500: #14a99c;
	--teal-300: #3fc9bb;
	--ivory: #fbfaf6;

	--bg: #fbfaf6;
	--bg-2: #f1f4f8;
	--surface: #ffffff;
	--surface-2: #f7f9fc;
	--field: #ffffff;

	--ink: #0a2e5e;
	--ink-2: #3e5372;
	--ink-3: #8496ac;
	--hair: rgba(10, 46, 94, 0.14);
	--hair-2: rgba(10, 46, 94, 0.07);

	--deep: #0a2e5e;
	--deep-2: #062245;
	--deep-3: #03122a;
	--deep-4: #020c1f;
	--on-deep: #e8eff8;
	--on-deep-2: rgba(232, 239, 248, 0.66);
	--on-deep-3: rgba(232, 239, 248, 0.4);
	--deep-hair: rgba(232, 239, 248, 0.16);
	--deep-hair-2: rgba(232, 239, 248, 0.08);

	--gold: #a87f26;
	--gold-bright: #d3a542;
	--gold-soft: rgba(211, 165, 66, 0.14);
	--gold-on-deep: #dcb55c;
	--teal: #0e8f8c;
	--teal-bright: #14a99c;
	--teal-soft: rgba(20, 169, 156, 0.12);
	--teal-hair: rgba(20, 169, 156, 0.34);
	--on-gold: #08213f;
	--on-teal: #04231f;
	--positive: #3e9b6b;
	--negative: #b4553f;
	--track: rgba(10, 46, 94, 0.14);

	--font-display: "Archivo", ui-sans-serif, system-ui, sans-serif;
	--font-body: "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
	--weight-display: 640;
	--weight-semi: 600;
	--weight-mark: 680;
	--weight-body: 400;

	--size-h1: clamp(46px, 5.1vw, 78px);
	--size-h2: clamp(34px, 3.5vw, 52px);
	--size-h2-sm: clamp(34px, 3.5vw, 50px);
	--size-h3: clamp(28px, 2.7vw, 38px);
	--size-figure-xl: clamp(52px, 5.4vw, 76px);
	--size-figure-lg: clamp(46px, 4.6vw, 64px);
	--size-article: clamp(26px, 2.4vw, 34px);
	--size-body-lg: 16.5px;
	--size-body: 15.5px;
	--size-eyebrow: 10.5px;
	--lh-display: 1.02;
	--lh-body: 1.62;
	--lh-prose: 1.68;
	--track-display: -0.03em;
	--track-heading: -0.024em;
	--track-figure: -0.035em;
	--track-eyebrow: 0.22em;

	--space-4: 8px;
	--space-6: 12px;
	--space-7: 14px;
	--gap-lg: 72px;
	--gap-md: 52px;
	--pad-card: 36px;
	--section-y: clamp(76px, 7vw, 120px);
	--pad-row: 26px 0;
	--pad-field: 12px 14px;

	--shell: min(1280px, calc(100% - 56px));
	--hdr-h: 92px;
	--logo-h: 54px;
	--radius: 2px;
	--radius-card: 3px;
	--tap-min: 44px;
	--icon-btn: 34px;
	--tap: 44px;

	--cols-hero: minmax(0, 1.08fr) minmax(0, 0.92fr);
	--cols-2: minmax(0, 1fr) minmax(0, 1fr);
	--cols-2b: minmax(0, 0.86fr) minmax(0, 1.14fr);
	--cols-2c: minmax(0, 1.12fr) minmax(0, 0.88fr);
	--cols-3: repeat(3, minmax(0, 1fr));
	--cols-4: repeat(4, minmax(0, 1fr));
	--cols-5: repeat(5, minmax(0, 1fr));
	--cols-6: repeat(6, minmax(0, 1fr));
	--cols-goal: repeat(3, minmax(0, 1fr));
	--cols-calc: minmax(0, 0.94fr) minmax(0, 1.06fr);
	--cols-footer: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr));
	--foot-main: minmax(0, 1.25fr) minmax(0, 2.4fr);
	--foot-links: repeat(3, minmax(0, 1fr));
	--nav-flex: flex;
	--burger: none;
	--hide-sm: block;
	--hide-sm-flex: flex;
	--hero-art: block;
	--step-rail: block;
	--step-side: 0;
	--step-pad: 0;
	--sticky: sticky;
	--sticky-top: calc(var(--hdr-h) + 34px);

	--shadow-sm: 0 1px 2px rgba(6, 34, 69, 0.06);
	--shadow: 0 1px 2px rgba(6, 34, 69, 0.05), 0 16px 40px -18px rgba(6, 34, 69, 0.22);
	--shadow-deep: 0 1px 2px rgba(0, 0, 0, 0.3), 0 26px 60px -26px rgba(0, 0, 0, 0.66);
	--lift-gold: 0 10px 24px -10px rgba(211, 165, 66, 0.55);
	--lift-teal: 0 10px 24px -10px rgba(20, 169, 156, 0.55);
	--ring: 0 0 0 3px var(--gold-soft);
	--ring-teal: 0 0 0 3px var(--teal-soft);

	--ease-entrance: cubic-bezier(0.16, 1, 0.3, 1);
	--ease: cubic-bezier(0.16, 1, 0.3, 1);
	--ease-ui: ease;
	--dur-hover: 0.22s;
	--dur-state: 0.25s;
	--dur-reveal: 0.8s;
}

@media (max-width: 1180px) {
	:root {
		--cols-6: repeat(3, minmax(0, 1fr));
		--cols-5: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 1080px) {
	:root {
		--shell: calc(100% - 44px);
		--hdr-h: 80px;
		--logo-h: 46px;
		--gap-lg: 44px;
		--gap-md: 34px;
		--pad-card: 28px;
		--cols-hero: minmax(0, 1fr);
		--cols-2b: minmax(0, 1fr);
		--cols-2c: minmax(0, 1fr);
		--cols-calc: minmax(0, 1fr);
		--cols-3: repeat(2, minmax(0, 1fr));
		--cols-goal: repeat(2, minmax(0, 1fr));
		--cols-4: repeat(2, minmax(0, 1fr));
		--cols-footer: repeat(2, minmax(0, 1fr));
		--foot-main: minmax(0, 1fr);
		--nav-flex: none;
		--burger: flex;
		--hide-sm: none;
		--hide-sm-flex: none;
		--hero-art: none;
		--step-rail: none;
		--step-side: 1px;
		--step-pad: 18px;
		--sticky: static;
		--sticky-top: auto;
	}
}

@media (max-width: 760px) {
	:root {
		--shell: calc(100% - 32px);
		--hdr-h: 68px;
		--logo-h: 38px;
		--gap-lg: 30px;
		--gap-md: 24px;
		--pad-card: 20px;
		--cols-2: minmax(0, 1fr);
		--cols-3: minmax(0, 1fr);
		--cols-5: repeat(2, minmax(0, 1fr));
		--cols-6: repeat(2, minmax(0, 1fr));
		--cols-goal: minmax(0, 1fr);
		--cols-footer: minmax(0, 1fr);
		--foot-links: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	:root {
		--foot-links: repeat(2, minmax(0, 1fr));
	}
}

/* --- site chrome --- */
body.tli-site {
	background: var(--bg);
	color: var(--ink);
	font-family: var(--font-body);
	font-size: var(--size-body);
	line-height: var(--lh-body);
	-webkit-font-smoothing: antialiased;
	font-variant-numeric: tabular-nums;
}

body.tli-site h1,
body.tli-site h2,
body.tli-site h3,
body.tli-site h4 {
	font-family: var(--font-display);
	font-weight: var(--weight-display);
	letter-spacing: var(--track-display);
	line-height: var(--lh-display);
	margin: 0;
	color: inherit;
}

body.tli-site h3,
body.tli-site h4 {
	font-weight: var(--weight-semi);
	letter-spacing: var(--track-heading);
}

body.tli-site a {
	text-decoration: none;
	transition: color var(--dur-hover) var(--ease-ui);
}

body.tli-site ::selection {
	background: var(--gold-bright);
	color: var(--navy-700);
}

.tli-shell {
	width: var(--shell);
	margin-inline: auto;
}

.tli-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: var(--size-eyebrow);
	font-weight: var(--weight-semi);
	letter-spacing: var(--track-eyebrow);
	text-transform: uppercase;
	color: var(--gold);
}

.tli-eyebrow--live {
	color: var(--teal);
}

.tli-hero .tli-eyebrow--live,
.tli-who .tli-eyebrow--live,
.tli-how__copy .tli-eyebrow--live,
.tli-calc-band .tli-eyebrow--live,
.tli-cta .tli-eyebrow--live {
	color: var(--teal-300);
}

.tli-eyebrow--on-deep {
	color: var(--gold-on-deep);
}

.tli-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--teal-300);
	animation: tliGlow 2.4s ease-in-out infinite;
}

.tli-rule {
	width: 22px;
	height: 1px;
	background: var(--gold-bright);
}

.tli-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--space-4);
	border: 1px solid transparent;
	border-radius: var(--radius);
	font-family: var(--font-body);
	font-size: 13.5px;
	font-weight: var(--weight-semi);
	line-height: 1;
	padding: 14px 22px;
	white-space: nowrap;
	cursor: pointer;
	text-decoration: none;
	background: transparent;
	color: inherit;
	transition:
		background var(--dur-hover) var(--ease-ui),
		border-color var(--dur-hover) var(--ease-ui),
		color var(--dur-hover) var(--ease-ui),
		transform var(--dur-hover) var(--ease-ui),
		box-shadow var(--dur-hover) var(--ease-ui);
}

.tli-btn:focus-visible {
	outline: none;
	box-shadow: var(--ring);
}

.tli-btn--lg {
	font-size: 15px;
	padding: 18px 30px;
}

.tli-btn--primary {
	background: var(--gold-bright);
	color: var(--on-gold);
}

.tli-btn--primary:hover {
	background: var(--gold-300);
	color: var(--on-gold);
	transform: translateY(-1px);
	box-shadow: var(--lift-gold);
}

.tli-hero .tli-btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 38px -12px rgba(211, 165, 66, 0.72);
}

.tli-footer__cta .tli-btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 30px -12px rgba(211, 165, 66, 0.65);
}

.tli-cta .tli-btn--primary:hover {
	transform: translateY(-1px);
	box-shadow: 0 12px 28px -10px rgba(211, 165, 66, 0.6);
}

.tli-sheet .tli-btn--primary:hover {
	transform: none;
	box-shadow: none;
}

.tli-btn--accent {
	background: var(--teal-bright);
	color: var(--on-teal);
}

.tli-btn--accent:hover {
	background: var(--teal);
	color: var(--on-teal);
	transform: translateY(-1px);
	box-shadow: var(--lift-teal);
}

.tli-btn--outline {
	border-color: var(--hair);
	color: var(--ink);
}

.tli-btn--outline:hover {
	border-color: var(--gold-bright);
	color: var(--gold);
	background: var(--gold-soft);
}

.tli-btn--outline-invert {
	border-color: var(--deep-hair);
	color: var(--on-deep);
}

.tli-btn--outline-invert:hover {
	border-color: var(--gold-bright);
	color: var(--gold-on-deep);
	background: rgba(211, 165, 66, 0.1);
	transform: translateY(-2px);
}

.tli-footer__cta .tli-btn--outline-invert:hover {
	background: rgba(211, 165, 66, 0.09);
}

.tli-cta .tli-btn--outline-invert:hover {
	background: rgba(211, 165, 66, 0.08);
	transform: none;
}

.tli-btn--quiet {
	border: 0;
	border-bottom: 1px solid var(--gold-bright);
	border-radius: 0;
	color: var(--gold);
	padding: 0 0 3px;
	font-size: 13px;
}

.tli-btn--quiet:hover {
	color: var(--gold);
	letter-spacing: 0.01em;
}

.tli-btn--quiet-invert {
	color: var(--gold-on-deep);
	border-bottom-color: var(--gold-bright);
}

.tli-btn--quiet-invert:hover {
	color: var(--gold-on-deep);
	letter-spacing: 0.01em;
}

.tli-bleed .brxe-container,
.tli-bleed.brxe-container,
body.tli-site #brx-header .brxe-section,
body.tli-site #brx-header .brxe-container,
body.tli-site #brx-footer .brxe-section,
body.tli-site #brx-footer .brxe-container,
body.tli-site.home #brx-content .brxe-section,
body.tli-site.home #brx-content .brxe-container {
	width: 100% !important;
	max-width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.tli-site #brx-header {
	position: sticky;
	top: 0;
	z-index: 100;
	box-shadow: none !important;
	background: transparent;
}

body.tli-site #brx-header.is-scrolled {
	box-shadow: none !important;
}

/* --- motion --- */
@keyframes tliRise {
	from {
		opacity: 0;
		transform: translateY(24px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes tliIn {
	from {
		opacity: 0;
		transform: translateY(16px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes tliCard {
	from {
		opacity: 0;
		transform: translateY(22px) scale(0.99);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes tliDrop {
	from {
		opacity: 0;
		transform: translateY(-8px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes tliSheet {
	from {
		opacity: 0;
		transform: translateY(-12px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes tliTrace {
	from {
		stroke-dashoffset: 540;
	}
	to {
		stroke-dashoffset: 0;
	}
}

@keyframes tliGlow {
	0%,
	100% {
		box-shadow: 0 0 0 0 var(--teal-soft);
	}
	50% {
		box-shadow: 0 0 0 7px var(--teal-soft);
	}
}

@keyframes tliScan {
	0% {
		top: -70px;
	}
	55%,
	100% {
		top: 100%;
	}
}

@keyframes tliRowIn {
	from {
		opacity: 0;
		transform: translateX(-8px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

.tli-reveal {
	animation: tliRise var(--dur-reveal) var(--ease-entrance) both;
	animation-timeline: view();
	animation-range: entry 0% entry 62%;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-delay: 0ms !important;
		transition-duration: 0.001ms !important;
	}
}

/* --- range --- */
.tli-range {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	height: 26px;
	background: transparent;
	cursor: pointer;
	margin: 0;
}

.tli-range::-webkit-slider-runnable-track {
	height: 3px;
	background: var(--track);
	border-radius: 2px;
}

.tli-range::-moz-range-track {
	height: 3px;
	background: var(--track);
	border-radius: 2px;
}

.tli-range::-webkit-slider-thumb {
	-webkit-appearance: none;
	width: 18px;
	height: 18px;
	margin-top: -7.5px;
	border-radius: 50%;
	background: var(--gold-bright);
	border: 2px solid var(--surface);
	box-shadow: 0 1px 4px rgba(6, 34, 69, 0.35);
	transition: transform 0.18s;
}

.tli-range.tli-range--dark::-webkit-slider-runnable-track {
	background: rgba(232, 239, 248, 0.18);
}

.tli-range.tli-range--dark::-moz-range-track {
	background: rgba(232, 239, 248, 0.18);
}

.tli-range.tli-range--dark::-webkit-slider-thumb {
	background: var(--teal-300);
	border-color: var(--deep-4);
}

.tli-range.tli-range--dark::-moz-range-thumb {
	background: var(--teal-300);
	border-color: var(--deep-4);
}

.tli-range::-moz-range-thumb {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--gold-bright);
	border: 2px solid var(--surface);
}

.tli-range:hover::-webkit-slider-thumb {
	transform: scale(1.14);
}

/* --- header --- */
.tli-progress {
	position: fixed;
	top: 0;
	left: 0;
	height: 2px;
	width: var(--tli-progress, 0%);
	background: linear-gradient(90deg, var(--teal-bright), var(--gold-bright));
	z-index: 120;
	pointer-events: none;
}

[data-tli-header] {
	isolation: isolate;
	background-color: #03122a;
	border-bottom: 1px solid rgba(232, 239, 248, 0.14);
	transition: background-color 0.38s ease, border-color 0.38s ease, box-shadow 0.38s ease;
}

[data-tli-header] [data-navlink],
[data-tli-header] [data-navbtn] {
	color: #e8eff8;
	transition: color 0.38s ease, border-color 0.38s ease;
}

[data-tli-header] [data-navbtn] {
	border-color: rgba(232, 239, 248, 0.24);
}

[data-tli-header] [data-logo="light"] {
	display: none;
}

[data-tli-header] [data-logo="dark"] {
	display: block;
}

[data-tli-header][data-scrolled="1"] {
	background-color: #ffffff;
	border-bottom-color: var(--hair);
	box-shadow: var(--shadow-sm);
}

[data-tli-header][data-scrolled="1"] [data-navlink],
[data-tli-header][data-scrolled="1"] [data-navbtn] {
	color: var(--ink);
}

[data-tli-header][data-scrolled="1"] [data-navbtn] {
	border-color: var(--hair);
}

[data-tli-header][data-scrolled="1"] [data-logo="light"] {
	display: block;
}

[data-tli-header][data-scrolled="1"] [data-logo="dark"] {
	display: none;
}

.tli-header__row {
	height: var(--hdr-h);
	display: flex;
	align-items: center;
	gap: 22px;
}

.tli-logo img {
	height: var(--logo-h);
	width: auto;
	display: block;
}

.tli-nav {
	display: var(--nav-flex);
	align-items: center;
	gap: 0;
	margin-left: auto;
}

.tli-nav__item {
	position: relative;
}

.tli-nav__link {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 12px 13px;
	font-size: 13.5px;
	font-weight: 600;
	white-space: nowrap;
	color: inherit;
}

.tli-nav__link:hover {
	color: var(--gold-bright);
}

.tli-nav__link.is-active {
	box-shadow: inset 0 -2px 0 0 var(--gold-bright);
}

.tli-nav__caret {
	transition: transform 0.25s;
}

.tli-nav__item.is-open .tli-nav__caret {
	transform: rotate(180deg);
}

.tli-drop {
	position: absolute;
	top: calc(100% + 1px);
	left: -13px;
	display: none;
	background: var(--surface);
	border: 1px solid var(--hair);
	border-top: 2px solid var(--gold-bright);
	box-shadow: var(--shadow);
	animation: tliDrop 0.26s var(--ease) both;
	z-index: 5;
	max-width: calc(100vw - 32px);
}

.tli-drop--teal {
	border-top-color: var(--teal-bright);
}

.tli-drop--right {
	left: auto;
	right: -13px;
}

.tli-nav__item.is-open .tli-drop {
	display: flex;
}

.tli-drop__col {
	width: 272px;
	flex: 1 1 232px;
	padding: 20px 0;
}

.tli-drop__col + .tli-drop__col {
	border-left: 1px solid var(--hair-2);
}

.tli-drop__title {
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--gold);
	font-weight: 600;
	padding: 0 22px 12px;
}

.tli-drop--teal .tli-drop__title {
	color: var(--teal);
}

.tli-drop__link {
	display: grid;
	gap: 2px;
	padding: 10px 22px;
	color: var(--ink);
	transition: background 0.2s, padding-left 0.25s;
}

.tli-drop__link:hover {
	background: var(--gold-soft);
	padding-left: 28px;
	color: var(--ink);
}

.tli-drop--teal .tli-drop__link:hover {
	background: var(--teal-soft);
}

.tli-drop__name {
	font-size: 13.5px;
	font-weight: 600;
}

.tli-drop__desc {
	font-size: 11.5px;
	color: var(--ink-3);
	line-height: 1.45;
}

.tli-drop__more {
	display: inline-block;
	margin: 12px 22px 0;
	font-size: 12px;
	font-weight: 600;
	color: var(--gold);
	border-bottom: 1px solid var(--gold-bright);
	padding-bottom: 2px;
	transition: letter-spacing 0.25s;
}

.tli-drop__more:hover {
	color: var(--gold);
	letter-spacing: 0.01em;
}

.tli-drop--teal .tli-drop__more {
	color: var(--teal);
	border-bottom-color: var(--teal-bright);
}

.tli-drop--teal .tli-drop__more:hover {
	color: var(--teal);
}

.tli-header__actions {
	display: var(--hide-sm-flex);
	align-items: center;
	gap: 16px;
	margin-left: 6px;
}

.tli-header__actions .tli-btn--primary {
	padding: 13px 20px;
}

.tli-header__phone {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	color: inherit;
}

.tli-header__phone:hover {
	color: var(--gold-bright);
}

.tli-burger {
	display: var(--burger);
	margin-left: auto;
	width: var(--tap);
	height: var(--tap);
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 1px solid;
	border-radius: 2px;
	cursor: pointer;
}

.tli-burger:hover {
	border-color: var(--gold-bright);
	color: var(--gold-bright);
}

/* --- mobile sheet --- */
.tli-sheet {
	position: fixed;
	inset: 0;
	z-index: 110;
	display: none;
	grid-template-rows: auto minmax(0, 1fr) auto;
	background: var(--deep-3);
	color: var(--on-deep);
	animation: tliSheet 0.3s var(--ease) both;
}

.tli-sheet.is-open {
	display: grid;
}

.tli-sheet__top,
.tli-sheet__foot {
	background: var(--deep-4);
}

.tli-sheet__top {
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-sheet__foot {
	border-top: 1px solid var(--deep-hair-2);
	padding: 14px 0 calc(14px + env(safe-area-inset-bottom, 0px));
}

.tli-sheet__scroll {
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

.tli-sheet__quick {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair-2);
	margin-bottom: 26px;
}

.tli-sheet__quick a {
	background: var(--deep-2);
	padding: 16px 18px;
	display: grid;
	gap: 4px;
	min-height: var(--tap);
	align-content: center;
	color: var(--on-deep);
}

.tli-sheet__quick a:hover {
	background: var(--deep);
	color: var(--on-deep);
}

.tli-sheet__kicker {
	font-size: 9.5px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-weight: 600;
}

.tli-sheet__acc {
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-sheet__acc-btn {
	width: 100%;
	min-height: 56px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 0;
	background: transparent;
	border: 0;
	border-left: 2px solid transparent;
	text-align: left;
	color: var(--on-deep);
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 21px;
	letter-spacing: -0.024em;
	cursor: pointer;
}

.tli-sheet__acc.is-open .tli-sheet__acc-btn {
	border-left-color: var(--gold-bright);
	padding-left: 14px;
	color: var(--gold-on-deep);
}

.tli-sheet__panel {
	display: none;
	padding: 2px 0 18px;
}

.tli-sheet__acc.is-open .tli-sheet__panel {
	display: block;
}

.tli-sheet__hub {
	display: flex;
	align-items: center;
	gap: 9px;
	min-height: var(--tap);
	padding: 12px 0 12px 18px;
	border-left: 1px solid var(--gold-bright);
	font-size: 14.5px;
	font-weight: 600;
	color: var(--gold-on-deep);
}

.tli-sheet__link {
	display: grid;
	gap: 2px;
	min-height: var(--tap);
	align-content: center;
	padding: 11px 0 11px 18px;
	border-left: 1px solid var(--deep-hair-2);
	color: var(--on-deep-2);
	animation: tliRowIn 0.3s var(--ease) both;
}

.tli-sheet__link:hover {
	color: var(--on-deep);
	border-color: var(--gold-bright);
	padding-left: 24px;
}

.tli-sheet__note {
	margin-top: 28px;
	padding: 20px 22px;
	background: var(--deep-2);
	border: 1px solid var(--deep-hair-2);
}

.tli-sheet__foot-row {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 10px;
}

.tli-sheet__foot .tli-btn--lg {
	height: 52px;
	padding: 0 22px;
	font-size: 15px;
}

.tli-icon-call {
	display: grid;
	place-items: center;
	width: 56px;
	height: 52px;
	border: 1px solid var(--deep-hair);
	border-radius: 2px;
	color: var(--on-deep);
}

.tli-icon-call:hover {
	border-color: var(--gold-bright);
	color: var(--gold-on-deep);
	background: rgba(211, 165, 66, 0.1);
}

.tli-close {
	width: var(--tap);
	height: var(--tap);
	display: grid;
	place-items: center;
	background: transparent;
	border: 1px solid var(--deep-hair);
	border-radius: 2px;
	color: var(--on-deep);
	cursor: pointer;
	transition: border-color 0.22s, color 0.22s, transform 0.22s;
}

.tli-close:hover {
	border-color: var(--gold-bright);
	color: var(--gold-on-deep);
	transform: rotate(90deg);
}

.tli-totop {
	position: fixed;
	right: clamp(16px, 2.2vw, 28px);
	bottom: clamp(16px, 2.2vw, 28px);
	z-index: 90;
	width: 52px;
	height: 52px;
	display: grid;
	place-items: center;
	background: var(--deep-4);
	border: 1px solid var(--deep-hair);
	border-radius: 50%;
	color: var(--on-deep);
	cursor: pointer;
	opacity: 0;
	transform: translateY(14px) scale(0.9);
	pointer-events: none;
	transition: opacity 0.32s var(--ease), transform 0.32s var(--ease), border-color 0.22s, color 0.22s;
	box-shadow: 0 10px 30px -12px rgba(0, 0, 0, 0.7);
}

.tli-totop.is-show {
	opacity: 1;
	transform: none;
	pointer-events: auto;
}

.tli-totop:hover {
	border-color: var(--gold-bright);
	color: var(--gold-on-deep);
}

.tli-totop .ring {
	position: absolute;
	inset: -1px;
	transform: rotate(-90deg);
}

.tli-totop .ring circle {
	fill: none;
	stroke: var(--teal-bright);
	stroke-width: 2;
	stroke-linecap: round;
	stroke-dasharray: 100;
	stroke-dashoffset: calc(100 - var(--tli-prog-num, 0));
}

/* --- footer --- */
.tli-footer {
	background: var(--deep-4);
	color: var(--on-deep);
	border-top: 1px solid var(--deep-hair-2);
}

.tli-footer a {
	color: var(--on-deep-2);
}

.tli-footer a:hover {
	color: var(--on-deep);
}

.tli-footer a.tli-btn--primary,
.tli-footer a.tli-btn--primary:hover {
	color: var(--on-gold);
}

.tli-footer a.tli-btn--outline-invert {
	color: var(--on-deep);
}

.tli-footer a.tli-btn--outline-invert:hover {
	color: var(--gold-on-deep);
}

.tli-footer a.tli-footer__phone {
	color: var(--on-deep);
}

.tli-footer a.tli-footer__phone:hover,
.tli-footer__contact a:hover {
	color: var(--gold-on-deep);
}

.tli-footer__cta {
	border-bottom: 1px solid var(--deep-hair-2);
	position: relative;
	overflow: hidden;
}

.tli-footer__cta::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(70% 80% at 88% 0%, rgba(211, 165, 66, 0.13), transparent 60%),
		radial-gradient(56% 70% at 2% 100%, rgba(20, 169, 156, 0.12), transparent 58%);
	pointer-events: none;
}

.tli-footer__cta-inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	flex-wrap: wrap;
	padding: clamp(34px, 3.4vw, 52px) 0;
}

.tli-footer__hours {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: 10px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--teal-300);
	font-weight: 600;
}

.tli-footer__cta h2 {
	font-size: clamp(24px, 2.4vw, 34px);
	margin: 14px 0 0;
}

.tli-footer__cta-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.tli-footer__cta-actions .tli-btn--lg {
	min-height: 52px;
	padding: 0 26px;
	font-size: 14.5px;
}

.tli-footer__main {
	padding: clamp(44px, 4.4vw, 64px) 0 0;
}

.tli-footer__grid {
	display: grid;
	grid-template-columns: var(--foot-main);
	gap: var(--gap-lg);
	padding-bottom: 44px;
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-footer__brand p {
	margin: 20px 0 0;
	font-size: 14px;
	line-height: 1.68;
	color: var(--on-deep-2);
	max-width: 34ch;
}

.tli-footer__rating {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	margin-top: 22px;
	padding: 11px 15px;
	border: 1px solid var(--deep-hair-2);
	background: var(--deep-3);
}

.tli-footer__score {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 20px;
	letter-spacing: -0.03em;
	color: var(--gold-on-deep);
}

.tli-footer__contact {
	display: grid;
	gap: 11px;
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid var(--deep-hair-2);
}

.tli-footer__phone {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 20px;
	letter-spacing: -0.026em;
	color: var(--on-deep);
}

.tli-footer__phone:hover {
	color: var(--gold-on-deep);
}

.tli-footer__cols {
	display: grid;
	grid-template-columns: var(--foot-links);
	gap: var(--gap-md) 24px;
}

.tli-footer__col-title {
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--gold-on-deep);
	font-weight: 600;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-footer__col a {
	display: flex;
	align-items: center;
	min-height: 34px;
	font-size: 13.5px;
	transition: color 0.22s, padding-left 0.25s;
}

.tli-footer__col a:hover {
	padding-left: 6px;
}

.tli-footer__creds {
	display: grid;
	grid-template-columns: var(--cols-4);
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair-2);
	margin-top: 30px;
}

.tli-footer__cred {
	background: var(--deep-4);
	padding: 18px 20px;
	display: grid;
	gap: 5px;
}

.tli-footer__cred-k {
	font-size: 9.5px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--on-deep-3);
	font-weight: 600;
}

.tli-footer__legal {
	margin: 28px 0 0;
	font-size: 11.5px;
	line-height: 1.68;
	color: var(--on-deep-3);
	max-width: 96ch;
}

.tli-footer__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 26px;
	padding: 22px 0 34px;
	border-top: 1px solid var(--deep-hair-2);
	font-size: 11.5px;
	color: var(--on-deep-3);
}

.tli-footer__legal-nav {
	display: flex;
	gap: 4px;
	flex-wrap: wrap;
}

.tli-footer__legal-nav a {
	display: flex;
	align-items: center;
	min-height: 36px;
	padding: 0 10px;
	font-size: 11.5px;
	color: var(--on-deep-3);
	transition: color 0.22s;
}

.tli-footer__legal-nav a:hover {
	color: var(--on-deep);
}

.tli-footer a.tli-footer__top {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 36px;
	font-size: 11.5px;
	font-weight: 600;
	color: var(--on-deep-3);
}

.tli-footer a.tli-footer__top:hover {
	color: var(--gold-on-deep);
}

/* --- sections shared --- */
.tli-section {
	padding: var(--section-y) 0;
}

.tli-head {
	display: grid;
	grid-template-columns: var(--cols-2c);
	gap: var(--gap-lg);
	align-items: end;
	margin-bottom: 46px;
}

.tli-solutions .tli-head {
	margin-bottom: 48px;
}

.tli-how .tli-head {
	margin-bottom: 50px;
}

.tli-head h2 {
	font-size: var(--size-h2);
	margin: 16px 0 0;
}

.tli-lede {
	margin: 0;
	font-size: var(--size-body-lg);
	line-height: 1.66;
	color: var(--ink-2);
	max-width: 46ch;
}

.tli-grid-rule {
	display: grid;
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-wash {
	position: relative;
	overflow: hidden;
}

.tli-wash::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
}

/* --- hero --- */
.tli-hero {
	position: relative;
	overflow: hidden;
	background: var(--deep-3);
	color: var(--on-deep);
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-hero__bg {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(96deg, rgba(3, 18, 42, 0.96) 0%, rgba(3, 18, 42, 0.9) 32%, rgba(3, 18, 42, 0.66) 60%, rgba(3, 18, 42, 0.44) 100%),
		radial-gradient(104% 70% at 92% -10%, rgba(211, 165, 66, 0.2), transparent 56%),
		radial-gradient(80% 66% at -6% 106%, rgba(20, 169, 156, 0.2), transparent 58%),
		linear-gradient(0deg, rgba(2, 12, 31, 0.9), transparent 34%);
	pointer-events: none;
}

.tli-hero__grid-lines {
	position: absolute;
	inset: 0;
	background: repeating-linear-gradient(90deg, rgba(232, 239, 248, 0.05) 0 1px, transparent 1px 152px);
	pointer-events: none;
}

.tli-hero__circuit {
	display: var(--hero-art);
	position: absolute;
	top: 52%;
	left: -90px;
	transform: translateY(-50%);
	width: min(520px, 42%);
	height: auto;
	opacity: 0.14;
	pointer-events: none;
}

.tli-hero__circuit path {
	stroke-dasharray: 540;
	animation: tliTrace 3.6s var(--ease) both;
}

.tli-hero__inner {
	position: relative;
	padding: clamp(56px, 5.6vw, 92px) 0 clamp(44px, 4.4vw, 64px);
	display: grid;
	grid-template-columns: var(--cols-hero);
	gap: var(--gap-lg);
	align-items: center;
}

.tli-hero h1 {
	font-size: clamp(42px, 5.4vw, 82px);
	line-height: 0.95;
	letter-spacing: -0.038em;
	margin: 22px 0 0;
	max-width: 15ch;
	animation: tliRise 0.9s var(--ease) both 0.08s;
}

.tli-hero h1 em {
	font-style: normal;
	color: var(--gold-bright);
}

.tli-hero__lede {
	margin: 26px 0 0;
	font-size: clamp(16px, 1.25vw, 18px);
	line-height: 1.6;
	color: var(--on-deep-2);
	max-width: 50ch;
}

.tli-hero__ctas {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 36px;
}

.tli-board {
	position: relative;
	background: var(--deep-4);
	border: 1px solid var(--deep-hair);
	box-shadow: var(--shadow-deep);
	animation: tliCard 1s var(--ease) both 0.2s;
}

.tli-board::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: linear-gradient(90deg, var(--teal-bright), var(--gold-bright));
}

.tli-board__bar,
.tli-board__amt,
.tli-board__foot {
	padding: 20px 22px;
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-board__bar,
.tli-board__amt-row,
.tli-board__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.tli-board__live {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--teal-300);
	font-weight: 600;
}

.tli-board__meta {
	font-size: 11px;
	color: var(--on-deep-3);
}

.tli-board__amt-row label {
	font-size: 12.5px;
	font-weight: 600;
	color: var(--on-deep-2);
}

.tli-board__figure {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 26px;
	letter-spacing: -0.03em;
	line-height: 1;
	color: var(--on-deep);
}

.tli-board__range-meta {
	display: flex;
	justify-content: space-between;
	font-size: 11px;
	color: var(--on-deep-3);
}

.tli-board__rows {
	position: relative;
	overflow: hidden;
}

.tli-board__scan {
	position: absolute;
	left: 0;
	right: 0;
	top: -70px;
	height: 70px;
	background: linear-gradient(180deg, transparent, rgba(20, 169, 156, 0.09), transparent);
	animation: tliScan 6s ease-in-out infinite;
	pointer-events: none;
	z-index: 1;
}

.tli-board__head,
.tli-board__row {
	display: grid;
	grid-template-columns: auto 1fr auto auto;
	gap: 12px 14px;
	align-items: center;
	padding: 13px 22px;
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-board__head {
	padding: 12px 22px;
	font-size: 9px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--on-deep-3);
	font-weight: 600;
}

.tli-board__row.is-top {
	background: rgba(20, 169, 156, 0.11);
}

.tli-board__rank {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 11px;
	width: 16px;
	color: var(--on-deep-3);
}

.tli-board__row.is-top .tli-board__rank,
.tli-board__row.is-top .tli-board__rate {
	color: var(--teal-300);
}

.tli-board__name {
	display: block;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--on-deep-2);
}

.tli-board__row.is-top .tli-board__name {
	color: var(--on-deep);
}

.tli-board__note {
	display: block;
	font-size: 11px;
	color: var(--on-deep-3);
}

.tli-board__rate {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 16px;
	letter-spacing: -0.02em;
	text-align: right;
}

.tli-board__monthly {
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 13.5px;
	text-align: right;
	color: var(--on-deep-2);
	white-space: nowrap;
}

.tli-board__foot {
	background: rgba(20, 169, 156, 0.07);
	border-bottom: 0;
	flex-wrap: wrap;
}

.tli-board__spread {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 26px;
	letter-spacing: -0.03em;
	color: var(--teal-300);
}

.tli-hero__proof {
	position: relative;
	border-top: 1px solid var(--deep-hair-2);
	background: rgba(2, 12, 31, 0.55);
}

.tli-hero__proof-grid {
	display: grid;
	grid-template-columns: var(--cols-4);
	gap: 1px;
	background: var(--deep-hair-2);
}

.tli-hero__proof-item {
	background: rgba(2, 12, 31, 0.72);
	padding: 22px 24px;
	display: grid;
	gap: 5px;
}

.tli-hero__proof-item strong {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: clamp(22px, 2vw, 30px);
	letter-spacing: -0.032em;
	line-height: 1;
	color: var(--on-deep);
}

.tli-hero__proof-item span {
	font-size: 11.5px;
	line-height: 1.45;
	color: var(--on-deep-3);
}

.tli-hero__proof-item.is-teal strong {
	color: var(--teal-300);
}

.tli-hero__proof-item.is-gold strong {
	color: var(--gold-on-deep);
}

/* --- trust --- */
.tli-trust {
	background: var(--deep-4);
	color: var(--on-deep);
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-trust__grid {
	display: grid;
	grid-template-columns: var(--cols-5);
}

.tli-trust__item {
	padding: 26px 24px;
	border-left: 1px solid var(--deep-hair-2);
	display: grid;
	gap: 5px;
}

.tli-trust__item strong {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 24px;
	letter-spacing: -0.03em;
	line-height: 1;
}

.tli-trust__item em {
	font-style: normal;
	font-size: 12px;
	font-weight: 600;
	color: var(--on-deep-2);
}

.tli-trust__item span {
	font-size: 11.5px;
	line-height: 1.45;
	color: var(--on-deep-3);
}

.tli-trust__item.is-gold strong {
	color: var(--gold-on-deep);
}

.tli-trust__item.is-teal strong {
	color: var(--teal-300);
}

/* --- goals --- */
.tli-goals {
	background: var(--bg);
}

.tli-goals__grid {
	display: grid;
	grid-template-columns: var(--cols-goal);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-goals__card {
	display: grid;
	gap: 14px;
	align-content: start;
	background: var(--surface);
	padding: var(--pad-card);
	color: var(--ink);
	position: relative;
	transition: background 0.28s, transform 0.28s;
}

.tli-goals__card:hover {
	background: var(--surface-2);
	transform: translateY(-2px);
	z-index: 2;
}

.tli-goals__card:hover .tli-goals__cta {
	color: var(--gold);
}

.tli-goals__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.tli-goals__icon {
	width: 40px;
	height: 40px;
	display: grid;
	place-items: center;
	border: 1px solid var(--hair);
	border-radius: 50%;
	color: var(--gold);
}

.tli-goals__n {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 13px;
	color: var(--ink-3);
}

.tli-goals .tli-head {
	margin-bottom: 52px;
}

.tli-goals__card h3 {
	font-size: 22px;
	letter-spacing: -0.026em;
	line-height: 1.2;
	color: var(--ink);
}

.tli-goals__card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--ink-2);
}

.tli-goals__cta {
	font-size: 12.5px;
	font-weight: 600;
	color: var(--gold);
}

/* --- why --- */
.tli-why {
	background: var(--surface);
	border-top: 1px solid var(--hair);
}

.tli-why__grid {
	display: grid;
	grid-template-columns: var(--cols-2b);
	gap: var(--gap-lg);
	align-items: start;
}

.tli-why__sticky {
	position: var(--sticky);
	top: var(--sticky-top);
}

.tli-why__sticky h2 {
	font-size: var(--size-h2-sm);
	margin: 16px 0 0;
	color: var(--ink);
}

.tli-stat {
	margin-top: 28px;
	padding: 22px 24px;
	background: var(--bg-2);
	border-left: 2px solid var(--teal-bright);
}

.tli-stat__k {
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--teal);
	font-weight: 600;
}

.tli-stat__v {
	display: flex;
	align-items: baseline;
	gap: 9px;
	margin-top: 9px;
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 44px;
	letter-spacing: -0.035em;
	line-height: 1;
	color: var(--ink);
}

.tli-stat__v span {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0;
	color: var(--ink-2);
}

.tli-why__row {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 26px;
	padding: 32px 0;
	border-bottom: 1px solid var(--hair-2);
}

.tli-why__n {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 13px;
	color: var(--gold);
	padding-top: 5px;
}

.tli-why__row h3 {
	font-size: 24px;
	color: var(--ink);
}

.tli-why__row p {
	margin: 12px 0 0;
	font-size: 15.5px;
	line-height: 1.66;
	color: var(--ink-2);
	max-width: 56ch;
}

.tli-why__facts {
	display: flex;
	gap: 26px;
	flex-wrap: wrap;
	margin-top: 16px;
}

.tli-why__facts strong {
	display: block;
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 19px;
	color: var(--teal);
}

.tli-why__facts span {
	font-size: 11.5px;
	color: var(--ink-3);
}

/* --- solutions --- */
.tli-solutions {
	background: var(--deep);
	color: var(--on-deep);
}

.tli-solutions::before {
	background:
		radial-gradient(70% 60% at 92% 0%, rgba(211, 165, 66, 0.12), transparent 58%),
		radial-gradient(60% 55% at 0% 100%, rgba(20, 169, 156, 0.12), transparent 60%);
}

.tli-solutions .tli-lede {
	color: var(--on-deep-2);
}

.tli-solutions__grid {
	position: relative;
	display: grid;
	grid-template-columns: var(--cols-3);
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair-2);
}

.tli-solutions__card {
	display: grid;
	gap: 13px;
	align-content: start;
	background: var(--deep);
	padding: var(--pad-card);
	color: var(--on-deep);
	transition: background 0.3s;
}

.tli-solutions__card:hover {
	background: var(--deep-2);
	color: var(--on-deep);
}

.tli-solutions__card h3 {
	font-size: 23px;
	letter-spacing: -0.026em;
	line-height: 1.18;
	color: var(--on-deep);
}

.tli-solutions__tag {
	display: flex;
	align-items: center;
	gap: 11px;
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--on-deep-3);
	font-weight: 600;
}

.tli-solutions__dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--gold-bright);
}

.tli-solutions__dot.is-teal {
	background: var(--teal-bright);
}

.tli-solutions__card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.62;
	color: var(--on-deep-2);
}

.tli-solutions__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 6px;
	padding-top: 15px;
	border-top: 1px solid var(--deep-hair-2);
	font-size: 12px;
	color: var(--on-deep-3);
}

.tli-solutions__meta em {
	font-style: normal;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--gold-on-deep);
}

/* --- how --- */
.tli-how {
	background: var(--bg-2);
	border-top: 1px solid var(--hair);
}

.tli-how::before {
	background: radial-gradient(64% 58% at 96% 0%, var(--teal-soft), transparent 62%);
}

.tli-how__play {
	display: flex;
	align-items: center;
	gap: 9px;
	background: transparent;
	border: 1px solid var(--hair);
	color: var(--ink-2);
	font-size: 12.5px;
	font-weight: 600;
	padding: 11px 16px;
	border-radius: 2px;
	cursor: pointer;
	transition: border-color 0.22s, color 0.22s;
}

.tli-how__play:hover {
	border-color: var(--teal-bright);
	color: var(--teal);
}

.tli-how__rail {
	position: relative;
	margin-bottom: 42px;
}

.tli-how__line {
	display: var(--step-rail);
	position: absolute;
	left: 0;
	right: 0;
	top: 21px;
	height: 1px;
	background: var(--hair);
}

.tli-how__fill {
	display: var(--step-rail);
	position: absolute;
	left: 0;
	top: 20px;
	height: 3px;
	width: 0;
	background: linear-gradient(90deg, var(--teal), var(--teal-bright));
	transition: width 0.6s var(--ease);
	box-shadow: 0 0 14px var(--teal-soft);
}

.tli-how__steps {
	position: relative;
	display: grid;
	grid-template-columns: var(--cols-4);
	gap: 16px;
}

.tli-how__step {
	text-align: left;
	background: transparent;
	border: 0;
	border-left: var(--step-side) solid var(--hair);
	padding: 0 0 0 var(--step-pad);
	display: grid;
	gap: 14px;
	cursor: pointer;
	color: inherit;
}

.tli-how__num {
	width: 42px;
	height: 42px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--surface);
	border: 1px solid var(--hair);
	color: var(--ink-3);
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 14px;
	transition: 0.3s;
}

.tli-how__step.is-on .tli-how__num {
	background: var(--teal-bright);
	border-color: var(--teal-bright);
	color: var(--on-teal);
	transform: scale(1.08);
}

.tli-how__step.is-done .tli-how__num {
	background: var(--teal-soft);
	border-color: var(--teal-hair);
	color: var(--teal);
}

.tli-how__day {
	font-size: 10px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--ink-3);
	font-weight: 600;
}

.tli-how__step.is-on .tli-how__day {
	color: var(--teal);
}

.tli-how__step h3 {
	font-size: 16px;
	line-height: 1.28;
	color: var(--ink-3);
}

.tli-how__step.is-on h3 {
	color: var(--ink);
}

.tli-how__panel {
	display: grid;
	grid-template-columns: var(--cols-2b);
	background: var(--deep-2);
	color: var(--on-deep);
	border: 1px solid var(--deep-hair);
	box-shadow: var(--shadow);
	position: relative;
	overflow: hidden;
}

.tli-how__copy,
.tli-how__split {
	position: relative;
	padding: var(--pad-card);
}

.tli-how__copy {
	border-right: 1px solid var(--deep-hair);
}

.tli-how__copy h3 {
	font-size: clamp(28px, 2.7vw, 38px);
	margin: 18px 0 0;
}

.tli-how__copy p {
	margin: 16px 0 0;
	font-size: 15.5px;
	line-height: 1.66;
	color: var(--on-deep-2);
	max-width: 44ch;
}

.tli-how__meta {
	display: flex;
	gap: 30px;
	margin-top: 26px;
	padding-top: 20px;
	border-top: 1px solid var(--deep-hair);
	flex-wrap: wrap;
}

.tli-how__meta small {
	display: block;
	font-size: 10px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--on-deep-3);
}

.tli-how__meta strong {
	display: block;
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 21px;
	margin-top: 7px;
}

.tli-how__meta .is-teal {
	color: var(--teal-300);
}

.tli-how__cols {
	display: grid;
	grid-template-columns: var(--cols-2);
	gap: var(--gap-md);
}

.tli-how__col-title {
	font-size: 10.5px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--gold-on-deep);
	font-weight: 600;
	padding-bottom: 15px;
	border-bottom: 1px solid var(--deep-hair);
}

.tli-how__list {
	display: grid;
	gap: 12px;
	margin: 17px 0 0;
	padding: 0;
	list-style: none;
}

.tli-how__list li {
	display: grid;
	grid-template-columns: 16px 1fr;
	gap: 10px;
	font-size: 14px;
	line-height: 1.55;
	color: var(--on-deep-2);
}

.tli-how__nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid var(--deep-hair);
}

.tli-how__pager {
	display: flex;
	gap: 10px;
}

.tli-how__pager button {
	width: var(--tap);
	height: var(--tap);
	display: grid;
	place-items: center;
	background: transparent;
	border: 1px solid var(--deep-hair);
	border-radius: 2px;
	color: var(--on-deep);
	cursor: pointer;
	transition: border-color 0.22s, color 0.22s;
}

.tli-how__pager button:hover {
	border-color: var(--teal-bright);
	color: var(--teal-300);
}

/* --- lenders / who / calc / reviews / experts / resources / faq / cta --- */
.tli-lenders {
	background: var(--surface);
	border-top: 1px solid var(--hair);
}

.tli-lenders__tiers {
	display: grid;
	grid-template-columns: var(--cols-4);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
	margin-bottom: 34px;
}

.tli-lenders__tier {
	background: var(--surface);
	padding: 26px var(--pad-card);
	display: grid;
	gap: 8px;
}

.tli-lenders__tier strong {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 34px;
	letter-spacing: -0.035em;
	line-height: 1;
}

.tli-lenders__tier.is-gold strong {
	color: var(--gold);
}

.tli-lenders__tier.is-teal strong {
	color: var(--teal);
}

.tli-lenders__logos {
	border: 1px solid var(--hair);
	background: var(--bg-2);
	padding: 30px var(--pad-card);
}

.tli-lenders__grid {
	display: grid;
	grid-template-columns: var(--cols-6);
	gap: 1px;
	background: var(--hair-2);
	border: 1px solid var(--hair-2);
}

.tli-lenders__logo {
	background: var(--surface);
	height: 78px;
	display: grid;
	place-items: center;
	padding: 10px;
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 13px;
	color: var(--ink-3);
	text-align: center;
	transition: background 0.25s;
}

.tli-lenders__logo:hover {
	background: var(--surface-2);
}

.tli-who {
	background: var(--deep-2);
	color: var(--on-deep);
}

.tli-who::before {
	background:
		radial-gradient(66% 60% at 4% 0%, rgba(20, 169, 156, 0.13), transparent 58%),
		radial-gradient(60% 60% at 100% 100%, rgba(211, 165, 66, 0.1), transparent 60%);
}

.tli-who .tli-lede {
	color: var(--on-deep-2);
}

.tli-who__tabs {
	display: flex;
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair-2);
	flex-wrap: wrap;
	margin-bottom: 1px;
}

.tli-who__tab {
	flex: 1 1 190px;
	background: var(--deep-2);
	border: 0;
	padding: 20px 22px;
	text-align: left;
	display: grid;
	gap: 5px;
	color: var(--on-deep);
	cursor: pointer;
}

.tli-who__tab.is-on {
	background: var(--deep-3);
	box-shadow: inset 0 -2px 0 0 var(--teal-bright);
}

.tli-who__tab small {
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--on-deep-3);
	font-weight: 600;
}

.tli-who__tab.is-on small {
	color: var(--teal-300);
}

.tli-who__tab span {
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 17px;
	letter-spacing: -0.02em;
	line-height: 1.24;
}

.tli-who__panel {
	display: grid;
	grid-template-columns: var(--cols-2b);
	background: var(--deep-3);
	border: 1px solid var(--deep-hair-2);
	border-top: 0;
}

.tli-who__copy,
.tli-who__lists {
	padding: var(--pad-card);
}

.tli-who__copy {
	border-right: 1px solid var(--deep-hair-2);
}

.tli-who__copy h3 {
	font-size: clamp(26px, 2.4vw, 34px);
	line-height: 1.06;
}

.tli-who__copy p {
	margin: 16px 0 0;
	font-size: 15.5px;
	line-height: 1.68;
	color: var(--on-deep-2);
	max-width: 46ch;
}

.tli-who__lists {
	display: grid;
	gap: 22px;
}

.tli-calc {
	background: var(--bg);
}

.tli-calc__box {
	display: grid;
	grid-template-columns: var(--cols-calc);
	background: var(--surface);
	border: 1px solid var(--hair);
	box-shadow: var(--shadow);
}

.tli-calc__inputs,
.tli-calc__out {
	padding: var(--pad-card);
	display: grid;
	gap: 26px;
	align-content: start;
}

.tli-calc__inputs {
	border-right: 1px solid var(--hair);
}

.tli-calc__out {
	background: var(--surface-2);
	gap: 24px;
}

.tli-calc .tli-btn {
	padding: 15px 22px;
}

.tli-seg {
	display: flex;
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-seg button {
	flex: 1;
	background: var(--surface-2);
	border: 0;
	padding: 13px 10px;
	font-size: 13px;
	font-weight: 600;
	color: var(--ink-3);
	cursor: pointer;
}

.tli-seg button.is-on {
	background: var(--surface);
	color: var(--ink);
	box-shadow: inset 0 -2px 0 0 var(--gold-bright);
}

.tli-field {
	display: grid;
	gap: 9px;
}

.tli-field__row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 14px;
}

.tli-field label {
	font-size: 12.5px;
	font-weight: 600;
	color: var(--ink-2);
}

.tli-field strong {
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 19px;
	letter-spacing: -0.02em;
	color: var(--ink);
}

.tli-field__meta {
	display: flex;
	justify-content: space-between;
	font-size: 11px;
	color: var(--ink-3);
}

.tli-calc__max {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: clamp(44px, 4.6vw, 64px);
	letter-spacing: -0.035em;
	line-height: 1;
	margin-top: 14px;
	color: var(--ink);
}

.tli-calc__outs {
	display: grid;
	grid-template-columns: var(--cols-2);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-calc__out-item {
	background: var(--surface);
	padding: 18px 20px;
	display: grid;
	gap: 6px;
}

.tli-dti__bar {
	height: 8px;
	background: var(--track);
	border-radius: 2px;
	overflow: hidden;
	position: relative;
}

.tli-dti__fill {
	height: 100%;
	width: 0;
	background: var(--teal-bright);
	transition: width 0.4s var(--ease), background 0.4s;
}

.tli-dti__mark {
	position: absolute;
	top: -3px;
	bottom: -3px;
	left: 38%;
	width: 2px;
	background: var(--ink);
	opacity: 0.5;
}

.tli-reviews {
	background: var(--bg-2);
	border-top: 1px solid var(--hair);
}

.tli-reviews__grid {
	display: grid;
	grid-template-columns: var(--cols-3);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-reviews__card {
	background: var(--surface);
	padding: var(--pad-card);
	display: grid;
	gap: 18px;
	transition: background 0.28s;
}

.tli-reviews__card:hover {
	background: var(--surface-2);
}

.tli-reviews__quote {
	margin: 0;
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 19px;
	letter-spacing: -0.022em;
	line-height: 1.32;
	color: var(--ink);
}

.tli-experts {
	background: var(--deep-3);
	color: var(--on-deep);
}

.tli-experts::before {
	background:
		radial-gradient(62% 58% at 100% 0%, rgba(211, 165, 66, 0.12), transparent 58%),
		radial-gradient(58% 60% at 0% 96%, rgba(20, 169, 156, 0.12), transparent 60%);
}

.tli-experts .tli-lede {
	color: var(--on-deep-2);
}

.tli-experts__grid {
	position: relative;
	display: grid;
	grid-template-columns: var(--cols-3);
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair-2);
}

.tli-experts__card {
	background: var(--deep-3);
	transition: background 0.3s;
}

.tli-experts__card:hover {
	background: var(--deep-2);
}

.tli-experts__photo {
	aspect-ratio: 4 / 3;
	background: var(--deep-2);
	border-bottom: 1px solid var(--deep-hair-2);
}

.tli-experts__body {
	padding: 26px var(--pad-card);
	display: grid;
	gap: 12px;
}

.tli-experts__tags {
	display: flex;
	gap: 7px;
	flex-wrap: wrap;
}

.tli-experts__tags span {
	font-size: 11px;
	font-weight: 600;
	color: var(--on-deep-2);
	border: 1px solid var(--deep-hair);
	padding: 5px 10px;
	border-radius: 2px;
}

.tli-resources {
	background: var(--surface);
	border-top: 1px solid var(--hair);
}

.tli-resources__grid {
	display: grid;
	grid-template-columns: var(--cols-2b);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-resources__lead,
.tli-resources__list a {
	background: var(--surface);
	color: var(--ink);
}

.tli-resources__lead:hover {
	background: var(--surface-2);
	color: var(--ink);
}

.tli-resources__media {
	aspect-ratio: 16 / 9;
	background: var(--bg-2);
	border-bottom: 1px solid var(--hair);
}

.tli-resources__lead-body {
	padding: var(--pad-card);
	display: grid;
	gap: 14px;
}

.tli-resources__list a {
	display: grid;
	gap: 9px;
	padding: 26px var(--pad-card);
	border-bottom: 1px solid var(--hair-2);
	color: var(--ink);
	transition: background 0.25s, padding-left 0.28s;
}

.tli-resources__list a:hover {
	background: var(--gold-soft);
	padding-left: calc(var(--pad-card) + 8px);
}

.tli-faq {
	background: var(--bg);
}

.tli-faq__grid {
	display: grid;
	grid-template-columns: var(--cols-2b);
	gap: var(--gap-lg);
	align-items: start;
}

.tli-faq__sticky {
	position: var(--sticky);
	top: var(--sticky-top);
}

.tli-faq__list {
	border-top: 1px solid var(--hair);
}

.tli-faq__item {
	border-bottom: 1px solid var(--hair);
}

.tli-faq__q {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 22px;
	align-items: start;
	padding: 26px 0;
	background: transparent;
	border: 0;
	text-align: left;
	cursor: pointer;
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 17px;
	letter-spacing: -0.02em;
	line-height: 1.4;
	color: var(--ink);
	transition: padding-left 0.28s, background 0.25s;
}

.tli-faq__q:hover {
	padding-left: 14px;
	background: var(--gold-soft);
}

.tli-faq__sign {
	font-size: 20px;
	line-height: 1;
	color: var(--gold);
	padding-top: 2px;
}

.tli-faq__a {
	display: none;
	padding: 0 0 28px;
}

.tli-faq__item.is-open .tli-faq__a {
	display: block;
	animation: tliIn 0.34s var(--ease) both;
}

.tli-faq__a p {
	margin: 0;
	font-size: 15.5px;
	line-height: 1.68;
	color: var(--ink-2);
	max-width: 64ch;
}

.tli-cta {
	padding: clamp(68px, 6.4vw, 104px) 0;
	background: var(--deep-4);
	color: var(--on-deep);
}

.tli-cta::before {
	background:
		radial-gradient(76% 76% at 84% 0%, rgba(211, 165, 66, 0.17), transparent 58%),
		radial-gradient(64% 64% at 0% 100%, rgba(20, 169, 156, 0.15), transparent 60%);
}

.tli-cta__grid {
	position: relative;
	display: grid;
	grid-template-columns: var(--cols-2b);
	gap: var(--gap-lg);
	align-items: center;
}

.tli-cta h2 {
	font-size: clamp(36px, 3.9vw, 58px);
	margin: 18px 0 0;
}

.tli-cta .tli-lede {
	color: var(--on-deep-2);
	margin-top: 22px;
}

.tli-cta__actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 32px;
}

.tli-cta .tli-btn--lg {
	font-size: 14px;
	padding: 17px 28px;
}

.tli-cta__points {
	display: grid;
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair);
}

.tli-cta__point {
	background: var(--deep-3);
	padding: 22px 24px;
	display: grid;
	gap: 6px;
}

.tli-cta__point strong {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 21px;
	letter-spacing: -0.026em;
}

.tli-cta__point.is-gold strong {
	color: var(--gold-on-deep);
}

.tli-cta__point.is-teal strong {
	color: var(--teal-300);
}

.tli-cta__point span {
	font-size: 13.5px;
	line-height: 1.55;
	color: var(--on-deep-2);
}

/* --- inner stub --- */
.tli-page-hero {
	position: relative;
	overflow: hidden;
	background: var(--deep-3);
	color: var(--on-deep);
}

.tli-page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(96% 62% at 92% -8%, rgba(211, 165, 66, 0.2), transparent 56%),
		radial-gradient(70% 60% at -4% 106%, rgba(20, 169, 156, 0.18), transparent 58%);
	pointer-events: none;
}

.tli-page-hero__inner {
	position: relative;
	z-index: 1;
	padding: clamp(56px, 6vw, 88px) 0 clamp(44px, 4.4vw, 64px);
}

.tli-crumb {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 12px;
	color: var(--on-deep-3);
	margin-bottom: 24px;
	flex-wrap: wrap;
}

.tli-crumb a {
	color: var(--on-deep-3);
}

.tli-crumb a:hover {
	color: var(--on-deep);
}

.tli-page-hero h1 {
	font-size: clamp(38px, 4.5vw, 68px);
	line-height: 0.99;
	letter-spacing: -0.035em;
	margin: 20px 0 0;
	max-width: 18ch;
}

.tli-page-hero .tli-lede {
	margin: 24px 0 0;
	color: var(--on-deep-2);
	max-width: 56ch;
	font-size: clamp(16px, 1.2vw, 17.5px);
}

.tli-page-hero__ctas {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 32px;
}

.tli-note {
	font-size: 11.5px;
	line-height: 1.55;
	color: var(--ink-3);
	margin: 18px 0 0;
}

@media (max-width: 1080px) {
	.tli-head,
	.tli-why__grid,
	.tli-how__panel,
	.tli-who__panel,
	.tli-calc__box,
	.tli-resources__grid,
	.tli-faq__grid,
	.tli-cta__grid,
	.tli-hero__inner,
	.tli-page-hero__split,
	.tli-suits__grid,
	.tli-calc-band__inner,
	.tli-policy {
		grid-template-columns: 1fr;
	}

	.tli-how__copy,
	.tli-who__copy,
	.tli-calc__inputs {
		border-right: 0;
		border-bottom: 1px solid var(--deep-hair);
	}

	.tli-calc__inputs {
		border-bottom: 1px solid var(--hair);
	}
}

/* --- hub / service pages --- */
.tli-page-hero--tall {
	min-height: clamp(460px, 62vh, 660px);
	display: grid;
	align-content: end;
}

.tli-page-hero--tall::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(0deg, rgba(2, 12, 31, 0.92) 0%, rgba(2, 12, 31, 0.3) 44%, transparent 70%),
		repeating-linear-gradient(90deg, rgba(232, 239, 248, 0.05) 0 1px, transparent 1px 152px);
	pointer-events: none;
}

.tli-page-hero--teal::before {
	background:
		radial-gradient(96% 62% at 92% -8%, rgba(20, 169, 156, 0.22), transparent 56%),
		radial-gradient(70% 60% at -4% 106%, rgba(211, 165, 66, 0.12), transparent 58%);
}

.tli-page-hero--teal .tli-eyebrow--on-deep {
	color: var(--teal-300);
}

.tli-page-hero--teal .tli-rule {
	background: var(--teal-bright);
}

.tli-page-hero--split .tli-page-hero__split {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: var(--cols-2c);
	gap: var(--gap-lg);
	align-items: end;
	padding: clamp(56px, 6vw, 88px) 0 clamp(44px, 4.4vw, 64px);
}

.tli-facts {
	display: grid;
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair-2);
}

.tli-facts__cell {
	background: rgba(2, 12, 31, 0.6);
	padding: 19px 22px;
	display: grid;
	gap: 5px;
}

.tli-facts__cell strong {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 24px;
	letter-spacing: -0.032em;
	line-height: 1;
}

.tli-facts__cell span {
	font-size: 11.5px;
	line-height: 1.45;
	color: var(--on-deep-3);
}

.tli-hub-solutions {
	background: var(--bg);
}

.tli-hub-solutions__grid {
	display: grid;
	grid-template-columns: var(--cols-3);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-hub-solutions__grid--3 {
	grid-template-columns: var(--cols-3);
}

body.tli-site .tli-hub-solutions__card {
	background: var(--surface);
	padding: var(--pad-card);
	display: grid;
	gap: 13px;
	align-content: start;
	color: var(--ink);
}

body.tli-site .tli-hub-solutions__card:hover {
	background: var(--surface-2);
	color: var(--ink);
	transform: translateY(-2px);
	z-index: 2;
}

.tli-hub-solutions__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.tli-hub-solutions__tag {
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--gold);
	font-weight: 600;
}

.tli-hub-solutions__n {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 13px;
	color: var(--ink-3);
}

.tli-hub-solutions__card h3 {
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 23px;
	letter-spacing: -0.026em;
	line-height: 1.18;
	color: var(--ink);
}

.tli-hub-solutions__card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.62;
	color: var(--ink-2);
}

.tli-hub-solutions__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 6px;
	padding-top: 15px;
	border-top: 1px solid var(--hair-2);
	font-size: 12px;
	color: var(--ink-3);
}

.tli-hub-solutions__meta em {
	font-style: normal;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--gold);
}

.tli-steps {
	background: var(--bg-2);
	border-top: 1px solid var(--hair);
}

.tli-steps__grid {
	display: grid;
	grid-template-columns: var(--cols-4);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
}

.tli-steps__card {
	background: var(--surface);
	padding: var(--pad-card);
	display: grid;
	gap: 14px;
	align-content: start;
}

.tli-steps__n {
	width: 42px;
	height: 42px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--teal-soft);
	border: 1px solid var(--teal-hair);
	color: var(--teal);
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 14px;
}

.tli-steps__day {
	font-size: 10px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--teal);
	font-weight: 600;
}

.tli-steps__card h3 {
	font-size: 20px;
	letter-spacing: -0.024em;
	line-height: 1.24;
	color: var(--ink);
}

.tli-steps__card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.62;
	color: var(--ink-2);
}

.tli-steps__credit {
	margin-top: 4px;
	padding-top: 14px;
	border-top: 1px solid var(--hair-2);
	font-size: 12px;
	color: var(--ink-3);
}

.tli-trust-block {
	background: var(--surface);
	border-top: 1px solid var(--hair);
}

.tli-rating {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 12px 16px;
	background: var(--bg-2);
	border: 1px solid var(--hair);
	justify-self: start;
}

.tli-rating strong {
	font-family: var(--font-display);
	font-weight: 640;
	font-size: 22px;
	letter-spacing: -0.03em;
	color: var(--ink);
}

.tli-rating span {
	display: grid;
	gap: 2px;
	font-size: 11px;
	color: var(--ink-3);
}

.tli-rating em {
	font-style: normal;
	font-size: 12px;
	color: var(--gold);
	letter-spacing: 0.08em;
}

.tli-lenders__logos-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	flex-wrap: wrap;
	margin-bottom: 22px;
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--ink-3);
	font-weight: 600;
}

.tli-lenders__logos-head span:last-child {
	font-size: 12px;
	letter-spacing: 0;
	text-transform: none;
	font-weight: 400;
}

.tli-suits {
	background: var(--bg);
}

.tli-suits__grid {
	display: grid;
	grid-template-columns: var(--cols-2b);
	gap: var(--gap-lg);
	align-items: start;
}

.tli-options {
	background: var(--deep);
	color: var(--on-deep);
}

.tli-options .tli-lede {
	color: var(--on-deep-2);
}

.tli-options__grid {
	position: relative;
	display: grid;
	grid-template-columns: var(--cols-3);
	gap: 1px;
	background: var(--deep-hair-2);
	border: 1px solid var(--deep-hair-2);
}

.tli-options__card {
	background: var(--deep);
	padding: var(--pad-card);
	display: grid;
	gap: 12px;
	align-content: start;
}

.tli-options__tag {
	display: flex;
	align-items: center;
	gap: 11px;
	font-size: 9.5px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--on-deep-3);
	font-weight: 600;
}

.tli-options__dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--gold-bright);
}

.tli-options__card h3 {
	font-size: 21px;
	letter-spacing: -0.026em;
	line-height: 1.2;
}

.tli-options__card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.62;
	color: var(--on-deep-2);
}

.tli-costs {
	background: var(--bg-2);
	border-top: 1px solid var(--hair);
}

.tli-table {
	background: var(--surface);
	border: 1px solid var(--hair);
	overflow-x: auto;
}

.tli-table__row {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1.4fr;
	gap: 20px;
	padding: 20px var(--pad-card);
	border-bottom: 1px solid var(--hair-2);
	align-items: center;
	min-width: 640px;
}

.tli-table__row--head {
	padding: 16px var(--pad-card);
	border-bottom: 1px solid var(--hair);
	font-size: 9.5px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--ink-3);
	font-weight: 600;
}

.tli-table__row span {
	font-size: 14.5px;
	font-weight: 600;
	color: var(--ink);
}

.tli-table__row--head span {
	font-size: 9.5px;
	font-weight: 600;
	color: var(--ink-3);
}

.tli-table__row strong {
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 17px;
	color: var(--gold);
}

.tli-table__row em {
	font-family: var(--font-display);
	font-style: normal;
	font-weight: 600;
	font-size: 17px;
	color: var(--teal);
}

.tli-table__row small {
	font-size: 13px;
	line-height: 1.5;
	color: var(--ink-2);
}

.tli-policy {
	display: grid;
	grid-template-columns: var(--cols-2);
	gap: 1px;
	background: var(--hair);
	border: 1px solid var(--hair);
	margin-top: 48px;
}

.tli-policy__col {
	background: var(--surface);
	padding: var(--pad-card);
}

.tli-policy__col.is-alt {
	background: var(--surface-2);
}

.tli-policy__h {
	font-size: 10.5px;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	font-weight: 600;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--hair-2);
}

.tli-policy__h.is-neg {
	color: var(--negative);
}

.tli-policy__h.is-teal {
	color: var(--teal);
}

.tli-policy__list {
	display: grid;
	gap: 13px;
	margin: 18px 0 0;
	padding: 0;
	list-style: none;
}

.tli-policy__list li {
	display: grid;
	grid-template-columns: 16px 1fr;
	gap: 11px;
	font-size: 14.5px;
	line-height: 1.6;
	color: var(--ink-2);
}

.tli-calc-band {
	padding: clamp(56px, 5.4vw, 88px) 0;
	background: var(--deep-2);
	color: var(--on-deep);
}

.tli-calc-band .tli-lede {
	color: var(--on-deep-2);
	margin-top: 14px;
}

.tli-calc-band h2 {
	font-size: clamp(28px, 2.8vw, 40px);
	margin: 16px 0 0;
}

.tli-calc-band__inner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--gap-md);
	flex-wrap: wrap;
}

.tli-related {
	background: var(--bg-2);
	border-top: 1px solid var(--hair);
}

.tli-related__head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 22px;
	flex-wrap: wrap;
	margin-bottom: 38px;
}

.tli-related h2 {
	font-size: clamp(28px, 2.8vw, 40px);
	margin: 14px 0 0;
	color: var(--ink);
}

.tli-why .tli-policy {
	margin-top: 8px;
}

@media (max-width: 720px) {
	.tli-steps__grid,
	.tli-hub-solutions__grid,
	.tli-options__grid {
		grid-template-columns: 1fr;
	}

	.tli-page-hero--tall {
		min-height: 0;
	}
}
