@font-face {
	font-display: swap;
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 300;
	src: url('/shared/font/nunito-v26-latin-300.woff2') format('woff2');
}
@font-face {
	font-display: swap;
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 400;
	src: url('/shared/font/nunito-v26-latin-400.woff2') format('woff2');
}
@font-face {
	font-display: swap;
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 600;
	src: url('/shared/font/nunito-v26-latin-600.woff2') format('woff2');
}
@font-face {
	font-display: swap;
	font-family: 'Nunito';
	font-style: normal;
	font-weight: 700;
	src: url('/shared/font/nunito-v26-latin-700.woff2') format('woff2');
}
:root {
	--color-primary: #f9b200;
	--color-secondary: #1e6baf;
	--color-black: #444444;
	--color-darkgrey: #888888;
	--color-midgrey: #cccccc;
	--color-lightgrey: #f6f6f6;
	--color-white: #ffffff;
}
::selection {
	background: var(--color-primary);
	color: var(--color-white);
}
body {
	color: var(--color-black);
	font-family: 'Nunito', var(--bs-body-font-family);
	font-size: clamp(1rem, calc(.875rem + .5vw), 1.125rem);
	-webkit-hyphens: auto;
	hyphens: auto;
}
body > script + div[style*="z-index: 1000"] {
	height: 0;
	overflow: hidden;
	visibility: hidden;
}
.lead {
	font-size: clamp(1.25rem, calc(1rem + .75vw), 1.375rem);
}
.border-top {
	border-color: var(--color-midgrey) !important;
}
small,
label,
time {
	color: var(--color-darkgrey);
	font-size: .875rem;
}
strong {
	font-weight: 700;
}
a,
a:visited {
	background: linear-gradient(var(--color-secondary), var(--color-secondary)) 0 100% / 0 .125rem no-repeat;
	color: var(--color-secondary);
	text-decoration: none;
	transition: background-position 0s .4s, background-size .4s;
}
a.active,
a:hover,
a:focus {
	background-position: 100% 100%;
	background-size: 100% .125rem;
	color: var(--color-secondary);
}
svg.chevron-up {
	transform: rotate(180deg);
}
svg.chevron-right {
	transform: rotate(270deg);
}
.py-6 {
	padding-top: 6rem;
	padding-bottom: 6rem;
}
.bg-none {
	background: none;
}
figcaption {
	font-size: .875rem;
}
#noscript {
	background: var(--color-primary);
	z-index: 1090;
	font-size: .875rem;
}
@keyframes bottom {
	from { opacity: 0; transform: translateY(3rem); }
	to { opacity: 1; transform: translateY(0); }
}

/* Headlines */
h1,
.h1,
h2,
.h2,
h3,
.h3 {
	font-weight: 600;
	line-height: 1.25;
}
h1,
.h1 {
	font-size: clamp(2rem, calc(1.75rem + .75vw), 2.5rem);
	margin-bottom: 1.5rem;
}
h2,
.h2 {
	font-size: clamp(1.675rem, calc(1.5rem + .75vw), 1.75rem);
}
h3,
.h3 {
	font-size: clamp(1.25rem, calc(1rem + .75vw), 1.375rem);
}

/* Tables */
.table th {
	border-bottom: .125rem solid var(--color-darkgrey);
	color: var(--color-black);
	font-size: 1.375rem;
}
.table td {
	border-color: var(--color-midgrey);
	color: var(--color-black);
}
.table-striped > tbody > tr:nth-child(odd) > th,
.table-striped > tbody > tr:nth-child(odd) > td {
	background-color: var(--color-lightgrey);
	box-shadow: none;
}
.table > tbody > tr:last-child > td {
	border-color: transparent;
}

/* Forms */
.form-label {
	margin-bottom: .25rem;
}
.form-control,
.form-select {
	border-color: var(--color-midgrey);
	border-radius: 0;
	color: var(--color-black);
}
.form-control:hover,
.form-select:hover {
	border-color: var(--color-secondary);
}
.form-control:focus,
.form-select:focus {
	border-color: var(--color-primary);
	box-shadow: none;
}

/* Buttons */
.btn.btn-primary {
	background: var(--color-primary);
	border: 0;
	border-radius: 0;
	color: var(--color-white);
	font-size: .875rem;
	font-weight: 700;
	overflow: hidden;
	padding: .75rem 1.25rem;
	position: relative;
	text-transform: uppercase;
	z-index: 1;
}
.btn.btn-primary::before {
	background: var(--color-secondary);
	content: '';
	height: 100%;
	left: -100%;
	position: absolute;
	top: 0;
	transition: .4s;
	width: 100%;
	z-index: -1;
}
.btn.btn-primary:hover::before,
.btn.btn-primary:focus::before {
	left: 0;
}

