/*@font-face {
	font-family: 'Name';
	src:  url('../fonts/file.woff2') format('woff2'),
	      url('../fonts/file.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: fallback;
}*/


html {
	font-size: 16px;
}
body {
	font-family: 'Montserrat', 'Helvetica', 'Arial', sans-serif;
	font-size: inherit;
	font-weight: 500;
}

*, *::before, *::after {
	scroll-margin-top: 200px;
}

p {
	margin-bottom: 1rem;
}
p:empty {
	
}
p:last-child {
	margin-bottom: 0;
}
img {
	border: 0;
}
a {
	color: #029985;
	text-decoration: none;
}
a:hover,
a:focus {
	color: #777777;
	/*text-decoration: none;*/
}


/* headings */
h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
	margin: 0 0 1rem;
}
h1 { 
	font-size: 28px;
}
h2 { 
	font-size: 24px;
}
h3 { 
	font-size: 22px;
}
h4, h5, h6 { 
	font-size: 17px;
}
*:not(.wp-block-spacer) + h1, *:not(.wp-block-spacer) + h2:not(:first-child), *:not(.wp-block-spacer) + h3:not(:first-child), *:not(.wp-block-spacer) + h4:not(:first-child), *:not(.wp-block-spacer) + h5:not(:first-child), *:not(.wp-block-spacer) + h6:not(:first-child) {
	margin-top: 2.5rem;
}
h1:first-child:last-child, h2:first-child:last-child, h3:first-child:last-child, h4:first-child:last-child, h5:first-child:last-child, h6:first-child:last-child {
	margin-top: 0; margin-bottom: 0;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	color: inherit !important;
	text-decoration: none !important;
}

/* last elements no bottom margin */
.container > *:last-child,
.col > *:last-child,
[class*="col-"] > *:last-child,
.column__content > *:last-child {
	margin-bottom: 0;
}

/* columns and text-columns full height content div */
.col > .column__content,
[class*="col-"] > .column__content {
	position: relative;
	height: 100%;
}
	.column__content > .is-style-text-column {
		position: relative;
		height: 100%;
	}


::-moz-selection {
	background: #009985;
	color: #FFFFFF;
}
::selection {
	background: #009985;
	color: #FFFFFF;
}



/* pagination */
.pagination {
	justify-content: center;
}
	.pagination .screen-reader-text {
		
	}
	.pagination a,
	.pagination .page-numbers {
		display: inline-block;
		margin: 0;
	}
	.pagination .page-numbers.current {
		background-color: #4b497d;
		pointer-events: none;
	}
	.pagination a:hover,
	.pagination a:focus {
		background-color: #009985;
	}


/* z-index helpers */
.z--1, .z-0, .z-1, .z-5, .z-10 { position: relative; }
.z--1 { z-index: -1; }
.z-0 { z-index: 0; }
.z-1 { z-index: 1; }
.z-5 { z-index: 5; }
.z-10 { z-index: 10; }

/* opacity helpers */
.opacity-0 { opacity: 0 !important; }
.opacity-1 { opacity: .1 !important; }
.opacity-2 { opacity: .2 !important; }
.opacity-3 { opacity: .3 !important; }
.opacity-4 { opacity: .4 !important; }
.opacity-5 { opacity: .5 !important; }
.opacity-6 { opacity: .6 !important; }
.opacity-7 { opacity: .7 !important; }
.opacity-8 { opacity: .8 !important; }
.opacity-9 { opacity: .9 !important; }
.opacity-10 { opacity: 1 !important; }

/* additional font weights */
.font-weight-500 { font-weight: 500; }
.font-weight-600 { font-weight: 600; }

/* additional text (transform) helpers */
.text-none {
	text-transform: none !important;
}

/* screen readers */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}


/* ----------------------------- PAGE STRUCTURE ----------------------------- */
#root {
    overflow-x: hidden;
    width: 100%;
}


#alert_banner_container {
	
}
	#alert_banner_container a {
		color: inherit;
	}
	#alert_banner_container p:last-child {
		margin: 0;
	}


