html {}

body {
	color: #2e2d2c;
	font-family: 'europa', 'Arial', sans-serif;
	font-weight: 300;
	font-style: normal;
}



p {}

p:empty {}

img {
	border: 0;
}

a {
	color: inherit;
	text-decoration: underline;
}

a:hover,
a:focus {
	color: #777777;
	/*text-decoration: none;*/
}


/* headings */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'alverata', 'Georgia', serif;
	font-weight: 300;
	font-style: normal;
	letter-spacing: -.055em;
	margin: 0 0 1rem;
	text-wrap: balance;
}

h1 {
	font-size: 2rem;
}

h2 {
	font-size: 1.5rem;
}

h3 {
	font-size: 1.5rem;
}

h4,
h5,
h6 {
	font-size: 1.1rem;
}

*:not(.wp-block-spacer)+h1:not(:first-child),
*: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: 1em;
}

*:not(.wp-block-spacer)+.has-huge-font-size:not(:first-child),
*:not(.wp-block-spacer)+.has-colossal-font-size:not(:first-child) {
	margin-top: .6em;
}

h1 img {
	width: auto !important;
	height: .6em !important;
}

h1 a {
	transition: all .2s ease;
}

h1 a:hover,
h1 a:focus,
.is-style-tabs a:hover,
.is-style-tabs a:focus,
.is-style-tabs a.open {
	color: rgba(0, 0, 0, 0);
	font-family: inherit !important;
	text-stroke: 1px #2E2D2C;
	-webkit-text-stroke: 1px #2E2D2C;
}

.is-style-typewriter {
	/*display: none;*/
}


/*::-moz-selection {
	background: #FFAAAA;
}
::selection {
	background: #FFAAAA;
}*/


.is-style-tabbed:not(.open) {
	display: none;
}


/* fadein additional */
.fadein,
.wp-block-image.size-banner {
	opacity: 0 !important;
	transition: none !important;
}

.fadein.show,
.wp-block-image.size-banner.show {
	transition: opacity 1s ease !important;
	opacity: 1 !important;
}


/* pagination */
.pagination {
	padding: 0;
}

.pagination .screen-reader-text {}

.pagination a,
.pagination .page-numbers {
	display: inline-block;
	margin: 0 .3em;
	text-decoration: none;
}

.pagination .current {
	text-decoration: underline;
}

.prev-next a {
	margin: 0 .6em;
}


.text-decoration-none * {
	text-decoration: inherit !important;
}

.kb-count-up-process.kb-count-up-number {
	font-family: 'alverata';
}


/* ----------------------------- PAGE STRUCTURE ----------------------------- */


#alert_banner_container {}


.page-header {
	background: #FFFFFF;
	padding: 1em 0;
	position: relative;
	transition: all .3s ease;
	z-index: 1001;
}

.page-header a {
	color: inherit;
}

.page-header a:hover,
.page-header a:focus {
	color: inherit;
}

body.floating-header main>.is-style-padded-more:first-child::before {
	content: '';
	display: block;
	height: 3rem;
}


/* KE: invert for dark header backgrounds */
body.floating-header.invert-header:not(.scrolled) .page-header {
	color: #FFFFFF;
}

body.floating-header.invert-header:not(.scrolled) .page-header .is-style-header-logo img {
	filter: brightness(0) invert(1);
}


body .page-header .wp-block-button {
	position: relative;
	z-index: 1004;
}

body.show-menu .page-header .wp-block-button .wp-block-button__link {
	border-color: #FFFFFF !important;
	color: #FFFFFF !important;
}

body.show-menu .page-header .wp-block-button .wp-block-button__link::after {
	display: none;
}


.menu-toggle {
	cursor: pointer;
	display: block;
	float: right;
	transform: rotate(0deg);
	transition: .5s ease-in-out;
	position: relative;
	vertical-align: middle;
	width: 1.5rem;
	height: 1.5rem;
	z-index: 1004;
}

