/* FONTS */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wdth,wght@0,75..100,100..700;1,75..100,100..700&display=swap');

@font-face {
	font-family: Canela;
	src: url('../fonts/canela.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
}

/* DEFINITIONS */

:root {
	--white: #FFFFFF;
	--black: #000000;
	--beige: #F4EFE5;
	--light-beige: color-mix(in lab, var(--beige), var(--white));
	--light-grey: #C3C3C3;
	--dark-grey: #767676;
	--orange: #FF5215;
	--orange-dark: #DA3900;
	--accent: var(--orange);
	--accent-dark: var(--orange-dark);
	--foreground: var(--black);
	--background: var(--white);
	--dark-foreground: var(--white);
	--dark-background: var(--black);
	--accent-foreground: var(--black);
	--accent-background: var(--accent);
	--shaded-background: var(--beige);
	--link: var(--accent);
	--link-interaction: color-mix(in lab, var(--link) 80%, var(--foreground));
	--page-margin-inline: clamp(1.1rem, 3.5vw, 1.9rem);
	--page-max-inline-size: 1380px;
	--page-inline-size: min(var(--page-max-inline-size), 100% - var(--page-margin-inline) * 2);
	--post-inline-size: min(900px, 100% - var(--page-margin-inline) * 2);
	--section-margin-block: clamp(5rem, 5vw + 5vh, 20rem);
	--cell-margin-inline: clamp(2.5rem, 5vw, 6rem);
	--cell-margin-block: clamp(2rem, 6vw, 5.8rem);
	--admin-bar-block-size: 0px;
	--body-font: 'IBM Plex Sans', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
	--heading-font: Canela, 'Times New Roman', serif;
	--fs-5: clamp(2.9rem, 4.2vi + 1.9rem, 5.15rem);
	--fs-4: clamp(1.9rem, 3vi + 1.6rem, 3.75rem);
	--fs-3: clamp(1.6rem, 2vi + 1.2rem, 2.7rem);
	--fs-2: clamp(1.3rem, 1.3vi + 1.05rem, 1.9rem);
	--fs-1: clamp(1rem, 0.65vi + 0.8rem, 1.4rem);
	--fs-0: clamp(0.97rem, 0.36vi + 0.85rem, 1.1rem);
	--fs--1: clamp(0.9rem, 0.35vi + 0.55rem, 1rem);
	--fs--2: clamp(0.85rem, 0.3vi + 0.41rem, 0.92rem);
}

@media (prefers-contrast: more) {
	:root {
		--accent-background: color-mix(in lab, var(--accent) 30%, var(--white));
	}
}

/* GENERAL */

div, span, h1, h2, h3, h4, h5, ul, ol, li, p, section, main, header, footer, a, button, input, select, textarea, mark {
	outline-style: none;
	/* outline: 1px solid #00F2; */
}
html {
	scroll-padding-block-start: 8.7rem;
}
body {
	font-family: 'IBM Plex Sans', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;
	font-family: var(--body-font);
	color: var(--foreground);
	background-color: var(--background);
	font-weight: 400;
	font-size: var(--fs-0);
}
input,
textarea,
select {
	font-family: inherit;
}
.x-site > .x-container.width {
	inline-size: auto;
	max-inline-size: none;
}
.x-container .x-section,
.x-container .x-row,
.x-container .x-col {
	transition: none;
}
.x-section > .x-container.width {
	inline-size: var(--page-inline-size);
	max-inline-size: none;
}
.accent-headings :is(h1, h2, h3) {
	--foreground: var(--accent);
}
.beige {
	--background: var(--beige);
	background-color: var(--background);
}
.dark {
	--foreground: var(--dark-foreground);
	--background: var(--dark-background);
	--link: var(--dark-foreground);
	--link-interaction: color-mix(in lab, var(--accent) 80%, var(--dark-foreground));
}
.accent,
.accent-background {
	--foreground: var(--accent-foreground);
	--background: var(--accent-background);
	--link: var(--accent-foreground);
	--link-interaction: color-mix(in lab, var(--accent-foreground) 80%, var(--accent-background));
}
.dark div,
.dark p,
.dark li,
.dark .x-text {
	color: var(--foreground);
}
a {
	color: var(--link);
	text-decoration: none;
}
a:hover {
	color: var(--link-interaction);
	text-decoration: underline;
	text-decoration-color: var(--accent);
}
a:focus-visible {
	outline: 1.5px solid var(--foreground);
	outline-offset: 2px;
}
h1 > a:hover,
h2 > a:hover,
h3 > a:hover,
.listing h4 > a:hover,
.x-site h1 > a:hover,
.x-site h2 > a:hover,
.x-site h3 > a:hover,
#header nav a:hover,
.cta a:hover,
.button:hover,
.x-btn:hover,
.x-site .cta a:hover,
.x-site .button:hover,
.x-site .x-btn:hover {
	text-decoration: none;
}
button:focus-visible,
.x-btn:focus-visible,
header .x-anchor:focus-visible,
#navigation-main .menu-item-parent > a:focus-visible {
	outline-width: 3px;
	outline-offset: 0;
}
nav ul {
	list-style: none;
	margin-inline: 0;
	margin-block: 0;
	padding-inline: 0;
}
h1,
h2,
h3,
nav a {
	text-wrap: balance;
}
div,
p,
li {
	text-wrap: pretty;
}
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);
	font-weight: 400;
	line-height: 140%;
}
h1,
h2,
h3,
.x-container h1,
.x-container .h1,
.x-section h1,
.x-section .h1,
.x-container h2,
.x-container .h2,
.x-section h2,
.x-section .h2,
.entry-content h2,
.entry-content .h2,
.x-container h3,
.x-container .h3,
.x-section h3,
.x-section .h3 {
	font-family: Canela, 'Times New Roman', serif;
	font-family: var(--heading-font);
	font-weight: 500;
}
.x-container h1,
.x-container .h1,
.x-section h1,
.x-section .h1 {
	font-size: var(--fs-5);
	line-height: 100%;
	hyphens: auto;
}
.x-container h2,
.x-container .h2,
.x-section h2,
.x-section .h2 {
	font-size: var(--fs-4);
	line-height: 100%;
	hyphens: auto;
}
.x-container h3,
.x-container .h3,
.x-section h3,
.x-section .h3 {
	font-size: var(--fs-3);
	line-height: 100%;
	hyphens: auto;
}
.x-container h4,
.x-container .h4,
.x-section h4,
.x-section .h4 {
	font-size: var(--fs-2);
}
.x-container h5,
.x-container .h5,
.x-section h5,
.x-section .h5 {
	font-size: var(--fs-1);
}
::selection {
	color: var(--white);
	background-color: color-mix(in lab, var(--dark-grey), var(--black));
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
.x-text {
	color: var(--foreground);
}
h2.accent,
h3.accent,
h4.accent,
p.accent,
span.accent {
	color: var(--accent);
}
h1,
h2,
.x-text > :first-child {
	margin-block-start: 0;
}
.small-large:has(h2:first-child + :is(h3, p)) :first-child,
.small-large:has(h3:first-child + :is(h4, p)) :first-child {
	display: inline-flex;
	font-family: var(--body-font);
	font-size: var(--fs-0);
	font-weight: 400;
	margin-block: 0;
	text-transform: uppercase;
}
.x-section:not(.accent, .documentation) .x-row:first-child .x-col:first-child .small-large:has(h2:first-child + :is(h3, p)) :first-child {
	color: inherit;
}
.small-large :first-child + :is(h3, p),
.small-large :first-child + :is(h4, p) {
	font-family: var(--heading-font);
	font-size: var(--fs-4);
	margin-block-start: 0;
}
.x-text > :last-child {
	margin-block-end: 0;
}
svg {
	inline-size: 100%;
	block-size: auto;
}
mark {
	--accent-foreground: var(--white);
	color: var(--accent-foreground);
	background-color: var(--accent-background);
	margin-block: 0;
	padding-inline: 1rem;
	line-height: 120%;
}
@media (width >= 500px) and (height >= 500px) {
	html,
	html > body {
		overflow-x: initial;
	}
}
@media (width >= 768px) {
	.x-container h1,
	.x-container .h1,
	.x-section h1,
	.x-section .h1,
	.stats .number,
	.x-container h2,
	.x-container .h2,
	.x-section h2,
	.x-section .h2,
	.x-container h3,
	.x-container .h3,
	.x-section h3,
	.x-section .h3 {
		hyphens: inherit;
	}
	.x-container.max {
		max-inline-size: var(--page-max-inline-size);
	}
}
@media (width >= 1480px) {
	.x-section.lines .x-row .x-col:only-child {
		margin-inline: auto;
	}
	.x-section.lines .x-row {
		padding-inline: 0;
	}
}
@media (height >= 800px) {
	.x-site > .x-main.full,
	.x-site > .x-container.width,
	.x-site > .x-layout {
		min-block-size: calc(100dvh - 40rem);
	}
}

/* HEADER */

header.x-masthead {
	background-color: var(--background);
	z-index: 200;
}
header.x-masthead > .x-bar {
	border-block-end: 1px solid var(--light-grey);
	padding-inline-start: var(--page-margin-inline);
}
header.x-masthead .x-bar-content {
	flex: 1 0 100%;
	margin-inline: auto;
	gap: var(--fs-1);
}
header nav ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 0;
}
header nav li {
	flex: auto;
	margin-block: 0;
	margin-inline: 0;
}
header nav a {
	color: var(--foreground);
	line-height: 110%;
	position: relative;
}
header nav li a:hover {
	color: inherit;
	text-decoration: none;
}
header #isi-logo {
	flex: 1 0 2rem;
}
header .logo a {
	inline-size: min(100%, 2.5rem);
	display: flex;
}
header .logo a svg {
	display: flex;
	flex: 1 0 100%;
}
#isi-navigation {
	position: inherit;
}
#navigation-main .menu-item-parent > a {
	display: flex;
	align-items: center;
	min-block-size: 3.3lh;
	padding-inline: 1em;
}
#navigation-main .menu-item-parent.menu-item-has-children > a {
	padding-inline-end: 1.7em;
}
#navigation-main .menu-item:is(:hover, :focus-visible, :focus-within) {
	color: var(--accent-foreground);
	background-color: var(--accent-background);
	box-shadow: 0 1px 0 0 var(--accent-background);
}
#navigation-main .menu-item-parent.menu-item-has-children {
	position: inherit;
}
nav .sub-menu {
	--foreground: var(--accent-foreground);
	--background: var(--accent-background);
	position: absolute;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(29ch, 1fr));
	background-color: var(--background);
	gap: var(--fs-2);
	justify-items: start;
	align-items: stretch;
	inset-inline: 0;
	padding-block: 1.7lh;
	padding-inline: var(--page-margin-inline);
	visibility: hidden;
	clip-path: inset(0% 0% 1rem 0% round 0px);
	transition: 0.2s clip-path ease-in-out;
	transition-behavior: allow-discrete;
	pointer-events: none;
	z-index: -1;
}
nav .menu-item:is(:hover, :focus-visible, :focus-within) > .sub-menu {
	visibility: visible;
	pointer-events: inherit;
	clip-path: inset(0% 0% 0rem 0% round 0px);
}
nav .menu-item:hover > .sub-menu {
	z-index: 101;
}
nav .menu-item:is(:focus-visible, :focus-within) > .sub-menu {
	z-index: 100;
}
header nav .sub-menu ul {
	gap: var(--fs-0);
}
header nav .sub-menu li {
	flex: 1 0 min(14rem, 100%);
	display: grid;
	place-content: start stretch;
}
#navigation-main .menu-item-parent.menu-item-has-children > a::after,
#navigation-actions .language-trigger::after {
	position: absolute;
	display: flex;
	content: '▼';
	color: transparent;
	inline-size: 0.6em;
	block-size: 0.6em;
	inset: auto 0 auto auto;
	margin-block-start: 0.1em;
	background: transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZjUyMTUiIHZpZXdCb3g9IjAgMCAxMCA2Ij48cGF0aCBkPSJNNC43NjMgNiAwIDBoOS41MjZ6Ii8+PC9zdmc+") scroll no-repeat 50% 50% / 100% auto;
	transform-origin: 50% 50%;
	transition: 0.2s filter linear, 0.05s scale ease-in-out 0.05s;
}
#navigation-main .menu-item-parent.menu-item-has-children > a::after {
	inset-inline-end: 0.6em;
}
#navigation-main .menu-item.menu-item-parent:is(:hover, :focus-visible, :focus-within) > a::after,
#navigation-actions button:is(:hover, :focus-visible, :focus-within)::after,
#navigation-actions .language-trigger[aria-expanded="true"]::after {
	filter: brightness(0%);
}
#navigation-main .menu-item.menu-item-parent:is(:hover, :focus-visible, :focus-within) > a::after,
#navigation-actions .language-trigger[aria-expanded="true"]::after {
	scale: 1 -1;
}
header nav .overview > h2,
header nav .overview > h3,
header nav .menu-item-has-children > h2,
header nav .menu-item-has-children > h3 {
	font-family: var(--body-font);
	font-size: var(--fs--1);
	font-weight: 500;
	text-transform: uppercase;
}
header nav .overview > h2,
header nav .overview > h3,
header nav .menu-item-has-children > h2:first-child,
header nav .menu-item-has-children > h3:first-child {
	margin-block-start: 0;
}
#header nav .sub-menu :is(li, .cta) a {
	outline: calc(var(--fs-0) * 0.2) solid transparent;
	transition: 0.2s background-color linear, 0.2s outline linear;
}
#header nav .sub-menu .menu-item > a {
	display: block;
}
#header nav .sub-menu :is(li, .cta) a:hover {
	background-color: color-mix(in lab, var(--white) 30%, transparent);
	outline: calc(var(--fs-0) * 0.5) solid color-mix(in lab, var(--white) 30%, transparent);
	text-decoration: none;
}
#header-network ul {
	gap: var(--fs-1);
}
#header-network li {
	font-size: var(--fs--1);
}
#navigation-network li > a:hover {
	text-decoration: underline;
	text-decoration-color: var(--foreground);
}
#navigation-actions li {
	display: flex;
	align-items: center;
}
#navigation-actions .menu-item > a,
#navigation-actions .menu-item > a:hover {
	color: transparent;
	text-decoration-color: transparent;
}
#navigation-actions .menu-item:is(.search, .login) > a {
	display: flex;
	color: transparent;
	font-size: 1px;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-position: 50% 50%;
	background-size: auto 100%;
	inline-size: 1rem;
	block-size: 1rem;
	text-align: center;
	transition: 0.2s filter linear;
}
#navigation-actions .menu-item:is(.search, .login) > a:is(:hover, :focus-visible),
#navigation-actions .language-trigger:is(:hover, :focus-visible, :focus-within)::after {
	filter: brightness(0%);
}
#navigation-actions button {
	position: relative;
	background-color: transparent;
	font-weight: inherit;
	text-transform: inherit;
	padding-inline: 0;
	padding-block: 0;
}
#navigation-actions .menu-item.language:empty {
	display: none;
}
#navigation-actions .language-trigger::after,
#navigation-actions button .language-name {
	display: none;
}
#navigation-actions button .language-code {
	display: flex;
}
header .x-bar-container > .x-anchor {
	font-size: var(--fs--2);
	text-align: center;
	padding-inline: 2.1ex;
}
.x-masthead .x-bar-container.isi-network,
.x-masthead .x-bar-container.isi-demo {
	display: none;
}
header .x-bar-container.mobile-navigation-toggle > .x-anchor {
	font-size: var(--fs-2);
	aspect-ratio: 1;
	box-shadow: 0 0 0 1px var(--dark-background);
	inline-size: 2.8em;
	padding-inline: 0;
}
@media (width >= 600px) {
	header.x-masthead > .x-bar {
		padding-inline: var(--page-margin-inline);
	}
	.x-masthead .x-bar-container.isi-network,
	.x-masthead .x-bar-container.isi-demo {
		display: flex;
	}
	.x-masthead .mobile-navigation-toggle.x-bar-container {
		display: none;
	}
}
@media (width >= 768px) {
	header.x-masthead {
		position: sticky;
		inset-block-start: calc(-35px + var(--admin-bar-block-size));
	}
	header.x-masthead .x-bar-content.x-container.width {
		flex: 1;
	}
	header #isi-logo {
		flex: 0 1 3.4rem;
	}
	#navigation-main .sub-menu > .overview ~ ul {
		gap: var(--fs-1);
	}
	#navigation-main .sub-menu > .overview ~ ul,
	#navigation-main .sub-menu > .overview ~ ul:has(li:nth-child(2)) > li:not(:first-child) {
		border-inline-start: 1px solid var(--accent-dark);
	}
	#navigation-main .sub-menu > .overview ~ ul:has(li:nth-child(2)) > li {
		padding-inline: calc(var(--fs-2) * 1);
	}
	#navigation-main .sub-menu > .overview ~ ul:has(li:nth-child(2)) > li:last-child {
		padding-inline-end: 0;
	}
	#navigation-main .sub-menu > .overview ~ ul:has(li:nth-child(2):last-child > :is(h2, h3)) {
		display: grid;
		grid-column: 2 / 4;
		grid-template-columns: repeat(2, 1fr);
	}
	#navigation-main .sub-menu > .overview ~ ul:has(li:nth-child(3):last-child > :is(h2, h3)) {
		grid-column: 2 / 5;
		grid-template-columns: repeat(3, 1fr);
	}
	#navigation-main .sub-menu > .overview ~ ul:has(li:nth-child(2) > :is(h2, h3)) :is(h2, h3) {
		margin-block-end: 0.7lh;
	}
	#header-network {
		block-size: 35px;
	}
	#navigation-actions button {
		padding-inline-end: 1.1em;
	}
	#navigation-actions .language-trigger::after {
		display: flex;
		inset-block-start: 0.5em;
	}
	header .x-bar-container > .x-anchor {
		font-size: var(--fs-0);
		padding-inline: 3.1ex;
	}
}
@media (width >= 1000px) {
	nav .sub-menu {
		grid-template-columns: repeat(auto-fill, minmax(clamp(29ch, 20vw, 35ch), 1fr));
	}
}
@media (width >= 1400px) {
	header.x-masthead .x-bar-content {
		flex: 0 1 min(100%, var(--page-inline-size));
	}
}
@media (prefers-reduced-motion: reduce) {
	#navigation-main .menu-item-parent.menu-item-has-children > a::after,
	#navigation-actions .language-trigger::after {
		transition: none;
	}
}
@media (prefers-reduced-motion: reduce) or (prefers-contrast: more) {
	nav .sub-menu {
		transition: none;
	}
}