.page-header {
	display: flex; align-items: center;
	position: absolute; top: 0; right: 0; left: 0;
	transition: all .3s ease;
	width: 100%;
	z-index: 1001;
	color: #ffffff;
}
.page-header,
.page-header-height {
	height: 5rem;
}
body.scrolled.admin-bar .page-header {
	top: 32px;
}

	.page-header a:not([class]) {
		color: inherit;
	}
	.page-header a:not([class]):hover,
	.page-header a:not([class]):focus {
		color: inherit;
	}

	.page-header .logo {
		display: block;
		position: relative;
		max-width: 100%;
		z-index: 101;
	}
		.page-header .logo img {
			display: block;
			width: auto; max-width: none; height: auto; height: 1rem;
			transition: all .3s ease;
		}

	.page-header .header-options {
		align-items: center;
		display: flex;
		gap: 0.5em;
		justify-content: flex-end;
	}



.menu-toggle {
	color: inherit;
	cursor: pointer;
	display: inline-block;
	transform: rotate(0deg);
	margin-left: 1rem;
	position: relative;
	vertical-align: middle;
	width: 1.8rem; height: 1.5rem;
	z-index: 1004;
}
	/*.menu-toggle::before {
		color: inherit;
		content: 'Menu';
		display: block;
		padding-right: calc(100% + .5rem);
		position: absolute; right: 0; top: calc(50% - .7rem);
	}*/
	.menu-toggle span {
		background: currentColor;
		display: block;
		position: absolute; left: 0;
		transform: rotate(0deg);
		transition: .25s ease-in-out;
		width: 100%; height: 4px;
	}
	.menu-toggle span:nth-child(1) { top: 0; }
	.menu-toggle span:nth-child(2),
	.menu-toggle span:nth-child(3) { top: calc(50% - 2px); }
	.menu-toggle span:nth-child(4) { top: calc(100% - 4px); }
	body.show-menu .menu-toggle span:nth-child(1),
	body.show-menu .menu-toggle span:nth-child(4) { left: 50%; width: 0%; }
	body.show-menu .menu-toggle span:nth-child(2) { transform: rotate(45deg); }
	body.show-menu .menu-toggle span:nth-child(3) { transform: rotate(-45deg); }


/* fixed header */
body.scrolled .page-header {
	
	padding: .5rem 0;
	position: fixed;
	height: auto;
}
	body.scrolled .page-header .logo img { 
		height: 1rem;
	}
	body.scrolled .page-header .header-options {
		
	}


.top-menu {
	background: #7c8081;
	color: #FFFFFF;
	font-size: .7rem;
	font-weight: 700;
	overflow: hidden;
	padding: 0 1rem;
	position: absolute; top: 100%; left: 0;
	text-transform: uppercase;
	width: 200px; max-width: 80vw; max-height: 0;
	z-index: 2001;
}
.is-style-menu-hover a:hover + .top-menu, 
.is-style-menu-hover a:focus + .top-menu,
.top-menu:hover,
.top-menu:focus-within {
	padding-top: calc(.3rem + 2px); padding-bottom: calc(.3rem + 2px);
	transition: max-height 1s ease, padding .5s ease;
	max-height: 100vh;
}
	.top-menu ul:not(.sub-menu) {
		list-style-type: none;
		margin: 0;
		padding: 0;
		text-align: initial;
	}
		.top-menu ul:not(.sub-menu) > li {
			
		}
			.top-menu ul:not(.sub-menu) > li > a {
				display: block;
				padding-top: .2rem; padding-bottom: .2rem;
			}
			.top-menu ul:not(.sub-menu) > li > a:hover,
			.top-menu ul:not(.sub-menu) > li > a:focus {
				text-decoration: underline;
			}


