/* FONTS */

@import "https://use.typekit.net/cdt7rfj.css";

/* DEFINITIONS */

:root {
	--foreground: #060046;
	--foreground-heading: #25147c;
	--background: #FFFFFF;
	--background-shaded: #F3F3F3;
	--dark-foreground: #FEFEFE;
	--dark-foreground-heading: var(--dark-foreground);
	--dark-background: #060046;
	--dark: var(--dark-background);
	--link: #64e291;
	--link-interaction: color-mix(in lab, var(--accent) 80%, #FFF);
	--accent: #64e291;
	--primary: var(--accent);
	--accent-interaction: color-mix(in lab, var(--accent) 80%, #FFF);
	--primary-interaction: var(--accent-interaction);
	--secondary: #FF8200;
	--accent-secondary: var(--secondary);
	--accent-orange:var(--secondary);
	--accent-red: #E63C3C;
	--accent-blue: #2878DC;
	--accent-brighter-blue: #25147C;
	--accent-green: var(--accent);
	--accent-pink: #FF7EDD;
	--accent-purple: #885DE8;
	--accent-yellow: #EBDC50;
	--secondary-interaction: color-mix(in lab, var(--secondary) 80%, #FFF);
	--accent-secondary-interaction: var(--secondary-interaction);
	--border-radius: 10px;
	--max-inline-size: 1400px;
	--page-margin-inline: 1.8rem;
	--body-font: elza-text, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
	--heading-font: lemonde-journal, 'Palatino Linotype', 'Times New Roman', serif;
	--fs-5: clamp(2.65rem, 3.7vi + 2rem, 4.5rem);
	--fs-4: clamp(2.2rem, 2vi + 1.7rem, 3.2rem);
	--fs-3: clamp(1.95rem, 1.56vi + 1.56rem, 2.81rem);
	--fs-2: clamp(1.56rem, 1vi + 1.31rem, 2.11rem);
	--fs-1: clamp(1.2rem, 0.6vi + 1.06rem, 1.45rem);
	--fs-0: clamp(0.97rem, 0.32vi + 0.89rem, 1.05rem);
	--fs--1: clamp(0.92rem, 0.24vi + 0.86rem, 0.99rem);
	--fs--2: clamp(0.8rem, 0.17vi + 0.76rem, 0.89rem);
}

/* GENERAL */

html {
	scroll-padding-block-start: 8.7rem;
}
body {
	color: var(--foreground);
	background-color: var(--background);
}
.dark,
.x-section.dark,
.x-section.dark .x-text,
.dark .x-col,
.dark .x-text,
.dark h1,
.dark h2,
.dark h3,
.dark h4,
.dark h5,
.dark h6,
.dark .h1,
.dark .h2,
.dark .h3,
.dark .h4,
.dark .h5,
.dark .h6,
.dark blockquote {
	--foreground: var(--dark-foreground);
	--foreground-heading: var(--dark-foreground-heading);
	--background: var(--dark-background);
	--link: var(--dark-foreground);
}
.dark {
	--foreground: var(--dark-foreground);
	--link-interaction: color-mix(in lab, var(--accent) 80%, var(--dark-foreground));
}
.dark div,
.dark p,
.dark li,
.dark .x-text {
	color: var(--foreground);
}
.multiply .x-bg-layer-upper-color {
	mix-blend-mode: multiply;
}
.x-section.grey,
.x-section.gray,
.x-section.light-grey,
.x-section.light-gray {
	background-color: var(--background-shaded);
}
body,
li,
p,
h4,
h5,
h6,
th,
td,
li,
.x-text,
.x-container h4,
.x-container h5,
.x-container h6,
.x-container p,
.x-container th,
.x-container td,
.x-container li,
.x-section h4,
.x-section h5,
.x-section h6,
.x-section p,
.x-section th,
.x-section td,
.x-section li,
.x-section h2.small,
.x-section h3.small,
.x-section h2 .small,
.x-section h3 .small {
	font-family: elza-text, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
	font-family: var(--body-font);
	font-weight: 400;
	line-height: 150%;
	letter-spacing: normal;
}
h1,
h2,
h3,
.x-container h1,
.x-container h2,
.x-container h3,
.x-section h1,
.x-section h2,
.x-section h3,
.x-section .large,
#purpose .medium,
#vision .x-acc > .x-acc-item > .x-acc-header,
#quote blockquote,
#quote blockquote p {
	color: var(--foreground-heading);
	font-family: lemonde-journal, 'Palatino Linotype', 'Times New Roman', serif;
	font-family: var(--heading-font);
	font-weight: 600;
	line-height: 120%;
	letter-spacing: normal;
}
h1,
h2,
h3,
nav a {
	text-wrap: balance;
}
.x-section:not(.dark) h1,
.x-section:not(.dark) h2,
.x-section:not(.dark) h3,
.x-section:not(.dark) .large {
	color: var(--foreground-heading);
}
body,
.x-section p,
.x-section li,
.x-section input,
.x-section select,
.x-section textarea,
.x-section th,
.x-section td,
.x-section h6 {
	font-size: var(--fs-0);
}
.x-container h1
.x-section h1 {
	font-size: var(--fs-5);
	line-height: 120%;
}
.x-container h2,
.x-container .large,
.x-section h2,
.x-section .large {
	font-size: var(--fs-4);
	line-height: 120%;
}
.x-container h3,
.x-section h3 {
	font-size: var(--fs-3);
	font-weight: 500;
}
.x-container h4,
.x-section h4 {
	font-size: var(--fs-2);
}
.x-container h5,
.x-container .medium,
.x-section h5,
.x-section .medium,
#hero .small {
	font-size: var(--fs-1);
}
.x-container h1,
.x-section h1,
.x-container h2,
.x-section h2 {
	font-weight: 600;
	margin-block: 2rem;
}
.x-container h2 .small,
.x-section h2 .small,
.x-container h3 .small,
.x-section h3 .small {
	display: flex;
	font-size: var(--fs-0);
	margin-block-end: 0.5lh;
	text-transform: uppercase;
}
a,
.content a,
.content h1 a,
.content h2 a,
.content h3 a,
.content h4 a,
.content h5 a,
.content h6 a,
.content .h1 a,
.content .h2 a,
.content .h3 a,
.content .h4 a,
.content .h5 a,
.content .h6 a {
	color: var(--primary);
	transition: 0.3s color linear, 0.3s background-color linear, 0.3s filter linear, 0.3s box-shadow linear;
}
a:hover,
.content a:hover,
.content h1 a:hover,
.content h2 a:hover,
.content h3 a:hover,
.content h4 a:hover,
.content h5 a:hover,
.content h6 a:hover,
.content .h1 a:hover,
.content .h2 a:hover,
.content .h3 a:hover,
.content .h4 a:hover,
.content .h5 a:hover,
.content .h6 a:hover {
	color: var(--primary-interaction);
}
.single-networks .x-container.max {
	max-inline-size: none;
	inline-size: auto;
}
.x-main.full {
	min-block-size: calc(100dvh - 22.4rem);
}
.admin-bar .x-main.full {
	min-block-size: calc(100dvh - 22.4rem - 32px);
}
.cs-content .x-section {
	padding-block: clamp(4rem, 4vw + 4vh, 10rem);
}
.x-section.indented .x-text {
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.75);
	margin-inline: auto;
}
.cs-content ::selection {
	color: var(--dark);
	background-color: var(--accent);
}
.x-video {
	border-radius: var(--border-radius);
	overflow: clip;
}
svg {
	width: 100%;
	height: auto;
}
@media (width >= 600px) {
	.x-section .x-row,
	.single-networks .x-section .x-row {
		inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size));
		margin-inline: auto;
	}
	.x-masthead .x-bar > .x-bar-content,
	footer.x-colophon .x-bar > .x-bar-content {
		flex: 0 1 min(100% - var(--page-margin-inline), var(--max-inline-size));
		margin-inline: auto;
	}
}

/* BUTTONS */