/* MOBILE NAVIGATION */

#navigation-main,
#navigation-actions {
	display: none;
}
.isi-navigation-mobile {
	position: fixed;
	inset: var(--admin-bar-block-size) 0 0 0;
	z-index: 300;
	background-color: var(--background);
	overflow: hidden;
	translate: 100% 0;
	transition: translate 0.25s ease;
}
.isi-navigation-mobile.open {
	translate: 0 0;
}
.mobile-nav-close {
	position: absolute;
	inset-block-start: 0;
	inset-inline-end: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	inline-size: 3.5rem;
	block-size: 3.5rem;
	background-color: var(--foreground);
	cursor: pointer;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}
.mobile-nav-panels {
	position: relative;
	block-size: 100%;
	overflow: hidden;
}
.mobile-nav-panel {
	position: absolute;
	overflow: clip auto;
	padding-inline: 0;
	padding-block: 3.5rem 1.5rem;
	inset: 0;
	translate: 0 0;
	transition: translate 0.25s ease;
}
.mobile-nav-panel--root.shifted {
	translate: -100% 0;
}
.mobile-nav-panel:not(.mobile-nav-panel--root) {
	translate: 100% 0;
}
.mobile-nav-panel:not(.mobile-nav-panel--root).active {
	translate: 0 0;
}
.isi-navigation-mobile .x-nav li {
	padding-inline: var(--page-margin-inline);
}
.isi-navigation-mobile .x-nav ul > li {
	flex: 1 0 100%;
}
.isi-navigation-mobile .x-nav li li {
	padding-inline: 0;
}
.mobile-nav-back {
	display: flex;
	align-items: center;
	gap: 0.5em;
	padding: 0;
	margin-block: 0 1lh;
	font-size: var(--fs--1);
	text-transform: uppercase;
	font-weight: 500;
	cursor: pointer;
	padding-inline: calc(var(--page-margin-inline) + 1.5em) var(--page-margin-inline);
	border-block: 1px solid var(--light-grey);
	inline-size: 100dvw;
	padding-block: 0.8lh;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: var(--page-margin-inline) 50%;
	background-size: 0.5em auto;
}
.isi-navigation-mobile .logo {
	inline-size: min(2.7rem, 40%);
	display: flex;
	margin-inline: var(--page-margin-inline) 0;
	margin-block: 0.9rem 0;
	position: absolute;
	z-index: 10;
}
.mobile-nav-heading {
	font-size: var(--fs-2);
	margin-block: 1lh;
	margin-inline: var(--page-margin-inline);
}
.mobile-nav-panel .overview {
	margin-inline: var(--page-margin-inline);
}
.mobile-nav-panel .x-nav h3,
.mobile-nav-panel .overview h4,
.mobile-nav-panel .x-nav h4 {
	font-family: var(--body-font);
	font-size: var(--fs--2);
	font-weight: 500;
	text-transform: uppercase;
	margin-block: 0.6lh;
	color: var(--dark-grey);
}
.mobile-nav-panel .x-nav li > ul {
	padding-inline-start: 0;
	list-style: none;
	padding: 0;
	margin: 0;
}
.mobile-nav-separator {
	block-size: 1px;
	border-block-end: 1px solid var(--light-grey);
	margin-block: clamp(1.2rem, 2vh + 2vw, 2rem);
}
.isi-navigation-mobile .x-nav {
	display: flex;
	flex-direction: column;
	list-style: none;
	margin: 0;
	padding-block: 0.7lh;
	padding-inline: 0;
	border-block: 1px solid var(--light-grey);
}
.isi-navigation-mobile .menu-item > a,
.isi-navigation-mobile .mobile-nav-trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	inline-size: 100%;
	padding-block: 0.8rem;
	color: var(--foreground);
	text-decoration: none;
	font-size: inherit;
	font-weight: inherit;
	text-align: start;
	cursor: pointer;
	padding-inline: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: 100% 50%;
	background-size: 0.63rem auto;
}
.isi-navigation-mobile .request-demo {
	display: flex;
	justify-content: center;
	font-size: var(--fs-1);
	margin-block: 1.5rem 0;
	margin-inline: var(--page-margin-inline);
	padding-block: 1.3lh;
}
.isi-navigation-mobile .menu-item:has(a[href="#wpml_language_switcher_modal"]) {
	display: none;
}
@media (width >= 600px) {
	.isi-navigation-mobile,
	.mobile-nav-open {
		display: none;
	}
	#navigation-main,
	#navigation-actions {
		display: flex;
	}
}
@media (prefers-reduced-motion: reduce) {
	.isi-navigation-mobile,
	.mobile-nav-panel {
		transition: none;
	}
}

/* FOOTER */

footer,
footer .x-text,
footer nav li,
footer nav li > a,
footer .menu-item > h3 {
	font-size: var(--fs--1);
}
footer.x-colophon {
	--background: var(--beige);
	--link: var(--foreground);
	--link-interaction: var(--foreground);
	background-color: var(--background);
	padding-block-start: 1px;
}
footer .x-div {
	border-block-end: 1px solid var(--light-grey);
}
footer .x-div > .x-grid {
	margin-block: clamp(1.8rem, 2.2vw + 1.7vh, 3.1rem);
	inline-size: var(--page-inline-size);
	margin-inline: auto;
	gap: var(--fs--2);
}
footer .x-div.center > .x-grid {
	margin-block-start: clamp(2.1rem, 2.5vw + 1.9vh, 4rem);
}
footer .last {
	--foreground: var(--dark-grey);
	--link: var(--dark-grey);
	--link-interaction: var(--dark-grey);
}
footer.x-colophon ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 0.5lh var(--fs-0);
}
footer li {
	flex: 1 0 100%;
	margin: 0;
	padding: 0;
}
footer a {
	color: var(--foreground)
}
footer svg {
	inline-size: var(--fs-0);
	block-size: auto;
}
footer li > a {
	display: flex;
	flex-wrap: wrap;
}
footer a:hover {
	color: var(--link-interaction);
	text-decoration-color: var(--link-interaction);
}
footer .logo-slogan {
	display: flex;
	flex-wrap: wrap;
	font-size: var(--fs-1);
	align-items: center;
	gap: var(--fs-2);
}
footer .logo {
	display: flex;
	flex: 0 1 min(50%, 4.8rem);
}
footer .logo svg {
	inline-size: 100%;
}
footer .slogan {
	flex: 1 0 14ch;
}
footer h2,
footer .x-cell > h2,
footer .menu-item-has-children.menu-item-parent > a {
	margin-block: 0 1lh;
	line-height: 120%;
}
footer h2,
footer .x-cell > h2,
footer .menu-item > h2 {
	font-family: var(--body-font);
	font-size: var(--fs-1);
	font-weight: 500;
}
footer h2,
footer h3,
footer .x-cell > h2,
footer .x-cell > h3,
footer .menu-item-has-children.menu-item-parent > a {
	font-size: var(--fs-1);
	margin-block-start: 0;
}
footer .menu-item > h3,
footer .menu-item-has-children.menu-item-child > a {
	font-family: var(--body-font);
	color: var(--dark-grey);
	margin-block: 0;
	text-transform: uppercase;
}
footer .menu-item > h2,
footer .menu-item > h3 {
	margin-block: 0 1.6lh;
}
footer #navigation-footer .menu-item {
	flex: 1 0 13rem	;
}
footer #navigation-footer .menu-item-parent,
footer #navigation-footer .menu-item-child.menu-item-has-children {
	margin-block-end: 1lh;
}
footer .newsletter-social-media li {
	flex: 0 1 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
footer .newsletter-social-media li .button {
	display: flex;
	flex: 0 1 auto;
	padding-inline: 1.5ex;
	padding-block: 0.4lh;
}
footer .product-navigation span {
	display: flex;
}
footer .product-navigation ul {
	gap: clamp(0.5rem, 2.8vh, 1.4lh) var(--fs-0);
}
footer .product-navigation li {
	display: grid;
	grid-template-columns: 1fr 1fr;
	font-size: var(--fs--1);
	place-items: end start;
	gap: 0;
}
footer .product-navigation .logo {
	transform-origin: 0% 0%;
}
footer .product-navigation .logo svg {
	inline-size: auto;
	block-size: var(--fs-0);
}
footer .product-navigation a {
	position: relative;
}
footer .product-navigation li > a:first-child,
footer .product-navigation span {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.5lh;
}
footer .product-navigation li > a:last-child {
	display: flex;
	gap: var(--fs--2);
	border-inline-start: 1px solid;
	padding-inline-start: 1.4em;
	align-items: center;
	line-height: 120%;
}
footer .product-navigation .icon {
	inline-size: 0.9em;
	block-size: auto;
}
footer .product-navigation .icon svg {
	inline-size: 100%
}
footer .product-navigation .icon svg path {
	fill: var(--foreground);
}
footer #navigation-legal ul {
	justify-content: start;
}
footer #navigation-legal li {
	flex: 0 1 auto;
}
@media (width >= 768px) {
	footer h2,
	footer .x-cell > h2,
	footer .menu-item-has-children.menu-item-parent > a {
		margin-block-end: 1.3lh;
	}
	footer #navigation-footer .menu-item-parent {
		margin-block-end: 0;
	}
	footer .newsletter-social-media {
		justify-content: flex-end;
	}
	footer .attribution {
		text-align: end;
	}
}
@media (width >= 1200px) {
	footer .product-navigation .logo {
		margin-block-end: 0.05lh;
		scale: 1.1;
	}
	footer .product-navigation li > a:last-child {
		translate: -0.6em 0;
	}
}

/* BUTTONS */

.button,
.button a,
.x-anchor .x-anchor-content > .x-anchor-text > .x-anchor-text-primary,
.x-anchor .x-anchor-content > .x-anchor-text > .x-anchor-text-secondary,
.wp-block-button__link.wp-element-button {
	font-family: inherit;
	font-weight: inherit;
	font-style: inherit;
}
.button,
.button a,
header .x-anchor,
.wp-block-button__link.wp-element-button,
.form-area .hs-form input[type="submit"],
.form-area .hs-form button[type="submit"] {
	position: relative;
	contain: content;
	display: inline-flex;
	font-size: var(--fs-0);
	color: var(--dark-foreground);
	background-color: var(--dark-background);
	padding-inline: 3.1ex;
	padding-block: 0.8lh;
	text-transform: uppercase;
	font-weight: 500;
	transition: 0.3s background-color linear, 0.3s color linear, 0.3s box-shadow linear;
}
.wp-block-button__link.wp-element-button {
	border: none;
	border-radius: 0;
}
.button.small,
.cards .button,
.more > .button,
.x-tabs .button,
.links .x-col:last-child .button,
#title .x-row:last-child .button {
	font-size: var(--fs--1);
	font-weight: 400;
	line-height: 110%;
}
a.button.secondary,
.button.secondary a,
.isi-pagination .button {
	color: inherit;
	background-color: transparent;
	box-shadow: 0 0 0 1px inset;
}
.button:hover,
.x-btn:hover,
.x-btn:focus-visible,
.wp-block-button__link.wp-element-button:hover,
.wp-block-button__link.wp-element-button:focus-visible,
.isi-pagination .button:hover,
.isi-pagination .button:focus-visible,
.form-area .hs-form input[type="submit"]:hover,
.form-area .hs-form button[type="submit"]:hover,
.form-area .hs-form input[type="submit"]:focus-visible,
.form-area .hs-form button[type="submit"]:focus-visible {
	color: var(--dark-foreground);
	background-color: var(--dark-grey);
	text-decoration: none;
}
a.button.secondary:hover,
a.button.secondary:focus-visible,
.button.secondary a:hover,
.button.secondary a:focus-visible {
	color: inherit;
	background-color: color-mix(in lab, var(--foreground) 5%, transparent);
	box-shadow: 0 0 0 2px inset;
}
.dark .button,
.dark .x-btn,
.dark .button a {
	color: var(--black);
	background-color: var(--white);
}
.dark .button:hover,
.dark .x-btn:hover,
.dark .button a:hover,
.dark .x-btn:focus-visible {
	color: var(--black);
	background-color: var(--light-grey);
}
nav .button:is(.previous, .next) {
	color: transparent;
	font-size: 1px;
	aspect-ratio: 1;
	inline-size: var(--fs-4);
	display: inline-flex;
	justify-content: center;
	align-content: center;
	background: var(--dark-background) scroll no-repeat 50% 50% / 18.5% auto;
}

/* LINK WITH TRIANGLE */

.cta a:not(.button) {
	padding-inline-end: 1em;
}
.cta a:not(.button)::after,
a.triangle::after {
	content: '▶';
	font-size: 0.55em;
	margin-inline-start: 1em;
	position: absolute;
	z-index: 0;
}
.cta a:not(.button)::after {
	margin-block-start: 0.15lh;
}
a.triangle::after {
	margin-block-start: 0.05em;
}

/* ICONS */

