
:root {
	--nile: #233862;
	--blue: #1c80b7;
	--blue-ink: #166a99;
	--text: #3f4246;
	--muted: #5d6670;
	--aqua: #e6f4fb;
	--mist: #f4f8fb;
	--glory: #92dcd7;
	--merino: #f7f0e7;
	--line: #e1e8ef;
	--white: #fff;
	--display: "Lora", Georgia, "Times New Roman", serif;
	--body: "Lato", "Helvetica Neue", Arial, sans-serif;
	--wrap: 1180px;
	--radius: 18px;
	color-scheme: light;
}

* {
	box-sizing: border-box;
}

[hidden] {
	display: none !important;
}

html {
	scroll-behavior: smooth;
}

@media (prefers-reduced-motion:reduce) {
	html {
		scroll-behavior: auto;
	}
	
	* {
		transition: none !important;
		animation: none !important;
	}
}

body {
	margin: 0;
	background: var(--white);
	color: var(--text);
	font-family: var(--body);
	font-size: 17px;
	line-height: 1.6;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	color: var(--blue);
}

a:hover {
	color: var(--nile);
}

:focus-visible {
	outline: 3px solid var(--glory);
	outline-offset: 2px;
	border-radius: 4px;
}

h1, h2, h3, h4 {
	font-family: var(--display);
	color: var(--nile);
	font-weight: 400;
	line-height: 1.15;
	text-wrap: balance;
	margin: 0;
}

h1 {
	font-size: clamp(36px, 5vw, 58px);
	letter-spacing: -.01em;
}

h2 {
	font-size: clamp(28px, 3.4vw, 40px);
}

h3 {
	font-size: 22px;
	font-weight: 500;
}

p {
	margin: 0;
}

.wrap {
	max-width: var(--wrap);
	margin: 0 auto;
	padding-inline: 24px;
}

.eyebrow {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .04em;
	color: var(--blue);
}

.lede {
	font-size: 20px;
	line-height: 1.55;
	max-width: 680px;
}

.btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 700;
	text-decoration: none;
	padding: 14px 26px;
	border-radius: 999px;
	border: 2px solid transparent;
	font-size: 16px;
	cursor: pointer;
	font-family: var(--body);
	line-height: 1.2;
}

.btn-primary {
	background: var(--blue);
	color: var(--white);
}

.btn-primary:hover {
	background: var(--nile);
	color: var(--white);
}

.btn-light {
	background: var(--white);
	color: var(--nile);
}

.btn-light:hover {
	background: var(--aqua);
	color: var(--nile);
}

.btn-ghost {
	border-color: rgba(255, 255, 255, .8);
	color: var(--white);
}

.btn-ghost:hover {
	background: rgba(255, 255, 255, .12);
	color: var(--white);
}

.arrow {
	font-weight: 700;
	text-decoration: none;
}

.topbar {
	background: var(--nile);
}

.topbar nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 6px 22px;
	padding-block: 8px;
	font-size: 13px;
}

.topbar a {
	color: #dbe9f5;
	text-decoration: none;
}

.topbar a:hover {
	color: var(--white);
	text-decoration: underline;
}

.site-header {
	background: rgba(255, 255, 255, .97);
	-webkit-backdrop-filter: saturate(1.4) blur(8px);
	backdrop-filter: saturate(1.4) blur(8px);
	border-bottom: 1px solid var(--line);
	position: sticky;
	top: env(safe-area-inset-top, 0);
	z-index: 50;
}

.site-header .bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding-block: 14px;
	position: relative;
}

.logo img {
	height: 32px;
	width: auto;
	display: block;
}

.menu-btn {
	display: none;
	background: 0 0;
	border: 1px solid var(--line);
	border-radius: 999px;
	padding: 9px 16px;
	font: 700 15px var(--body);
	color: var(--nile);
	cursor: pointer;
}

.primary {
	display: flex;
	align-items: center;
	gap: 10px;
}

.primary > ul {
	display: flex;
	align-items: center;
	gap: 2px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.primary > ul > li {
	position: relative;
}

.primary > ul > li.has-mega {
	position: static;
}

.primary > ul > li > a, .primary > ul > li > button {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 14px;
	font: 700 16px var(--body);
	color: var(--nile);
	text-decoration: none;
	background: 0 0;
	border: 0;
	cursor: pointer;
	border-radius: 999px;
	transition: background .15s ease, color .15s ease;
}

.primary > ul > li > a:hover, .primary > ul > li > button:hover, .primary > ul > li.open > button, .primary > ul > li:focus-within > button {
	background: var(--aqua);
	color: var(--nile);
}

.primary li.current > a, .primary li.current > button {
	color: var(--blue);
}

.chev {
	width: 12px;
	height: 12px;
	transition: transform .2s ease;
}

.primary li.open .chev {
	transform: rotate(180deg);
}

.dd {
	position: absolute;
	top: calc(100% + 10px);
	left: -8px;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 22px;
	box-shadow: 0 24px 60px rgba(22, 40, 74, .16), 0 2px 6px rgba(22, 40, 74, .06);
	padding: 14px;
	display: none;
	opacity: 0;
	transform: translateY(6px);
	transition: opacity .16s ease, transform .16s ease;
}

.dd::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -14px;
	height: 14px;
}

.primary li.open > .dd {
	display: block;
	opacity: 1;
	transform: none;
}

@media (hover:hover) and (min-width:981px) {
	.primary li:hover > .dd {
		display: block;
		opacity: 1;
		transform: none;
	}
}

.dd-ind {
	width: 580px;
	display: none;
}

.dd-ind .tiles, .dd-about .tiles {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4px;
}

.tile {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 14px;
	border-radius: 14px;
	text-decoration: none;
	color: var(--text);
}

.tile:hover {
	background: var(--mist);
	color: var(--text);
}

.tile .ic {
	flex: 0 0 40px;
	height: 40px;
	border-radius: 12px;
	background: var(--aqua);
	display: flex;
	align-items: center;
	justify-content: center;
}

.tile b {
	display: block;
	color: var(--nile);
	font-size: 15px;
	line-height: 1.3;
}

.tile span {
	display: block;
	font-size: 13.5px;
	line-height: 1.45;
	color: var(--muted);
	margin-top: 2px;
}

.dd-about {
	width: 520px;
	left: auto;
	right: -8px;
}

.dd.mega {
	left: 24px;
	right: 24px;
	max-width: 1132px;
	margin-inline: auto;
	padding: 0;
	overflow: hidden;
}

.primary li.open > .dd.mega {
	display: grid;
}

@media (hover:hover) and (min-width:981px) {
	.primary li:hover > .dd.mega {
		display: grid;
	}
}

.mega {
	grid-template-columns: 270px repeat(3, minmax(0, 1fr));
}

.mega .feature {
	background: #1f5f93 url("https://www.fusionspan.com/nitropack_static/GigaBsNszAPZjaxTuAFmkpQSICWbpXgo/assets/images/optimized/rev-bd2c8e0/www.fusionspan.com/wp-content/themes/fusionspan/assets/hero-gradient.jpg") center/cover no-repeat;
	color: var(--white);
	padding: 30px 28px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.mega .feature b {
	font-family: var(--display);
	font-weight: 400;
	font-size: 26px;
	line-height: 1.2;
	color: var(--white);
}

.mega .feature p {
	font-size: 15px;
	color: #e3eef8;
}

.mega .feature a {
	color: var(--white);
	font-weight: 700;
	text-decoration: none;
	font-size: 15px;
}

.mega .feature a:hover {
	text-decoration: underline;
}

.mega .col {
	padding: 26px 22px;
}

.mega .col + .col {
	border-left: 1px solid var(--line);
}

.mega h4 {
	font: 700 12px var(--body);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--blue);
	margin: 0 0 10px 10px;
}

.mega ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1px;
}

.mega ul a {
	display: block;
	padding: 8px 10px;
	border-radius: 10px;
	color: var(--nile);
	text-decoration: none;
	font-size: 15px;
	line-height: 1.35;
}

.mega ul a:hover {
	background: var(--mist);
	color: var(--blue);
}

.mega .acc a {
	padding: 10px;
}

.mega .acc a span {
	display: block;
	font-size: 13px;
	color: var(--muted);
	margin-top: 2px;
}

@media (max-width:980px) {
	.menu-btn {
		display: block;
	}
	
	.primary {
		display: none;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		background: var(--white);
		border-bottom: 1px solid var(--line);
		padding: 12px 20px 24px;
		flex-direction: column;
		align-items: stretch;
		max-height: calc(100vh - 120px);
		overflow: auto;
		box-shadow: 0 20px 40px rgba(22, 40, 74, .12);
	}
	
	.primary.show {
		display: flex;
	}
	
	.primary > ul {
		flex-direction: column;
		align-items: stretch;
	}
	
	.primary > ul > li > a, .primary > ul > li > button {
		justify-content: space-between;
		width: 100%;
		border-radius: 12px;
		padding: 14px 12px;
	}
	
	.dd, .dd.mega, .dd-ind, .dd-about {
		position: static;
		width: auto;
		max-width: none;
		box-shadow: none;
		border: 0;
		border-radius: 0;
		padding: 0 0 10px;
		opacity: 1;
		transform: none;
		margin: 0;
	}
	
	.dd::before {
		display: none;
	}
	
	.dd-ind .tiles, .dd-about .tiles {
		grid-template-columns: 1fr;
	}
	
	.primary li.open > .dd.mega {
		display: block;
	}
	
	.mega .feature {
		display: none;
	}
	
	.mega .col {
		padding: 6px 0 10px;
	}
	
	.mega .col + .col {
		border-left: 0;
	}
	
	.primary .btn {
		justify-content: center;
		margin-top: 10px;
	}
}

.hero {
	background: #1f5f93 url("https://www.fusionspan.com/nitropack_static/GigaBsNszAPZjaxTuAFmkpQSICWbpXgo/assets/images/optimized/rev-bd2c8e0/www.fusionspan.com/wp-content/themes/fusionspan/assets/hero-gradient.jpg") center/cover no-repeat;
	color: var(--white);
}

.hero .wrap {
	padding-block: 72px 80px;
}

.hero h1 {
	color: var(--white);
}

.hero .lede {
	color: #e6f1fa;
	margin-top: 20px;
}

.hero .eyebrow {
	color: var(--glory);
}

.crumbs {
	font-size: 14px;
	color: #cfe3f3;
	margin-bottom: 18px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.crumbs a {
	color: #e6f1fa;
	text-decoration: none;
}

.crumbs a:hover {
	text-decoration: underline;
	color: var(--white);
}

.hero .actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 30px;
}

.home-hero .wrap {
	padding-block: 96px 104px;
	display: flex;
	flex-wrap: wrap;
	gap: 56px;
	align-items: center;
}

.home-hero .copy {
	flex: 999 1 520px;
	min-width: 0;
}

.home-hero h1 {
	font-size: clamp(40px, 5.4vw, 62px);
	line-height: 1.06;
}

.section {
	padding-block: 80px;
}

.section.alt {
	background: var(--mist);
}

.section-head {
	display: grid;
	gap: 12px;
	max-width: 760px;
	margin-bottom: 36px;
}

.section-head p {
	font-size: 18px;
}

.prose {
	max-width: 740px;
	display: grid;
	gap: 18px;
	font-size: 18px;
	line-height: 1.7;
}

.prose h2 {
	margin-bottom: 4px;
}

.grid, .checklist, .steps, .pricing, .people, .plogos {
	--cols: 3;
	--gap: 20px;
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--gap);
}

.grid > *, .checklist > *, .steps > *, .pricing > *, .people > *, .plogos > * {
	flex: 0 1 calc(( 100% - ( var(--cols) - 1 ) * var(--gap) ) / var(--cols));
	min-width: min(250px, 100%);
}

@media (max-width:900px) {
	.grid > *, .checklist > *, .steps > *, .pricing > *, .people > * {
		flex-basis: calc(( 100% - var(--gap) ) / 2);
	}
}

@media (max-width:600px) {
	.grid > *, .checklist > *, .steps > *, .pricing > *, .people > * {
		flex-basis: 100%;
	}
}

.card {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 28px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}

.alt .card {
	border-color: #dbe5ee;
}

a.card {
	text-decoration: none;
	color: var(--text);
	transition: transform .15s ease, box-shadow .15s ease;
}

a.card:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 30px rgba(22, 40, 74, .1);
	color: var(--text);
}

a.card .more {
	margin-top: auto;
	padding-top: 6px;
	font-weight: 700;
	color: var(--blue);
	font-size: 15px;
}

.card.tint {
	background: var(--aqua);
	border-color: transparent;
}

.card p {
	font-size: 16px;
}

.checklist {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.checklist li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 16px 18px;
	font-size: 16px;
}

.checklist li::before {
	content: "";
	flex: 0 0 22px;
	height: 22px;
	border-radius: 11px;
	background: var(--aqua) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c80b7' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat;
	margin-top: 2px;
}

.steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	counter-reset: s;
}

.steps li {
	counter-increment: s;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 26px;
	display: grid;
	gap: 8px;
	align-content: start;
}

.steps li::before {
	content: counter(s);
	width: 40px;
	height: 40px;
	border-radius: 20px;
	background: var(--blue);
	color: var(--white);
	font: 600 18px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
}

.stats {
	display: flex;
	flex-wrap: wrap;
	gap: 24px 56px;
}

.stat .v {
	font-family: var(--display);
	font-size: clamp(40px, 5vw, 56px);
	color: var(--nile);
	line-height: 1;
}

.stat .l {
	font-size: 15px;
	margin-top: 6px;
	max-width: 220px;
}

.quote {
	background: var(--merino);
}

.quote figure {
	margin: 0;
	max-width: 880px;
	display: grid;
	gap: 18px;
}

.quote blockquote {
	margin: 0;
	font-family: var(--display);
	font-size: clamp(22px, 2.6vw, 30px);
	line-height: 1.4;
	color: var(--nile);
}

.quote blockquote::before {
	content: "“";
	display: block;
	font-size: 72px;
	line-height: .6;
	color: var(--blue);
	margin-bottom: 10px;
}

.quote figcaption {
	font-size: 16px;
}

.quote figcaption b {
	color: var(--nile);
}

.pricing {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.price-card {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 28px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.price-card .p {
	font-family: var(--display);
	font-size: 36px;
	color: var(--nile);
	line-height: 1;
}

.price-card .m {
	font-size: 14px;
	color: var(--muted);
	font-weight: 700;
}

.price-card ul {
	margin: 6px 0 0;
	padding-left: 18px;
	display: grid;
	gap: 6px;
	font-size: 15px;
}

.faq {
	max-width: 860px;
	display: grid;
	gap: 12px;
}

.faq details {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 4px 22px;
}

.faq summary {
	cursor: pointer;
	list-style: none;
	padding: 16px 0;
	font-weight: 700;
	color: var(--nile);
	display: flex;
	justify-content: space-between;
	gap: 16px;
}

.faq summary::-webkit-details-marker {
	display: none;
}

.faq summary::after {
	content: "+";
	font-size: 22px;
	line-height: 1;
	color: var(--blue);
}

.faq details[open] summary::after {
	content: "−";
}

.faq details p {
	padding-bottom: 18px;
	font-size: 16px;
}

.people {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.person {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: 16px;
	align-items: start;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 24px;
}

.avatar {
	width: 64px;
	height: 64px;
	border-radius: 32px;
	background: var(--aqua);
	color: var(--blue);
	font: 600 22px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
}

.person h3 {
	font-size: 20px;
}

.person .r {
	font-size: 14px;
	font-weight: 700;
	color: var(--blue);
	margin: 2px 0 8px;
}

.person p {
	font-size: 15px;
}

.chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.chips span {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 999px;
	padding: 9px 16px;
	font-weight: 700;
	color: var(--nile);
	font-size: 15px;
}

.callout {
	background: var(--nile);
	color: var(--white);
}

.callout .wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding-block: 64px;
}

.callout h2 {
	color: var(--white);
}

.callout p {
	color: #dbe8f4;
	margin-top: 10px;
	max-width: 640px;
	font-size: 18px;
}

.partners {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.partner {
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 28px;
	display: flex;
	gap: 22px;
	align-items: center;
	background: var(--white);
}

.partner img {
	width: 84px;
	height: auto;
	flex: 0 0 auto;
}

.logo-slot {
	width: 84px;
	height: 84px;
	flex: 0 0 84px;
	border: 2px dashed #9fb6cc;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	color: var(--muted);
	padding: 6px;
	line-height: 1.3;
}

.cta-band {
	background: #1c80b7 url("https://www.fusionspan.com/nitropack_static/GigaBsNszAPZjaxTuAFmkpQSICWbpXgo/assets/images/optimized/rev-bd2c8e0/www.fusionspan.com/wp-content/themes/fusionspan/assets/hero-gradient.jpg") center/cover no-repeat;
	color: var(--white);
}

.cta-band .wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding-block: 76px;
}

.cta-band h2 {
	color: var(--white);
}

.cta-band p {
	color: #e6f1fa;
	margin-top: 10px;
	font-size: 18px;
}

.cs-body {
	max-width: 780px;
	display: grid;
	gap: 16px;
	font-size: 18px;
	line-height: 1.7;
}

.cs-body h3 {
	font-size: 26px;
	margin-top: 22px;
}

.cs-body ul {
	margin: 0;
	padding-left: 22px;
	display: grid;
	gap: 8px;
}

.cs-body blockquote {
	margin: 8px 0;
	padding: 18px 24px;
	background: var(--merino);
	border-radius: 14px;
	font-family: var(--display);
	font-size: 21px;
	color: var(--nile);
}

.cs-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.cs-meta span {
	background: rgba(255, 255, 255, .14);
	border: 1px solid rgba(255, 255, 255, .35);
	border-radius: 999px;
	padding: 6px 14px;
	font-size: 14px;
	font-weight: 700;
}

.cs-layout {
	display: flex;
	flex-wrap: wrap;
	gap: 48px;
	align-items: flex-start;
}

.cs-layout .cs-body {
	flex: 999 1 560px;
	min-width: 0;
}

.cs-side {
	flex: 1 1 260px;
	min-width: 0;
	display: grid;
	gap: 16px;
	position: sticky;
	top: 110px;
}

.cs-side .card h3 {
	font-size: 18px;
}

.table-wrap {
	overflow-x: auto;
}

.table-wrap table {
	border-collapse: collapse;
	font-size: 15px;
	min-width: 520px;
}

.table-wrap td, .table-wrap th {
	border: 1px solid var(--line);
	padding: 8px 12px;
	text-align: left;
	vertical-align: top;
}

.filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 28px;
}

.filters button {
	font: 700 15px var(--body);
	border: 1px solid var(--line);
	background: var(--white);
	color: var(--nile);
	border-radius: 999px;
	padding: 9px 16px;
	cursor: pointer;
}

.filters button[aria-pressed=true] {
	background: var(--nile);
	color: var(--white);
	border-color: var(--nile);
}

.tag {
	font-size: 13px;
	font-weight: 700;
	color: var(--muted);
}

.cred .wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 28px;
	padding-block: 30px;
}

.cred img {
	height: 62px;
	width: auto;
}

.split {
	display: flex;
	flex-wrap: wrap;
	gap: 60px;
	align-items: center;
}

.split > * {
	flex: 1 1 420px;
	min-width: 0;
}

.linklist {
	display: flex;
	flex-direction: column;
}

.linklist a {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 15px 0;
	border-bottom: 1px solid var(--line);
	color: var(--nile);
	font-weight: 700;
	text-decoration: none;
}

.linklist a:hover {
	color: var(--blue);
}

.ai-band {
	background: var(--nile);
	color: var(--white);
}

.ai-band h2 {
	color: var(--white);
}

.ai-band p {
	color: #dbe8f4;
}

.ai-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	background: rgba(255, 255, 255, .16);
	border-radius: var(--radius);
	overflow: hidden;
}

.ai-grid div {
	background: var(--nile);
	padding: 26px;
}

.ai-grid b {
	font-family: var(--display);
	font-weight: 400;
	font-size: 20px;
	color: var(--white);
	display: block;
}

.ai-grid span {
	font-size: 15px;
	color: #c7d6ea;
}

.big {
	font-family: var(--display);
	font-size: 54px;
	line-height: 1;
	color: var(--blue);
}

.guide-card .art {
	height: 200px;
	border-radius: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: var(--aqua);
}

.guide-card .art img {
	height: 170px;
	width: auto;
}

.guide-card.m .art {
	background: var(--merino);
}

.site-footer {
	background: var(--nile);
	color: #c9d7e8;
	font-size: 15px;
}

.site-footer .cols {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	padding-block: 64px 36px;
}

.site-footer .brand {
	flex: 1 1 260px;
	display: grid;
	gap: 16px;
	align-content: start;
}

.site-footer .brand img.l {
	height: 28px;
	width: auto;
}

.site-footer nav {
	flex: 1 1 160px;
	display: grid;
	gap: 9px;
	align-content: start;
}

.site-footer nav b {
	color: var(--white);
}

.site-footer a {
	color: #c9d7e8;
	text-decoration: none;
}

.site-footer a:hover {
	color: var(--white);
	text-decoration: underline;
}

.site-footer .legal {
	border-top: 1px solid rgba(255, 255, 255, .14);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 12px;
	padding-block: 22px 30px;
	font-size: 14px;
}

.fsi {
	background: var(--white);
	color: var(--text);
	border-radius: 20px;
	box-shadow: 0 24px 60px rgba(13, 30, 66, .28);
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.fsi-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 20px 22px 0;
}

.fsi-mark {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	background: var(--blue);
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
}

.fsi-name {
	font-family: var(--display);
	font-size: 20px;
	color: var(--nile);
	line-height: 1.1;
}

.fsi-sub {
	font-size: 13px;
	color: var(--muted);
}

.fsi-close {
	margin-left: auto;
	background: 0 0;
	border: 0;
	font-size: 24px;
	color: var(--muted);
	cursor: pointer;
	padding: 4px 8px;
	border-radius: 8px;
}

.fsi-tabs {
	margin: 16px 22px 0;
	padding: 4px;
	background: #f1f4f7;
	border-radius: 999px;
	display: flex;
	gap: 4px;
}

.fsi-tabs button {
	flex: 1 1 0;
	min-width: 0;
	font: 700 14px var(--body);
	border: 0;
	border-radius: 999px;
	padding: 10px 6px;
	cursor: pointer;
	background: 0 0;
	color: #5f5e5e;
}

.fsi-tabs button[aria-selected=true] {
	background: var(--white);
	color: var(--nile);
	box-shadow: 0 1px 4px rgba(13, 30, 66, .14);
}

.fsi-panel {
	padding: 18px 22px 20px;
	display: grid;
	gap: 12px;
	font-size: 15px;
	line-height: 1.55;
	min-height: 300px;
	align-content: start;
}

.fsi-q {
	justify-self: end;
	max-width: 85%;
	background: var(--aqua);
	color: var(--nile);
	border-radius: 16px 16px 4px 16px;
	padding: 10px 14px;
}

.fsi-a {
	max-width: 95%;
}

.fsi-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.fsi-links a {
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	border: 1px solid #cfe6f3;
	border-radius: 999px;
	padding: 7px 13px;
}

.fsi-form {
	display: flex;
	align-items: center;
	gap: 8px;
	border: 1px solid #dbe3ec;
	border-radius: 999px;
	padding: 6px 6px 6px 16px;
}

.fsi-form input {
	flex: 1 1 auto;
	min-width: 0;
	border: 0;
	outline: 0;
	font: 15px var(--body);
	color: var(--nile);
	background: 0 0;
}

.fsi-send {
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 20px;
	background: var(--blue);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	flex: 0 0 40px;
}

.fsi-opt {
	text-align: left;
	font: 15px var(--body);
	color: var(--nile);
	background: var(--white);
	border: 1px solid #dbe3ec;
	border-radius: 12px;
	padding: 12px 15px;
	cursor: pointer;
}

.fsi-opt:hover {
	border-color: var(--blue);
	background: var(--aqua);
}

.fsi-prog {
	height: 6px;
	border-radius: 3px;
	background: #edf1f5;
}

.fsi-prog i {
	display: block;
	height: 6px;
	border-radius: 3px;
	background: var(--blue);
}

.fsi-meta {
	display: flex;
	justify-content: space-between;
	font-size: 13px;
	color: var(--muted);
}

.fsi-qt {
	font-family: var(--display);
	font-size: 20px;
	line-height: 1.35;
	color: var(--nile);
}

.fsi-score {
	font-family: var(--display);
	font-size: 44px;
	color: var(--blue);
	line-height: 1;
}

.fsi label {
	display: grid;
	gap: 6px;
	font-size: 13px;
	font-weight: 700;
	color: var(--nile);
}

.fsi select {
	font: 15px var(--body);
	color: var(--nile);
	border: 1px solid #dbe3ec;
	border-radius: 10px;
	padding: 10px 12px;
	background: var(--white);
}

.fsi-foot {
	padding: 11px 22px;
	border-top: 1px solid #edf1f5;
	font-size: 12px;
	color: var(--muted);
}

.home-hero .fsi {
	flex: 1 1 400px;
	min-width: 0;
}

.fsi-launch {
	position: fixed;
	right: 20px;
	bottom: calc(20px + env(safe-area-inset-bottom, 0));
	z-index: 60;
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--nile);
	color: var(--white);
	border: 0;
	border-radius: 999px;
	padding: 12px 20px 12px 12px;
	font: 700 15px var(--body);
	box-shadow: 0 12px 30px rgba(13, 30, 66, .3);
	cursor: pointer;
}

.fsi-launch .fsi-mark {
	width: 34px;
	height: 34px;
	flex-basis: 34px;
}

.fsi-pop {
	position: fixed;
	right: 20px;
	bottom: calc(88px + env(safe-area-inset-bottom, 0));
	z-index: 61;
	width: min(400px, calc(100vw - 32px));
	max-height: calc(100vh - 120px);
	overflow: auto;
}

@media (max-width:520px) {
	.fsi-pop {
		right: 16px;
		left: 16px;
		width: auto;
	}
	
	.fsi-launch {
		right: 16px;
	}
}

.capture .site-header {
	position: static;
}

.capture .fsi-launch {
	display: none !important;
}

.cs-card {
	padding: 0 0 26px;
	overflow: hidden;
}

.cs-card > :not(.cs-img) {
	margin-inline: 26px;
}

.cs-img {
	width: 100%;
	height: 150px;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
	margin-bottom: 8px;
}

.cs-banner {
	width: 100%;
	max-height: 340px;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: var(--radius);
	display: block;
}

.logos-band {
	padding-block: 56px;
	border-bottom: 1px solid var(--line);
}

.logo-strip {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
	gap: 28px 36px;
	align-items: center;
	justify-items: center;
}

.logo-strip img {
	max-height: 54px;
	max-width: 150px;
	width: auto;
	-o-object-fit: contain;
	object-fit: contain;
	filter: grayscale(1);
	opacity: .75;
	transition: filter .2s, opacity .2s;
}

.logo-strip img:hover {
	filter: none;
	opacity: 1;
}

.q-logo {
	height: 52px;
	width: auto;
	max-width: 200px;
	-o-object-fit: contain;
	object-fit: contain;
	margin-bottom: 4px;
}