.button,
.x-button,
.x-btn,
.content .x-btn,
.x-masthead .navigation li:last-child .x-anchor-text {
	display: inline-flex;
	color: var(--dark-background);
	background-color: var(--accent);
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	padding-inline: 2em;
	padding-block: 0.7em;
	border-radius: 1000px;
	transition: 0.3s color linear, 0.3s background-color linear, 0.4s box-shadow ease-in-out 0.1s;
}
.button,
.x-button,
.x-btn,
.content .x-btn {
	min-inline-size: 12.4ch;
}
.button,:hover
.x-button:hover,
.x-btn:hover,
.content .x-btn:hover,
.x-masthead .navigation li:last-child a:hover .x-anchor-text {
	color: var(--dark-background);
	background-color: var(--accent-interaction);
	transition: 0.3s color linear, 0.3s background-color linear, 0.4s box-shadow ease-in-out 0.1s;
}
.x-masthead .navigation li:last-child .x-anchor-text {
	padding-inline: 1.8em;
	padding-block: 0.8em;
}
.x-masthead .navigation li:last-child .x-anchor-text .x-anchor-text-primary {
	color: var(--dark-background);
}
.cta:has(> a:first-child:last-child) {
	text-align: center;
}
.cta > a:first-child:last-child {
	display: inline-flex;
	margin-inline: auto;
}
.cta .x-btn,
.x-masthead .navigation li:last-child .x-anchor-text {
	box-shadow: 0 2rem 2rem -4rem var(--secondary-interaction) inset;
}
.cta .x-btn:hover,
.x-masthead .navigation li:last-child a:hover .x-anchor-text {
	box-shadow: -24em 0 2rem -4rem var(--secondary-interaction) inset;
}

/* CTA */

.cta:has(> .cta:first-child:last-child) {
	text-align: start;
}
.cta > .cta:first-child:last-child {
	display: inline-flex;
	margin-inline: 0 auto;
}
.cta .cta,
.cta .cta:hover {
	color: var(--foreground);
}
.cta .cta {
	border-block-end: 2px solid var(--accent);
}
.cta .icon.end {
	display: none;
	width: 0.9em;
	rotate: -45deg;
	margin-inline: 1ex 0;
	transition: 0.3s translate ease-in-out;
}
.cta a:hover .icon.end {
	translate: 0.12em -0.12em;
}

/* HEADER */

.x-masthead .x-bar {
	--link: var(--accent-brighter-blue);
	--link-interaction: var(--link);
	background-color: var(--background);
}
.home .x-masthead .x-bar {
	--foreground: var(--dark-foreground);
	--background: var(--dark-background);
	--link: var(--foreground);
}
.x-masthead .logo a,
.x-masthead .logo a:hover {
	color: var(--accent-brighter-blue);
}
.home .x-masthead .logo a,
.home .x-masthead .logo a:hover {
	--link: var(--foreground);
	--link-interaction: var(--link);
	color: var(--link);
}
.x-masthead .logo a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: min(100%, 130px);
}
.x-masthead .logo svg {
	aspect-ratio: 13 / 5;
}
.x-masthead .navigation a {
	font-size: var(--fs-0);
	--link-interaction: var(--accent-secondary-interaction);
}
.x-masthead .navigation .current-menu-item .x-anchor-text-primary {
	color: var(--accent-secondary-interaction);
	text-decoration: underline;
	text-underline-offset: 0.3em;
}
.home .x-masthead .navigation li:last-child.current-menu-item .x-anchor-text,
.home .x-masthead .navigation li:last-child.current-menu-item a:hover .x-anchor-text {
	background-color: var(--secondary-interaction);
	box-shadow: none;
}
.x-masthead .navigation li:last-child.current-menu-item .x-anchor-text .x-anchor-text-primary {
	text-decoration: none;
}
.x-masthead .navigation li:last-child .x-anchor-content {
	margin-inline-end: 0;
	padding-inline-end: 0;
}
@media (height >= 500px) {
	html,
	html > body {
		overflow-x: initial;
	}
	.x-site > .x-masthead {
		position: sticky;
		inset-block-start: 0;
		z-index: 100;
	}
	.admin-bar .x-site > .x-masthead {
		inset-block-start: 32px;
	}
}
@media (width >= 1000px) {
	.x-masthead .x-bar-container.navigation {
		justify-content: flex-end;
	}
}

/* FOOTER */

#primary-footer .x-bar-content {
	flex-wrap: wrap;
	gap: 1.2rem 0.3rem;
	margin-inline: clamp(0.5rem, 3vw, 55px);
}
#footer-logo {
	flex: 0 1 min(15rem, 96%);
	order: 1;
}
#footer-logo a,
#footer-logo a:hover {
	--link: var(--foreground);
	--link-interaction: var(--link);
	color: var(--link);
}
#footer-logo p {
	margin-block: 0;
}
#footer-logo a {
	display: inline-flex;
	justify-content: start;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;
	margin-inline: auto;
}
#footer-logo svg {
	flex: 0 1 min(100%, 170px);
	aspect-ratio: 13 / 5;
	display: block;
}
#footer-logo .slogan {
	flex: 1 0 80%;
	display: block;
	block-size: 1.5em;
	line-height: 100%;
	font-size: var(--fs--1);
}
#primary-footer {
	padding-block: clamp(2.4rem, 2vw + 2vh, 4rem) 0.6rem;
}
#footer-navigation,
#secondary-footer,
#footer-navigation ul,
#secondary-footer ul,
#secondary-footer .x-bar-container {
	flex-wrap: wrap;
}
#footer-navigation {
	order: 3;
}
#footer-navigation,
#secondary-footer .x-bar-container {
	justify-content: center;
	flex: 1 0 100%;
}
#footer-navigation a:hover,
#secondary-footer a:hover {
	color: var(--accent-interaction);
}
#footer-navigation li,
#footer-navigation a {
	font-size: var(--fs--1);
}
#footer-navigation,
#secondary-footer,
#footer-navigation ul,
#secondary-footer ul,
#footer-navigation li,
#secondary-footer li {
	flex: 1 0 80%;
}
#footer-social {
	order: 2;
	justify-content: center;
	margin-inline: auto;
}
#footer-social a {
	display: flex;
	flex-wrap: wrap;
	font-size: var(--fs-1);
	justify-content: center;
	align-items: center;
	background-color: var(--accent);
	aspect-ratio: 1;
	border-radius: 50%;
	margin-block: 0 0.25em;
	margin-inline: auto;
	padding-inline: 0.3em;
	transition: 0.3s color linear, 0.3s background-color linear;
}
#footer-social a:hover {
	background-color: var(--accent-interaction);
}
#footer-social .foreground-fill,
#footer-social a:hover .foreground-fill {
	fill: var(--background);
}
#footer-social a svg {
	inline-size: 1rem;
	height: auto;
}
#secondary-footer p,
#secondary-footer li,
#secondary-footer a {
	color: var(--foreground);
	font-size: var(--fs--2);
	filter: opacity(90%);
}
#secondary-footer .copyright {
	margin-inline: 1rem;
}
@media (width > 600px) {
	#secondary-footer {
		flex-wrap: wrap;
		flex: 1 0 100%;
	}
	#footer-navigation {
		flex-wrap: wrap;
		flex: auto;
	}
	#secondary-footer .x-bar-container {
		flex: 1 0 calc(100% - 20rem);
	}
	#footer-navigation ul,
	#secondary-footer ul {
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	#footer-navigation ul {
		flex: 1 0 80%;
	}
	#footer-navigation li,
	#secondary-footer ul,
	#secondary-footer li {
		flex: 0 1 auto;
	}
	#footer-navigation li:last-child .x-anchor-content,
	#secondary-footer li:last-child .x-anchor-content {
		margin-inline-end: 0;
		padding-inline-end: 0;
	}
	#footer-navigation {
		order: 2;
	}
	#footer-social {
		order: 3;
		flex: 0 1 4rem;
		justify-content: flex-end;
		margin-inline: auto 0;
	}
	#footer-social a {
		margin-inline: 1.8rem 0;
	}
	#secondary-footer .copyright5 {
		margin-inline-start: 0;
	}
}
@media (width > 1000px) {
	#footer-logo a {
		margin-inline: 0 auto;
	}
	#footer-navigation {
		justify-content: flex-end;
	}
}
@media (width > 1400px) {
	#primary-footer .x-bar-content {
		margin-inline: 0;
	}
}

/* HERO */