.header-menu {
	background: rgba(255,255,255,.95);
	display: block;
	font-size: 1rem;
	font-weight: 700;
	margin: 0; margin-left: -105%;
	padding: 8%;
	position: fixed; top: 0; left: 0;
	text-transform: uppercase;
	transition: all .3s ease;
	width: 100%; height: 100%;
	z-index: 1003;
}
body.show-menu .header-menu {
	margin-left: 0;
	overflow-x: hidden;
	overflow-y: auto;
}
	.header-menu ul:not(.sub-menu) {
		list-style-type: none;
		margin: 0;
		padding: 0; padding-bottom: 2rem;
	}
		.header-menu ul:not(.sub-menu) > li {
			display: table;
			margin: 0 0;
		}
			.header-menu ul:not(.sub-menu) > li > a,
			.header-menu ul:not(.sub-menu) > li > a:visited {
				display: inline-block;
				padding: .3rem 0;
				position: relative;
			}
			.header-menu ul:not(.sub-menu) > li.current-menu-item > a,
			.header-menu ul:not(.sub-menu) > li.current-menu-parent > a,
			.header-menu ul:not(.sub-menu) > li.current-menu-ancestor > a {
				text-decoration: none;
			}
			.header-menu ul:not(.sub-menu) > li:hover > a,
			.header-menu ul:not(.sub-menu) > li > a:hover,
			.header-menu ul:not(.sub-menu) > li > a:focus {
				text-decoration: none;
			}

				.header-menu ul:not(.sub-menu) > li > a::after {
					border-bottom: 1px solid currentColor;
					content: '';
					display: block;
					position: absolute; top: 100%; right: 0;
					transition: width .3s ease;
					width: 0; height: 0;
					z-index: 31;
				}
				.header-menu ul:not(.sub-menu) > li.current-menu-item > a::after,
				.header-menu ul:not(.sub-menu) > li.current-menu-parent > a::after,
				.header-menu ul:not(.sub-menu) > li.current-menu-ancestor > a::after,
				.header-menu ul:not(.sub-menu) > li:hover > a::after,
				.header-menu ul:not(.sub-menu) > li > a:hover::after,
				.header-menu ul:not(.sub-menu) > li > a:focus::after {
					right: auto; left: 0;
					width: 100%;
					z-index: 30;
				}

			/* second level */
			.header-menu ul.sub-menu {
				list-style-type: none;
				padding: .3rem 0 1rem 1rem;
				position: static; top: auto; left: auto;
				visibility: visible;
				width: auto;
			}
				.header-menu ul.sub-menu > li {
					padding: 0;
				}
					.header-menu ul.sub-menu > li > a,
					.header-menu ul.sub-menu > li > a:visited {
						display: inline-block;
						padding: .1rem 0;
						text-decoration: none;
						text-transform: uppercase;
					}
					.header-menu ul.sub-menu > li > a:hover,
					.header-menu ul.sub-menu > li > a:focus {
						text-decoration: underline;
					}
					.header-menu ul.sub-menu > li.current-menu-item > a, 
					.header-menu ul.sub-menu > li.current-menu-parent > a, 
					.header-menu ul.sub-menu > li.current-menu-ancestor > a {
						text-decoration: underline;
					}



main {
	display: block;
}


iframe {
	border: 0;
	margin: 0;
}
.aligncenter iframe {
	margin-right: auto; margin-left: auto;
}
main iframe {
	max-width: 100% !important;
}

main ol {
	list-style: none;
	counter-reset: item;
}
	main ol li {
		counter-increment: item;
		position: relative;
	}
	main ul li,
	main ol li {
		margin-bottom: .5rem;
	}
		main ol li::before {
			background: #a7a9ac;
			border-radius: 50%;
			color: #FFFFFF;
			content: counter(item);
			display: block;
			font-weight: 700;
			position: absolute; right: calc(100% + 1rem);
			text-align: center;
			width: 1.5rem; height: 1.5rem; line-height: 1.5rem;
		}

/* make full container width images shrink to fit window height */
.container > .wp-block-image {
	
}
	.container > .wp-block-image img {
		margin-top: 2rem; margin-bottom: 2rem;
		object-fit: contain;
		object-position: top left;
		max-height: calc(100vh - 200px);
	}



