@font-face {
	font-display: swap;
	font-family: "IBM Plex Sans";
	font-style: normal;
	font-weight: 400;
	src: url("../fonts/ibm-plex-sans-v23-latin-regular.woff2") format("woff2");
}

@font-face {
	font-display: swap;
	font-family: "IBM Plex Sans";
	font-style: normal;
	font-weight: 700;
	src: url("../fonts/ibm-plex-sans-v23-latin-700.woff2") format("woff2");
}

:root {
	--contentBoxedWidth: 85rem;
	--contentBoxedMediumWidth: 75rem;
	--contentBoxedSmallWidth: 60rem;
	--menu-highlight-bg-color: var(--secondColor);
	--headline-color: #747474;
	--menu-highlight-border-radius: 0.25em;
	--body-fontSize: 1.125rem;
	--paragraph-small-font-size: 0.875rem;
}

.h1-fontsize {
	font-size: var(--h1-fontSize);
}
.h2-fontsize {
	font-size: var(--h2-fontSize);
}
.h3-fontsize {
	font-size: var(--h3-fontSize);
}
.h4-fontsize {
	font-size: var(--h4-fontSize);
}
.h5-fontsize {
	font-size: var(--h5-fontSize);
}
.h6-fontsize {
	font-size: var(--h6-fontSize);
}

html {
	scroll-behavior: smooth;
	overscroll-behavior: none;
}
html,
body {
	font-family: "IBM Plex Sans";
	& * {
		hyphens: none;
	}
}
h1,
h2,
h3,
h4,
h5,
h6 n .h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	color: var(--headline-color);
	margin-block-end: 2rem;
}

p {
	margin-block-end: 1rem;
	max-width: 64ch;
}
.header {
	@media only screen and (max-width: 767px) {
		background: hsl(0 0 100% / 80%);
		backdrop-filter: blur(0.5rem);
	}
	&.cloned {
		background: hsl(0 0 100% / 80%);
		backdrop-filter: blur(0.5rem);
	}
}
.mobile_vertical {
	& ul {
		display: grid;
		& .highlight {
			margin-block-start: 0;
		}
	}
}
.ar-4-5 {
	& figure {
		margin-inline-start: 4rem;
		@media only screen and (max-width: 60rem) {
			margin-inline-start: 0rem;
		}
		& img {
			aspect-ratio: 4 / 5;
			object-fit: cover;
			max-width: unset;
			width: 100%;
			height: auto;
			@media only screen and (max-width: 60rem) {
				aspect-ratio: 5 / 4;
				width: 100%;
				max-width: 100%;
			}
		}
	}
}
.mainmenu {
	& ul {
		& li {
			margin-left: 0.375rem;
			margin-right: 0.375rem;

			& a {
				font-weight: 700;
				font-size: 1rem;
			}
		}
	}
}

.ce_hyperlink a,
a.btn {
	border-radius: var(--menu-highlight-border-radius);
}
.ce_hyperlink.btn-size-large a,
.ce_revolutionslider_hyperlink.btn-size-large {
	min-width: unset;
	min-width: min-content;
}
.autogrid_grid {
	margin-left: 0;
	margin-right: 0;
	& .column {
		padding-left: 0;
		padding-right: 0;
	}
	&.custom {
		&.grid_33_33_33 {
			grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
			gap: 2rem;
			& .column {
				border-radius: var(--menu-highlight-border-radius);
				transition: all 175ms ease-in-out;
				&:hover {
					transform: translateY(-2rem);
				}
			}
		}
		&.grid_50_50 {
			grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
			gap: 4rem;
			@media only screen and (max-width: 60rem) {
				grid-template-columns: 100%;
				gap: 0rem;
			}
		}
	}
}