#hero {
	padding-block: clamp(4rem, 4vw + 4vh, 10rem);
}
#hero .x-text {
	margin-inline: var(--page-margin-inline);
}
#hero h1,
#hero h1.accent + h2 {
	font-size: var(--fs-5);
	margin-block: 0 1.7rem;
	line-height: 115%;
}
#hero :is(h1, h2, p).accent {
	font-family: var(--body-font);
	font-size: var(--fs-0);
	font-weight: 400;
	color: var(--accent);
	margin-block: 0 1.3rem;
}
#hero h1 + p,
#hero h2 + p {
	font-size: var(--fs-1);
	margin-block: 0 1.1lh;
	text-wrap: pretty;
}
#hero h1 .row {
	display: block;
}
#hero svg {
	inline-size: 1em;
	block-size: auto;
	display: inline-block;
}
#hero .icon-growth {
	block-size: 0.7lh;
}
#hero .icon-pine-tree {
	block-size: 0.8lh;
	margin-inline: -0.3ex;
	translate: 0 -0.08lh;
}
#hero .icon-warehouse {
	block-size: 0.65lh;
	translate: 0 -0.09lh;
}
#hero .icon-fast-forward {
	block-size: 0.55lh;
	translate: 0.12ex 0;
}
#hero .cta,
#hero .cta a {
	margin-inline: 0 auto;
}
#hero .cta {
	text-align: start;
	font-size: var(--fs-0);
}
@media (width >= 750px) {
	#hero .x-text {
		margin-inline: var(--page-margin-inline);
		inline-size: calc(66% - var(--page-margin-inline));
	}
}
@media (width >= 850px) {
	#hero .x-text,
	#contact .x-text {
		margin-inline: var(--page-margin-inline);
		inline-size: calc(50% - var(--page-margin-inline));
	}
	#hero.centred,
	#hero.centered {
		padding-block: 0;
		background-color: transparent;
	}
	#hero.centred .x-row,
	#hero.centered .x-row {
		margin-block-start: clamp(0.4rem, 0.9vw + 0.9vh, 1.6rem);
		padding-block: clamp(2.5rem, 2.5vw + 2.5vh, 6rem);
		background-color: var(--background);
		border-radius: var(--border-radius);
	}
	#hero.centred .x-text,
	#hero.centered .x-text {
		text-align: center;
		margin-inline: auto;
	}
}

/* CAROUSEL */

#hero.carousel {
	display: grid;
	grid-template-columns: 1fr;
	padding-block: 0;
}
#hero.carousel.dark {
	background-color: #000000;
}
#hero.carousel .x-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	align-items: center;
	justify-content: center;
	grid-area: 1 / 1 / -1 / -1;
	inline-size: auto;
}
#hero.carousel #hero-carousel {
	position: relative;
	max-inline-size: none;
	inline-size: 100%;
}
#hero-carousel .slide.hide {
	inset-inline: 0;
}
#hero-carousel .slide img,
#hero-carousel .slide video {
	aspect-ratio: 1.8;
	object-fit: cover;
	object-position: 50% 50%;
	inline-size: 100%;
	max-inline-size: 100%;
	block-size: auto;
	filter: opacity(0.63);
}
#hero.carousel #hero-carousel + .x-row .x-col {
	padding-block: clamp(4rem, 4vw + 4vh, 10rem);
}
#hero.carousel .house-mask {
	background-color: var(--dark-background);
}
#hero.carousel .house-mask img {
	aspect-ratio: 1;
	object-fit: contain;
	inline-size: min(100%, 45.4rem);
	margin-inline: auto;
	mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjMDAwIiB3aWR0aD0iNTEwIiBoZWlnaHQ9IjUxMCIgdmlld0JveD0iMCAwIDUxMCA1MTAiPjxwYXRoIGQ9Ik0zNzguMzY1IDEyMi4yMDRMNTEwIDI1Mi40MDhWNTEwSDBWMjUyLjQwOEwxMjYuNTQ2IDEyNy4xNjdMMjU1LjAzNyAwTDM3OC40NCAxMjIuMjA0SDM3OC4zNjVaIi8+PC9zdmc+");
	mask-size: min(100%, 30.1rem);
	mask-repeat: no-repeat;
	mask-position: 50% 50%;
	translate: clamp(0px, 25dvw, var(--max-inline-size) / 4) 0;
	filter: none;
}
#hero-carousel .indicators {
	gap: clamp(0.1rem, 1vw, 0.25rem);
}
#hero-carousel .indicators li {
	font-size: var(--fs-3);
	line-height: 100%;
}
#hero-carousel .indicators a,
#hero-carousel .indicators a:hover {
	color: #FFF6;
}
#hero-carousel .indicators .current a {
	color: var(--accent);
}
#hero-carousel .indicators .current a:hover {
	color: var(--accent-interaction);
}
@media (width >= 600px) {
	#hero-carousel .slide {
		aspect-ratio: 1.8;
	}
}
@media (orientation: portrait) {
	#hero-carousel .slide {
		aspect-ratio: 1;
	}
	#hero-carousel .slide img {
		aspect-ratio: 1;
	}
}

/* HOME AND ABOUT US */