nav .button.previous {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZmYiIHZpZXdCb3g9IjAgMCA5IDEzIj48cGF0aCBkPSJNMCA2LjQ5NSA4LjE4MiAwdjEyLjk5eiIvPjwvc3ZnPg==");
}
nav .button.next {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZmYiIHZpZXdCb3g9IjAgMCA5IDEzIj48cGF0aCBkPSJNOC4xODIgNi40OTUgMCAxMi45OVYweiIvPjwvc3ZnPg==");
}
.isi-post-search button,
#navigation-actions .menu-item.search > a {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZjUyMTUiIHZpZXdCb3g9IjAgMCAxNSAxNSI+PHBhdGggZmlsbD0iI2ZmNTIxNSIgZD0iTTUuNzAyIDBhNS43MDMgNS43MDMgMCAwIDEgNC45OTQgOC40NTdsNC4yMDcgNC4zMDNMMTIuNjY0IDE1bC00LjIwNy00LjMwM0E1LjcwMiA1LjcwMiAwIDEgMSA1LjcwMiAwIj48L3BhdGg+PC9zdmc+");
}
#navigation-actions .menu-item.login > a {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZjUyMTUiIHZpZXdCb3g9IjAgMCAxMyAxNSI+PHBhdGggZD0iTTEuMjEgMTVoMTEuNDgyYzAtMi40NzMtMS4yMS00Ljc1OC0zLjE3My01Ljk5NWE1Ljg5IDUuODkgMCAwIDAtNi4zNDYgMEMxLjIxIDEwLjI0IDAgMTIuNTI2IDAgMTV6Ij48L3BhdGg+PHBhdGggZD0iTTEwLjM4MyAzLjg0MWEzLjg0IDMuODQgMCAxIDEtNy42ODEtLjAwMiAzLjg0IDMuODQgMCAwIDEgNy42ODEuMDAyIj48L3BhdGg+PC9zdmc+");
}
.isi-post-filter .term.selected .toggle,
.isi-post-filter .term:not(.selected) a:hover .toggle {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmNGVmZTUiIHZpZXdCb3g9IjAgMCAxMiA5Ij48cGF0aCBkPSJtMy43MzMgNy4wNjctMi44LTIuOEwwIDUuMmwzLjczMyAzLjczMyA4LThMMTAuOCAweiIvPjwvc3ZnPg==");
}
.cards .cta a,
.cards .cta .button {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZmYiIHZpZXdCb3g9IjAgMCA5IDEzIj48cGF0aCBkPSJNOC4xODIgNi40OTUgMCAxMi45OVYweiIvPjwvc3ZnPg==");
}
.isi-navigation-mobile .mobile-nav-trigger {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNGRjUyMTUiIHZpZXdCb3g9IjAgMCA5IDEzIj48cGF0aCBkPSJNOC4xODIgNi40OTUgMCAxMi45OVYweiIvPjwvc3ZnPg==");
}
.isi-pagination .next .button {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5IDEzIj48cGF0aCBkPSJNOC4xODIgNi40OTUgMCAxMi45OVYweiIvPjwvc3ZnPg==");
}
.isi-pagination .previous .button,
.mobile-nav-back {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2IiBoZWlnaHQ9IjExIiB2aWV3Qm94PSIwIDAgNiAxMSI+PHBhdGggZD0iTTAgNS41IDYgMHYxMXoiLz48L3N2Zz4=");
}
.isi-posts .unloaded::before,
.isi-posts .featured-image.empty,
.single-post #title .x-row:first-child .x-col:empty,
.single-event #title .x-row:first-child .x-col:empty {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MSIgaGVpZ2h0PSIzNCIgZmlsbD0iI0ZGRiIgdmlld0JveD0iMCAwIDUxIDM0Ij48cGF0aCBkPSJNMzYuMzkgMTUuNDVjLTMuMjItMS41Ny03LjA0LTItMTAuNzMtMi40Mi04Ljc2LS45OC05LjU2LTIuNTItOS41Ni01LjE4SDguMDVjMCA1LjE5IDIuMTMgOC41MyA2LjU2IDEwLjcgMy4yMiAxLjU3IDcuMDMgMiAxMC43MyAyLjQxIDguNzUuOTkgOS41NSAyLjUzIDkuNTUgNS4yaDguMDZjMC01LjItMi4xMy04LjU1LTYuNTYtMTAuN00zMi4yMSAwaC0xNi4xdjcuODVoMjQuMTV6Ii8+PHBhdGggZD0iTTguMDcgNy45MiA4LjA1IDBIMHYzNGg4LjA1ek01MSAwaC04LjA1djM0SDUxek0xMC43NCAyNi4xNSAxOC43OSAzNGgxNi4xdi03Ljg1eiIvPjwvc3ZnPg==");
}
.mobile-nav-close {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgZmlsbD0iI2ZmZiIgdmlld0JveD0iMCAwIDE4IDE4Ij48cGF0aCBkPSJNMTcuNSAxLjc2IDE1Ljc0IDAgOC43NSA2Ljk5IDEuNzYgMCAwIDEuNzZsNi45OSA2Ljk5TDAgMTUuNzRsMS43NiAxLjc2IDYuOTktNi45OSA2Ljk5IDYuOTkgMS43Ni0xLjc2LTYuOTktNi45OXoiLz48L3N2Zz4=");
}

/* IMAGES */

.screenshot.cropped {
	display: flex;
	background-color: var(--beige);
	padding-block: var(--fs-3) 0;
	padding-inline: var(--fs-3) 0;
	overflow: hidden;
}
.screenshot.cropped img {
	display: flex;
	aspect-ratio: 1;
	object-fit: cover;
	object-position: 0% 0%;
	box-shadow: 0 0 0.9em color-mix(in lab, var(--black) 25%, transparent);
	border-radius: 8px 0 0 0;
}

/* BREADCRUMBS */

#breadcrumbs {
	--foreground: var(--dark-grey);
	--link: var(--dark-grey);
}
.x-container:has(#title.accent.wide) #breadcrumbs .x-row {
	inline-size: auto;
	max-inline-size: none;
	margin-inline: var(--page-margin-inline);
}
#breadcrumbs ul,
#breadcrumbs nav {
	margin-block: clamp(2rem, 2vh, 4rem);
}
#breadcrumbs ul {
	list-style: none;
	margin-inline: 0;
	padding-inline: 0;
	display: flex;
}
#breadcrumbs .x-crumbs-list {
	padding: 0;
	font-size: 0;
}
#breadcrumbs li {
	font-size: var(--fs--1);
	line-height: 110%;
}
#breadcrumbs .x-crumbs-list li:first-child {
	margin-inline-start: 0;
}
#breadcrumbs ul li:not(:first-child)::before,
#breadcrumbs .x-crumbs-delimiter {
	position: relative;
	display: inline-flex;
	color: var(--dark-grey);
	font-size: 0.9em;
}
#breadcrumbs ul li:not(:first-child)::before {
	content: '>';
	margin-inline: 1em;
	translate: 0 -0.05lh;
}
#breadcrumbs .x-crumbs-current {
	pointer-events: none;
}

/* HERO AND TITLE */

#title {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	margin-inline: auto;
}
#title.hero {
	min-block-size: clamp(18rem, 32vw + 32vh, 28rem);
}
.home #title.hero {
	min-block-size: clamp(20rem, 43vw + 43vh, 41rem);
}
#title.accent {
	--foreground: var(--accent-foreground);
	background-color: var(--accent-background);
	margin-inline: 0;
	max-inline-size: none;
}
header:has(nav .menu-item-has-children.menu-item-parent:is(:hover, :focus-visible, :focus-within)) + .x-container #title.accent,
.home header:has(nav .menu-item-has-children.menu-item-parent:is(:hover, :focus-visible, :focus-within)) + .x-main #title.hero {
	filter: opacity(0.75);
}
#title.hero .x-row {
	grid-area: 1 / 1 / 2 / 2;
	margin-inline: auto;
	padding: 0;
	inline-size: var(--page-inline-size);
}
#title.hero .x-row-inner,
#title.hero .x-col {
	flex-basis: 100%;
	margin-inline: 0;
	padding-inline: 0;
	transition: 0.2s translate linear;
}
#title.hero .x-row:last-child {
	justify-self: end;
	place-items: end;
	z-index: 1;
}
#title:has(.x-image) .x-row:first-child {
	grid-area: 1 / 1 / 3 / 2;
	background-color: var(--light-grey);
}
.single-post #title:has(.x-image) .x-row:first-child,
.single-event #title:has(.x-image) .x-row:first-child {
	grid-area: 1 / 1 / 2 / 2;
}
#title:has(.x-image) .x-row:nth-child(2) {
	grid-area: 1 / 1 / 2 / 2;
}
#title:has(.x-image) .x-row:last-child {
	grid-area: 2 / 1 / 3 / 2;
}
#title:has(.x-image) .x-row:last-child :is(.x-row-inner, .x-col) {
	margin-block-end: 0;
	padding-block-end: 0;
}
#title.hero .x-row:has(.x-image) .x-col {
	display: grid;
}
#title:has(h1 + h2) :is(h1, h2, span, mark),
#title.accent:has(h1:only-child) :is(h1, span, mark) {
	--background: var(--accent-foreground);
	margin-block: 0;
}
#title.accent:has(h1 + h2) :is(h2, span, mark),
#title.accent:has(h1:only-child) :is(h1, span, mark) {
	--foreground: var(--accent);
	--background: var(--white);
}
#title h1:only-child {
	color: var(--accent);
	margin-block: clamp(2rem, 1.25vw + 1.25vh, 6rem) clamp(3rem, 2vw + 2vh, 10rem);
}
#title.accent h1:only-child {
	margin-block-start: 0;
}
#title.accent h1:only-child mark {
	background-color: var(--background);
	padding-block-end: 0.1lh;
	line-height: 122%;
}
#title h1 + h2 {
	font-size: var(--fs-5);
	inline-size: clamp(10ch, 100%, 15ch);
	--foreground: var(--accent);
}
#title.hero h1 + h2 {
	--foreground: var(--dark-foreground);
}
#title.accent h1 + h2,
#title.accent h1:only-child {
	inline-size: clamp(10ch, 100%, 18.5ch);
}
#title:has(h1 + h2) h1 {
	display: inline-flex;
	font-family: var(--body-font);
	font-size: var(--fs-0);
	font-weight: 400;
	padding-block: 0.4lh;
	text-transform: uppercase;
}
#title:has(h1 + h2) :is(h1, h2 span, h2 mark) {
	background-color: var(--accent-background);
	margin-block: 0;
	padding-inline: 1rem;
	line-height: 120%;
}
#title.accent:has(h1 + h2) :is(h2 span, h2 mark) {
	background-color: var(--background);
}
#title.accent:has(h1 + h2) :is(h1, h2 span, h2 mark) {
	padding-inline: var(--page-margin-inline);
}
#title:has(h1 + h2) :is(h2 span, h2 mark) {
	padding-block: 0 0.12lh;
}
#title.accent .isi-motif {
	fill: currentColor;
}
#title.accent:has(h1 + h2) h1:has(.isi-logo) {
	background-color: var(--white);
	padding-block: 0.4lh 0.5lh;
}
#title.accent:has(h1 + h2) .end:has(.isi-logo) {
	position: absolute;
	inset-block: auto 0;
	inset-inline: 0 auto;
	background-color: transparent;
	margin-block-end: 0.5lh;
	padding-block: 0;
	z-index: 1;
}
h1 .isi-logo,
#title h1 .isi-logo {
	inline-size: auto;
	block-size: var(--fs-1);
}
#title .end .isi-logo {
	block-size: var(--fs-2);
}
#title.accent .isi-motif {
	fill: var(--accent);
}
#title.accent:has(h1 + h2) .end:has(.isi-logo) .isi-motif {
	fill: var(--black);
}
#title.accent h1:has(.isi-logo) + h2 {
	margin-block-end: 1lh;
}
#title mark {
	color: var(--foreground);
	box-decoration-break: clone;
}
#title.hero .x-row:last-child .x-text {
	--background: var(--white);
	display: grid;
	background-color: var(--background);
	inline-size: clamp(20ch, 100%, 44.1ch);
	place-content: start end;
	margin-inline: auto 0;
	padding-block: 1.1lh 0;
	padding-inline: var(--page-margin-inline);
	box-shadow: 0 2px 0 0 var(--background);
	gap: var(--fs-1);
}
#title .x-row:last-child .x-text p,
#title .x-row:last-child .x-text li {
	display: flex;
	margin-block: 0;
	align-items: flex-end;
}
#title ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: var(--fs-0);
}
#title li {
	margin-inline: 0;
	padding-inline: 0;
}
#title .x-image {
	overflow: clip;
}
#title .x-image img {
	object-fit: cover;
	inline-size: 100%;
	block-size: 100%;
	max-inline-size: none;
}
@media (width >= 1200px) {
	#title.shorten .x-image img,
	#title .shorten .x-image img,
	#title .x-image.shorten img,
	#title .x-image img.shorten {
		aspect-ratio: 2.2;
	}
}
@media (width >= 1400px) {
	#title:has(.x-image) .x-row:first-child {
		background-color: transparent;
	}
	#title.accent .x-row:first-child .x-col:first-child {
		flex: 0 1 66%;
		translate: calc(var(--fs-0) * -1) 0;
	}
	#title .x-image img {
		block-size: auto;
	}
}

/* TITLE/CONTENT SPLIT */

.title-content .x-col {
    padding-block: var(--cell-margin-block);
}
.title-content .x-col:nth-child(2n-1) {
    padding-block-start: 0;
}
.title-content .x-col > * {
    inline-size: min(100%, var(--page-max-inline-size) * 0.5 - var(--page-margin-inline));
}
.title-content .accent {
	--foreground: var(--accent-foreground);
	--background: var(--accent-background);
	color: var(--foreground);
	background-color: var(--background);
}
.title-content .accent :is(h1, mark) {
	background-color: var(--white);
}
.title-content .accent mark {
	color: var(--accent);
}
.title-content .x-col:nth-child(2n-1) li {
    margin-block: 0.4lh;
}
.title-content .x-text:has(h1 + h2) > h1:first-child {
	font-size: var(--fs-0);
	font-family: var(--body-font);
	font-weight: 400;
	color: var(--foreground);
	display: inline-flex;
	margin-block: 0 0.5lh;
	text-transform: uppercase;
}
.title-content .accent .x-text:has(h1 + h2) > h1:first-child {
	margin-block: 0;
	padding-block: 0.2lh;
	padding-inline: 2.1ex;
	line-height: 140%;
}
.title-content :is(h2, .x-col:nth-child(2) .x-text > p:first-child) {
	font-family: var(--heading-font);
}
.title-content .x-col:nth-child(2n-1) h2 + p,
.title-content .introduction p  {
	font-size: var(--fs-1);
	text-wrap: balance;
}
.title-content .x-col:nth-child(2n) :is(.x-text > p) {
	font-size: var(--fs-2);
	margin-block: 0.3lh;
}
.title-content .x-col .form-area {
	position: relative;
	min-block-size: 23rem;
}
@media (width >= 768px) {
	.title-content .x-col:nth-child(2n-1) > * {
		margin-inline: auto 0;
	}
	.title-content .x-col:nth-child(2n) > * {
		margin-inline: 0 auto;
	}
	.title-content .x-col.accent:nth-child(2n-1) {
		min-block-size: calc(100dvh - 38rem);
	}
	.title-content .x-col:nth-child(2n-1) :is(p, ul) {
		margin-inline: 0 var(--cell-margin-inline);
	}
}

/* STATISTICS */

.statistics .x-row:first-child .x-text {
	margin-block-start: 2rem;
}
.statistics ul {
	list-style: none;
	display: grid;
	grid-template-columns: 1fr;
	margin-inline: auto;
	inline-size: min(100%, 32ch);
	font-size: var(--fs-3);
	place-items: center;
}
.statistics.x-section li,
.statistics.x-section p {
	font-size: inherit;
	font-family: var(--heading-font);
}
.statistics.x-section ul li {
	position: relative;
	display: block;
	margin-inline: auto;
	padding-inline: 0;
	grid-area: 1 / 1 / 2 / 2;
	text-align: center;
	text-wrap: balance;
	filter: none;
	transition: 0.4s filter linear 0.2s, 0.4s transform ease-in-out 0.2s;
}
.statistics.x-section ul li.hide {
	filter: opacity(0%);
	pointer-events: none;
	transition-delay: 0s, 0s;
	z-index: -1;
}
.statistics nav ol {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	inline-size: min(100%, 26ch);
	margin-inline: auto;
	gap: calc(var(--fs-0) * 0.4);
}
.statistics nav ol li {
	display: flex;
	justify-content: center;
	flex: 1 0 1em;
}
.statistics nav li a,
.statistics nav li a:hover {
	color: transparent;
	text-decoration: none;
}
.statistics nav li a {
	display: flex;
	flex: 1 0 1rem;
	font-size: 1px;
	border-block-end: 4px solid var(--beige);
	transition: 0.3s border-color linear;
}
.statistics nav li.current a,
.statistics nav a:hover {
	border-color: var(--accent);
}

/* PHOTO SLIDE */

#statement.photo-slide.x-section,
.photo-slide.x-section .x-row,
.photo-slide.x-section .x-row-inner {
	display: grid;
	grid-template-columns: 1fr;
}
#statement.photo-slide.x-section {
	margin-inline: 0;
	max-inline-size: none;
	inline-size: auto;
}
.photo-slide.x-section .x-row,
.photo-slide.x-section .x-row-inner {
	grid-area: 1 / 1 / 2 / 2;
	inline-size: auto;
	max-inline-size: none;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
}
.photo-slide.x-section .x-row {
	grid-area: 1 / 1 / 2 / 2;
}
.photo-slide.x-section .x-row-inner {
	margin-inline: 0;
	padding-inline: 0;
}
.photo-slide .x-col {
	display: grid;
	grid-area: 1 / 1 / 2 / 2;
	margin: 0;
	place-content: center;
	place-items: center;
	flex: none;
	transition: 0.05s filter linear;
	z-index: 1;
}
.photo-slide .x-col.hide {
	filter: opacity(0%);
	pointer-events: none;
	z-index: 0;
}
.photo-slide .x-row.text {
	z-index: 1;
}
.photo-slide .x-row.images {
	z-index: 0;
}
.photo-slide.x-section h2 {
	font-size: var(--fs-5);
	hyphens: none;
	text-align: center;
	margin-inline: auto;
	inline-size: min(100%, 24ch);
}
.photo-slide.x-section h2 mark {
	color: var(--accent);
	background-color: var(--background);
}
.photo-slide.x-section h2 mark:first-child {
	padding-block-start: 0.1ex;
}
.photo-slide.x-section h2 mark:last-child {
	padding-block-end: 0.1ex;
}
.photo-slide .x-image {
	display: block;
}
.photo-slide .images .x-image > img {
	inline-size: 100dvw;
	block-size: auto;
	aspect-ratio: 2.2;
	object-fit: cover;
	object-position: 50% 50%;
	max-inline-size: none;
}
@media (orientation: portrait) and (width < 600px) {
	.photo-slide .images .x-image > img {
		aspect-ratio: 0.8;
	}
}
@media (orientation: portrait) and (width < 1200px) {
	.photo-slide .images .x-image > img {
		aspect-ratio: 1.2;
	}
}

