
:root {
	--color-brand: #ff7417;
	--color-brand-primary: #ff7417;
	--color-brand-tertiary: #2c333f;
	--color-brand-ribbon: #2c333f;
	--color-brand-ribbon-text: #fc761f;
	--color-logo-mark-on-brand: #facc15;
	--color-brand-soft: #fee4d2;
	--color-ink: #2c333f;
	--color-white: #fff;
	--color-glass: rgba(135, 130, 117, .48);
	--color-surface-dark: #050505;
	--font-body: "Outfit", system-ui, sans-serif;
	--font-display: "Bebas Neue", Impact, sans-serif;
	--radius-pill: 100rem;
	--radius-focus: .8rem;
	--space-1: .4rem;
	--space-2: .8rem;
	--space-3: 1.2rem;
	--space-4: 1.6rem;
	--space-5: 2.4rem;
	--space-6: 3.2rem;
	--space-7: 4.8rem;
	--space-8: 6.4rem;
	--page-max: 151.2rem;
	--lightningcss-dark: initial;
	color-scheme: dark;
}

* {
	box-sizing: border-box;
}

html, body {
	font-size: 10px;
}

@media screen and (width>=1200px) and (width<=1439px) and (height>=480px) and (height<=767px) and (hover:hover) and (pointer:fine) {
	html {
		font-size: 7px;
	}
}

@media (resolution<=.85x) {
	html {
		font-size: 8.67px;
	}
}

html {
	scroll-behavior: smooth;
	min-block-size: 100%;
}

body {
	background: var(--color-surface-dark);
	min-block-size: 100%;
	color: var(--color-white);
	font-family: var(--font-body);
	text-rendering: geometricprecision;
	-webkit-font-smoothing: antialiased;
	margin: 0;
	font-size: 1.6rem;
	line-height: 1.5;
}

:where(h1,h2,h3,p,ul) {
	margin: 0;
}

:where(ul) {
	padding: 0;
}

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

:where(img,svg) {
	display: block;
}

:where(img) {
	max-inline-size: 100%;
}

:where(a,button):focus-visible {
	outline: .3rem solid var(--color-brand);
	outline-offset: .4rem;
	border-radius: var(--radius-focus);
}

.button {
	--button-bg: var(--color-brand);
	--button-color: var(--color-ink);
	--button-icon-bg: var(--color-ink);
	--button-icon-color: var(--color-brand);
	box-sizing: border-box;
	border-radius: var(--radius-pill);
	background: var(--button-bg);
	min-block-size: 4rem;
	color: var(--button-color);
	font-family: var(--font-body);
	letter-spacing: 0;
	white-space: nowrap;
	cursor: pointer;
	border: 0;
	justify-content: center;
	align-items: center;
	gap: .9rem;
	padding: .5rem .4rem .5rem 1.2rem;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.1;
	transition: transform .18s, background-color .18s, color .18s;
	display: inline-flex;
}

.button:hover {
	transform: translateY(-.2rem);
}

.button.is-gsap-intro {
	transition: none;
}

.button:active {
	transform: translateY(0);
}

.button__icon {
	background: var(--button-icon-bg);
	block-size: 3rem;
	inline-size: 3rem;
	color: var(--button-icon-color);
	border-radius: 50%;
	flex: none;
	place-items: center;
	transition: background-color .18s, color .18s;
	display: inline-grid;
}

.button__icon-svg {
	block-size: 1.7rem;
	inline-size: 1.7rem;
}

.button--large {
	gap: 1.6rem;
	min-block-size: 6.4rem;
	padding: .95rem .8rem .95rem 2.6rem;
	font-size: 2.2rem;
}

.button--large .button__icon {
	block-size: 4.5rem;
	inline-size: 4.5rem;
}

.button--large .button__icon-svg {
	block-size: 1.244rem;
	inline-size: 1.244rem;
}

@media (prefers-reduced-motion:reduce) {
	html {
		scroll-behavior: auto;
	}
	
	.button, .button__icon {
		transition: none;
	}
	
	.button:hover, .button:active {
		transform: none;
	}
}

html {
	scroll-behavior: auto;
	overscroll-behavior: none;
	overflow-y: scroll;
}

body {
	overflow-x: hidden;
}

body.has-scroll-smoother {
	overflow: hidden;
}

#scroll-wrapper {
	min-block-size: 100svh;
	inline-size: 100%;
	position: relative;
	overflow: hidden;
}

#scroll-content {
	will-change: transform;
	backface-visibility: hidden;
	min-block-size: 100svh;
	inline-size: 100%;
	overflow: visible;
	transform: translate(0, 0);
}

[data-smooth-scrub] {
	will-change: transform;
}

@media (prefers-reduced-motion:reduce) {
	body.has-scroll-smoother {
		overflow: hidden auto;
	}
	
	#scroll-wrapper {
		overflow: visible;
	}
	
	#scroll-content, [data-smooth-scrub] {
		will-change: auto;
		transform: none !important;
	}
}

.open-header {
	--open-header-logo-mark: var(--color-brand);
	--open-header-logo-text: var(--color-white);
	--open-header-cta-bg: var(--color-brand);
	--open-header-cta-color: var(--color-ink);
	--open-header-cta-icon-bg: var(--color-ink);
	--open-header-cta-icon-color: var(--color-brand);
	z-index: 70;
	align-items: center;
	gap: var(--space-3);
	pointer-events: none;
	grid-template-columns: minmax(0, 1fr) auto;
	inline-size: min(100% - 3.2rem, 141.2rem);
	display: grid;
	position: fixed;
	inset-block-start: clamp(1.6rem, 4.8vw, 2.4rem);
	inset-inline-start: 50%;
	transform: translate(-50%);
}

.open-header > * {
	pointer-events: auto;
}

.open-header__brand {
	z-index: 2;
	inline-size: clamp(14.6rem, 38vw, 20.4rem);
	display: block;
	position: relative;
}

.open-header__logo {
	block-size: auto;
	inline-size: 100%;
	overflow: visible;
}

.open-header__logo path {
	transition: fill .18s;
}

.open-header--on-light {
	--open-header-logo-text: var(--color-ink);
}

.open-header--logo-dark {
	--open-header-logo-mark: var(--color-ink);
	--open-header-logo-text: var(--color-ink);
}

.open-header--on-brand {
	--open-header-logo-mark: var(--color-ink);
	--open-header-logo-text: var(--color-ink);
	--open-header-cta-bg: var(--color-ink);
	--open-header-cta-color: var(--color-brand-primary);
	--open-header-cta-icon-bg: var(--color-brand-primary);
	--open-header-cta-icon-color: var(--color-ink);
}

.open-header__cta {
	--button-bg: var(--open-header-cta-bg);
	--button-color: var(--open-header-cta-color);
	--button-icon-bg: var(--open-header-cta-icon-bg);
	--button-icon-color: var(--open-header-cta-icon-color);
	justify-self: end;
	padding-inline: 1.8rem .5rem;
	font-size: 1.5rem;
	font-weight: 700;
	display: none;
}

.main-nav {
	justify-self: center;
	min-inline-size: 0;
	display: none;
	position: relative;
}

.main-nav__bar {
	border-radius: var(--radius-pill);
	-webkit-backdrop-filter: blur(2rem);
	background: rgba(112, 106, 94, .62);
	position: relative;
	overflow: hidden;
}

.main-nav__list {
	z-index: 1;
	align-items: center;
	gap: .2rem;
	min-block-size: 5.4rem;
	min-inline-size: max-content;
	padding: .55rem;
	list-style: none;
	display: flex;
	position: relative;
}

.main-nav__indicator {
	z-index: 0;
	border-radius: var(--radius-pill);
	background: var(--color-brand);
	pointer-events: none;
	will-change: transform, inline-size, block-size;
	display: block;
	position: absolute;
	inset-block-start: 0;
	inset-inline-start: 0;
	transform: translate(0, 0);
}

.main-nav__link {
	z-index: 1;
	border-radius: var(--radius-pill);
	min-block-size: 4rem;
	color: var(--color-white);
	font-family: var(--font-body);
	letter-spacing: 0;
	cursor: pointer;
	background: 0 0;
	border: 0;
	justify-content: center;
	align-items: center;
	padding-inline: 1.35rem;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.375;
	transition: color .18s;
	display: inline-flex;
	position: relative;
}

.main-nav__link:hover, .main-nav__link:focus-visible, .main-nav__link--active {
	color: var(--color-ink);
}

.main-nav--megamenu-open .main-nav__link[aria-current=page] {
	color: var(--color-white);
}

.main-nav__link--button[aria-expanded=true] {
	color: var(--color-ink);
}

.main-nav__megamenu {
	z-index: 4;
	inline-size: clamp(68rem, 50.6vw, 77.2rem);
	color: var(--color-white);
	position: absolute;
	inset-block-start: calc(100% + 1rem);
	inset-inline-start: 50%;
}

.main-nav__megamenu[hidden] {
	display: none;
}

.main-nav__megamenu-inner {
	-webkit-backdrop-filter: blur(2rem);
	background: rgba(75, 70, 61, .64);
	border: .1rem solid rgba(255, 255, 255, .12);
	border-radius: 2rem;
	grid-template-columns: minmax(0, 1fr) 28rem;
	gap: 2.4rem 2.8rem;
	padding: 1.8rem 1.8rem 1.2rem;
	display: grid;
	overflow: hidden;
	box-shadow: 0 2.8rem 7rem rgba(0, 0, 0, .32);
}

.main-nav__solutions {
	list-style: none;
}

.main-nav__solution:not(:last-child) {
	border-block-end: .1rem solid rgba(255, 255, 255, .14);
}

.main-nav__link-item {
	color: var(--color-white);
	letter-spacing: 0;
	grid-template-columns: 16.2rem minmax(0, 1fr);
	align-items: start;
	gap: 1.2rem;
	padding-block: 1.18rem;
	font-size: 1.26rem;
	line-height: 1.42;
	transition: color .18s, transform .18s;
	display: grid;
}

.main-nav__link-item:hover, .main-nav__link-item:focus-visible {
	color: var(--color-brand-soft);
	transform: translate(.2rem);
}

.main-nav__link-item strong {
	font-size: 1.42rem;
	font-weight: 800;
	line-height: 1.32;
}

.main-nav__link-item span {
	color: rgba(255, 255, 255, .82);
}

.main-nav__preview {
	contain: layout paint;
	background: rgba(255, 255, 255, .08);
	border-radius: 1.4rem;
	align-self: stretch;
	min-block-size: 25.6rem;
	inline-size: 28rem;
	margin: 0;
	overflow: hidden;
}

.main-nav__preview-image {
	object-fit: cover;
	opacity: 1;
	will-change: opacity;
	block-size: 25.6rem;
	inline-size: 28rem;
	transition: opacity .18s;
	transform: translate(0, 0);
}

.main-nav__preview-image.is-switching {
	opacity: .16;
}

.main-nav__megamenu-cta {
	grid-column: 1/-1;
	justify-self: end;
	min-block-size: 4rem;
	min-inline-size: 28rem;
	padding-inline: 2.4rem .5rem;
	font-size: 1.5rem;
}

.mobile-menu__trigger {
	border-radius: var(--radius-pill);
	min-block-size: 4.6rem;
	color: var(--color-white);
	font-family: var(--font-body);
	letter-spacing: 0;
	-webkit-backdrop-filter: blur(1.4rem);
	cursor: pointer;
	background: rgba(112, 106, 94, .78);
	border: 0;
	justify-content: center;
	align-items: center;
	gap: .8rem;
	padding: .8rem 1.4rem .8rem 1.8rem;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1;
	display: inline-flex;
}

.mobile-menu__trigger-icon {
	gap: .3rem;
	inline-size: 1.4rem;
	display: grid;
}

.mobile-menu__trigger-line {
	border-radius: var(--radius-pill);
	transform-origin: 50%;
	background: currentColor;
	block-size: .16rem;
	inline-size: 100%;
	display: block;
}

.mobile-menu {
	z-index: 1;
	inline-size: min(100vw - 3.2rem, 35rem);
	color: var(--color-white);
	-webkit-backdrop-filter: blur(2rem);
	transform-origin: top;
	will-change: transform, opacity;
	contain: layout paint;
	background: rgba(84, 79, 70, .62);
	border: .1rem solid rgba(255, 255, 255, .12);
	border-radius: 3.2rem;
	position: fixed;
	inset-block-start: 7.6rem;
	inset-inline-end: 0;
	overflow: hidden;
	box-shadow: 0 2.6rem 7rem rgba(0, 0, 0, .32);
}

.mobile-menu[hidden] {
	display: none;
}

.mobile-menu__track {
	min-block-size: 37.6rem;
	inline-size: 100%;
	position: relative;
	overflow: hidden;
}

.mobile-menu__pane {
	will-change: transform;
	min-block-size: 37.6rem;
	position: absolute;
	inset: 0;
}

.mobile-menu__pane--main {
	position: relative;
}

.mobile-menu__pane--submenu {
	transform: translate(100%);
}

.mobile-menu__list {
	list-style: none;
}

.mobile-menu__item:not(:last-child), .mobile-menu__back {
	border-block-end: .1rem solid rgba(255, 255, 255, .12);
}

.mobile-menu__link, .mobile-menu__submenu-trigger, .mobile-menu__back, .mobile-menu__solution {
	min-block-size: 5.6rem;
	inline-size: 100%;
	color: var(--color-white);
	font-family: var(--font-body);
	letter-spacing: 0;
	text-align: start;
	cursor: pointer;
	background: 0 0;
	border: 0;
	align-items: center;
	padding-inline: 2.8rem;
	display: flex;
}

.mobile-menu__link, .mobile-menu__submenu-trigger {
	font-size: 2.2rem;
	font-weight: 800;
	line-height: 1.12;
}

.mobile-menu__back {
	min-block-size: 6.8rem;
	font-size: 2rem;
	font-weight: 800;
}

.mobile-menu__solution {
	min-block-size: 5.65rem;
	font-size: 1.48rem;
	font-weight: 800;
	line-height: 1.25;
}

.mobile-menu__link:hover, .mobile-menu__submenu-trigger:hover, .mobile-menu__back:hover, .mobile-menu__solution:hover {
	color: var(--color-brand-soft);
}

body.open-header--mobile-menu-open {
	overflow: hidden;
}

@media (width>=48em) {
	.open-header {
		grid-template-columns: 20.4rem minmax(0, 1fr) 16.9rem;
		gap: 2.4rem;
	}
	
	.main-nav {
		grid-area: 1/2;
		display: block;
	}
	
	.open-header__cta {
		inline-size: 16.9rem;
		display: inline-flex;
	}
	
	.mobile-menu, .mobile-menu__trigger {
		display: none;
	}
}

@media (width>=75em) {
	.open-header {
		inset-block-start: clamp(2rem, 5.45svh, 5.5rem);
	}
}