.page:is(.home, .about) #purpose,
.page:is(.home, .about) #purpose .large,
.page:is(.home, .about) #values,
.page:is(.home, .about) #networks,
.page:is(.home, .about) #cta {
	text-align: center;
	text-wrap: balance;
}
h1 > svg,
h2 > svg,
h3 > svg,
p > svg,
li > svg,
#hero h1 svg,
#purpose img,
#purpose svg,
#how svg,
#values svg,
#proven-results svg,
#news svg,
#careers svg,
#contact svg {
	vertical-align: middle;
	inline-size: auto;
	block-size: 0.75lh;
}
#purpose .icon-sun {
	block-size: 0.667lh;
}
#purpose .icon-road {
	position: relative;
	translate: -0.1em 0;
}
#purpose .icon-hard-hat {
	block-size: 0.45lh;
}
.page:is(.home, .about) #vision .medium {
	font-size: var(--fs-1);
}
.page:is(.home, .about) #vision.indented .x-text {
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.55);
}
.page:is(.home, .about) #careers h2 {
	color: #000;
	font-size: var(--fs-3);
}
.page:is(.home, .about) #cta h2 {
	font-size: var(--fs-2);
}
#about .x-row.dark {
	--foreground: var(--dark-background);
	--background: var(--accent-orange);
	background-color: var(--background);
	border-radius: var(--border-radius);
}
#about .x-row.dark .x-col:first-child,
#about .x-row.dark .x-col:first-child img {
	border-radius: var(--border-radius) var(--border-radius) 0 0;
}
#about .x-row.dark .x-col:last-child {
	border-radius: 0 0 var(--border-radius) var(--border-radius);
}
#about .x-text {
	margin-inline: var(--page-margin-inline);
}
#about h2:first-child {
	margin-block-start: 0;
}
#about .cta {
	margin-block-end: 1.2rem;
	transition: 0.3s border linear;
}
#about .cta:hover {
	border-color: var(--foreground);
}
#how {
	border-radius: var(--border-radius);
}
#how .x-row {
	background-color: var(--background-shaded);
}
#how .x-row:first-child,
#people .x-row:first-child {
	border-radius: var(--border-radius) var(--border-radius) 0 0;
}
#how .x-row:last-child,
#people .x-row:last-child {
	border-radius: 0 0 var(--border-radius) var(--border-radius);
}
#how h2,
#people h2,
#how h2 + p, 
#people h2 + p {
	text-align: center;
}
#how .icon-fast-forward {
	block-size: 0.55lh;
}
#how .indented {
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.3);
	margin-inline: auto;
	text-wrap: pretty;
}
#how .slides {
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	margin-block: calc(var(--fs-2) / 2);
	margin-inline: 0;
	padding-block: calc(var(--fs-2) / 2);
	padding-inline: 0;
	gap: var(--fs-2);
	overflow-x: auto;
	scroll-snap-type: x proximity;
	scroll-behavior: smooth;
}
#how .slide {
	display: grid;
	grid-template-columns: 6.7rem auto;
	gap: 1rem 1.9rem;
	flex: 1 0 min(90%, 32rem);
	background-color: var(--background);
	border-radius: var(--border-radius);
	padding-block: 1.7rem;
	padding-inline: 1.6rem;
	scroll-snap-align: start;
	scroll-margin-inline-start: 3rem;
	overflow: hidden;
}
#how .slide:first-child {
	margin-inline-start: 3rem;
}
#how .slide:last-child {
	margin-inline-end: 3rem;
}
#how .icon,
#values .icon,
#snapshot .icon {
	grid-area: 1 / 1 / 3 / 2;
	align-content: center;
	margin-inline: 0.9rem;
}
#how h3,
#values h3 {
	font-size: var(--fs-2);
	font-weight: 600;
	margin-block: 0;
	grid-area: 1 / 2 / 2 / 3;
}
#how h3 + p,
#values h3 + p {
	grid-area: 2 / 2 / 3 / 3;
	margin-block: 0;
}
#how .icon svg,
#values .icon svg,
#snapshot .icon svg {
	inline-size: 100%;
	block-size: auto;
	scale: 0;
	transform: skew(20deg, -35deg);
	transform-origin: 50% 50%;
	transition: 0.5s scale cubic-bezier(0.85, -0.67, 0.25, 1.67) 0.15s, 0.5s transform cubic-bezier(0.85, -0.67, 0.25, 1.67) 0.15s;
}
#how .visible .icon svg,
#values .visible .icon svg ,
#snapshot .visible .icon svg {
	scale: 1;
	transform: none;
}
#proven-results ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
	gap: var(--fs-1);
	align-items: center;
}
#proven-results li {
	flex: 1 0 5rem;
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
}
#proven-results img {
	display: block;
	block-size: 10rem;
	object-fit: cover;
	object-position: 50% 100%;
	border-radius: var(--border-radius);
}
#proven-results .start li:nth-child(2), #proven-results .end li:nth-child(2) {
	flex: 1 0 calc(50% - 4.4rem);
}
#proven-results .start li:first-child,
#proven-results .end li:last-child {
	flex: 0 1 var(--fs-5);
}
#proven-results .text {
	--background: var(--accent-brighter-blue);
	text-align: center;
	background-color: var(--accent-brighter-blue);
	border-radius: var(--border-radius);
	padding-inline: 1.4rem;
	padding-block: 0.7rem 1.3rem;
}
#proven-results .icon-warehouse {
	translate: 0 -0.12lh;
}
#proven-results li svg {
	inline-size: 100%;
	block-size: auto;
}
#proven-results .cta {
	margin-block-start: 1.3lh;
}
#news .icon-lightbulb {
	translate: 0 -0.08lh;
}
#careers p,
#contact p {
	font-size: var(--fs-1);
	inline-size: min(100%, var(--max-inline-size) * 0.5);
	text-wrap: balance;
}
#careers .cta,
#contact .cta {
	font-size: var(--fs-0);
	text-align: start;
	margin-block: 2.2rem 0;
}
#careers img {
	object-fit: cover;
	border-radius: var(--border-radius);
}
#careers .icon-fast-forward {
	block-size: 0.6lh;
	translate: 0.08ex -0.05lh;
	margin-inline: 0.1ex;
}
.home #careers .cta a {
	background-color: var(--background);
}
#contact .icon-speech {
	block-size: 0.5lh;
	translate: 0 -0.2rem;
}
#purpose.indented .x-text {
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.6);
}
#purpose p {
	color: var(--foreground);
}
#purpose .large {
	color: var(--foreground-heading);
	font-size: var(--fs-3);
}
#purpose .medium {
	color: var(--accent-brighter-blue);
	font-size: var(--fs-1);
}
#vision img {
	border-radius: var(--border-radius);
}
#vision .icon-eye {
	block-size: 0.55lh;
	translate: 0 -0.05lh;
}
#values .icon-star {
	block-size: 0.75lh;
	translate: 0 -0.05lh;
}
#values ul,
#snapshot ul {
	display: flex;
	list-style: none;
	flex-wrap: wrap;
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
	gap: var(--fs-1);
}
#values li,
#snapshot li {
	position: relative;
	display: grid;
	align-items: center;
	align-content: space-around;
	background-color: var(--background-shaded);
	margin-block: 0;
	padding-block: var(--fs-3);
	padding-inline: 1rem 1.2rem;
	border-radius: var(--border-radius);
	gap: 0.8rem 0.8rem;
	grid-template-columns: 7.3rem auto;
}
#values li {
	flex: 1 0 min(100%, 10rem);
}
#values h3,
#snapshot h3,
#values p,
#snapshot p {
	text-align: start;
	margin-block: 0;
}
#values h3,
#snapshot h3 {
	font-size: var(--fs-2);
	font-weight: 600;
}
#people .x-row:last-child {
	inline-size: auto;
	max-inline-size: none;
}
#people .slides {
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	margin-block: calc(var(--fs-2) / 2);
	margin-inline: 0;
	padding-block: calc(var(--fs-2) / 2);
	padding-inline: 0;
	gap: var(--fs-2);
	overflow-x: auto;
	scroll-snap-type: x proximity;
	scroll-behavior: smooth;
}
#people .slide {
	position: relative;
	flex: 1 0 content;
	display: flex;
	gap: 1rem 1.9rem;
	background-color: var(--background);
	border-radius: var(--border-radius);
	padding-block: 1.7rem;
	padding-inline: 1.6rem;
}
#people .slide:first-child {
	margin-inline-start: 1rem;
}
#people .slide:last-child {
	margin-inline-end: 1rem;
}
#people .slides img {
	display: block;
	inline-size: auto;
	block-size: clamp(10rem, 10vw + 10vh, 30rem);
	border-radius: var(--border-radius);
}
#people .slide {
	position: relative;
	flex: 1 0 content;
	display: flex;
	gap: 1rem 1.9rem;
	background-color: var(--background);
	margin-block: 0 0.6rem;
	padding-block: 0;
	padding-inline: 0;
	border-radius: var(--border-radius);
	line-height: 110%;
	font-size: var(--fs--1);
	text-wrap: pretty;
}
#people .slide figure {
	position: relative;
	display: flex;
	inline-size: auto;
	block-size: auto;
	margin: 0;
	overflow: clip;
	border-radius: var(--border-radius);
}
#people .slide figcaption {
	position: absolute;
	display: grid;
	align-content: center;
	justify-content: center;
	inset: auto 0 0 0;
	translate: 0 4.1rem;
	block-size: 5rem;
	color: var(--foreground);
	background-color: color-mix(in lab, var(--background) 70%, transparent);
	transition: 0.3s translate ease-in-out, 0.3s filter linear, 0.3s transform ease-in-out, 0.2s box-shadow linear;
	padding-block: 1rem;
	padding-inline: 2rem;
	text-align: center;
	filter: opacity(50%) brightness(80%);
	transform-origin: 50% 50%;
	box-shadow: 0 -2px 0 var(--accent-brighter-blue);
}
#people .slide:hover figcaption {
	filter: none;
	translate: none;
	transform: none;
	box-shadow: none;
}
@media (width >= 600px) {
	#about .x-text {
		margin-inline: inherit;
	}
	#about .x-row.dark {
		border-radius: var(--border-radius);
	}
	#about .x-row.dark .x-col:first-child,
	#about .x-row.dark .x-col:first-child img {
		border-radius: var(--border-radius) 0 0 var(--border-radius);
	}
	#about .x-row.dark .x-col:last-child {
		border-radius: 0 var(--border-radius) var(--border-radius) 0;
	}
	#about img {
		object-fit: cover;
		aspect-ratio: 1;
	}
	#about h2 {
		font-size: var(--fs-2);
		margin-block: 1rem 1.5rem;
	}
	#about .x-col:last-child .x-text {
		margin-inline-end: 5.1rem;
	}
}
@media (width >= 768px) {
	#about .cta {
		margin-block-end: inherit;
	}
	#how li:nth-child(2) .icon svg,
	#values li:nth-child(2) .icon svg,
	#snapshot li:nth-child(2) .icon svg {
		transition-delay: 0.3s;
	}
	#how li:nth-child(3) .icon svg,
	#values li:nth-child(3) .icon svg,
	#snapshot li:nth-child(3) .icon svg {
		transition-delay: 0.45s;
	}
	#how li:nth-child(4) .icon svg, 
	#values li:nth-child(4) .icon svg, 
	#snapshot li:nth-child(4) .icon svg {
		transition-delay: 0.6s;
	}
	#values li:nth-child(5) .icon svg {
		transition-delay: 0.75s;
	}
	#proven-results .end ul {
		align-items: flex-end;
	}
	#proven-results .start li:nth-child(2),
	#proven-results .end li:first-child {
		order: 1;
	}
	#proven-results .start li:first-child,
	#proven-results .end li:last-child {
		order: 2;
	}
	#proven-results .start li:last-child,
	#proven-results .end li:nth-child(2) {
		order: 3;
	}
	#proven-results .start li:nth-child(2),
	#proven-results .end li:nth-child(2) {
		flex: 1 0 80%;
	}
	#proven-results img {
		display: block;
		aspect-ratio: 3 / 2;
		block-size: auto;
	}
	#proven-results .start li:last-child img,
	#proven-results .end li:first-child img {
		aspect-ratio: 3 / 4;
	}
	#careers img {
		aspect-ratio: 16 / 9;
		object-position: 50% 100%;
	}
}
@media (width >= 900px) {
	#about img {
		aspect-ratio: inherit;
	}
	#values li:nth-child(n+4) {
		padding-inline: clamp(1rem, 2.2vw, 2.4rem);
	}
}
@media (width >= 1200px) {
	#proven-results .text {
		padding-block: clamp(3rem, 2vw, 4rem) clamp(4.5rem, 3vw, 6rem);
	}
}