/* INTRODUCTION AND LIST */

.x-section.text-image .x-text:has(p + ul) ul:first-of-type,
.x-section .x-tabs-panel .x-text:has(p + ul) ul:first-of-type {
	border-block-start: 2px solid var(--light-grey);
}
.x-section.text-image .x-text:has(p + ul) ul:first-of-type {
	margin-block-start: 1.2lh;
	padding-block-start: 0.6lh;
}
.x-section .x-tabs-panel .x-text:has(p + ul) ul:first-of-type {
	margin-block-start: 1.6lh;
	padding-block-start: 0.8lh;
}
.x-section .text-image .x-text > p,
.x-section .text-image .x-text > ul > li {
	margin-block: 0.6lh;
}
.x-section .x-tabs-panel .x-text > p,
.x-section .x-tabs-panel .x-text > ul > li {
	margin-block: 0.8lh;
}
.x-section :is(.text-image, .x-tabs-panel) .x-text > ul {
	padding-inline-start: 2.7ex;
}
.x-section :is(.text-image, .x-tabs-panel) .x-text > ul > li {
	padding-inline-start: 0.7ex;
}
.x-section .x-tabs-panel .x-text:has(p + ul) ul:first-of-type + p {
	margin-block-start: 1.6lh;
}

/* TEXT / IMAGE ALTERNATING */

.x-section.text-image .x-row-inner {
	margin-inline: 0;
	gap: var(--cell-margin-inline);
}
.x-section.text-image .x-row-inner .x-col {
	flex: 1 0 min(100%, 25rem);
	margin-inline: 0;
}
.cs-content > .x-section.text-image,
.text-image .x-row {
	margin-block: var(--section-margin-block);
}
.text-image .x-row:first-child {
	margin-block-start: 0;
}
.text-image .x-row:last-child {
	margin-block-end: 0;
}
.text-image h2 {
	font-size: var(--fs-3);
	color: var(--accent);
}
@media (width < 768px) {
	.text-image .x-col + .x-col:has(.x-image) {
		order: 1;
	}
	.text-image .x-row:has(.x-col + .x-col > .x-image) .x-col:first-child {
		order: 2;
	}
}

/* FEATURES / BENEFITS */

.cs-content > .x-section.features.accent {
	background-color: var(--accent-background);
}
.cs-content > .x-section.features.beige {
	background-color: var(--beige);
}
.cs-content > .x-section.features,
.x-section.features .x-row {
	padding-block: var(--section-margin-block);
}
.x-section.features .x-row:first-child {
	padding-block-start: 0;
}
.x-section.features .x-row:last-child {
	padding-block-end: 0;
}
.x-section.features h2 {
	font-size: var(--fs-3);
}
.x-section.features.beige h2 {
	color: var(--accent);
}
.x-section.features h3,
.x-section.features .x-col:nth-child(2n) .x-text:not(:has(h3)) li {
	font-size: var(--fs-1);
}
.x-section.features .x-col:nth-child(2n) .x-text:not(:has(h3)) li {
	font-family: var(--heading-font);
	padding-block: 0.5lh;
}
.x-section.features .x-text li ul {
	list-style: disc;
	padding-inline-start: 2.6ex;
}
.x-section.features .x-text > ul {
	grid-template-columns: repeat(auto-fill, minmax(clamp(31ch, 22vw, 35ch), 1fr));
	list-style: none;
	display: grid;
	margin-block: 0;
	padding-inline: 0;
	margin-inline: 0;
	gap: var(--fs-2) var(--cell-margin-inline);
}
.x-section.features .x-text > ul > li {
	padding-inline: 0;
	margin-inline: 0;
	border-block-start: 1px solid var(--light-grey);
}
@media (width >= 768px) {
	.x-section.features .x-col:first-child .x-text {
		inline-size: min(100%, 33ch);
		margin-inline: 0 auto;
	}
}

/* CARDS */

.x-section.cards,
.x-section.cards:has(h2, h3, .x-col) {
	padding-block-end: 1px;
}
.x-section > .x-container.width {
	inline-size: var(--page-inline-size);
	max-inline-size: none;
}
.cards .x-row + .x-row {
	margin-block: calc(var(--cell-margin-block) * 0.8);
}
.cards .x-row:last-child {
	margin-block-end: calc((var(--cell-margin-block) + var(--section-margin-block)) * 0.5);
}
.cards .x-row + .x-row .x-col {
	background-color: var(--white);
	padding-block: 2.3rem 4rem;
	padding-inline: var(--page-margin-inline) calc(var(--page-margin-inline) * 2);
	min-block-size: min(16vh, 11.3rem);
}
.cards .x-col:has(.logo),
.cards .x-text:has(.logo) {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
}
.cards .x-col:has(.logo) {
	place-items: stretch start;
}
.cards .x-text:has(.logo) {
	place-items: start start;
}
.cards .x-text:not(.small-large) :is(h2):first-child,
.cards.accent .x-text:not(.small-large) :is(h2, h3):first-child {
	color: var(--accent);
}
.cards .x-text h2 {
	--background: var(--white);
	background-color: var(--background);
	margin-block: 0;
	padding-inline: var(--page-margin-inline);
	padding-block: 0 0.3lh;
	display: inline-flex;
}
.cards .x-text.small-large:has(h2 + :is(h3, p)) h2 {
	color: var(--accent-foreground);
	background-color: transparent;
	padding-inline: 0;
	padding-block: 0;
}
.cards .x-text h3 {
	font-size: var(--fs-3);
	margin-block: 0.6lh;
}
.cards .x-text.small-large h2 + :is(h3, p) {
	font-size: var(--fs-3);
	color: var(--white);
	margin-block-start: 0.1lh;
	line-height: 110%;
	text-wrap: balance;
}
.cards .x-row:first-child:has(.x-text.small-large) .x-col:nth-child(2n) .x-text {
	inline-size: min(100%, 46ch);
	margin-inline: auto 0;
}
.cards.accent .x-text:has(h3 + .cta) h3 {
	font-size: var(--fs-2);
}
.cards.accent .x-text:has(h3 + .cta) h3 a {
	color: var(--accent);
}
.cards .cta {
	position: absolute;
	display: flex;
	inline-size: calc(var(--page-margin-inline) * 2 + 6px);
	block-size: calc(var(--page-margin-inline) * 2 + 6px);
	align-items: stretch;
	margin: 0;
	inset: auto 0 0 auto;
	border-block-start: 8px solid var(--background);
	border-inline-start: 8px solid var(--background);
}
.cards .cta a {
	display: flex;
	flex: 1 0 100%;
	color: transparent;
	background: var(--accent-background) scroll no-repeat 50% 50% / 18% auto;
	font-size: 1px;
	padding-block: 0;
}
.cards .cta a::after {
	display: none;
}
.cards.accent .cta a {
	background-color: var(--black);
}
.cards .cta a:hover {
	background-color: var(--black);
}
.cards.accent .cta a:hover {
	background-color: var(--dark-grey);
}
.cards .logo {
	display: flex;
	color: var(--foreground);
	margin-block: 0 0.7lh;
}
.cards .logo svg {
	inline-size: auto;
	block-size: var(--fs-0);
}
.cards .x-text:has(.logo) p:last-child {
	place-self: end start;
}

/* TESTIMONIALS */

.testimonials .x-row .x-text > h2:first-child {
	font-size: var(--fs-0);
	font-family: var(--body-font);
	font-weight: 400;
	color: var(--foreground);
	text-transform: uppercase;
	margin-block: 0 2.4lh;
}
.testimonials.x-section .x-row:first-child .x-text:first-child > h2:first-child {
	color: var(--foreground);
}
.testimonial-enclosure {
	overflow: clip;
}
.testimonials .carousel {
	position: relative;
	margin-block: 0 var(--cell-margin-block);
}
.testimonials .carousel li {
	position: relative;
	transition: 0.3s translate ease-in-out 0s, 0.2s filter linear 0s;
}
.testimonials .carousel li.current {
	filter: opacity(100%);
	translate: none;
	z-index: 2;
}
.testimonials .carousel li.before {
	translate: -100% 0;
}
.testimonials .carousel li.after {
	translate: 100% 0;
}
.testimonials .carousel li.hide,
.testimonials .carousel:not(:has(.current)) li:not(:first-child) {
	position: absolute;
	display: flex;
	filter: opacity(0%);
	pointer-events: none;
	z-index: 1;
}
.testimonials blockquote {
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
}
.testimonials blockquote p {
	font-family: var(--heading-font);
	font-size: var(--fs-4);
	line-height: 120%;
	margin-block: 0;
	text-wrap: balance;
}
.testimonials p:has(cite) {
	margin-block: 0;
}
.testimonials cite,
.wp-block-quote cite {
	font-style: normal;
	text-transform: uppercase;
}
.testimonials cite {
	background-color: var(--accent-background);
	color: var(--accent-foreground);
	display: inline-flex;
	padding-block: 0.5lh;
	padding-inline: 1rem;
}
.testimonials .carousel-navigation ul {
	display: flex;
	justify-content: start;
	gap: var(--fs-2);
}
.testimonials .carousel-navigation li {
	flex: 0 1 auto;
}
.testimonials .wp-block-embed {
	margin-block: 0;
	display: flex;
	aspect-ratio: 16 / 9;
}
.testimonials .wp-block-embed > div,
.testimonials .x-is-video {
	display: grid;
	grid-template-columns: 1fr;
	inline-size: 100%;
	block-size: auto;
	aspect-ratio: 16 / 9;
	margin-block: 0;
}
.testimonials .x-is-video iframe {
    inline-size: 100%;
    aspect-ratio: 16 / 9;
    display: flex;
    block-size: auto;
    border: 0 none;
}
.testimonial-content:has(.wp-block-buttons:last-child) {
    display: flex;
    align-items: start;
    gap: var(--cell-margin-inline);
}
.testimonial-content:has(.wp-block-buttons:last-child) p {
    flex: 10 0 10rem;
}
.isi-testimonials .wp-block-button__link.wp-element-button {
    display: inline-flex;
    color: var(--foreground);
    background-color: var(--background);
    margin-inline: auto 0;
    padding-block: 0.4lh;
    border: 2px solid;
}
.testimonial-content .wp-block-buttons > .wp-block-button {
    margin-inline: auto 0;
    justify-content: center;
}
@media (width >= 768px) {
	.testimonials blockquote p {
		font-size: var(--fs-5);
	}
}

/* FAQ */

.faq.beige {
	padding-block: calc(var(--section-margin-block) * 0.6);
}
.faq .x-row:first-child:has(h2) {
	margin-block: 0 calc(var(--cell-margin-block) * 0.5);
}
.faq h2 {
	font-size: var(--fs-3);
}
@media (width >= 768px) {
	.faq.x-section > .x-container.width {
		margin-inline: auto;
		inline-size: min(100%, var(--page-max-inline-size) * 0.75);
	}
}

/* CTA / REQUEST DEMO */

.cta.accent {
	--background: var(--accent-background);
	background-color: var(--background);
}
.cta.accent > .x-container.width,
.cta.accent > .x-container.width .x-row-inner {
	inline-size: 100%;
	padding-inline: 0;
	margin-inline: 0;
}
.cta.x-section > .x-container.width {
	inline-size: 100dvw;
	margin-inline-end: 0;
	transition: 0.2s inline-size linear, 0.2s margin-inline linear;
}
.cta.x-section .x-col {
	flex: 1 0 100%;
	display: grid;
	grid-template-columns: 1fr;
	margin-inline: 0;
}
.cta.x-section .x-col:first-child {
	order: 2;
	margin-block: -1.5lh 1.9lh;
	padding-inline: var(--page-margin-inline);
}
.cta.x-section .x-col:nth-child(2) {
	order: 1;
	margin-block-end: 0;
}
.cta.x-section .x-text {
	display: grid;
	place-content: space-evenly start;
	gap: 0;
}
.cta.accent :is(.highlight, span, mark) {
	--foreground: var(--accent);
	--background: var(--white);
}
.cta.x-section :is(h2, .highlight, span, mark) {
	--background: var(--accent-foreground);
	margin-block: 0;
}
.cta.x-section.accent :is(.highlight, span, mark) {
	--foreground: var(--accent);
	--background: var(--white);
}
.cta.x-section h2 + .highlight {
	font-size: var(--fs-5);
	inline-size: clamp(9ch, 100%, 15ch);
	--foreground: var(--dark-foreground);
	line-height: 130%;
	translate: 0 -0.05lh;
}
.cta.x-section h2 {
	display: inline-flex;
	inline-size: fit-content;
	font-family: var(--body-font);
	font-size: var(--fs-0);
	font-weight: 400;
	padding-block: 0.4lh;
	text-transform: uppercase;
}
.cta.x-section :is(h2, .highlight span, .highlight mark) {
	background-color: var(--accent-background);
	margin-block: 0;
	padding-inline: 1rem;
	line-height: 120%;
}
.cta.x-section.accent :is(h2, .highlight span, .highlight mark) {
	color: inherit;
	background-color: var(--white);
	padding-inline: calc(var(--page-margin-inline) * 0.5);
	box-shadow: 0 -2px 0 0 var(--white);
}
.cta.x-section.accent :is(h2:first-child) {
	box-shadow: 0 -5px 0 0 var(--white);
}
.cta.x-section :is(.highlight span, .highlight mark) {
	padding-block: 0 0.12lh;
}
.cta.accent h2:has(.isi-logo) {
	position: absolute;
	inset-block: auto 0;
	inset-inline: 0 auto;
	background-color: transparent;
	margin-block-end: 0.5lh;
	z-index: 1;
}
.cta.x-section :is(h2, p) {
	margin-block: 0;
}
.cta.x-section h2 {
	font-size: var(--fs-0);
	font-family: var(--body-font);
	font-weight: 400;
	text-transform: uppercase;
}
.cta.x-section p {
	margin-block: 0.7lh;
}
.cta.x-section h2 + p {
	font-family: var(--heading-font);
	font-size: var(--fs-4);
	color: accent;
}
.cta .x-text > .cta:last-child {	
	margin-block: clamp(2rem, 10vw, 5rem) 0;
}
.cta.x-section .cta a {
	padding-inline: 2.5em;
}
.cta.x-section .x-image img {
	aspect-ratio: 1.6;
	object-fit: cover;
	object-position: 50% 5%;
}
@media (width >= 768px) {
	.cta.x-section > .x-container.width {
		inline-size: calc(var(--page-inline-size) + var(--page-margin-inline));
	}
	.cta.x-section .x-col {
		flex: 1 0 20rem;
		margin-inline: calc(var(--page-margin-inline) * 0.75);
	}
	.cta.x-section .x-col:first-child {
		margin-block: 1.7rem;
		padding-inline: 0;
	}
	.cta.x-section .x-col {
		place-content: space-between start;
	}
	.cta.x-section .x-col:nth-child(1) {
		order: 1;
	}
	.cta.x-section .x-col:nth-child(2) {
		order: 2;
	}
	.cta.x-section .x-col:nth-child(2n-1) {
		padding-inline: 0 var(--page-margin-inline);
		margin-inline-start: 0;
	}
	.cta.x-section .x-col:nth-child(2n) {
		margin-block: calc(3rem * 0.5);
		margin-inline-end: 0;
		place-content: center end;
	}
	.cta.x-section .x-col:nth-child(2n) .x-text,
	.cta.x-section .x-col:nth-child(2n) .x-image,
	.cta.x-section .x-col:nth-child(2n) .cta-photo {
		display: flex;
		justify-content: flex-end;
	}
	.cta.x-section .x-image img {
		aspect-ratio: 1;
	}
}
@media (width >= 1200px) {
	.cta .x-text > .highlight ~ p,
	.cta .x-text > .cta {
		position: absolute;
		inset-block-end: 0;
	}
	.cta .x-text > .highlight ~ p:not(.cta) {
		margin-block: 0 clamp(6.5rem, 30vw, 10rem);
		z-index: 2;
	}
	.cta .x-text > .cta:last-child {
		margin-block: 0 clamp(1.8rem, 20vw, 3.3rem);
		z-index: 3;
	}
}
@media (width >= 1400px) {
	.cta.x-section > .x-container.width {
		inline-size: var(--page-inline-size);
		margin-inline: auto;
	}
}