@media (width<=24em) {
	.mobile-menu {
		inline-size: calc(100vw - 2.4rem);
	}
	
	.mobile-menu__link, .mobile-menu__submenu-trigger {
		font-size: 2rem;
	}
}

@media (prefers-reduced-motion:reduce) {
	.open-header__logo, .open-header__logo path, .main-nav__indicator, .main-nav__link, .main-nav__link-item, .main-nav__preview-image, .mobile-menu, .mobile-menu__pane {
		will-change: auto;
		transition: none;
	}
}

.open-hero {
	isolation: isolate;
	background: var(--color-surface-dark);
	backface-visibility: hidden;
	align-items: end;
	min-block-size: 100svh;
	padding: 0 1.8rem 2.4rem;
	display: grid;
	position: relative;
	overflow: hidden;
	transform: translate(0, 0);
}

.open-hero__media, .open-hero__picture, .open-hero__background, .open-hero__shade, .open-hero__people {
	block-size: 100%;
	inline-size: 100%;
	position: absolute;
	inset: 0;
}

.open-hero__media {
	pointer-events: none;
}

.open-hero__background, .open-hero__people {
	object-fit: cover;
	object-position: 51.5% center;
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
	backface-visibility: hidden;
	will-change: transform, opacity;
	transform: translate(0, 0);
}

.open-hero__background {
	z-index: 0;
}

.open-hero__shade {
	z-index: 1;
	opacity: .78;
	background: linear-gradient(rgba(44, 51, 63, 0) 0%, rgba(0, 0, 0, .84) 100%), linear-gradient(rgba(0, 0, 0, .3) 0%, rgba(0, 0, 0, .06) 100%), linear-gradient(90deg, rgba(0, 0, 0, .52) 0%, rgba(0, 0, 0, 0) 42%, rgba(0, 0, 0, .46) 100%);
}

.open-hero__people {
	z-index: 3;
}

.open-hero__ribbon {
	z-index: 2;
	background: var(--color-brand-ribbon);
	transform-origin: 50%;
	will-change: transform, opacity;
	backface-visibility: hidden;
	align-items: center;
	block-size: 4.6rem;
	inline-size: 265vw;
	display: flex;
	position: absolute;
	inset-block-start: clamp(20rem, 29.5svh, 26rem);
	inset-inline-start: 50%;
	overflow: hidden;
	transform: translate(-50%) rotate(-7.25deg);
}

.open-hero__ribbon--pending {
	opacity: 0;
	visibility: hidden;
}

.open-hero__ribbon-track {
	will-change: transform;
	align-items: center;
	min-inline-size: max-content;
	display: flex;
}

.open-hero__ribbon-group {
	flex: none;
	align-items: center;
	min-inline-size: max-content;
	display: flex;
}

.open-hero__ribbon-text {
	color: var(--color-brand-ribbon-text);
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	white-space: nowrap;
	padding-inline: 1.6rem;
	font-size: 3.1rem;
	font-weight: 400;
	line-height: 1;
	display: inline-block;
}

.open-hero__content {
	z-index: 4;
	text-align: center;
	inline-size: min(100%, 36rem);
	margin-block-end: clamp(8rem, 10.9svh, 9.4rem);
	margin-inline: auto;
	position: relative;
}

.open-hero__title-mask {
	will-change: transform;
	block-size: auto;
	display: block;
	overflow: hidden;
}

.open-hero__title {
	max-inline-size: 6.8em;
	color: var(--color-brand-soft);
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	text-wrap-mode: wrap;
	text-wrap-style: auto;
	backface-visibility: hidden;
	margin-inline: auto;
	font-size: clamp(4.8rem, 13.2vw, 5.9rem);
	font-weight: 400;
	line-height: .96;
	transform: translate(0, 0);
}

.open-hero__title-keep {
	white-space: nowrap;
}

.open-hero__copy {
	max-inline-size: 35rem;
	color: var(--color-white);
	letter-spacing: 0;
	text-wrap: pretty;
	margin: 1.6rem auto 0;
	font-size: clamp(1.75rem, 4.65vw, 2rem);
	font-weight: 400;
	line-height: 1.28;
}

.open-hero__cta {
	gap: 1.2rem;
	min-block-size: 5.6rem;
	inline-size: min(100%, 23.8rem);
	margin-block-start: 2.8rem;
	padding: .8rem .8rem .8rem 2.3rem;
	font-size: 1.7rem;
}

.open-hero__cta .button__icon {
	block-size: 3.8rem;
	inline-size: 3.8rem;
}

.open-hero__clients {
	z-index: 4;
	pointer-events: none;
	inline-size: 100%;
	position: absolute;
	inset-block-end: 2.2rem;
	inset-inline-start: 0;
	overflow: hidden;
}

.open-hero__clients-track {
	will-change: transform;
	align-items: center;
	inline-size: max-content;
	display: flex;
	transform: translate(0, 0);
}

.open-hero__clients-group {
	flex: none;
	justify-content: space-around;
	align-items: center;
	gap: 0;
	min-inline-size: max(62rem, 100vw);
	padding-inline: 0;
	list-style: none;
	display: flex;
}

.open-hero__client {
	flex: none;
	place-items: center;
	min-inline-size: 4.8rem;
	display: grid;
}

.open-hero__client-logo {
	object-fit: contain;
	opacity: .98;
	filter: drop-shadow(0 .7rem 1.8rem rgba(0, 0, 0, .26));
	inline-size: auto;
	max-inline-size: none;
}

.open-hero__client-logo--alfa {
	inline-size: 4.2rem;
}

.open-hero__client-logo--gls {
	inline-size: 7.9rem;
}

.open-hero__client-logo--cercle, .open-hero__client-logo--calvet {
	inline-size: 5rem;
}

.open-hero__client-logo--tiburon {
	inline-size: 8.4rem;
}

.open-hero__client-logo--vuitantas {
	inline-size: 6rem;
}

.open-hero__client-logo--unlugar {
	inline-size: 10.7rem;
}

@media (width<=24em) {
	.open-hero__content {
		inline-size: min(100%, 34rem);
	}
	
	.open-hero__title {
		font-size: clamp(4.6rem, 13vw, 5.4rem);
	}
	
	.open-hero__copy {
		font-size: 1.7rem;
	}
	
	.open-hero__cta {
		inline-size: 22.8rem;
		font-size: 1.6rem;
	}
}

@media (width>=48em) {
	.open-hero {
		padding-inline: 4rem;
	}
	
	.open-hero__ribbon {
		block-size: 5.8rem;
		inline-size: 190vw;
		inset-block-start: clamp(19rem, 28svh, 28rem);
	}
	
	.open-hero__ribbon-text {
		padding-inline: 2rem;
		font-size: 4rem;
	}
	
	.open-hero__content {
		inline-size: min(100%, 96rem);
		margin-block-end: clamp(12rem, 14svh, 15.6rem);
	}
	
	.open-hero__title {
		max-inline-size: 10.4em;
		font-size: clamp(7.8rem, 9.8vw, 10.8rem);
	}
	
	.open-hero__copy {
		max-inline-size: 84.6rem;
		margin-block-start: 2.2rem;
		font-size: clamp(2rem, 2.2vw, 2.4rem);
		line-height: 1.42;
	}
	
	.open-hero__cta {
		gap: 1.6rem;
		min-block-size: 6.4rem;
		inline-size: min(100%, 33.3rem);
		margin-block-start: 3.4rem;
		padding: .95rem .2rem .95rem 3.8rem;
		font-size: 2.2rem;
	}
	
	.open-hero__cta .button__icon {
		block-size: 4.5rem;
		inline-size: 4.5rem;
	}
	
	.open-hero__clients {
		inline-size: 100%;
		inset-inline-start: 50%;
		transform: translate(-50%);
	}
	
	.open-hero__clients-group {
		gap: 0;
		min-inline-size: max(100vw, 139.2rem);
		padding-inline: 0;
	}
}

@media (width>=75em) {
	.open-hero {
		min-block-size: 100svh;
		padding: 0;
	}
	
	.open-hero__ribbon {
		block-size: clamp(4.8rem, 6.4svh, 6.245rem);
		inline-size: 160vw;
		inset-block-start: clamp(15rem, 25.45svh, 25rem);
	}
	
	.open-hero__ribbon-text {
		font-size: clamp(3.4rem, 2.2rem + 1vw + .8vh, 4.2rem);
		line-height: 1;
	}
	
	.open-hero__content {
		inline-size: min(100%, 130rem);
		margin-block-end: 0;
		position: absolute;
		inset-block-start: clamp(24rem, 49svh, 53.8rem);
		inset-inline: 0;
	}
	
	.open-hero__title {
		letter-spacing: 0;
		text-wrap-mode: wrap;
		text-wrap-style: auto;
		max-inline-size: 10.25em;
		font-size: clamp(5.5rem, 3.5rem + 2.5vw + 2.5vh, 11rem);
		line-height: .95;
	}
	
	.open-hero__copy {
		margin-block-start: clamp(1.2rem, 2vh, 2.5rem);
		font-size: clamp(1.8rem, 1.2rem + .6vw + .6vh, 2.4rem);
		line-height: 1.45;
	}
	
	.open-hero__cta {
		margin-block-start: clamp(1.8rem, 3vh, 3.7rem);
	}
	
	.open-hero__clients {
		inset-block-end: clamp(2.2rem, 3.25svh, 4rem);
	}
}

@media (width>=75em) and (height<=44em) {
	.open-hero__content {
		inset-block-start: clamp(18rem, 40svh, 30rem);
	}
	
	.open-hero__copy {
		margin-block-start: 1rem;
		line-height: 1.35;
	}
	
	.open-hero__cta {
		min-block-size: 5.4rem;
		margin-block-start: 1.2rem;
	}
	
	.open-hero__clients {
		inset-block-end: 1rem;
	}
}

@media (width<=63.999em),(hover:none) and (pointer:coarse) {
	.open-hero {
		min-block-size: 100svh;
	}
}

@media (prefers-reduced-motion:reduce) {
	.open-hero, .open-hero__background, .open-hero__people, .open-hero__ribbon, .open-hero__title-mask, .open-hero__title {
		will-change: auto;
		transform: none;
	}
	
	.open-hero__ribbon-track, .open-hero__clients-track {
		will-change: auto;
	}
}

.coste-oculto {
	--coste-background: #fff;
	--coste-marquee: #eaebec;
	--coste-ink: var(--color-ink);
	--coste-visual-drop: -4rem;
	background: var(--coste-background);
	color: var(--coste-ink);
	--lightningcss-light: initial;
	color-scheme: light;
	position: relative;
	overflow: clip;
}

.coste-oculto__stage {
	block-size: 100svh;
	padding: 9.2rem var(--space-4) 7.2rem;
	isolation: isolate;
	align-content: start;
	justify-items: center;
	display: grid;
	position: relative;
	overflow: hidden;
}

.coste-oculto__marquee {
	z-index: 0;
	color: var(--coste-marquee);
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
	position: absolute;
	inset-block-start: 5.6rem;
	inset-inline: 0;
	overflow: hidden;
}

.coste-oculto__marquee-track {
	will-change: transform;
	align-items: center;
	min-inline-size: max-content;
	display: flex;
}

.coste-oculto__marquee-group {
	flex: none;
	align-items: center;
	min-inline-size: max-content;
	display: flex;
}

.coste-oculto__marquee-text {
	font-family: var(--font-display);
	letter-spacing: .02em;
	text-transform: uppercase;
	white-space: nowrap;
	padding-inline: 1.5rem;
	font-size: 6.6rem;
	font-weight: 400;
	line-height: .86;
	display: inline-block;
}

.coste-oculto__copy {
	z-index: 3;
	text-align: center;
	inline-size: min(100%, 74rem);
	margin-block-start: 8.6rem;
	position: relative;
}

.coste-oculto__title {
	color: var(--coste-ink);
	font-family: var(--font-body);
	letter-spacing: .02em;
	text-wrap: balance;
	flex-wrap: wrap;
	justify-content: center;
	align-items: baseline;
	gap: 0 .65rem;
	font-size: 2.4rem;
	font-weight: 400;
	line-height: 1.28;
	display: flex;
}

.coste-oculto__rotator {
	min-inline-size: 0;
	color: inherit;
	perspective: 12rem;
	vertical-align: baseline;
	white-space: nowrap;
	font-weight: 700;
	display: inline-block;
	position: relative;
	overflow: hidden;
}

.coste-oculto__rotator-word {
	opacity: 0;
	visibility: hidden;
	transform-origin: 50% 50% -1.5rem;
	backface-visibility: hidden;
	white-space: nowrap;
	will-change: transform, opacity;
	display: inline-block;
	position: absolute;
	inset-block-start: 0;
	inset-inline-start: 0;
	transform: translateY(.9rem) rotateX(-72deg);
}

.coste-oculto__rotator-word--active {
	opacity: 1;
	visibility: visible;
	position: relative;
	transform: translateY(0) rotateX(0);
}

.coste-oculto__text {
	color: var(--coste-ink);
	letter-spacing: .02em;
	text-wrap: balance;
	margin-block-start: .15rem;
	font-size: 2.4rem;
	font-weight: 400;
	line-height: 1.28;
}

.coste-oculto__visual {
	z-index: 2;
	bottom: var(--coste-visual-drop);
	aspect-ratio: 497/668;
	background: var(--coste-marquee);
	transform-origin: bottom;
	will-change: width, height, border-radius;
	inline-size: min(100%, 33.4rem);
	margin: 0;
	position: absolute;
	inset-inline-start: 50%;
	overflow: hidden;
	translate: -50%;
}

.coste-oculto__image {
	object-fit: cover;
	object-position: center center;
	transform-origin: 50%;
	will-change: transform;
	block-size: 100%;
	inline-size: 100%;
	transform: scale(1.48);
}

.coste-oculto__takeover-target {
	visibility: hidden;
	pointer-events: none;
	position: fixed;
	inset: 0;
}