/*body.show-menu .menu-toggle {
	position: fixed; top: 0; right: 0;
}*/
.menu-toggle span {
	background-color: currentColor;
	/*#2e2d2c*/
	display: block;
	position: absolute;
	left: 0;
	transform: rotate(0deg);
	transition: .3s ease-in-out;
	width: 100%;
	height: 2px;
}

body.show-menu .menu-toggle span {
	background-color: #FFFFFF;
}

.menu-toggle span:nth-child(1) {
	top: 0;
}

.menu-toggle span:nth-child(2),
.menu-toggle span:nth-child(3) {
	top: calc(50% - 1px);
}

.menu-toggle span:nth-child(4) {
	top: calc(100% - 2px);
}

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);
}



.menu-main-menu-container {
	background-color: rgba(60, 60, 59, .95);
	color: #FFFFFF;
	display: block;
	font-size: 2rem;
	font-weight: 400;
	margin: 0;
	/*margin-left: -105%;*/
	opacity: 0;
	padding: 7rem 8% 3rem;
	pointer-events: none;
	position: fixed;
	top: 0;
	left: 0;
	text-align: center;
	/*text-transform: lowercase;*/
	transition: all .3s ease;
	width: 100%;
	height: 100%;
	z-index: 1003;
}

body.show-menu .menu-main-menu-container {
	margin-left: 0;
	opacity: 1;
	overflow-x: hidden;
	overflow-y: auto;
	pointer-events: initial;
}

.menu-main-menu-container ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	padding-bottom: 2rem;
}

.menu-main-menu-container ul li {
	display: block;
	margin: 0 0 .2em;
}

.menu-main-menu-container ul li a,
.menu-main-menu-container ul li a:visited {
	display: inline-block;
	padding: 0 0;
	position: relative;
	text-decoration: none;
}

.menu-main-menu-container ul:not(.sub-menu)>li>a::after {
	border-bottom: 1px solid #FFFFFF;
	content: '';
	display: block;
	position: absolute;
	top: 100%;
	right: 0;
	transition: all .3s ease;
	width: 0;
	height: 0;
}

.menu-main-menu-container ul:not(.sub-menu)>li>a:hover::after,
.menu-main-menu-container ul:not(.sub-menu)>li>a:focus::after,
.menu-main-menu-container ul li.current-menu-item>a::after,
.menu-main-menu-container ul li.current-page-ancestor>a::after {
	right: auto;
	left: 0;
	width: 100%;
}

/* second level */
.menu-main-menu-container ul.sub-menu {
	font-size: .75em;
	list-style-type: none;
	padding: 0 0 1em;
	position: static;
	top: auto;
	left: auto;
	visibility: visible;
	width: auto;
}

.menu-main-menu-container ul.sub-menu>li {
	padding: 0;
}

.menu-main-menu-container ul.sub-menu>li>a,
.menu-main-menu-container ul.sub-menu>li>a:visited {
	display: inline-block;
	padding: .1rem 0;
	text-decoration: none;
}

.menu-main-menu-container ul.sub-menu>li>a:hover,
.menu-main-menu-container ul.sub-menu>li>a:focus {
	text-decoration: underline;
}

.menu-main-menu-container ul.sub-menu>li.current-menu-item>a,
.menu-main-menu-container ul.sub-menu>li.current-menu-parent>a,
.menu-main-menu-container ul.sub-menu>li.current-menu-ancestor>a {
	text-decoration: underline;
}


main {
	display: block;
}



iframe {
	border: 0;
}

.aligncenter iframe {
	margin-right: auto;
	margin-left: auto;
}

video {
	display: block;
}


#heading {
	margin-right: auto;
	margin-left: auto;
	/*text-align: initial;*/
	white-space: nowrap;
	/*width: 6.5em;*/
}



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

.slick-slider .slick-arrow {
	background: transparent;
	padding: .5rem 0 !important;
	width: auto;
	height: auto;
}