/* PEOPLE */

.people-list {
	display: grid;
	list-style: none;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr));
	margin-inline: 0;
	padding-inline: 0;
	gap: var(--fs-1);
}
.people-list li {
	display: grid;
	margin-inline: 0;
	padding-inline: 0;
	margin-block: 0;
	grid-template-columns: 1fr;
	place-content: start stretch;
	gap: 0.5lh var(--fs-0);
}
.people-list .image {
	position: relative;
	background-color: var(--beige);
	order: 1;
	margin-block: 0;
	transition: 0.2s background-color linear;
}
.people-list .image a {
	display: flex;
	flex-wrap: wrap;
}
.people-list .image:has(a:hover) {
	background-color: var(--accent-background);
}
.people-list .image img,
#person .image img {
	display: flex;
	flex: 1 0 100%;
	aspect-ratio: 1;
	object-fit: cover;
}
.people-list .name {
	order: 2;
	margin-block: 0;
	font-size: var(--fs-1);
}
.people-list .name a {
	color: var(--accent);
}
.people-list .position {
	order: 3;
	margin-block: 0;
	font-size: var(--fs--1);
}
.people-list .social,
#person .social {
	order: 4;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-block: 0;
	font-size: var(--fs-0);
}
.people-list .social a,
#person .social a {
	display: flex;
	color: inherit;
	aspect-ratio: 1;
	background-color: var(--beige);
	line-height: 120%;
	padding: 0.3em;
	align-items: center;
	justify-content: center;
	flex: 0 1 1.4em;
}
.people-list .social a:hover {
	color: var(--accent);
	text-decoration: none;
}
.people-list .location,
.people-list .bio {
	visibility: hidden;
	display: none;
}
dialog#person {
	inline-size: min(100%, calc(var(--page-inline-size) * 0.8));
	padding: 0;
}
#person .content {
	display: flex;
    flex-wrap: wrap;
	padding: calc(var(--cell-margin-inline) * 0.5);
    gap: calc(var(--cell-margin-inline) * 0.5);
}
#person .content .start,
#person .content .end {
	display: grid;
	grid-template-columns: 1fr;
	place-content: start start;
	gap: var(--fs-0);
}
#person .content .start {
    flex: 1 0 13rem;
}
#person .content .end {
    flex: 2 0 13rem;
}
#person .content :is(h3, p, div) {
	margin-block: 0;
}
#person .content .image {
	display: flex;
}
#person h3 {
	color: var(--accent);
	font-size: var(--fs-1);
}
#person .position {
	font-size: var(--fs--1);
}
#person .location {
	font-size: var(--fs--1);
	color: var(--dark-grey);
}
#person .location svg {
	inline-size: 0.55em;
	margin-inline: 0 0.3ex;
}
#person .bio {
	margin-block: 0.6lh 0;
}
#person .content .bio :is(h4, h5, p, li) {
	margin-block: 0.7lh;
}
#person .close {
	inline-size: var(--fs-1);
	block-size: auto;
}
#person .close:is(:hover, :focus-visible) {
	filter: none;
	text-decoration: none;
	color: transparent;
}

/* NEWS, INSIGHTS AND EVENTS */