.autogrid_row {
	display: grid;
	margin-left: unset;
	margin-right: unset;
	&.custom {
		grid-template-columns: repeat(auto-fit, minmax(14.5rem, 1fr));
		gap: 3rem;
		row-gap: 3rem;
		@media only screen and (min-width: 20rem) and (max-width: 68rem) {
			row-gap: 1rem;
		}
		& .column {
			padding: unset;
			border-radius: var(--menu-highlight-border-radius);
			height: 100%;
			& > .attributes {
				height: 100%;
				display: grid;
				grid-template-rows: 1fr auto;
			}
			&.col_4,
			&.col_6 {
				max-width: unset !important;
			}
		}
	}
	&.vita {
		justify-items: center;
		margin-block-end: 4rem;
	}
}
.ce_teambox {
	border-radius: var(--menu-highlight-border-radius);
	border: 1px solid rgb(220, 220, 220);
	display: grid;
	& .teambox_content {
		display: grid;
		align-content: start;
		gap: 1rem;
		padding-inline: 1rem;
		padding-block: 1rem;
	}
	& .image_container {
		& img {
			aspect-ratio: 3 / 4;
			object-fit: cover;
			block-size: 100%;
			inline-size: 100%;
		}
	}
	& .name {
		margin: 0;
		font-size: calc(var(--h6-fontSize) - 0.125rem);
	}
	& .function {
		line-height: 1.3;
		font-size: calc(var(--paragraph-small-font-size) + 0.125rem);
		color: var(--bgColorDarkGray);
		margin-bottom: unset;
		max-width: 36ch;
	}
	& .socials {
		display: none;
	}
	.vita & {
		& .teambox_inside {
			display: grid;
			grid-template-columns: 11rem 1fr;
			@media only screen and (min-width: 10rem) and (max-width: 40rem) {
				grid-template-columns: 1fr;
			}
		}
	}
}

.ce_text_extented ul,
.ce_text ul {
	list-style-position: inside;
	padding-left: 0;
	& li {
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 0.75rem;
		align-items: start;
		max-inline-size: 64ch;

		&:before {
			content: "\f111";
			display: flex;
			font-family: FontAwesome;
			color: var(--accentColor);
			font-size: 0.5em;
		}
	}
}
.ce_text_extented ol,
.ce_text ol {
	& li {
		margin-block-end: 1rem;
	}
}
#slider {
	& h1 {
		font-size: var(--h3-fontSize);
	}
}
#footer {
	font-size: 1rem;
	& .inside {
		padding-block: 6rem;
	}
	& .autogrid_grid {
		row-gap: 2rem;
	}
	@media only screen and (min-width: 20rem) and (max-width: 68rem) {
		row-gap: 2rem;
	}
}
.submenu_v1 {
	margin: 0;
	padding-block: 0;
	& a {
		padding-block: 0.375em;
		padding-inline: 1em;
		margin-inline-end: 0.5em;
		margin-block: 0;
		&.active {
			color: #fff;
			background-color: var(--accentColor);
			border-radius: 0 0 var(--menu-highlight-border-radius)
				var(--menu-highlight-border-radius);
		}
	}
	& ul {
		display: flex;
	}
	@media only screen and (min-width: 768px) and (max-width: 68rem) {
		display: none;
	}
}
@media only screen and (min-width: 768px) and (max-width: 68rem) {
	.smartmenu {
		display: block;
	}
}
@media only screen and (min-width: 768px) and (max-width: 68rem) {
	.mainmenu {
		display: none;
	}
}
.mod_breadcrumb ul {
	font-size: 1.25rem;
	line-height: 1;
	text-align: center;
	float: unset;
	padding: 0.5em 0;
	display: flex;

	& li {
		display: inline-block;
		margin-right: 1rem;
		display: flex;
		&.active {
			color: var(--accentColor);
			font-weight: 700;
		}
		&:before {
			font-family: "FontAwesome";
			content: "\f0da";
			margin-right: 0.5rem;
			&:nth-of-type(1) {
				content: "\f0151";
			}
		}
		&:nth-of-type(2) {
			display: none;
		}
	}
}
.ce_accordion {
	& .toggler {
		font-size: calc(var(--h6-fontSize) - 0.125rem);
		&.ui-state-active {
			background-color: var(--accentColor);
			color: #fff;
			&:before {
				color: #fff;
			}
		}
	}
}