.slick-slider .slick-arrow::before {
	background: center/contain no-repeat transparent;
	/*filter: brightness(0) invert(1);*/
	width: 3rem;
	height: 1rem;
}

.slick-slider .slick-arrow.slick-prev {
	left: 1rem;
}

.slick-slider .slick-arrow.slick-prev::before {
	background-image: url('../images/arrow-left.svg');
}

.slick-slider .slick-arrow.slick-next {
	right: 1rem;
}

.slick-slider .slick-arrow.slick-next::before {
	background-image: url('../images/arrow-right.svg');
}

.slick-dotted.slick-slider {
	margin: 0;
}

.slick-dots {
	/*background: linear-gradient(0deg, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0) 100%);*/
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
	margin: 0;
	padding: 2em 0 2em;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}

.slick-dotted.slick-slider.is-style-dots-outside .slick-dots {
	padding-bottom: 0;
	position: static;
	transform: none;
}

.slick-dots li {
	margin: 0 .2em;
}

.slick-dots li button {
	background-color: transparent;
	border: 2px solid #000000;
	border-radius: 50%;
	display: block;
	padding: 0;
	width: 1rem;
	height: 1rem;
}

.slick-dots li.slick-active button {
	background-color: #000000;
}

.has-white-color .slick-dots li button {
	border-color: #FFFFFF;
}

.has-white-color .slick-dots li.slick-active button {
	background-color: #FFFFFF;
}

.slick-dots li button::before {
	display: none;
}

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



.tags p {
	margin: 0;
}



.grid-thumb {
	margin-bottom: 2rem;
}



.is-style-logo-grid {}

.is-style-logo-grid img,
.is-style-logo img {
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	display: block;
	object-fit: contain !important;
	font-family: 'object-fit: contain;' !important;
	margin: 0 auto;
	opacity: 1;
	padding: 10% 15%;
	transition: all .3s ease;
	width: 100%;
	min-height: 5rem;
	height: 10vw;
	max-height: 10rem !important;
}

.is-style-logo-grid .is-style-larger img {
	padding: 0% 5%;
}

.is-style-logo img {
	margin: 0;
	object-position: center left;
	padding: 0;
	max-width: 8rem;
	max-height: 8rem;
}

.is-style-logo img {}

.is-style-logo-grid a:hover img,
.is-style-logo-grid a:focus img,
.is-style-logo a:hover img,
.is-style-logo a:focus img {
	/*-webkit-filter: grayscale(0%);
		filter: grayscale(0%);*/
	opacity: .6;
}


.menu-service-menu-container {
	font-family: 'alverata', 'Georgia', serif;
	font-weight: 300;
	font-style: normal;
	margin-bottom: 2rem;
}

.menu-service-menu-container ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.menu-service-menu-container ul li {
	display: none;
}

.menu-service-menu-container ul li.current-menu-ancestor {
	display: block;
}

.menu-service-menu-container ul li.current-menu-ancestor>a {
	display: none;
}

.menu-service-menu-container ul ul.sub-menu li {
	display: block;
}

.menu-service-menu-container ul ul.sub-menu li.current-menu-item {
	display: none;
}

.menu-service-menu-container ul li a {
	text-decoration: none;
}



.z-15 {
	position: relative;
	z-index: 15;
}

.z-10 {
	position: relative;
	z-index: 10;
}

.z-5 {
	position: relative;
	z-index: 5;
}




/* watermarks */
.is-style-watermark-1 {
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-50%, -50%);
	width: 40vw;
	height: auto;
	z-index: -1;
}

.is-style-watermark-2 {
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-50%, -20%);
	width: 30vw;
	height: auto;
	z-index: -1;
}

.is-style-watermark-3 {
	margin: 0;
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
}

.is-style-watermark-3 img {
	width: auto;
	height: 4rem;
}