/* Preloader Animation */
#loader {
	display: flex;
	transition: all .5s;
	z-index: 5000;
}
.no-js #loader {
	display: none;
}
#loader.hidden {
	opacity: 0;
	visibility: hidden;
}
#loader::after {
	animation: spin 1s infinite;
	border: .5rem solid transparent;
	border-radius: 50%;
	border-top: .5rem solid var(--color-primary);
	content: "";
	display: block;
	height: 4rem;
	width: 4rem;
	z-index: 5001;
}
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/* Menu */
#menu {
	border-bottom: .0625rem solid transparent;
	transition: .2s;
}
#menu.scrolled {
	border-color: var(--color-midgrey);
}
#menu img {
	transition: .2s;
}
#menu .navbar-nav a {
	font-size: .875rem;
}
#menu a.current {
	font-weight: 700;
}
#menu .dropdown-menu {
	min-width: 16rem;
}

/* Breadcrumb */
.breadcrumb-item {
	font-size: .875rem;
}
.breadcrumb-item + .breadcrumb-item::before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M2.5 0L1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4z' fill='%23888'/%3E%3C/svg%3E");
}

/* Carousel */
header .carousel-control-next,
header .carousel-control-prev {
	width: 10%;
}
header .carousel-control-next-icon,
header .carousel-control-prev-icon {
	height: 1.5rem;
	width: 1.5rem;
}
header .carousel-indicators [data-bs-target] {
	height: .125rem;
	width: 1.5rem;
}
header .carousel-caption {
	left: 5%;
	right: 5%;
}
header .carousel-caption h2 {
	font-size: 1rem;
	line-height: 1.337;
}
header .carousel-item::after {
	background: linear-gradient(transparent, rgba(0, 0, 0, .6));
	bottom: 0;
	content: "";
	height: 33%;
	position: absolute;
	width: 100%;
}

/* Contents */
main {
	padding-top: 4rem;
}
main p,
main li {
	max-width: 65rem;
}
main div:has(h1) + section:not(:has(.lead)) {
	padding-top: 2rem;
}
main div:has(h1) ~ section:nth-of-type(2):has(.lead) ~ section:nth-of-type(1):has(figure[class*="float"]) {
	padding-top: 0;
}
main section:not(:has(.lead)) + section h2,
main section:not(:has(.lead)) + section .h2,
main section:has(h2) > figure[class*="float"],
main section:has(.h2) > figure[class*="float"] {
	padding-top: 1.25rem;
}
main section:not(:has(.lead)) + section h3,
main section:not(:has(.lead)) + section .h3,
main section:has(h3) > figure[class*="float"],
main section:has(.h3) > figure[class*="float"] {
	padding-top: .75rem;
}
main ul {
	list-style: none;
	margin-bottom: 2rem;
}
main ul li {
	padding-left: 1.25rem;
	position: relative;
}
main ul li::before {
	background: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z' fill='%23888'/%3E%3C/svg%3E") center center / contain no-repeat;
	content: "";
	display: flex;
	flex-shrink: 0;
	height: .75rem;
	left: 0;
	margin-right: .5rem;
	position: absolute;
	top: 0;
	transform: rotate(270deg) translateX(-.425rem);
	width: .75rem;
}
main .lead ul li::before {
	top: .125rem;
}
main a[href*=".pdf"]::after {
	background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="%231e6baf" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38.57.57 0 0 1-.238.241.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181.185.183.185.522m1.217-1.333v3.999h1.46q.602 0 .998-.237a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084 0-.63-.196-1.075a1.43 1.43 0 0 0-.589-.68q-.396-.234-1.005-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592 1.1 1.1 0 0 1-.196.422.8.8 0 0 1-.334.252 1.3 1.3 0 0 1-.483.082h-.563zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638z"/></svg>') center center / contain no-repeat;
	content: "";
	display: inline-block;
	height: clamp(1rem, calc(.875rem + .5vw), 1.125rem);
	margin-left: .5rem;
	width: clamp(1rem, calc(.875rem + .5vw), 1.125rem);
}

/* Contact Box */
main .contact {
	background-color: var(--color-secondary);
}
main .contact p:last-child {
	margin-bottom: 0;
}
main .contact a,
main .contact a:visited {
	background-image: linear-gradient(var(--color-white), var(--color-white));
	color: var(--color-white);
}
main .contact a:hover,
main .contact a:focus {
	color: var(--color-white);
}