.ce_er24_legal_text {
	* + * {
		margin-top: 1rem;
	}
	& > :first-child {
		display: none;
	}
	& h1,
	& h2,
	& h3,
	& h4 {
		font-size: var(--h2-font-size);
		margin-block: 2rem 1rem;
		max-width: 56ch;
		text-wrap: balance;
	}
}

.cta.alt {
	&.ce_hyperlink.ce_hyperlink-extended {
		&.btn-white-outline {
			border-color: var(--accentColor) !important;
			border-width: var(--hyperlink-large-border-width);
		}
	}
}

.ce_icon_text {
	margin-block-end: 0.5rem;
	& > a {
		display: grid;
		grid-template-columns: auto 1fr;
		align-items: start;
		gap: 0.5rem;
		& .icon {
			display: grid;
			margin-block-start: 0.5rem;
			color: var(--accentColor);
		}
		& .text.div {
			text-wrap: pretty;
		}
	}
}

iframe {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 9;
}

.tp-bannertimer {
	display: none;
}
.ce_popup_start .ce_popup_content {
	border-radius: var(--menu-highlight-border-radius);
	overflow: clip;
	& .h4,
	& .h6,
	& h2 {
		margin-block-end: 0.75rem;
	}
	& p {
		max-inline-size: 64ch;
		text-wrap: pretty;
		font-size: 1rem;
		line-height: 1.4;
	}
	& .ce_hyperlink-extended {
		margin-block-start: 1rem;
	}
	& .checkbox {
		padding-inline-start: 3rem;
		background: unset;
		padding-block: 1.5rem;
		min-block-size: 2rem;
		font-size: 1rem;
		font-weight: bold;
		border-top: 3px solid #e6e6e6;
		& input {
			margin-inline-end: 0.75rem;
			inline-size: 1rem;
			block-size: 1rem;
		}
	}
}

.header .mainmenu ul li a.highlight span,
.smartmenu-content ul li a.highlight,
#mmenu .mod_navigation ul li a.highlight {
	border-color: var(--customColor1) !important;
	background-color: var(--customColor1) !important;
}

& .highlight.hide_desktop {
	margin-inline: auto;
	& a {
		display: flex;
		position: fixed;
		bottom: 6rem;
		right: 0.125rem;
		max-inline-size: 10ch;
		z-index: 99;
		text-align: center;
		line-height: 1.3;

		font-size: calc(var(--menu-highlight-font-size) * 0.875);
		color: var(--menu-highlight-color);
		border-color: var(--customColor1) !important;
		background-color: var(--customColor1) !important;
		border-radius: var(--menu-highlight-border-radius);
		border-width: var(--menu-highlight-border-width);
		font-weight: var(--menu-highlight-font-weight);
		padding-left: var(--menu-highlight-padding-lr);
		padding-right: var(--menu-highlight-padding-lr);
		padding-top: var(--menu-highlight-padding-tb);
		padding-bottom: var(--menu-highlight-padding-tb);
		border-style: solid;
	}
}

/* .header .inside,
.header .cloned .inside {
	@media only screen and (max-width: 767px) {
		display: flex;
		justify-content: space-between;
		align-items: center;
		& .highlight {
			margin-inline: auto;
			& a {
				font-size: calc(var(--menu-highlight-font-size) * 0.875);
				color: var(--menu-highlight-color);
				border-color: var(--customColor1) !important;
				background-color: var(--customColor1) !important;
				border-radius: var(--menu-highlight-border-radius);
				border-width: var(--menu-highlight-border-width);
				font-weight: var(--menu-highlight-font-weight);
				padding-left: var(--menu-highlight-padding-lr);
				padding-right: var(--menu-highlight-padding-lr);
				padding-top: var(--menu-highlight-padding-tb);
				padding-bottom: var(--menu-highlight-padding-tb);
				border-style: solid;
			}
		}
	}
} */