/* NEWS AND NETWORK LISTINGS */

.blog .listing .x-grid.x-container,
.post-type-archive-networks .listing .x-grid.x-container {
	margin-inline: 0;
}
.listing .x-image {
	margin-block: 0 1rem;
}
.listing .x-image img,
.listing a .x-image > img,
.listing article .x-image > img {
	aspect-ratio: 1.5;
	object-fit: cover;
	border-radius: var(--border-radius);
	inline-size: 100%;
}
.listing .x-text :is(h2, h3, p) {
	margin-block: 0.7em;
}
.listing .date {
	font-family: var(--body-font);
	color: color-mix(in lab, var(--foreground) 40%, var(--background));
	font-size: var(--fs--1);
}
.listing .title {
	font-size: var(--fs-1);
}
.listing .title,
.listing .title a,
.listing .title a:hover {
	color: var(--foreground-heading);
}
.listing.related .x-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--fs-1);
}
.listing.related article {
	background-color: var(--background);
	border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.listing.related h3,
.listing.related p {
	margin-inline: var(--fs-1);
}
.listing.related h3 {
	font-weight: 600;
}
.listing.related p:last-child {
	margin-block-end: var(--fs-1);
}
.listing.related article .x-image > img {
	border-radius: var(--border-radius) var(--border-radius) 0 0;
}
@media (width >= 768px) {
	.listing.related .x-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

/* NEWS */

.home .news h2 {
	text-align: center;
}
.news ul {
	grid-template-columns: 1fr;
}
.news li {
	border-radius: var(--border-radius);
}
.news li a {
	--link: var(--accent-brighter-blue);
	color: var(--link);
}
.news li a:hover {
	--link-interaction: color-mix(in lab, var(--accent-brighter-blue) 80%, var(--background));
	color: var(--link-interaction);
}
.news .latest li:first-child {
	background-color: var(--background-shaded);
}
.home .news .title,
.home .news .cta {
	margin-block: 0;
}
.home .news .latest {
	--inline-padding: var(--fs-3);
}
.home .news .title {
	font-weight: 600;
}
.home .news .latest .title,
.home .news .latest .cta {
	margin-inline: var(--inline-padding);
}
.home .news .categories,
.home .news .date {
	color: color-mix(in lab, var(--foreground) 60%, var(--background-shaded));
	font-size: var(--fs--2);
	text-transform: uppercase;
	line-height: 105%;
}
.home .news .latest .categories,
.home .news .latest .date {
	margin-block-start: calc(var(--inline-padding) * 0.5);
}
.home .news li .cta {
	flex: 0 1 auto;
	font-size: var(--fs--1);
	justify-content: flex-start;
	line-height: 120%;
	border-block-end: 2px solid var(--accent-green);
	transition: 0.3s color linear, 0.3s border linear;
}
.home .news li .cta:hover {
	color: color-mix(in lab, var(--accent-interaction) 90%, var(--foreground));
	border-color: var(--accent-brighter-blue);
}
.home .news .categories {
	border-inline-end: 1px solid color-mix(in lab, var(--foreground) 60%, var(--background-shaded));
}
.home .news .latest .categories {
	margin-inline-start: var(--inline-padding);
}
.home .news .latest .date {
	margin-inline-end: var(--inline-padding);
}
.home .news .latest .cta {
	margin-block-end: calc(var(--inline-padding) * 0.7);
}
.home .news .latest .image img {
	display: block;
	aspect-ratio: 16 / 9;
	border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.home .news .latest a:hover img {
	filter: invert(10%) brightness(150%);
}
.home .news .recent ul {
	margin-block-end: 2.4rem;
}
.home .news .recent li {
	padding-block: 1.1lh;
	border-radius: initial;
	border-block-end: 1px solid color-mix(in lab, var(--background-shaded) 70%, var(--foreground));
}
.home .news .recent li:first-child {
	border-block-start: 1px solid color-mix(in lab, var(--background-shaded) 70%, var(--foreground));
}
.home .news .recent .title {
	font-size: var(--fs-1);
}
.home .news .recent .categories {
	padding-inline-end: 0.3rem;
  }
.home .news .recent .cta:has(> a:first-child:last-child) {
	text-align: start;
}

/* NETWORKS */

.post-type-archive-networks #hero.dark {
	--background: var(--accent-purple);
}
.single-networks .indented .x-text {
	margin-inline: auto;
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.55);
}
#featured {
	inline-size: min(100% - var(--page-margin-inline) * 2, var(--max-inline-size));
	margin-inline: auto;
	padding-inline: 0;
}
#featured .x-row {
	margin-inline: 0;
	inline-size: auto;
}
#featured .x-row,
#featured .x-col,
#featured .x-grid,
#featured article {
	border-radius: var(--border-radius);
}
#featured article {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--fs-5);
	align-items: center;
}
#featured .x-image, #featured .x-image img {
	border-radius: var(--border-radius);
}
#highlights ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 5.5ch;
	margin-block: 4rem 0;
	padding-inline: 0;
}
#highlights li {
	margin-block: 0;
	padding-inline: 0;
	flex: 1 0 min(100%, 25ch);
	font-size: var(--fs-1);
	text-align: center;
	text-wrap: balance;
}
#highlights svg {
	inline-size: auto;
	block-size: 3em;
	display: flex;
	margin-inline: auto;
	margin-block: 0 0.8lh;
}
#hero .icon-sun {
	block-size: 0.65lh;
	translate: 0 -0.05lh;
}
#hero .icon-angel-of-the-north {
	block-size: 0.6lh;
}
.x-section .x-text .large {
	font-size: var(--fs-2);
}
#values ul, #snapshot ul {
	inline-size: min(100%, var(--max-inline-size) * 0.8);
	margin-inline: auto;
}
#snapshot li {
	position: relative;
	flex: 1 0 min(100%, 23rem);
	block-size: clamp(10rem, 17vh, 15rem);
	padding-inline: var(--fs-3);
}
#snapshot li:first-child {
	display: flex;
	justify-content: center;
}
#snapshot hgroup,
#snapshot h2,
#snapshot p {
	text-wrap: balance;
}
#snapshot hgroup {
	grid-area: 1 / 2 / 3 / 3;
	display: grid;
	gap: var(--fs--2);
	justify-content: start;
}
#snapshot h3 {
	font-size: var(--fs-2);
	font-weight: 600;
	margin-block: 0;
}
#snapshot h3 + p {
	margin-block: 0;
}
#snapshot .logo img {
	flex: 0 1 min(100%, 16rem);
	max-inline-size: min(100%, 16rem);
}
#snapshot .pipes {
	background-color: var(--accent-purple);
}
#snapshot .heat {
	background-color: var(--accent-orange);
}
#snapshot .co2 {
	background-color: var(--accent-green);
}
#gallery .x-row {
	inline-size: inherit;
}
#gallery .carousel-enclosure {
	overflow: auto;
}
#gallery ul {
	display: flex;
	gap: var(--fs-1);
	transition: 0.2s translateX ease-in-out, 0.2s transform ease-in-out;
}
#gallery .slide {
    flex: 1 0 auto;
}
#gallery .slide img {
    display: flex;
    inline-size: auto;
    block-size: clamp(14rem, 50vh, 27rem);
    border-radius: var(--border-radius);
}
#gallery .navigation {
	justify-content: end;
	align-items: center;
	list-style: none;
	margin-inline: auto var(--page-margin-inline);
	padding-inline: 0;
	display: flex;
	inline-size: 7rem;
	text-align: end;
	gap: 1rem;
}
#gallery .navigation li {
	font-size: var(--fs-1);
	padding-inline: 0;
	margin-inline: 0;
}
#gallery .navigation li a {
	display: flex;
	color: transparent;
	background: transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiM2NGUyOTEiIHZpZXdCb3g9IjAgMCAxMiAxNSI+PHBhdGggZD0iTTExLjkxOSA3LjM0OGEuMTg0LjE4NCAwIDAgMSAwIC4zMDVsLTUuODM4IDMuNjYxLTUuODM4IDMuNjYyQy4xMzUgMTUuMDQ0IDAgMTQuOTYgMCAxNC44MjRWLjE3NmMwLS4xMzUuMTM1LS4yMi4yNDMtLjE1Mmw1LjgzOCAzLjY2MnoiLz48L3N2Zz4=") no-repeat scroll 53% 50% / 0.8rem;
	inline-size: 1.2em;
	block-size: auto;
	aspect-ratio: 1;
	font-size: var(--fs-2);
	padding-block: 0;
	padding-inline: 0;
	border: 2px solid var(--accent);
	border-radius: 50%;
	line-height: 100%;
}
#gallery .navigation li:first-child a {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiM2NGUyOTEiIHZpZXdCb3g9IjAgMCAxMiAxNSI+PHBhdGggZD0iTS4wODEgNy42NTJhLjE4NC4xODQgMCAwIDEgMC0uMzA1bDUuODM4LTMuNjYxTDExLjc1Ny4wMjRjLjEwOC0uMDY4LjI0My4wMTcuMjQzLjE1MnYxNC42NDhjMCAuMTM1LS4xMzUuMjItLjI0My4xNTJsLTUuODM4LTMuNjYyeiIvPjwvc3ZnPg==");
	background-position-x: 47%;
}
#quote .x-row {
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.7);
}
#quote blockquote,
#quote blockquote p {
	font-size: var(--fs-2);
	margin-block: 0 1.4rem;
	margin-inline: 0;
}
#quote p:has(cite) {
	color: var(--accent-brighter-blue);
}
#quote p:has(cite) span,
#quote p cite {
	display: block;
}
#quote p:has(cite) span {
	font-weight: 600;
}
#quote p cite {
	font-style: inherit;
}
#quote .photo .x-text {
	display: grid;
}
#quote .photo .x-text p {
	margin-block: 0;
	grid-area: 1 / 1 / 2 / 2;
	display: flex;
	align-items: flex-end;
}
#quote .photo .x-text p:has(img) {
	padding-inline: 18%;
}
#quote .photo .x-text svg,
#quote .photo .x-text img {
	inline-size: 100%;
	block-size: auto;
}
#networks.related .x-text:has(h2) {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#networks.related .x-text:has(h2) > * {
	flex: 1 0 20rem;
	margin-block: 0;
	margin-inline: 0;
}
#networks.related .x-text:has(h2) > :last-child {
	align-self: flex-end;
	text-align: end;
}
@media (width >= 768px) {
	#featured article {
		grid-template-columns: 1fr 1fr;
	}
	#featured .x-image, #featured .x-image img {
		border-radius: var(--border-radius) 0 0 var(--border-radius);
	}
	#snapshot li:nth-child(4n-2),
	#snapshot li:nth-child(4n-1) {
		flex: 8 0 min(100%, 33rem);
		gap: var(--fs-3);
	}
}
@media (width >= 850px) {
	.single-networks #hero .x-text {
		inline-size: calc(66.7% - var(--page-margin-inline));
	}
}