.is-style-fullwidth {
	position: relative; left: 50%;
	transform: translateX(-50%);
	width: 100vw; max-width: none !important;
}
	.is-style-fullwidth iframe {
		width: 100%;
	}
	.is-style-fullwidth.wp-embed-aspect-4-3 iframe {
		height: 75vw;
	}
	.is-style-fullwidth.wp-embed-aspect-16-9 iframe {
		height: 56.3vw;
	}




.thumb-root {
	margin: 0 0 2rem;
}
	.thumb-post {
		background: #231f20;
		display: block;
		position: relative;
	}
		.thumb-post > div {
			display: flex;
			flex-direction: column;
			justify-content: stretch;
			height: 100%;
		}
			.thumb-post > div > .is-style-text-column {
				flex-grow: 1;
				justify-content: flex-start;
			}
	.is-style-background {
		background: #231f20;
	}
	.is-style-background:not([class*="size-"]) {
		position: absolute; top: 0; right: 0; bottom: 0; left: 0;
		z-index: 0;
	}
		.is-style-background img {
			object-fit: cover;
			/*opacity: .7;*/
			width: 100% !important; height: 100% !important;
		}
		.is-style-background:not([class*="size-"]) img {
			position: absolute; top: 0; right: 0; bottom: 0; left: 0;
			width: 100% !important; height: 100% !important; max-height: none !important;
		}
	.is-style-button-bottom {
		
	}
		.is-style-button-bottom .wp-block-buttons {
			position: absolute; bottom: 1.5rem; right: 1.5rem; left: 1.5rem;
		}
		.is-style-button-bottom .is-style-text-column {
			/*padding-bottom: 5rem;*/
		}



/* slick carousel */
.slick-slider {
	margin: 0;
}

	html .slick-track {
		display: flex;
		align-items: stretch;
	}
	html .slick-track .slick-slide {
		align-items: center;
		float: none;
		display: flex !important;
		justify-content: center;
		height: auto;
	}
		html .slick-track .slick-slide > *:first-child:last-child {
			width: 100%;
		}
		.slick-slide:focus {
			outline: none !important;
		}

	.slick-slider .slick-arrow {
		background: rgba(0,0,0,.3);
		padding: 0 !important;
		width: 2rem; height: 2rem;
		z-index: 51;
	}
	.has-white-color .slick-slider .slick-arrow {
		filter: brightness(0) invert(1);
	}
	.slick-slider .slick-arrow.slick-disabled {
		display: none !important;
	}
		.slick-slider .slick-arrow::before {
			background: center/contain no-repeat transparent;
			filter: brightness(0) invert(1);
			position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
			width: 40%; height: 40%;
		}
	.slick-slider .slick-arrow.slick-prev {
		left: 0;
	}
	.container .slick-slider:not(.arrows-inside) .slick-arrow.slick-prev {
		left: -4rem;
	}
		.slick-slider .slick-arrow.slick-prev::before {
			background-image: url('../images/arrow-left.svg');
		}
	.slick-slider .slick-arrow.slick-next {
		right: 0;
	}
	.container .slick-slider:not(.arrows-inside) .slick-arrow.slick-next {
		right: -4rem;
	}
		.slick-slider .slick-arrow.slick-next::before {
			background-image: url('../images/arrow-right.svg');
		}

.slick-dotted.slick-slider {
	margin: 0;
}
	.slick-dots {
		margin: 0;
		padding-right: var(--bs-gutter-x,.75rem); padding-left: var(--bs-gutter-x,.75rem);
		position: absolute; bottom: 2rem; left: 50%; transform: translateX(-50%);
		text-align: right;
		max-width: 540px;
		z-index: 51;
	}
	@media (min-width: 767.98px) { .slick-dots { max-width: 720px; } }
	@media (min-width: 991.98px) { .slick-dots { max-width: 960px; } }
	@media (min-width: 1199.98px) { .slick-dots { max-width: 1140px; } }
	@media (min-width: 1399.98px) { .slick-dots { max-width: 1320px; } }
	@media (min-width: 1699.98px) and (min-height: 799.98px){ .slick-dots { max-width:1654px; } }
	.container .slick-dots {
		padding-right: 2rem; padding-left: 2rem;
	}
		.slick-dots li {
			margin: 0 .2rem;
			width: auto; height: auto;
		}
			.slick-dots li button {
				background-color: #FFFFFF;
				border: none;
				border-radius: 50%;
				display: block;
				opacity: .5;
				padding: 0;
				pointer-events: initial;
				width: 1rem; height: 1rem;
			}
			.slick-dots li.slick-active button {
				opacity: 1;
			}
			/*.has-white-color .slick-dots li button,
			.is-style-overlay .slick-dots li button {
				
			}
			.has-white-color .slick-dots li.slick-active button,
			.is-style-overlay .slick-dots li.slick-active button {
				
			}*/
				.slick-dots li button::before {
					display: none;
				}

	.slick-slide:focus {
		outline: none !important;
	}