.post-list.filtered {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 3rem var(--cell-margin-inline);
}
.post-list.filtered > div {
	flex: 1 0 min(100%, 12rem);
}
.post-list.filtered > .search-filter {
	position: sticky;
	inset-block-start: 7.4rem;
}
.post-list.filtered > .isi-posts,
.post-list.filtered > .filter-empty,
.post-list.filtered > .search-empty {
	flex: 6 0 min(100%, 28rem);
}
.post-list.filtered:has(input.searching) > .isi-posts {
	filter: opacity(20%) grayscale(100%);
	pointer-events: none;
}
.post-list.filtered > .isi-pagination {
	display: flex;
	margin-inline-start: clamp(0rem, calc(22% + 6.2rem), 23rem);
	align-items: center;
	justify-content: flex-start;
	gap: var(--fs-0);
}
.post-list ul {
	list-style: none;
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
	padding-block: 0;
}
.single-post #post-content > .x-container.width,
.single-event #post-content > .x-container.width {
	inline-size: auto;
}
.single-post #post-content,
.single-event #post-content,
.single-post #title .x-text,
.single-event #title .x-text {
	inline-size: var(--post-inline-size);
	margin-inline: auto;
}
.single-post .x-row.content,
.single-event .x-row.content {
	padding-block-end: clamp(3rem, 3vw + 3vh, 12rem);
}
.single-post :is(#related-posts, #latest-news, .x-row.tags),
.single-event :is(#related-posts, #latest-news, .x-row.tags) {
	padding-block: clamp(3rem, 3vw + 3vh, 12rem);
	border-block-start: 1px solid var(--light-grey);
}
.single-post .x-section h2,
.single-event .x-section h2 {
	font-size: var(--fs-2);
}
.single-post .x-section :is(h3, h4, h5),
.single-event .x-section :is(h3, h4, h5) {
	font-family: var(--body-font);
	font-size: var(--fs-0);
}
.single-post #title .x-row-inner,
.single-event #title .x-row-inner {
	grid-template-columns: 1fr;
}
.single-post #title .x-row,
.single-event #title .x-row {
	position: relative;
	z-index: 1;
}
.single-post #title .x-row:nth-child(2),
.single-event #title .x-row:nth-child(2) {
	margin-block: clamp(-8.2rem, -15vh, -5.4rem) clamp(1.5rem, 3vh, 2.8rem);
	z-index: 2;
}
.single-post #title .x-row-inner,
.single-event #title .x-row-inner {
	display: grid;
}
.single-post #title .x-col:has(.featured-image),
.single-event #title .x-col:has(.featured-image) {
	flex: 1 0 100%;
	display: flex;
}
.single-post #title .featured-image,
.single-event #title .featured-image {
	display: flex;
	flex: 1 0 100%;
	inline-size: 100%;
	block-size: auto;
	object-fit: cover;
	object-position: 50% 50%;
}
.single-post #title .featured-image img,
.single-event #title .featured-image img {
	display: flex;
	flex: 1 0 100%;
	max-inline-size: none;
	inline-size: auto;
}
.single-post #title .featured-image img,
.single-event #title .featured-image img,
.single-post #title .x-row:first-child .x-col:empty,
.single-event #title .x-row:first-child .x-col:empty {
	aspect-ratio: 3.1;
	display: flex;
}
.single-post #title .x-row:first-child .x-col:empty,
.single-event #title .x-row:first-child .x-col:empty {
	display: flex;
	aspect-ratio: 3.1;
	background-position: 50% 45%;
	background-color: var(--beige);
	background-repeat: no-repeat;
	background-size: auto var(--fs-4);
}
.single-post #title .x-text,
.single-event #title .x-text {
	display: grid;
	grid-template-columns: 1fr;
	place-content: start;
	place-items: start;
}
.single-post #title :is(.post-product-category, .post-title),
.single-event #title :is(.post-product-category, .post-title) {
	background-color: var(--background);
	outline: 1rem solid var(--background);
}
.single-post #title :is(.post-product-category > .categories, .post-meta),
.single-event #title :is(.post-product-category > .categories, .post-meta) {
	--foreground: var(--dark-grey);
	--link: var(--foreground);
	--link-interaction: var(--foreground);
	color: var(--foreground);
	text-transform: uppercase;
}
.single-post #title :is(.post-product-category, .post-meta),
.single-event #title :is(.post-product-category, .post-meta) {
	--link: var(--foreground);
	--link-interaction: var(--foreground);
}
.single-post #title .post-title,
.single-event #title .post-title {
	order: 2;
	color: var(--accent);
	margin-block: 0 0.7lh;
	line-height: 122%;
}
.single-post #title .post-product-category,
.single-event #title .post-product-category {
	display: flex;
	font-size: var(--fs--1);
	order: 1;
	margin-block-end: 0.8lh;
	gap: 2.7em;
}
.single-post #title .post-product-category li,
.single-event #title .post-product-category li {
	text-transform: uppercase;
}
.single-post #title .post-product-category .product,
.single-event #title .post-product-category .product {
	font-weight: 600;
}
.single-post #title .post-meta,
.single-event #title .post-meta {
	order: 3;
	font-size: var(--fs--1);
}
.single-post #title :is(.post-product-category, .post-meta) ul,
.single-event #title :is(.post-product-category, .post-meta) ul {
	font-size: inherit;
	line-height: 110%;
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
	list-style: none;
} 
.single-post #title .post-meta ul,
.single-event #title .post-meta ul {
	display: flex;
	gap: 2.3em;
}
.single-post #title .post-product-category ul:not(:first-child)::before,
.single-event #title .post-product-category ul:not(:first-child)::before,
.single-post #title .post-meta li:not(:first-child)::before,
.single-event #title .post-meta li:not(:first-child)::before,
:is(.related-posts, .latest-news) .post-meta > :not(:first-child)::before {
	position: absolute;
	display: inline-flex;
	font-size: 0.9em;
	margin-inline: 1em;
	block-size: 1lh;
}
.single-post #title .post-product-category ul:first-child,
.single-event #title .post-product-category ul:first-child {
	font-weight: 500;
}
.single-post #title .post-product-category ul:not(:first-child)::before,
.single-event #title .post-product-category ul:not(:first-child)::before {
	content: '';
	border-inline-start: 1px solid var(--foreground);
	translate: -2.3em 0.3lh;
}
.single-post #title .post-meta li,
.single-event #title .post-meta li {
	font-size: inherit;
}
.single-post #title .post-meta li:not(:first-child)::before,
.single-event #title .post-meta li:not(:first-child)::before,
:is(.related-posts, .latest-news) .post-meta > :not(:first-child)::before {
	content: '•';
	translate: -2.5em 0;
	font-size: 0.8em;
}
.single-post :is(h2, h3, h4, .wp-block-group):not(:first-child),
.single-event :is(h2, h3, h4, .wp-block-group):not(:first-child) {
	margin-block-start: 1.6lh;
}
.single-post .entry-content :is(p, .wp-block-heading),
.single-event .entry-content :is(p, .wp-block-heading) {
	margin-block: 1.2lh;
}
.single-post .entry-content :is(.wp-block-group, .wp-block-quote),
.single-event .entry-content :is(.wp-block-group, .wp-block-quote) {
	margin-block: 1.8lh;
}
.single-post .entry-content p + :is(.wp-block-group, .wp-block-heading, .wp-block-quote),
.single-event .entry-content p + :is(.wp-block-group, .wp-block-heading, .wp-block-quote) {
	margin-block-start: 2.6lh;
}
.single .x-section .overview {
	--background: var(--beige);
	background-color: var(--background);
	padding: 2.2em 2em;
}
.single .x-section .overview :first-child {
	margin-block-start: 0;
}
.single .x-section .overview :last-child {
	margin-block-end: 0;
}
.single .x-section .overview h2,
.single .x-section .overview h3 {
	font-size: var(--fs-1);
}
.single .x-section .overview ul {
	padding-inline-start: 2.3ex;
	margin-block-start: 1lh;
	margin-inline-start: 0.2ex;
}
.single .x-section .overview li {
	padding-inline-start: 0.7ex;
}
.single .x-section .overview ul li:not(:first-child) {
	margin-block-start: 0.6lh;
}
.single .x-section .overview + p {
	font-size: var(--fs-2);
	font-weight: 500;
	line-height: 120%;
}
.single-post .list div,
.single-event .list div {
	margin-inline-start: var(--fs-0);
}
.single-post .entry-content .wp-block-heading + :is(.wp-block-group.list),
.single-event .entry-content .wp-block-heading + :is(.wp-block-group.list) {
	margin-block-start: 0.4lh;
}
.single-post .list :is(h3, h4, h5, .wp-block-heading),
.single-event .list :is(h3, h4, h5, .wp-block-heading) {
	display: list-item;
	font-weight: 500;
}
.single-post .list .wp-block-heading,
.single-event .list .wp-block-heading {
	margin-block: 0 0.5lh;
}
.single-post .list .wp-block-heading + :is(p, ul, ol),
.single-event .list .wp-block-heading + :is(p, ul, ol) {
	margin-block-start: 0;
	padding-block-start: 0;
}
.single-post .entry-content .list p + :is(.wp-block-heading),
.single-event .entry-content .list p + :is(.wp-block-heading) {
	margin-block-start: 1.6lh;
}
.single-post .wp-block-quote,
.single-event .wp-block-quote {
	margin-inline: 0;
	padding-block: 1lh;
	padding-inline: 0;
	border: 0 none;
}
.single-post .wp-block-quote p,
.single-event .wp-block-quote p {
	font-family: var(--heading-font);
	font-size: var(--fs-2);
	line-height: 110%;
	color: var(--accent);
}
.single-post .wp-block-quote > p:first-child,
.single-event .wp-block-quote > p:first-child {
	margin-block-start: 0;
}
.single-post .wp-block-quote > p:nth-last-child(2),
.single-event .wp-block-quote > p:nth-last-child(2) {
	margin-block-end: 1.2lh;
}
.single-post .entry-content :is(.wp-block-image.size-large),
.single-event .entry-content :is(.wp-block-image.size-large) {
	margin-block: 2.6lh;
}
.single-post :where(.wp-block-image figcaption),
.single-event :where(.wp-block-image figcaption) {
	font-size: var(--fs--1);
	text-align: start;
	text-transform: uppercase;
	margin-block: 0.7lh;
}
.single-post .x-row.tags h2,
.single-event .x-row.tags h2 {
	font-family: var(--body-font);
	font-size: var(--fs-0);
	text-transform: uppercase;
	font-weight: 400;
	margin-block: 0 1.8lh;
}
.single-post .x-row.tags .tag-list,
.single-event .x-row.tags .tag-list {
	--link: var(--foreground);
	--link-interaction: var(--link);
	display: flex;
	font-size: var(--fs--1);
	line-height: 110%;
	list-style: none;
	flex-wrap: wrap;
	align-items: start;
	justify-content: start;
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
	gap: 1em;
}
.single-post .x-row.tags .tag-list li,
.single-event .x-row.tags .tag-list li {
	font-size: inherit;
	padding-block: 0.4lh;
	padding-inline: 1.8ex;
	background-color: var(--beige);
}
.single-post .related-posts .x-text > h2,
.single-event .related-posts .x-text > h2 {
	font-size: var(--fs-3);
	margin-block: 0 1lh;
}
.latest-news h2 {
	font-size: var(--fs-2);
}
.latest-news .x-text:has(.view-all) {
	font-size: var(--fs--1);
	text-align: end;
}
.latest-news a.view-all {
	color: inherit;
	text-transform: uppercase;
}
.isi-posts,
:is(.related-posts, .latest-news) .isi-posts {
	display: grid;
	list-style: none;
	grid-template-columns: 1fr;
	place-items: start;
	margin-block: 0;
	padding-inline: 0;
	gap: clamp(1.6rem, 2.5vw, 3.2rem);
}
.isi-posts li,
:is(.related-posts, .latest-news) .isi-posts li {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	justify-items: start;
	transition: 0.2s filter linear, 0.2s filter linear;
	interpolate-size: allow-keywords;
	clip-path: inset(0% 0% 0% 0%);
	transition: filter 0.2s linear, clip-path 0.2s ease-in-out;
}
.post-list p:is(.filter-empty, .search-empty) {
	font-family: var(--heading-font);
	font-size: var(--fs-0);
}
:is(.x-section, .related-posts, .latest-news) .isi-posts .hide,
.post-list.filtered > .hide:is(.isi-posts, .isi-pagination, .filter-empty, .search-empty) {
	position: absolute;
	visibility: hidden;
	overflow: hidden;
	clip-path: inset(0% 0% 100% 0%);
	pointer-events: none;
	filter: opacity(0%);
}
.isi-posts .unloaded {
	display: flex;
	inline-size: 100%;
	aspect-ratio: 1;
	background: linear-gradient(180deg, var(--light-grey) 0%, var(--light-grey) 55%, #0000 55%, #0000 60%, var(--light-grey) 60%, var(--light-grey) 70%, #0000 70%, #0000 74%, var(--light-grey) 74%, var(--light-grey) 82%, #0000 82%, #0000 86%, var(--light-grey) 86%, var(--light-grey) 94%, #0000 94%);
	mask: linear-gradient(140deg, #0000005D 0%, #00000010 100%);
}
.isi-posts p,
:is(.related-posts, .latest-news) p {
	margin-block: 0;
}
.isi-posts .post-title,
:is(.related-posts, .latest-news) .isi-posts .post-title {
	--foreground: var(--accent);
	--link: var(--foreground);
	font-family: var(--heading-font);
	font-size: var(--fs-2);
	margin-block: 0 0.6lh;
	order: 4;
}
.isi-posts .featured-image,
:is(.related-posts, .latest-news) .featured-image {
	order: 1;
	justify-self: start;
	inline-size: 100%;
}
.isi-posts .featured-image.empty {
	display: flex;
	aspect-ratio: 1.8;
	background-color: var(--beige);
	background-repeat: no-repeat;
	background-position: 50% 50%;
}
.isi-posts .featured-image img,
:is(.related-posts, .latest-news) .featured-image img {
	aspect-ratio: 1.8;
	object-fit: cover;
	transition: 0.3s filter linear;
}
.isi-posts .featured-image a:hover img,
:is(.related-posts, .latest-news) .featured-image a:hover img {
	filter: brightness(85%);
}
.isi-posts .product,
:is(.related-posts, .latest-news) .product {
	position: absolute;
	display: flex;
	font-weight: 500;
	inset-block: 0 auto;
	inset-inline: 0 auto;
	background-color: var(--background);
	padding-inline-end: 0.8ex;
	padding-block-end: 0.2lh;
	z-index: 2;
}
.isi-posts .post-meta,
:is(.related-posts, .latest-news) .post-meta {
	--foreground: var(--dark-grey);
	position: relative;
	order: 3;
	font-size: var(--fs--1);
	background-color: var(--background);
	text-transform: uppercase;
	margin-block: -1.5lh 0.8lh;
	padding-block: 0.2lh;
	padding-inline: 0 1ex;
}
.isi-posts .post-meta span,
.isi-posts .post-meta time,
:is(.related-posts, .latest-news) .post-meta span,
:is(.related-posts, .latest-news) .post-meta time {
	display: inline-flex;
}
:is(.isi-posts, .related-posts, .latest-news) .post-meta > :not(:first-child) {
	margin-inline-start: 1.7em;
}
:is(.isi-posts, .related-posts, .latest-news) .post-meta > :not(:first-child)::before {
	content: '•';
	position: relative;
	translate: -2ex 0;
}
.isi-posts .excerpt,
:is(.related-posts, .latest-news) .excerpt {
	font-size: var(--fs--1);
	order: 5;
	margin-block: 0 0.8lh;
}
.isi-posts .more,
:is(.related-posts, .latest-news) .more {
	order: 6;
}
.search-filter > h2 {
	font-size: var(--fs-1);
}
.isi-post-filter > li {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.5lh var(--fs-0);
	padding-block: 0.8lh 0;
	border-block-start: 1px solid var(--dark-grey);
	transition: 0.2 padding-block ease-in-out;
}
.isi-post-filter > li:last-child {
	border-block-end: 1px solid var(--dark-grey);
}
.isi-post-filter h3 {
	position: relative;
	font-size: var(--fs-0);
	font-family: var(--body-font);
	margin-block: 0 0.4lh;
	transition: 0.1s margin-block ease-in-out;
}
.isi-post-filter .selected h3 {
	margin-block-end: 0.7lh;
}
.isi-post-filter a {
	position: relative;
	display: flex;
	color: inherit;
}
.isi-post-filter .toggle {
	display: flex;
	align-items: center;
}
.post-list .taxonomy.selected,
.post-list .range.selected {
	padding-block-end: 0.8lh;
}
.post-list .taxonomy ul,
.post-list .range ul {
	block-size: 0;
	max-block-size: clamp(18rem, 40vh, 40rem);
	clip-path: inset(0% 0% 100% 0%);
	pointer-events: none;
	overflow: hidden auto;
	transition: block-size 0.2s ease-in-out, clip-path 0.2s ease-in-out;
	interpolate-size: allow-keywords;
}
.post-list .taxonomy.selected ul,
.post-list .range.selected ul {
	block-size: auto;
	pointer-events: auto;
	clip-path: inset(0% 0% 0% 0%);
}
.isi-post-filter h3 .toggle {
	position: absolute;
	inset: 0 0 auto auto;
}
.isi-post-filter li li {
	font-size: var(--fs--1);
}
.isi-post-filter li li a {
	padding-block: 0.15lh;
}
.isi-post-filter .term .toggle {
	position: relative;
	color: transparent;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 80%;
	border: 1.5px solid var(--dark-grey);
	inline-size: 1em;
	block-size: 1em;
	line-height: 100%;
	overflow: hidden;
	margin-inline: 0 1ex;
	translate: 0 0.15lh;
	transition: 0.2s background-color linear;
}
.isi-post-filter .term.selected .toggle,
.isi-post-filter .term:not(.selected) a:hover .toggle {
	border-color: var(--accent);
}
.isi-post-filter .term.selected .toggle {
	background-color: var(--accent);
}
.isi-post-search {
	display: grid;
	grid-template-columns: 1fr;
	position: relative;
	margin: 0;
	gap: 0;
}
.search-filter form {
	margin: 0;
}
.search-filter form + h2 {
	margin-block-start: 2lh;
}
.isi-post-search input {
	display: flex;
	font-size: var(--fs--1);
	background-color: var(--beige);
	inline-size: 100%;
	padding-block: 0.5lh;
	padding-inline: 1.3ex;
	box-sizing: inherit;
	border: 0 none;
}
.isi-post-search button {
	position: absolute;
	inset: auto 0 auto auto;
	font-size: 3px;
	aspect-ratio: 1;
	inline-size: calc(var(--fs-0) * 2.2);
	color: transparent;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: var(--fs-0);
	margin-block-start: 2px;
	padding-block: calc(var(--fs-0) * 0.4);
	padding-inline: 0;
}
.isi-post-search button:hover {
	color: transparent;
	background-color: transparent;
}
.isi-pagination .previous .button {
	border-color: var(--foreground);
}
.isi-pagination .previous .button,
.isi-pagination .next .button,
.isi-pagination .previous .button:is(:hover, :focus-visible),
.isi-pagination .next .button:is(:hover, :focus-visible) {
	color: transparent;
}
.isi-pagination .button,
.isi-pagination input[type="text"],
.isi-pagination input[type="number"] {
	display: flex;
	background: transparent scroll no-repeat 50% 50% / 18% auto;
	box-shadow: 0 0 0 1px var(--foreground) inset;
	aspect-ratio: 1;
	min-inline-size: 4ch;
	padding: 0;
	justify-content: center;
	align-items: center;
}
.isi-pagination .current .button,
.isi-pagination .current .button:is(:hover, :focus-visible),
.isi-pagination .current span {
	color: var(--dark-foreground);
	background-color: var(--dark-background);
}
.isi-pagination .current .button,
.isi-pagination .button.disabled,
.isi-pagination .button:disabled {
	pointer-events: none;
}
.isi-pagination :is(.previous, .next) .button:is(:hover, :focus-visible) {
	background-color: var(--light-grey);
}
.isi-pagination :is(.previous, .next) .button.disabled {
	filter: opacity(30%);
}
.isi-pagination input[type="text"],
.isi-pagination input[type="number"] {
	inline-size: 3ch;
	text-align: center;
	border: 0 none;
}
.isi-pagination input[type="text"]::placeholder,
.isi-pagination input[type="number"]::placeholder {
	color: inherit;
}
.isi-event-panelists {
    margin: 3rem 0;
}
.isi-event-panelists h2 {
    margin: 0 0 2.5rem;
    font-weight: 600;
}
.isi-event-panelists .grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 40px 32px;
}
.isi-event-panelists .card {
    display: flex;
    flex-direction: column;
}
.single-post .entry-content .isi-event-panelists .text,
.single-post .entry-content .isi-event-panelists .text > :is(p),
.single-event .entry-content .isi-event-panelists .text > :is(p) {
	font-size: var(--fs--2);
	margin-block: 0;
}
.isi-event-panelists .image-wrap {
	background: var(--beige);
	align-items: flex-end;
	justify-content: center;
	overflow: clip;
	margin-block-end: 1.3rem;
}
.isi-event-panelists .image-wrap img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
    display: block;
}
.isi-event-panelists .image-wrap,
.isi-event-panelists .image-placeholder {
	inline-size: 100%;
	aspect-ratio: 1;
	display: flex;
}
.isi-event-panelists .meta {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.7rem 0.5rem;
}
.isi-event-panelists .text {
	display: grid;
	flex: 1 0 9rem;
	grid-template-columns: 1fr;
	gap: 0.3lh 0;
}
.isi-event-panelists h3,
.isi-event-panelists .name {
	font-size: var(--fs--1);
	font-weight: inherit;
	margin-block: 0;
}
.isi-event-panelists .text + .linkedin {
	flex: 0 1 1.4rem;
	display: flex;
	justify-content: flex-end;
	margin-block-start: 0;
}
.isi-event-panelists .linkedin a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	inline-size: 1.3em;
	aspect-ratio: 1;
	background: var(--beige);
	text-decoration: none;
	color: inherit;
	padding: 0.35em;
	transition: 0.2s color linear, 0.2s background-color linear;
}
.isi-event-panelists .linkedin a:hover {
	color: inherit;
	background-color: var(--accent-background);
}
.post-list .searching-animation {
	position: absolute;
	display: grid;
	background: conic-gradient(from 0deg at 50% 60%, var(--accent) 120deg, #0000 0), conic-gradient(from 120deg at 50% 60%, var(--accent) 120deg, #0000 0), conic-gradient(from 240deg at 50% 60%, var(--accent) 120deg, #0000 0), conic-gradient(from 0deg at 50% 60%, color-mix(in lab, var(--accent) 30%, var(--beige)) 120deg, #0000 0), conic-gradient(from 120deg at 50% 60%, color-mix(in lab, var(--accent) 30%, var(--beige)) 120deg, #0000 0), conic-gradient(from 240deg at 50% 60%, color-mix(in lab, var(--accent) 30%, var(--beige)) 120deg, #0000 0), var(--accent);
	width: 1.5rem;
	aspect-ratio: 1.154;
	background-size: 200% 200%;
	background-repeat: no-repeat;
	animation: searching 1.5s infinite;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	inset: 0.5rem 0.5rem auto auto;
	visibility: hidden;
	pointer-events: none;
	transform-origin: 50% 66%;
	z-index: -1;
}
.post-list.filtered:has(input.searching) .searching-animation {
	visibility: visible;
	z-index: 5;
}
.post-list.filtered:has(input.searching) .button {
	visibility: hidden;
}
@keyframes searching {
    0% {
		rotate: 0deg;
        background-position: left, top, right
    }
    30%,
    50% {
        background-position: left, top, right, center, center, center
    }
    80%,
    100% {
        background-position: center
    }
	100% {
		rotate: 240deg;
	}
}
@media (width < 640px) {
    .isi-event-panelists .grid {
        grid-template-columns: 1fr;
    }
}
@media (width < 1024px) {
    .isi-event-panelists .grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (width >= 768px) {
	:is(.related-posts, .latest-news) .isi-posts {
		grid-template-columns: repeat(auto-fill, minmax(clamp(31ch, 22vw, 40ch), 1fr));
	}
	.isi-posts {
		grid-template-columns: repeat(auto-fill, minmax(clamp(31ch, 23vw, 40ch), 1fr));
	}
}

/* GATED CONTENT */

.isi-gated {
    position: relative;
}
.isi-gated__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 3;
}
.isi-gated__card {
    pointer-events: auto;
    display: inline-block;
    padding: 2.5rem 3.5rem;
    background: var(--accent-background);
    color: var(--accent-foreground);
    text-align: center;
    max-inline-size: 90%;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.25);
}
.isi-gated__message {
    font-size: 1rem;
    line-height: 1.4;
    margin-bottom: 0.75rem;
}
.isi-gated__media {
    position: relative;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser {
    position: relative;
    inline-size: 100%;
    aspect-ratio: 16 / 9;
    pointer-events: none;
    user-select: none;
    overflow: clip;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser>* {
    margin: 0;
    inline-size: 100%;
    block-size: 100%;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser iframe,
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser video,
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser img {
    display: block;
    inline-size: 100%;
    max-inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser figure,
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser .wp-block-embed,
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser .wp-block-video {
    margin: 0;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser .wp-block-embed__wrapper {
    inline-size: 100%;
    block-size: 100%;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser .x-resp-embed,
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser .wp-block-embed__wrapper,
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser .wp-block-embed__wrapper > div {
    position: relative;
    inline-size: 100%;
    block-size: 100%;
    padding-block-end: 0;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser iframe {
    position: absolute;
    inset: 0;
    inline-size: 100%;
    block-size: 100%;
    border: 0;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__embed-teaser * {
    pointer-events: none;
}
.isi-gated--webinar.isi-gated--locked .isi-gated__media-disabled-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.38);
    z-index: 1;
    pointer-events: none;
}
.isi-gated--article.isi-gated--locked .isi-gated__body--teaser {
    filter: blur(6px);
    opacity: 0.7;
    user-select: none;
    pointer-events: none;
}
.isi-gated--article.isi-gated--locked .isi-gated__body--teaser * {
    filter: blur(6px);
}
.isi-gated__message--report {
    margin: 1rem 0 0.5rem;
}
.isi-register-modal {
    border: none;
    padding: 0;
    max-inline-size: 640px;
    inline-size: 90%;
}
.isi-register-modal__inner {
    padding: 1.5rem 1.75rem 2rem;
    position: relative;
}
.isi-register-modal__copy {
    margin-bottom: 1rem;
}
.isi-register-modal__title {
    margin: 0 0 0.5rem;
    font-size: 1.1rem;
}
.isi-register-modal__intro {
    margin: 0;
}
.isi-register-modal__close {
    appearance: none;
    background: transparent;
    border: 0;
    color: var(--dark-background);
    cursor: pointer;
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    font-size: 1.5rem;
    line-height: 1;
    padding: 0.15rem 0.35rem;
}
.isi-register-modal__close:hover,
.isi-register-modal__close:focus {
    color: var(--dark-background);
}
.isi-register-modal__form {
    min-block-size: 520px;
    transition: opacity 120ms ease-in-out;
}
.isi-register-modal__form.is-loading {
    opacity: 0.7;
}
.isi-register-modal__skeleton {
    block-size: 520px;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.06) 25%, rgba(0, 0, 0, 0.12) 37%, rgba(0, 0, 0, 0.06) 63%);
    background-size: 400% 100%;
    animation: isi-skeleton 1.2s ease-in-out infinite;
}
.isi-register-modal__prewarm {
    position: absolute;
    inline-size: 640px;
    max-inline-size: 90dvw;
    inset-inline-start: -9999px;
    inset-block-start: -9999px;
    visibility: hidden;
    pointer-events: none;
}
@keyframes isi-skeleton {
    0% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0 50%;
    }
}

/* TABS */

.for > .x-row:first-child .x-col:first-child > .x-text > :is(h2):first-child {
	color: inherit;
}
.x-tabs {
	background-color: transparent;
}
.x-tabs .x-tabs-list > ul {
	gap: var(--fs-1);
}
.x-tabs > .x-tabs-list {
	display: flex;
	flex-wrap: wrap;
	margin-block: 0 1.2lh;
	margin-block: 0;
}
.x-tabs.beige > .x-tabs-list {
	margin-block: 0 1.2lh;
}
.x-tabs.beige > .x-tabs-panels > .x-tabs-panel {
	background-color: var(--beige);
}
.x-tabs .x-tabs-list li > button {
	font-family: var(--heading-font);
	font-size: var(--fs-1);
	padding-inline: clamp(1.9em, 3.3vw, 2.2em);
	padding-block: 0.6lh;
	transition: 0.3s color linear, 0.3s background-color linear, 0.3s box-shadow linear;
	box-shadow: 0 -2px 0 0 transparent inset;
}
.x-tabs.beige .x-tabs-list li > button {
	padding-block: 0.4lh;
	padding-inline: 1.2ex;
}
.x-tabs.beige .x-tabs-list li > button:is(:hover, :active) {
	box-shadow: 0 -2px 0 0 var(--accent-background) inset;
}
.x-tabs .x-tabs-list li > button.x-active,
.x-tabs .x-tabs-panels > .x-tabs-panel.x-active {
	color: var(--foreground);
	background-color: var(--white);
}
.x-tabs.beige .x-tabs-list li > button.x-active {
	color: var(--accent-foreground);
	background-color: var(--accent-background);
}
.x-tabs .isi-logo {
	block-size: 0.82lh;
	transition: 0.2s filter linear;
}
.x-tabs button:not(.x-active):is(:hover, :active) .isi-logo {
	filter: brightness(0%);
}
.x-tabs .x-tabs-panel .x-row:has(.x-col.products),
.x-tabs .x-tabs-panel .x-row:has(.x-col.products) > .x-row-inner {
	display: flex;
	margin-inline: 0;
	padding-inline: 0;
	gap: 0;
}
.x-tabs.beige .x-tabs-panels > .x-tabs-panel.x-active {
	background-color: var(--background);
}
.x-tabs .x-tabs-panel .x-row:has(.x-col.products) .x-col {
	flex: 1 0 min(100%, 25rem);
	inline-size: auto;
	margin-inline: 0;
	padding-block: var(--cell-margin-block);
	padding-inline: calc(var(--cell-margin-inline) * 0.7);
}
.x-tabs.beige .x-tabs-panel .x-col.products {
	background-color: var(--light-beige);
}
.x-tabs .x-tabs-panel .x-row:has(.x-col.products) .x-text :is(h2) {
	color: var(--accent);
	margin-block: 0 0.5lh;
}
.x-tabs .x-tabs-panel .x-text > :is(h3, h4):first-child {
	font-size: var(--fs-2);
}
.x-tabs.beige .x-tabs-panel .x-row > .x-row-inner > .x-col > .x-text > :is(h3, h4):first-child {
	color: var(--foreground);
}
@media (width >= 768px) {
	.x-tabs .x-tabs-panel .x-row:has(.x-col.products) .x-text > h3:first-child {
		margin-block: 0.8lh 1.4lh;
	}
	.x-tabs .x-tabs-panel .x-row:has(.x-col.products) .x-col {
		padding-block: calc(var(--cell-margin-block) * 0.5);
	}
}

/* SOLUTION > PRODUCT LIST */

.solution-product-list {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin-block: 0;
	margin-inline: 0;
	padding-inline: 0;
	gap: var(--cell-margin-block) calc(var(--cell-margin-inline) * 0.5);
}
.solution-product-list li {
	flex: 1 0 min(100%, 12rem);	
	margin-inline: 0;
	padding-inline: 0;
}
.solution-product-list h4 {
	margin-block: 0 0.8lh;
}
.solution-product-list .isi-logo {
	inline-size: auto;
	block-size: 1em;
}
@media (width >= 768px) {
	.solution-product-list {
		padding-block: calc(var(--cell-margin-block) * 0.5) calc(var(--cell-margin-inline) * 0.5);
	}
}

/* ACCORDION */

.x-acc > .x-acc-item + .x-acc-item {
	margin-block: 1.4rem 0;
}
.x-acc > .x-acc-item,
.x-acc > .x-acc-item > .x-acc-header,
.page .x-acc > .x-acc-item > h3.x-acc-header,
.single-project .x-acc > .x-acc-item > h3.x-acc-header {
	background-color: transparent;
	transition: 0.2s color linear;
}
.x-acc > .x-acc-item > h3.x-acc-header {
	font-size: var(--fs-0);
}
.x-acc .x-acc-header .x-acc-header-text {
	font-size: var(--fs-2);
}
.page .x-acc > .x-acc-item > h3.x-acc-header:hover,
.single-project .x-acc > .x-acc-item > h3.x-acc-header:hover {
	color: var(--accent);
}
.x-acc > .x-acc-item {
	box-shadow: calc(var(--fs-2) * -1) 0 0 0 transparent, var(--fs-2) 0 0 0 transparent;
	background-color: transparent;
	transition: none;
}
.x-acc > .x-acc-item:has(.x-active) {
	box-shadow: calc(var(--fs-2) * -1) 0 0 0 var(--background), var(--fs-2) 0 0 0 var(--background);
	--background: var(--white);
}
.x-acc > .x-acc-item > .x-acc-header {
	cursor: pointer;
}
.x-acc-header .x-acc-header-text::before {
	display: block;
	position: absolute;
	content: '';
	inline-size: 1.3em;
	block-size: auto;
	aspect-ratio: 1;
	background: transparent scroll no-repeat 0% 0% / auto 100%;
	inset-inline-start: 0.9em;
}
.x-acc > .x-acc-item > div > .x-acc-content {
	border: 0 none;
	margin-block: 0 1rem;
}
.x-acc-header,
.x-acc-header + div {
	background-color: var(--background);
	box-shadow: 0 0 0 0 var(--white) inset;
	transition: 0.5s box-shadow ease-in-out, 0.25s block-size ease-in-out, 0.25s display linear;
	transition-behavior: allow-descrete;
}
.x-acc .x-active,
.x-acc .x-active + div {
	background-color: var(--background);
	box-shadow: 100vw 0 1rem 0 var(--background) inset;
}
.x-acc > .x-acc-item > .x-acc-header {
	padding-block: 1.6rem;
}
.x-acc .x-active .x-acc-header-indicator {
	color: transparent;
	transform: none;
	transition: none;
	rotate: none;
}
.x-col:has(.x-acc) > .x-acc > .x-acc-item > .x-acc-header > .x-acc-header-content > .x-acc-header-indicator {
	color: transparent;
	inline-size: 1em;
	translate: -1em 0;
}
.x-acc-header-indicator::before {
	display: block;
	position: absolute;
	content: '';
	inline-size: var(--fs-1);
	block-size: auto;
	aspect-ratio: 1;
	background: transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAzOCAxNiI+PHBhdGggZmlsbD0iI2MzYzNjMyIgZD0iTTE2IDkuMTQzSDkuMTQzVjE2SDYuODU3VjkuMTQzSDBWNi44NTdoNi44NTdWMGgyLjI4NnY2Ljg1N0gxNnoiLz48cGF0aCBmaWxsPSIjZmY1MjE1IiBkPSJNMzggOUgyMlY3aDE2eiIvPjwvc3ZnPg==") scroll no-repeat 0% 50% / auto 100%;
	transform: none;
	rotate: none;
	transition: 0s background-position-x linear 0.1s, 0.35s filter linear;
}
.x-acc .x-active .x-acc-header-indicator::before {
	background-position-x: 100%;
	rotate: 90deg;
	transform: none;
}
.x-acc button:is(:hover, :active) .x-acc-header-indicator::before {
	filter: brightness(0%);
}
.x-acc-content {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem;
	margin-block-start: 0;
	padding-block-start: 0;
}
.x-acc-content > * {
	flex: 1 0 100%;
}
.x-acc-content > * {
	flex: 1 0 100%;
}
.x-acc-header-text .x-icon {
	font-size: 1.2rem;
	margin-inline-end: 1.3em;
}
.x-acc .x-text ul {
	list-style: none;
	padding-inline: 0;
}
.x-acc .x-text > ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--fs-3) var(--fs-5);
}
.x-acc .x-text > ul > li {
	padding-inline: 0;
	flex: 1 0 min(12rem, 100%);
}
.x-acc .x-text > ul > li > :first-child {
	margin-block-start: 0;
}
.x-acc .x-text > ul > li > :last-child {
	margin-block-end: 0;
}
.x-acc .x-text > ul > li:first-child > * {
	margin-inline: 0 auto;
	inline-size: min(38rem, 100%);
}
.x-acc .x-content h4, 
.x-acc .x-content h5 {
	font-size: var(--fs-0);
}
.x-acc .x-content p,
.x-acc .x-content li,
.x-acc .x-content:not(:has(p, li)) {
	font-size: var(--fs-0);
	margin-block: 0.7lh;
	inline-size: min(100%, 70ch);
}
.x-acc .x-text li ul {
	margin-block: 0;
}
.x-acc .x-text li li {
	margin-block: 0.3lh;
}
.x-acc .x-text li li {
	margin-block: 0.3lh;
	font-size: var(--fs--1);
}
.x-acc .x-text > ul > li ul + h4,
.x-acc .x-text > ul > li ul + h5 {
	margin-block-start: 1.3lh;
}

/* COVERAGE */

.coverage .x-col {
	position: relative;
}
.coverage .x-row .text {
	z-index: 2;
}
.coverage .x-row .map {
	z-index: 1;
}
.coverage h2:first-child {
	color: var(--accent);
	font-size: var(--fs-3);
}
.coverage .x-text + .x-acc {
	margin-block-start: calc(var(--cell-margin-block) * 0.5);
}
.coverage .x-acc .x-acc-header .x-acc-header-text {
	font-size: var(--fs-1);
}
.coverage .x-col:has(.x-acc) > .x-acc > .x-acc-item > .x-acc-header > .x-acc-header-content > .x-acc-header-indicator {
	translate: 0;
}
.coverage .x-acc-header-indicator::before {
	inline-size: var(--fs-0);
}
.coverage .x-acc > .x-acc-item > .x-acc-header {
	padding-block: 0.4lh;
}
.coverage .x-acc > .x-acc-item > div > .x-acc-content {
	margin-block: 0 0.4lh;
}
.coverage .x-acc .x-content:not(:has(p, li)) {
	margin-block: 0.1lh;
}
.coverage .coverage-map .labels {
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
	transition: 0.6s clip-path ease-in-out;
}
.coverage .coverage-map .hide {
	display: block;
	clip-path: polygon(50% 50%, 50% 50%, 50% 50%, 50% 50%);
}
@media (width > 1000px) {
	.coverage .map {
		flex: 1;
		margin-inline: -3rem 0;
	}
}

/* LINKS */

.x-section.links .x-row {
	padding-block: var(--cell-margin-block);
}
.x-section.links.accent .x-row {
	--background: var(--accent-background);
	background-color: var(--background);
	min-block-size: 15rem;
	padding-block: var(--cell-margin-block);
	padding-inline: calc(var(--cell-margin-inline) * 0.5);
}
.x-section.links .x-row .x-row-inner {
	padding-block: 0;
	margin-inline: 0;
	gap: var(--cell-margin-block) var(--cell-margin-inline);
}
.x-section.links .x-col {
	margin-block: 0;
	margin-inline: 0;
}
.x-section.links h2 {
	margin-block: 1rem;
	font-size: var(--fs-0);
}
.x-section.links ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 0.5lh var(--fs-0);
}
.x-section.links h2 svg {
	inline-size: auto;
	block-size: var(--fs-2);
}
.x-section.links.accent .isi-motif {
	fill: var(--accent-foreground);
}
.x-section.links .x-col:first-child p {
	inline-size: min(100%, 28ch);
	margin-inline: 0 auto;
	text-wrap: balance;
}
.x-section.links .x-col:last-child ul {
	display: flex;
	gap: var(--fs-0);
}
.x-section.links .x-col:last-child li {
	flex: 0 1 auto;
}
.x-section.links nav .x-nav .menu-item {
	line-height: 110%;
}
.x-section.links nav .x-nav .menu-item.menu-item-parent {
	flex: 1 0 6rem;
}
.x-section.links nav h3 {
	color: inherit;
	font-size: var(--fs-0);
	text-transform: inherit;
}
.x-section.links nav a {
	padding-block: 0.1lh;
}