/* TEAM */

.team-list,
.team-list li {
	display: grid;
	margin-block: 0;
	padding-inline: 0;
}
.team-list {
	list-style: none;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}
.team-list li {
	grid-template-columns: 1fr;
	gap: 1rem;
	margin-inline: 0;
}
.team-list li > h2,
.team-list li > p {
	margin-block: 0;;
}
.team-list .photo {
	order: 1;
	border-radius: var(--border-radius);
}
.team-list .name {
	font-size: var(--fs-1);
	order: 2;
}
.team-list .position {
	order: 3;
}
.team-list .biography {
	order: 4;
}

/* CAREERS */

.careers #working,
.careers #characteristics,
.careers #networks {
	text-align: center;
}
.careers #working .medium,
.careers #characteristics .medium,
.careers #networks .medium {
	font-size: var(--fs-0);
}
.careers #characteristics h2,
.careers #characteristics .medium {
	margin-inline: auto;
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.55);
}
.careers #characteristics h2 {
	font-size: var(--fs-2);
}
.careers #characteristics svg {
	vertical-align: middle;
	inline-size: auto;
	block-size: 0.8lh;
	margin-inline: 0;
	translate: 0 -0.07lh;
}
.careers #connections .x-image img {
	inline-size: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	object-position: 50% 56%;
	border-radius: var(--border-radius);
}
.careers #characteristics ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 5.5ch;
	justify-content: center;
	align-items: flex-start;
	margin-block: 4rem 0;
	padding-inline: 0;
}
.careers #characteristics li {
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
	flex: 1 0 min(100%, 40ch);
	max-inline-size: 40ch;
}
.careers #characteristics h3 {
	font-size: var(--fs-2);
	font-weight: 600;
	margin-block: 0 1rem;
}
.careers #characteristics p:last-child {
	margin-block-end: 0;
}
.careers #quote {
	background: var(--dark-background) url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHZpZXdCb3g9IjAgMCA2NjUgMzA3Ij48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNlNjNjM2MiIHN0cm9rZS13aWR0aD0iLjYiIGQ9Ik01NzUuOCAxMS4zYzIzLjcgMCA0NiA5LjIgNjIuOSAyNiAxNi44IDE2LjggMjYgMzkuMSAyNiA2Mi45IDAgMjMuNy05LjIgNDYtMjYgNjIuOEw1MDcuOSAyOTMuN2MtMS4zIDEuMy0zLjUgMS4zLTQuOCAwTDM3Mi4zIDE2M2MtMTYuOC0xNi44LTI2LTM5LjEtMjYtNjIuOCAwLTIzLjcgOS4yLTQ2IDI2LTYyLjggMTYuOC0xNi44IDM5LjEtMjYgNjIuOS0yNiAyMy43IDAgNDYgOS4yIDYyLjkgMjZsNS41IDUuNWMxLjEgMS4xIDIuOCAxLjEgMy45IDBsNS41LTUuNWMxNi44LTE2LjkgMzkuMS0yNi4xIDYyLjgtMjYuMXoiLz48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNmZjdlZGQiIHN0cm9rZS13aWR0aD0iLjYiIGQ9Ik0xNDkuNyAyNy4yYzM1LjcgMTQuOCA1Mi43IDU1LjggMzcuOSA5MS41LTE0LjggMzUuNy01NS44IDUyLjctOTEuNSAzNy45LTM1LjctMTQuOC01Mi43LTU1LjgtMzcuOS05MS41QzczIDI5LjQgMTE0IDEyLjQgMTQ5LjcgMjcuMnptOTUuMiAyNzYuNWMwIDEuNy0xLjMgMy0zIDNIMy43Yy0xLjcgMC0zLTEuNC0zLTMgMS44LTY2LjEgNTUuOC0xMTkuMiAxMjIuMS0xMTkuMnMxMjAuMyA1MyAxMjIuMSAxMTkuMnoiLz48L3N2Zz4=") no-repeat scroll 50% 50% / auto 60%;
}
.careers #quote p {
	font-family: var(--heading-font);
	font-size: var(--fs-2);
	font-weight: 600;
	text-align: center;
	text-wrap: pretty;
	inline-size: min(100% - var(--page-margin-inline), var(--max-inline-size) * 0.55);
	margin-inline: auto;
}

/* ACCORDION */