.is-style-slick-posts {
	margin-right: -1.5rem; margin-left: -1.5rem;
}
	html .is-style-slick-posts .slick-track {
		column-gap: 1.5rem;
	}



/* tabs */
.is-style-tabs {
	
}

.is-style-tabbed {
	height: 0;
	opacity: 1 !important;
	overflow: hidden;
}
.is-style-tabbed:not(.open) {
	margin-top: 0 !important; margin-bottom: 0 !important;
	padding-top: 0 !important; padding-bottom: 0 !important;
}
.is-style-tabbed.open {
	height: auto;
}
	.is-style-tabbed .fadein, .is-style-tabbed .wp-block-source-columns, .is-style-tabbed .childpage, .is-style-tabbed .wp-block-source-container {
		opacity: 1 !important;
	}



/* FOOTER */

.page-footer {
	
}
	.page-footer a {
		color: inherit;
	}
	.page-footer a:hover,
	.page-footer a:focus {
		color: inherit;
		text-decoration: underline;
	}

	.menu-footer-menu-container {
		display: block;
		margin: 0;
	}
		.menu-footer-menu-container ul:not(.sub-menu) {
			column-gap: 1rem;
			display: flex;
			flex-wrap: wrap;

			list-style-type: none;
			margin: 0;
			padding: 0;
		}
			.menu-footer-menu-container ul:not(.sub-menu) > li {
				margin: 0;
				padding: 0;
			}
				.menu-footer-menu-container ul:not(.sub-menu) > li > a {
					display: block;
				}
					.menu-footer-menu-container ul.sub-menu {
						display: block;
						list-style-type: none;
						padding: 1rem 0 0;
					}
						.menu-footer-menu-container ul.sub-menu > li {
							margin: 0;
							padding: 0;
						}
							.menu-footer-menu-container ul.sub-menu > li > a {
								display: block;
							}



/* grid breakers */
.is-style-outset-top-small {
	margin-top: -1rem !important;
}
.is-style-outset-top-medium {
	margin-top: -2rem !important;
}
.is-style-outset-top-large {
	margin-top: -3rem !important;
}
.is-style-outset-bottom-small {
	margin-bottom: -1rem !important;
}
.is-style-outset-bottom-medium {
	margin-bottom: -2rem !important;
}
.is-style-outset-bottom-large {
	margin-bottom: -3rem !important;
}



/* --------------------- FORMS --------------------- */
form {
	text-align: initial;
}

fieldset {
	border: 0;
}

label {

}
label:empty {
	display: none;
}

input,
textarea,
select {
	box-sizing: border-box;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	vertical-align: middle;
}


input[type="text"],
input[type="number"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="submit"],
input[type="tel"],
.select-style,
select[multiple],
textarea {
	-webkit-appearance: none;
	border-radius: 0;
	display: inline-block;
	font-size: 1rem;
	margin: .3rem 0;
	padding: .5rem;
}