@media (width >= 768px) {
	.x-section.links .x-row-inner > .x-col {
		flex: 2 0 5rem;
	}
	.x-section.links .x-row-inner > .x-col:is(:first-child, :last-child) {
		flex: 1 0 5rem;
	}
}

/* CONTACT, REQUEST DEMO, NEWSLETTER AND FORMS */

.contact .inputs-list {
	margin-block: 0;
}
.form-area strong {
	font-weight: inherit;
}
.form-area br,
.contact fieldset:has(h3),
.form-area fieldset:has([type="hidden"]),
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > input[type="hidden"],
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone::after,
.form-area .hs-form .hs-fieldtype-phonenumber .input::after,
.form-area .hs-form .hs-fieldtype-phonenumber:has(select) .input::after {
	display: none;
}
.form-area .hs-form {
	--field-gap: 1rem;
	--field-padding-inline: 1rem;
	--field-block-size: 1.37lh;
}
.form-area .hs-form fieldset,
.form-area .hs-form .hs-form-field {
	position: relative;
	max-inline-size: none;
}
.form-area .hs-form .hs-form-field {
	margin: 0 0 var(--field-gap) 0;
}
.form-area .hs-form label,
.form-area .hs-form .hs-form-field > label {
	color: var(--dark-grey);
	font-size: var(--fs--1);
}
.form-area fieldset:has(h3) {
	block-size: inherit;
}
.form-area h3,
.form-area h4 {
	font-family: var(--body-font);
	font-size: var(--fs-0);
	font-weight: 400;
	margin-block: 0.5lh 0.4lh;
	line-height: var(--fs-2);
	text-transform: uppercase;
}
.form-area .hs-form .hs-error-msgs {
	position: absolute;
	inset: auto 0 -1lh auto;
	margin-block: 0;
	font-size: var(--fs--2);
	color: var(--accent-dark);
}
.form-area .hs-form .hs-error-msgs li {
	font-size: inherit;
	color: inherit;
}
.form-area .hs-form .hs-error-msgs label {
	display: flex;
	color: inherit;
	font-size: inherit;
}
.form-area .hs-form input[type="text"],
.form-area .hs-form input[type="email"],
.form-area .hs-form input[type="tel"],
.form-area .hs-form input[type="number"],
.form-area .hs-form input[type="url"],
.form-area .hs-form input[type="date"],
.form-area .hs-form select,
.form-area .hs-form textarea {
	inline-size: 100%;
	box-sizing: border-box;
	color: var(--foreground);
	background: var(--beige);
	margin-block-end: 0;
	border: 0;
	border-radius: 0;
	padding: 0 var(--field-padding-inline);
	block-size: var(--field-block-size);
	line-height: var(--field-block-size);
	box-shadow: none;
	outline: none;
}
.form-area .hs-form textarea {
	block-size: 140px;
	line-height: 1.4;
	padding: 18px var(--field-padding-inline);
	resize: vertical;
}
.form-area .hs-form input[type="submit"],
.form-area .hs-form button[type="submit"] {
	padding-block: 0.45lh;
}
.form-area .hs-form input[type="checkbox"] {
	inline-size: 18px;
	block-size: 18px;
	margin: 2px 0 0 0;
	accent-color: var(--foreground);
}
.form-area .hs-form select option:first-child,
.form-area .hs-form select option:disabled,
.form-area .hs-form ::placeholder {
	color: var(--dark-grey, var(--dark-grey, #767676));
	opacity: 1;
}
.form-area .hs-form select:has(option:checked:disabled) {
	color: var(--dark-grey, var(--dark-grey, #767676));
}
.form-area .hs-form input:focus,
.form-area .hs-form select:focus,
.form-area .hs-form textarea:focus {
	outline: 2px solid rgba(0, 0, 0, .15);
	outline-offset: 2px;
}
.form-area .hs-form .hs-form-field .input {
	position: relative;
}
.form-area .hs-form select {
	background-image: none;
	padding-inline-end: 56px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.form-area .hs-form .hs-form-field:has(select) .input::after {
	content: "";
	position: absolute;
	inset-inline-end: 18px;
	inset-block-start: 50%;
	transform: translateY(-35%);
	inline-size: 0;
	block-size: 0;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 8px solid var(--accent);
	pointer-events: none;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone {
	position: relative;
	display: flex;
	gap: 18px;
	align-items: stretch;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > select {
	flex: 0 0 300px;
	max-inline-size: 45%;
	inline-size: auto;
	padding-inline-end: 56px;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > input[type="tel"],
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > input[type="text"] {
	flex: 1 1 auto;
	min-inline-size: 0;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone::after {
	content: "";
	position: absolute;
	inset-block-start: 50%;
	inset-inline-start: calc(300px - 18px);
	transform: translateY(-35%);
	inline-size: 0;
	block-size: 0;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 8px solid var(--accent);
	pointer-events: none;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > select {
	background-image: url("data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZjUyMTUiIHZpZXdCb3g9IjAgMCAxMCA2Ij48cGF0aCBkPSJNNC43NjMgNiAwIDBoOS41MjZ6Ii8+PC9zdmc+");
	background-repeat: no-repeat;
	background-position: right 18px center;
	background-size: 0.8rem 0.6rem;
	padding-inline-end: 56px;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone {
	display: flex;
	gap: 18px;
	align-items: stretch;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > select {
	flex: 0 0 300px;
	max-inline-size: 45%;
	inline-size: auto;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > input[type="tel"],
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > input[type="text"] {
	flex: 1 1 auto;
	min-inline-size: 0;
}
.form-area .hs-form .hs-form-booleancheckbox,
.form-area .hs-form .hs-form-checkbox {
	margin: 0 0 8px 0;
}
.form-area .hs-form .hs-form-booleancheckbox label,
.form-area .hs-form .hs-form-checkbox label {
	display: flex;
	color: var(--foreground);
	font-size: var(--fs--1);
	align-items: flex-start;
	gap: 12px;
	line-height: 1.35;
}
.form-area .hs-form .hs-submit {
	margin-block-start: 18px;
}
.form-area .hs-form fieldset.form-columns-2 {
	display: flex;
	gap: 1rem;
}
.form-area .hs-form fieldset.form-columns-2 .hs-form-field,
.form-area .hs-form fieldset.form-columns-2 .hs-dependent-field {
	position: relative;
	inline-size: 100%;
}
.form-area .hs-form fieldset.form-columns-2 .input {
	margin-inline-end: 0;
}
.form-area .inputs-list {
	list-style: none;
	margin-block: 0.1lh;
	margin-inline-start: 0;
	padding-inline-start: 0;
}
.form-area,
.form-area .hs-form,
.form-area .hs-form fieldset,
.form-area .hs-form .hs-form-field,
.form-area .hs-form .hs-dependent-field,
.form-area .hs-form .input {
	max-inline-size: 100%;
	min-inline-size: 0;
	box-sizing: border-box;
}
.form-area .hs-form fieldset {
	inline-size: 100%;
	margin-inline: 0;
}
.form-area .hs-form input,
.form-area .hs-form select,
.form-area .hs-form textarea {
	min-inline-size: 0;
}
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone,
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > select,
.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > input[type="tel"] {
	inline-size: 100%;
}
.form-area .hs-form .hs-form-booleancheckbox label,
.form-area .hs-form .hs-form-checkbox label {
	display: flex;
	align-items: flex-start;
	gap: 1em;  
}
.form-area .hs-form .hs-form-booleancheckbox label > input[type="checkbox"],
.form-area .hs-form .hs-form-checkbox label > input[type="checkbox"] {
	flex: 0 0 20px;
	inline-size: 20px;
	block-size: 20px;
	min-inline-size: 20px;
	margin: 2px 0 0 0;
}
.form-area .hs-form .hs-form-booleancheckbox label > span,
.form-area .hs-form .hs-form-checkbox label > span {
	flex: 1 1 auto;
	min-inline-size: 0;
}
.form-area .hs-form .hs-form-field > label:has(> span:not(:empty)),
.form-area .hs-form .hs-form-field > label > span:not(:empty) {
	margin-block-end: 10px;
}
.form-area .hs-form .hs-form-booleancheckbox label > span,
.form-area .hs-form .hs-form-checkbox label > span {
	color: var(--foreground);
}
.form-area .grecaptcha-logo,
.contact .grecaptcha-logo {
	filter: grayscale(70%) contrast(80%) brightness(130%);
}
#demo-modal {
	overflow: clip auto;
	max-block-size: 89.6dvh;
}
#demo-modal::backdrop {
    z-index: auto;
}
#request-demo-form .form-area {
	inline-size: min(calc(100% - var(--page-margin-inline) * 2), 85ch);
}
#request-demo-form fieldset :is(.s-richtext, p) {
	font-family: var(--body-font);
	font-size: var(--fs-0);
}
#request-demo-form fieldset label > input[type="checkbox"] {
	align-self: start;
}
@media (width < 600px) {
	.form-area .hs-form,
	.form-area .hs-form .hs-fi {
		padding-inline: 0;
	}
	.form-area .hs-form fieldset.form-columns-2 {
		display: block;
	}
	.form-area .hs-form fieldset.form-columns-2 .hs-form-field {
		inline-size: 100%;
	}
	.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone {
		flex-direction: column;
	}
	.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > select {
		flex: 0 0 auto;
		max-inline-size: none;
	}
	.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone::after {
		inset-inline: auto 18px;
		transform: translateY(-35%);
	}
	.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone {
		flex-direction: column;
	}
	.form-area .hs-form .hs-fieldtype-phonenumber .hs-fieldtype-intl-phone > select {
		flex: 0 0 auto;
		max-inline-size: none;
	}
}
@media (width >= 1000px) {
	.form-area {
		position: relative;
	}
	.contact :is(#title, #form) .x-row > .x-row-inner > .x-col:only-child {
		margin-inline: auto;
		flex: 0 1 min(100%, var(--page-max-inline-size) * 0.7);
	}
	.form-area .hs-recaptcha.field.hs-form-field {
		position: absolute;
		inset: auto 0 -0.7lh auto;
		inline-size: fit-content;
		outline: 5px solid var(--background);
	}
	.contact .form-area .hs-recaptcha.field.hs-form-field {
		inset: auto -1.5rem -0.3rem auto;
		scale: 0.8;
		margin-block: 0;
	}
}
@supports not selector(:has(*)) {
	.form-area .hs-form .hs-fieldtype-select .input::after {
		content: "";
		position: absolute;
		inset-inline-end: 18px;
		inset-block-start: 50%;
		transform: translateY(-35%);
		inline-size: 0;
		block-size: 0;
		border-left: 6px solid transparent;
		border-right: 6px solid transparent;
		border-top: 8px solid var(--accent);
		pointer-events: none;
	}
}

/* DOCUMENTATION */

.x-section.documentation .x-text > :is(h2, h3) {
	--foreground: var(--foreground);
	color: var(--foreground);
	font-size: var(--fs-1);
}
.x-section.documentation .x-text > :is(h3),
.x-section.documentation .x-text :is(h4, h5) {
	font-size: var(--fs-0);
}
.x-section.documentation p + :is(h2, h3) {
	margin-block-start: 2lh;
}
.documentation .marker {
	display: inline-block;
	font-weight: 600;
	margin-inline: 0 0.5ch;
}
.documentation .marker.letter {
	margin-inline-start: 2ch;
}
.documentation :is(th, td) {
	text-align: start;
	vertical-align: top;
}
.documentation thead th {
	border-block-end: 1px solid var(--dark-grey);
}
.documentation th {
	font-weight: 600;
}
.x-section.documentation li > :is(h2, h3, h4) {
	margin-block-end: 0.25lh;
}

@media (width >= 600px) {
	.documentation table:has(tr > th:nth-child(3):last-child) :is(th, td) {
		inline-size: 25%;
		padding-block: 0.3lh;
		padding-inline: 0.5ex;
	}
	.documentation table:has(tr > th:nth-child(3):last-child) :is(th, td):nth-child(2) {
		inline-size: 50%;
	}
}

/* DIALOG / MODAL */

dialog {
	border: 1px solid var(--dark-grey);
	outline: none;
}
dialog[open] {
	transform: none;
	@starting-style {
		transform: translateY(-0.5rem);
	}
}
dialog:not([open]) {
	pointer-events: none;
	transform: translateY(-0.5rem);
	transition: 0.3s opacity linear, 0.3s transform ease-in-out, 0.4 clip-path ease-in-out, 0.3s display linear;
	transition-behavior: allow-descrete;
}
dialog::backdrop {
	background-color: transparent;
	transition: 0.3s background-color linear;
	@starting-style {
		background-color: transparent;
	}
}
dialog[open]::backdrop {
	background-color: color-mix(in lab, var(--dark-grey) 70%, transparent);
}
dialog a {
	color: var(--foreground)
}
dialog h2:first-child {
	font-family: var(--body-font);
	font-size: var(--fs--1);
	font-weight: 500;
	text-transform: uppercase;
}
dialog h2:first-child {
	margin-block: clamp(0.25lh, 1vw + 1vh, 1lh) clamp(0.5lh, 2vw + 2vh, 1.9lh);
}
dialog .close {
	background: transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiM3Njc2NzYiIHZpZXdCb3g9IjAgMCAxMiAxMiI+PHBhdGggZD0iTTExLjY2NyAxLjE3NSAxMC40OTIgMCA1LjgzMyA0LjY1OCAxLjE3NSAwIDAgMS4xNzVsNC42NTggNC42NThMMCAxMC40OTJsMS4xNzUgMS4xNzUgNC42NTgtNC42NTkgNC42NTkgNC42NTkgMS4xNzUtMS4xNzUtNC42NTktNC42NTl6Ii8+PC9zdmc+Cg==") scroll no-repeat 50% 50% / 80%;
	color: transparent;
	inline-size: 0.4rem;
	position: absolute;
	inset: calc(var(--page-margin-inline) - 0.2rem) calc(var(--page-margin-inline) - 0.2rem) auto auto;
	display: flex;
	block-size: 0.4rem;
	transition: 0.2s filter linear;
}
dialog .close:is(:hover, :focus-visible) {
	filter: brightness(0%);
}
#search-modal {
	inline-size: min(calc(100% - 2 * var(--page-margin-inline)), 55ch);
	overflow-x: hidden;
}
#search-modal .search-form {
	display: flex;
	flex-wrap: wrap;
	place-items: center;
	margin: 0;
	gap: 0;
}
#search-modal label {
	flex: 5 0 4rem;
}
#search-modal :is(label, input[type="search"], button[type="submit"]) {
	border: 0 none;
	margin: 0;
	line-height: 130%;
	block-size: inherit;
	box-sizing: inherit;
	font-size: inherit;
}
#search-modal :is(input[type="search"], button[type="submit"]) {
	background-color: var(--beige);
	padding-block: 0.65lh;
	outline: none;
	inline-size: 100%;
}
#search-modal input[type="search"] {
	padding-inline: 1.7ex 0.6ex;
}
#search-modal input[type="search"]::placeholder {
	color: var(--dark-grey);
}
#search-modal button[type="submit"] {
	flex: 0 1 2.2rem;
	padding-inline: 0.5ex 1.5ex;
}
#search-modal button[type="submit"] svg {
	position: relative;
	translate: 0 0.1lh;
	transition: 0.2s filter linear, 0.05s scale ease-in-out 0.05s;
}
#search-modal button[type="submit"]:is(:hover, :focus-visible, :focus-within) svg {
	filter: brightness(0%);
}
#search-modal .close {
	position: relative;
	inset: unset;
	flex: 0 1 1rem;
	margin-inline-start: 1.3em;
	outline: none;
}
#login-modal {
	--background: var(--beige);
	--foreground: var(--black);
	background-color: var(--background);
	padding-block: 2rem;
	padding-inline: var(--page-margin-inline);
	line-height: 120%;
}
#login-modal ul {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--fs-2);
	margin-inline: calc(var(--fs-0) * -0.4);
	margin-block: 0;
	padding-inline: 0;
	list-style: none;
}
#login-modal li > a {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.2lh;
	padding-block: clamp(0.2lh, 0.7vh, 0.4lh);
	padding-inline: 1ex;
	outline: 3px solid transparent;
	outline-offset: 0;
	transition: 0.2s background-color linear, 0.2s outline linear;
}
#login-modal li > a:is(:hover, :focus-visible) {
	background-color: var(--accent-background);
	--color: var(--black);
	--link-interaction: var(--black);
	outline: 1.3ex solid var(--accent-background);
	outline-offset: 0;
	text-decoration: none;
	text-decoration-color: transparent;
}
#login-modal li > a span {
	display: block;
}
#login-modal .logo svg {
	inline-size: auto;
	block-size: var(--fs-0);
}
#login-modal .request-demo a {
	text-decoration: underline;
	text-decoration-color: var(--accent);
}
#login-modal li > a .isi-motif {
	transition: 0.3s fill linear;
}
#login-modal li > a:is(:hover, :focus-visible) .isi-motif {
	fill: var(--black);
}
#login-modal .request-demo {
	margin-block: clamp(0.5lh, 2vw + 2vh, 1.9lh) clamp(0.25lh, 1vw + 1vh, 1lh);
}
#language-modal {	
	padding: 0;
	border: 1px solid var(--light-grey);
}
#language-modal::backdrop {
	background-color: transparent;
}
#language-modal:not([open]) {
	clip-path: inset(0% 0% 100% 0%);
}
#language-modal[open] {
	clip-path: inset(0% 0% 0% 0%);
}
#language-modal ul {
	gap: 0;
}
#language-modal .language-link {
	display: flex;
	background: var(--background) no-repeat scroll calc(100% - 0.9em) 55% / 0.7em auto;
	padding-block: 0.5lh;
	padding-inline: 1.3ex;
	transition: 0.3s background-color linear;
	gap: 1ex;
	flex: 1 0 100%;
}
#language-modal li:first-child .language-link {
	padding-block-start: 0.7lh;
}
#language-modal li:last-child .language-link {
	padding-block-end: 0.7lh;
}
#language-modal .language-link:hover {
	background-color: var(--beige);
}
#language-modal .active .language-link {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMCA4Ij48cGF0aCBkPSJNMy4xODIgNi4zMjguNzk1IDMuODIxIDAgNC42NTcgMy4xODIgOCAxMCAuODM2IDkuMjA1IDB6Ii8+PC9zdmc+");
}
@media (width >= 768px) {
	#login-modal {
		background: var(--background);
	}
	#login-modal {
		inset: 0 0 0 auto;
		block-size: 100dvh;
		margin-block: 0;
		inline-size: min(90%, 45ch);
		box-sizing: content-box;
		border-block: 0 none;
	}
	#login-modal[open] {
		display: grid;
		grid-template-columns: 1fr;
		place-content: start start;
	}
	#login-modal .request-demo {
		place-self: end start;
	}
	#language-modal {
		inset: calc(var(--admin-bar-block-size) + 2.1rem) calc(var(--page-margin-inline) - 1.3ex) auto auto;
		inline-size: min(50%, 8rem);
	}
}
@media (height >= 900px) {
	#login-modal .request-demo {
		position: absolute;
		inset: auto var(--page-margin-inline) var(--fs-2) var(--page-margin-inline);
	}
}
@media (prefers-reduced-motion: reduce) {
	dialog {
		transition: none;
		transform: none;
		clip-path: none;
	}

	dialog::backdrop {
		transition: none;
	}
}