.is-style-watermark-4 {
	margin: 0;
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
}

.is-style-watermark-4 img {
	width: auto;
	height: 40vw;
}

.is-style-watermark-5 {
	position: absolute;
	bottom: 0;
	right: 0;
	transform: translate(50%, 50%);
	width: 30vw;
	height: auto;
	z-index: 5;
}



/* 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 -.5rem 1rem;
}

.menu-footer-menu-container ul {
	display: block;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.menu-footer-menu-container ul li {
	display: inline-block;
	margin: 0;
	padding: 0 .5rem;
}

.menu-footer-menu-container ul li a {
	display: block;
	text-decoration: none;
}




/* cocoen before and after */
.is-style-before-after {
	position: relative;
}

/* fixes for markup-js problems */
.is-style-before-after>div>*:first-child {
	position: absolute;
	z-index: 2;
}

.is-style-before-after>div>*:first-child>div {
	overflow: hidden;
	width: 50%;
}

.is-style-before-after img {
	max-width: none;
}

.cocoen-drag {
	background: transparent !important;
	display: flex;
	z-index: 3;
}

.cocoen-drag::before,
.cocoen-drag-dupe {
	background: url('../images/ba-handle.svg') center/contain no-repeat transparent;
	border: 0 !important;
	margin-top: -2.5rem !important;
	margin-left: -2.5rem !important;
	width: 5rem !important;
	height: 5rem !important;
}

.cocoen-info {
	align-items: center;
	display: flex;
	justify-content: center;

	background: rgba(0, 0, 0, .8);
	color: #FFFFFF;
	font-size: 1.6em;

	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
	width: 100%;
	z-index: 101;
}