input[type="text"],
input[type="number"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="tel"],
.select-style,
select[multiple],
textarea {
	border: 1px solid #CCCCCC;
	background-color: #FFFFFF;
	color: #202020;
}
[class*="-background-color"] input[type="text"],
[class*="-background-color"] input[type="number"],
[class*="-background-color"] input[type="email"],
[class*="-background-color"] input[type="search"],
[class*="-background-color"] input[type="password"],
[class*="-background-color"] input[type="tel"],
[class*="-background-color"] .select-style,
[class*="-background-color"] textarea {
	border: 1px solid rgba(0,0,0,0);
}
textarea {
	min-height: 6rem;
}


::-webkit-input-placeholder {
	color: inherit;
	opacity: .7;
	overflow: visible;
}
:-moz-placeholder {
	color: inherit;
	opacity: .7;
	overflow: visible;
}
::-moz-placeholder {
	color: inherit;
	opacity: .7;
	overflow: visible;
}
:-ms-input-placeholder {
	color: inherit;
	opacity: .7;
	overflow: visible;
}





/* image */
input[type="image"] {
	background: transparent;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	display: inline-block;
	margin: .3rem 0;
	padding: .5rem;
	width: auto; height: 2.44rem;
	vertical-align: middle;
}
input[type="image"]:hover,
input[type="image"]:focus {

}



/* select style (requires wrapper .select-style) */
.select-style {
	padding: 0;
	margin: .3rem 0;
	overflow: hidden;
	position: relative;
	vertical-align: middle;
}
	.select-style select {
		-webkit-appearance: none;
		background: none;
		border: 0;
		border-radius: 0;
		color: inherit;
		display: block;
		padding: .5rem 2.5rem .5rem .5rem;
		position: relative;
		width: calc(100% + 2rem);
	}
		.select-style select option {
			color: #000000;
			padding: 0 2rem 0 0;
		}
	.select-style::after {
		background: url('../images/arrow-down.svg') center/50% auto no-repeat #FFFFFF;
		content: '';
		display: block;
		pointer-events: none;
		position: absolute; top: 0; right: 0;
		width: 2rem; height: 100%;
	}


input[type="radio"],
input[type="checkbox"] {
	display: inline-block;
	margin: .3rem .5rem .3rem 0;
	vertical-align: top;
}
input[type="radio"] + label,
input[type="checkbox"] + label,
.radio-style + label,
.checkbox-style + label {
	display: inline-block;
	overflow: visible;
	height: auto;
	max-width: calc(100% - 4rem);
}

.radio-style,
.checkbox-style {
	background: #dddddd;
	border: .2rem solid #dddddd;
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	margin: .3rem .5rem .3rem 0;
	position: relative;
	transition: all .3s ease;
	vertical-align: top;
	width: 1rem; height: 1rem;
}
.checkbox-style {
	border-radius: .1rem;
}
.radio-style.checked,
.checkbox-style.checked {
	background: #FF0000;
}
	.radio-style input[type="radio"],
	.checkbox-style input[type="checkbox"] {
		display: block;
		margin: 0;
		position: absolute; top: -.2rem; left: -.2rem;
		width: 1rem; height: 1rem;
	}




/* ----------------------------------------------------------------------------- */
/* -------------------------------- BREAKPOINTS -------------------------------- */
/* ----------------------------------------------------------------------------- */


/* smartphones, touchscreens (devices with no hover state and 'coarse' i.e. finger-based cursor position) */
@media (hover: none) and (pointer: coarse) {



}



/* 
@media (max-width: 575.98px) { ... } xs
@media (max-width: 767.98px) { ... } sm
@media (max-width: 991.98px) { ... } md
@media (max-width: 1199.98px) { ... } lg
larger xl
*/



/* xs and sm only */
@media only screen and (max-width: 767.98px) {

/* make text precede image in two column situations */
.row > .col:first-child + .is-style-text-column:last-child,
.row > [class*="col-"]:first-child + .is-style-text-column:last-child {
	order: -1;
}



}



/* sm (small) + */
@media only screen and (min-width: 575.98px) {





}