#vision .x-acc > .x-acc-item {
	border-radius: var(--border-radius);
	border-block-start: 0 none;
}
#vision .x-acc > .x-acc-item + .x-acc-item {
	margin-block: 1.4rem 0;
}
#vision .x-acc-header .x-acc-header-text {
	color: var(--accent-brighter-blue);
	font-size: var(--fs-1);
}
#vision .x-acc-header .x-acc-header-text::before {
	display: block;
	position: absolute;
	content: '';
	width: 1.3em;
	height: auto;
	aspect-ratio: 1;
	background: transparent scroll no-repeat 0% 0% / auto 100%;
	inset-inline-start: 0.9em;
}
#vision .x-acc > .x-acc-item > div > .x-acc-content {
	border: 0 none;
}
#vision .x-acc-header,
#vision .x-acc-header + div {
	background-color: var(--background);
	box-shadow: 0 0 0 0 var(--accent) inset;
	transition: 0.5s box-shadow ease-in-out, 0.25s block-size ease-in-out, 0.25s display linear;
	transition-behavior: allow-descrete;
}
#vision .x-active,
#vision .x-active + div {
	background-color: var(--background);
	box-shadow: 100vw 0 1rem 0 var(--accent) inset;
}
#vision .x-acc > .x-acc-item > .x-acc-header {
	padding-block: 1.6rem;
}
#vision .x-acc-header-indicator,
#vision .x-active .x-acc-header-indicator {
	color: transparent;
	rotate: 0deg;
	transform: none;
	transition: none;
}
#vision .x-acc-header-indicator::before {
	display: block;
	position: absolute;
	content: '';
	width: 1.7em;
	height: auto;
	aspect-ratio: 1;
	background: transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIHZpZXdCb3g9IjAgMCAyMDAwIDEwMDAiPjxwYXRoIGQ9Ik00NzYuMjIyIDgxMy4wOTFWNTIzLjI2N0gxODYuOTh2LTQ3LjYyNGgyODkuMjQyVjE4Ni45OGg0Ni40NjZ2Mjg4LjY2MmgyOTAuNDA0djQ3LjYyNEg1MjIuNjg3djI4OS44MjVoLTQ2LjQ2NXptMTMzNy4xNTItMjg5LjgyNEgxMTg2Ljk4di00Ny42MjRoNjI2LjM5NCIvPjwvc3ZnPg==") scroll no-repeat 0% 50% / auto 100%;
	rotate: -90deg;
	transform: none;
	transition: 0.3s rotate ease-in-out;
}
#vision .x-active .x-acc-header-indicator::before {
	background-position-x: 100%;
	rotate: 0deg;
	transform: none;
}
#vision .x-acc-content {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
	margin-block-start: 0;
	padding-block-start: 0;
}
#vision .x-acc-content > * {
	flex: 1 0 100%;
}
#vision .x-acc-content > * {
	flex: 1 0 100%;
}
#vision .x-acc-header-text .x-icon {
	font-size: 1.2rem;
	margin-inline-end: 1.3em;
}
#vision p {
	font-size: var(--fs-0);
	margin-block: 0.7em;
	line-height: 120%;
}
#vision .x-text p {
	font-weight: 400;
}
@media (width >= 768px) {
	#vision .x-acc-content > * {
		flex: 1 0 40%;
	}
}

/* CONTACT */