/* Teaser */
main .teaser {
	background-color: var(--color-secondary);
	margin: 3rem 0 4rem 0;
}
main .teaser li::before {
	display: none;
}
main .teaser a,
main .teaser a:visited {
	background-image: linear-gradient(var(--color-white), var(--color-white));
	color: var(--color-white);
}

/* Footer */
footer {
	background: var(--color-lightgrey);
	color: var(--color-darkgrey);
	margin-top: 5rem;
	font-size: .875rem;
}
footer .contact {
	font-size: clamp(1rem, calc(.875rem + .5vw), 1.125rem);
}
footer .contact a {
	color: var(--color-secondary);
	line-height: 2;
}
footer svg {
	fill: var(--color-darkgrey);
	transition: .4s;
}
footer a:focus svg,
footer a:hover svg {
	fill: var(--color-secondary);
}
footer h6 {
	color: var(--color-black);
	font-size: .875rem;
	line-height: 1.337;
}

/* Media Queries */
@media (min-width: 576px) {
	body {
		-webkit-hyphens: manual;
		hyphens: manual;
	}
}
@media (min-width: 992px) {
	header .carousel-control-next,
	header .carousel-control-prev {
		width: 5%;
	}
	header .carousel-caption h2 {
		font-size: clamp(1.25rem, calc(1rem + .75vw), 1.375rem);
	}
	header .carousel-item::after {
		height: 50%;
	}
	main figure.float-lg-start {
		max-width: calc(40% - 1rem);
		margin: .375rem calc(2rem + .25vw) 0 0;
	}
	main figure.float-lg-end {
		max-width: calc(40% - 1rem);
		margin: .375rem 0 0 calc(2rem + 1vw);
	}
	main figure.float-lg-start + figure.float-lg-end {
		margin-left: 0;
	}
	main .clear {
		clear: both;
	}
}
@media (min-width: 1200px) {
	.w-xl-auto {
		width: auto !important;
	}
	#menu .dropdown-submenu > .dropdown-menu {
		left: 100%;
	}
	#menu .navbar-nav > li {
		position: static;
	}
	#menu .wrapper {
		border-bottom: .0625rem solid var(--color-midgrey);
		display: none;
		height: 18rem;
		position: absolute;
	}
	#menu .dropdown svg {
		height: 1rem;
		width: 1rem;
	}
}
@media (min-width: 1400px) {
	#menu img {
		width: 9.375rem;
	}
	#menu:not(.scrolled) {
		padding-bottom: .5rem !important;
		padding-top: .5rem !important;
	}
	#menu.scrolled img {
		width: 6.25rem;
	}
	#menu .navbar-nav a {
		font-size: 1rem;
	}
}

/* Hamburger Icon */
.no-js #navContent {
	display: flex;
}
.hamburger {
	display: flex;
	transition: opacity .15s linear, filter .15s linear;
}
.no-js .hamburger {
	display: none;
}
.hamburger .hamburger-box {
	height: 1.5rem;
	width: 2.5rem;
}
.hamburger .hamburger-inner, .hamburger .hamburger-inner::before, .hamburger .hamburger-inner::after {
	background-color: var(--color-secondary);
	border-radius: .25rem;
	height: .25rem;
	position: absolute;
	transition: transform .15s ease;
	width: 2.5rem;
}
.hamburger .hamburger-inner::before, .hamburger .hamburger-inner::after {
	content: "";
	display: block;
}
.hamburger .hamburger-inner {
	margin-top: -.125rem;
	top: 50%;
	transition-duration: .22s;
	transition-timing-function: cubic-bezier(.55, .55, .675, .2);
}
.hamburger.active .hamburger-inner {
	transform: rotate(225deg);
	transition-delay: .12s;
	transition-timing-function: cubic-bezier(.215, .6, .355, 1);
}
.hamburger .hamburger-inner::before {
	top: -.625rem;
	transition: top .1s .25s ease-in, opacity .1s ease-in;
}
.hamburger.active .hamburger-inner::before {
	opacity: 0;
	top: 0;
	transition: top .1s ease-out, opacity .1s .12s ease-out;
}
.hamburger .hamburger-inner::after {
	bottom: -.625rem;
	transition: bottom .1s .25s ease-in, transform .22s cubic-bezier(.55, .55, .675, .2);
}
.hamburger.active .hamburger-inner::after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom .1s ease-out, transform .22s .12s cubic-bezier(.215, .6, .355, 1);
}