/* md (medium) + */
@media only screen and (min-width: 767.98px) {


html {
	font-size: 17px;
}


/* 'lazy load' effect */
.fadein,
.wp-block-source-columns,
.childpage,
.wp-block-source-container {
	opacity: 0.01; /* prevent anchor issue */
	transition: none;
}
.fadein:not(.hidden),
.wp-block-source-columns:not(.hidden),
.childpage:not(.hidden),
.wp-block-source-container:not(.hidden) {
	opacity: 1;
	transition: opacity 1s ease;
}

/* 'slide in' effect */
.slide-right {
	transform: translateX(100vw);
	transition: none;
}
.slide-right:not(.hidden) {
	transform: translateX(0);
	transition: transform 2s ease;
}
.slide-left {
	transform: translateX(-100vw);
	transition: none;
}
.slide-left:not(.hidden) {
	transform: translateX(0);
	transition: transform 2s ease;
}


/* grid breakers */
.is-style-outset-top-small {
	margin-top: -2rem !important;
}
.is-style-outset-top-medium {
	margin-top: -4rem !important;
}
.is-style-outset-top-large {
	margin-top: -7rem !important;
}
.is-style-outset-bottom-small {
	margin-bottom: -2rem !important;
}
.is-style-outset-bottom-medium {
	margin-bottom: -4rem !important;
}
.is-style-outset-bottom-large {
	margin-bottom: -7rem !important;
}


/* headings */
h1, h2, h3, h4, h5, h6 { 
	
}
h1 { 
	font-size: 28px;
}
h2 { 
	font-size: 24px;
}
h3 { 
	font-size: 22px;
}
h4, h5, h6 { 
	font-size: 17px;
}



/* ----------------------------- PAGE STRUCTURE ----------------------------- */
.page-header {
	align-items: center;
	display: flex;
}
.page-header,
.page-header-height {
	height: 6rem;
}

	.page-header .logo { 
		
	}
		.page-header .logo img {
			height: 2.5rem;
		}

	.page-header .header-options {
		
	}


.menu-toggle {
	display: none;
}


/* fixed header */
body.scrolled .page-header {
	padding: .5rem 0;
	height: auto;
}
	body.scrolled .page-header .logo img { 
		height: 2rem;
	}
	body.scrolled .page-header .header-options {
		
	}


.header-menu,
body.show-menu .header-menu {
	background: transparent;
	box-shadow: none;
	font-size: .7rem;
	margin: 0 -.5rem;
	overflow: visible;
	padding: 0;
	position: relative; top: auto; right: auto; bottom: auto; left: auto;
	width: auto; height: auto;
	z-index: 1002;
}
	.header-menu ul:not(.sub-menu) {
		padding: 0;
	}
		.header-menu ul:not(.sub-menu) > li { 
			display: inline-block;
			margin: 0 .6rem;
			position: relative;
			text-align: initial;
		}
			.header-menu ul:not(.sub-menu) > li > a, 
			.header-menu ul:not(.sub-menu) > li > a:visited {
				display: block;
				padding: .3rem 0;
			}
			.header-menu ul:not(.sub-menu) > li.current-menu-item > a,
			.header-menu ul:not(.sub-menu) > li.current-menu-parent > a,
			.header-menu ul:not(.sub-menu) > li.current-menu-ancestor > a { 
				
			}
			.header-menu ul:not(.sub-menu) > li:hover > a,
			.header-menu ul:not(.sub-menu) > li > a:hover,
			.header-menu ul:not(.sub-menu) > li > a:focus { 
				
			}

			/* second level */
			.header-menu ul.sub-menu { 
				background-color: #FFFFFF;
				overflow: hidden;
				padding: 0 1rem;
				position: absolute; top: 100%; left: -1rem;
				width: 12rem; max-height: 0;
			}
			.header-menu ul:not(.sub-menu) > li:first-child > ul.sub-menu {
				
			}
			.header-menu ul:not(.sub-menu) > li:last-child > ul.sub-menu {
				left: auto; right: -.7rem;
			}
			.header-menu li:hover > ul.sub-menu, 
			.header-menu a:focus + ul.sub-menu,
			.header-menu ul.sub-menu:focus-within {
				padding-top: .5rem; padding-bottom: .5rem;
				transition: max-height 1s ease, padding .5s ease;
				max-height: 100vh;
			}
				.header-menu ul.sub-menu > li { 
					display: block;
					margin: 0 0;
				}
					.header-menu ul.sub-menu > li > a, 
					.header-menu ul.sub-menu > li > a:visited { 
						display: block;
						margin: 0;
						padding: .3rem 0;
						text-align: initial;
					}
					.header-menu ul.sub-menu > li > a:hover,
					.header-menu ul.sub-menu > li > a:focus { 
						
					}
					.header-menu ul.sub-menu > li.current-menu-item > a,
					.header-menu ul.sub-menu > li.current-menu-parent > a,
					.header-menu ul.sub-menu > li.current-menu-ancestor > a { 
						
					}

					/* third level */
					.header-menu ul.sub-menu ul.sub-menu {
						padding: 0 0;
						position: absolute; top: 0; left: 100%;
					}
						.header-menu ul.sub-menu ul.sub-menu a {
							text-decoration: none;
						}


/* slick carousel */
	.slick-slider .slick-arrow {
		width: 3rem; height: 3rem;
	}
		.slick-slider .slick-arrow::before {
			
		}


.page-footer { 
	
}

	.menu-footer-menu-container { 
		
	}
		.menu-footer-menu-container ul:not(.sub-menu) { 
			
		}
			.menu-footer-menu-container ul:not(.sub-menu) > li {
				
			}
				.menu-footer-menu-container ul:not(.sub-menu) > li > a { 
					
				}
					.menu-footer-menu-container ul.sub-menu {
						
					}
						.menu-footer-menu-container ul.sub-menu > li {
							
						}
							.menu-footer-menu-container ul.sub-menu > li > a {
								
							}



/* md+ gravity forms */
.gfield.third {
	width: 33.3333%;
}
.gfield.two-thirds {
	width: 66.6666%;
}
.gfield.half,
.ginput_complex > .ginput_left,
.ginput_complex > .ginput_right {
	width: 50%;
}



}