.wpcf7 .wpcf7-form,
.wpcf7 p,
.wpcf7 .wpcf7-control-wrap,
.wpcf7 .wpcf7-radio,
.wpcf7 .wpcf7-form-control label {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.wpcf7 .wpcf7-form {
	inline-size: min(100%, 50rem);
	margin-inline: auto;
	gap: 1.4rem;
}
.wpcf7 p {
	flex: 1 0 100%;
	gap: 0.6rem 1.4rem;
}
.wpcf7 .wpcf7-form p {
	margin-block: 0;
}
.wpcf7 .wpcf7-list-item-label {
	margin-inline: 1ex 0;
}
.wpcf7 p,
.wpcf7 p > label,
.wpcf7 p > span {
	flex: 1 0 100%;
	margin-block: 0;
}
.wpcf7 p.hide {
	display: none;
}
.wpcf7 label {
	color: color-mix(in lab, var(--foreground) 65%, var(--background));
	font-size: var(--fs--1);
}
.wpcf7 :is(input[type="text"], input[type="email"], input[type="tel"], input[type="file"], select, textarea) {
	border: 0 none;
	outline: none;
	box-shadow: 0 0 0 0.05rem color-mix(in lab, var(--foreground) 40%, var(--background));
	border-radius: var(--border-radius);
	transition: 0.4s box-shadow linear 0s;
}
.wpcf7 :is(input[type="text"], input[type="email"], input[type="tel"], input[type="file"], select, textarea):focus-visible {
	border: 0 none;
	outline: none;
	box-shadow: 0 0 0 0.12rem color-mix(in lab, var(--foreground) 90%, var(--background));
}
.wpcf7 input[type="file"]{
	display: flex;
	inline-size: 100%;
	padding-block: 0.5rem;
	padding-inline: 0.5em;
}
.wpcf7 .wpcf7-list-item {
	flex: auto;
	margin: 0;
}
.wpcf7 .required {
	color: var(--accent);
	font-size: 0.7em;
	vertical-align: top;
}
.wpcf7 .wpcf7-form > .subject {
	margin-block: 1.2rem;
}
.wpcf7 .subject .wpcf7-list-item {
	position: relative;
}
.wpcf7 .subject .wpcf7-list-item-label {
	display: flex;
	flex-wrap: wrap;
	flex: 1 0 100%;
	font-family: var(--heading-font);
	font-size: var(--fs-1);
	font-weight: 600;
	justify-content: center;
	margin-block: 0;
	margin-inline: 0;
	transition: 0.13s color linear, 0.13s filter linear;
}
.wpcf7 .subject .wpcf7-list-item label {
	display: flex;
	flex-wrap: wrap;
	color: var(--foreground-heading);
	justify-content: center;
	padding-block: 1rem;
	border-block-end: 2px transparent solid;
	cursor: pointer;
	transition: 0.3s color linear, 0.6s border-block-end linear 0.2s;
}
.wpcf7 .subject .wpcf7-list-item label::before {
	position: relative;
	display: flex;
	content: '';
	inline-size: auto;
	block-size: 3rem;
	inset-inline: auto;
	aspect-ratio: 1;
	filter: invert(33%) brightness(120%) grayscale(100%);
	transition: 0.13s filter linear;
	z-index: -1;
}
.wpcf7 .subject .wpcf7-list-item input[type="radio"] {
	position: absolute;
	filter: opacity(0%);
	z-index: -1;
}
.wpcf7 .subject .wpcf7-list-item {
	--foreground: var(--foreground-heading);
}
.wpcf7 .subject .wpcf7-list-item:has(:checked):nth-child(1) label {
	--foreground-heading: var(--accent-orange);
}
.wpcf7 .subject .wpcf7-list-item:has(:checked):nth-child(2) label {
	--foreground-heading: var(--accent-red);
}	
.wpcf7 .subject .wpcf7-list-item:has(:checked):nth-child(3) label {
	--foreground-heading: var(--accent-blue);
}
.wpcf7 .subject .wpcf7-list-item:has(:checked):nth-child(4) label {
	--foreground-heading: var(--accent-pink);
}
.wpcf7 .subject .wpcf7-list-item:has(:checked) {
	color: var(--foreground);
}
.wpcf7 .subject .wpcf7-list-item label::before {
	background: transparent none no-repeat scroll 50% 50% / cover;
	aspect-ratio: 0.8;
}
.wpcf7 .subject .wpcf7-list-item:nth-child(1) label::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZjgyMDAiIHZpZXdCb3g9IjAgMCAyOS43IDM5LjQiPjxwYXRoIGQ9Ik0yNi44IDIyLjJjNC4xLTQuNiAzLjctMTEuNy0uOS0xNS44LTQuNi00LjEtMTEuNy0zLjctMTUuOC45QzYgMTEuOSA2LjQgMTkgMTEgMjMuMWM0LjYgNC4xIDExLjcgMy43IDE1LjgtLjl6Ii8+PHBhdGggZD0iTTI5LjIgMjguOSAyOCAyNy4yYy0uMi0uMy0uNy0uNC0xLS4yLTMuMiAyLjItNy4xIDMuMS0xMC45IDIuNC0zLjgtLjYtNy4yLTIuNy05LjUtNS45LTIuMy0zLjEtMy4zLTctMi43LTEwLjkuNC0zLjcgMi40LTcuMiA1LjQtOS42LjMtLjMuNC0uNy4xLTFMOC4zLjNDOC4xLjEgOCAwIDcuOCAwcy0uNCAwLS42LjJjLTMuOCAzLTYuMyA3LjItNyAxMi0uNyA0LjguNSA5LjYgMy40IDEzLjUgMy4xIDQuMiA3LjggNi45IDEzIDcuNS4xIDAgLjEuMS4xLjF2Mi40YzAgLjEtLjEuMi0uMS4yaC00LjFjLS40IDAtLjguMy0uOC44djIuMWMwIC40LjMuOC44LjhoMTJjLjQgMCAuOC0uMy44LS44di0yLjFjMC0uNC0uMy0uOC0uOC0uOGgtNC4xYy0uMSAwLS4yLS4xLS4yLS4ydi0yLjRjMC0uMS4xLS4xLjEtLjEgMy4xLS4zIDYuMS0xLjQgOC42LTMuMi4yLS4xLjMtLjMuMy0uNS4yLS4yLjEtLjQgMC0uNnoiLz48L3N2Zz4=");
	aspect-ratio: 0.8;
}
.wpcf7 .subject .wpcf7-list-item:nth-child(2) label::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNFNjNDM0MiPjxwYXRoIGQ9Ik0zLjQ1IDguNjg3NWgzOC4xYy4yNDg0IDAgLjQ1LjIwMTYuNDUuNDV2MjQuOTc4YzAgLjI0ODQtLjIwMTYuNDUtLjQ1LjQ1SDI5Ljc4ODhjLS4xNjA1IDAtLjMxNDQuMDY0Mi0uNDI3Mi4xNzg1bC02LjU0MTIgNi42Mjg4Yy0uMTc2MS4xNzg1LS40NjQ0LjE3ODUtLjY0MDUgMGwtNi41NDEyLTYuNjI4OGMtLjExMjgtLjExNDMtLjI2NjctLjE3ODUtLjQyNzItLjE3ODVIMy40NWMtLjI0ODQgMC0uNDUtLjIwMTYtLjQ1LS40NVY5LjEzNzVjMC0uMjQ4NC4yMDE2LS40NS40NS0uNDVaIi8+PC9zdmc+");
}
.wpcf7 .subject .wpcf7-list-item:nth-child(3) label::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiMyODc4REMiPjxwYXRoIGQ9Im01LjQ2NzQgMzMuMDQ3NS0yLjM4NjUgOC4zNTc3Yy0uMDk5OS4zNTAxLjIyMzUuNjczNS41NzM2LjU3MzZsOC4zNTc3LTIuMzg2NWMuMzQwMi0uMDk3Mi40NTA5LS41MjQxLjIwMDctLjc3NDNMNi4yNDIgMzIuODQ3MWMtLjI1MDItLjI1MDItLjY3NzEtLjEzOTUtLjc3NDMuMjAwN2wtLjAwMDMtLjAwMDNaIi8+PHBhdGggZD0iTTM0Ljc5MzIgMy4xMzY0OSA4LjMxMjU0IDI5LjYxNzFjLS4xODEyNC4xODEzLS4xODEyNC40NzUxIDAgLjY1NjRsNi4zNTgyNiA2LjM1ODJjLjE4MTIuMTgxMy40NzUxLjE4MTMuNjU2MyAwbDI2LjQ4MDctMjYuNDgwNmMuMTgxMi0uMTgxMjguMTgxMi0uNDc1MTMgMC0uNjU2MzhsLTYuMzU4My02LjM1ODIzYy0uMTgxMi0uMTgxMjQtLjQ3NTEtLjE4MTI0LS42NTYzIDBaIi8+PC9zdmc+");
}
.wpcf7 .subject .wpcf7-list-item:nth-child(4) label::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNGRjdFREQiIHZpZXdCb3g9IjAgMCAzOCAzNyI+PHBhdGggZD0iTTEzLjU3MDMgMjguOTcxNnYuMzI2OGMwIDIuOTQ2NyAyLjI5MiA1LjQ1NTggNS4yMzcgNS41NTkxIDMuMDkwNS4xMDg2IDUuNjI3OS0yLjM2NSA1LjYyNzktNS40Mjkxdi0uNDU2OGMwLS4yMDQzLS4xNjU3LS4zNy0uMzctLjM3SDEzLjk0MDNjLS4yMDQyIDAtLjM3LjE2NTctLjM3LjM3WiIvPjxwYXRoIGQ9Ik0yMy44OTU1IDMuNzc5ODRjLTMuMDI5Ni0xLjc0ODEyLTYuNzYwMS0xLjc0ODEyLTkuNzg5NyAwLTMuMDI3NiAxLjc0ODEzLTQuODk0ODYgNC45Nzk3MS00Ljg5NDg2IDguNDc2MjYgMCA0LjU2NzUgNC4xNjkzNiA5LjAyMzUgNC4zNTczNiAxMS4zODI0djIuMDIzNGMwIC4yMDQyLjE2NTguMzcuMzcuMzdoMTAuMTI0OWMuMjA0MyAwIC4zNy0uMTY1OC4zNy0uMzd2LTIuMDEzM2MuMTg2LTIuMzY4NSA0LjM1NzQtNi44MjMgNC4zNTc0LTExLjM5MjUgMC0zLjQ5NjMtMS44Njc4LTYuNzI3ODgtNC44OTUxLTguNDc2MjZaIi8+PC9zdmc+");
}
.wpcf7 .subject .wpcf7-list-item:has(:checked) label {
	border-block-end-color: inherit;
}
.wpcf7 .subject .wpcf7-list-item:has(:checked) label::before,
.wpcf7 .subject .wpcf7-list-item:has(:checked) .wpcf7-list-item-label {
	filter: none;
}
.wpcf7 textarea {
	height: 2.8lh;
	resize: vertical;
}

@media (width >= 600px) {
	.wpcf7 .wpcf7-form .name > .wpcf7-form-control-wrap,
	.wpcf7 .email,
	.wpcf7 .phone {
		flex: 1 0 45%;
	}
}

/* DOCUMENTATION */

.documentation table {
	border-spacing: 0;
}
.documentation th,
.documentation td {
	text-align: start;
	vertical-align: top;
	padding-block: 0.15lh;
	padding-inline: 0.3em;
}
.documentation th:first-child,
.documentation td:first-child {	
	padding-inline-start: 0;
}
.documentation th:last-child,
.documentation td:last-child {
	padding-inline-end: 0;
}
.documentation th p:first-child,
.documentation td p:first-child {
	margin-block-start: 0;
}
.documentation th p:last-child,
.documentation td p:last-child {
	margin-block-end: 0;
}
.documentation thead tr th {
	border-block: 2px solid;
}
.documentation th,
.documentation th p {
	font-weight: 500;
}
.documentation h2 {
	font-size: var(--fs-2);
}
.documentation h3 {
	font-size: var(--fs-1);
}
.documentation h4,
.documentation h5 {
	font-size: var(--fs-0);
}
.documentation ol {
	counter-reset: item;
}
.documentation .x-text > ol {
	margin-inline-start: 0;
	padding-inline-start: 0;
}
.documentation ol li {
	display: block;
	margin-block-end: 1.5rem;
}
.documentation > ol > li:not(:first-child) {
	margin-block-start: 2rem;
}
.documentation ol li ol,
.documentation ol li table {
	margin-block-start: 1rem;
}
.documentation ol li::before {
	content: counters(item, '.') '.';
	counter-increment: item;
	margin-inline-end: 1rem;
	font-weight: 500;
}
.documentation ol li h2,
.documentation ol li h3 {
	display: inline-block;
	margin-block: 0;
}
.documentation ol li h3,
.documentation ol li h4,
.documentation ol li:has(> h3)::before,
.documentation ol li:has(> h4)::before {
	font-size: var(--fs-0);
}
.documentation .x-text > ol > li:has(> h2)::before {
	font-family: var(--heading-font);
	color: var(--foreground-heading);
	font-size: var(--fs-2);
	font-weight: 600;
}
@media (width >= 600px) {
	.documentation table {
		margin-inline: inherit;
	}
	.documentation table th,
	.documentation table td {
		font-size: var(--fs--1);
	}
}