.cocoen-drag-dupe {
	margin-top: 0 !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

.cocoen-info .text {
	display: block;
	transform: translateY(5rem);
}




/* outset container content to left or right of page */
.is-style-page-left,
.is-style-page-right {
	position: relative;
}

.is-style-page-left {
	margin-left: -12px;
}

.is-style-page-right {
	margin-right: -12px;
}

.is-style-page-left.is-style-logo-hero,
.is-style-page-right.is-style-logo-hero {
	width: calc(100% + 12px);
}



@media only screen and (min-width: 575.98px) {
	.is-style-page-left {
		margin-left: calc(-50vw + 270px - 12px);
	}

	.is-style-page-right {
		margin-right: calc(-50vw + 270px - 12px);
	}
}

@media only screen and (min-width: 767.98px) {
	.is-style-page-left {
		margin-left: calc(-50vw + 360px - 12px);
	}

	.is-style-page-right {
		margin-right: calc(-50vw + 360px - 12px);
	}
}

@media only screen and (min-width: 991.98px) {
	.is-style-page-left {
		margin-left: calc(-50vw + 480px - 12px);
	}

	.is-style-page-right {
		margin-right: calc(-50vw + 480px - 12px);
	}
}

@media only screen and (min-width: 1199.98px) {
	.is-style-page-left {
		margin-left: calc(-50vw + 570px - 12px);
	}

	.is-style-page-right {
		margin-right: calc(-50vw + 570px - 12px);
	}
}

@media only screen and (min-width: 1599.98px) {
	.is-style-page-left {
		margin-left: calc(-50vw + 770px - 12px);
	}

	.is-style-page-right {
		margin-right: calc(-50vw + 770px - 12px);
	}
}



/* column horz padding */
.row {
	margin-right: -10px;
	margin-left: -10px;
}

.col,
[class*="col-"] {
	padding-right: 10px;
	padding-left: 10px;
}




/* cred special cases */
.everedge-image-outset-1 {
	position: absolute;
	top: 10%;
	right: 10%;
	width: 100%;
}

.siip_end-logo{
	width: 100px;
	height: auto;
}

.siip_illustrat-lemon{
	background-size: 450px 450px;
	background-position: calc(100% + 299px) 100%;
	background-repeat: no-repeat;
	background-image: url('/wp-content/uploads/2024/08/siip-lemon-watercolour-final-fade-clean-800x625.png');
}

@media screen and (min-width: 992px){
	.siip_illustrat-lemon{
		background-size: 900px 900px;
		background-position: calc(100% + 200px) 60%;
		background-image: url('/wp-content/uploads/2024/08/siip-lemon-watercolour-final-fade-clean-1536x1366.png');
}
}

.tacp-cred__small-mockup-desktop{
	display: none;
}

@media screen and (min-width: 768px){
	.tacp-cred__small-mockup-desktop{
		display: block;
		width: 250px;
		height: 500px;
		background-size: contain;
		background-image: url('/wp-content/uploads/2024/09/tacp-mobile-mockup.jpg');
		background-position-x: center;
		background-repeat: no-repeat;
	}
}

.tacp-cred__small-mockup-mobile{
	display: block;
	width: auto;
	height: 300px;
	margin-top: 30px;
	background-image: url('/wp-content/uploads/2024/09/tacp-mobile-mockup-bg.jpg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position-x: center;
}

@media screen and (min-width: 768px){
	.tacp-cred__small-mockup-mobile{
		display: none;
	}
}

.tacp-cred__screen-mockup{
	padding: 2rem;
}

.wdf-offset-images{
	margin-top: -17%;
}

.ac-watermark {
	background-position: bottom right !important;
	background-repeat: no-repeat !important;
	background-size: 40% auto !important;
}

/* BioInteractions */
.wp-block-image.is-style-semicircle-left {
	border-top-left-radius: 10000px;
	border-bottom-left-radius: 10000px;
	overflow: hidden;
}

.wp-block-image.is-style-semicircle-right {
	border-top-right-radius: 10000px;
	border-bottom-right-radius: 10000px;
	overflow: hidden;
	position: relative;
}

.wp-block-image.is-style-semicircle-right img,
.wp-block-image.is-style-semicircle-left img {
	aspect-ratio: 1 / 1;
	object-fit: cover !important;
	max-height: none !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,
textarea {
	-webkit-appearance: none;
	border-radius: 0;
	display: inline-block;
	font-size: 1em;
	margin: .3em 0;
	padding: .5em;
}


input[type="text"],
input[type="number"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="tel"],
.select-style,
textarea {
	border: 1px solid #2e2d2c;
	background-color: transparent;
}

textarea {
	min-height: 6em;
}


::-webkit-input-placeholder {
	color: inherit;
}

:-moz-placeholder {
	color: inherit;
	opacity: 1;
}

::-moz-placeholder {
	color: inherit;
	opacity: 1;
}

:-ms-input-placeholder {
	color: inherit;
}


input[type="radio"],
input[type="checkbox"] {
	display: inline-block;
	margin: .3em .5em .3em 0;
	vertical-align: top;
}

input[type="radio"]+label,
input[type="checkbox"]+label {
	display: inline-block;
	overflow: visible;
	height: auto;
	max-width: calc(100% - 4em);
}



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

input[type="image"]:hover,
input[type="image"]:focus {}



/* select style (requires wrapper .select-style) */
.select-style {
	padding: 0;
	margin: .3em 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: .5em 2.5em .5em .5em;
	position: relative;
	width: calc(100% + 2em);
}

.select-style select option {
	color: inherit;
	padding: 0 2em 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: 2em;
	height: 100%;
}



.radio-style,
.checkbox-style {
	background: transparent;
	border: 1px solid #2e2d2c;
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	margin-right: .5em;
	position: relative;
	transition: all .3s ease;
	vertical-align: middle;
	width: 1em;
	height: 1em;
}

.checkbox-style {
	border-radius: 0;
}

.radio-style.checked,
.checkbox-style.checked {
	background: #2e2d2c;
	border-color: #2e2d2c;
	/*border: 2px solid #f6f6f6;*/
}

.radio-style input[type="radio"],
.checkbox-style input[type="checkbox"] {
	display: block;
	margin: 0;
	position: absolute;
	top: -.2em;
	left: -.2em;
	width: 1em;
	height: 1em;
}




/* ----------------------------------------------------------------------------- */
/* -------------------------------- 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) {

	body.show-menu {
		pointer-events: none;
		height: 100%;
		overflow: hidden;
	}

	body.show-menu .page-header {
		pointer-events: initial;
	}

	body.home.fixed-header .page-header,
	body.floating-header.fixed-header .page-header {
		background: transparent;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
	}

	body.home.fixed-header .page-header-height,
	body.floating-header.fixed-header .page-header-height {
		display: none;
	}



	/* grid breakers */

	/* top (move element upwards) */
	html .outset-top-vh-10-sm {
		margin-bottom: -10vh !important;
		transform: translateY(-10vh);
	}

	html .outset-top-vh-10-padding-sm {
		padding-bottom: calc(10vh + 2rem);
	}

	html .outset-top-vh-25-sm {
		margin-bottom: -25vh !important;
		transform: translateY(-25vh);
	}

	html .outset-top-vh-25-padding-sm {
		padding-bottom: calc(25vh + 2rem);
	}

	html .outset-top-vh-50-sm {
		margin-bottom: -50vh !important;
		transform: translateY(-50vh);
	}

	html .outset-top-vh-50-padding-sm {
		padding-bottom: calc(50vh + 2rem);
	}

	.outset-top-pc-50-sm {
		margin-bottom: -50% !important;
		transform: translateY(-50%);
	}

	/* bottom (move element downwards) */
	html .outset-bottom-vh-10-sm {
		margin-top: -10vh !important;
		transform: translateY(10vh);
	}

	html .outset-bottom-vh-10-padding-sm {
		padding-top: calc(10vh + 2rem);
	}

	html .outset-bottom-vh-25-sm {
		margin-top: -25vh !important;
		transform: translateY(25vh);
	}

	html .outset-bottom-vh-25-padding-sm {
		padding-top: calc(25vh + 2rem);
	}

	html .outset-bottom-vh-37-sm {
		margin-top: -37vh !important;
		transform: translateY(37vh);
	}

	html .outset-bottom-vh-37-padding-sm {
		padding-top: calc(37vh + 2rem);
	}

	html .outset-bottom-vh-50-sm {
		margin-top: -50vh !important;
		transform: translateY(50vh);
	}

	html .outset-bottom-vh-50-padding-sm {
		padding-top: calc(50vh + 2rem);
	}

	.outset-bottom-pc-50-sm {
		margin-top: -50% !important;
		transform: translateY(50%);
	}



	/* */
	.wp-block-spacer+.wp-block-spacer {
		display: none;
	}



	/* column horz padding */
	.row {
		margin-right: -10px;
		margin-left: -10px;
	}

	.col,
	[class*="col-"] {
		padding-right: 10px;
		padding-left: 10px;
	}


}



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


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


	.me-md-m-medium {
		margin-right: -4rem !important;
	}

	.mt-md-m-medium {
		margin-top: -4rem !important;
	}

	/* headings */
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {}

	h1 {
		font-size: 3.5rem;
	}

	body:not(.home) h1 {
		-webkit-animation: fadein 1s linear 1 1s forwards;
		animation: fadein 1s linear 1s 1 forwards;
		opacity: 0;
	}

	h2 {
		font-size: 3rem;
	}

	h3 {
		font-size: 1.4em;
	}

	h4,
	h5,
	h6 {
		font-size: 1.2em;
	}



	/* ----------------------------- PAGE STRUCTURE ----------------------------- */
	@-webkit-keyframes fadein {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}

	@keyframes fadein {
		0% {
			opacity: 0;
		}

		100% {
			opacity: 1;
		}
	}




	.page-header {
		padding: 2rem 0;
	}

	.is-style-header-logo {
		-webkit-animation: fadein .5s linear 1 .5s forwards;
		animation: fadein .5s linear .5s 1 forwards;
		opacity: 0;
	}



	/* fixed header */
	.fixed-header .page-header {
		border-bottom: 1px solid transparent;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
	}

	.fixed-header.scrolled .page-header {
		background: #FFFFFF;
		border-bottom-color: #f6f6f6;
		padding: 1em 0;
		position: fixed;
	}

	.fixed-header.admin-bar .page-header {
		/* when wordpress admin bar is present */
		top: 32px;
	}

	.home.fixed-header:not(.scrolled) .page-header .is-style-header-logo {
		/*opacity: 0;*/
	}

	.page-header-height,
	body.floating-header main>.is-style-padded-more:first-child::before {
		/* KE: for floating header coloured backgrounds on new creds 2024 */
		height: 5.5rem;
	}

	body.home .page-header,
	body.floating-header .page-header {
		background: transparent;
	}

	body.home .page-header-height,
	body.floating-header .page-header-height {
		display: none;
	}


	.menu-main-menu-container,
	body.show-menu .menu-main-menu-container {
		-webkit-animation: fadein 2s linear 1 .5s forwards;
		animation: fadein 2s linear .5s 1 forwards;
		background: transparent;
		box-shadow: none;
		color: inherit;
		font-size: 1rem;
		margin: 0;
		opacity: 0;
		overflow: visible;
		padding: 0;
		pointer-events: initial;
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		text-align: inherit;
		width: auto;
		height: auto;
		z-index: 1002;
	}

	.menu-main-menu-container ul {
		padding: 0;
	}

	.menu-main-menu-container ul li {
		display: inline-block;
		margin: 0 .9em;
		position: relative;
		text-align: initial;
	}

	.menu-main-menu-container ul li a,
	.menu-main-menu-container ul li a:visited {
		display: block;
		padding: .5em 0;
	}

	.menu-main-menu-container ul:not(.sub-menu)>li>a::after {
		border-bottom-color: currentColor;
		/*#2e2d2c*/
	}

	/* second level */
	.menu-main-menu-container ul.sub-menu {
		background-color: #FFFFFF;
		font-size: inherit;
		overflow: hidden;
		padding: 0 1rem;
		position: absolute;
		top: 100%;
		left: -1rem;
		width: 10rem;
		max-height: 0;
	}

	body.invert-header .menu-main-menu-container ul.sub-menu {
		background-color: #2e2d2c;
	}

	.menu-main-menu-container ul:not(.sub-menu)>li:first-child>ul.sub-menu {}

	.menu-main-menu-container ul:not(.sub-menu)>li:last-child>ul.sub-menu {
		left: auto;
		right: -.7rem;
	}

	.menu-main-menu-container li:hover>ul.sub-menu,
	.menu-main-menu-container a:focus+ul.sub-menu,
	.menu-main-menu-container ul.sub-menu:focus-within {
		padding-top: .5rem;
		padding-bottom: .5rem;
		transition: max-height 1s ease, padding .5s ease;
		max-height: 100vh;
	}

	.menu-main-menu-container ul.sub-menu>li {
		display: block;
		margin: 0 0;
	}

	.menu-main-menu-container ul.sub-menu>li>a,
	.menu-main-menu-container ul.sub-menu>li>a:visited {
		display: block;
		margin: 0;
		padding: .3rem 0;
		text-align: initial;
		text-transform: none;
	}

	.menu-main-menu-container ul.sub-menu>li>a:hover,
	.menu-main-menu-container ul.sub-menu>li>a:focus {}

	.menu-main-menu-container ul.sub-menu>li.current-menu-item>a,
	.menu-main-menu-container ul.sub-menu>li.current-menu-parent>a,
	.menu-main-menu-container ul.sub-menu>li.current-menu-ancestor>a {}


	.slick-slider .slick-arrow {
		padding: 1rem 0 !important;
	}

	.slick-slider .slick-arrow::before {
		width: 4rem;
		height: 1rem;
	}


	/* grid breakers */

	/* top (move element upwards) */
	html .outset-top-vh-10 {
		margin-bottom: -10vh !important;
		transform: translateY(-10vh);
	}

	html .outset-top-vh-10-padding {
		padding-bottom: calc(10vh + 7rem);
	}

	html .outset-top-vh-25 {
		margin-bottom: -25vh !important;
		transform: translateY(-25vh);
	}

	html .outset-top-vh-25-padding {
		padding-bottom: calc(25vh + 7rem);
	}

	html .outset-top-vh-50 {
		margin-bottom: -50vh !important;
		transform: translateY(-50vh);
	}

	html .outset-top-vh-50-padding {
		padding-bottom: calc(50vh + 7rem);
	}

	.outset-top-pc-50 {
		margin-bottom: -50% !important;
		transform: translateY(-50%);
	}

	/* bottom (move element downwards) */
	html .outset-bottom-vh-10 {
		margin-top: -10vh !important;
		transform: translateY(10vh);
	}

	html .outset-bottom-vh-10-padding {
		padding-top: calc(10vh + 7rem);
	}

	html .outset-bottom-vh-25 {
		margin-top: -25vh !important;
		transform: translateY(25vh);
	}

	html .outset-bottom-vh-25-padding {
		padding-top: calc(25vh + 7rem);
	}

	html .outset-bottom-vh-37 {
		margin-top: -37vh !important;
		transform: translateY(37vh);
	}

	html .outset-bottom-vh-37-padding {
		padding-top: calc(37vh + 7rem);
	}

	html .outset-bottom-vh-50 {
		margin-top: -50vh !important;
		transform: translateY(50vh);
	}

	html .outset-bottom-vh-50-padding {
		padding-top: calc(50vh + 7rem);
	}

	.outset-bottom-pc-50 {
		margin-top: -50% !important;
		transform: translateY(50%);
	}

	/* latest news image etc */
	.banner-outset-ratio-50 {
		/* height of banner shape divided by 2 */
		/*background: #FF0000;*/
		padding-top: 39%;
		width: 100%;
		height: 0;
	}

	.banner-height-ratio-50 {
		/* crop height of banner to half */
		padding-top: 39%;
		position: relative;
		height: 0;
	}

	.banner-height-ratio-50>a,
	.banner-height-ratio-50>img {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
	}

	.outset-top-pc-50.banner-height-ratio-50 {
		/* fix */
		margin-bottom: -100%;
		transform: translateY(-100%);
	}

	.outset-bottom-pc-50.banner-height-ratio-50 {
		margin-top: -100%;
		transform: translateY(100%);
	}



	/* watermarks */
	.is-style-watermark-3 img {
		height: 10rem;
	}





	.page-footer {}

	.page-footer .footer-bottom {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
	}



	/* md+ gravity forms */
	.gfield.third {
		width: 33.3333%;
	}

	.gfield.two-thirds {
		width: 66.6666%;
	}

	.gfield.half {
		width: 50%;
	}


}



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

	.row {
		margin-right: -20px;
		margin-left: -20px;
	}

	.col,
	[class*="col-"] {
		padding-right: 20px;
		padding-left: 20px;
	}



}


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


/* 'xxl' (custom large size) + */
@media only screen and (min-width: 1599.98px) {

	body {
		font-size: 20px;
	}




}


@media screen and (max-width: 575.98px) {
	.source__home-video {
		aspect-ratio: 1/1;
		position: relative;
		margin-left: -15px;
		margin-right: -15px;
	}

	.source__home-video video {
		vertical-align: middle;
		width: 100%;
		object-fit: cover;
		position: absolute;
		right: 0;
		left: 0;
		height: 100%;
	}

}