.plogos {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.plogo {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 22px 18px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	text-align: center;
	min-height: 130px;
}

.plogo img {
	max-height: 52px;
	max-width: 150px;
	width: auto;
	-o-object-fit: contain;
	object-fit: contain;
}

.plogo span {
	font-size: 13px;
	font-weight: 700;
	color: var(--muted);
}

.stats {
	justify-content: center;
}

.text-art {
	display: flex;
	flex-wrap: wrap;
	gap: 48px;
	align-items: center;
}

.text-art > .prose, .text-art > div:first-child {
	flex: 999 1 520px;
	min-width: 0;
}

.text-art.left {
	flex-direction: row-reverse;
}

.art-side {
	flex: 1 1 320px;
	margin: 0;
	display: flex;
	justify-content: center;
	min-width: 0;
}

.art-side img {
	width: 100%;
	max-width: 420px;
	height: auto;
}

.art-side.photo img {
	max-width: 520px;
	border-radius: var(--radius);
	box-shadow: 0 18px 40px rgba(22, 40, 74, .14);
}

@media (max-width:900px) {
	.text-art.left {
		flex-direction: row;
	}
	
	.art-side img {
		max-width: 320px;
	}
}

.cs-lead {
	font-family: var(--display);
	font-size: 22px;
	line-height: 1.5;
	color: var(--nile);
}

.cred-badges {
	display: flex;
	gap: 18px;
	align-items: center;
	flex-wrap: wrap;
}

.cred-badges img {
	height: 62px;
	width: auto;
}

.ai-logos img {
	height: auto;
	width: min(340px, 100%);
	background: #fff;
	border-radius: 14px;
	padding: 12px 16px;
}

.price-card .p {
	font-size: 30px;
	white-space: nowrap;
}

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

.btn-mint {
	background: linear-gradient(135deg, #a8e6e1, #7fcbd6);
	color: var(--nile);
	border: 0;
}

.btn-mint:hover {
	background: #fff;
	color: var(--nile);
}

.site-footer {
	background: #1d5a86 url("https://www.fusionspan.com/nitropack_static/GigaBsNszAPZjaxTuAFmkpQSICWbpXgo/assets/images/optimized/rev-bd2c8e0/www.fusionspan.com/wp-content/themes/fusionspan/assets/hero-gradient.jpg") center/cover no-repeat;
	color: #e1edf7;
}

.site-footer .cols {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	padding-block: 64px 40px;
}

.site-footer nav {
	flex: 1 1 150px;
	display: grid;
	gap: 9px;
	align-content: start;
}

.site-footer nav b, .site-footer .news b, .site-footer .touch b {
	color: var(--white);
	font-size: 17px;
}

.site-footer a {
	color: #e1edf7;
	text-decoration: none;
}

.site-footer a:hover {
	color: var(--white);
	text-decoration: underline;
}

.news {
	flex: 1 1 280px;
	display: grid;
	gap: 14px;
	align-content: start;
	margin: 0;
}

.news input[type=email] {
	background: 0 0;
	border: 0;
	border-bottom: 1.5px solid rgba(255, 255, 255, .8);
	color: var(--white);
	font: 16px var(--body);
	padding: 10px 2px;
}

.news input[type=email]::-moz-placeholder {
	color: #cfe2f0;
}

.news input[type=email]::placeholder {
	color: #cfe2f0;
}

.consent {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 14px;
	line-height: 1.45;
}

.consent input {
	margin-top: 3px;
	width: 16px;
	height: 16px;
	flex: 0 0 16px;
}

.news .btn {
	justify-self: start;
}

.news-msg {
	font-size: 14px;
	color: var(--white);
}

.touch {
	flex: 1 1 240px;
	display: grid;
	gap: 12px;
	align-content: start;
}

.touch img.l {
	height: 34px;
	width: auto;
}

.touch .btn {
	justify-self: start;
}

.follow {
	display: flex;
	align-items: center;
	gap: 12px;
}

.follow .li {
	width: 36px;
	height: 36px;
	border-radius: 18px;
	background: var(--white);
	display: flex;
	align-items: center;
	justify-content: center;
}

.site-footer .values {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 24px 48px;
	border-top: 1px solid rgba(146, 220, 215, .6);
	border-bottom: 1px solid rgba(146, 220, 215, .6);
	padding-block: 22px;
}

.site-footer .values .vt {
	font-size: 22px;
	font-weight: 700;
	color: var(--white);
}

.val {
	display: flex;
	align-items: center;
	gap: 14px;
}

.val-ic {
	width: 64px;
	height: 64px;
	border-radius: 32px;
	border: 1.5px solid rgba(146, 220, 215, .9);
	background: rgba(255, 255, 255, .92);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.val-ic img {
	width: 46px;
	height: 46px;
	-o-object-fit: contain;
	object-fit: contain;
}

.val b {
	font-size: 22px;
	color: var(--white);
}

.site-footer .legal {
	border-top: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	padding-block: 24px 32px;
	font-size: 14px;
}

.fbadges {
	display: flex;
	gap: 18px;
	align-items: center;
	flex-wrap: wrap;
}

.fbadges img {
	height: 44px;
	width: auto;
}

.contact-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 48px;
	align-items: flex-start;
}

.contact-form {
	flex: 1 1 460px;
	min-width: 0;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 22px;
	box-shadow: 0 20px 50px rgba(22, 40, 74, .1);
	padding: 32px;
	display: grid;
	gap: 16px;
	margin: 0;
}

.contact-form h2 {
	font-size: 28px;
}

.contact-form .row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
}

.contact-form label {
	display: grid;
	gap: 6px;
	font-size: 14px;
	font-weight: 700;
	color: var(--nile);
}

.contact-form input:not([type=checkbox]), .contact-form select, .contact-form textarea {
	font: 16px var(--body);
	color: var(--nile);
	border: 1px solid #cfdbe7;
	border-radius: 10px;
	padding: 11px 12px;
	background: var(--white);
}

.contact-form .consent {
	font-weight: 400;
	color: var(--text);
}

.contact-form .btn {
	justify-self: start;
}

.form-msg {
	color: var(--nile);
	font-weight: 700;
}

.contact-side {
	flex: 1 1 380px;
	min-width: 0;
	display: grid;
	gap: 18px;
}

.contact-side h2 {
	font-size: 30px;
}

.contact-photo {
	width: 100%;
	border-radius: var(--radius);
}

.offices {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.office {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 26px;
	display: grid;
	gap: 10px;
	align-content: start;
}

.office p {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 15px;
	margin: 0;
}

.office p svg {
	flex: 0 0 18px;
	margin-top: 3px;
}

.office span {
	overflow-wrap: anywhere;
}

.office .muted {
	font-size: 14px;
	color: var(--muted);
}

.site-footer .btn-mint, .site-footer .btn-mint:hover {
	color: var(--nile);
	text-decoration: none;
}

img {
	-o-object-fit: contain;
	object-fit: contain;
}

.cs-img, .cs-banner {
	-o-object-fit: cover;
	object-fit: cover;
}

.art-side {
	align-items: center;
}

.art-side img, .contact-photo, .partner img, .split img {
	align-self: center;
	height: auto;
}

.contact-side {
	align-items: start;
}

.contact-photo {
	max-height: 420px;
	-o-object-fit: cover;
	object-fit: cover;
}

a.term {
	color: var(--blue-ink);
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: rgba(28, 128, 183, .35);
	text-underline-offset: 3px;
}

a.term:hover {
	text-decoration-color: currentColor;
}

.stats.g {
	display: grid;
	grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
	gap: 28px;
	text-align: center;
}

.stats.g .stat {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	padding: 26px 18px;
}

.alt .stats.g .stat {
	border-color: #dbe5ee;
}

.stats.g .stat .l {
	margin-inline: auto;
}

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

a.stat .l {
	color: var(--blue-ink);
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (max-width:700px) {
	.stats.g {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.evs {
	display: grid;
	gap: 20px;
}

.ev {
	display: grid;
	grid-template-columns: 120px 1fr;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(22, 40, 74, .06);
}

.ev-date {
	background: linear-gradient(160deg, var(--glory), var(--blue));
	color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 20px 8px;
	text-align: center;
}

.ev-date .m {
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .12em;
	font-size: 15px;
}

.ev-date .d {
	font: 600 40px/1.05 var(--display);
	margin: 4px 0;
}

.ev-date .y {
	font-size: 14px;
	opacity: .9;
}

.ev-body {
	padding: 24px 28px;
	display: grid;
	gap: 10px;
	align-content: start;
}

.ev-body h3 {
	font-size: 22px;
}

.ev-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
	align-items: center;
	font-size: 15px;
	font-weight: 700;
	color: var(--nile);
}

.ev-meta .dow {
	color: var(--muted);
	font-weight: 400;
}

.fmt {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border-radius: 999px;
	padding: 5px 12px;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
}

.fmt.v {
	background: var(--aqua);
	color: var(--blue-ink);
}

.fmt.p {
	background: #ffe7e1;
	color: #b8432a;
}

.ev .btn {
	margin-top: 4px;
}

.ev.past {
	box-shadow: none;
}

.ev.past .ev-date {
	background: var(--mist);
	color: var(--nile);
}

.ev.past .ev-body {
	padding: 18px 24px;
}

.ev.past h3 {
	font-size: 19px;
}

.btn-ghost-d {
	border-color: var(--blue);
	color: var(--blue-ink);
	padding: 10px 20px;
	font-size: 15px;
}

@media (max-width:600px) {
	.ev {
		grid-template-columns: 84px 1fr;
	}
	
	.ev-date .d {
		font-size: 28px;
	}
	
	.ev-body {
		padding: 18px;
	}
}

.regions {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	overflow: hidden;
}

.rtabs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding: 10px;
	background: var(--mist);
	border-bottom: 1px solid var(--line);
}

.rtabs button {
	font: 700 15px var(--body);
	border: 0;
	background: 0 0;
	color: var(--nile);
	padding: 10px 18px;
	border-radius: 999px;
	cursor: pointer;
}

.rtabs button[aria-selected=true] {
	background: var(--blue);
	color: #fff;
}

.rpanel {
	padding: 28px;
}

.rpanel + .rpanel {
	border-top: 1px solid var(--line);
}

.js .rpanel + .rpanel {
	border-top: 0;
}

.rhead {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 6px 16px;
	margin-bottom: 20px;
}

.rhead h3 {
	font-size: 26px;
}

.rhead p {
	color: var(--muted);
	font-size: 16px;
}

.rgroups {
	display: grid;
	grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
	gap: 18px;
}

.rg {
	background: var(--mist);
	border-radius: 14px;
	padding: 20px;
}

.rg h4 {
	font: 700 13px var(--body);
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--blue-ink);
	margin: 0 0 12px;
}

.rg ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 10px;
}

.rg li {
	display: flex;
	gap: 10px;
	font-size: 15px;
	line-height: 1.45;
}

.rg li::before {
	content: "";
	flex: 0 0 8px;
	height: 8px;
	margin-top: 7px;
	border-radius: 4px;
	background: var(--glory);
}

@media (max-width:800px) {
	.rgroups {
		grid-template-columns: 1fr;
	}
}

.story {
	display: grid;
	grid-template-columns: minmax(0, 380px) minmax(0, 1fr);
	gap: 36px;
	align-items: start;
}

.persona {
	position: sticky;
	top: 110px;
	background: linear-gradient(160deg, var(--nile), #1c5d8f);
	color: #fff;
	border-radius: 22px;
	padding: 30px;
	display: grid;
	gap: 12px;
}

.capture .persona {
	position: static;
}

.ptag {
	justify-self: start;
	background: rgba(255, 255, 255, .14);
	border-radius: 999px;
	padding: 5px 12px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.pav {
	width: 84px;
	height: 84px;
	border-radius: 42px;
	background: linear-gradient(135deg, var(--glory), #ffb59f);
	color: var(--nile);
	font: 600 30px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 0 6px rgba(255, 255, 255, .12);
}

.persona h3 {
	color: #fff;
	font-size: 30px;
}

.prole {
	color: var(--glory);
	font-weight: 700;
}

.persona p {
	color: rgba(255, 255, 255, .9);
}

.pcon {
	border-top: 1px solid rgba(255, 255, 255, .18);
	padding-top: 14px;
	display: grid;
	gap: 10px;
}

.pcon b {
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .08em;
}

.pchips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.pchips span {
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 999px;
	padding: 6px 12px;
	font-size: 14px;
	font-weight: 700;
}

.journey {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0;
	position: relative;
}

.journey li {
	display: grid;
	grid-template-columns: 48px 1fr;
	gap: 18px;
	position: relative;
	padding-bottom: 22px;
}

.journey li:not(:last-child)::after {
	content: "";
	position: absolute;
	left: 23px;
	top: 48px;
	bottom: 0;
	width: 2px;
	background: linear-gradient(var(--glory), var(--blue));
}

.journey .sn {
	width: 48px;
	height: 48px;
	border-radius: 24px;
	background: var(--white);
	border: 2px solid var(--blue);
	color: var(--blue);
	font: 600 20px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
}

.journey li > div {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 16px 20px;
}

.alt .journey li > div {
	border-color: #dbe5ee;
}

.journey h3 {
	font-size: 19px;
	margin-bottom: 4px;
}

.journey p {
	font-size: 15px;
}

@media (max-width:860px) {
	.story {
		grid-template-columns: 1fr;
	}
	
	.persona {
		position: static;
	}
}

.clouds {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.cloud {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 20px;
	display: grid;
	gap: 6px;
	align-content: start;
}

.cloud b {
	color: var(--nile);
	font-size: 17px;
}

.cloud span:last-child {
	font-size: 14px;
	color: var(--muted);
}

.cic {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--aqua);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 6px;
}

.cloud-proof {
	margin-top: 22px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 18px 44px;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 18px 24px;
}

.cloud-proof img {
	height: 64px;
	width: auto;
}

.cloud-proof > div, .cloud-proof > a {
	display: grid;
	text-align: center;
	text-decoration: none;
	color: var(--text);
}

.cloud-proof b {
	font: 600 30px var(--display);
	color: var(--nile);
}

.cloud-proof span {
	font-size: 14px;
}

.cloud-proof a span {
	color: var(--blue-ink);
	font-weight: 700;
}

.stars, .appx-r span {
	color: #f5a623;
	font-size: .6em;
	letter-spacing: 2px;
	vertical-align: middle;
}

@media (max-width:900px) {
	.clouds {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.layers {
	display: grid;
	gap: 0;
	max-width: 980px;
	margin: 0 auto;
}

.ly {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 20px;
	align-items: center;
	border-radius: 18px;
	padding: 22px 26px;
}

.lyl {
	font: 600 20px var(--display);
	color: var(--nile);
	display: grid;
	gap: 4px;
}

.lyl small {
	font: 400 14px var(--body);
	color: var(--muted);
}

.ly-top {
	background: var(--aqua);
}

.ly-mid {
	background: var(--white);
	border: 1px dashed #9cc6dd;
}

.ly-core {
	background: linear-gradient(140deg, var(--nile), #1c5d8f);
}

.ly-core .lyl, .ly-core .lyl small {
	color: #fff;
}

.lychips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.lychips span {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 999px;
	padding: 7px 14px;
	font-weight: 700;
	font-size: 14px;
	color: var(--nile);
}

.lycore {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.lycore div {
	background: rgba(255, 255, 255, .1);
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 12px;
	padding: 14px;
}

.lycore b {
	color: var(--glory);
	font-size: 16px;
}

.lycore p {
	color: rgba(255, 255, 255, .9);
	font-size: 14px;
	margin-top: 4px;
}

.ly-arrow {
	height: 26px;
	width: 2px;
	margin: 0 auto;
	background: var(--blue);
	position: relative;
}

.ly-arrow::before, .ly-arrow::after {
	content: "";
	position: absolute;
	left: -4px;
	width: 10px;
	height: 10px;
	border-left: 2px solid var(--blue);
	border-top: 2px solid var(--blue);
}

.ly-arrow::before {
	top: 0;
	transform: rotate(45deg);
}

.ly-arrow::after {
	bottom: 0;
	transform: rotate(225deg);
}

@media (max-width:760px) {
	.ly {
		grid-template-columns: 1fr;
	}
	
	.lycore {
		grid-template-columns: 1fr;
	}
}

.namewall {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px 40px;
}

.namewall span {
	font: 600 32px var(--display);
	color: var(--nile);
	opacity: .8;
}

.appx {
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	color: var(--nile);
	background: rgba(255, 255, 255, .7);
	border-radius: 14px;
	padding: 10px 16px;
	font-size: 14px;
	line-height: 1.35;
}

.appx-r {
	font: 600 26px var(--display);
	white-space: nowrap;
}

.site-footer a.appx, .site-footer a.appx span {
	color: var(--nile);
}

.site-footer a.appx {
	background: #fff;
	box-shadow: 0 6px 18px rgba(22, 40, 74, .15);
}

.site-footer a.appx .appx-r span {
	color: #f5a623;
}

.ai-band a.term, .callout a.term, .cta-band a.term, .persona a.term, .ly-core a.term, .hero a.term {
	color: var(--glory);
	text-decoration-color: rgba(146, 220, 215, .5);
}

img.avatar.ph {
	width: 72px;
	height: 72px;
	border-radius: 36px;
	-o-object-fit: cover;
	object-fit: cover;
	background: var(--aqua);
}

.person {
	grid-template-columns: 72px 1fr;
}

.step-img {
	height: 64px;
	width: auto;
	margin-bottom: 6px;
	align-self: flex-start;
}

.office-img {
	width: calc(100% + 52px);
	margin: -26px -26px 6px;
	height: 170px;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: var(--radius) var(--radius) 0 0;
	max-width: none;
}

.office {
	overflow: hidden;
}

.namewall-logos img {
	max-height: 60px;
	max-width: 160px;
	filter: none;
	opacity: 1;
}

.namewall-logos .nw-name {
	font: 600 26px var(--display);
	color: var(--nile);
}

.people[style*="--cols:2"] .person {
	grid-template-columns: 96px 1fr;
	gap: 22px;
}

.people[style*="--cols:2"] img.avatar.ph {
	width: 96px;
	height: 96px;
	border-radius: 48px;
}

.quote .q-card {
	max-width: 1080px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 44px;
	align-items: center;
	background: var(--white);
	border-radius: 24px;
	padding: 44px 52px;
	box-shadow: 0 18px 50px rgba(22, 40, 74, .08);
	position: relative;
	overflow: hidden;
}

.quote .q-card::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 6px;
	background: linear-gradient(var(--glory), var(--blue));
}

.q-who {
	display: grid;
	justify-items: start;
	gap: 6px;
	font-size: 15px;
	line-height: 1.4;
	padding-right: 36px;
	border-right: 1px solid var(--line);
}

.q-who b {
	color: var(--nile);
	font-size: 17px;
	margin-top: 8px;
}

.q-who span {
	color: var(--muted);
}

.q-logo-tile {
	background: var(--mist);
	border-radius: 16px;
	padding: 16px 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 84px;
	width: 100%;
}

.q-logo-tile .q-logo {
	margin: 0;
	height: auto;
	max-height: 60px;
	max-width: 170px;
}

.q-ini {
	width: 72px;
	height: 72px;
	border-radius: 36px;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	color: #fff;
	font: 600 26px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
}

.q-body {
	position: relative;
	padding-top: 8px;
}

.q-mark {
	position: absolute;
	left: -12px;
	top: -44px;
	font: 600 120px/1 var(--display);
	color: var(--glory);
	opacity: .55;
	pointer-events: none;
}

.quote .q-body blockquote {
	position: relative;
	margin: 0;
	font-family: var(--display);
	color: var(--nile);
	line-height: 1.5;
}

.quote .q-body blockquote::before {
	content: none;
}

.q-short blockquote {
	font-size: clamp(22px, 2.4vw, 30px);
}

.q-mid blockquote {
	font-size: clamp(19px, 1.9vw, 24px);
}

.q-long blockquote {
	font-size: clamp(17px, 1.5vw, 20px);
}

@media (max-width:820px) {
	.quote .q-card {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 32px 26px;
	}
	
	.q-who {
		border-right: 0;
		padding-right: 0;
		border-bottom: 1px solid var(--line);
		padding-bottom: 18px;
		order: 2;
		border-bottom: 0;
		border-top: 1px solid var(--line);
		padding-top: 18px;
	}
	
	.q-body {
		order: 1;
	}
	
	.q-mark {
		top: -36px;
		font-size: 96px;
	}
}

.hero-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 24px;
}

.hb {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .28);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	border-radius: 999px;
	padding: 6px 16px 6px 6px;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	letter-spacing: .01em;
}

.hb img {
	width: 30px;
	height: 30px;
	border-radius: 15px;
	background: #fff;
	-o-object-fit: contain;
	object-fit: contain;
	padding: 2px;
}

.hb-ai {
	padding-left: 14px;
}

.q-logo-tile .q-logo {
	width: 160px;
	max-width: 100%;
	height: auto;
	max-height: 72px;
}

.hero-badges {
	flex-wrap: wrap;
	gap: 8px;
}

.hb {
	padding: 5px 14px 5px 5px;
	font-size: 13px;
	white-space: nowrap;
}

.hb img {
	width: 28px;
	height: 28px;
	padding: 0;
	background: 0 0;
	border-radius: 0;
}

.hb-i {
	padding-left: 12px;
	gap: 8px;
}

.home-hero h1 {
	font-size: clamp(34px, 3.7vw, 50px);
	line-height: 1.12;
}

.ab-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 56px;
	align-items: center;
}

.ab-hero h1 {
	font-size: clamp(36px, 4.2vw, 56px);
}

.ab-collage {
	position: relative;
	min-height: 420px;
}

.ab-collage img {
	position: absolute;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: 22px;
	box-shadow: 0 24px 60px rgba(10, 25, 50, .35);
	border: 5px solid rgba(255, 255, 255, .9);
}

.ab-collage .c1 {
	width: 82%;
	height: 300px;
	top: 0;
	right: 0;
}

.ab-collage .c2 {
	width: 62%;
	height: 190px;
	left: 0;
	bottom: 0;
}

.ab-chip {
	position: absolute;
	right: 6%;
	bottom: 22px;
	background: #fff;
	color: var(--nile);
	border-radius: 16px;
	padding: 14px 18px;
	display: grid;
	gap: 2px;
	max-width: 230px;
	box-shadow: 0 14px 34px rgba(10, 25, 50, .25);
}

.ab-chip b {
	font: 600 30px var(--display);
	color: var(--blue);
}

.ab-chip span {
	font-size: 13px;
	line-height: 1.35;
}

.ab-proof {
	background: var(--nile);
	padding: 34px 0;
}

.ab-stats {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
}

.ab-stat {
	display: grid;
	gap: 6px;
	text-align: center;
	padding: 10px 6px;
	border-right: 1px solid rgba(255, 255, 255, .15);
	text-decoration: none;
	color: #fff;
}

.ab-stat:last-child {
	border-right: 0;
}

.ab-stat b {
	font: 600 clamp(26px, 2.6vw, 36px)/1 var(--display);
	color: #fff;
}

.ab-stat span {
	font-size: 13px;
	color: rgba(255, 255, 255, .8);
}

a.ab-stat span {
	color: var(--glory);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.ab-story {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
	gap: 56px;
	align-items: start;
}

.ab-story .prose {
	position: sticky;
	top: 110px;
}

.capture .ab-story .prose {
	position: static;
}

.ab-story h2 {
	margin: 10px 0 14px;
}

.ab-tl {
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
}

.ab-tl::before {
	content: "";
	position: absolute;
	left: 39px;
	top: 8px;
	bottom: 8px;
	width: 2px;
	background: linear-gradient(var(--glory), var(--blue));
}

.ab-tl li {
	display: grid;
	grid-template-columns: 80px 1fr;
	gap: 18px;
	padding-bottom: 22px;
	position: relative;
}

.ab-tl .y {
	justify-self: center;
	align-self: start;
	background: #fff;
	border: 2px solid var(--blue);
	color: var(--blue);
	font: 700 14px var(--body);
	border-radius: 999px;
	padding: 6px 10px;
	min-width: 64px;
	text-align: center;
	position: relative;
	z-index: 1;
}

.ab-tl li:last-child .y {
	background: var(--blue);
	color: #fff;
}

.ab-tl li > div {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 16px 20px;
}

.ab-tl h3 {
	font-size: 19px;
	margin-bottom: 4px;
}

.ab-tl p {
	font-size: 15px;
}

.ab-why {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.ab-why-card {
	background: var(--white);
	border-radius: 18px;
	padding: 26px;
	display: grid;
	gap: 10px;
	align-content: start;
	border: 1px solid #dbe5ee;
}

.ab-ic {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: var(--aqua);
	display: flex;
	align-items: center;
	justify-content: center;
}

.ab-why-card h3 {
	font-size: 20px;
}

.ab-why-card p {
	font-size: 15px;
}

.ab-values {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.ab-value {
	text-align: center;
	padding: 34px 28px;
	border-radius: 22px;
	background: linear-gradient(180deg, var(--aqua), #fff);
	border: 1px solid var(--line);
	display: grid;
	gap: 12px;
	justify-items: center;
}

.ab-value img {
	width: 96px;
	height: 96px;
	-o-object-fit: contain;
	object-fit: contain;
}

.ab-value h3 {
	font-size: 24px;
}

.ab-value p {
	font-size: 15px;
}

.ab-how {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	counter-reset: x;
}

.ab-how li {
	background: var(--white);
	border-radius: 18px;
	padding: 28px;
	border: 1px solid #dbe5ee;
	display: grid;
	gap: 10px;
	align-content: start;
	position: relative;
	overflow: hidden;
}

.ab-how .n {
	font: 600 44px/1 var(--display);
	color: transparent;
	-webkit-text-stroke: 1.5px var(--blue);
}

.ab-how h3 {
	font-size: 21px;
}

.ab-how p {
	font-size: 15px;
}

.ab-people {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 56px;
	align-items: center;
}

.ab-people h2 {
	margin: 10px 0 14px;
}

.ab-people p {
	margin-bottom: 12px;
}

.lede-d {
	font-size: 19px;
	color: var(--nile);
}

.ab-faces {
	display: flex;
	margin: 22px 0 18px;
	padding-left: 12px;
}

.ab-faces img {
	width: 58px;
	height: 58px;
	border-radius: 29px;
	border: 3px solid #fff;
	margin-left: -12px;
	background: var(--aqua);
	-o-object-fit: cover;
	object-fit: cover;
	box-shadow: 0 4px 12px rgba(22, 40, 74, .15);
}

.ab-people-photo {
	margin: 0;
}

.ab-people-photo img {
	width: 100%;
	height: 420px;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: 22px;
	box-shadow: 0 18px 40px rgba(22, 40, 74, .14);
}

.ab-offices {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.ab-office {
	background: var(--white);
	border-radius: 16px;
	overflow: hidden;
	border: 1px solid #dbe5ee;
}

.ab-office img {
	width: 100%;
	height: 150px;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
}

.ab-office div {
	padding: 14px 18px;
	display: grid;
	gap: 2px;
}

.ab-office b {
	color: var(--nile);
}

.ab-office span {
	font-size: 14px;
	color: var(--muted);
}

.ab-rec {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 18px;
}

.ab-rec-item {
	display: grid;
	justify-items: center;
	text-align: center;
	gap: 6px;
}

.ab-rec-img {
	height: 110px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ab-rec-img img {
	max-height: 110px;
	max-width: 120px;
	width: auto;
	-o-object-fit: contain;
	object-fit: contain;
}

.ab-rec-item b {
	color: var(--nile);
	font-size: 15px;
}

.ab-rec-item span {
	font-size: 13px;
	color: var(--muted);
}

.ab-rec-note {
	text-align: center;
	margin-top: 22px;
	color: var(--muted);
	font-size: 15px;
}

@media (max-width:980px) {
	.ab-hero-grid, .ab-story, .ab-people {
		grid-template-columns: 1fr;
	}
	
	.ab-story .prose {
		position: static;
	}
	
	.ab-stats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		row-gap: 22px;
	}
	
	.ab-stat:nth-child(3) {
		border-right: 0;
	}
	
	.ab-why, .ab-offices {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.ab-rec {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	
	.ab-how, .ab-values {
		grid-template-columns: 1fr;
	}
}

@media (max-width:560px) {
	.ab-collage {
		min-height: 320px;
	}
	
	.ab-collage .c1 {
		height: 220px;
	}
	
	.ab-collage .c2 {
		height: 140px;
	}
	
	.ab-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.ab-stat {
		border-right: 0;
	}
	
	.ab-why, .ab-offices, .ab-rec {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.ab-people-photo img {
		height: 260px;
	}
}

.pfocus {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 12px;
}

.pfocus span {
	background: var(--aqua);
	color: var(--blue-ink);
	border-radius: 999px;
	padding: 4px 11px;
	font-size: 12px;
	font-weight: 700;
}

.person .ppers {
	margin-top: 10px;
	font-size: 14px;
	color: var(--muted);
	font-style: italic;
}

.ab-collage .c1 {
	-o-object-position: 50% 80%;
	object-position: 50% 80%;
}

.ab-rec {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	max-width: 900px;
	margin: 0 auto;
}

.gb-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	gap: 56px;
	align-items: center;
}

.gb-photo {
	margin: 0;
	position: relative;
}

.gb-photo img {
	width: 100%;
	height: 380px;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: 22px;
	border: 5px solid rgba(255, 255, 255, .9);
	box-shadow: 0 24px 60px rgba(10, 25, 50, .35);
}

.gb-photo figcaption {
	position: absolute;
	left: -18px;
	bottom: 24px;
	background: #fff;
	color: var(--nile);
	border-radius: 16px;
	padding: 14px 18px;
	display: grid;
	gap: 2px;
	box-shadow: 0 14px 34px rgba(10, 25, 50, .25);
}

.gb-photo figcaption b {
	font: 600 30px var(--display);
	color: var(--blue);
}

.gb-photo figcaption span {
	font-size: 13px;
}

.gb-prog-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
	gap: 44px;
	align-items: center;
	margin-top: 30px;
}

.gb-prog-row.rev {
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
}

.gb-prog-row.rev img {
	order: 2;
}

.gb-prog-row img {
	width: 100%;
	height: 300px;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: 22px;
	box-shadow: 0 18px 40px rgba(22, 40, 74, .14);
}

.gb-prog-row > div {
	display: grid;
	gap: 12px;
	justify-items: start;
}

.gb-prog-row h3 {
	font-size: 30px;
}

.gb-prog-row p {
	font-size: 17px;
}

.gb-pic {
	width: 54px;
	height: 54px;
	border-radius: 16px;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	display: flex;
	align-items: center;
	justify-content: center;
}

.gb-count {
	font-size: 13px;
	font-weight: 700;
	color: var(--blue-ink);
	margin-top: auto;
}

.gb-tl {
	display: grid;
	gap: 34px;
}

.gb-year {
	display: grid;
	grid-template-columns: 110px 1fr;
	gap: 26px;
	align-items: start;
}

.gb-y {
	position: sticky;
	top: 110px;
	width: 96px;
	height: 96px;
	border-radius: 48px;
	background: radial-gradient(circle at 30% 30%, var(--glory), var(--blue));
	color: #fff;
	font: 600 26px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 12px 28px rgba(28, 128, 183, .3);
}

.capture .gb-y {
	position: static;
}

.gb-evs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.gb-ev {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 18px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.gb-ev-img {
	width: 100%;
	height: 200px;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
}

.gb-ev-in {
	padding: 18px 20px;
	display: grid;
	gap: 10px;
}

.gb-ev p {
	font-size: 15px;
}

.gb-cat {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--blue-ink);
}

.gb-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.gb-chips span {
	background: var(--aqua);
	color: var(--nile);
	border-radius: 999px;
	padding: 4px 11px;
	font-size: 13px;
	font-weight: 700;
}

.gb-why {
	background: linear-gradient(140deg, var(--nile), #1c5d8f);
	color: #fff;
}

.gb-why-grid {
	display: grid;
	grid-template-columns: 200px 1fr;
	gap: 44px;
	align-items: center;
}

.gb-why-grid img {
	width: 180px;
	height: 180px;
	-o-object-fit: contain;
	object-fit: contain;
	background: #fff;
	border-radius: 50%;
	padding: 22px;
}

.gb-why h2 {
	color: #fff;
	margin: 8px 0 12px;
}

.gb-why p {
	color: rgba(255, 255, 255, .9);
	font-size: 18px;
	margin-bottom: 18px;
}

@media (max-width:900px) {
	.gb-hero-grid, .gb-prog-row, .gb-prog-row.rev, .gb-why-grid {
		grid-template-columns: 1fr;
	}
	
	.gb-prog-row.rev img {
		order: 0;
	}
	
	.gb-year {
		grid-template-columns: 1fr;
	}
	
	.gb-y {
		position: static;
		width: 76px;
		height: 76px;
		font-size: 21px;
	}
	
	.gb-evs {
		grid-template-columns: 1fr;
	}
	
	.gb-photo figcaption {
		left: 12px;
	}
}

.pc-group {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 32px;
	padding: 28px 0;
	border-top: 1px solid var(--line);
}

.pc-group:first-of-type {
	border-top: 0;
}

.pc-gh h3 {
	font-size: 22px;
	margin-bottom: 6px;
}

.pc-gh p {
	font-size: 15px;
	color: var(--muted);
}

.pc-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.pc {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 18px 20px;
	display: grid;
	gap: 6px;
	align-content: start;
	transition: transform .15s, box-shadow .15s;
}

.pc:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 26px rgba(22, 40, 74, .1);
}

.pc-logo {
	height: 56px;
	display: flex;
	align-items: center;
	margin-bottom: 6px;
}

.pc-logo img {
	max-height: 44px;
	max-width: 150px;
	width: auto;
	-o-object-fit: contain;
	object-fit: contain;
}

.pc-logo b {
	font: 600 20px var(--display);
	color: var(--nile);
}

.pc h3 {
	font-size: 17px;
}

.pc p {
	font-size: 14px;
	color: var(--muted);
}

@media (max-width:900px) {
	.pc-group {
		grid-template-columns: 1fr;
		gap: 14px;
	}
	
	.pc-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:520px) {
	.pc-grid {
		grid-template-columns: 1fr;
	}
}

.rl-sec {
	background: linear-gradient(180deg, var(--mist), #fff);
}

.rl-head {
	display: flex;
	align-items: baseline;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 22px;
}

.rl-head h2 {
	font-size: clamp(24px, 2.4vw, 30px);
}

.rl-grid {
	display: grid;
	grid-template-columns: repeat(var(--n), minmax(0, 1fr));
	gap: 16px;
}

.rl {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 14px;
	align-items: center;
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 18px 18px;
	text-decoration: none;
	color: var(--text);
	transition: transform .15s, box-shadow .15s, border-color .15s;
}

.rl:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(22, 40, 74, .1);
	border-color: #bcd7e8;
}

.rl-ic {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--aqua);
	display: flex;
	align-items: center;
	justify-content: center;
}

.rl-t {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.rl-t b {
	color: var(--nile);
	font: 600 17px var(--display);
}

.rl-t span {
	font-size: 14px;
	color: var(--muted);
	line-height: 1.4;
}

.rl-go {
	width: 34px;
	height: 34px;
	border-radius: 17px;
	background: var(--blue);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	transition: transform .15s;
}

.rl:hover .rl-go {
	transform: translateX(3px);
}

@media (max-width:1000px) {
	.rl-grid {
		grid-template-columns: 1fr;
	}
}

.cr-collage .c1 {
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

.cr-regions {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 48px;
	align-items: center;
}

.cr-regions h2 {
	margin: 10px 0 12px;
}

.cr-regions p {
	margin-bottom: 18px;
}

.cr-ctry {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.cr-ctry span {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--white);
	border: 1px solid #dbe5ee;
	border-radius: 14px;
	padding: 14px 16px;
	font-weight: 700;
	color: var(--nile);
}

.cr-ctry svg {
	color: var(--blue);
}

.cr-spots {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.cr-spot {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 18px;
	overflow: hidden;
	text-decoration: none;
	color: var(--text);
	display: flex;
	flex-direction: column;
	transition: transform .15s, box-shadow .15s;
}

.cr-spot:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 30px rgba(22, 40, 74, .12);
}

.cr-spot img {
	width: 100%;
	height: 240px;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50% 25%;
	object-position: 50% 25%;
}

.cr-spot > div {
	padding: 16px 18px;
	display: grid;
	gap: 6px;
	flex: 1;
}

.cr-spot .d {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--muted);
}

.cr-spot h3 {
	font-size: 20px;
}

.cr-spot p {
	font-size: 14px;
}

.cr-spot .more {
	margin-top: auto;
	font-weight: 700;
	color: var(--blue);
	font-size: 14px;
}

.cr-quotes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-top: 26px;
}

.cr-quotes blockquote {
	margin: 0;
	background: var(--merino);
	border-radius: 18px;
	padding: 24px 26px;
	position: relative;
}

.cr-quotes p {
	font: 400 18px/1.5 var(--display);
	color: var(--nile);
}

.cr-quotes cite {
	display: block;
	margin-top: 10px;
	font-style: normal;
	font-weight: 700;
	font-size: 14px;
	color: var(--blue-ink);
}

.cr-awards {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 18px;
	align-items: start;
}

.cr-awards div {
	display: grid;
	justify-items: center;
	gap: 8px;
	text-align: center;
}

.cr-awards img {
	height: 100px;
	width: auto;
	max-width: 140px;
	-o-object-fit: contain;
	object-fit: contain;
}

.cr-awards span {
	font-size: 13px;
	font-weight: 700;
	color: var(--nile);
}

.cr-glass {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
	gap: 48px;
	align-items: center;
}

.cr-glass img {
	width: 100%;
	max-width: 440px;
	justify-self: center;
}

.cr-glass h2 {
	margin: 10px 0 12px;
}

.cr-glass p {
	margin-bottom: 18px;
}

@media (max-width:980px) {
	.cr-regions, .cr-glass {
		grid-template-columns: 1fr;
	}
	
	.cr-spots {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.cr-quotes {
		grid-template-columns: 1fr;
	}
	
	.cr-awards {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width:520px) {
	.cr-spots {
		grid-template-columns: 1fr;
	}
	
	.cr-ctry {
		grid-template-columns: 1fr;
	}
}

.rs-guides {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.rs-guide {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 20px;
	overflow: hidden;
	text-decoration: none;
	color: var(--text);
	display: flex;
	flex-direction: column;
	transition: transform .15s, box-shadow .15s;
}

.rs-guide:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 34px rgba(22, 40, 74, .12);
}

.rs-guide .art {
	background: var(--aqua);
	height: 180px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.rs-guide:nth-child(2) .art {
	background: var(--merino);
}

.rs-guide .art img {
	height: 150px;
	width: auto;
}

.rs-gb {
	padding: 22px 24px;
	display: grid;
	gap: 8px;
	flex: 1;
}

.rs-gb h3 {
	font-size: 21px;
}

.rs-gb p {
	font-size: 15px;
}

.rs-gb .more {
	margin-top: auto;
	font-weight: 700;
	color: var(--blue);
}

.rs-bar {
	display: grid;
	gap: 12px;
	background: var(--white);
	border: 1px solid #dbe5ee;
	border-radius: 18px;
	padding: 16px 18px;
	margin-bottom: 14px;
	position: sticky;
	top: 84px;
	z-index: 5;
	box-shadow: 0 8px 24px rgba(22, 40, 74, .06);
}

.capture .rs-bar {
	position: static;
}

.rs-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.rs-chips button {
	font: 700 14px var(--body);
	border: 1px solid var(--line);
	background: var(--mist);
	color: var(--nile);
	border-radius: 999px;
	padding: 8px 16px;
	cursor: pointer;
}

.rs-chips button.on {
	background: var(--blue);
	border-color: var(--blue);
	color: #fff;
}

.rs-search input {
	width: 100%;
	font: 16px var(--body);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 11px 14px;
	background: var(--mist);
}

.rs-count {
	font-size: 14px;
	color: var(--muted);
	margin: 6px 2px 14px;
}

.rs-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.rs-card {
	background: var(--white);
	border: 1px solid #dbe5ee;
	border-radius: 18px;
	padding: 20px 22px;
	text-decoration: none;
	color: var(--text);
	display: flex;
	flex-direction: column;
	gap: 10px;
	transition: transform .15s, box-shadow .15s;
}

.rs-card[hidden] {
	display: none;
}

.rs-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(22, 40, 74, .1);
}

.rs-top {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
}

.rs-ic {
	width: 34px;
	height: 34px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.t-webinar {
	color: var(--blue-ink);
}

.t-webinar .rs-ic {
	background: var(--aqua);
}

.t-download {
	color: #b8432a;
}

.t-download .rs-ic {
	background: #ffe7e1;
}

.t-resource {
	color: #2f7d72;
}

.t-resource .rs-ic {
	background: #dff5f2;
}

.rs-date {
	margin-left: auto;
	color: var(--muted);
	font-weight: 700;
	text-transform: none;
	letter-spacing: 0;
}

.rs-card h3 {
	font-size: 19px;
	line-height: 1.3;
}

.rs-card p {
	font-size: 14px;
	color: var(--muted);
}

.rs-foot {
	margin-top: auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	padding-top: 6px;
	border-top: 1px solid var(--line);
}

.rs-topic {
	font-size: 12px;
	font-weight: 700;
	color: var(--nile);
	background: var(--mist);
	border-radius: 999px;
	padding: 4px 10px;
}

.rs-go {
	font-weight: 700;
	color: var(--blue);
	font-size: 14px;
}

.rs-empty {
	padding: 30px;
	text-align: center;
	background: var(--white);
	border-radius: 16px;
}

@media (max-width:980px) {
	.rs-guides, .rs-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.rs-guides > :last-child {
		grid-column: 1/-1;
	}
}

@media (max-width:600px) {
	.rs-guides, .rs-grid {
		grid-template-columns: 1fr;
	}
	
	.rs-bar {
		position: static;
	}
}

.cr-collage img {
	border: 0;
	box-shadow: none;
	border-radius: 16px;
}

.rd-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 16px 0 18px;
}

.rd-meta .hb {
	padding: 6px 14px;
}

.rd-h1 {
	font-size: clamp(32px, 3.6vw, 48px);
	max-width: 900px;
}

.rd-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 380px;
	gap: 56px;
	align-items: start;
}

.rd-body h2 {
	font-size: 26px;
	margin: 30px 0 10px;
}

.rd-body p {
	margin-bottom: 12px;
}

.rd-intro {
	font-size: 20px;
	color: var(--nile);
}

.rd-lead {
	font-weight: 700;
	color: var(--nile);
}

.rd-list {
	list-style: none;
	padding: 0;
	margin: 0 0 10px;
	display: grid;
	gap: 10px;
}

.rd-list li {
	display: flex;
	gap: 12px;
	background: var(--mist);
	border-radius: 12px;
	padding: 12px 16px;
}

.rd-list li::before {
	content: "";
	flex: 0 0 20px;
	height: 20px;
	border-radius: 10px;
	margin-top: 2px;
	background: var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/12px no-repeat;
}

.rd-spk {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 14px;
}

.rd-spk div {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 14px;
	padding: 16px;
	display: grid;
	gap: 4px;
	justify-items: start;
}

.rd-spk .av {
	width: 48px;
	height: 48px;
	border-radius: 24px;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	color: #fff;
	font: 600 17px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 6px;
}

.rd-spk b {
	color: var(--nile);
}

.rd-spk span:last-child {
	font-size: 14px;
	color: var(--muted);
}

.rd-side {
	position: sticky;
	top: 100px;
}

.capture .rd-side {
	position: static;
}

.rd-form {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 20px;
	padding: 24px;
	box-shadow: 0 18px 44px rgba(22, 40, 74, .1);
	display: grid;
	gap: 10px;
}

.rd-form img {
	width: 100%;
	border-radius: 14px;
	max-height: 220px;
	-o-object-fit: cover;
	object-fit: cover;
}

.rd-form h2 {
	font-size: 24px;
}

.rd-form > p {
	color: var(--muted);
	font-size: 15px;
}

.rd-f {
	padding: 0;
	border: 0;
	box-shadow: none;
	background: 0 0;
}

@media (max-width:960px) {
	.rd-grid {
		grid-template-columns: 1fr;
	}
	
	.rd-side {
		position: static;
	}
}

.rd-form img {
	-o-object-fit: contain;
	object-fit: contain;
	background: var(--aqua);
	max-height: 260px;
	height: auto;
}

.hero {
	position: relative;
	overflow: hidden;
}

.hero::after {
	content: "";
	position: absolute;
	right: -140px;
	bottom: -220px;
	width: 560px;
	height: 560px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(146, 220, 215, .35), rgba(146, 220, 215, 0) 70%);
	pointer-events: none;
}

.hero.has-art .wrap {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
	gap: 48px;
	align-items: center;
	padding-block: 56px 64px;
	position: relative;
	z-index: 1;
}

.hero-art {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 340px;
}

.hero-art-card {
	position: relative;
	z-index: 2;
	width: min(400px, 100%);
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 30%, #fff, #e6f4fb 70%);
	box-shadow: 0 30px 70px rgba(8, 30, 60, .35);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border: 6px solid rgba(255, 255, 255, .55);
}

.hero-art-card img {
	width: 78%;
	height: 78%;
	-o-object-fit: contain;
	object-fit: contain;
}

.hero-art .ring {
	position: absolute;
	border-radius: 50%;
	border: 1.5px dashed rgba(255, 255, 255, .45);
}

.hero-art .r1 {
	width: 470px;
	height: 470px;
	max-width: 115%;
	aspect-ratio: 1/1;
	height: auto;
}

.hero-art .r2 {
	width: 14px;
	height: 14px;
	border: 0;
	background: var(--glory);
	top: 12%;
	right: 12%;
	box-shadow: -300px 220px 0 -2px #ff7654, -60px 280px 0 3px rgba(255, 255, 255, .8);
}

@media (max-width:900px) {
	.hero.has-art .wrap {
		grid-template-columns: 1fr;
	}
	
	.hero-art {
		min-height: 0;
		order: -1;
	}
	
	.hero-art-card {
		width: 220px;
	}
	
	.hero-art .r1 {
		width: 280px;
	}
	
	.hero-art .r2 {
		display: none;
	}
}

.section-head h2 {
	position: relative;
	padding-bottom: 14px;
}

.section-head h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 56px;
	height: 4px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--glory), var(--blue));
}

.section-head[style*="text-align:center"] h2::after {
	left: 50%;
	transform: translateX(-50%);
}

.card .c-ic {
	width: 46px;
	height: 46px;
	border-radius: 14px;
	background: linear-gradient(135deg, #e6f4fb, #d2ecf5);
	color: var(--blue);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 4px;
	transition: transform .2s, background .2s, color .2s;
}

a.card:hover .c-ic, .card:hover .c-ic {
	background: linear-gradient(135deg, var(--glory), var(--blue));
	color: #fff;
	transform: rotate(-6deg);
}

.card {
	box-shadow: 0 1px 0 rgba(22, 40, 74, .04);
	transition: transform .18s, box-shadow .18s, border-color .18s;
}

.card:hover {
	box-shadow: 0 16px 36px rgba(22, 40, 74, .1);
	border-color: #c9dfec;
}

.cs-card .c-ic {
	display: none;
}

.steps {
	position: relative;
}

.steps li {
	position: relative;
	border-top: 4px solid transparent;
	background-image: linear-gradient(#fff, #fff), linear-gradient(90deg, var(--glory), var(--blue));
	background-origin: border-box;
	background-clip: padding-box, border-box;
}

.steps li::before {
	background: linear-gradient(135deg, var(--glory), var(--blue));
	box-shadow: 0 6px 16px rgba(28, 128, 183, .3);
}

.section.alt {
	background: radial-gradient(900px 300px at 100% 0%, rgba(146, 220, 215, .18), transparent 70%), radial-gradient(700px 260px at 0% 100%, rgba(28, 128, 183, .07), transparent 70%), var(--mist);
}

.journey .st-story {
	font-size: 16px;
	color: var(--text);
	line-height: 1.6;
}

.journey .st-bts {
	margin-top: 10px;
	font-size: 13.5px;
	color: var(--blue-ink);
	background: var(--aqua);
	border-radius: 10px;
	padding: 8px 12px;
}

.journey .st-bts b {
	display: block;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .08em;
	margin-bottom: 2px;
}

.journey .st-close .sn {
	background: linear-gradient(135deg, #ff9b7f, #ff7654);
	border-color: transparent;
	color: #fff;
	font-size: 20px;
}

.journey .st-close > div {
	background: linear-gradient(135deg, var(--nile), #1c5d8f);
	border: 0;
}

.journey .st-close p {
	color: #fff;
	font: 500 20px/1.45 var(--display);
}

.h-inds {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.h-ind {
	background: var(--white);
	border: 1px solid var(--line);
	border-radius: 22px;
	overflow: hidden;
	text-decoration: none;
	color: var(--text);
	display: flex;
	flex-direction: column;
	transition: transform .18s, box-shadow .18s;
}

.h-ind:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 40px rgba(22, 40, 74, .12);
}

.h-ind-art {
	height: 190px;
	background: radial-gradient(circle at 50% 60%, #fff, #e6f4fb 75%);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 14px;
}

.h-ind:nth-child(2) .h-ind-art {
	background: radial-gradient(circle at 50% 60%, #fff, #f7f0e7 75%);
}

.h-ind:nth-child(3) .h-ind-art {
	background: radial-gradient(circle at 50% 60%, #fff, #e2f6f4 75%);
}

.h-ind:nth-child(4) .h-ind-art {
	background: radial-gradient(circle at 50% 60%, #fff, #ffeee9 75%);
}

.h-ind-art img {
	max-height: 100%;
	max-width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.h-ind-t {
	padding: 18px 20px 20px;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 6px 12px;
	align-items: end;
}

.h-ind-t h3 {
	font-size: 20px;
	grid-column: 1/-1;
}

.h-ind-t p {
	font-size: 15px;
	color: var(--muted);
}

.h-wds {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.h-wd {
	background: var(--white);
	border-radius: 22px;
	padding: 22px;
	text-decoration: none;
	color: var(--text);
	display: flex;
	flex-direction: column;
	gap: 8px;
	border: 1px solid #dbe5ee;
	transition: transform .18s, box-shadow .18s;
}

.h-wd:hover {
	transform: translateY(-4px);
	box-shadow: 0 20px 40px rgba(22, 40, 74, .12);
}

.h-wd img {
	height: 150px;
	width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	margin-bottom: 6px;
}

.h-wd h3 {
	font-size: 20px;
}

.h-wd p {
	font-size: 15px;
	color: var(--muted);
}

.h-wd .more {
	margin-top: auto;
	font-weight: 700;
	color: var(--blue);
	font-size: 15px;
}

.h-prod {
	background: linear-gradient(140deg, var(--nile), #1a4f80 60%, #1c80b7);
	color: #fff;
}

.h-prod h2 {
	color: #fff;
}

.h-prs {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.h-pr {
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 22px;
	padding: 18px 18px 22px;
	text-decoration: none;
	color: #fff;
	display: flex;
	flex-direction: column;
	gap: 8px;
	transition: transform .18s, background .18s;
}

.h-pr:hover {
	transform: translateY(-4px);
	background: rgba(255, 255, 255, .14);
}

.h-pr-art {
	background: #fff;
	border-radius: 16px;
	height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 12px;
	margin-bottom: 8px;
}

.h-pr-art img {
	max-height: 100%;
	max-width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.h-pr h3 {
	font-size: 22px;
	color: #fff;
}

.h-pr p {
	color: rgba(255, 255, 255, .85);
	font-size: 15px;
}

.h-pr .more {
	margin-top: auto;
	font-weight: 700;
	color: var(--glory);
}

.h-ai-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
	gap: 48px;
	align-items: center;
}

.h-ai-copy {
	display: grid;
	gap: 18px;
	justify-items: start;
}

.h-ai-copy p {
	font-size: 19px;
}

.h-ai-art {
	display: flex;
	justify-content: center;
}

.h-ai-art img {
	max-height: 360px;
	width: auto;
	filter: drop-shadow(0 20px 40px rgba(0, 0, 0, .3));
}

@media (max-width:1000px) {
	.h-inds, .h-wds {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.h-prs {
		grid-template-columns: 1fr;
	}
	
	.h-ai-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width:560px) {
	.h-inds, .h-wds {
		grid-template-columns: 1fr;
	}
}

.fc-hero {
	background: radial-gradient(800px 400px at 85% 20%, rgba(146, 220, 215, .35), transparent 60%), linear-gradient(135deg, #0f2a4f, #1c5d8f 55%, #1c80b7);
}

.fc-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: 44px;
	align-items: center;
	padding-block: 60px 70px !important;
	position: relative;
	z-index: 1;
}

.fc-logo {
	font: 600 22px var(--body);
	color: #fff;
	letter-spacing: .01em;
	margin: 16px 0 10px;
	display: inline-flex;
	align-items: center;
	gap: 2px;
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .25);
	padding: 6px 14px;
	border-radius: 999px;
}

.fc-logo b {
	color: var(--glory);
}

.fc-hero h1 {
	font-size: clamp(34px, 3.8vw, 52px);
}

.fc-hero-art {
	background: #fff;
	border-radius: 28px;
	padding: 18px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, .35);
	transform: rotate(-1.5deg);
}

.fc-hero-art img {
	width: 100%;
	height: auto;
	display: block;
}

.fc-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 22px;
}

.fc-pills span {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .28);
	border-radius: 999px;
	padding: 7px 14px;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
}

.fc-pills svg {
	color: var(--glory);
}

button.btn {
	font-family: var(--body);
}

.fc-cost {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: 48px;
	align-items: center;
}

.fc-cost-art img {
	width: 100%;
	max-width: 420px;
	display: block;
	margin: 0 auto;
}

.fc-costs {
	display: grid;
	gap: 14px;
}

.fc-costc {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 16px;
	align-items: start;
	background: #fff;
	border: 1px solid var(--line);
	border-left: 4px solid #ff7654;
	border-radius: 16px;
	padding: 18px 20px;
}

.fc-ci {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #ffe7e1;
	color: #c2492e;
	display: flex;
	align-items: center;
	justify-content: center;
}

.fc-costc h3 {
	font-size: 19px;
	margin-bottom: 4px;
}

.fc-costc p {
	font-size: 15px;
}

.fc-stack {
	display: grid;
	grid-template-columns: 1fr auto 1fr auto 1fr;
	gap: 12px;
	align-items: stretch;
}

.fc-layer {
	border-radius: 22px;
	padding: 28px 26px;
	display: grid;
	gap: 10px;
	align-content: start;
	position: relative;
}

.fc-layer .n {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	font: 600 18px var(--display);
}

.fc-layer h3 {
	font-size: 24px;
}

.fc-layer p {
	font-size: 15px;
}

.fc-layer.l1 {
	background: #fff;
	border: 1px solid var(--line);
}

.fc-layer.l1 .n {
	background: var(--aqua);
	color: var(--blue);
}

.fc-layer.l2 {
	background: linear-gradient(140deg, var(--nile), #1c5d8f);
	color: #fff;
	box-shadow: 0 22px 50px rgba(22, 40, 74, .25);
	transform: scale(1.04);
}

.fc-layer.l2 h3 {
	color: #fff;
}

.fc-layer.l2 p {
	color: rgba(255, 255, 255, .88);
}

.fc-layer.l2 .n {
	background: var(--glory);
	color: var(--nile);
}

.fc-layer.l3 {
	background: #fff;
	border: 1px dashed #9cc6dd;
}

.fc-layer.l3 .n {
	background: #ffe7e1;
	color: #c2492e;
}

.fc-arrow {
	width: 28px;
	align-self: center;
	height: 2px;
	background: var(--blue);
	position: relative;
}

.fc-arrow::after {
	content: "";
	position: absolute;
	right: -1px;
	top: -5px;
	width: 10px;
	height: 10px;
	border-top: 2px solid var(--blue);
	border-right: 2px solid var(--blue);
	transform: rotate(45deg);
}

.fc-video-wrap {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: 48px;
	align-items: center;
}

.fc-video {
	position: relative;
	border: 0;
	padding: 0;
	cursor: pointer;
	border-radius: 24px;
	overflow: hidden;
	background: radial-gradient(circle at 60% 40%, #2a6fa8, #0f2a4f);
	aspect-ratio: 16/9;
	width: 100%;
	box-shadow: 0 26px 60px rgba(22, 40, 74, .28);
	display: flex;
	align-items: center;
	justify-content: center;
}

.fc-video img {
	position: absolute;
	right: 6%;
	bottom: 0;
	height: 92%;
	width: auto;
	opacity: .95;
}

.fc-play {
	position: relative;
	z-index: 2;
	width: 86px;
	height: 86px;
	border-radius: 43px;
	background: linear-gradient(135deg, #ff9b7f, #ff7654);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 0 12px rgba(255, 255, 255, .18);
	transition: transform .2s;
}

.fc-video:hover .fc-play {
	transform: scale(1.08);
}

.fc-dur {
	position: absolute;
	right: 14px;
	top: 14px;
	background: rgba(0, 0, 0, .45);
	color: #fff;
	font-weight: 700;
	font-size: 13px;
	padding: 4px 10px;
	border-radius: 8px;
}

.fc-vt {
	position: absolute;
	left: 22px;
	bottom: 18px;
	color: #fff;
	font: 600 22px var(--display);
}

.fc-modal {
	border: 0;
	border-radius: 22px;
	padding: 0;
	max-width: 520px;
	width: calc(100% - 32px);
	box-shadow: 0 30px 80px rgba(0, 0, 0, .4);
}

.fc-modal::backdrop {
	background: rgba(10, 25, 50, .6);
}

.fc-modal-in {
	padding: 28px;
	display: grid;
	gap: 12px;
}

.fc-modal h2 {
	font-size: 26px;
}

.fc-x-f {
	position: absolute;
	right: 10px;
	top: 8px;
}

.fc-x {
	border: 0;
	background: 0 0;
	font-size: 30px;
	cursor: pointer;
	color: var(--muted);
}

.fc-ai {
	background: linear-gradient(140deg, #0f2a4f, #1c5d8f);
	color: #fff;
}

.fc-ai h2 {
	color: #fff;
	margin: 8px 0;
}

.fc-ai-grid {
	display: grid;
	grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
	gap: 48px;
	align-items: center;
}

.fc-ai-art img {
	max-height: 340px;
	width: auto;
	display: block;
	margin: 0 auto;
	filter: drop-shadow(0 20px 40px rgba(0, 0, 0, .35));
}

.fc-ai-lede {
	font-size: 19px;
	color: rgba(255, 255, 255, .9);
	margin-bottom: 18px;
}

.fc-ai-cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.fc-ai-cards div {
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 18px;
	padding: 20px;
}

.fc-ai-cards b {
	font: 600 22px var(--display);
	color: var(--glory);
}

.fc-ai-cards p {
	color: rgba(255, 255, 255, .9);
	font-size: 15px;
	margin-top: 6px;
}

.fc-spec {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 28px;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 20px;
	padding: 8px 28px;
}

.fc-spec div {
	display: grid;
	grid-template-columns: 200px 1fr;
	gap: 16px;
	padding: 14px 0;
	border-bottom: 1px solid var(--line);
}

.fc-spec span {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--blue-ink);
}

.fc-spec b {
	color: var(--nile);
	font-weight: 700;
	font-size: 15px;
}

.fa-wrap {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: 48px;
	align-items: start;
}

.fa-intro {
	position: sticky;
	top: 110px;
}

.capture .fa-intro {
	position: static;
}

.fa-intro h2 {
	margin: 8px 0 12px;
}

.fa-prog {
	height: 8px;
	border-radius: 4px;
	background: #dbe5ee;
	margin-top: 20px;
	overflow: hidden;
}

.fa-prog i {
	display: block;
	height: 100%;
	width: 0;
	background: linear-gradient(90deg, var(--glory), var(--blue));
	transition: width .3s;
}

.fa-count {
	font-size: 14px;
	color: var(--muted);
	margin-top: 8px;
}

.fa-form {
	display: grid;
	gap: 12px;
}

.fa-q {
	border: 1px solid #dbe5ee;
	border-radius: 16px;
	background: #fff;
	padding: 16px 18px;
	margin: 0;
}

.fa-q.fa-miss {
	border-color: #ff7654;
	box-shadow: 0 0 0 3px rgba(255, 118, 84, .2);
}

.fa-q legend {
	display: block;
	font-weight: 700;
	color: var(--nile);
	font-size: 16px;
	padding: 0;
	width: 100%;
}

.fa-sec {
	display: inline-block;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--blue-ink);
	margin-right: 10px;
}

.fa-n {
	float: right;
	font-size: 12px;
	color: var(--muted);
	font-weight: 700;
}

.fa-sec + .fa-n + * {
	display: block;
}

.fa-opts {
	display: flex;
	gap: 8px;
	margin-top: 12px;
	flex-wrap: wrap;
}

.fa-opts label {
	flex: 1 1 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border: 1px solid var(--line);
	border-radius: 999px;
	padding: 9px 12px;
	cursor: pointer;
	font-weight: 700;
	font-size: 14px;
	color: var(--nile);
	background: var(--mist);
}

.fa-opts input {
	accent-color: var(--blue);
}

.fa-result {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 24px;
	align-items: start;
	background: #fff;
	border-radius: 22px;
	padding: 28px;
	box-shadow: 0 20px 50px rgba(22, 40, 74, .12);
}

.fa-score {
	width: 110px;
	height: 110px;
	border-radius: 55px;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.fa-score span {
	font: 600 40px/1 var(--display);
}

.fa-score small {
	font-size: 13px;
}

.fa-result h3 {
	font-size: 26px;
	margin: 6px 0 8px;
}

.fa-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 14px;
}

.fc-fit {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.fc-fit-c {
	border-radius: 20px;
	padding: 26px;
}

.fc-fit-c.yes {
	background: linear-gradient(160deg, #e2f6f4, #fff);
	border: 1px solid #bfe7e2;
}

.fc-fit-c.no {
	background: var(--mist);
	border: 1px solid var(--line);
}

.fc-fit-c h3 {
	font-size: 21px;
	margin-bottom: 8px;
}

@media (max-width:980px) {
	.fc-hero-grid, .fc-cost, .fc-video-wrap, .fc-ai-grid, .fa-wrap, .fc-fit {
		grid-template-columns: 1fr;
	}
	
	.fc-stack {
		grid-template-columns: 1fr;
	}
	
	.fc-arrow {
		width: 2px;
		height: 24px;
		justify-self: center;
	}
	
	.fc-arrow::after {
		right: -5px;
		top: auto;
		bottom: 0;
		transform: rotate(135deg);
	}
	
	.fc-layer.l2 {
		transform: none;
	}
	
	.fc-spec {
		grid-template-columns: 1fr;
	}
	
	.fc-ai-cards {
		grid-template-columns: 1fr;
	}
	
	.fa-intro {
		position: static;
	}
}

@media (max-width:560px) {
	.fc-spec div {
		grid-template-columns: 1fr;
		gap: 4px;
	}
	
	.fa-result {
		grid-template-columns: 1fr;
	}
}

.hs-wrap .hs-form fieldset {
	max-width: none !important;
}

.hs-wrap .hs-form .hs-form-field {
	margin-bottom: 14px;
}

.hs-wrap .hs-form label {
	font-weight: 700;
	color: var(--nile);
	font-size: 14px;
}

.hs-wrap .hs-form input[type=text], .hs-wrap .hs-form input[type=email], .hs-wrap .hs-form input[type=tel], .hs-wrap .hs-form textarea, .hs-wrap .hs-form select {
	width: 100% !important;
	font: 16px var(--body);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 12px 14px;
	background: var(--mist);
}

.hs-wrap .hs-form .hs-button {
	font: 700 16px var(--body);
	background: var(--blue);
	color: #fff;
	border: 0;
	border-radius: 999px;
	padding: 14px 26px;
	cursor: pointer;
}

.hs-wrap .hs-error-msgs {
	list-style: none;
	padding: 0;
	margin: 4px 0 0;
	color: #c2492e;
	font-size: 13px;
}

.hs-wrap .legal-consent-container {
	font-size: 13px;
}

.site-footer .hs-wrap label, .site-footer .hs-wrap .legal-consent-container {
	color: #fff;
}

.assess .fa-intro .as-art {
	width: 200px;
	margin-bottom: 10px;
}

.as-secs {
	list-style: none;
	padding: 0;
	margin: 18px 0 0;
	display: grid;
	gap: 8px;
}

.as-secs li {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 700;
	color: var(--nile);
	background: #fff;
	border: 1px solid #dbe5ee;
	border-radius: 12px;
	padding: 10px 14px;
}

.as-secs small {
	margin-left: auto;
	padding-left: 12px;
	font-weight: 400;
	color: var(--muted);
	white-space: nowrap;
	flex: none;
}

.as-secs li .as-sec-ic {
	flex: none;
}

.as-sec {
	background: #fff;
	border: 1px solid #dbe5ee;
	border-radius: 22px;
	padding: 20px;
	display: grid;
	gap: 10px;
	box-shadow: 0 8px 24px rgba(22, 40, 74, .05);
}

.as-sec + .as-sec {
	margin-top: 14px;
}

.as-sec-h {
	display: flex;
	align-items: center;
	gap: 10px;
	padding-bottom: 6px;
	border-bottom: 1px solid var(--line);
}

.as-sec-h b {
	font: 600 20px var(--display);
	color: var(--nile);
}

.as-sec-n {
	margin-left: auto;
	font-size: 12px;
	font-weight: 700;
	color: var(--muted);
	text-transform: uppercase;
	letter-spacing: .06em;
}

.as-sec-ic {
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.as-secs .as-sec-ic {
	width: 30px;
	height: 30px;
	border-radius: 9px;
}

.assess .fa-q {
	border: 0;
	border-radius: 14px;
	background: var(--mist);
	padding: 14px 16px;
	transition: background .2s;
}

.assess .fa-q.fa-done {
	background: #eef8f6;
}

.assess .fa-q legend {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	float: none;
}

.assess .fa-n {
	float: none;
	flex: 0 0 28px;
	height: 28px;
	border-radius: 14px;
	background: #fff;
	border: 1.5px solid var(--blue);
	color: var(--blue);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
}

.assess .fa-q.fa-done .fa-n {
	background: var(--blue);
	color: #fff;
}

.assess .fa-opts {
	padding-left: 40px;
}

.assess .fa-opts label {
	background: #fff;
}

.as-submit {
	margin-top: 16px;
	width: 100%;
	justify-content: center;
	font-size: 17px;
	padding: 16px;
}

.as-dial {
	--p: 50;
	width: 130px;
	height: 130px;
	border-radius: 50%;
	background: conic-gradient(var(--blue) calc(var(--p) * 1%), #dbe5ee 0);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.as-dial::before {
	content: "";
	position: absolute;
	inset: 12px;
	border-radius: 50%;
	background: #fff;
}

.as-dial span {
	position: relative;
	font: 600 38px/1 var(--display);
	color: var(--nile);
}

.as-dial small {
	font-size: 16px;
}

@media (max-width:560px) {
	.assess .fa-opts {
		padding-left: 0;
	}
}

.home-hero h1 .hl {
	background: linear-gradient(transparent 62%, rgba(146, 220, 215, .55) 62%);
	padding: 0 4px;
	color: #fff;
}

.home-hero h1 {
	font-size: clamp(40px, 4.6vw, 64px);
}

.h-inds2 {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.h-ind2 {
	border-radius: 24px;
	padding: 24px;
	text-decoration: none;
	color: #fff;
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-height: 340px;
	position: relative;
	overflow: hidden;
	transition: transform .2s, box-shadow .2s;
	box-shadow: 0 14px 34px rgba(22, 40, 74, .16);
}

.h-ind2::after {
	content: "“";
	position: absolute;
	right: 14px;
	top: -18px;
	font: 600 150px/1 var(--display);
	color: rgba(255, 255, 255, .12);
}

.h-ind2:hover {
	transform: translateY(-5px);
	box-shadow: 0 24px 50px rgba(22, 40, 74, .25);
}

.h-ind2.n1 {
	background: linear-gradient(150deg, #ff9b7f, #e85d3f);
}

.h-ind2.n2 {
	background: linear-gradient(150deg, #233862, #1c80b7);
}

.h-ind2.n3 {
	background: linear-gradient(150deg, #3aa79f, #1c80b7);
}

.h-ind2.n4 {
	background: linear-gradient(150deg, #1c5d8f, #233862);
}

.h-ind2-top {
	display: flex;
	align-items: center;
	gap: 10px;
}

.h-ind2-ic {
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: rgba(255, 255, 255, .18);
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.h-ind2 h3 {
	color: #fff;
	font-size: 20px;
}

.h-ind2 blockquote {
	margin: 0;
	font: 400 19px/1.45 var(--display);
	color: #fff;
	flex: 1;
}

.h-ind2-foot {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 700;
	font-size: 14px;
}

.h-av {
	width: 36px;
	height: 36px;
	border-radius: 18px;
	background: #fff;
	color: var(--nile);
	font: 600 14px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
}

.h-ind2 .rl-go {
	margin-left: auto;
	background: #fff;
	color: var(--nile);
}

@media (max-width:1000px) {
	.h-inds2 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:560px) {
	.h-inds2 {
		grid-template-columns: 1fr;
	}
	
	.h-ind2 {
		min-height: 0;
	}
}

.ac-bar {
	position: static;
}

.ac-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.ac-card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 20px;
	padding: 22px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	transition: transform .18s, box-shadow .18s;
}

.ac-card[hidden] {
	display: none;
}

.ac-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 34px rgba(22, 40, 74, .1);
}

.ac-card .c-ic {
	width: 46px;
	height: 46px;
	border-radius: 14px;
	background: linear-gradient(135deg, #e6f4fb, #d2ecf5);
	color: var(--blue);
	display: flex;
	align-items: center;
	justify-content: center;
}

.ac-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.ac-inst {
	font-size: 12px;
	font-weight: 700;
	color: #2f7d72;
	background: #dff5f2;
	border-radius: 999px;
	padding: 4px 10px;
}

.ac-card h3 {
	font-size: 19px;
}

.ac-card p {
	font-size: 15px;
	flex: 1;
}

.ac-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.ac-b {
	font-size: 12px;
	font-weight: 700;
	border-radius: 999px;
	padding: 4px 10px;
}

.ac-b.s {
	background: var(--aqua);
	color: var(--blue-ink);
}

.ac-b.f {
	background: #ffe7e1;
	color: #b8432a;
}

.ac-b.n {
	background: #efe9fb;
	color: #5b3fa0;
}

@media (max-width:980px) {
	.ac-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:600px) {
	.ac-grid {
		grid-template-columns: 1fr;
	}
}

button.btn-ghost {
	background: 0 0;
	color: #fff;
}

button.btn-ghost-d {
	background: 0 0;
}

.home-hero {
	position: relative;
	overflow: hidden;
	background: radial-gradient(700px 420px at 12% 18%, rgba(146, 220, 215, .3), transparent 60%), radial-gradient(600px 400px at 80% 90%, rgba(255, 118, 84, .18), transparent 60%), linear-gradient(135deg, #16345f, #1c6aa6 55%, #2a9bb3);
}

.home-hero::before, .home-hero::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	filter: blur(2px);
	pointer-events: none;
	animation: fsFloat 14s ease-in-out infinite;
}

.home-hero::before {
	width: 340px;
	height: 340px;
	left: -120px;
	bottom: -140px;
	background: radial-gradient(circle, rgba(146, 220, 215, .45), transparent 65%);
}

.home-hero::after {
	width: 260px;
	height: 260px;
	right: 30%;
	top: -120px;
	background: radial-gradient(circle, rgba(255, 255, 255, .18), transparent 65%);
	animation-delay: -6s;
}

@keyframes fsFloat {
	0%, to {
		transform: translate(0, 0);
	}
	
	50% {
		transform: translate(30px, -24px);
	}
}

@media (prefers-reduced-motion:reduce) {
	.home-hero::before, .home-hero::after {
		animation: none;
	}
}

.home-hero .wrap {
	position: relative;
	z-index: 1;
}

.home-hero h1 {
	letter-spacing: -.01em;
	line-height: 1.05;
}

.home-hero h1 .hl {
	background: linear-gradient(90deg, #b8f0ea, #fff 60%, #ffd2c4);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	padding: 0 0 .12em;
	position: relative;
	display: inline-block;
}

.home-hero h1 .hl::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -.08em;
	height: .28em;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 24' preserveAspectRatio='none'%3E%3Cpath d='M4 16 C 70 4, 150 4, 296 12' stroke='%23ff7654' stroke-width='6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}

.home-hero .lede {
	font-size: clamp(18px, 1.5vw, 21px);
	max-width: 560px;
}

.hb img {
	background: #fff;
	border-radius: 50%;
	padding: 3px;
	width: 30px;
	height: 30px;
	-o-object-fit: contain;
	object-fit: contain;
}

.hb {
	background: rgba(255, 255, 255, .14);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

.home-hero .btn-light {
	box-shadow: 0 10px 26px rgba(0, 0, 0, .2);
}

.home-hero .btn-light:hover {
	transform: translateY(-2px);
}

.home-hero .fsi {
	box-shadow: 0 30px 70px rgba(5, 20, 45, .45);
}

@media (max-width:700px) {
	.cred .stats {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px !important;
		text-align: left;
		width: 100%;
	}
	
	.cred .wrap {
		display: grid;
		gap: 18px;
	}
}

.ach {
	background: #fff;
	border-radius: 24px;
	box-shadow: 0 24px 60px rgba(22, 40, 74, .14);
	display: flex;
	flex-direction: column;
	height: 640px;
	overflow: hidden;
	border: 1px solid #dbe5ee;
}

.ach-head {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 18px;
	border-bottom: 1px solid var(--line);
	background: linear-gradient(180deg, #fff, var(--mist));
}

.ach-head b {
	display: block;
	font: 600 18px var(--display);
	color: var(--nile);
}

.ach-head small {
	color: var(--muted);
	font-size: 12px;
}

.ach-head .fsi-mark {
	width: 38px;
	height: 38px;
	border-radius: 19px;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.ach-prog {
	flex: 1;
	height: 6px;
	border-radius: 3px;
	background: #dbe5ee;
	overflow: hidden;
	margin-left: 10px;
}

.ach-prog i {
	display: block;
	height: 100%;
	width: 0;
	background: linear-gradient(90deg, var(--glory), var(--blue));
	transition: width .3s;
}

.ach-count {
	font-size: 12px;
	font-weight: 700;
	color: var(--muted);
}

.ach-log {
	flex: 1;
	overflow-y: auto;
	padding: 18px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	scroll-behavior: smooth;
}

.ach-bot {
	align-self: flex-start;
	max-width: 88%;
	background: var(--mist);
	border-radius: 16px 16px 16px 4px;
	padding: 11px 15px;
	color: var(--text);
	font-size: 15.5px;
	line-height: 1.5;
}

.ach-log .fsi-q {
	align-self: flex-end;
	justify-self: auto;
	background: var(--blue);
	color: #fff;
	font-weight: 700;
	font-size: 15px;
}

.ach-sec {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--blue-ink);
}

.ach-bot.has-sec {
	background: 0 0;
	padding: 6px 0 0;
}

.ach-typing {
	display: flex;
	gap: 4px;
	padding: 14px 16px;
}

.ach-typing i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #9cb4c8;
	animation: achDot 1s infinite;
}

.ach-typing i:nth-child(2) {
	animation-delay: .15s;
}

.ach-typing i:nth-child(3) {
	animation-delay: .3s;
}

@keyframes achDot {
	0%, 60%, to {
		opacity: .3;
		transform: translateY(0);
	}
	
	30% {
		opacity: 1;
		transform: translateY(-3px);
	}
}

.ach-input {
	border-top: 1px solid var(--line);
	padding: 14px 16px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	min-height: 68px;
	align-items: center;
	background: #fff;
}

.ach-opt {
	flex: 1 1 100px;
	font: 700 15px var(--body);
	border: 1.5px solid var(--blue);
	color: var(--blue);
	background: #fff;
	border-radius: 999px;
	padding: 11px 16px;
	cursor: pointer;
	transition: background .15s, color .15s;
}

.ach-opt:hover {
	background: var(--blue);
	color: #fff;
}

.ach-gate {
	display: grid;
	gap: 8px;
	width: 100%;
}

.ach-gate .row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.ach-gate input:not([type=checkbox]) {
	font: 15px var(--body);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 11px 13px;
	background: var(--mist);
	width: 100%;
}

.ach-gate .consent {
	font-size: 12.5px;
	color: var(--muted);
	display: flex;
	gap: 8px;
	align-items: flex-start;
}

.ach-err {
	color: #c2492e;
	font-size: 13px;
}

.ach-bot.has-res {
	background: #fff;
	border: 1px solid var(--line);
	max-width: 100%;
	box-shadow: 0 10px 26px rgba(22, 40, 74, .08);
}

.ach-res {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 18px;
	align-items: start;
}

.ach-res h3 {
	font-size: 22px;
	margin: 4px 0 6px;
}

.ach-res .as-dial {
	width: 100px;
	height: 100px;
}

.ach-res .as-dial span {
	font-size: 30px;
}

.ach-note {
	font-size: 13px;
	color: var(--muted);
}

@media (max-width:560px) {
	.ach {
		height: 600px;
	}
	
	.ach-res {
		grid-template-columns: 1fr;
	}
	
	.ach-gate .row {
		grid-template-columns: 1fr;
	}
}

.fsi-gate {
	display: grid;
	gap: 8px;
}

.fsi-gate input:not([type=checkbox]) {
	font: 15px var(--body);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 10px 12px;
	background: var(--mist);
}

.fsi-gate .consent {
	font-size: 12px;
	color: var(--muted);
	display: flex;
	gap: 8px;
	align-items: flex-start;
}

.ns-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.ns {
	border-radius: 20px;
	padding: 22px;
	text-decoration: none;
	color: var(--text);
	display: flex;
	flex-direction: column;
	gap: 10px;
	background: #fff;
	border: 1px solid var(--line);
	transition: transform .18s, box-shadow .18s;
}

.ns:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 38px rgba(22, 40, 74, .12);
}

.ns-tag {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	align-self: flex-start;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	border-radius: 999px;
	padding: 5px 11px;
}

.ns-assess {
	background: linear-gradient(160deg, var(--nile), #1c5d8f);
	border: 0;
	color: #fff;
}

.ns-assess h3 {
	color: #fff;
}

.ns-assess p {
	color: rgba(255, 255, 255, .88);
}

.ns-assess .ns-tag {
	background: rgba(255, 255, 255, .16);
	color: #fff;
}

.ns-assess .ns-cta {
	color: var(--glory);
}

.ns-ask .ns-tag {
	background: var(--aqua);
	color: var(--blue-ink);
}

.ns-free .ns-tag {
	background: #dff5f2;
	color: #2f7d72;
}

.ns-paid .ns-tag {
	background: #ffe7e1;
	color: #b8432a;
}

.ns h3 {
	font-size: 20px;
}

.ns p {
	font-size: 15px;
	flex: 1;
}

.ns-cta {
	font-weight: 700;
	color: var(--blue);
}

@media (max-width:1000px) {
	.ns-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:560px) {
	.ns-grid {
		grid-template-columns: 1fr;
	}
}

.rd-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
	gap: 48px;
	align-items: center;
	padding-block: 56px 64px !important;
	position: relative;
	z-index: 1;
}

.rd-hero .lede {
	font-size: 18px;
	max-width: 620px;
}

.rd-vis {
	position: relative;
	background: #fff;
	border-radius: 24px;
	padding: 12px;
	box-shadow: 0 30px 70px rgba(5, 20, 45, .4);
	transform: rotate(1.5deg);
	max-width: 440px;
	justify-self: center;
}

.rd-vis img {
	width: 100%;
	border-radius: 16px;
	display: block;
}

.rd-vis.art {
	padding: 24px;
	border-radius: 50%;
	aspect-ratio: 1/1;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: none;
}

.rd-vis.art img {
	width: 80%;
	border-radius: 0;
}

.rd-play {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 70px;
	height: 70px;
	border-radius: 35px;
	background: linear-gradient(135deg, #ff9b7f, #ff7654);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 0 10px rgba(255, 255, 255, .35);
}

.rd-facts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 12px;
	margin: -90px 0 40px;
	position: relative;
	z-index: 2;
}

.rd-facts div {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 14px 18px;
	box-shadow: 0 12px 30px rgba(22, 40, 74, .08);
}

.rd-facts span {
	display: block;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--blue-ink);
}

.rd-facts b {
	color: var(--nile);
	font-size: 16px;
}

.rd-hero .wrap {
	padding-bottom: 110px !important;
}

.rd-intro-box {
	border-left: 4px solid var(--glory);
	padding: 4px 0 4px 20px;
	margin-bottom: 10px;
}

.rd-intro-box p {
	font-size: 18px;
	color: var(--nile);
	margin-bottom: 10px;
}

.rd-sec {
	margin-top: 34px;
}

.rd-sec h2 {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 26px;
	margin-bottom: 12px;
}

.rd-sn {
	font: 600 14px var(--body);
	color: #fff;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	border-radius: 10px;
	padding: 5px 9px;
}

.rd-sec > p {
	margin-bottom: 12px;
}

.rd-take {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-top: 8px;
}

.rd-take div {
	display: flex;
	gap: 12px;
	background: linear-gradient(160deg, #fff, var(--mist));
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 16px;
}

.rd-take p {
	font-size: 15px;
	margin: 0;
	color: var(--nile);
}

.rd-ck {
	flex: 0 0 30px;
	height: 30px;
	border-radius: 15px;
	background: var(--blue);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.rd-spk2 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 14px;
}

.rd-spk-c {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 18px;
	padding: 20px;
	display: grid;
	justify-items: center;
	text-align: center;
	gap: 3px;
	position: relative;
}

.rd-ph {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	-o-object-fit: cover;
	object-fit: cover;
	margin-bottom: 8px;
	box-shadow: 0 0 0 4px #fff, 0 0 0 6px var(--glory);
}

.rd-spk-c .av {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	color: #fff;
	font: 600 28px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 8px;
}

.rd-spk-c b {
	color: var(--nile);
	font-size: 16px;
}

.rd-spk-c span {
	font-size: 13.5px;
}

.rd-spk-c small {
	font-size: 13px;
	color: var(--muted);
}

.rd-fs {
	position: absolute;
	top: 12px;
	right: 12px;
	font-size: 10px !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	background: var(--aqua);
	color: var(--blue-ink);
	border-radius: 999px;
	padding: 3px 8px;
}

.rd-form {
	padding: 0;
	overflow: hidden;
}

.rd-form-top {
	background: linear-gradient(135deg, var(--nile), var(--blue));
	color: #fff;
	padding: 14px 22px;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: .02em;
}

.rd-form > h2, .rd-form > p, .rd-form > form {
	margin-inline: 22px;
}

.rd-form > form {
	margin-bottom: 22px;
}

@media (max-width:960px) {
	.rd-hero-grid {
		grid-template-columns: 1fr;
	}
	
	.rd-vis {
		max-width: 320px;
	}
	
	.rd-take {
		grid-template-columns: 1fr;
	}
	
	.rd-facts {
		margin-top: -70px;
	}
}

.cp-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.cp {
	border-radius: 26px;
	overflow: hidden;
	text-decoration: none;
	color: var(--text);
	background: #fff;
	border: 1px solid var(--line);
	display: flex;
	flex-direction: column;
	box-shadow: 0 16px 40px rgba(22, 40, 74, .08);
	transition: transform .2s, box-shadow .2s;
}

.cp:hover {
	transform: translateY(-4px);
	box-shadow: 0 26px 56px rgba(22, 40, 74, .15);
}

.cp-band {
	height: 180px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 32px;
	position: relative;
	overflow: hidden;
}

.cp-sf .cp-band {
	background: radial-gradient(400px 200px at 90% 0, rgba(255, 255, 255, .25), transparent 60%), linear-gradient(135deg, #0b5cab, #1c80b7 60%, #33a3dc);
}

.cp-cl .cp-band {
	background: radial-gradient(400px 200px at 90% 0, rgba(217, 119, 87, .25), transparent 60%), linear-gradient(135deg, #f4ede4, #efe3d6);
}

.cp-band img {
	height: 110px;
	width: auto;
	border-radius: 14px;
	filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .18));
}

.cp-cl .cp-band img {
	height: 54px;
	border-radius: 0;
	filter: none;
}

.cp-meta {
	display: grid;
	gap: 6px;
	justify-items: end;
}

.cp-meta span {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	padding: 5px 12px;
	border-radius: 999px;
}

.cp-sf .cp-meta span {
	background: rgba(255, 255, 255, .18);
	color: #fff;
	border: 1px solid rgba(255, 255, 255, .35);
}

.cp-cl .cp-meta span {
	background: #fff;
	color: #a4502f;
	border: 1px solid #e8d3c3;
}

.cp-body {
	padding: 26px 30px 30px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.cp-body h3 {
	font-size: 26px;
}

.cp-body p {
	font-size: 16px;
}

.cp-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 4px 0 6px;
}

.cp-chips span {
	font-size: 13px;
	font-weight: 700;
	border-radius: 999px;
	padding: 5px 11px;
	background: var(--mist);
	color: var(--nile);
	border: 1px solid var(--line);
}

.cp-cl .cp-chips span {
	background: #fbf6f1;
	border-color: #efe3d6;
	color: #7a3e25;
}

.cp .more {
	margin-top: auto;
	font-weight: 700;
	color: var(--blue);
}

.cp-cl .more {
	color: #b5552f;
}

@media (max-width:860px) {
	.cp-grid {
		grid-template-columns: 1fr;
	}
	
	.cp-band {
		height: 150px;
		padding: 0 22px;
	}
	
	.cp-band img {
		height: 86px;
	}
}

.card .c-ic, .ac-card .c-ic {
	width: 56px;
	height: 56px;
	border-radius: 16px;
	color: #fff;
	background: linear-gradient(135deg, #46b8d3, #1c80b7);
	box-shadow: 0 10px 22px rgba(28, 128, 183, .32);
	margin-bottom: 8px;
	position: relative;
}

.card .c-ic svg, .ac-card .c-ic svg {
	width: 26px;
	height: 26px;
	stroke-width: 2;
}

.card .c-ic::after, .ac-card .c-ic::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(160deg, rgba(255, 255, 255, .35), transparent 50%);
	pointer-events: none;
}

.card .c-ic.ic1 {
	background: linear-gradient(135deg, #7fd6cf, #2a9d93);
	box-shadow: 0 10px 22px rgba(42, 157, 147, .3);
}

.card .c-ic.ic2 {
	background: linear-gradient(135deg, #ffa98f, #ff7654);
	box-shadow: 0 10px 22px rgba(255, 118, 84, .32);
}

.card .c-ic.ic3 {
	background: linear-gradient(135deg, #3d5c94, #233862);
	box-shadow: 0 10px 22px rgba(35, 56, 98, .3);
}

a.card:hover .c-ic, .card:hover .c-ic {
	transform: translateY(-3px) rotate(-6deg);
	color: #fff;
}

.fc-modal {
	background: #fff;
	color: var(--text);
	color-scheme: light;
}

.fc-modal h2 {
	color: var(--nile);
}

.cst {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(0, 1.3fr) minmax(0, .9fr);
	gap: 20px;
	align-items: stretch;
}

.cst-lbl {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .1em;
}

.cst-goal {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 22px;
	padding: 26px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.cst-goal .cst-lbl {
	color: var(--blue-ink);
}

.cst-arrow {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--blue);
}

.cst-arrow b {
	font: 600 44px/1 var(--display);
	color: var(--nile);
}

.cst-arrow b:last-child {
	color: var(--blue);
}

.cst-goal p {
	font-size: 15px;
}

.cst-client {
	margin-top: auto;
	font-weight: 700;
	color: var(--nile);
	font-size: 14px;
	border-top: 1px solid var(--line);
	padding-top: 12px;
}

.cst-steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 12px;
}

.cst-steps li {
	display: grid;
	grid-template-columns: 40px 1fr;
	gap: 14px;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 18px;
	padding: 16px 18px;
	align-items: start;
}

.cst-n {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	background: linear-gradient(135deg, var(--glory), var(--blue));
	color: #fff;
	font: 600 18px var(--display);
	display: flex;
	align-items: center;
	justify-content: center;
}

.cst-steps h3 {
	font-size: 19px;
	margin-bottom: 4px;
}

.cst-steps p {
	font-size: 15px;
}

.cst-res {
	background: linear-gradient(150deg, #ff9b7f, #e85d3f);
	color: #fff;
	border-radius: 22px;
	padding: 26px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	box-shadow: 0 18px 40px rgba(232, 93, 63, .28);
}

.cst-res b {
	font: 600 64px/1 var(--display);
}

.cst-res p {
	color: #fff;
	font-size: 16px;
}

.cst-res .btn {
	margin-top: auto;
	align-self: flex-start;
	color: #c2492e;
}

@media (max-width:1000px) {
	.cst {
		grid-template-columns: 1fr;
	}
}

.topbar a.top-ai {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: linear-gradient(135deg, #ff9b7f, #ff7654);
	color: #fff !important;
	font-weight: 700;
	border-radius: 999px;
	padding: 3px 12px;
	text-decoration: none;
}

.topbar a.top-ai:hover {
	filter: brightness(1.05);
}

.mega .feature a.nav-ai {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: linear-gradient(135deg, #ff9b7f, #ff7654);
	color: #fff !important;
	border-radius: 999px;
	padding: 9px 16px;
	font-weight: 700;
	text-decoration: none;
	margin-top: 6px;
	align-self: flex-start;
}

.nav-ai-m {
	display: none;
}

@media (max-width:1000px) {
	.primary .nav-ai-m {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		background: linear-gradient(135deg, #ff9b7f, #ff7654);
		color: #fff;
		border-radius: 999px;
		padding: 12px 18px;
		font-weight: 700;
		text-decoration: none;
		margin: 8px 0;
	}
}

.fsi-cta {
	display: grid;
	gap: 12px;
	justify-items: start;
	padding: 6px 2px;
}

.fsi-cta-ic {
	width: 46px;
	height: 46px;
	border-radius: 14px;
	background: linear-gradient(135deg, #ff9b7f, #ff7654);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 10px 22px rgba(255, 118, 84, .3);
}

.fsi-cta p {
	font-size: 15px;
}

:focus-visible {
	outline: 3px solid #1c80b7;
	outline-offset: 3px;
	border-radius: 6px;
}

.hero :focus-visible, .ai-band :focus-visible, .h-prod :focus-visible, .fc-ai :focus-visible, .site-footer :focus-visible, .cta-band :focus-visible {
	outline-color: #ffd166;
}

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

.topbar a.top-ai, .mega .feature a.nav-ai, .primary .nav-ai-m, .ns-paid .ns-tag {
	background: linear-gradient(135deg, #cf4f2d, #b0402a);
}

.h-ind2.n1 {
	background: linear-gradient(150deg, #d6532f, #a83a22);
}

.cst-res {
	background: linear-gradient(150deg, #d6532f, #a83a22);
}

.cst-res .btn {
	color: #a83a22;
}

.fsi-cta-ic, .journey .st-close .sn {
	background: linear-gradient(135deg, #d6532f, #a83a22);
}

html, body {
	overflow-x: hidden;
}

img, svg, video {
	max-width: 100%;
}

table {
	max-width: 100%;
}

.wrap {
	padding-inline: max(16px, env(safe-area-inset-left));
}

@media (max-width:600px) {
	h1 {
		word-break: normal;
		overflow-wrap: anywhere;
	}
	
	.btn {
		min-height: 44px;
	}
	
	.rtabs button, .rs-chips button, .ach-opt, .fa-opts label {
		min-height: 44px;
	}
	
	.section {
		padding-block: 56px;
	}
}

.sr {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.pc-grid {
	grid-template-columns: repeat(var(--pc, 3), minmax(0, 1fr));
}

@media (max-width:900px) {
	.pc-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:520px) {
	.pc-grid {
		grid-template-columns: 1fr;
	}
}

.cp-sf .cp-band img {
	background: #fff;
	padding: 8px;
	border-radius: 18px;
}

@media (max-width:700px) {
	.fc-cost-art img {
		max-width: 230px;
	}
}

.hero-art-card.photo img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.meet-grid {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
	gap: 48px;
	align-items: center;
}

.meet-grid h2 {
	margin: 8px 0 12px;
}

.meet-list {
	list-style: none;
	padding: 0;
	margin: 16px 0 0;
	display: grid;
	gap: 10px;
}

.meet-list li {
	display: flex;
	gap: 10px;
	align-items: center;
	font-weight: 700;
	color: var(--nile);
}

.meet-list li::before {
	content: "";
	width: 22px;
	height: 22px;
	border-radius: 11px;
	flex: 0 0 22px;
	background: var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/12px no-repeat;
}

.meet-box {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 24px;
	box-shadow: 0 24px 60px rgba(22, 40, 74, .12);
	min-height: 320px;
	overflow: hidden;
}

.meet-box .meetings-iframe-container {
	display: none;
}

.meet-box.live .meetings-iframe-container {
	display: block;
	min-height: 640px;
}

.meet-box.live .meet-fallback {
	display: none;
}

.meet-fallback {
	display: grid;
	justify-items: center;
	text-align: center;
	gap: 10px;
	padding: 56px 28px;
}

.meet-ic {
	width: 64px;
	height: 64px;
	border-radius: 18px;
	background: linear-gradient(135deg, #46b8d3, #1c80b7);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 12px 26px rgba(28, 128, 183, .3);
}

.meet-fallback b {
	font: 600 22px var(--display);
	color: var(--nile);
}

@media (max-width:900px) {
	.meet-grid {
		grid-template-columns: 1fr;
	}
}

.aip {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	counter-reset: a;
	position: relative;
}

.aip-step {
	position: relative;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 22px;
	padding: 26px 24px 24px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	box-shadow: 0 10px 30px rgba(35, 56, 98, .06);
}

.aip-step:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 44px;
	right: -20px;
	width: 18px;
	height: 18px;
	border-top: 3px solid var(--glory);
	border-right: 3px solid var(--glory);
	transform: rotate(45deg);
	z-index: 1;
}

.aip-0 {
	background: linear-gradient(160deg, var(--nile), #1c5d8f);
	border: 0;
	color: #fff;
}

.aip-0 h3 {
	color: #fff;
}

.aip-0 p {
	color: rgba(255, 255, 255, .9);
}

.aip-0 .aip-meta {
	color: var(--glory);
}

.aip-0 .btn-primary {
	background: #fff;
	color: var(--nile);
}

.aip-0 .btn-primary:hover {
	background: var(--aqua);
}

.aip-top {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 4px;
}

.aip-n {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	font-weight: 700;
	background: var(--aqua);
	color: var(--blue-ink);
}

.aip-0 .aip-n {
	background: rgba(255, 255, 255, .16);
	color: #fff;
}

.aip-ic {
	width: 42px;
	height: 42px;
	border-radius: 12px;
	display: grid;
	place-items: center;
	background: #dff5f2;
	color: #2f7d72;
}

.aip-0 .aip-ic {
	background: rgba(146, 220, 215, .2);
	color: var(--glory);
}

.aip-2 .aip-ic {
	background: #ffe7e1;
	color: #b8432a;
}

.aip-price {
	margin-left: auto;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	border-radius: 999px;
	padding: 5px 12px;
	background: #dff5f2;
	color: #2f7d72;
}

.aip-0 .aip-price {
	background: rgba(255, 255, 255, .16);
	color: #fff;
}

.aip-2 .aip-price {
	background: linear-gradient(135deg, #cf4f2d, #b0402a);
	color: #fff;
}

.aip-meta {
	font-size: 14px;
	font-weight: 700;
	color: var(--blue-ink);
}

.aip-step p {
	flex: 1;
}

.aip-step .btn {
	align-self: flex-start;
	margin-top: 6px;
}

.aip-note {
	margin-top: 24px;
	background: var(--mist);
	border-left: 4px solid var(--blue);
	border-radius: 12px;
	padding: 16px 20px;
	font-size: 16px;
}

.alt .aip-note {
	background: #fff;
}

@media (max-width:900px) {
	.aip {
		grid-template-columns: 1fr;
	}
	
	.aip-step:not(:last-child)::after {
		top: auto;
		bottom: -20px;
		right: auto;
		left: 40px;
		transform: rotate(135deg);
	}
}

.ach-mail {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
}

.ach-mail .acts {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
}

.ach-skip {
	background: 0 0;
	border: 0;
	color: var(--muted);
	font: inherit;
	font-weight: 700;
	text-decoration: underline;
	cursor: pointer;
	min-height: 44px;
}

.ct-book {
	background: linear-gradient(160deg, var(--nile), #1c5d8f);
	color: #fff;
	border-radius: 22px;
	padding: 28px;
	display: grid;
	gap: 12px;
	justify-items: start;
	box-shadow: 0 14px 34px rgba(35, 56, 98, .18);
}

.ct-book h2 {
	color: #fff;
	font-size: 28px;
}

.ct-book p {
	color: rgba(255, 255, 255, .9);
}

.ct-book-ic {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	display: grid;
	place-items: center;
	background: rgba(146, 220, 215, .2);
	color: var(--glory);
}

.ct-next {
	background: var(--mist);
	border-radius: 22px;
	padding: 24px 26px;
}

.ct-next h3 {
	font-size: 20px;
	margin-bottom: 12px;
}

.ct-next ol {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 14px;
	counter-reset: n;
}

.ct-next li {
	counter-increment: n;
	display: grid;
	grid-template-columns: 34px 1fr;
	-moz-column-gap: 12px;
	column-gap: 12px;
}

.ct-next li::before {
	content: counter(n);
	grid-row: span 2;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: var(--aqua);
	color: var(--blue-ink);
	font-weight: 700;
	display: grid;
	place-items: center;
}

.ct-next li b {
	color: var(--nile);
}

.ct-next li span {
	font-size: 15px;
	color: var(--muted);
}

.ct-fsi {
	font-size: 15px;
}

.contact-hero .actions {
	margin-top: 22px;
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.contact-form .row > * {
	min-width: 0;
}

.contact-form label {
	min-width: 0;
}

.contact-form input:not([type=checkbox]), .contact-form select, .contact-form textarea {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.4;
}

.contact-form input:not([type=checkbox]), .contact-form select {
	height: 48px;
}

.contact-form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding-right: 40px;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	cursor: pointer;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23233862' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;
}

.contact-form select.nitro-lazy {
	background: none !important;
}

.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus {
	outline: 0;
	border-color: var(--blue);
	box-shadow: 0 0 0 3px rgba(28, 128, 183, .18);
}

.hs-wrap .hs-form fieldset {
	max-width: none !important;
}

.hs-wrap .hs-form fieldset.form-columns-2 {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
}

.hs-wrap .hs-form fieldset .hs-form-field {
	width: auto !important;
	float: none !important;
}

.hs-wrap .hs-form .input {
	margin-right: 0 !important;
}

.hs-wrap .hs-form label {
	font-size: 14px;
	font-weight: 700;
	color: var(--nile);
}

.hs-wrap .hs-form .hs-form-field {
	margin-bottom: 14px;
}

.contact-form label.consent {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-weight: 400;
	font-size: 15px;
	color: var(--text);
}

.contact-form label.consent input {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	margin: 2px 0 0;
	accent-color: var(--blue);
}

.h-ind2:hover, .h-ind2:focus-visible, .ns-assess:hover, .ns-assess:focus-visible, .h-prod a:hover, .ai-band a.btn-light:hover {
	color: #fff;
}

.h-ind2:hover .h-ind2-foot, .h-ind2:hover h3, .h-ind2:hover blockquote {
	color: #fff;
}

.h-ind2:hover .h-av, .h-ind2:hover .rl-go {
	color: var(--nile);
}

.ai-band a.btn-light:hover {
	color: var(--nile);
}

.ab-stat:hover {
	color: #fff;
}

.ct-direct {
	border: 1px solid var(--line);
	border-radius: 22px;
	padding: 22px 26px;
}

.ct-direct h3 {
	font-size: 20px;
	margin-bottom: 8px;
}

.ct-direct a {
	font-weight: 700;
	text-decoration: none;
	line-height: 1.9;
}

.meet-frame {
	width: 100%;
	height: 700px;
	border: 0;
	display: block;
}

.meet-box.framed .meetings-iframe-container {
	min-height: 700px;
}

.clouds {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

@media (max-width:1100px) {
	.clouds {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:560px) {
	.clouds {
		grid-template-columns: 1fr;
	}
}

.cp-cl .cp-band img {
	mix-blend-mode: multiply;
}

.fsi-mark, .ach-head .fsi-mark {
	background: #e6f4fb url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCABwAHADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9LaKKK9A8oKKKCQoJJAA7mgAorJufEdtG5SE+c49DwPxpItQmnIJYKPQVlKpGO5rGlKRr5ozTIJdw5jU/i3+NWl2t/wAsk/Nv8ay+sR7Gv1eXcgoqV4CxyML7DOKYyMvUZ+lXGtGREqM0NooorcwCiiigAoooJxQAyeZLaJ5ZGCRoCzMegFeJ+Mfi5/at89pYOY7JGwXHBk/+tXn/AO0n+1ZpOkT3PhPRJTcXKNsu7lG+RT/cHqfWvEvCPxEub/UEt7wACb5oJlGA2OoPvXasLUVP2rWhwfXaLrexT1PrXw/rIlVea6XVPGel+EtFn1XV72KxsYF3STTMAAK8k8C3xu2iRTlmIAr4X/br+P8AeeNvH8/hLTrtk8P6M/kskbYWeYfeY+uOg+hrw3F1KnKj6BSUIczPpj4if8FNtG0m7ms/B+jtq5QlRdztsjPuB3FeVXX/AAUL+LOryFrL+z7SM9FS3Jx+Oa+NvDERurlVClyT0AzXt3hu2g0yNPtdpJCGHBkQgH867VRpQWqucMsROUrc1j2Gy/by+MNu4aa4spl9Gtj/AI13/hT/AIKQeI7SWNPEPh61voz96S3YxkD6HOa8Sjt9OuoshE5Fcn4osLWBS0YA9hR7OlLTlK9pVjrc/Tv4R/tQeCfjEEg067NjqhGTY3fyufp6162DmvxG0TXbrw/q0F5ZzvbzQuHSSNsFSPQ1+qv7LnxfPxa+HUFxdSB9Us8QXPq3HDfiKXs3Rdk7pi51VV7ao9koooqzMK8s/ae+Jp+EnwQ8T+Io3CXUNsY7cn/no3A/rXqdfJP/AAU7eRf2ZLlUzsbU7cPj0w1XD4kRPSLPzG0fXNVv7o6rqV7LLJqDltjtkDJyD9a+k/COvW138M7W43Bb21vItrDrtLAH9K+Xbm4CnSYoz8oVAMfSu28I+KJI9NWwD/LLcRqFz33CvXi70nG54VaKhXhNLyP0C+HOsGGwurxW+a2tZZwfdULD+VflF4v1N9W8U6ndyMWee6llJPcs5P8AWv01+Fd0bzStUtAcvLps8YHuYmFfl1r0ZtdbvIm4MczofqGIr56lpUkfUVNacT7e/wCCenw88OXx1zxh4iS3kg0oARG6x5cbdS5zxwK+rbv4qfBz44Pc+D/t1ndXMoMcW6Hyzu7FGIHOelflB4a+I+t6J4YvtBs9Qlt9MvmV7iBDgSEdM1N4f1TUrLUYbzTmlF1AwlR4gSVI5zxWkoczuz5GtllWtVnWnUt2PYPGclz8P/GeteHpZCzafcvBuJ6gHj9MVkaZeyeKvEOnabuP+lTpD17FgK4nxF4s1LxVr17q+pyGa/u5PMmkxjc2MZ/So9J1y50nU7a+tmMdxbyLLG3owORVLQ96PtPYKLfvW/E/TrxN+zN8MNR8InwrZ/2faeJYbbMc0cq/amcLncwzkgntXln7C3ia58E/EnxH4dvtw8uGQSRDrvjOT+gr48l+LfiOXxp/wlLalMusGbz/ADwxGDnOPp7V7z+x34vuvFX7SC6jebfP1M3Es4QYXLIScCpknGm7s87LsNiMPVtUldP8z9ULS6jvbaKeJg8cihlIPY1LXAfAzWG1j4bafK53GF5IMnuFcivLPGf7XCeFvjBqnhM2EX2TTCqzSu+HckAnb6YBrpjSlOThHod8sRCnTVSeiZ9JV5D+1f8AC9vi58DfEWhQx+bdeV9ogQd3TkfpmvXqCMjBrJOzudDXMrH4D3nhi88Nh49QZTLb5jjUfez05HbFXfhrp82qeLbGEAmKJ/Ok9sdP1r9KP2u/2SvDviK1l8V6TbNp96z5vFgHyPn+Pb2PrXyt4a+G1l4IEvlEzXDn5pWHJrplVXLaKsc0aLc1KbvY9d+EuuppHiazMpHlFwrA9CDwa+Ef2j/A1x8PvjD4l0yaMqovHnibHDpId6keo+bH4V9Y2949rOsiHDKc1rfFr4T6f+094TtpLOeGx8d6ZF5UDTMFS9iHIjY9iOcH3ry5S5J83RnrxXNDlPz3s7jbjmvsL9gHxR4XsvH19pPiG3tpG1KAR20tyoKhwc7eemRXyn4w8A6/8Pdan0zXdLudMvISQ0VxGV/Eeo96raRrE+mXMc8EjQyxkMrqcEH2rW6kjzMbhfrVCVK9rn7MeJf2Tfhh4vla4uPD8EM78+Zbkx/oDj9KxdN/Yi+FelTfaJNKa5C/NtnlO0fka+F/An7enxG8JafFZy3sWqwRqFT7WmWA926n8af48/bn+IfjnTZbBb2PS7WUbXFmu1mH+91FQoSXU+LjluZRfs76d+Z2M39qq38Lab8X9TsvCUMUOnWwWJ/IOUMgHzY/lXf/ALCOmyn4my6wFJi02zmnc+g2ED9a+X7Y3GsXwHzTTStyepJNfqX+xH8C5Ph94NW61e18vVdaUO8Eg+aK3HIVh/tHBxV1JWhy99D7jB0HRpxg3flW59BfAzw7P4Z+GGj2l0pS5kVp5VPZnYnH5Yr83fjpqban+0v4zkRsFrzbgeyqP6V+r6qEQKoAAGABX5AftP3EPhz9pPxY1ncpcQtd7g8bZAJUZH1BzXq4OX71tnlZjD9woo/YCiisLxL4y07wxF/pMu6dvuQJyx/wrzz2DWv7GDU7Oa1uY1mgmUo6MMgg18ZfHf8AZ91TwjNPqmjW8moaQxLYiXc8PsR3HvXuOrfEbXNa3LYMunxHoUGX/OvKvHN38T7CJ73SfFF5kAkxSKrI3sRjpXPOtCOjZ0RozavY+UBr1utw0MrBJAcFWODW3pmotbypNazFHByCprwz4meMfFnjv4hatZa6YbXV7Rid9nCIg6+pArkrnxf438EMJQw1CyHXKncv1p2UtCU2tT7k/wCFg2fijSl0vxjoNh4nsVGFF9CHZPdW6g1w+sfs4fA7xUWlt7fV/DVw/J8ifzkB9lbAFfO2gftQyKqi/wBMcephO7/Cu5039pbw3Mo84TwH/aSo+rTXwlrEwekjrJP2Ifh/cPusviLqEan+G4sEGPyNaWl/sMeAUkDXvxGvmQc7bexQk/mareDfjJ4Y8Xa5Z6Xb6lFbTXTiOOS6yibj0BOOK+t/CH7M93f+VNqOs2UcLAMBaP5pYfoKlwqrS5aqUnrY4D4TfAz4X/DvUreTw/o1x4m14MPJutR+dVbsyx9AfevsPwhoc+mWjXF83mahPgyEdEHZR9Kr+DPhxovgeALYW+ZyMNcS8ufx7V1BOBV06Ti+aTuzOpV5lyxVkeYftG/FmD4PfC3VdZaQLfyIbeyQnlpWGBj6cn8K/GzUhP4s8RzXNzqAhubmQu882SpYnOTjnrX05+3j8bG8f/EZ9Cspi2j6KTCgU8SS/wATf0FfLdrGXk3V71ClaOvU+Zxde8rLofsz4l+LM9npWoXtrCkMNrbyTlpOThVJ/pXzR8O/i3P8S9BTxBfzCW+mkcSnPAwxwAO3GK7f4haoH8DeI7WM/vZtPnRAO52EgV8H/AP4nPoVxeaDcv5QnbzYQx6OBhl/QV4UJOrSnJbq33H0s0qVaEejv9+h9/6P4qhQrlh+ddenii1urMxuFII718gw/ESWBs7j+dYvxC/aIfwx4ZuVt5v+JhOhjgUHkMeM/h1rzvZynKyPRdSNOLb2RX/4RPS/Hv7SV7d24V4ZrqaDCjho1HX8697f9lbSNVQgQqAw9K+fv2QbeW51ybXJyzJAhhR2/jdjlz+GP1r7x8Pa6pVOc104393UUIvZJHHgf3lJ1Jr4m2fK3ir/AIJu6L4hDTWFxJpd2ed8QyhPuv8AhXk+s/8ABNjx/pk5Gnz2GqQg8MZPJbH0Oa/SzUPHGn+HNL+13jdTtSNRlnbsAKzT4i8S6ja/alXT9HgblEujlj6BvQ1NLEV4q6enmVWw1CcrNa+R+e3gj/gnn41OvWdxrj2thYQNvKQy+Y7H8hXvvjH4P638M9JsfEOmapfvb6c6reWq3D7TDnBYDPBFfRFj49u9N1WDTfE9hHZPcnbb31u26CU9lJ7H61ueK7KDVvD+o2cqB457d0Kn3U4/WlUq1HUTqbeXYdOlTVNxpb+fcwfDt/cw+HrW9ivpZUliV0Zn3ZyOOtQa9rOv39lMlnqUkExQhWQLwcfSvHPCPjyXSvBmmabcTbpLdniOfRGIH8q0G+KIhPEo/OuZynCTimdcVGcVJrc/OD4gRXsHjPWYNRYtfRXciTluu7dyf1qhp8IZhXeftQ6a8Xxc1PU7VT5epkXYIHysT1H1GK1f2f8A4B+KPjNrAg02zMUEIDTXM3EaD6+vtX2VGuvZRlLsfB18LJ1pRj3PoPxt49FsrhXyfSvlrx38Ibnww7eJ7xZdKtb92ns7ZhtkJzkuB1C571+jHw6/Zm03wbYTeKPGpTUbu0ia5+xnmKIKN3P948V+dvx8+NN78V/Hmpz3sgWJZmS0iUYRIRwqqO3/ANevEwVFq9SWiPpsdWi7U46v8jK8LeLtY8RagdNadRm3k2OF+bcBwSa5yy+HHiLxBqgGoCSM7sSXU77uM/wineBtUi0fxlpssrBInfymY9AG4zXvlzCInyBVyfsanuroRTXt6VpO9mdx8KLa18L6Xa2FoNkUQA92Pcn3r6C8NaxujX5q+ZPDd6YpVGa9i8L6xhVG7mvJq3bbZ61K0VZHdadqf/CTfEy6Sc77TQYUEaHlTO4yW+oUivOPj3q+teIde1q0Pk3+i6FphuHtcspEko2hjjqyqdw+lW7LxraeAfFfi+fUEnkhne2u4hBHvdkKBCQO4DKc0/QtVudP8P8AiLxZNp8l4Nb1KIfZ2jLObMMIwSv+4ScVq9KkNLpW/wCCYRT9lN3s23r+C+7Q6vwLdQeOvCtsmieI5Nb8OHTTvjvG8y4tbtANnzHlRwePavWPD+tzap4Ss5ZSXnaDY3qzDKk/iRXzZ4P8M6d4J+J2p6p4QmmTQ73T2FxbFWEa3DkCNQD3yfwANfR/gjTmY6bp+P8AVqDLjserfrmrxEY6Rg7p7d9e5lhZS1lUVmtH1Wm1vLc+eLv4WeMtR1a6MGj3UcJlfy8oQMFif61u6R+zb4y1FlNxALVD/FLIP5DNfZYFFaLDR6sHiZdEfNlh+xhoestaSeK5l1D7O25IoRj8Nx5xXvXhTwbovgjS007Q9Og020T/AJZwIBk+p9TWzRXVGKgrI5pSc3zPc//Z") center/cover no-repeat;
	box-shadow: 0 0 0 2px #fff, 0 4px 12px rgba(28, 128, 183, .25);
}

.fsi-mark svg {
	display: none;
}

.dd.mega::before, .dd::before {
	top: -34px;
	height: 34px;
}

.nav-b .bar {
	gap: 14px;
}

.nav-b .primary {
	display: flex;
	align-items: center;
	gap: 10px;
}

.nav-b .primary > ul > li > a, .nav-b .primary > ul > li > button {
	padding: 10px 11px;
	font-size: 15.5px;
}

.nav-b .primary li.util > button {
	font-weight: 400;
	font-size: 14px;
	color: var(--muted);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.nav-b .primary li.util > button svg:first-child {
	width: 15px;
	height: 15px;
}

.dd-login {
	width: 260px;
	left: auto;
	right: -8px;
	display: none;
	padding: 8px;
}

.dd-login a {
	display: block;
	padding: 12px 14px;
	border-radius: 12px;
	text-decoration: none;
	color: var(--nile);
	font-weight: 700;
	font-size: 15px;
}

.dd-login a span {
	display: block;
	font-weight: 400;
	font-size: 13px;
	color: var(--muted);
}

.dd-login a:hover {
	background: var(--mist);
}

.dd-res {
	width: 600px;
}

.nav-ai-b {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
	background: linear-gradient(135deg, #cf4f2d, #b0402a);
	color: #fff;
	border-radius: 999px;
	padding: 10px 16px;
	font-weight: 700;
	font-size: 14.5px;
	text-decoration: none;
}

.nav-ai-b:hover {
	color: #fff;
	filter: brightness(1.07);
}

.nav-b .primary > .btn {
	white-space: nowrap;
	padding: 12px 20px;
	font-size: 15px;
}

@media (max-width:1240px) {
	.nav-b .primary > ul > li > a, .nav-b .primary > ul > li > button {
		padding: 10px 8px;
		font-size: 15px;
	}
	
	.nav-b .logo img {
		width: 160px;
		height: auto;
	}
}

@media (max-width:1100px) {
	.nav-ai-b {
		padding: 10px 12px;
	}
}

@media (max-width:980px) {
	.nav-b .primary {
		display: none;
	}
	
	.nav-b .primary.show {
		display: flex;
	}
	
	.nav-b .primary li.util {
		display: block;
	}
	
	.nav-ai-b {
		justify-content: center;
		margin-top: 10px;
	}
	
	.dd-login, .dd-res {
		width: auto;
	}
}

html.fp-reset body > :not(.site-header):not(.topbar) {
	display: none !important;
}

.st-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.st-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 20px;
	overflow: hidden;
	text-decoration: none;
	color: var(--text);
	transition: transform .18s, box-shadow .18s, border-color .18s;
}

.st-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 22px 50px rgba(22, 40, 74, .14);
	color: var(--text);
}

.st-img {
	position: relative;
	aspect-ratio: 16/9;
	overflow: hidden;
	background: var(--aqua);
}

.st-img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
}

.st-sec {
	position: absolute;
	left: 16px;
	top: 16px;
	background: #fff;
	color: var(--nile);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .04em;
	border-radius: 999px;
	padding: 5px 12px;
}

.st-body {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px 26px 26px;
	flex: 1;
}

.st-name {
	font-size: 13.5px;
	font-weight: 700;
	color: var(--blue-ink);
}

.st-body h3 {
	font-size: 23px;
	line-height: 1.2;
}

.st-body dl {
	margin: 4px 0 0;
	display: grid;
	gap: 6px;
}

.st-body dt {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--muted);
}

.st-body dd {
	margin: 0 0 8px;
	font-size: 15.5px;
	line-height: 1.5;
}

.st-res {
	margin-top: auto;
	background: #fff3ef;
	border-left: 4px solid #cf4f2d;
	border-radius: 10px;
	padding: 12px 14px;
}

.st-res span {
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #b0402a;
}

.st-res b {
	font-family: var(--display);
	font-weight: 500;
	font-size: 20px;
	color: var(--nile);
	line-height: 1.25;
}

.st-card .more {
	font-weight: 700;
	color: var(--blue-ink);
	margin-top: 6px;
}

@media (max-width:980px) {
	.st-grid {
		grid-template-columns: 1fr;
		max-width: 560px;
		margin-inline: auto;
	}
}

.section-head p {
	text-wrap: pretty;
}

.gb-yfilter {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: -8px 0 34px;
}

.gb-yfilter button {
	border: 1px solid var(--line);
	background: #fff;
	color: var(--nile);
	font: 700 14px var(--body);
	border-radius: 999px;
	padding: 9px 16px;
	cursor: pointer;
	min-height: 40px;
}

.gb-yfilter button.on, .gb-yfilter button:hover {
	background: var(--nile);
	border-color: var(--nile);
	color: #fff;
}

.gb-tl {
	position: relative;
	display: grid;
	gap: 44px;
	padding-left: 34px;
}

.gb-tl::before {
	content: "";
	position: absolute;
	left: 9px;
	top: 10px;
	bottom: 10px;
	width: 2px;
	background: linear-gradient(var(--glory), var(--blue));
}

.gb-year {
	display: block;
}

.gb-yhead {
	position: relative;
	display: flex;
	align-items: baseline;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

.gb-dot {
	position: absolute;
	left: -34px;
	top: 12px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #fff;
	border: 4px solid var(--blue);
	box-shadow: 0 0 0 4px #fff;
}

.gb-yhead .gb-y {
	position: static;
	width: auto;
	height: auto;
	border-radius: 0;
	background: 0 0;
	box-shadow: none;
	display: block;
	font: 500 40px/1 var(--display);
	color: var(--nile);
}

.gb-ymeta {
	font-size: 15px;
	font-weight: 700;
	color: var(--muted);
}

.gb-evs {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 18px;
}

.gb-ev {
	border-radius: 16px;
	transition: transform .18s, box-shadow .18s;
}

.gb-ev:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 36px rgba(22, 40, 74, .12);
}

.gb-ev-img, .gb-ev-ph {
	width: 100%;
	height: 170px;
	-o-object-fit: cover;
	object-fit: cover;
	display: block;
}

.gb-ev-ph {
	display: flex;
	align-items: center;
	justify-content: center;
}

.gb-ev-in {
	padding: 16px 18px 18px;
	gap: 8px;
}

.gb-ev p {
	font-size: 14.5px;
	line-height: 1.5;
}

@media (max-width:900px) {
	.gb-tl {
		padding-left: 26px;
	}
	
	.gb-dot {
		left: -26px;
	}
	
	.gb-tl::before {
		left: 5px;
	}
	
	.gb-yhead .gb-y {
		font-size: 32px;
	}
}

.ab-collage .c1 {
	-o-object-position: 50% 50%;
	object-position: 50% 50%;
}

a.pc {
	text-decoration: none;
	color: var(--text);
	transition: transform .18s, box-shadow .18s, border-color .18s;
}

a.pc:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 36px rgba(22, 40, 74, .12);
	border-color: var(--blue);
	color: var(--text);
}

.pc-visit {
	margin-top: auto;
	padding-top: 6px;
	font-size: 14px;
	font-weight: 700;
	color: var(--blue-ink);
}

.cp-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 22px;
	margin-top: 6px;
}

.cp-links a {
	font-weight: 700;
	text-decoration: none;
	font-size: 15.5px;
}

.cp-sf .cp-links a {
	color: var(--blue-ink);
}

.cp-cl .cp-links a {
	color: #b0402a;
}

.cp-links a:hover {
	text-decoration: underline;
}

.cp:hover {
	transform: none;
}

.cp-top {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
	gap: 24px 56px;
	align-items: start;
	margin-bottom: 34px;
}

.cp-top .section-head {
	margin-bottom: 0;
}

.cp-lede {
	font-size: 18px;
	line-height: 1.65;
	margin: 0;
	padding-top: 6px;
}

@media (max-width:900px) {
	.cp-top {
		grid-template-columns: 1fr;
	}
}

.prose-split {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: 20px 64px;
	align-items: start;
}

.prose-split > h2 {
	position: sticky;
	top: 110px;
	padding-bottom: 14px;
}

.prose-split > h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 56px;
	height: 4px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--glory), var(--blue));
}

.prose-split .prose {
	max-width: none;
}

.capture .prose-split > h2 {
	position: relative;
	top: auto;
}

.wrap > .section-head.sh-split {
	max-width: none;
	grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
	-moz-column-gap: 64px;
	column-gap: 64px;
	align-items: start;
}

.wrap > .section-head.sh-split > * {
	grid-column: 1;
}

.wrap > .section-head.sh-split > p {
	grid-column: 2;
	grid-row: 1/span 4;
	align-self: end;
	font-size: 18px;
	line-height: 1.6;
	margin: 0 0 22px;
	padding-left: 22px;
	border-left: 3px solid var(--glory);
}

.wrap > .section-head.sh-split > .eyebrow + h2 {
	margin-top: 0;
}

@media (max-width:900px) {
	.prose-split {
		grid-template-columns: 1fr;
	}
	
	.prose-split > h2 {
		position: relative;
		top: auto;
	}
	
	.wrap > .section-head.sh-split {
		grid-template-columns: 1fr;
	}
	
	.wrap > .section-head.sh-split > p {
		grid-column: 1;
		grid-row: auto;
	}
}

.nw {
	white-space: nowrap;
}

.ns-paid .ns-tag {
	color: #fff !important;
}

.ns-paid .ns-tag svg {
	stroke: #fff;
}

.ai-band a:not(.btn), .fc-ai a:not(.btn), .h-prod a:not(.btn):not(.h-pr), .cta-band a:not(.btn), .ab-proof a:not(.btn), .gb-why a:not(.btn) {
	color: var(--glory);
	text-decoration-color: rgba(146, 220, 215, .6);
}

.pc-logo img[src*=p-yoko] {
	background: #233862;
	padding: 6px 10px;
	border-radius: 8px;
}

.contact-side {
	position: sticky;
	top: 110px;
}

.capture .contact-side {
	position: static;
}

.section.quote {
	padding-block: 72px;
}

.q-card {
	display: block !important;
	position: relative;
	max-width: 980px;
	margin: 0 auto;
	background: linear-gradient(135deg, #fff 0, #f4fafd 100%);
	border: 0 !important;
	border-radius: 28px;
	padding: 56px 64px 44px !important;
	box-shadow: 0 30px 70px rgba(22, 40, 74, .1);
	text-align: center;
	overflow: hidden;
}

.q-card::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 6px;
	background: linear-gradient(90deg, var(--glory), var(--blue), #cf4f2d);
}

.q-card .q-body {
	display: block;
	position: relative;
}

.q-card .q-mark {
	position: static;
	display: block;
	font: 700 90px/.6 var(--display);
	color: #cf4f2d;
	opacity: .9;
	margin: 0 auto 18px;
	height: 44px;
}

.q-card blockquote {
	margin: 0 auto;
	max-width: 820px;
	font-family: var(--display);
	color: var(--nile);
	font-size: 24px;
	line-height: 1.5;
	text-wrap: pretty;
}

.q-card.q-long blockquote {
	font-size: 20px;
	line-height: 1.6;
}

.q-card.q-short blockquote {
	font-size: 30px;
	line-height: 1.35;
}

.q-card .q-who {
	display: flex !important;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 14px;
	margin-top: 30px;
	padding: 0 !important;
	border: 0 !important;
	text-align: left;
}

.q-card .q-who > b {
	display: block;
	color: var(--nile);
	font-size: 16px;
}

.q-card .q-who > span {
	display: block;
	color: var(--muted);
	font-size: 14px;
}

.q-card .q-who {
	flex-wrap: wrap;
}

.q-card .q-ini, .q-card .q-logo-tile {
	width: 56px;
	height: 56px;
	flex: 0 0 56px;
	margin: 0 !important;
	font-size: 20px;
}

.q-card .q-logo-tile {
	width: auto;
	min-width: 56px;
	padding: 0 10px;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 4px 14px rgba(22, 40, 74, .08);
	display: flex;
	align-items: center;
}

.q-card .q-logo-tile .q-logo {
	max-height: 36px;
	max-width: 120px;
}

.q-card .q-who-txt {
	display: grid;
}

@media (max-width:700px) {
	.q-card {
		padding: 40px 24px 32px !important;
	}
	
	.q-card blockquote, .q-card.q-short blockquote {
		font-size: 20px;
	}
}

.q-card {
	display: flex !important;
	flex-direction: column-reverse;
}

.q-card .q-who-txt b {
	display: block;
	color: var(--nile);
	font-size: 16px;
}

.q-card .q-who-txt span {
	display: block;
	color: var(--muted);
	font-size: 14px;
}

.cookie {
	position: fixed;
	left: 20px;
	bottom: 20px;
	z-index: 80;
	max-width: 520px;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 18px;
	box-shadow: 0 24px 60px rgba(22, 40, 74, .22);
	padding: 18px 20px;
	display: grid;
	gap: 12px;
	font-size: 14.5px;
	line-height: 1.5;
}

.cookie p {
	margin: 0;
	color: var(--text);
}

.cookie b {
	color: var(--nile);
}

.cookie-acts {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.cookie .btn {
	padding: 10px 18px;
	font-size: 14.5px;
}

@media (max-width:600px) {
	.cookie {
		left: 12px;
		right: 12px;
		bottom: 12px;
		max-width: none;
	}
}

.capture .cookie {
	display: none;
}

.pv-grid {
	display: grid;
	grid-template-columns: 260px minmax(0, 1fr);
	gap: 56px;
	align-items: start;
}

.pv-toc {
	position: sticky;
	top: 110px;
	display: grid;
	gap: 12px;
	background: var(--mist);
	border-radius: 18px;
	padding: 22px;
}

.pv-toc ol {
	margin: 0;
	padding-left: 18px;
	display: grid;
	gap: 6px;
	font-size: 15px;
}

.pv-toc a {
	text-decoration: none;
}

.pv-body {
	display: grid;
	gap: 34px;
	max-width: 820px;
}

.pv-sec h2 {
	font-size: 28px;
	margin-bottom: 12px;
}

.pv-sec p {
	font-size: 17px;
	line-height: 1.7;
	margin: 0 0 12px;
}

@media (max-width:900px) {
	.pv-grid {
		grid-template-columns: 1fr;
	}
	
	.pv-toc {
		position: static;
	}
}

.h-ind2::after {
	content: none;
}

.h-ind2 .h-story {
	margin: 0;
	font: 400 17px/1.5 var(--display);
	color: #fff;
	flex: 1;
}

.h-ind2:hover .h-story {
	color: #fff;
}

.h-inds-note {
	margin-top: 18px;
	font-size: 14px;
	color: var(--muted, #5b6577);
	text-align: center;
}

.q-card .q-logo-tile {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	min-height: 56px;
	padding: 8px 14px;
}

.q-card .q-logo-tile .q-logo {
	display: block;
	width: auto;
	height: auto;
	max-width: 140px;
	max-height: 40px;
}

.home-hero .fsi-stage {
	flex: 1 1 400px;
	min-width: 0;
	position: relative;
}

.home-hero .fsi-stage > .fsi {
	width: 100%;
}

.spanny-pop {
	position: absolute;
	z-index: 3;
	top: -96px;
	right: 6px;
	width: 132px;
	padding: 0;
	border: 0;
	background: 0 0;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}

.spanny-pop .sp-bot {
	display: block;
	width: 132px;
	height: auto;
	filter: drop-shadow(0 14px 18px rgba(13, 30, 66, .28));
	animation: spPop .9s cubic-bezier(.2, .9, .3, 1.35) .5s both, spHover 4.2s ease-in-out 1.5s infinite;
}

.spanny-pop .sp-bubble {
	position: absolute;
	right: 122px;
	top: 14px;
	white-space: nowrap;
	background: #fff;
	color: var(--nile);
	font: 700 14px/1.2 var(--body);
	padding: 10px 14px;
	border-radius: 16px 16px 4px 16px;
	box-shadow: 0 10px 26px rgba(13, 30, 66, .18);
	opacity: 0;
	transform: translateY(8px) scale(.9);
	transform-origin: right bottom;
	animation: spBubble .45s ease-out 1.4s forwards;
}

.spanny-pop:hover .sp-bot, .spanny-pop:focus-visible .sp-bot {
	animation: spWiggle .6s ease-in-out;
}

.spanny-pop:focus-visible {
	outline: 3px solid var(--glory);
	outline-offset: 4px;
	border-radius: 12px;
}

@keyframes spPop {
	0% {
		opacity: 0;
		transform: translate(70px, 110px) scale(.3) rotate(18deg);
	}
	
	60% {
		opacity: 1;
		transform: translate(-6px, -10px) scale(1.06) rotate(-6deg);
	}
	
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes spHover {
	0%, to {
		transform: translateY(0) rotate(-2deg);
	}
	
	50% {
		transform: translateY(-10px) rotate(3deg);
	}
}

@keyframes spBubble {
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes spWiggle {
	0%, to {
		transform: rotate(0);
	}
	
	25% {
		transform: rotate(-10deg) scale(1.05);
	}
	
	75% {
		transform: rotate(8deg) scale(1.05);
	}
}

@media (max-width:980px) {
	.spanny-pop {
		right: -6px;
		top: -84px;
		width: 112px;
	}
	
	.spanny-pop .sp-bot {
		width: 112px;
	}
	
	.spanny-pop .sp-bubble {
		right: 104px;
	}
}

@media (max-width:560px) {
	.spanny-pop .sp-bubble {
		display: none;
	}
}

@media (prefers-reduced-motion:reduce) {
	.spanny-pop .sp-bot, .spanny-pop .sp-bubble {
		animation: none;
		opacity: 1;
		transform: none;
	}
}

.rd-fs {
	display: none !important;
}

@media (max-width:560px) {
	.ab-faces {
		flex-wrap: nowrap;
		padding-left: 10px;
	}
	
	.ab-faces img {
		width: 38px;
		height: 38px;
		border-width: 2px;
		margin-left: -10px;
	}
}

.cr-awards img {
	max-width: min(140px, 100%);
}

@media (max-width:560px) {
	.cr-awards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.cr-awards img {
		height: 84px;
	}
}

.fc-dur {
	left: 14px;
	right: auto;
}

.logo-strip img {
	max-width: min(150px, 100%);
}

.spanny-pop .sp-flip {
	display: block;
	transform: scaleX(-1);
}

span.nw {
	display: inline !important;
	font: inherit !important;
	color: inherit !important;
	text-transform: inherit !important;
	letter-spacing: inherit !important;
	margin: 0 !important;
	padding: 0 !important;
	background: 0 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	white-space: nowrap;
}

.fsi, .fsi-panel, .fsi-panel form, .fsi-panel label {
	min-width: 0;
	max-width: 100%;
}

.fsi-panel form {
	grid-template-columns: minmax(0, 1fr);
}

.fsi select, .fsi input {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	text-overflow: ellipsis;
	box-sizing: border-box;
}

.fsi-panel .btn {
	max-width: 100%;
	white-space: normal;
}

.sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.crumb-home {
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

.crumb-home svg {
	display: block;
	transform: translateY(-1px);
}

.ach-deep {
	height: 720px;
}

.as-what {
	font-size: 15px;
	color: var(--muted);
	margin-top: 14px;
}

.ach-input.ach-col {
	flex-direction: column;
	align-items: stretch;
}

.ach-input.ach-col .ach-opt {
	flex: 0 0 auto;
	border-radius: 12px;
	text-align: left;
	font-weight: 600;
	font-size: 14.5px;
	padding: 10px 14px;
	line-height: 1.35;
}

.ach-back {
	align-self: flex-start;
	background: 0 0;
	border: 0;
	color: var(--muted);
	font: 600 13px var(--body);
	cursor: pointer;
	padding: 4px 2px;
	min-height: 32px;
}

.ach-back:hover {
	color: var(--nile);
	text-decoration: underline;
}

.ach-bot.has-report {
	background: #fff;
	border: 1px solid var(--line);
	max-width: 100%;
	width: 100%;
	box-shadow: 0 10px 26px rgba(22, 40, 74, .08);
	padding: 18px 18px 14px;
}

.ach-report h3 {
	font-size: 22px;
	margin: 4px 0 6px;
}

.ach-report h4 {
	font: 700 12px var(--body);
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--blue-ink);
	margin: 18px 0 8px;
}

.ach-report ul, .ach-report ol {
	margin: 0;
	padding-left: 20px;
	display: grid;
	gap: 6px;
	font-size: 14.5px;
}

.ar-head {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 16px;
	align-items: start;
}

.ar-head .as-dial {
	width: 92px;
	height: 92px;
}

.ar-head .as-dial span {
	font-size: 28px;
}

.ar-head p {
	margin: 0 0 4px;
	font-size: 14.5px;
}

.ar-who {
	color: var(--muted);
	font-size: 13px !important;
}

.ar-note {
	margin: 14px 0 0;
	padding: 10px 12px;
	background: var(--mist);
	border-radius: 10px;
	font-size: 14px;
}

.ar-areas {
	display: grid;
	gap: 12px;
}

.ar-top {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	color: var(--nile);
}

.ar-bar {
	height: 8px;
	border-radius: 4px;
	background: #e3ebf2;
	overflow: hidden;
	margin: 5px 0 6px;
}

.ar-bar i {
	display: block;
	height: 100%;
	border-radius: 4px;
	background: var(--blue);
}

.ar-hi .ar-bar i {
	background: #2e9e8f;
}

.ar-mid .ar-bar i {
	background: var(--blue);
}

.ar-lo .ar-bar i {
	background: #d4532f;
}

.ar-row p {
	margin: 0;
	font-size: 13.5px;
	color: var(--muted);
	line-height: 1.45;
}

.ar-actions {
	margin-top: 16px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

@media (max-width:560px) {
	.ach-deep {
		height: 660px;
	}
	
	.ar-head {
		grid-template-columns: 1fr;
	}
}

.pmeta {
	margin: 14px 0 0;
	padding-top: 12px;
	border-top: 1px solid var(--line);
	display: grid;
	gap: 8px;
}

.pmeta > div {
	display: grid;
	grid-template-columns: 132px 1fr;
	gap: 12px;
	align-items: baseline;
}

.pmeta dt {
	display: flex;
	align-items: center;
	gap: 7px;
	font: 700 11.5px var(--body);
	text-transform: uppercase;
	letter-spacing: .07em;
	color: var(--blue-ink);
	margin: 0;
}

.pmeta dt svg {
	flex: 0 0 16px;
	color: var(--blue);
}

.pmeta dd {
	margin: 0;
	font-size: 14.5px;
	line-height: 1.5;
	color: var(--text);
}

@media (max-width:560px) {
	.pmeta > div {
		grid-template-columns: 1fr;
		gap: 2px;
	}
}

.q2 {
	position: relative;
	max-width: 1040px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 110px minmax(0, 1fr);
	-moz-column-gap: 28px;
	column-gap: 28px;
	background: #fff;
	border-radius: 24px;
	padding: 48px 56px 40px 40px;
	box-shadow: 0 24px 60px rgba(22, 40, 74, .09);
	overflow: hidden;
}

.q2::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 6px;
	background: linear-gradient(180deg, var(--glory), var(--blue));
}

.q2-mark {
	grid-row: 1/span 2;
	font: 700 140px/.8 var(--display);
	color: var(--blue);
	opacity: .9;
	text-align: center;
	padding-top: 6px;
}

.q2 blockquote {
	margin: 0;
	grid-column: 2;
}

.q2-lead {
	margin: 0;
	font: 500 clamp(24px, 2.5vw, 32px)/1.3 var(--display);
	color: var(--nile);
	letter-spacing: -.01em;
	text-wrap: balance;
}

.q2-rest {
	margin: 16px 0 0;
	font-size: 17px;
	line-height: 1.65;
	color: var(--muted);
	max-width: 62ch;
}

.q2.q-short .q2-lead {
	font-size: clamp(26px, 2.8vw, 36px);
}

.q2-who {
	grid-column: 2;
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 26px;
	padding-top: 20px;
	border-top: 1px solid var(--line);
}

.q2-who .q-ini {
	width: 52px;
	height: 52px;
	flex: 0 0 52px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font: 700 18px var(--display);
	color: #fff;
	background: linear-gradient(135deg, var(--glory), var(--blue));
}

.q2-who .q-logo-tile {
	flex: 0 0 auto;
	min-height: 52px;
	padding: 6px 12px;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 12px;
	display: flex;
	align-items: center;
}

.q2-who .q-logo-tile .q-logo {
	display: block;
	width: auto;
	height: auto;
	max-width: 130px;
	max-height: 36px;
	margin: 0;
}

.q2-who .q-who-txt {
	display: grid;
	gap: 2px;
}

.q2-who .q-who-txt b {
	color: var(--nile);
	font-size: 16px;
}

.q2-who .q-who-txt span {
	color: var(--muted);
	font-size: 14px;
}

@media (max-width:760px) {
	.q2 {
		grid-template-columns: 1fr;
		padding: 34px 24px 28px 28px;
	}
	
	.q2-mark {
		grid-row: auto;
		font-size: 96px;
		text-align: left;
		height: 52px;
	}
	
	.q2 blockquote, .q2-who {
		grid-column: 1;
	}
}

.quote .wrap > .q2 {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

.q2-who .q-logo-tile {
	width: auto !important;
	min-width: 0 !important;
	flex: 0 0 auto !important;
	height: auto !important;
}

.q2-who .q-logo-tile .q-logo {
	width: auto !important;
	max-width: 130px !important;
	max-height: 36px !important;
}

.q2-who .q-who-txt {
	flex: 1 1 auto;
	min-width: 0;
}

.quote figure.q2 {
	max-width: 1040px;
	row-gap: 0;
	-moz-column-gap: 28px;
	column-gap: 28px;
	margin-left: auto;
	margin-right: auto;
}

.quote .q2 blockquote {
	font-size: inherit;
	line-height: inherit;
}

.quote .q2 blockquote::before {
	content: none;
}

.quote .q2 .q2-rest {
	font-family: var(--body);
}

.ach-input.ach-col {
	gap: 10px;
}

.ach-qnow {
	font: 600 16px/1.4 var(--display);
	color: var(--nile);
}

.ach-qnow span {
	display: block;
	font: 700 11px var(--body);
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--blue-ink);
	margin-bottom: 4px;
}

.ach-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.ach-grid .ach-opt {
	border-radius: 12px;
	text-align: left;
	font-weight: 600;
	font-size: 14px;
	padding: 10px 12px;
	line-height: 1.3;
	min-height: 48px;
}

.ach-deep .ach-log {
	min-height: 160px;
}

@media (max-width:560px) {
	.ach-grid {
		grid-template-columns: 1fr;
	}
}

p, li, dd, blockquote {
	text-wrap: pretty;
}

h1, h2, h3, .q2-lead {
	text-wrap: balance;
}

.section-head p {
	max-width: 860px;
}

.cs-body h2 {
	font-size: 26px;
	margin-top: 22px;
}

.t-event {
	color: #2f7d72;
}

.t-event .rs-ic {
	background: #dff5f2;
}

.book-modal {
	width: min(920px, calc(100vw - 24px));
	max-height: calc(100vh - 24px);
	padding: 0;
	border: 0;
	border-radius: 18px;
	box-shadow: 0 30px 80px rgba(10, 30, 60, .35);
	overflow: hidden;
}

.book-modal::backdrop {
	background: rgba(10, 25, 45, .55);
}

.bm-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 18px;
	border-bottom: 1px solid #e3e8ef;
	font-size: 17px;
}

.bm-x {
	border: 0;
	background: 0 0;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	color: inherit;
	padding: 2px 8px;
	border-radius: 8px;
}

.bm-x:hover, .bm-x:focus-visible {
	background: #eef3f8;
}

.bm-body .meet-frame {
	width: 100%;
	height: min(720px, calc(100vh - 90px));
	border: 0;
	display: block;
}

.book-alt p {
	margin: 0;
	text-align: center;
}

.fsi-panel[data-p=expert] .fsi-cta .btn {
	justify-content: center;
}

.pav {
	background: 0 0;
	overflow: hidden;
	padding: 0;
}

.pav img, .h-av img {
	width: 100%;
	height: 100%;
	display: block;
	border-radius: 50%;
}

.pav {
	width: 96px;
	height: 96px;
	border-radius: 48px;
}

.h-av {
	width: 44px;
	height: 44px;
	border-radius: 22px;
	background: 0 0;
	overflow: hidden;
	box-shadow: 0 0 0 2px #fff;
}

.lystage {
	--acc: #ff7a59;
	position: relative;
	border-radius: 28px;
	padding: 34px;
	background: radial-gradient(520px 260px at 92% 0, rgba(146, 220, 215, .28), transparent 70%), radial-gradient(480px 300px at 0 100%, rgba(255, 122, 89, .18), transparent 70%), linear-gradient(150deg, #16264a 0, #1d3d6e 55%, #1c5d8f 100%);
	box-shadow: 0 30px 70px -30px rgba(18, 38, 74, .6);
	overflow: hidden;
	isolation: isolate;
}

.lystage::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(rgba(255, 255, 255, .09) 1px, transparent 1px);
	background-size: 22px 22px;
	z-index: -1;
	-webkit-mask-image: linear-gradient(180deg, #000, transparent 85%);
	mask-image: linear-gradient(180deg, #000, transparent 85%);
}

.ly2 {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 24px;
	align-items: center;
	border-radius: 20px;
	padding: 24px 26px;
}

.lyl {
	display: grid;
	gap: 6px;
	align-content: center;
}

.ly-n {
	font: 700 12px/1 var(--body);
	letter-spacing: .14em;
	color: var(--acc);
}

.ly-h {
	font: 600 24px/1.15 var(--display);
	color: #fff;
}

.lyl small {
	font: 400 14.5px/1.4 var(--body);
	color: #c9d8ea;
}

.ly2-top {
	background: rgba(255, 255, 255, .07);
	border: 1px solid rgba(255, 255, 255, .14);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}

.ly2-mid {
	background: 0 0;
	border: 1px dashed rgba(146, 220, 215, .55);
}

.ly2-core {
	background: #fff;
	box-shadow: 0 18px 50px -20px rgba(0, 0, 0, .5);
}

.ly2-core .ly-h {
	color: var(--nile);
}

.ly2-core .lyl small {
	color: var(--muted);
}

.lychips2 {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.lyc {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: #fff;
	color: var(--nile);
	border-radius: 12px;
	padding: 9px 14px 9px 9px;
	font-weight: 700;
	font-size: 14.5px;
	box-shadow: 0 6px 18px -8px rgba(0, 0, 0, .45);
	transition: transform .2s;
}

.lyc:hover {
	transform: translateY(-2px);
}

.lyc-i {
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 9px;
	background: linear-gradient(135deg, #e6f4fb, #d3ecf6);
	color: var(--blue);
}

.ly2-mid .lyc {
	background: rgba(146, 220, 215, .14);
	color: #fff;
	box-shadow: none;
	border: 1px solid rgba(146, 220, 215, .45);
}

.ly2-mid .lyc-i {
	background: rgba(146, 220, 215, .25);
	color: var(--glory);
}

.lybus {
	position: relative;
	padding: 4px 0;
}

.lycore2 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.lyt {
	position: relative;
	border-radius: 14px;
	padding: 16px 16px 16px 64px;
	background: linear-gradient(180deg, #f6fafd, #eef5fa);
	border: 1px solid #e1ebf3;
}

.lyt-i {
	position: absolute;
	left: 16px;
	top: 16px;
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: var(--nile);
	color: #fff;
}

.lyt:nth-child(2) .lyt-i {
	background: var(--blue);
}

.lyt:nth-child(3) .lyt-i {
	background: #2e9e8f;
}

.lyt:nth-child(4) .lyt-i {
	background: var(--acc);
}

.lyt b {
	display: block;
	color: var(--nile);
	font-size: 16.5px;
}

.lyt p {
	margin: 4px 0 0;
	font-size: 14.5px;
	color: var(--text);
	line-height: 1.5;
}

.ly-link {
	position: relative;
	height: 40px;
	width: 60%;
	margin: 0 auto;
	display: flex;
	justify-content: space-around;
}

.ly-link i {
	position: relative;
	width: 2px;
	height: 100%;
	background: linear-gradient(180deg, rgba(146, 220, 215, .15), rgba(146, 220, 215, .7), rgba(146, 220, 215, .15));
	overflow: visible;
}

.ly-link i::after {
	content: "";
	position: absolute;
	left: -3px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--glory);
	box-shadow: 0 0 10px 2px rgba(146, 220, 215, .8);
	animation: lyflow 2.2s linear infinite;
}

.ly-link i:nth-child(2)::after {
	animation-direction: reverse;
	animation-delay: -.7s;
	background: var(--acc);
	box-shadow: 0 0 10px 2px rgba(255, 122, 89, .7);
}

.ly-link i:nth-child(3)::after {
	animation-delay: -1.4s;
}

@keyframes lyflow {
	0% {
		top: -4px;
		opacity: 0;
	}
	
	15% {
		opacity: 1;
	}
	
	85% {
		opacity: 1;
	}
	
	to {
		top: calc(100% - 4px);
		opacity: 0;
	}
}

@media (prefers-reduced-motion:reduce) {
	.ly-link i::after {
		animation: none;
		top: 16px;
	}
}

@media (max-width:860px) {
	.lystage {
		padding: 18px;
		border-radius: 20px;
	}
	
	.ly2 {
		grid-template-columns: 1fr;
		gap: 14px;
		padding: 18px;
	}
	
	.lycore2 {
		grid-template-columns: 1fr;
	}
	
	.ly-link {
		width: 80%;
	}
}

.cl-lab {
	display: block;
	font: 700 11.5px/1 var(--body);
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--blue-ink);
	margin-bottom: 10px;
}

.cl-tog {
	display: inline-flex;
	gap: 4px;
	padding: 4px;
	border-radius: 999px;
	background: #eaf2f8;
	border: 1px solid var(--line);
	margin: 0 0 22px;
}

.cl-tog button {
	border: 0;
	background: 0 0;
	border-radius: 999px;
	padding: 9px 18px;
	font: 700 14px var(--body);
	color: var(--nile);
	cursor: pointer;
}

.cl-tog button[aria-pressed=true] {
	background: var(--nile);
	color: #fff;
	box-shadow: 0 4px 12px -4px rgba(35, 56, 98, .5);
}

.cld {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1.15fr);
	gap: 18px;
	align-items: center;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 22px;
	padding: 28px;
	box-shadow: 0 24px 60px -34px rgba(18, 38, 74, .45);
}

.cld-bubble {
	position: relative;
	background: linear-gradient(135deg, var(--blue), #1a6aa0);
	color: #fff;
	border-radius: 18px 18px 18px 6px;
	padding: 18px 20px;
	font-size: 17px;
	line-height: 1.5;
	box-shadow: 0 14px 30px -14px rgba(28, 128, 183, .7);
}

.cld-go {
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #ff7a59;
	color: #fff;
	box-shadow: 0 0 0 8px rgba(255, 122, 89, .15);
}

.cld-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 8px;
}

.cld-list li {
	display: grid;
	grid-template-columns: 26px 1fr auto;
	gap: 10px;
	align-items: center;
	background: #f4f8fb;
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 10px 12px;
	font-weight: 600;
	color: var(--nile);
}

.cld-ck {
	display: grid;
	place-items: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #2e9e8f;
	color: #fff;
}

.cld-sys {
	font: 700 11.5px/1 var(--body);
	letter-spacing: .06em;
	background: var(--nile);
	color: #fff;
	border-radius: 999px;
	padding: 6px 10px;
}

.cld-conf {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 12px 0 0;
	font-size: 13.5px;
	color: var(--muted);
	font-style: italic;
}

.cld-conf svg {
	color: #2e9e8f;
}

.cl-demo.anim .cld-list li {
	opacity: 0;
	transform: translateX(14px);
}

.cl-demo.anim .cld-list li .cld-ck {
	transform: scale(0);
}

.cl-demo.anim.run .cld-list li {
	opacity: 1;
	transform: none;
	transition: opacity .45s ease calc(var(--d) * .55s + .3s), transform .45s ease calc(var(--d) * .55s + .3s);
}

.cl-demo.anim.run .cld-list li .cld-ck {
	transform: scale(1);
	transition: transform .35s cubic-bezier(.3, 1.6, .5, 1) calc(var(--d) * .55s + .55s);
}

.hub {
	margin-top: 18px;
	display: grid;
	grid-template-columns: minmax(0, .9fr) 170px minmax(0, 1.6fr);
	gap: 22px;
	align-items: center;
	border-radius: 22px;
	padding: 28px;
	background: radial-gradient(400px 220px at 50% 50%, rgba(255, 122, 89, .18), transparent 70%), linear-gradient(150deg, #16264a, #1d3d6e 60%, #1c5d8f);
	color: #fff;
}

.hub .cl-lab {
	color: var(--glory);
}

.hub-core {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 8px;
}

.hub-core li {
	background: #fff;
	color: var(--nile);
	border-radius: 10px;
	padding: 10px 14px;
	font-weight: 700;
}

.hub-core li span {
	display: block;
	font-weight: 600;
	font-size: 13px;
	color: var(--blue-ink);
	border-top: 1px solid var(--line);
	margin-top: 6px;
	padding-top: 6px;
}

.hub-core li span + span {
	border-top: 0;
	margin-top: 0;
	padding-top: 2px;
}

.hub-mid {
	display: grid;
	justify-items: center;
	gap: 10px;
	text-align: center;
}

.hub-mid small {
	color: #c9d8ea;
	font-style: italic;
	font-size: 13.5px;
}

.hub-orb {
	position: relative;
	display: grid;
	place-items: center;
	width: 128px;
	height: 128px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 30%, #ff9b7f, #e2553a 70%);
	box-shadow: 0 0 0 10px rgba(255, 122, 89, .15), 0 0 0 22px rgba(255, 122, 89, .07), 0 20px 40px -10px rgba(0, 0, 0, .5);
}

.hub-orb span {
	font: 600 22px var(--display);
	color: #fff;
}

.hub-orb::after {
	content: "";
	position: absolute;
	inset: -22px;
	border-radius: 50%;
	border: 2px solid rgba(255, 122, 89, .45);
	animation: orb 2.8s ease-out infinite;
}

@keyframes orb {
	0% {
		transform: scale(.75);
		opacity: 1;
	}
	
	to {
		transform: scale(1.25);
		opacity: 0;
	}
}

@media (prefers-reduced-motion:reduce) {
	.hub-orb::after {
		animation: none;
		opacity: .4;
	}
}

.hub-staffs {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-bottom: 16px;
}

.hub-staff {
	background: #fff;
	color: var(--nile);
	border-radius: 10px;
	padding: 10px 12px;
	text-align: center;
}

.hub-staff b {
	display: block;
	font-size: 14.5px;
}

.hub-staff span {
	font-size: 12px;
	color: var(--muted);
}

.hub-other {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.hub-other span {
	border: 1px solid rgba(255, 255, 255, .28);
	background: rgba(255, 255, 255, .07);
	border-radius: 9px;
	padding: 8px 10px;
	font-size: 13.5px;
	font-weight: 600;
}

.hub-foot {
	grid-column: 1/-1;
	margin: 4px 0 0;
	text-align: center;
	font-size: 13.5px;
	color: #c9d8ea;
	border-top: 1px solid rgba(255, 255, 255, .15);
	padding-top: 14px;
}

.hub-foot a {
	color: var(--glory);
}

.cl-more {
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
	margin-top: 18px;
}

@media (max-width:900px) {
	.cld {
		grid-template-columns: 1fr;
		padding: 20px;
	}
	
	.cld-go {
		transform: rotate(90deg);
		margin: 0 auto;
	}
	
	.hub {
		grid-template-columns: 1fr;
		padding: 20px;
	}
	
	.hub-staffs {
		grid-template-columns: 1fr;
	}
	
	.hub-other {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.pk-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.pk {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 18px;
	padding: 22px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	transition: transform .2s, box-shadow .2s;
}

.pk:hover {
	transform: translateY(-3px);
	box-shadow: 0 20px 40px -24px rgba(18, 38, 74, .45);
}

.pk-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.pk-i {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #ff7a59;
	color: #fff;
}

.pk-wk {
	font: 700 12px/1 var(--body);
	letter-spacing: .06em;
	background: #eaf2f8;
	color: var(--blue-ink);
	border-radius: 999px;
	padding: 7px 11px;
}

.pk h3 {
	margin: 6px 0 0;
	font-size: 21px;
}

.pk-d {
	margin: 0;
	color: var(--text);
}

.pk-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: auto;
	padding-top: 8px;
}

.pk-chips span {
	border: 1px solid #bcd9ea;
	color: var(--blue-ink);
	background: #f4f9fc;
	border-radius: 999px;
	padding: 5px 11px;
	font-size: 13px;
	font-weight: 600;
}

.pk-hot {
	background: linear-gradient(150deg, #16264a, #1d3d6e);
	border-color: transparent;
	color: #fff;
}

.pk-hot h3, .pk-hot .pk-d {
	color: #fff;
}

.pk-hot .pk-wk {
	background: rgba(255, 255, 255, .14);
	color: #fff;
}

.pk-hot .pk-chips span {
	background: rgba(255, 255, 255, .1);
	border-color: rgba(255, 255, 255, .3);
	color: #fff;
}

.pk-run {
	background: linear-gradient(150deg, #ff7a59, #e2553a);
	border: 0;
	color: #fff;
	justify-content: center;
}

.pk-big {
	font: 600 56px/1 var(--display);
	color: #fff;
}

.pk-big small {
	display: block;
	font: 700 12px var(--body);
	letter-spacing: .16em;
	text-transform: uppercase;
	margin-top: 6px;
}

.pk-run p {
	color: #fff;
	margin: 6px 0 10px;
}

.pk-run .btn {
	align-self: flex-start;
	background: #fff;
	color: var(--nile);
}

.trust {
	margin-top: 22px;
	border: 1px solid var(--line);
	border-radius: 18px;
	padding: 20px 22px;
	background: #fff;
}

.trust-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.tr {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.tr-i {
	flex: none;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #e3f4f1;
	color: #2e9e8f;
}

.tr b {
	display: block;
	color: var(--nile);
}

.tr span {
	font-size: 14.5px;
	color: var(--muted);
}

@media (max-width:900px) {
	.pk-grid, .trust-row {
		grid-template-columns: 1fr;
	}
}

@media (min-width:901px) and (max-width:1100px) {
	.pk-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.offers {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.of {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 18px;
	padding: 24px;
}

.of-i {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #ff7a59;
	color: #fff;
	margin-bottom: 12px;
}

.of:nth-child(2) .of-i {
	background: var(--blue);
}

.of:nth-child(4) .of-i {
	background: #2e9e8f;
}

.of:nth-child(5) .of-i {
	background: var(--nile);
}

.of h3 {
	margin: 0;
	font-size: 21px;
}

.of-who {
	margin: 4px 0 10px;
	color: var(--blue-ink);
	font-style: italic;
	font-size: 14.5px;
}

.of ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 8px;
}

.of li {
	position: relative;
	padding-left: 20px;
	font-size: 15px;
}

.of li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: .55em;
	width: 7px;
	height: 7px;
	border-radius: 2px;
	background: #ff7a59;
	transform: rotate(45deg);
}

.of-wide {
	grid-column: 1/-1;
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: 26px;
	align-items: center;
	background: linear-gradient(150deg, #eef6fb, #e2f0f8);
	border-color: #cfe3ef;
}

.dash {
	margin: 0;
	background: #fff;
	border-radius: 16px;
	padding: 18px;
	box-shadow: 0 24px 50px -28px rgba(18, 38, 74, .5);
	border: 1px solid var(--line);
	font-size: 13px;
}

.dash-h {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
}

.dash-h b {
	color: var(--nile);
	font-size: 14.5px;
}

.dash-h span {
	font: 700 10.5px var(--body);
	letter-spacing: .12em;
	text-transform: uppercase;
	border: 1px solid var(--line);
	border-radius: 999px;
	padding: 4px 9px;
	color: var(--muted);
}

.dash-k {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-bottom: 12px;
}

.dash-k div {
	background: #f4f8fb;
	border-radius: 10px;
	padding: 10px;
}

.dash-k small {
	display: block;
	font-size: 10.5px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--muted);
}

.dash-k b {
	display: block;
	font: 700 24px/1.2 var(--body);
	color: var(--nile);
}

.dash-k em {
	font-style: normal;
	font-size: 11.5px;
	font-weight: 700;
}

.dash-k .up {
	color: #2e9e8f;
}

.dash-k .warn {
	color: #d9533a;
}

.dash-b {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.dash-b small {
	display: block;
	color: var(--muted);
	margin-bottom: 6px;
	font-size: 11.5px;
}

.dash-line svg {
	width: 100%;
	height: 110px;
	display: block;
}

.dl-line {
	fill: none;
	stroke: var(--blue);
	stroke-width: 2.5;
	vector-effect: non-scaling-stroke;
}

.dl-fill {
	fill: rgba(28, 128, 183, .12);
}

.db-row {
	display: grid;
	grid-template-columns: 82px 1fr 44px;
	gap: 8px;
	align-items: center;
	margin: 5px 0;
}

.db-row span {
	color: var(--text);
}

.db-row i {
	height: 8px;
	border-radius: 4px;
	background: linear-gradient(90deg, var(--blue), var(--glory));
	width: var(--w);
}

.db-row b {
	text-align: right;
	color: var(--nile);
}

.dash figcaption {
	margin-top: 10px;
	font-size: 11.5px;
	color: var(--muted);
	font-style: italic;
}

@media (max-width:900px) {
	.offers, .of-wide {
		grid-template-columns: 1fr;
	}
	
	.dash-b {
		grid-template-columns: 1fr;
	}
}

@media (max-width:520px) {
	.dash-k {
		grid-template-columns: 1fr;
	}
}

.ops {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.op {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 16px;
	align-items: center;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 16px;
	padding: 14px;
	text-decoration: none;
	color: inherit;
	transition: transform .2s, box-shadow .2s;
}

.op:hover {
	transform: translateY(-3px);
	box-shadow: 0 20px 40px -24px rgba(18, 38, 74, .45);
}

.op-img img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 8px;
	box-shadow: 0 8px 20px -8px rgba(0, 0, 0, .35);
}

.op-b {
	display: grid;
	gap: 6px;
}

.op-b b {
	color: var(--nile);
	font-size: 17px;
}

.op-b > span:not(.tag):not(.more) {
	font-size: 14px;
	color: var(--muted);
}

@media (max-width:900px) {
	.ops {
		grid-template-columns: 1fr;
	}
}

.of-who, .pk-d, .cld-bubble, .op-b > span, .hub-foot, .pk-run p {
	text-wrap: balance;
}

.wrap > .section-head:not([style*=center]):not(.sh-split) {
	max-width: none;
}

.wrap > .section-head:not([style*=center]):not(.sh-split) > h2 {
	max-width: 900px;
}

.section-head p {
	max-width: none;
	text-wrap: pretty;
}

.op .more {
	color: var(--blue-ink);
	font-weight: 700;
	font-size: 14.5px;
}

.section-head[style*=center] {
	max-width: 900px;
	margin-inline: auto;
}

.section-head[style*=center] p {
	text-wrap: balance;
}

.ar-bar {
	position: relative;
	overflow: visible;
}

.ar-bar i {
	position: relative;
	z-index: 0;
}

.ar-mk {
	position: absolute;
	top: -3px;
	width: 2px;
	height: 14px;
	background: var(--nile);
	opacity: .45;
	border-radius: 1px;
}

.ar-legend {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin: 10px 0 0;
	font-size: 12.5px;
	color: var(--muted);
}

.ar-legend i {
	display: inline-block;
	width: 2px;
	height: 12px;
	background: var(--nile);
	opacity: .45;
	margin-right: 6px;
	vertical-align: -1px;
}

.ar-lock {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 12px;
	margin-top: 18px;
	padding: 16px;
	border-radius: 14px;
	background: linear-gradient(150deg, #16264a, #1d3d6e);
	color: #fff;
}

.ar-lock-ic {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 10px;
	background: #ff7a59;
	color: #fff;
}

.ar-lock b {
	font-size: 16px;
}

.ar-lock p {
	margin: 2px 0 8px;
	font-size: 14px;
	color: #c9d8ea;
}

.ach-report .ar-lock ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 5px;
	font-size: 14px;
}

.ar-lock li {
	position: relative;
	padding-left: 20px;
}

.ar-lock li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: .5em;
	width: 8px;
	height: 8px;
	border-radius: 2px;
	background: var(--glory);
	transform: rotate(45deg);
}

.ar-full .ar-note {
	margin-top: 8px;
}

.ar-watch {
	list-style: none !important;
	padding-left: 0 !important;
}

.ar-watch li {
	border-left: 3px solid #d4532f;
	background: #fdf3f0;
	border-radius: 0 8px 8px 0;
	padding: 8px 12px;
}

.ar-watch b {
	display: block;
	color: var(--nile);
	font-size: 14px;
}

.ar-watch span {
	font-size: 13.5px;
	color: var(--muted);
}

.ar-plan {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.ar-plan div {
	background: var(--mist);
	border-radius: 10px;
	padding: 10px 12px;
	border-top: 3px solid var(--blue);
}

.ar-plan span {
	font: 700 11.5px var(--body);
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--blue-ink);
}

.ar-plan p {
	margin: 4px 0 0;
	font-size: 14px;
}

.ar-rec {
	border: 1px solid #cfe3ef;
	background: #f4f9fc;
	border-radius: 12px;
	padding: 12px 14px;
}

.ar-rec b {
	color: var(--nile);
}

.ar-rec p {
	margin: 4px 0 6px;
	font-size: 14px;
}

.ar-actions {
	margin-top: 16px;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.ach-gate select {
	width: 100%;
	font: 15px var(--body);
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: 11px 13px;
	background: var(--mist);
	color: var(--text);
}

.acts-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

a.ach-opt {
	text-decoration: none;
	display: inline-flex;
	align-items: center;
}

@media (max-width:560px) {
	.ar-plan {
		grid-template-columns: 1fr;
	}
}

.brand {
	display: flex;
	align-items: center;
	gap: 4px;
	flex: none;
}

.brand-dd {
	position: relative;
}

.brand-btn {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	border: 0;
	background: 0 0;
	cursor: pointer;
	margin-left: 10px;
	padding: 6px 4px 6px 12px;
	border-left: 1px solid var(--line);
	font: 700 12px/1 var(--body);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--muted);
}

.brand-btn:hover, .brand-dd.open .brand-btn, .brand-dd.current .brand-btn {
	color: var(--blue-ink);
}

.brand-btn .chev {
	width: 11px;
	height: 11px;
}

.brand-dd > .dd {
	left: -8px;
	right: auto;
	width: 560px;
	top: calc(100% + 18px);
}

.brand-dd.open > .dd {
	display: block;
	opacity: 1;
	transform: none;
}

@media (hover:hover) and (min-width:981px) {
	.brand-dd:hover > .dd {
		display: block;
		opacity: 1;
		transform: none;
	}
}

.dd-brand-h {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	padding: 6px 10px 12px;
	margin-bottom: 6px;
	border-bottom: 1px solid var(--line);
}

.dd-brand-h b {
	color: var(--nile);
	font-size: 15px;
}

.dd-brand-h span {
	font-size: 12.5px;
	color: var(--muted);
}

.primary li.m-only {
	display: none;
}

@media (max-width:980px) {
	.brand-dd {
		display: none;
	}
	
	.primary li.m-only {
		display: block;
	}
}

.pv-toc a {
	color: var(--blue-ink);
}

.site-footer nav a {
	white-space: nowrap;
}

.site-footer nav {
	min-width: -moz-max-content;
	min-width: max-content;
}

.fsi-tabs button {
	flex: 1 1 auto;
	white-space: nowrap;
	font-size: 13.5px;
	padding: 10px 8px;
}

.fc-fit-c ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 10px;
}

.fc-fit-c li {
	position: relative;
	padding-left: 28px;
	line-height: 1.5;
}

.fc-fit-c li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .2em;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #2e9e8f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat;
}

.fc-fit-c.no li::before {
	background-color: #8a97a6;
}

.fc-fit-note {
	margin: 14px 0 0;
	font-size: 14.5px;
	color: var(--muted);
}

.ab-stats.ab-stats-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width:980px) {
	.ab-stats.ab-stats-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width:560px) {
	.stat .v {
		font-size: 34px;
	}
}

.rs-date, .ar-legend span, .pk-wk, .cld-sys {
	white-space: nowrap;
}

.ly2-core .ly-n {
	color: #c4492a;
}

.aip-price {
	color: #14715f;
}

.ac-inst {
	color: #1f5f56;
}

.pv-body a, .contact-side a, .ct-fsi a {
	color: var(--blue-ink);
}

.lede {
	text-wrap: pretty;
}

.fc-fit-note a, .book-alt a {
	color: var(--nile);
}

.lyc {
	white-space: nowrap;
}

.card p, .ab-people p, .tile span span {
	text-wrap: balance;
}

@media (max-width:1180px) {
	.section-head p {
		text-wrap: balance;
	}
}

h3 + p {
	text-wrap: balance;
}

.tile.tile-ind {
	flex-direction: column;
	gap: 6px;
}

.tile-main {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	text-decoration: none;
	color: inherit;
}

.tile-stories {
	margin-left: 54px;
	font-size: 13px;
	font-weight: 700;
	color: var(--blue-ink);
	text-decoration: none;
}

.tile-stories:hover {
	text-decoration: underline;
}

.nx {
	margin: 0 0 6px;
	padding: 12px 14px;
	border-radius: 14px;
	background: var(--aqua);
}

.nx-h {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 8px;
}

.nx-h span {
	font: 700 11.5px/1 var(--body);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--blue-ink);
}

.nx-h a {
	font-size: 13px;
	font-weight: 700;
	color: var(--blue-ink);
	text-decoration: none;
}

.nx-ev {
	display: grid;
	grid-template-columns: 52px 1fr auto;
	gap: 12px;
	align-items: center;
	text-decoration: none;
	color: inherit;
	background: #fff;
	border-radius: 12px;
	padding: 10px 12px;
}

.nx-ev[hidden] {
	display: none;
}

.nx-ev:hover {
	box-shadow: 0 0 0 1.5px var(--blue);
}

.nx-date {
	display: grid;
	place-items: center;
	height: 52px;
	border-radius: 10px;
	background: var(--nile);
	color: #fff;
	font: 600 20px/1 var(--display);
}

.nx-date b {
	font: 700 10.5px/1 var(--body);
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--glory);
	margin-bottom: -6px;
}

.nx-t b {
	display: block;
	color: var(--nile);
	font-size: 14.5px;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.nx-t span {
	display: block;
	font-size: 12.5px;
	color: var(--muted);
	margin-top: 2px;
}

.nx-go {
	font-size: 13px;
	font-weight: 700;
	color: var(--blue-ink);
	white-space: nowrap;
}

.nx-none {
	margin: 0;
	font-size: 14px;
}

@media (max-width:980px) {
	.nx-ev {
		grid-template-columns: 48px 1fr;
	}
	
	.nx-go {
		display: none;
	}
}

.dd-brand-h {
	align-items: center;
}

.dd-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.dd-brand-h .dd-facts span {
	font-size: 12.5px;
	color: var(--nile);
	background: var(--aqua);
	border-radius: 999px;
	padding: 4px 10px;
	white-space: nowrap;
}

.dd-facts em {
	font-style: normal;
	font-weight: 800;
	color: var(--blue-ink);
}

.dd-facts span:nth-child(2) em {
	color: #a83c1f;
}

.dd-facts span:nth-child(3) em {
	color: #17665b;
}

.brand-dd > .dd.dd-brand {
	width: 600px;
}

.nx-ev + .nx-ev {
	margin-top: 6px;
}

.nx-aud {
	font-style: normal;
	font-weight: 700;
	font-size: 11px;
	letter-spacing: .04em;
	color: var(--blue-ink);
	background: var(--aqua);
	border-radius: 999px;
	padding: 2px 8px;
	margin-right: 6px;
}

.nx-play {
	color: var(--glory);
}

.hero[class=hero] .lede, .hero.contact-hero .lede {
	max-width: 900px;
}

.fc-sub {
	position: sticky;
	top: var(--hdr, 72px);
	z-index: 40;
	background: rgba(255, 255, 255, .96);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	border-bottom: 1px solid var(--line);
}

.fc-sub .wrap {
	display: flex;
	align-items: center;
	gap: 16px;
	min-height: 56px;
}

.fc-sub-in {
	display: flex;
	gap: 4px;
	overflow-x: auto;
	scrollbar-width: none;
	flex: 1;
	min-width: 0;
}

.fc-sub-in::-webkit-scrollbar {
	display: none;
}

.fc-sub-in a {
	white-space: nowrap;
	text-decoration: none;
	font-weight: 700;
	font-size: 14.5px;
	color: var(--muted);
	padding: 8px 12px;
	border-radius: 999px;
}

.fc-sub-in a:hover {
	color: var(--nile);
	background: var(--mist);
}

.fc-sub-in a.on {
	color: var(--nile);
	background: var(--aqua);
}

.fc-sub-cta {
	flex: none;
	padding: 10px 18px;
	font-size: 14.5px;
}

[id] {
	scroll-margin-top: 140px;
}

#fit + .assess {
	padding-top: 0;
}

.fc-watch {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 14px;
	border: 0;
	background: 0 0;
	padding: 0;
	font: 700 15px var(--body);
	color: var(--blue-ink);
	cursor: pointer;
}

.fc-watch:hover {
	text-decoration: underline;
}

@media (max-width:700px) {
	.fc-sub-cta {
		display: none;
	}
}

.fc-sub {
	background: var(--nile);
	border-bottom: 0;
	box-shadow: 0 10px 24px -14px rgba(18, 38, 74, .6);
}

.fc-sub-brand {
	flex: none;
	font: 600 18px var(--display);
	color: #fff;
	padding-right: 16px;
	border-right: 1px solid rgba(255, 255, 255, .2);
}

.fc-sub-brand b {
	color: var(--glory);
	font-weight: 700;
}

.fc-sub-in a {
	color: #d5e3f0;
}

.fc-sub-in a:hover {
	color: #fff;
	background: rgba(255, 255, 255, .1);
}

.fc-sub-in a.on {
	color: var(--nile);
	background: var(--glory);
}

.fc-sub-cta.btn {
	background: #fff;
	color: var(--nile);
	border-color: #fff;
}

.fc-sub-cta.btn:hover {
	background: var(--glory);
	border-color: var(--glory);
	color: var(--nile);
}

@media (max-width:700px) {
	.fc-sub-brand {
		display: none;
	}
}

.h-ind2-lnk {
	white-space: nowrap;
}

.btn.ask-ollie {
	position: relative;
	overflow: visible;
	margin-right: 44px;
}

.ask-bot {
	position: absolute;
	right: -62px;
	top: 50%;
	width: 64px;
	height: auto;
	margin-top: -42px;
	pointer-events: none;
	filter: drop-shadow(0 8px 10px rgba(13, 30, 66, .25));
	animation: olPop .8s cubic-bezier(.2, .9, .3, 1.35) .5s both, olHover 4s ease-in-out 1.4s infinite;
}

.ask-ollie:hover .ask-bot, .ask-ollie:focus-visible .ask-bot {
	animation: olWave .6s ease-in-out;
}

@keyframes olPop {
	0% {
		opacity: 0;
		transform: translate(-30px, 30px) scale(.3);
	}
	
	60% {
		opacity: 1;
		transform: translate(4px, -6px) scale(1.06);
	}
	
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes olHover {
	0%, to {
		transform: translateY(0) rotate(-3deg);
	}
	
	50% {
		transform: translateY(-8px) rotate(3deg);
	}
}

@keyframes olWave {
	0%, to {
		transform: rotate(0);
	}
	
	25% {
		transform: rotate(-12deg) scale(1.06);
	}
	
	75% {
		transform: rotate(10deg) scale(1.06);
	}
}

@media (max-width:520px) {
	.ask-bot {
		width: 52px;
		right: -52px;
		margin-top: -34px;
	}
	
	.btn.ask-ollie {
		margin-right: 36px;
	}
}

@media (prefers-reduced-motion:reduce) {
	.ask-bot {
		animation: none;
	}
}

.card p, h3 + p, .cs-side .card p {
	text-wrap: pretty;
}

.cs-card {
	padding: 0 0 24px;
	gap: 10px;
}

.cs-card > :not(.cs-top) {
	margin-inline: 24px;
}

.cs-card > .cs-top {
	margin-inline: 0;
}

.cs-top {
	position: relative;
	display: block;
	margin-bottom: 22px;
}

.cs-top .cs-img {
	height: 180px;
	margin: 0;
	-webkit-mask: radial-gradient(70px 38px at 64px 100%, rgba(0, 0, 0, 0) 98%, #000);
	mask: radial-gradient(70px 38px at 64px 100%, rgba(0, 0, 0, 0) 98%, #000);
}

.cs-logo {
	position: absolute;
	left: 30px;
	bottom: -24px;
	width: 68px;
	height: 68px;
	border-radius: 50%;
	background: var(--white);
	display: grid;
	place-items: center;
	box-shadow: 0 6px 18px rgba(16, 42, 67, .14);
	border: 3px solid var(--white);
}

.cs-logo img {
	width: 52px;
	height: 52px;
	-o-object-fit: contain;
	object-fit: contain;
	border-radius: 50%;
}

.cs-who {
	display: block;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--blue-ink, var(--blue));
}

.cs-card h3 {
	font-size: 21px;
	line-height: 1.25;
}

.cs-pill {
	align-self: flex-start;
	display: inline-block;
	background: var(--mist);
	color: var(--nile);
	border-radius: 999px;
	padding: 4px 12px;
	font: 700 12.5px/1.3 var(--body);
	white-space: nowrap;
}

.cs-card p {
	text-wrap: pretty;
	max-width: none;
	flex: 1;
}

.cs-card .more {
	margin-top: 4px;
}

.cs-body p, .cs-body li, .rd-body p, .rd-body li {
	text-wrap: wrap;
	max-width: none;
}

.cs-body h2 {
	font-size: 30px;
	margin-top: 30px;
}

.cs-body h2:first-child {
	margin-top: 0;
}

.cs-body h3 {
	font-family: var(--body);
	font-size: 19px;
	font-weight: 700;
	line-height: 1.35;
	margin-top: 10px;
	color: var(--nile);
}

.hero h1.h1-long {
	font-size: clamp(30px, 3.3vw, 44px);
	line-height: 1.15;
	max-width: 1000px;
}

.cs-hero {
	padding-bottom: 120px;
}

.cs-id {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 6px 0 18px;
	flex-wrap: wrap;
}

.cs-id .cs-logo {
	position: static;
	width: 58px;
	height: 58px;
	border-width: 2px;
}

.cs-id .cs-logo img {
	width: 44px;
	height: 44px;
}

.cs-id-name {
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	font-size: 14px;
	color: var(--blue-ink, var(--blue));
}

.cs-id .cs-pill {
	background: var(--white);
	align-self: center;
}

.cs-banner-sec {
	margin-top: -96px;
	position: relative;
	z-index: 1;
}

.cs-hero-img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 380px;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: var(--radius);
	box-shadow: 0 24px 60px rgba(16, 42, 67, .18);
}

.cs-goals {
	padding-top: 56px;
}

.cs-svc ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 10px;
}

.cs-svc li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 15.5px;
	line-height: 1.45;
}

.cs-svc li svg {
	flex: 0 0 auto;
	margin-top: 2px;
	padding: 3px;
	border-radius: 50%;
	background: var(--blue);
	color: var(--white);
	width: 22px;
	height: 22px;
}

.cs-build {
	background: linear-gradient(180deg, var(--white), var(--mist));
}

.cs-kicker {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--blue-ink, var(--blue));
	margin-bottom: 22px;
}

.cs-shot {
	margin: 0;
	background: var(--white);
	border-radius: 16px;
	padding: 10px;
	box-shadow: 0 18px 44px rgba(16, 42, 67, .16);
	border: 1px solid var(--line);
}

.cs-shot img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 10px;
}

.cs-shots {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	align-items: start;
}

.cs-shots .s0 {
	grid-column: 1/8;
	grid-row: 1;
}

.cs-shots .s1 {
	grid-column: 6/13;
	grid-row: 1;
	margin-top: 110px;
	position: relative;
	z-index: 1;
}

.cs-shots .s2 {
	grid-column: 2/7;
	grid-row: 2;
	margin-top: -60px;
	position: relative;
	z-index: 2;
}

.cs-shots.n1 .s0 {
	grid-column: 2/12;
}

.cs-shots.n2 .s1 {
	margin-top: 80px;
}

.cs-sec {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-bottom: 26px;
}

.cs-sec h2 {
	font-size: clamp(28px, 3vw, 38px);
	white-space: nowrap;
}

.cs-sec::after {
	content: "";
	flex: 1;
	height: 2px;
	background: linear-gradient(90deg, var(--blue), transparent);
	border-radius: 2px;
}

.cs-wide {
	max-width: none;
	display: grid;
	gap: 14px;
}

.cs-wide > .cs-lead {
	font-size: 22px;
}

.cs-ills {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 22px;
	margin-top: 36px;
}

.cs-ill {
	margin: 0;
	border-radius: 18px;
	overflow: hidden;
	background: var(--white);
	box-shadow: 0 10px 30px rgba(16, 42, 67, .1);
	border: 1px solid var(--line);
}

.cs-ill img {
	display: block;
	width: 100%;
	height: auto;
}

.cs-sol {
	background: linear-gradient(180deg, var(--nile) 0 250px, var(--mist) 250px);
}

.cs-sol .cs-sec h2 {
	color: var(--white);
}

.cs-sol .cs-sec::after {
	background: linear-gradient(90deg, rgba(255, 255, 255, .7), transparent);
}

.cs-sol-card {
	background: var(--white);
	border-radius: var(--radius);
	padding: clamp(24px, 4vw, 48px);
	box-shadow: 0 24px 60px rgba(16, 42, 67, .16);
}

.cs-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
	margin: 8px 0;
}

.cs-stats figure {
	margin: 0;
	flex: 1 1 300px;
	max-width: 470px;
}

.cs-stats img {
	display: block;
	width: 100%;
	height: auto;
}

.cs-solshots {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 26px;
	margin-top: 40px;
	align-items: start;
}

.cs-solshots .cs-shot {
	padding: 0;
	background: 0 0;
	border: 0;
	box-shadow: 0 18px 40px rgba(16, 42, 67, .14);
	border-radius: 18px;
}

.cs-solshots .cs-shot img {
	border-radius: 18px;
}

.cs-solshots.n4 {
	grid-template-columns: repeat(3, 1fr);
}

.cs-solshots.n4 .cs-shot:first-child, .cs-solshots.n3 .cs-shot:first-child {
	grid-column: 1/-1;
}

.cs-solshots.n1 {
	grid-template-columns: minmax(0, 820px);
	justify-content: center;
}

@media (max-width:820px) {
	.cs-hero {
		padding-bottom: 84px;
	}
	
	.cs-banner-sec {
		margin-top: -64px;
	}
	
	.cs-shots {
		grid-template-columns: 1fr;
		gap: 18px;
	}
	
	.cs-shots .cs-shot {
		grid-column: auto !important;
		grid-row: auto !important;
		margin: 0 !important;
	}
	
	.cs-solshots {
		grid-template-columns: 1fr;
	}
	
	.cs-sec h2 {
		white-space: normal;
	}
	
	.cs-sol {
		background: linear-gradient(180deg, var(--nile) 0 220px, var(--mist) 220px);
	}
}

@media (max-width:640px) {
	.cs-top .cs-img {
		height: 160px;
	}
}

.cs-body h2 + h3 {
	margin-top: 0;
}

.cloud {
	--cc: #1c80b7;
	--cc2: #5fb3e0;
	position: relative;
	overflow: hidden;
	padding: 24px 22px 22px;
	box-shadow: 0 2px 10px rgba(16, 42, 67, .05);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.cloud::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 4px;
	background: linear-gradient(90deg, var(--cc), var(--cc2));
}

.cloud::after {
	content: "";
	position: absolute;
	right: -40px;
	top: -40px;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(28, 128, 183, .1), transparent 70%);
	background: radial-gradient(circle, color-mix(in srgb, var(--cc) 14%, transparent), transparent 70%);
	pointer-events: none;
}

.cloud .cic {
	width: 48px;
	height: 48px;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--cc), var(--cc2));
	box-shadow: 0 8px 18px rgba(16, 42, 67, .18);
	box-shadow: 0 8px 18px color-mix(in srgb, var(--cc) 30%, transparent);
}

.cloud .cic svg {
	stroke: #fff;
}

.cloud:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 36px rgba(16, 42, 67, .12);
	border-color: var(--line);
	border-color: color-mix(in srgb, var(--cc) 40%, var(--line));
}

.cloud:nth-child(10n+1) {
	--cc: #1c80b7;
	--cc2: #4fb0e3;
}

.cloud:nth-child(10n+2) {
	--cc: #7a4fd6;
	--cc2: #a98af0;
}

.cloud:nth-child(10n+3) {
	--cc: #0f9d8a;
	--cc2: #4fd1bd;
}

.cloud:nth-child(10n+4) {
	--cc: #e0663a;
	--cc2: #f5a16f;
}

.cloud:nth-child(10n+5) {
	--cc: #1f5fbf;
	--cc2: #5b8fe6;
}

.cloud:nth-child(10n+6) {
	--cc: #2e8b57;
	--cc2: #6cc38f;
}

.cloud:nth-child(10n+7) {
	--cc: #d14b7c;
	--cc2: #f08ab0;
}

.cloud:nth-child(10n+8) {
	--cc: #233862;
	--cc2: #4a6aa5;
}

.cloud:nth-child(10n+9) {
	--cc: #0b7fa8;
	--cc2: #38c1d6;
}

.cloud:nth-child(10n+10) {
	--cc: #c2410c;
	--cc2: #f59e0b;
}

@media (prefers-reduced-motion:reduce) {
	.cloud, .cloud:hover {
		transition: none;
		transform: none;
	}
}

@media (max-width:1180px) {
	.fc-sub-brand {
		display: none;
	}
	
	.fc-sub-in a {
		padding: 8px 10px;
		font-size: 14px;
	}
}

.fc-sub-in {
	-webkit-mask: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
	mask: linear-gradient(90deg, #000 calc(100% - 28px), transparent);
	padding-right: 24px;
}

@media (max-width:440px) {
	.stats.g {
		grid-template-columns: 1fr;
	}
	
	.stats.g .stat {
		padding: 20px 16px;
	}
	
	.stat .l {
		max-width: none;
		overflow-wrap: anywhere;
	}
	
	.cred .stats .stat .l {
		overflow-wrap: anywhere;
	}
}

@media (max-width:900px) {
	.fc-sub-cta {
		display: none;
	}
}

@media (max-width:900px) {
	.stats.g {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	
	.stats.g .stat .v {
		font-size: clamp(30px, 6vw, 44px);
	}
}

.dv {
	display: grid;
	grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
	gap: 48px;
	align-items: center;
}

.dv-copy {
	display: grid;
	gap: 16px;
	align-content: start;
}

.dv-copy h2 {
	font-size: clamp(30px, 3.4vw, 44px);
}

.dv-lede {
	font-size: 18px;
	margin: 0;
}

.dv-pts {
	list-style: none;
	margin: 4px 0 0;
	padding: 0;
	display: grid;
	gap: 12px;
}

.dv-pts li {
	display: grid;
	gap: 2px;
	padding-left: 16px;
	border-left: 3px solid var(--glory);
}

.dv-pts b {
	color: var(--nile);
}

.dv-pts span {
	font-size: 15.5px;
	color: var(--muted);
}

.dv-frame {
	position: relative;
	border-radius: 18px;
	overflow: hidden;
	background: #151515;
	box-shadow: 0 30px 70px rgba(16, 42, 67, .28);
	aspect-ratio: 16/9;
}

.dv-video {
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	background: #151515;
}

.dv-play {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	border: 0;
	cursor: pointer;
	color: #fff;
	font: 700 16px var(--body);
	background: linear-gradient(180deg, rgba(17, 29, 51, .05), rgba(17, 29, 51, .55));
}

.dv-play svg {
	width: 76px;
	height: 76px;
	padding: 22px 20px 22px 26px;
	border-radius: 50%;
	background: var(--blue);
	box-shadow: 0 12px 30px rgba(28, 128, 183, .5);
	transition: transform .2s;
}

.dv-play:hover svg, .dv-play:focus-visible svg {
	transform: scale(1.08);
}

.dv-play span {
	background: rgba(17, 29, 51, .75);
	padding: 6px 14px;
	border-radius: 999px;
}

.dv.playing .dv-play {
	display: none;
}

.dv-tr {
	margin-top: 14px;
	font-size: 15px;
}

.dv-tr summary {
	cursor: pointer;
	font-weight: 700;
	color: var(--blue-ink);
}

.dv-tr p {
	margin: 6px 0;
}

.h-ai-acts {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 22px;
	align-items: center;
}

.h-ai-demo {
	color: #fff;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.h-ai-demo span {
	color: var(--glory);
	margin-right: 4px;
	text-decoration: none;
	display: inline-block;
}

@media (max-width:900px) {
	.dv {
		grid-template-columns: 1fr;
		gap: 28px;
	}
	
	.dv-media {
		order: -1;
	}
}

@media (prefers-reduced-motion:reduce) {
	.dv-play svg {
		transition: none;
	}
}

@media (max-width:440px) {
	.stats.g {
		grid-template-columns: 1fr;
	}
}

@media (max-width:400px) {
	.ab-rec {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		-moz-column-gap: 12px;
		column-gap: 12px;
	}
	
	.ab-rec-item b {
		font-size: 14px;
	}
	
	.ach-head {
		padding: 12px 14px;
		gap: 10px;
	}
	
	.ach-head small {
		font-size: 11px;
		white-space: nowrap;
	}
	
	.fsi-tabs {
		margin: 12px 12px 0;
	}
	
	.fsi-tabs button {
		font-size: 12px;
		padding: 9px 4px;
	}
	
	.ev {
		grid-template-columns: 64px 1fr;
	}
	
	.ev-body {
		padding: 16px 14px;
	}
	
	.ev .btn {
		white-space: nowrap;
		padding: 10px 14px;
		font-size: 14px;
	}
}

.nav-b .primary > ul > li > a, .nav-b .primary > ul > li > button, .nav-ai-b, .nav-b .primary > .btn {
	white-space: nowrap;
}

.nav-b .primary > ul {
	gap: 0;
}

.nav-b .primary li.util > button {
	color: var(--nile) !important;
	font-weight: 600 !important;
	font-size: 15px;
	text-decoration: none !important;
	gap: 6px;
	border: 1.5px solid #d6e2ec;
	border-radius: 999px;
	padding: 8px 13px;
}

.nav-b .primary li.util > button:hover {
	border-color: var(--blue);
	background: #fff;
}

.nav-b .primary li.util > button svg {
	width: 16px !important;
	height: 16px !important;
	flex: 0 0 16px;
}

.nav-b .primary li.util > button .chev {
	width: 12px !important;
	height: 12px !important;
	flex-basis: 12px;
}

@media (min-width:981px) and (max-width:1320px) {
	.nav-b .primary li.util > button {
		font-size: 0;
		gap: 0;
		padding: 9px;
	}
	
	.nav-b .primary li.util > button .chev {
		display: none;
	}
}

:root {
	--body: "Plus Jakarta Sans", "Helvetica Neue", Arial, sans-serif;
	--text: #2b2f36;
}

body {
	font-family: var(--body);
	color: var(--text);
}

.hero, .home-hero {
	background: radial-gradient(640px 380px at 88% 12%, rgba(146, 220, 215, .35), transparent 65%), linear-gradient(180deg, #f4f9fd 0, #e6f2fa 100%) !important;
	color: var(--nile);
}

.hero::after {
	background: radial-gradient(circle, rgba(28, 128, 183, .12), rgba(28, 128, 183, 0) 70%);
}

.home-hero::before, .home-hero::after {
	opacity: .5;
}

.hero :is(h1,h2,h3,h4), .hero h1 {
	color: var(--nile);
}

.hero .lede, .home-hero .lede {
	color: #3a4250;
}

.hero .eyebrow {
	color: var(--blue-ink);
}

.crumbs {
	color: #5d6670;
}

.crumbs a {
	color: var(--nile);
}

.crumbs a:hover {
	color: var(--blue);
}

.hero a:not(.btn):not(.hb) {
	color: var(--blue-ink);
}

.hero .btn-light, .home-hero .btn-light {
	background: var(--blue);
	color: #fff;
	box-shadow: 0 10px 24px rgba(28, 128, 183, .25);
}

.hero .btn-light:hover, .home-hero .btn-light:hover {
	background: var(--blue-ink);
	color: #fff;
}

.hero .btn-ghost, .hero button.btn-ghost {
	border-color: var(--nile);
	color: var(--nile);
	background: 0 0;
}

.hero .btn-ghost:hover {
	background: var(--nile);
	color: #fff;
}

.hb {
	background: #fff;
	border: 1px solid #d6e2ec;
	color: var(--nile);
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

.hb * {
	color: inherit;
}

.home-hero h1 .hl {
	background: 0 0;
	-webkit-background-clip: initial;
	background-clip: initial;
	color: var(--blue);
}

.home-hero .fsi {
	box-shadow: 0 24px 60px rgba(22, 52, 95, .18);
}

.hero-art .ring {
	border-color: rgba(28, 128, 183, .22);
}

.hero-art-card {
	box-shadow: 0 26px 56px rgba(22, 52, 95, .16);
}

.fc-logo {
	color: var(--nile) !important;
	background: #fff !important;
	border-color: #d6e2ec !important;
}

.fc-logo b {
	color: var(--blue) !important;
}

.rd-meta .hb, .rd-meta .hb-i {
	color: var(--nile) !important;
	background: #fff !important;
	border: 1px solid #d6e2ec;
}

.hero :focus-visible {
	outline-color: var(--blue);
}

.fc-pills span {
	color: var(--nile) !important;
	background: #fff !important;
	border: 1px solid #d6e2ec !important;
}

.fc-pills span svg {
	color: var(--blue);
}

.hero .fc-pills span * {
	color: inherit;
}

b, strong, h3, h4, .btn, .lychips span, .tag, .hb {
	letter-spacing: .006em;
}

.lychips span {
	font-weight: 600;
}

.ly-core .lycore b {
	color: #fff;
}

.ly-core .lycore p {
	color: #dbe8f3;
}

.q2-lead {
	font-family: "Lora", Georgia, serif;
}

.dd-ind .tiles, .dd-about .tiles, .dd-res .tiles {
	gap: 0 !important;
}

.dd-ind .tiles .tile, .dd-about .tiles .tile, .dd-res .tiles .tile {
	padding: 14px 16px;
	border-bottom: 1px solid #e3ebf2;
	border-radius: 0;
}

.dd-ind .tiles .tile:nth-child(odd), .dd-about .tiles .tile:nth-child(odd), .dd-res .tiles .tile:nth-child(odd) {
	border-right: 1px solid #e3ebf2;
}

.dd-ind .tiles .tile:nth-last-child(-n+2):nth-child(odd), .dd-ind .tiles .tile:last-child, .dd-about .tiles .tile:nth-last-child(-n+2):nth-child(odd), .dd-about .tiles .tile:last-child, .dd-res .tiles .tile:nth-last-child(-n+2):nth-child(odd), .dd-res .tiles .tile:last-child {
	border-bottom: 0;
}

.dd-ind .tiles .tile:hover, .dd-about .tiles .tile:hover, .dd-res .tiles .tile:hover {
	background: #f4f9fd;
}

@media (max-width:980px) {
	.dd-ind .tiles .tile:nth-child(odd), .dd-about .tiles .tile:nth-child(odd), .dd-res .tiles .tile:nth-child(odd) {
		border-right: 0;
	}
	
	.dd-ind .tiles .tile:nth-last-child(-n+2):nth-child(odd), .dd-about .tiles .tile:nth-last-child(-n+2):nth-child(odd), .dd-res .tiles .tile:nth-last-child(-n+2):nth-child(odd) {
		border-bottom: 1px solid #e3ebf2;
	}
}