.pin-spacer-coste-oculto-takeover {
	background: var(--coste-background, #fff);
}

@media (width>=48em) {
	.coste-oculto {
		--coste-visual-drop: -8rem;
	}
	
	.coste-oculto__stage {
		padding-block-start: 8.8rem;
		padding-inline: var(--space-6);
	}
	
	.coste-oculto__marquee {
		inset-block-start: 6.8rem;
	}
	
	.coste-oculto__marquee-text {
		padding-inline: 2rem;
		font-size: 10.8rem;
		line-height: .84;
	}
	
	.coste-oculto__copy {
		margin-block-start: 13.8rem;
	}
	
	.coste-oculto__title, .coste-oculto__text {
		font-size: 3rem;
		line-height: 1.32;
	}
	
	.coste-oculto__visual {
		inline-size: 44rem;
	}
}

@media (width>=75em) {
	.coste-oculto {
		--coste-visual-drop: -10rem;
	}
	
	.coste-oculto__stage {
		padding-block-start: 8.8rem;
	}
	
	.coste-oculto__marquee {
		inset-block-start: 8.2rem;
	}
	
	.coste-oculto__marquee-text {
		font-size: 15rem;
		line-height: .827;
	}
	
	.coste-oculto__copy {
		margin-block-start: 16.65rem;
	}
	
	.coste-oculto__title, .coste-oculto__text {
		font-size: 3.2rem;
		line-height: 4.2rem;
	}
	
	.coste-oculto__visual {
		inline-size: 49.7rem;
	}
}

@media (width>=75em) and (height<=44em) {
	.coste-oculto__stage {
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		padding-block-start: 4vh;
		display: flex;
	}
	
	.coste-oculto__marquee {
		inset-block-start: 16vh;
	}
	
	.coste-oculto__marquee-text {
		font-size: 8vh;
	}
	
	.coste-oculto__copy {
		margin-block: 24vh 0;
	}
	
	.coste-oculto__title, .coste-oculto__text {
		font-size: calc(1.3vh + .8vw);
		line-height: 1.3;
	}
	
	.coste-oculto__visual {
		height: 52vh;
		aspect-ratio: 497/668;
		inline-size: auto;
		bottom: 0;
	}
}

@media (prefers-reduced-motion:reduce) {
	.coste-oculto__marquee-track, .coste-oculto__rotator-word, .coste-oculto__visual {
		will-change: auto;
	}
}

.que-es-or {
	--que-es-background: var(--color-brand-primary);
	--que-es-text-active: #fff;
	--que-es-text-muted: rgba(255, 255, 255, .32);
	background: var(--que-es-background);
	color: var(--que-es-text-active);
	--lightningcss-dark: initial;
	color-scheme: dark;
	position: relative;
	overflow: clip visible;
}

.que-es-or__pin {
	isolation: isolate;
	min-block-size: 100svh;
	position: relative;
	overflow: visible;
}

.que-es-or__stage {
	z-index: 1;
	min-block-size: 100svh;
	padding: 8rem var(--space-4);
	place-items: center;
	display: grid;
	position: relative;
	overflow: visible;
}

.que-es-or__watermark {
	z-index: 0;
	opacity: .9;
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
	will-change: transform, opacity;
	block-size: auto;
	inline-size: clamp(72rem, 112svh, 96rem);
	max-inline-size: none;
	position: absolute;
	inset-block-start: 50%;
	inset-inline-end: 0;
	transform: translateY(-50%);
}

.que-es-or__content {
	z-index: 1;
	text-align: center;
	inline-size: min(100%, 135.2rem);
	position: relative;
}

.que-es-or__headline {
	color: var(--que-es-text-active);
	font-family: var(--font-body);
	letter-spacing: 0;
	text-align: center;
	text-wrap: balance;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.25;
}

.que-es-or__word {
	color: var(--que-es-text-muted);
	will-change: color;
}

@media (width>=48em) {
	.que-es-or__stage {
		padding-inline: var(--space-6);
	}
	
	.que-es-or__watermark {
		inline-size: clamp(88rem, 112svh, 120rem);
	}
	
	.que-es-or__headline {
		font-size: 4rem;
		line-height: 1.4;
	}
}

@media (width>=75em) {
	.que-es-or__stage {
		padding-inline: 6rem;
	}
	
	.que-es-or__watermark {
		inline-size: clamp(119rem, 116svh, 142rem);
	}
	
	.que-es-or__headline {
		font-size: 4.5rem;
		line-height: 6.6rem;
	}
}

.que-es-or > .pin-spacer {
	background: var(--que-es-background);
}

@media (prefers-reduced-motion:reduce) {
	.que-es-or__watermark, .que-es-or__word {
		will-change: auto;
	}
}

.problematicas {
	--problematicas-background: var(--color-brand-primary);
	--problematicas-background-active: var(--color-brand-tertiary);
	--problematicas-text: var(--color-white);
	--problematicas-outline-alpha: .84;
	--problematicas-outline: rgba(255, 255, 255, var(--problematicas-outline-alpha));
	background-color: var(--problematicas-background);
	min-block-size: 100svh;
	color: var(--problematicas-text);
	--lightningcss-dark: initial;
	color-scheme: dark;
	isolation: isolate;
	transition: background-color .52s;
	position: relative;
	overflow: hidden;
}

.problematicas--scroll-ready, .problematicas--mobile-marquee, .problematicas--active, .problematicas.is-problematicas-shifted {
	--problematicas-background: var(--problematicas-background-active);
}

.problematicas.is-problematicas-handoff {
	--problematicas-background: var(--color-white);
}

.problematicas__watermark {
	z-index: 0;
	opacity: .78;
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
	block-size: auto;
	inline-size: clamp(76rem, 112svh, 112rem);
	max-inline-size: none;
	position: absolute;
	inset-block-start: 50%;
	inset-inline-start: 50%;
	transform: translate(-18%, -50%);
}

.problematicas__stage {
	z-index: 1;
	align-content: center;
	min-block-size: 100svh;
	padding-block: 11rem 8rem;
	display: grid;
	position: relative;
	overflow: hidden;
}

.problematicas__title {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
	block-size: .1rem;
	inline-size: .1rem;
	margin: -.1rem;
	padding: 0;
	position: absolute;
	overflow: hidden;
}

.problematicas__rows {
	gap: 3.2rem;
	display: grid;
}

.problematicas__row {
	inline-size: 100%;
	overflow: visible;
}

.problematicas__track {
	backface-visibility: hidden;
	will-change: transform;
	align-items: center;
	gap: 4.2rem;
	inline-size: max-content;
	display: flex;
	transform: translate(0, 0);
}

.problematicas__item {
	flex: none;
	align-items: center;
	gap: 2.2rem;
	display: inline-flex;
}

.problematicas__text {
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	white-space: nowrap;
	font-size: clamp(4.8rem, 6.5svh, 6.6rem);
	font-weight: 400;
	line-height: .9;
	display: inline-block;
}

.problematicas__text--solid {
	color: var(--problematicas-text);
}

.problematicas__text--outline {
	color: rgba(0, 0, 0, 0);
	-webkit-text-stroke: .08rem var(--problematicas-outline);
}

.problematicas__image {
	object-fit: cover;
	border-radius: .2rem;
	flex: none;
	block-size: 6rem;
	inline-size: 10.5rem;
	max-inline-size: none;
}

@media (width>=48em) {
	.problematicas__stage {
		padding-block: 14rem 10rem;
	}
	
	.problematicas__watermark {
		inline-size: clamp(96rem, 112svh, 128rem);
	}
	
	.problematicas__rows {
		gap: 4.6rem;
	}
	
	.problematicas__track {
		gap: 5.2rem;
	}
	
	.problematicas__item {
		gap: 3.2rem;
	}
	
	.problematicas__text {
		font-size: clamp(8.4rem, 13svh, 11.7rem);
		line-height: .9;
	}
	
	.problematicas__image {
		block-size: 7.4rem;
		inline-size: 13rem;
	}
}

@media (width>=75em) {
	.problematicas__stage {
		padding-block: 16.8rem 11rem;
	}
	
	.problematicas__watermark {
		inline-size: 118rem;
		transform: translate(-16%, -50%);
	}
	
	.problematicas__rows {
		gap: 5.2rem;
	}
	
	.problematicas__track {
		gap: 6.4rem;
	}
	
	.problematicas__item {
		gap: 4.4rem;
	}
	
	.problematicas__text {
		font-size: clamp(9.6rem, 13svh, 13.2rem);
		line-height: .88;
	}
	
	.problematicas__text--outline {
		-webkit-text-stroke-width: .1rem;
	}
	
	.problematicas__image {
		block-size: 8rem;
		inline-size: 14rem;
	}
}

@media (prefers-reduced-motion:reduce) {
	.problematicas__track {
		will-change: auto;
	}
}

.scroll-container-wrapper {
	background: var(--color-white);
	isolation: isolate;
	position: relative;
	overflow: clip;
}

.scroll-container-wrapper__stage {
	z-index: 1;
	will-change: transform;
	position: relative;
}

.isologo-3d-fixed {
	z-index: 9;
	aspect-ratio: 1/.86;
	opacity: 1;
	pointer-events: none;
	inline-size: clamp(22rem, 58vw, 34rem);
	transform-style: preserve-3d;
	transform-origin: 50%;
	will-change: transform, opacity;
	position: absolute;
	inset-block-start: 58svh;
	inset-inline-start: 50%;
	transform: translate(-50%, -50%);
}

.isologo-3d-fixed__canvas {
	block-size: 100%;
	inline-size: 100%;
	display: block;
}

.una-plataforma {
	--una-background: #fff;
	--una-ink: var(--color-ink);
	--una-muted: #e9eaec;
	--una-outline: rgba(44, 51, 63, .18);
	--una-title-stroke: var(--color-white);
	--una-container-max: 141.2rem;
	--una-container-gutter: max(1.6rem, calc(( 100vw - var(--una-container-max) ) / 2));
	--una-handoff-height: max(20svh, 90svh);
	background: var(--una-background);
	color: var(--una-ink);
	--lightningcss-light: initial;
	color-scheme: light;
	position: relative;
	overflow: clip visible;
}

.una-plataforma__pin {
	isolation: isolate;
	min-block-size: 100svh;
	position: relative;
	overflow: hidden;
}

.una-plataforma__marquee {
	z-index: 0;
	color: var(--una-muted);
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
	position: absolute;
	inset-block-start: 7.6rem;
	inset-inline: 0;
	overflow: hidden;
}

.una-plataforma__marquee-track {
	will-change: transform;
	align-items: center;
	min-inline-size: max-content;
	display: flex;
}

.una-plataforma__marquee-text {
	font-family: var(--font-display);
	letter-spacing: .03em;
	text-transform: uppercase;
	white-space: nowrap;
	padding-inline: 1.6rem;
	font-size: 7rem;
	font-weight: 400;
	line-height: .86;
	display: inline-block;
}

.una-plataforma__layout {
	z-index: 1;
	min-block-size: 100svh;
	padding: 18rem var(--space-4) 8rem;
	grid-template-columns: minmax(0, 1fr);
	align-items: center;
	display: grid;
	position: relative;
}

.una-plataforma__media {
	z-index: 1;
	will-change: transform, clip-path;
	inline-size: min(100%, 62rem);
	margin: 0 auto;
	position: relative;
}

.una-plataforma__media-mask {
	aspect-ratio: 872/589;
	inline-size: 100%;
	overflow: hidden;
}

.una-plataforma__image {
	object-fit: cover;
	transform-origin: 50%;
	will-change: transform;
	block-size: 100%;
	inline-size: 100%;
}

.una-plataforma__seal {
	z-index: 3;
	block-size: 8.8rem;
	inline-size: 8.8rem;
	color: var(--color-white);
	pointer-events: none;
	place-items: center;
	display: grid;
	position: absolute;
	inset-block-end: 2rem;
	inset-inline-start: 2rem;
}

.una-plataforma__seal-ring {
	transform-origin: 50%;
	will-change: transform;
	block-size: 100%;
	inline-size: 100%;
	max-inline-size: none;
}

.una-plataforma__seal-arrow {
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.8px;
	block-size: 3.4rem;
	inline-size: 2.8rem;
	position: absolute;
}

.una-plataforma__model {
	z-index: 2;
	aspect-ratio: 1/.86;
	pointer-events: none;
	inline-size: min(100%, 36rem);
	margin: -8.8rem auto 0;
	position: relative;
}

.una-plataforma__canvas {
	block-size: 100%;
	inline-size: 100%;
	display: block;
}

.una-plataforma__copy {
	z-index: 3;
	text-align: center;
	inline-size: min(100%, 62rem);
	margin: 2.8rem auto 0;
	position: relative;
}

.una-plataforma__title {
	z-index: 3;
	inline-size: min(100%, 62rem);
	color: var(--una-ink);
	font-family: var(--font-display);
	letter-spacing: .01em;
	text-transform: uppercase;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 1rem;
	margin: 2.8rem auto 0;
	font-size: 7.2rem;
	font-weight: 400;
	line-height: .95;
	display: flex;
	position: relative;
}

.una-plataforma__title-accessible {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
	block-size: .1rem;
	inline-size: .1rem;
	margin: -.1rem;
	padding: 0;
	position: absolute;
	overflow: hidden;
}

.una-plataforma__title-layer {
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 1rem;
	display: flex;
}

.una-plataforma__title-layer--front {
	display: none;
}

.una-plataforma__title-line {
	display: inline;
}

.una-plataforma__text {
	color: var(--una-ink);
	letter-spacing: .01em;
	text-wrap: pretty;
	margin: 1rem 0 0;
	font-size: 2.2rem;
	font-weight: 400;
	line-height: 1.42;
}

.una-plataforma__handoff {
	z-index: 2;
	block-size: var(--una-handoff-height);
	pointer-events: none;
	position: relative;
}

@media (width>=48em) {
	.isologo-3d-fixed {
		inline-size: clamp(28rem, 42vw, 42rem);
		inset-block-start: 61svh;
	}
	
	.una-plataforma__marquee {
		inset-block-start: 8.8rem;
	}
	
	.una-plataforma__marquee-text {
		padding-inline: 2rem;
		font-size: 11rem;
		line-height: .84;
	}
	
	.una-plataforma__layout {
		padding: 23rem var(--space-6) 9rem;
	}
	
	.una-plataforma__media {
		inline-size: min(100%, 74rem);
	}
	
	.una-plataforma__model {
		inline-size: 42rem;
		margin-block-start: -12rem;
	}
	
	.una-plataforma__title {
		font-size: 10.3rem;
	}
	
	.una-plataforma__text {
		font-size: 2.2rem;
		line-height: 1.45;
	}
}

@media (width>=75em) {
	.isologo-3d-fixed {
		inline-size: clamp(38rem, 27.8vw, 42rem);
		inset-block-start: 70svh;
		inset-inline-start: 48%;
	}
	
	.una-plataforma {
		--una-handoff-height: max(20svh, 120svh);
	}
	
	.una-plataforma__marquee {
		inset-block-start: 12.6rem;
	}
	
	.una-plataforma__marquee-text {
		font-size: 15rem;
		line-height: .84;
	}
	
	.una-plataforma__layout {
		grid-template-columns: 57.7% 42.3%;
		align-items: end;
		padding: 28.6rem 0 9.9rem;
	}
	
	.una-plataforma__media {
		z-index: 2;
		grid-area: 1/1;
		justify-self: start;
		inline-size: min(100%, 87.2rem);
		margin: 0;
	}
	
	.una-plataforma__seal {
		z-index: 6;
		block-size: 12.8rem;
		inline-size: 12.8rem;
		inset-block-end: 7.4rem;
		inset-inline-start: 5.7rem;
	}
	
	.una-plataforma__model {
		z-index: 8;
		inline-size: 40rem;
		margin: 0;
		position: absolute;
		inset-block-end: -1.8rem;
		inset-inline-start: 37.2%;
	}
	
	.una-plataforma__copy {
		z-index: 5;
		text-align: right;
		inline-size: min(52.4rem, 34vw);
		margin: 0;
		position: absolute;
		inset-block-start: 57.6rem;
		inset-inline-end: var(--una-container-gutter);
	}
	
	.una-plataforma__title {
		z-index: auto;
		text-align: right;
		pointer-events: none;
		block-size: 24rem;
		inline-size: auto;
		margin: 0;
		font-size: 10.6rem;
		line-height: .92;
		display: block;
		position: absolute;
		inset-block-start: 32.6rem;
		inset-inline-start: 36.8%;
		inset-inline-end: var(--una-container-gutter);
	}
	
	.una-plataforma__title-layer {
		display: block;
		position: absolute;
		inset: 0;
	}
	
	.una-plataforma__title-layer--back {
		z-index: 1;
		color: var(--una-ink);
	}
	
	.una-plataforma__title-layer--front {
		z-index: 4;
		color: rgba(0, 0, 0, 0);
		-webkit-text-stroke: .12rem var(--una-title-stroke);
	}
	
	.una-plataforma__title-line {
		white-space: nowrap;
		will-change: transform, opacity;
		inline-size: max-content;
		max-inline-size: none;
		margin-inline-start: auto;
		display: block;
	}
	
	.una-plataforma__title-line--bottom {
		margin-block-start: .2rem;
	}
	
	.una-plataforma__text {
		text-align: right;
		text-align-last: right;
		max-inline-size: 100%;
		font-size: 2.2rem;
		line-height: 1.42;
	}
}

@media (width>=90em) {
	.isologo-3d-fixed {
		inset-inline-start: 47.8%;
	}
	
	.una-plataforma__layout {
		padding-inline-end: 6.6rem;
	}
	
	.una-plataforma__title {
		font-size: 10.8rem;
	}
	
	.una-plataforma__model {
		inline-size: 42rem;
		inset-inline-start: 37.8%;
	}
}

@media (width>=75em) and (height<=44em) {
	.una-plataforma__marquee {
		inset-block-start: calc(6vh + 1.5vw);
	}
	
	.una-plataforma__marquee-text {
		font-size: calc(8vh + 3vw);
		line-height: .84;
	}
	
	.una-plataforma__layout {
		grid-template-columns: 50% 50%;
		align-items: center;
		padding-block: calc(15vh + 4vw) calc(4vh + 1vw);
	}
	
	.una-plataforma__media {
		aspect-ratio: 872/589;
		block-size: calc(42vh + 4vw);
		inline-size: auto;
	}
	
	.una-plataforma__seal {
		block-size: calc(6vh + 3vw);
		inline-size: calc(6vh + 3vw);
		inset-block-end: calc(1vh + 1vw);
		inset-inline-start: calc(1vh + 1vw);
	}
	
	.una-plataforma__title {
		block-size: auto;
		font-size: calc(5vh + 2.5vw);
		inset-block-start: calc(23vh + 2vw);
	}
	
	.una-plataforma__copy {
		inline-size: min(52.4rem, 34vw);
		inset-block-start: calc(48vh + 4vw);
	}
	
	.una-plataforma__text {
		font-size: calc(1.3vh + .6vw);
		line-height: 1.4;
	}
	
	.una-plataforma__model {
		inline-size: calc(16vh + 8vw);
		inset-block-end: -1.5vh;
		inset-inline-start: 39%;
	}
	
	.isologo-3d-fixed {
		inline-size: calc(16vh + 8vw);
		inset-block-start: 65vh;
	}
}

@media (prefers-reduced-motion:reduce) {
	.scroll-container-wrapper__stage, .isologo-3d-fixed, .una-plataforma__marquee-track, .una-plataforma__image, .una-plataforma__seal-ring, .una-plataforma__title-line, .una-plataforma__model {
		will-change: auto;
	}
}

.soluciones {
	--soluciones-bg: #2c333f;
	--soluciones-panel: #2c333f;
	--soluciones-ink: #fff4bd;
	--soluciones-muted: rgba(255, 244, 189, .84);
	--soluciones-soft: rgba(255, 255, 255, .08);
	--soluciones-orange: #fc761f;
	--soluciones-eyebrow-color: rgba(255, 255, 255, .86);
	--soluciones-visual-overlay-rgb: 44, 51, 63;
	--soluciones-content-gutter: clamp(2.4rem, 6vw, 7.2rem);
	--soluciones-split: 56%;
	background: var(--soluciones-bg);
	min-block-size: 100svh;
	color: var(--soluciones-ink);
	--lightningcss-dark: initial;
	color-scheme: dark;
	position: relative;
	overflow: clip;
}

.soluciones--light {
	--soluciones-bg: #fff;
	--soluciones-panel: #fff;
	--soluciones-ink: #2c333f;
	--soluciones-muted: rgba(44, 51, 63, .82);
	--soluciones-soft: rgba(44, 51, 63, .06);
	--soluciones-orange: #fc761f;
	--soluciones-eyebrow-color: rgba(44, 51, 63, .86);
	--soluciones-visual-overlay-rgb: 255, 255, 255;
	--lightningcss-light: initial;
	color-scheme: light;
}

.soluciones--dark {
	--soluciones-bg: #2c333f;
	--soluciones-panel: #2c333f;
	--soluciones-ink: #fff0ab;
	--soluciones-muted: rgba(255, 240, 171, .82);
	--soluciones-soft: rgba(255, 255, 255, .08);
	--soluciones-orange: #fc761f;
	--soluciones-eyebrow-color: rgba(255, 255, 255, .86);
	--soluciones-visual-overlay-rgb: 44, 51, 63;
	--lightningcss-dark: initial;
	color-scheme: dark;
}

.soluciones__heading {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
	block-size: .1rem;
	inline-size: .1rem;
	margin: -.1rem;
	padding: 0;
	position: absolute;
	overflow: hidden;
}

.soluciones__pin {
	background: var(--soluciones-bg);
	isolation: isolate;
	min-block-size: 100svh;
	position: relative;
	overflow: hidden;
}

.soluciones__slides {
	min-block-size: 100svh;
	position: relative;
}

.soluciones__slide {
	min-block-size: 100svh;
	color: var(--soluciones-ink);
	isolation: isolate;
	background: 0 0;
	grid-template-columns: minmax(0, 1fr);
	display: grid;
	position: absolute;
	inset: 0;
}

.soluciones__slide:not(:first-of-type) {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.soluciones__content {
	z-index: 2;
	min-block-size: 62svh;
	padding: 11.2rem var(--soluciones-content-gutter) 5.2rem;
	background: var(--soluciones-panel);
	align-items: center;
	display: flex;
	position: relative;
}

.soluciones__content-inner {
	flex-direction: column;
	min-block-size: min(62rem, 100svh - 17rem);
	inline-size: min(100%, 68rem);
	display: flex;
}

.soluciones__eyebrow {
	border-radius: var(--radius-pill);
	background: var(--soluciones-soft);
	min-block-size: 2.7rem;
	color: var(--soluciones-eyebrow-color);
	align-self: flex-start;
	align-items: center;
	padding: .35rem 1.45rem;
	font-size: clamp(1.15rem, 2.9vw, 1.35rem);
	line-height: 1.15;
	display: inline-flex;
}

.soluciones__title {
	color: var(--soluciones-ink);
	font-family: var(--font-display);
	letter-spacing: .01em;
	text-transform: uppercase;
	text-wrap: balance;
	margin-block-start: 2rem;
	font-size: clamp(5.8rem, 15vw, 8.2rem);
	font-weight: 400;
	line-height: .91;
}

.soluciones__kicker {
	color: var(--soluciones-ink);
	font-family: var(--font-display);
	text-transform: uppercase;
	margin-block-start: .65rem;
	font-size: clamp(2.2rem, 6vw, 3.2rem);
	font-weight: 400;
	line-height: 1;
}

.soluciones__copy {
	max-inline-size: 66rem;
	color: var(--soluciones-muted);
	letter-spacing: .01em;
	text-wrap: pretty;
	margin-block-start: 3.2rem;
	font-size: clamp(1.95rem, 5vw, 2.45rem);
	font-weight: 400;
	line-height: 1.25;
}

.soluciones__copy strong {
	color: var(--soluciones-ink);
	font-weight: 800;
}

.soluciones__features {
	gap: 1.9rem;
	margin-block-start: 3.8rem;
	list-style: none;
	display: grid;
}

.soluciones__features li {
	color: var(--soluciones-muted);
	text-wrap: pretty;
	padding-inline-start: 4rem;
	font-size: clamp(1.9rem, 4.6vw, 2.35rem);
	line-height: 1.28;
	position: relative;
}

.soluciones__features li:before {
	content: "✓";
	color: var(--soluciones-ink);
	font-size: 3rem;
	font-weight: 800;
	line-height: 1;
	position: absolute;
	inset-block-start: -.2rem;
	inset-inline-start: 0;
}

.soluciones__actions {
	flex-wrap: wrap;
	align-items: center;
	gap: 1.8rem 4.2rem;
	margin-block-start: auto;
	padding-block-start: 4.6rem;
	display: flex;
}

.soluciones__link {
	color: var(--soluciones-ink);
	align-items: center;
	gap: 1.8rem;
	font-size: 1.65rem;
	font-weight: 800;
	line-height: 1.2;
	display: inline-flex;
}

.soluciones__link-icon {
	place-items: center;
	block-size: 2rem;
	inline-size: 2rem;
	font-size: 1.9rem;
	display: inline-grid;
}

.soluciones__cta {
	--button-bg: var(--soluciones-orange);
	--button-color: var(--color-ink);
	--button-icon-bg: var(--color-ink);
	--button-icon-color: var(--soluciones-orange);
	min-block-size: 5.6rem;
	padding: .6rem .6rem .6rem 2.6rem;
	font-size: clamp(1.6rem, 4vw, 2rem);
}

.soluciones__visual {
	z-index: 1;
	background: #171d26;
	min-block-size: 38svh;
	margin: 0;
	position: relative;
	overflow: hidden;
}

.soluciones__mobile-mark {
	z-index: 4;
	aspect-ratio: 1;
	pointer-events: none;
	justify-self: center;
	place-items: center;
	inline-size: clamp(10rem, 27vw, 12rem);
	margin-block: -5.8rem -5.4rem;
	display: grid;
	position: relative;
}

.soluciones__mobile-mark img {
	filter: drop-shadow(0 1.5rem 1.6rem rgba(0, 0, 0, .26));
	transform-origin: 50%;
	block-size: 100%;
	inline-size: 100%;
	display: block;
	transform: rotate(-5deg);
}

.soluciones__visual:before {
	content: "";
	z-index: 2;
	background: linear-gradient(180deg, var(--soluciones-panel) 0%, rgba(var(--soluciones-visual-overlay-rgb), 0) 22%), linear-gradient(90deg, rgba(var(--soluciones-visual-overlay-rgb), .42) 0%, rgba(var(--soluciones-visual-overlay-rgb), 0) 34%);
	pointer-events: none;
	position: absolute;
	inset: 0;
}

.soluciones__image {
	object-fit: cover;
	object-position: center;
	transform-origin: 50%;
	will-change: transform;
	block-size: 100%;
	min-block-size: 38svh;
	inline-size: 100%;
	max-inline-size: none;
	display: block;
}

.soluciones__model {
	z-index: 8;
	aspect-ratio: 1/.86;
	pointer-events: none;
	will-change: transform, opacity;
	inline-size: clamp(19.2rem, 50.4vw, 26.4rem);
	display: none;
	position: absolute;
	inset-block-start: 58%;
	inset-inline-start: 50%;
	translate: -50% -50%;
}

.soluciones__canvas {
	block-size: 100%;
	inline-size: 100%;
	display: block;
}

.soluciones--enhanced .soluciones__slides {
	overflow: hidden;
}

.soluciones--enhanced .soluciones__slide {
	position: absolute;
	inset: 0;
}

.soluciones--enhanced .soluciones__slide:not(.is-active) {
	pointer-events: none;
}

.soluciones--complete .soluciones__pin {
	visibility: hidden;
}

.soluciones__content, .soluciones__visual, .soluciones__image, .soluciones__eyebrow, .soluciones__title, .soluciones__kicker, .soluciones__copy, .soluciones__features, .soluciones__actions {
	will-change: transform, opacity, clip-path;
}

@media (width>=48em) {
	.soluciones__content {
		min-block-size: 58svh;
		padding-block-start: 12.2rem;
	}
	
	.soluciones__content-inner {
		inline-size: min(100%, 72rem);
	}
	
	.soluciones__visual, .soluciones__image {
		min-block-size: 42svh;
	}
	
	.soluciones__model {
		inline-size: clamp(22.8rem, 36vw, 32.4rem);
	}
}

@media (width>=75em) {
	.soluciones__slide {
		grid-template-columns: minmax(0, var(--soluciones-split)) minmax(0, calc(100% - var(--soluciones-split)));
		align-items: stretch;
	}
	
	.soluciones__content {
		grid-area: 1/1;
		min-block-size: 100svh;
		padding-block: clamp(12rem, 14vh, 18rem) clamp(6.8rem, 8vh, 9.4rem);
		padding-inline: max(7.2rem, 50vw - 68.4rem) clamp(9rem, 8.2vw, 14.2rem);
	}
	
	.soluciones__content-inner {
		min-block-size: min(66rem, 100svh - 21rem);
		inline-size: min(100%, 73rem);
	}
	
	.soluciones__title {
		margin-block-start: 2.7rem;
		font-size: clamp(6.8rem, 5.75vw, 8.9rem);
		line-height: .91;
	}
	
	.soluciones__kicker {
		font-size: clamp(2.6rem, 2.25vw, 3.4rem);
	}
	
	.soluciones__copy {
		margin-block-start: clamp(3.4rem, 5vh, 5rem);
		font-size: clamp(2rem, 1.62vw, 2.45rem);
		line-height: 1.25;
	}
	
	.soluciones__features {
		gap: 2.3rem;
		margin-block-start: clamp(3.6rem, 5vh, 4.8rem);
	}
	
	.soluciones__features li {
		padding-inline-start: 4.6rem;
		font-size: clamp(2rem, 1.55vw, 2.35rem);
	}
	
	.soluciones__actions {
		gap: 2.8rem 5.8rem;
		padding-block-start: clamp(4rem, 7vh, 7.2rem);
	}
	
	.soluciones__cta {
		min-inline-size: 33.8rem;
	}
	
	.soluciones__visual {
		grid-area: 1/2;
		min-block-size: 100svh;
	}
	
	.soluciones__mobile-mark {
		display: none;
	}
	
	.soluciones__visual:before {
		background: linear-gradient(90deg, rgba(var(--soluciones-visual-overlay-rgb), .42) 0%, rgba(var(--soluciones-visual-overlay-rgb), .12) 17%, rgba(var(--soluciones-visual-overlay-rgb), 0) 38%), linear-gradient(180deg, rgba(var(--var-soluciones-visual-overlay-rgb, var(--soluciones-visual-overlay-rgb)), .1), rgba(var(--var-soluciones-visual-overlay-rgb, var(--soluciones-visual-overlay-rgb)), .08));
	}
	
	.soluciones__image {
		min-block-size: 100svh;
	}
	
	.soluciones__model {
		inline-size: clamp(22.2rem, 18.84vw, 30.72rem);
		display: block;
		inset-block-start: 50%;
		inset-inline-start: 50%;
	}
}

@media (height<=42em) and (width>=75em) {
	.soluciones__content {
		padding-block: 8.6rem 4.8rem;
	}
	
	.soluciones__content-inner {
		min-block-size: 50rem;
	}
	
	.soluciones__title {
		font-size: clamp(5.8rem, 5vw, 7.2rem);
	}
	
	.soluciones__copy {
		margin-block-start: 2.4rem;
	}
	
	.soluciones__features {
		gap: 1.6rem;
		margin-block-start: 2.6rem;
	}
	
	.soluciones__actions {
		padding-block-start: 3rem;
	}
}

.soluciones-plataforma {
	--soluciones-plataforma-header-max: 141.2rem;
	--soluciones-plataforma-header-gutter: max(1.6rem, calc(( 100vw - var(--soluciones-plataforma-header-max) ) / 2));
	--soluciones-plataforma-content-end: clamp(3.2rem, 5.8vw, 9.6rem);
	isolation: isolate;
	position: relative;
	overflow: visible;
}

.soluciones-plataforma:before {
	content: "";
	z-index: 2;
	background: var(--color-white);
	pointer-events: none;
	block-size: .6rem;
	position: absolute;
	inset-block-start: -.3rem;
	inset-inline: 0;
}

.soluciones-plataforma.scroll-container-wrapper {
	overflow: visible;
}

.soluciones-plataforma.soluciones-plataforma--enhanced {
	block-size: 100svh;
	min-block-size: 100svh;
}

.soluciones-plataforma .scroll-container-wrapper__stage {
	backface-visibility: hidden;
	overflow: visible;
}

.soluciones-plataforma .sec-una-plataforma {
	will-change: opacity;
	backface-visibility: hidden;
}

.soluciones-plataforma .isologo-3d {
	z-index: 12;
	aspect-ratio: 1/1.06;
	contain: layout style;
	transform-style: preserve-3d;
	padding: 2rem;
	overflow: visible;
}

.soluciones-plataforma .isologo-3d-fixed__canvas {
	transform-origin: 50%;
	block-size: 100%;
	inline-size: 100%;
	transform-style: preserve-3d;
	will-change: transform;
	overflow: visible;
}

.soluciones-plataforma .soluciones__visual {
	perspective: 120rem;
	overflow: hidden;
}

.soluciones-plataforma .soluciones__image {
	backface-visibility: hidden;
	transform-origin: 50% 100%;
}

.soluciones-plataforma .soluciones__content {
	padding-inline-start: var(--soluciones-plataforma-header-gutter);
	padding-inline-end: var(--soluciones-plataforma-content-end);
}

.soluciones-plataforma .soluciones__content-inner {
	inline-size: min(100%, 73rem);
}

@media (width<=74.999em) {
	.soluciones-plataforma, .soluciones-plataforma.scroll-container-wrapper {
		overflow: clip;
	}
	
	.soluciones-plataforma .isologo-3d {
		inline-size: clamp(9.8rem, 29vw, 11.6rem);
		padding: 0;
		inset-block-start: 48rem;
		inset-inline-start: 50%;
		transform: translate(-50%, -50%);
	}
	
	.soluciones-plataforma .sec-una-plataforma, .soluciones-plataforma .una-plataforma__pin, .soluciones-plataforma .una-plataforma__layout {
		min-block-size: max(84.4rem, 100svh);
	}
	
	.soluciones-plataforma .sec-una-plataforma, .soluciones-plataforma .una-plataforma__pin {
		overflow: clip;
	}
	
	.soluciones-plataforma .una-plataforma__layout {
		padding: 0;
		display: block;
	}
	
	.soluciones-plataforma .una-plataforma__marquee {
		color: #e9eaec;
		inset-block-start: 9.7rem;
	}
	
	.soluciones-plataforma .una-plataforma__marquee-text {
		padding-inline: 1.2rem;
		font-size: clamp(5.6rem, 16vw, 6.7rem);
		line-height: .86;
	}
	
	.soluciones-plataforma .una-plataforma__media {
		z-index: 2;
		inline-size: 100%;
		margin: 0;
		position: absolute;
		inset-block-start: 23.1rem;
		inset-inline: 0;
	}
	
	.soluciones-plataforma .una-plataforma__media-mask {
		aspect-ratio: 390/259;
	}
	
	.soluciones-plataforma .una-plataforma__image {
		object-position: center;
	}
	
	.soluciones-plataforma .una-plataforma__seal {
		block-size: 6.4rem;
		inline-size: 6.4rem;
		inset-block-end: 1.4rem;
		inset-inline-start: 1.2rem;
	}
	
	.soluciones-plataforma .una-plataforma__seal-arrow {
		stroke-width: 2.5px;
		block-size: 2.4rem;
		inline-size: 1.8rem;
	}
	
	.soluciones-plataforma .una-plataforma__title {
		z-index: 4;
		inline-size: 100%;
		color: var(--color-ink);
		text-align: center;
		pointer-events: none;
		margin: 0;
		font-size: clamp(4.15rem, 12.3vw, 4.85rem);
		line-height: .91;
		display: block;
		position: absolute;
		inset-block-start: 18.5rem;
		inset-inline: 0;
	}
	
	.soluciones-plataforma .una-plataforma__title-layer {
		display: block;
	}
	
	.soluciones-plataforma .una-plataforma__title-layer--front {
		display: none;
	}
	
	.soluciones-plataforma .una-plataforma__title-line {
		white-space: nowrap;
		inline-size: 100%;
		display: block;
	}
	
	.soluciones-plataforma .una-plataforma__title-line--bottom {
		color: rgba(0, 0, 0, 0);
		-webkit-text-stroke: .11rem var(--color-white);
		margin-block-start: .2rem;
	}
	
	.soluciones-plataforma .una-plataforma__copy {
		z-index: 4;
		text-align: center;
		inline-size: auto;
		margin: 0;
		display: block;
		position: absolute;
		inset-block-start: 61.5rem;
		inset-inline: 2.9rem;
	}
	
	.soluciones-plataforma .una-plataforma__text {
		color: var(--color-ink);
		letter-spacing: 0;
		text-align: center;
		text-align-last: center;
		margin: 0;
		font-size: clamp(1.45rem, 4.15vw, 1.72rem);
		line-height: 1.34;
	}
	
	.soluciones-plataforma .soluciones, .soluciones-plataforma .soluciones__pin, .soluciones-plataforma .soluciones__slides {
		min-block-size: auto;
		overflow: visible;
	}
	
	.soluciones-plataforma .soluciones__slide {
		background: var(--soluciones-bg);
		min-block-size: auto;
	}
	
	.soluciones-plataforma .soluciones__content {
		align-items: flex-start;
		min-block-size: 82.4rem;
		padding: 9rem 2.9rem 12rem;
	}
	
	.soluciones-plataforma .soluciones__content-inner {
		min-block-size: auto;
		inline-size: 100%;
	}
	
	.soluciones-plataforma .soluciones__eyebrow {
		min-block-size: 2.8rem;
		padding: .42rem 1.45rem;
		font-size: clamp(1.16rem, 3.1vw, 1.32rem);
		line-height: 1.15;
	}
	
	.soluciones-plataforma .soluciones__title {
		letter-spacing: 0;
		margin-block-start: 2.4rem;
		font-size: clamp(4.6rem, 12.7vw, 5.55rem);
		line-height: .96;
	}
	
	.soluciones-plataforma .soluciones__kicker {
		letter-spacing: 0;
		margin-block-start: .8rem;
		font-size: clamp(2rem, 5.8vw, 2.7rem);
	}
	
	.soluciones-plataforma .soluciones__copy {
		letter-spacing: 0;
		max-inline-size: 100%;
		margin-block-start: 3.2rem;
		font-size: clamp(1.9rem, 5.2vw, 2.2rem);
		line-height: 1.18;
	}
	
	.soluciones-plataforma .soluciones__features {
		gap: 2.8rem;
		margin-block-start: 4.4rem;
	}
	
	.soluciones-plataforma .soluciones__features li {
		letter-spacing: 0;
		padding-inline-start: 3.7rem;
		font-size: clamp(1.75rem, 4.8vw, 2rem);
		line-height: 1.25;
	}
	
	.soluciones-plataforma .soluciones__features li:before {
		font-size: 3rem;
		inset-block-start: -.15rem;
	}
	
	.soluciones-plataforma .soluciones__actions {
		flex-flow: column;
		justify-content: center;
		align-items: center;
		gap: 2.2rem;
		margin-block-start: 0;
		padding-block-start: 4.4rem;
	}
	
	.soluciones-plataforma .soluciones__link {
		gap: 1.5rem;
		font-size: 2.15rem;
	}
	
	.soluciones-plataforma .soluciones__cta {
		min-block-size: 4.2rem;
		inline-size: min(100%, 29.4rem);
		padding: .5rem .5rem .5rem 1.7rem;
		font-size: 1.55rem;
	}
	
	.soluciones-plataforma .soluciones__cta .button__icon {
		block-size: 3rem;
		inline-size: 3rem;
	}
	
	.soluciones-plataforma .soluciones__mobile-mark {
		inline-size: clamp(10.2rem, 28.5vw, 11.8rem);
		margin-block: -6.9rem -4.2rem;
	}
	
	.soluciones-plataforma .soluciones__visual {
		min-block-size: 32rem;
	}
	
	.soluciones-plataforma .soluciones__visual:before {
		background: 0 0;
	}
	
	.soluciones-plataforma .soluciones__image {
		object-position: center top;
		min-block-size: 32rem;
	}
}

.soluciones-plataforma.soluciones-plataforma--enhanced .scroll-container-wrapper__stage, .soluciones-plataforma.soluciones-plataforma--enhanced .isologo-3d, .soluciones-plataforma.soluciones-plataforma--enhanced .sec-una-plataforma, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__slide, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__content, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__image, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__eyebrow, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__title, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__kicker, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__copy, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__features, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__features li, .soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__actions {
	will-change: transform, opacity;
}

.soluciones-plataforma.soluciones-plataforma--enhanced .soluciones__visual {
	will-change: transform, opacity, clip-path;
}

@media (width>=75em) {
	.soluciones-plataforma .soluciones__content {
		padding-inline-start: var(--soluciones-plataforma-header-gutter);
		padding-inline-end: var(--soluciones-plataforma-content-end);
	}
}

@media (prefers-reduced-motion:reduce) {
	.soluciones-plataforma .isologo-3d-fixed__canvas, .soluciones-plataforma .scroll-container-wrapper__stage, .soluciones-plataforma .isologo-3d, .soluciones-plataforma .sec-una-plataforma, .soluciones-plataforma .soluciones__slide, .soluciones-plataforma .soluciones__content, .soluciones-plataforma .soluciones__visual, .soluciones-plataforma .soluciones__image, .soluciones-plataforma .soluciones__eyebrow, .soluciones-plataforma .soluciones__title, .soluciones-plataforma .soluciones__kicker, .soluciones-plataforma .soluciones__copy, .soluciones-plataforma .soluciones__features, .soluciones-plataforma .soluciones__features li, .soluciones-plataforma .soluciones__actions {
		will-change: auto;
	}
}

.form-pricing {
	--form-pricing-bg: var(--color-white);
	--form-pricing-ink: var(--color-ink);
	--form-pricing-muted: rgba(44, 51, 63, .72);
	--form-pricing-line: rgba(44, 51, 63, .16);
	--form-pricing-glass: rgba(255, 255, 255, .68);
	--form-pricing-glass-strong: rgba(255, 255, 255, .84);
	background: var(--form-pricing-bg);
	min-block-size: 100svh;
	color: var(--form-pricing-ink);
	isolation: isolate;
	padding-block: 0;
	position: relative;
	overflow: hidden;
}

.form-pricing:before {
	content: "";
	z-index: 6;
	background: var(--form-pricing-bg);
	pointer-events: none;
	block-size: .3rem;
	position: absolute;
	inset-block-start: 0;
	inset-inline: 0;
}

.form-pricing__inner {
	grid-template-columns: minmax(0, 50%) minmax(0, 50%);
	align-items: stretch;
	min-block-size: 100svh;
	inline-size: 100%;
	margin-inline: auto;
	display: grid;
	position: relative;
}

.form-pricing__content {
	--form-pricing-frame-offset: 0rem;
	--form-pricing-frame-size: min(calc(100% - var(--form-pricing-frame-offset)), 61rem);
	z-index: 3;
	flex-direction: column;
	align-items: flex-start;
	min-block-size: 100svh;
	min-inline-size: 0;
	padding: clamp(15rem, 16.3svh, 17.6rem) clamp(2.4rem, 3.3vw, 5rem) clamp(3.2rem, 5.2svh, 5.2rem);
	display: flex;
	position: relative;
}

.form-pricing__content-frame {
	inline-size: var(--form-pricing-frame-size);
	margin-inline-start: var(--form-pricing-frame-offset);
}

.form-pricing__content-frame--body {
	flex-direction: column;
	min-block-size: 0;
	display: flex;
}

.form-pricing__eyebrow {
	color: rgba(44, 51, 63, .62);
	margin-block-end: 1.6rem;
	font-size: 2rem;
	font-weight: 800;
	line-height: 1.1;
}

.form-pricing__title {
	max-inline-size: 100%;
	color: var(--form-pricing-ink);
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	font-size: 3.6rem;
	font-weight: 400;
	line-height: 1.08;
}

.form-pricing__price {
	color: var(--color-brand);
	letter-spacing: 0;
	margin-block-start: 1.4rem;
	font-size: 6.4rem;
	font-weight: 900;
	line-height: .9;
}

.form-pricing__price span {
	font-size: 4rem;
	font-weight: 900;
}

.form-pricing__ribbon {
	z-index: 2;
	background: var(--color-brand-ribbon);
	inline-size: min(91rem, 64vw);
	color: var(--color-brand-ribbon-text);
	border-radius: .2rem;
	margin-block: 2.2rem 3.6rem;
	margin-inline-start: -8.6rem;
	position: relative;
	overflow: hidden;
	transform: rotate(-7deg);
	box-shadow: 0 1.8rem 3rem rgba(44, 51, 63, .12);
}

.form-pricing__ribbon-track {
	will-change: transform;
	inline-size: max-content;
	display: flex;
}

.form-pricing__ribbon-group {
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	white-space: nowrap;
	flex: none;
	align-items: center;
	gap: 2.4rem;
	padding: 1rem 1.2rem;
	font-size: 3.2rem;
	line-height: 1;
	display: inline-flex;
}

.form-pricing__ribbon-group span:not(:last-child):after {
	content: ".";
	margin-inline-start: 2.4rem;
}

.form-pricing__copy {
	max-inline-size: 100%;
	color: var(--form-pricing-ink);
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.48;
}

.form-pricing__cta {
	align-self: flex-start;
	margin-block-start: 2.4rem;
}

.form-pricing__proofs {
	inline-size: var(--form-pricing-frame-size);
	color: rgba(44, 51, 63, .62);
	flex-wrap: wrap;
	gap: clamp(2.8rem, 4vw, 7.6rem);
	margin-block-start: auto;
	margin-inline-start: var(--form-pricing-frame-offset);
	padding-block-start: clamp(3.2rem, 4.8svh, 4.8rem);
	font-size: 1.8rem;
	font-weight: 800;
	list-style: none;
	display: flex;
}

.form-pricing__proof {
	align-items: center;
	gap: 1rem;
	display: inline-flex;
}

.form-pricing__proof-icon {
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2px;
	block-size: 2.6rem;
	inline-size: 2.6rem;
}

.form-pricing__visual {
	z-index: 3;
	isolation: isolate;
	grid-area: 1/2;
	min-block-size: 100svh;
	position: relative;
	overflow: hidden;
}

.form-pricing__mosaic {
	z-index: 0;
	grid-template-columns: minmax(0, .653fr) minmax(0, 1fr) minmax(0, .653fr);
	gap: .8rem;
	display: grid;
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.form-pricing__mosaic:after {
	content: "";
	pointer-events: none;
	background: linear-gradient(90deg, rgba(255, 255, 255, .16), rgba(0, 0, 0, 0) 18% 82%, rgba(255, 255, 255, .22)), radial-gradient(circle at 48%, rgba(255, 255, 255, .16), rgba(0, 0, 0, 0) 44%);
	position: absolute;
	inset: 0;
}

.form-pricing__mosaic-column {
	backface-visibility: hidden;
	will-change: transform;
	flex-direction: column;
	gap: .8rem;
	min-block-size: 100%;
	display: flex;
	transform: translate(0, 0);
}

.form-pricing__mosaic-stack {
	flex-direction: column;
	flex: none;
	gap: .8rem;
	display: flex;
}

.form-pricing__tile {
	object-fit: cover;
	filter: saturate(1.02) contrast(1.02);
	border-radius: 0;
	block-size: auto;
	inline-size: 100%;
}

.form-pricing__card, div.wpcf7 {
	z-index: 4;
	background: linear-gradient(135deg, rgba(255, 255, 255, .8), rgba(255, 255, 255, .5)), var(--form-pricing-glass);
	-webkit-backdrop-filter: blur(2.4rem) saturate(1.22);
	border: .1rem solid rgba(255, 255, 255, .72);
	border-radius: 3rem;
	grid-area: 1/2;
	place-self: start center;
	inline-size: min(100%, 56rem);
	margin-block-start: clamp(13rem, 18svh, 18.2rem);
	padding: 4rem 4rem 7.6rem;
	position: relative;
	box-shadow: 0 3.6rem 9rem rgba(17, 24, 39, .18), inset 0 .1rem rgba(255, 255, 255, .86);
}

.wpcf7 {
	padding: 0 !important;
}

.form-pricing__card {
	margin-top: 0 !important;
}

.form-pricing__card-header {
	text-align: center;
	max-inline-size: 48rem;
	margin-inline: auto;
}

.form-pricing__card-title {
	color: var(--form-pricing-ink);
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	font-size: 2.8rem;
	font-weight: 400;
	line-height: 1;
}

.form-pricing__card-copy {
	color: rgba(44, 51, 63, .9);
	margin-block-start: 2.6rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.45;
}

.form-pricing__fields {
	grid-template-columns: minmax(14rem, 1.08fr) minmax(18rem, 1.18fr) minmax(13.6rem, .82fr);
	gap: 1.2rem;
	margin-block-start: 3.2rem;
	display: grid;
}

.form-pricing__field {
	min-inline-size: 0;
}

.form-pricing__field .wpcf7-form-control-wrap {
	inline-size: 100%;
	display: block;
	background: 0 0 !important;
}

.form-pricing__input {
	border: .1rem solid var(--form-pricing-line);
	border-radius: var(--radius-pill);
	background: var(--form-pricing-glass-strong);
	min-block-size: 4.5rem;
	color: var(--form-pricing-ink);
	font: 700 1.38rem/1.2 var(--font-body);
	letter-spacing: 0;
	outline: 0;
	padding: .5rem 1.8rem;
	transition: border-color .18s, box-shadow .18s, background-color .18s;
	box-shadow: inset 0 .1rem rgba(255, 255, 255, .86);
	box-sizing: border-box !important;
	inline-size: 100% !important;
	max-inline-size: 100% !important;
}

.form-pricing__input::placeholder {
	color: rgba(44, 51, 63, .82);
}

.form-pricing__input:focus {
	background: var(--color-white);
	border-color: rgba(255, 116, 23, .62);
	box-shadow: 0 0 0 .35rem rgba(255, 116, 23, .16), inset 0 .1rem rgba(255, 255, 255, .9);
}

.form-pricing__options {
	border: 0;
	min-inline-size: 0;
	margin: clamp(2.4rem, 2.4vw, 3.4rem) 0 0;
	padding: 0;
}

.form-pricing__legend {
	color: var(--form-pricing-ink);
	margin-block-end: 1.4rem;
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1.2;
}

.form-pricing__legend span {
	color: rgba(44, 51, 63, .68);
	font-weight: 600;
}

.form-pricing__option-list .wpcf7-form-control-wrap, .form-pricing__option-list .wpcf7-checkbox {
	display: contents;
}

.form-pricing__option-list .wpcf7-list-item {
	margin: 0;
}

.form-pricing__option-list .wpcf7-list-item label {
	border: .1rem solid var(--form-pricing-line);
	border-radius: var(--radius-pill);
	background: var(--form-pricing-glass-strong);
	min-block-size: 4.4rem;
	color: var(--form-pricing-ink);
	cursor: pointer;
	justify-content: space-between;
	align-items: center;
	gap: .8rem;
	padding: .5rem .7rem .5rem 1.8rem;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.1;
	transition: border-color .18s, background-color .18s, color .18s, transform .18s;
	display: inline-flex;
	position: relative;
	box-shadow: inset 0 .1rem rgba(255, 255, 255, .82);
}

.form-pricing__option-list .wpcf7-list-item label .wpcf7-list-item-label {
	z-index: 1;
	flex: 1;
	padding-inline-end: 3.2rem;
	transition: color .18s;
	position: relative;
}

.form-pricing__option-list .wpcf7-list-item input[type=checkbox] {
	opacity: 0;
	cursor: pointer;
	position: absolute;
	inset: 0;
}

.form-pricing__option-list .wpcf7-list-item label .wpcf7-list-item-label:after {
	content: "";
	background: rgba(255, 255, 255, .78);
	border: .1rem solid rgba(44, 51, 63, .17);
	border-radius: 50%;
	block-size: 2.5rem;
	inline-size: 2.5rem;
	transition: border-color .18s;
	position: absolute;
	inset-block-start: 50%;
	inset-inline-end: 0;
	transform: translateY(-50%);
}

.form-pricing__option-list .wpcf7-list-item label .wpcf7-list-item-label:before {
	content: "";
	background: var(--color-brand);
	transform-origin: 50%;
	border-radius: 50%;
	block-size: 1.1rem;
	inline-size: 1.1rem;
	transition: transform .16s;
	position: absolute;
	inset-block-start: 50%;
	inset-inline-end: .7rem;
	transform: translateY(-50%) scale(0);
}

.form-pricing__option-list .wpcf7-list-item:hover label {
	transform: translateY(-.1rem);
}

.form-pricing__option-list .wpcf7-list-item input[type=checkbox]:checked + .wpcf7-list-item-label:before {
	transform: translateY(-50%) scale(1);
}

.form-pricing__option-list .wpcf7-list-item:has(input[type=checkbox]:checked) label {
	background: rgba(255, 255, 255, .95);
	border-color: rgba(255, 116, 23, .56);
}

.form-pricing__option-list .wpcf7-list-item input[type=checkbox]:checked + .wpcf7-list-item-label:after {
	border-color: rgba(255, 116, 23, .56);
}

.form-pricing__option-list .wpcf7-list-item input[type=checkbox]:focus-visible + .wpcf7-list-item-label:after {
	box-shadow: 0 0 0 .3rem rgba(255, 116, 23, .42);
}

.form-pricing__option-list {
	flex-wrap: wrap;
	gap: 1.2rem;
	display: flex;
}

.form-pricing__option {
	border: .1rem solid var(--form-pricing-line);
	border-radius: var(--radius-pill);
	background: var(--form-pricing-glass-strong);
	min-block-size: 4.4rem;
	color: var(--form-pricing-ink);
	cursor: pointer;
	align-items: center;
	gap: .8rem;
	padding: .5rem .7rem .5rem 1.8rem;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.1;
	transition: border-color .18s, background-color .18s, color .18s, transform .18s;
	display: inline-flex;
	position: relative;
	box-shadow: inset 0 .1rem rgba(255, 255, 255, .82);
}

.form-pricing__option:hover {
	transform: translateY(-.1rem);
}

input.form-pricing__option-input[type=checkbox] {
	opacity: 0;
	cursor: pointer;
	position: absolute;
	inset: 0;
}

.form-pricing__option-copy, .form-pricing__option-check {
	z-index: 1;
	position: relative;
}

.form-pricing__option-check {
	background: rgba(255, 255, 255, .78);
	border: .1rem solid rgba(44, 51, 63, .17);
	border-radius: 50%;
	place-items: center;
	block-size: 2.5rem;
	inline-size: 2.5rem;
	display: inline-grid;
}

.form-pricing__option-check:before {
	content: "";
	background: var(--color-brand);
	border-radius: 50%;
	block-size: 1.1rem;
	inline-size: 1.1rem;
	transition: transform .16s;
	transform: scale(0);
}

input.form-pricing__option-input[type=checkbox]:checked ~ .form-pricing__option-check:before {
	transform: scale(1);
}

.form-pricing__option:has(input.form-pricing__option-input[type=checkbox]:checked) {
	background: rgba(255, 255, 255, .95);
	border-color: rgba(255, 116, 23, .56);
}

input.form-pricing__option-input[type=checkbox]:focus-visible ~ .form-pricing__option-check {
	outline-offset: .2rem;
	outline: .3rem solid rgba(255, 116, 23, .42);
}

.form-pricing__submit {
	min-block-size: 4.6rem;
	margin-block-start: 2.4rem;
	margin-inline: auto;
	padding-inline-start: 2rem;
	font-size: 1.6rem;
}

.form-pricing__status {
	color: var(--form-pricing-muted);
	text-align: center;
	margin-block-start: 1.4rem;
	font-size: 1.4rem;
	font-weight: 700;
}

.form-pricing__status:empty {
	display: none;
}

.form-pricing__sr-only {
	clip: rect(0 0 0 0);
	white-space: nowrap;
	block-size: .1rem;
	inline-size: .1rem;
	margin: -.1rem;
	position: absolute;
	overflow: hidden;
}

@media (width<=74.999em) {
	.form-pricing__inner {
		grid-template-columns: 1fr;
		min-block-size: auto;
	}
	
	.form-pricing__content {
		--form-pricing-frame-offset: 0rem;
		--form-pricing-frame-size: 100%;
		min-block-size: auto;
		padding: clamp(6.4rem, 8svh, 8.8rem) clamp(2.4rem, 4vw, 5rem) 0;
	}
	
	.form-pricing__visual, .form-pricing__card, div.wpcf7 {
		grid-area: auto/1;
	}
	
	.form-pricing__visual {
		grid-row: 2;
		min-block-size: clamp(54rem, 72svh, 72rem);
		margin-block-start: clamp(1.6rem, 4vw, 4.8rem);
	}
	
	.form-pricing__card, div.wpcf7 {
		grid-row: 2;
		margin-block-start: clamp(4rem, 8vw, 7rem);
	}
	
	.form-pricing__proofs {
		margin-block-start: clamp(4.8rem, 8vw, 8rem);
	}
}

@media (width>=48em) {
	.form-pricing__eyebrow {
		font-size: 2.4rem;
	}
	
	.form-pricing__title {
		font-size: 5.8rem;
		line-height: .94;
	}
	
	.form-pricing__price {
		font-size: 7.2rem;
	}
	
	.form-pricing__price span {
		font-size: 4.6rem;
	}
	
	.form-pricing__ribbon-group {
		font-size: 3.8rem;
	}
	
	.form-pricing__card-title {
		font-size: 3.2rem;
	}
	
	.form-pricing__card-copy {
		font-size: 1.75rem;
	}
}

@media (width>=75em) {
	.form-pricing__eyebrow {
		font-size: 2.4rem;
	}
	
	.form-pricing__title {
		font-size: 6rem;
	}
	
	.form-pricing__price {
		font-size: 7.8rem;
	}
	
	.form-pricing__price span {
		font-size: 4.9rem;
	}
	
	.form-pricing__ribbon-group {
		font-size: 4.2rem;
	}
	
	.form-pricing__card-title {
		font-size: 3.2rem;
	}
	
	.form-pricing__card-copy {
		font-size: 1.8rem;
	}
}

@media (width<=47.999em) {
	.form-pricing {
		padding-block: 10rem 0;
	}
	
	.form-pricing__inner {
		inline-size: min(100% - 4.8rem, var(--page-max));
		grid-template-columns: 1fr;
		gap: 0;
	}
	
	.form-pricing__content {
		min-block-size: auto;
		padding: 0;
	}
	
	.form-pricing__eyebrow {
		margin-block-end: 1.2rem;
		font-size: 1.8rem;
	}
	
	.form-pricing__title {
		max-inline-size: 33rem;
		font-size: 3.55rem;
		line-height: 1.06;
	}
	
	.form-pricing__price {
		margin-block-start: 1.4rem;
		font-size: 6.5rem;
	}
	
	.form-pricing__price span {
		font-size: 4rem;
	}
	
	.form-pricing__ribbon {
		transform-origin: 50%;
		inline-size: 130vw;
		margin-block: 2.4rem 5.6rem;
		margin-inline-start: 50%;
		transform: rotate(-5deg) translate(-50%);
	}
	
	.form-pricing__ribbon-group {
		gap: 1.8rem;
		padding: .65rem 1rem;
		font-size: 2.9rem;
	}
	
	.form-pricing__ribbon-group span:not(:last-child):after {
		margin-inline-start: 1.8rem;
	}
	
	.form-pricing__copy {
		font-size: 1.85rem;
		line-height: 1.28;
	}
	
	.form-pricing__cta {
		gap: 1.2rem;
		min-block-size: 4rem;
		inline-size: auto;
		margin-block-start: 2rem;
		padding: .5rem .6rem .5rem 2.2rem;
		font-size: 1.55rem;
	}
	
	.form-pricing__cta .button__icon {
		block-size: 3rem;
		inline-size: 3rem;
	}
	
	.form-pricing__cta .button__icon-svg {
		block-size: 1.1rem;
		inline-size: 1.1rem;
	}
	
	.form-pricing__proofs {
		display: none;
	}
	
	.form-pricing__visual {
		min-block-size: 71.4rem;
		inline-size: calc(100% + 4.8rem);
		margin-block-start: 3.9rem;
		margin-inline: -2.4rem 0;
		transform: none;
	}
	
	.form-pricing__mosaic {
		opacity: 1;
		grid-template-columns: minmax(0, .653fr) minmax(0, 1fr) minmax(0, .653fr);
		inset-inline: 0;
	}
	
	.form-pricing__card, div.wpcf7 {
		border-radius: 2.4rem;
		inline-size: calc(100% + 1.6rem);
		margin-block-start: 9.6rem;
		margin-inline: -.8rem;
		padding: 2.8rem 1.6rem 2.2rem;
	}
	
	.form-pricing__card-title {
		max-inline-size: 25rem;
		margin-inline: auto;
		font-size: 2.8rem;
	}
	
	.form-pricing__card-copy {
		margin-block-start: 1.8rem;
		font-size: 1.55rem;
		line-height: 1.36;
	}
	
	.form-pricing__fields {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 1rem 1.4rem;
		margin-block-start: 2.2rem;
	}
	
	.form-pricing__field .wpcf7-form-control-wrap {
		inline-size: 100%;
		display: block;
	}
	
	.form-pricing__field:nth-child(2) {
		order: 3;
		grid-column: 1/-1;
	}
	
	.form-pricing__field:nth-child(3) {
		order: 2;
		grid-column: 2;
	}
	
	.form-pricing__input {
		min-block-size: 4rem;
		padding-inline: 1.5rem;
		font-size: 1.35rem;
	}
	
	.form-pricing__options {
		margin-block-start: 1.6rem;
	}
	
	.form-pricing__legend {
		margin-block-end: 1.2rem;
		font-size: 1.35rem;
	}
	
	.form-pricing__option-list {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 1rem 1.2rem;
		display: grid;
	}
	
	.form-pricing__option {
		justify-content: space-between;
		min-block-size: 4rem;
		padding: .45rem .55rem .45rem 1.55rem;
		font-size: 1.35rem;
	}
	
	.form-pricing__option:nth-child(3) {
		grid-area: 2/2;
	}
	
	.form-pricing__option:nth-child(4) {
		grid-area: 2/1;
	}
	
	.form-pricing__option:nth-child(5) {
		grid-area: 3/1;
	}
	
	.form-pricing__option:nth-child(6) {
		grid-area: 3/2;
	}
	
	.form-pricing__option-check {
		block-size: 2.5rem;
		inline-size: 2.5rem;
	}
	
	.form-pricing__submit {
		white-space: normal;
		min-block-size: 4.4rem;
		inline-size: auto;
		margin-block-start: 2.4rem;
		padding-inline-start: 1.7rem;
		font-size: 1.4rem;
	}
	
	.form-pricing__submit .button__icon {
		block-size: 3rem;
		inline-size: 3rem;
	}
}

@supports not ((-webkit-backdrop-filter:blur(1rem)) or (backdrop-filter:blur(1rem))) {
	.form-pricing__card, div.wpcf7 {
		background: rgba(255, 255, 255, .94);
	}
}

@media (prefers-reduced-motion:reduce) {
	.form-pricing__ribbon-track, .form-pricing__mosaic-column {
		will-change: auto;
		transform: none;
	}
	
	.form-pricing__option, .form-pricing__option-check:before {
		transition: none;
	}
	
	.form-pricing__option:hover {
		transform: none;
	}
}

@media (width>=100em) {
	.form-pricing__inner {
		grid-template-columns: 1fr minmax(0, 80rem) minmax(0, 80rem) 1fr;
	}
	
	.form-pricing__content {
		grid-column: 2;
	}
	
	.form-pricing__visual {
		grid-column: 3/5;
	}
	
	.form-pricing__card, div.wpcf7 {
		grid-column: 3;
	}
	
	.form-pricing__ribbon {
		inline-size: calc(50vw + 11rem);
		margin-inline-start: calc(71.4rem - 50vw);
	}
}

.testimonials {
	--testimonials-bg: var(--color-brand-primary);
	--testimonials-cream: #fff2b6;
	--testimonials-cream-soft: rgba(255, 242, 182, .18);
	--testimonials-mark: rgba(214, 86, 16, .24);
	background: var(--testimonials-bg);
	color: var(--testimonials-cream);
	isolation: isolate;
	position: relative;
	overflow: clip;
}

.testimonials__viewport {
	background: var(--testimonials-bg);
	isolation: isolate;
	min-block-size: 100svh;
	padding: clamp(8rem, 12svh, 12rem) min(8vw, 8rem);
	position: relative;
	overflow: clip;
}

.testimonials__title {
	z-index: 1;
	pointer-events: none;
	inline-size: 100%;
	margin: 0;
	padding: 0;
	position: absolute;
	inset-block-start: clamp(6.72rem, 9.6svh, 9.6rem);
	inset-inline: 0;
	overflow: clip;
}

.testimonials__title-label {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
	block-size: .1rem;
	inline-size: .1rem;
	margin: -.1rem;
	padding: 0;
	position: absolute;
	overflow: hidden;
}

.testimonials__title-track {
	will-change: transform;
	inline-size: max-content;
	animation: 24s linear infinite testimonials-title-marquee;
	display: flex;
}

.testimonials__title-copy {
	min-inline-size: max-content;
	color: var(--testimonials-cream-soft);
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	flex: none;
	padding-inline-end: clamp(3.2rem, 6vw, 8rem);
	font-size: clamp(7.8rem, 18vw, 16rem);
	font-weight: 400;
	line-height: .82;
}

.testimonials__backdrop-text {
	display: none;
}

@keyframes testimonials-title-marquee {
	to {
		transform: translate(-50%);
	}
}

.testimonials__isotype {
	z-index: 0;
	block-size: auto;
	inline-size: 64rem;
	color: var(--testimonials-mark);
	fill: currentColor;
	pointer-events: none;
	position: absolute;
	inset-block-start: 42rem;
	inset-inline-end: -18rem;
}

.testimonials__slides {
	z-index: 2;
	gap: 0;
	padding-block-start: clamp(12rem, 22svh, 18rem);
	display: grid;
	position: relative;
}

.testimonials__slide {
	backface-visibility: hidden;
	will-change: transform, opacity;
	margin-block-end: clamp(4rem, 10vh, 7rem);
	display: block;
	position: relative;
	transform: translate(0, 0);
}

.testimonials__slide:last-child {
	margin-block-end: 0;
}

.testimonials__content-box {
	max-inline-size: 78rem;
}

.testimonials__quote {
	letter-spacing: 0;
	quotes: "“" "”";
	max-inline-size: 78rem;
	margin: 0;
	font-size: clamp(2.1rem, 5.8vw, 2.8rem);
	font-weight: 800;
	line-height: 1.38;
}

.testimonials__quote p {
	margin: 0;
}

.testimonials__quote p:before {
	content: open-quote;
}

.testimonials__quote p:after {
	content: close-quote;
}

.testimonials__author {
	margin-block-start: clamp(2.8rem, 8vw, 4.4rem);
}

.testimonials__name {
	color: var(--testimonials-cream);
	font-size: clamp(2.2rem, 6.4vw, 2.8rem);
	font-style: normal;
	font-weight: 900;
	line-height: 1;
	display: block;
}

.testimonials__role {
	color: rgba(255, 242, 182, .9);
	margin: .7rem 0 0;
	font-size: clamp(1.5rem, 4.2vw, 1.8rem);
	font-weight: 400;
	line-height: 1.2;
}

.testimonials__counter {
	color: var(--testimonials-cream);
	font-family: var(--font-display);
	letter-spacing: 0;
	margin: 0;
	font-size: clamp(3.8rem, 7.2vw, 5.2rem);
	font-weight: 400;
	line-height: 1;
	display: none;
}

@media (width>=64em) {
	.testimonials {
		min-block-size: 100svh;
	}
	
	.testimonials__viewport {
		min-block-size: 100svh;
		padding: 0;
	}
	
	.testimonials__title {
		inset-block-start: 20%;
	}
	
	.testimonials__title-copy {
		color: rgba(255, 242, 182, .11);
		font-size: clamp(12rem, 13.8vw, 18rem);
	}
	
	.testimonials__isotype {
		inline-size: clamp(92rem, 75vw, 116rem);
		inset-block-start: 50%;
		inset-inline-end: clamp(-10rem, -5vw, -4rem);
		transform: translateY(-50%);
	}
	
	.testimonials__slides {
		place-items: center;
		padding-block-start: 0;
		display: grid;
		position: absolute;
		inset: 0;
	}
	
	.testimonials__slide {
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		place-items: center;
		max-inline-size: none;
		margin-block-end: 0;
		padding: 0;
		display: grid;
		position: absolute;
		inset: 0;
	}
	
	.testimonials__slide--active {
		opacity: 1;
		visibility: visible;
	}
	
	.testimonials__content-box {
		will-change: transform, opacity;
		inline-size: min(82rem, 100% - 8rem);
		max-inline-size: none;
		margin-block-start: 8svh;
		margin-inline: auto;
	}
	
	.testimonials__quote {
		inline-size: 100%;
		max-inline-size: none;
		font-size: clamp(3.8rem, 3.12vw, 4.8rem);
		line-height: 1.34;
	}
	
	.testimonials__author {
		margin-block-start: clamp(4.2rem, 6.2svh, 5.8rem);
	}
	
	.testimonials__name {
		font-size: clamp(2.8rem, 2.2vw, 3.6rem);
	}
	
	.testimonials__role {
		font-size: clamp(1.8rem, 1.35vw, 2.1rem);
	}
	
	.testimonials__counter {
		z-index: 3;
		display: block;
		position: absolute;
		inset-block-end: clamp(5.2rem, 7svh, 7.2rem);
		inset-inline-start: clamp(3.2rem, 4.2vw, 6.4rem);
	}
}

@media (prefers-reduced-motion:reduce) {
	.testimonials__slide {
		will-change: auto;
		transform: none;
	}
	
	.testimonials__content-box {
		will-change: auto;
	}
	
	.testimonials__title-track {
		will-change: auto;
		animation: none;
		transform: none;
	}
	
	.testimonials__title-copy + .testimonials__title-copy {
		display: none;
	}
}

@media (width>=64em) and (prefers-reduced-motion:reduce) {
	.testimonials__viewport {
		min-block-size: auto;
		padding: clamp(8rem, 12svh, 12rem) min(8vw, 8rem);
	}
	
	.testimonials__slides {
		place-items: stretch stretch;
		padding-block-start: clamp(12rem, 22svh, 18rem);
		display: grid;
		position: relative;
	}
	
	.testimonials__slide {
		opacity: 1;
		visibility: visible;
		margin-block-end: clamp(4rem, 10vh, 7rem);
		display: block;
		position: relative;
		inset: auto;
	}
	
	.testimonials__slide:last-child {
		margin-block-end: 0;
	}
	
	.testimonials__content-box {
		inline-size: auto;
		max-inline-size: 78rem;
		margin-block-start: 0;
		margin-inline: 0;
	}
	
	.testimonials__counter {
		display: none;
	}
}

.faqs {
	--faqs-bg: #fff;
	--faqs-ink: var(--color-ink);
	--faqs-muted: rgba(44, 51, 63, .78);
	--faqs-width: min(90.8rem, calc(100vw - 4.8rem));
	background: var(--faqs-bg);
	min-block-size: 100svh;
	color: var(--faqs-ink);
	--lightningcss-light: initial;
	color-scheme: light;
	isolation: isolate;
	border: none;
	outline: none;
	margin-block: -3px;
	position: relative;
	overflow: hidden;
}

.faqs__inner {
	z-index: 1;
	inline-size: min(100%, var(--page-max));
	flex-direction: column;
	align-items: center;
	min-block-size: 100svh;
	margin-inline: auto;
	padding: clamp(14.4rem, 21.2svh, 22.8rem) clamp(2.4rem, 5vw, 6.4rem) clamp(7rem, 8.8svh, 9rem);
	display: flex;
	position: relative;
}

.faqs__header {
	text-align: center;
}

.faqs__title {
	color: var(--faqs-ink);
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	text-wrap: balance;
	font-size: clamp(4.8rem, 4.55vw, 6.4rem);
	font-weight: 400;
	line-height: .92;
}

.faqs__subtitle {
	color: var(--faqs-ink);
	letter-spacing: .04em;
	text-wrap: balance;
	margin-block-start: clamp(1.2rem, 1.7svh, 1.8rem);
	font-size: clamp(2rem, 1.8vw, 2.8rem);
	font-weight: 400;
	line-height: 1.12;
}

.faqs__list {
	inline-size: var(--faqs-width);
	gap: clamp(2.2rem, 3.4svh, 3.5rem);
	margin-block-start: clamp(6.8rem, 10.5svh, 10.8rem);
	display: grid;
}

.faqs__item {
	color: var(--faqs-ink);
	border: none;
	outline: none;
	position: relative;
}

.faqs__question {
	min-block-size: 2.8rem;
	color: var(--faqs-ink);
	letter-spacing: 0;
	cursor: pointer;
	outline: none;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 3.2rem;
	font-size: clamp(1.8rem, 1.45vw, 2.3rem);
	font-weight: 500;
	line-height: 1.2;
	list-style: none;
	display: grid;
}

.faqs__question::-webkit-details-marker {
	display: none;
}

.faqs__question::marker {
	content: "";
}

.faqs__question span:first-child {
	text-wrap: pretty;
}

.faqs__icon {
	block-size: 2.3rem;
	inline-size: 2.3rem;
	color: var(--faqs-ink);
	margin-inline-end: .2rem;
	display: block;
	position: relative;
}

.faqs__icon:before, .faqs__icon:after {
	content: "";
	background: currentColor;
	border-radius: 99rem;
	block-size: .22rem;
	inline-size: 2.1rem;
	transition: opacity .18s, transform .18s;
	position: absolute;
	inset-block-start: 50%;
	inset-inline-start: 50%;
	transform: translate(-50%, -50%);
}

.faqs__icon:after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.faqs__item[open] .faqs__icon:after {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(0);
}

.faqs__answer {
	max-inline-size: 87rem;
	color: var(--faqs-muted);
	letter-spacing: .02em;
	text-wrap: pretty;
	padding-block-start: clamp(1.2rem, 1.5svh, 1.7rem);
	padding-inline-end: clamp(4rem, 5vw, 7rem);
	font-size: clamp(1.55rem, 1.15vw, 1.8rem);
	font-weight: 400;
	line-height: 1.55;
}

.faqs__answer p {
	margin: 0;
}

@media (width<=47.999em) {
	.faqs {
		min-block-size: auto;
	}
	
	.faqs__inner {
		min-block-size: auto;
		padding-block: 14.4rem 8rem;
	}
	
	.faqs__subtitle {
		letter-spacing: .01em;
	}
	
	.faqs__list {
		gap: 2.5rem;
		inline-size: min(100%, 64rem);
		margin-block-start: 5.6rem;
	}
	
	.faqs__question {
		gap: 2rem;
	}
	
	.faqs__icon {
		block-size: 2rem;
		inline-size: 2rem;
	}
	
	.faqs__icon:before, .faqs__icon:after {
		inline-size: 1.9rem;
	}
	
	.faqs__answer {
		padding-inline-end: 0;
	}
}

@media (prefers-reduced-motion:reduce) {
	.faqs__icon:before, .faqs__icon:after {
		transition: none;
	}
}

.open-footer {
	--open-footer-bg: #fff;
	--open-footer-panel: #2c333f;
	--open-footer-ink: var(--color-ink);
	--open-footer-copy: rgba(255, 255, 255, .96);
	--open-footer-muted: rgba(255, 255, 255, .88);
	--open-footer-marquee: rgba(44, 51, 63, .07);
	background: var(--open-footer-bg);
	color: var(--open-footer-ink);
	--lightningcss-light: initial;
	color-scheme: light;
	isolation: isolate;
	margin-block-start: -3px;
	position: relative;
	overflow: clip;
}

.open-footer__marquee {
	z-index: 0;
	inline-size: 100vw;
	color: var(--open-footer-marquee);
	font-family: var(--font-display);
	letter-spacing: 0;
	text-transform: uppercase;
	white-space: nowrap;
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
	gap: 0;
	font-size: 6.5rem;
	font-weight: 400;
	line-height: .9;
	display: flex;
	position: absolute;
	inset-block-start: 10.8rem;
	inset-inline-start: 0;
	overflow: hidden;
}

.open-footer__marquee-track {
	will-change: transform;
	flex-shrink: 0;
	animation: 16s linear infinite open-footer-marquee-scroll;
	display: inline-block;
}

@keyframes open-footer-marquee-scroll {
	0% {
		transform: translate(0, 0);
	}
	
	to {
		transform: translate(-100%);
	}
}

.open-footer__inner {
	z-index: 1;
	inline-size: 100%;
	max-inline-size: var(--page-max);
	margin-inline: auto;
	padding-block-start: 22.9rem;
	position: relative;
}

.open-footer__model {
	z-index: 3;
	aspect-ratio: 1;
	pointer-events: none;
	inline-size: 21.6rem;
	padding: 3rem;
	position: absolute;
	inset-block-start: 12.4rem;
	inset-inline-start: 50%;
	translate: -50%;
	rotate: 0deg;
	scale: 1;
}

.open-footer__model-canvas, .open-footer__model-fallback {
	filter: drop-shadow(0 2.2rem 2.6rem rgba(13, 18, 27, .18));
	block-size: 100%;
	inline-size: 100%;
	position: absolute;
	inset: 0;
}

.open-footer__model-canvas {
	opacity: 0;
	transition: opacity .26s;
}

.open-footer__model-fallback {
	object-fit: contain;
	opacity: 1;
	transition: opacity .26s;
}

.open-footer[data-model-loaded=true] .open-footer__model-canvas {
	opacity: 1;
}

.open-footer[data-model-loaded=true] .open-footer__model-fallback {
	opacity: 0;
}

.open-footer__panel {
	z-index: 1;
	background: var(--open-footer-panel);
	min-block-size: 141.2rem;
	color: var(--open-footer-copy);
	position: relative;
	overflow: hidden;
}

.open-footer__content {
	z-index: 2;
	inline-size: min(100%, 64rem);
	margin-inline: auto;
	padding: 12rem 2.4rem 7.8rem;
	display: grid;
	position: relative;
}

.open-footer__brand {
	max-inline-size: 35rem;
}

.open-footer__brand-title {
	color: var(--open-footer-copy);
	letter-spacing: 0;
	font-size: 2.9rem;
	font-weight: 800;
	line-height: 1.12;
}

.open-footer__brand-copy {
	color: var(--open-footer-copy);
	letter-spacing: 0;
	text-wrap: pretty;
	margin-block-start: 2.4rem;
	font-size: 2.1rem;
	font-weight: 400;
	line-height: 1.32;
}

.open-footer__nav {
	gap: 6.8rem;
	margin-block-start: 5.5rem;
	display: grid;
}

.open-footer__group-title {
	color: var(--open-footer-copy);
	letter-spacing: 0;
	font-size: 2.95rem;
	font-weight: 800;
	line-height: 1.12;
}

.open-footer__list {
	gap: 1.08rem;
	margin-block-start: 3.1rem;
	list-style: none;
	display: grid;
}

.open-footer__link {
	min-block-size: 3.4rem;
	color: var(--open-footer-muted);
	letter-spacing: 0;
	grid-template-columns: minmax(0, 1fr) 2.2rem;
	align-items: center;
	gap: 2.4rem;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.18;
	transition: color .18s, translate .18s;
	display: grid;
	translate: 0;
}

.open-footer__link:hover, .open-footer__link:focus-visible {
	color: var(--open-footer-copy);
	translate: .2rem;
}

.open-footer__link-icon {
	color: currentColor;
	justify-self: end;
	place-items: center;
	block-size: 2.2rem;
	inline-size: 2.2rem;
	display: inline-grid;
}

.open-footer__link-icon svg {
	block-size: 1.7rem;
	inline-size: 1.7rem;
}

.open-footer__social {
	display: none;
}

.open-footer__copyright {
	color: var(--open-footer-ink);
	letter-spacing: .01em;
	text-align: center;
	gap: .1rem;
	padding: 4.5rem 2.4rem 5.2rem;
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.25;
	display: grid;
}

@media (width>=64em) {
	.open-footer {
		min-block-size: 113.5rem;
	}
	
	.open-footer__marquee {
		font-size: clamp(9.4rem, 6.9vw, 10.7rem);
		inset-block-start: 10.5rem;
	}
	
	.open-footer__inner {
		padding: 33.9rem 4.5rem 0;
	}
	
	.open-footer__model {
		inline-size: 37.5rem;
		padding: 4rem;
		inset-block-start: 18.6rem;
	}
	
	.open-footer__panel {
		border-radius: 4rem;
		min-block-size: 68.2rem;
	}
	
	.open-footer__content {
		grid-template-rows: auto auto 1fr auto;
		grid-template-columns: minmax(22rem, 37rem) clamp(3rem, 6.28vw, 9.5rem) minmax(22rem, 32.5rem) clamp(3rem, 12.17vw, 18.4rem) minmax(20rem, 26rem);
		column-gap: 0;
		min-block-size: 68.2rem;
		inline-size: 100%;
		max-inline-size: none;
		padding: 7.4rem 8.8rem 4rem;
	}
	
	.open-footer__brand {
		grid-column: 1;
		max-inline-size: 37rem;
	}
	
	.open-footer__brand-title {
		font-size: 2.2rem;
		line-height: 1.12;
	}
	
	.open-footer__brand-copy {
		margin-block-start: 2.4rem;
		font-size: 1.8rem;
		line-height: 1.3;
	}
	
	.open-footer__nav {
		grid-area: 2/1/auto/-1;
		grid-template-columns: subgrid;
		column-gap: 0;
		margin-block-start: 8.7rem;
		display: grid;
	}
	
	.open-footer__group:first-child {
		grid-column: 1;
	}
	
	.open-footer__group:nth-child(2) {
		grid-column: 3;
	}
	
	.open-footer__group:nth-child(3) {
		grid-column: 5;
	}
	
	.open-footer__group-title {
		font-size: 2.2rem;
		line-height: 1.12;
	}
	
	.open-footer__list {
		gap: 1.23rem;
		margin-block-start: 3.35rem;
	}
	
	.open-footer__link {
		grid-template-columns: minmax(0, max-content) 2.2rem;
		justify-content: space-between;
		gap: .5rem;
		min-block-size: 2rem;
		font-size: 1.8rem;
		line-height: 1.2;
	}
	
	.open-footer__social {
		z-index: 2;
		grid-area: 4/5;
		justify-self: end;
		align-items: center;
		gap: 3.4rem;
		margin-block-start: 3rem;
		display: flex;
		position: relative;
	}
	
	.open-footer__social-link {
		color: var(--open-footer-muted);
		letter-spacing: 0;
		align-items: center;
		gap: .9rem;
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1.2;
		transition: color .18s, translate .18s;
		display: inline-flex;
		translate: 0;
	}
	
	.open-footer__social-link:hover, .open-footer__social-link:focus-visible {
		color: var(--open-footer-copy);
		translate: 0 -.15rem;
	}
	
	.open-footer__social-icon {
		block-size: 2.1rem;
		inline-size: 2.1rem;
	}
	
	.open-footer__copyright {
		padding-block: 3.7rem 3rem;
		font-size: 1.85rem;
		line-height: 1.25;
		display: block;
	}
}

@media (width>=90em) {
	.open-footer__content {
		column-gap: 0;
	}
}

@media (prefers-reduced-motion:reduce) {
	.open-footer__model-canvas, .open-footer__model-fallback, .open-footer__link, .open-footer__social-link {
		transition: none;
	}
	
	.open-footer__link:hover, .open-footer__link:focus-visible, .open-footer__social-link:hover, .open-footer__social-link:focus-visible {
		translate: 0;
	}
	
	.open-footer__marquee-track {
		animation: none;
	}
}

.floating-widgets {
	--floating-widgets-edge: 1rem;
	--floating-widgets-bottom: 1rem;
	--floating-widgets-panel: rgba(89, 86, 78, .94);
	--floating-widgets-brand: var(--color-brand-primary);
	--floating-widgets-ink: var(--color-ink);
	--floating-widgets-copy: var(--color-white);
	--floating-widgets-cookie: #ffb567;
	--floating-widgets-cookie-dot: var(--color-ink);
	--floating-widgets-z: 90;
	z-index: var(--floating-widgets-z);
	inset: auto 0 var(--floating-widgets-bottom);
	block-size: 0;
	color: var(--floating-widgets-copy);
	pointer-events: none;
	position: fixed;
}

.floating-widgets__cookies, .floating-widgets__whatsapp {
	pointer-events: auto;
	position: absolute;
	inset-block-end: 0;
}

.floating-widgets__cookies {
	-webkit-backdrop-filter: blur(2rem);
	background: rgba(112, 106, 94, .62);
	border-radius: 50%;
	place-items: center;
	block-size: 5.8rem;
	inline-size: 5.8rem;
	display: grid;
	inset-inline-start: var(--floating-widgets-edge);
}

.floating-widgets__cookies-icon-button, .floating-widgets__cookies-accept {
	font-family: var(--font-body);
	cursor: pointer;
	border: 0;
}

.floating-widgets__cookies-icon-button {
	block-size: 100%;
	inline-size: 100%;
	color: var(--floating-widgets-cookie);
	background: 0 0;
	border-radius: 50%;
	place-items: center;
	padding: 0;
	display: inline-grid;
}

.floating-widgets__cookie-icon {
	color: currentColor;
	place-items: center;
	block-size: 3.1rem;
	inline-size: 3.1rem;
	display: inline-grid;
}

.floating-widgets__cookie-icon svg {
	block-size: 100%;
	inline-size: 100%;
}

.floating-widgets__cookies-copy {
	color: var(--floating-widgets-copy);
	letter-spacing: 0;
	white-space: nowrap;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.08;
	display: none;
}

.floating-widgets__cookies-accept {
	border-radius: var(--radius-pill);
	background: var(--floating-widgets-brand);
	min-block-size: 4rem;
	min-inline-size: 8.9rem;
	color: var(--floating-widgets-ink);
	letter-spacing: 0;
	white-space: nowrap;
	justify-content: center;
	align-items: center;
	padding-inline: 1.6rem;
	font-size: 1.55rem;
	font-weight: 700;
	line-height: 1;
	transition: transform .18s;
	display: none;
}

.floating-widgets__cookies-accept:hover {
	transform: translateY(-.1rem);
}

.floating-widgets__cookies.is-dismissed {
	display: none;
}

.floating-widgets__whatsapp {
	border-radius: 50%;
	place-items: center;
	block-size: 6.2rem;
	inline-size: 6.2rem;
	transition: filter .18s, transform .18s;
	display: inline-grid;
	inset-inline-end: var(--floating-widgets-edge);
}

.floating-widgets__whatsapp:hover {
	filter: drop-shadow(0 1.6rem 2rem rgba(0, 0, 0, .22));
	transform: translateY(-.2rem);
}

.floating-widgets__whatsapp img {
	block-size: 100%;
	inline-size: 100%;
}

@media (width>=48em) {
	.floating-widgets {
		--floating-widgets-edge: 2rem;
		--floating-widgets-bottom: 2rem;
	}
	
	.floating-widgets__cookies {
		border-radius: var(--radius-pill);
		grid-template-columns: auto minmax(0, 1fr) auto;
		gap: 1.2rem;
		block-size: 5.4rem;
		inline-size: auto;
		min-inline-size: 27.2rem;
		padding: .7rem .75rem .7rem 1.5rem;
	}
	
	.floating-widgets__cookies-icon-button {
		block-size: 2.8rem;
		inline-size: 2.8rem;
	}
	
	.floating-widgets__cookie-icon {
		block-size: 2.6rem;
		inline-size: 2.6rem;
	}
	
	.floating-widgets__cookies-copy {
		display: block;
	}
	
	.floating-widgets__cookies-accept {
		display: inline-flex;
	}
	
	.floating-widgets__whatsapp {
		block-size: 6.4rem;
		inline-size: 6.4rem;
	}
}

@media (width>=64em) {
	.floating-widgets {
		--floating-widgets-edge: 3rem;
		--floating-widgets-bottom: 3rem;
	}
}

@media (prefers-reduced-motion:reduce) {
	.floating-widgets__cookies-accept, .floating-widgets__whatsapp {
		transition: none;
	}
	
	.floating-widgets__cookies-accept:hover, .floating-widgets__whatsapp:hover {
		transform: none;
	}
}