/* SEARCH RESULTS */

.search-results .list h3 {
    margin-block: 0;
}
.search-results .list .type {
    text-transform: uppercase;
    font-family: var(--body-font);
    font-weight: 400;
    display: flex;
    font-size: var(--fs-0);
}
.search-results .list .title {
    font-size: var(--fs-2);
    margin-block: 0;
}
.search-results .list .excerpt {
    font-size: var(--fs-0);
}
.search-results .prev.page-numbers,
.search-results .previous.page-numbers,
.search-results .next.page-numbers {
	display: flex;
	font-size: 2.3rem;
	line-height: 100%;
	aspect-ratio: 1;
	align-items: center;
	justify-content: center;
	min-block-size: 0;
	min-inline-size: 0;
	margin-block-end: 0.43rem;
	padding: 0.66rem;
}

/* SITE MAP */

.sitemap {
	list-style: none;
	margin: 0;
	padding: 0;
}
.sitemap,
.sitemap ul {
	list-style: none;
}
.sitemap ul {
	margin: 0;
	padding-inline: 1.3ex 0;
}
.sitemap li {
	margin-block: 0.1lh;
	margin-inline: 0;
	padding: 0;
}
.sitemap li > :is(h2, h3, h4) {
	margin-block: 0 1.05lh;
}
.sitemap li ul:last-child {
	margin-block-end: 1lh;
}
.sitemap :is(h2, h3, li, a, span) {
	font-size: var(--fs-0);
}
.sitemap :is(h2, h3) {
	margin: 0 0 0.5lh 0;
	font-weight: 600;
}
.sitemap :is(h3, h4) {
	font-family: var(--body-font);
}
.sitemap a {
	color: inherit;
	text-decoration: none;
}
.sitemap a:hover {
	text-decoration: underline;
}
.sitemap span {
	font-weight: 600;
}
@media(width >= 980px) {
	.sitemap {
		column-width: 14rem;
		gap: var(--cell-margin-inline);
	}
	.sitemap > li {
		break-inside: avoid;
	}
	.sitemap > .products {
		padding-block: 0.7lh 0.2lh;
		padding-inline: 1em;
		outline: 2px solid var(--beige);
		background-color: var(--beige);
	}
}

/* SUPPLEMENTARY */

#wp-admin-bar-customize,
#wp-admin-bar-comments,
#wp-admin-bar-new-content,
#wp-admin-bar-wpseo-menu,
.otgs-development-site-front-end {
	display: none;
	visibility: hidden;
}
body.admin-bar {
	--admin-bar-block-size: 46px;	
}
.centred :is(h1, p, .x-text),
.centered :is(h1, p, .x-text) {
	text-align: center;
}
.not-found #title {
	margin-block-start: clamp(3rem, 17vh, 16rem);
}
#title.notice h1,
.not-found #title h1 {
	margin-block-end: 0.2lh;
}
.not-found #title mark {
	color: var(--white);
}
.x-section.notice .x-text > p:first-child {
	font-family: var(--heading-font);
	font-size: var(--fs-1);
	margin-block-end: 1.7lh;
}
.cky-btn-revisit-wrapper.cky-revisit-bottom-left,
.cky-btn-revisit-wrapper.cky-revisit-bottom-right {
	inset: auto var(--page-margin-inline) var(--page-margin-inline) auto;
}
@media (width >= 783px) {
	body.admin-bar {
		--admin-bar-block-size: 32px;
	}
}