/* lg (large) + */
@media only screen and (min-width: 991.98px) {





}


/* xl (extra large) + */
@media only screen and (min-width: 1199.98px) {





}


/* xxl (extra extra large) + */
@media only screen and (min-width: 1699.98px) and (min-height: 799.98px){

html {
	font-size: 20px;
}



}


@media (min-width: 768px) {
	.page-header .skills {
		display: none;
	}
}

.select-style:has(#document-type) {
	display: none !important;
}


.scrolled .page-header {
	background: rgba(28,33,40,.95);
}

.page-header {
	background: linear-gradient(180deg, rgba(0,0,0,1.0), rgba(0,0,0,0));
	transition: background 0.5s;
}

.page-header .sub-menu {
	color: black;
}

.page-header .menu-item-has-children {
	position: relative;
}

.page-header .menu-item-has-children::after {
	content: '▼';
	position: absolute;
	left: 0;
	right: 0;
	text-align: center;
	bottom: -10px;
	font-size: 8px;
}

.single-rsta_company_profile #page-content {
	padding-top: 150px;
}

.footer-newsletter {
	.gfield {
		margin: 0 !important;
		padding: 0 !important;

		input {
			height: 100%;
		}
		width: auto;
	}

	.gform_fields {
		gap: 0 !important;
		display:  flex !important;

		justify-content: end;
	}

	.gfield:first-child input {
		border-radius: 20px 0 0 20px;
	}

	.gfield:last-child input {
		border-radius: 0 20px 20px 0;
	}

	.gform-button {
		background-color: #46426A !important;
	}
}


@media (max-width: 768px) {
	.header-menu a {
		color: black !important;
	}
	.page-header .wp-block-buttons {
		display: none;
	}
}

@media (min-width: 769px) {
	#menu-main-menu > :first-child {
		display: none;
	}
}


.page-header .logo img {
	min-height: 30px;
}

.project-filters {
	flex: 0 0 100%;
}

.case-study-buttons {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin: 1rem 0;

	.wp-block-button, a {
		width: 100% !important;
		max-width: 250px; !important;
		display: block;
	}
}