/* MAIN WP CSS FILE -- DESKTOP FIRST STYLESHEET */
@font-face{ font-family: 'Roboto'; src: url('../fonts/Roboto-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face{ font-family: 'Lato'; src: url('../fonts/Lato-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }

:root{
	--contentpad: 10px;
	--contentpad2x: 20px;
	--contentpad3x: 30px;
	--contentpad4x: 40px;
	--sectionpad05x: 60px;
	--sectionpad: 120px;
	/* var(--colw) in document */
	--colw05x: calc( var(--colw) / 2 );
	--colw2x: calc( var(--colw) * 2 );
	/* sides */
	--gridgutter: 70px;
	--gridedge: 0;
	/* colours */
	--theme-white: #FFFFFF;
	--theme-black: #101820;
	--theme-navy: #1E213A;
	--theme-teal: #005A70;
	--theme-aqua: #B1E4E3;
	--theme-cream: #F2E9DB;
	--theme-lightcream: #FCF9F5;
	/* font */
	--fontfam-heading: 'ivyora-display', serif;
	--fontfam-label: 'Roboto', sans-serif;
	--fontfam-text: 'ivyora-text', serif;
	--fontfam-button: 'Lato', sans-serif;
	--size-h1: 4.14rem;
	--size-h2: 2.82rem; 
	--size-h3: 1.47rem;
	--size-h4: 1.29rem;
	--size-h5: 1.0rem;
	--size-h6: 1.0rem;
	--size-p-xlrg: 1.47rem;
	--size-p-lrg: 1.29rem;
	--size-p: 1rem;
	--size-p-sml: 0.88rem;
	--size-button: 1rem;
	/* elements */
	--radius-button: 10px;
	--radius-box: 10px;
}


html, body {
	margin: 0;
	padding: 0;
	font-size: 17px;/*16.8?17?*/
	font-size: calc( 15px + (21 - 15) * (100vw - 980px) / (1920 - 980) );
	font-weight: 400;
	font-family: var(--fontfam-text);
	line-height: 1.3;
	min-width: 320px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
	@media only screen and (min-width : 1921px) {
		html, body {
			font-size: 17px; /* do not scale at larger screen sizes */
		}
	}

body.menu-open{}
body.is-mobile.menu-open,
body.no-scroll,
body.sticky-open{ 
	overflow: hidden!important; 
}
body.no-scroll #wpadminbar,
body.menu-open #wpadminbar,
body.sticky-open #wpadminbar{ 
	display: none;
}


h1, h2, h3, h4, h5, h6{
	margin: var(--contentpad2x) 0;
}
	h1, .h1{
		font-family: var(--fontfam-heading);
		font-weight: 400;
		font-size: var(--size-h1);
		line-height: 1.2;
		hanging-punctuation: first last;
	}
	h2, .h2{
		font-family: var(--fontfam-heading);
		font-weight: 400;
		font-size: var(--size-h2);
		line-height: 1.2;
	}
	h3, .h3{
		font-family: var(--fontfam-heading);
		font-weight: 400;
		font-size: var(--size-h3);
		line-height: 1.3;
	}
	h4, .h4{
		font-family: var(--fontfam-heading);
		font-weight: 400;
		font-size: var(--size-h4);
		line-height: 1.3;
	}
	h5, .h5{
		font-family: var(--fontfam-heading);
		font-weight: 500;
		font-size: var(--size-h5);
		line-height: 1.3;
	}
	h6, .h6, .label{
		font-family: var(--fontfam-label);
		font-weight: 400;
		font-size: var(--size-h6);
		line-height: 1.3;
/*		letter-spacing: 0.2em;*/
		text-transform: uppercase;
	}
		.label + h1{
			margin-top: var(--contentpad4x);
		}
		.label + h2{
			margin-top: var(--contentpad3x);
		}


.text-xlarge{
	font-size: var(--size-p-xlrg);
	font-family: var(--fontfam-text);
	text-transform: initial;
	font-weight: normal;
	line-height: 1.3;
}
.text-large{
	font-size: var(--size-p-lrg);
	font-family: var(--fontfam-text);
	text-transform: initial;
	font-weight: normal;
	line-height: 1.3;
}
.text-normal{
	font-size: var(--size-p);
	font-family: var(--fontfam-text);
	text-transform: initial;
	font-weight: normal;
	line-height: 1.3;
}
small,
.text-small,
.text-caption{
	font-family: var(--fontfam-text);
	font-size: var(--size-p-sml);
	text-transform: initial;
	font-weight: normal;
	line-height: 1.3;
}

/*--------------------------------------------------------- Wrapper / Inner */
.section { width: 100%; margin: 0 auto; clear: both; position: relative; box-sizing: border-box; }
.section .inner{ max-width: 1920px; width: 100%; margin: 0 auto; position: relative; box-sizing: border-box; }

/*--------------------------------------------------------- Clearfix */
.group{ zoom: 1; position: relative; }
.group::before, .group::after{ content: ''; display: table; clear: both; } 
.screenheight{ height: 100vh; height: var(--vh100); }

/* some issues with Page Speed Insights viewing elements with 'opacity:0' on load */
[data-aos^=fade][data-aos^=fade]:not(.aos-animate){
	opacity: 0.01;
}

.unselectable{ -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.unclickable{ pointer-events: none; }
.visually-hidden, .gfield_visibility_hidden, .gform_required_legend{ 
    position: absolute!important; height: 1px!important; width: 1px!important; overflow: hidden!important;
    clip: rect(1px 1px 1px 1px)!important; clip: rect(1px, 1px, 1px, 1px)!important; white-space: nowrap!important;
}
.print-only{ display: none!important; }

/* Slider Firefox issue - https://github.com/kenwheeler/slick/issues/982 */
*{ min-height: 0; min-width: 0; }

/* blue outline on focus fields */
*:focus{ outline: none; }

/* blue background on focus fields mobile */
*:focus, *:active{ -webkit-tap-highlight-color: transparent; }

/* highlight on content select */
*::selection{
	color: #101820; background-color: rgba(177, 228, 227, 0.99);
}
*::-moz-selection{
	color: #101820; background-color: rgba(177, 228, 227, 0.99);
}

img::selection{
	background-color: rgba(177, 228, 227, 0.33);
}
img::-moz-selection{
	background-color: rgba(177, 228, 227, 0.33);
}

/*
.bg-white *::selection{
	color: #fff; background-color: rgba(0, 0, 0, 0.99);
}
.bg-black *::-moz-selection{
	color: #000; background-color: rgba(255, 255, 255, 0.99);
}
*/


div, nav, aside, section, header, footer{ box-sizing: border-box; }
img{ max-width: 100%; height: auto; box-shadow: #000 0em 0em 0em; border: 0; }
img.alignleft{ display: block; margin-left: 0; margin-right: auto; }
img.alignright{ display: block; margin-left: auto; margin-right: 0; }
img.aligncenter{ display: block; margin-left: auto; margin-right: auto; }
a.block, img.block, svg.block{ display: block; width: 100%; height: auto; }
img.object-fill, svg.object-fill{ display: block; height: 100%; width: 100%; object-fit: cover; object-position: center; }
img.object-contain, svg.object-contain{ display: block; height: 100%; width: 100%; object-fit: contain; object-position: center; }

table{ width: 100%; }
table.alignright, table.alignleft{ width: auto; }
td, th{ padding: 6px 6px; }

video{ 
	display: block; 
	width: 100%; 
	max-width: 100%; 
	height: auto; 
	object-fit: cover; 
	object-position: center; 
}

iframe{ 
	width: 100%; 
	max-width: 100%; 
}
iframe[src*="vimeo"]{} 
iframe[src*="youtube"]{}
iframe[src*="google.com/maps"]{
	display: block;
	min-height: 360px; 
}

input, 
input[type="submit"], 
input[type="button"], 
button{ 
	font-family: var(--fontfam-text);
	border-radius: 0; 
	-webkit-appearance: none; 
	-webkit-border-radius:0px; 
	transition: all 0.35s ease;
}
select{
	font-family: var(--fontfam-text);
	border-radius: 0; 	
}
textarea{
	font-family: var(--fontfam-text);
}

svg{
	color: inherit;
	fill: inherit;
}

a{ 
	position: relative;
	color: inherit; 
	text-decoration: none; 
	transition: all 0.35s ease 0s; 
}
a > span{
	display: inline-block;
	vertical-align: middle;
}
a > span:not(.visually-hidden) + span:not(.visually-hidden){
	margin-left: var(--contentpad);
}


ul:not([class]), 
ol:not([class]){ 
	margin: 1.4rem 0 1.4rem 0; 
}
ul:not([class]) li:not(:first-child), 
ol:not([class]) li:not(:first-child){ 
	margin-top: var(--contentpad);
}

/* list styles */
ul.inline{
	list-style-type: none; 
	margin: 1.4rem 0;
	padding: 0;
}
ul.inline li{ 
	display: inline-block; 
	vertical-align: middle; 
	margin: 0; 
	padding: 0;
}
ul.inline li:not(:last-child){
	margin-right: var(--contentpad2x);
}

/* for global site style on list, use ul:not([class]) */
ul:not([class]){
	list-style-type: none;
	padding-inline-start: 30px;
}
ul:not([class]) li{}
ul:not([class]) li::before{
	content: '\2013';
    position: absolute;
    margin-left: -28px;
}

ol:not([class]){
	list-style-type: none;
	padding-inline-start: 30px;
	counter-reset: ol-counter;	
}
ol:not([class]) > li{
	counter-increment: ol-counter;
}
ol:not([class]) > li::before{
	content: counter(ol-counter) ".";	
	position: absolute;
    margin-left: -28px;
}
ol:not([class]) > li > ol > li::before{
	content: counter(ol-counter,lower-roman) ".";
}

/*--------------------------------------------------------- THEME: COLOURS */
.bg-black{ 
	background-color: var(--theme-black); 
}
	.bg-black:not(.boxed){
		color: var(--theme-cream); 
		fill: var(--theme-cream); 
	}
	.text-black{ 
		color: var(--theme-black); 
		fill: var(--theme-black); 
	}

.bg-navy{ 
	background-color: var(--theme-navy); 
}
	.bg-navy:not(.boxed){
		color: var(--theme-lightcream); 
		fill: var(--theme-lightcream); 
	}
		.bg-navy:not(.boxed) h1,
		.bg-navy:not(.boxed) h2,
		.bg-navy:not(.boxed) .h2{
			color: var(--theme-cream);
			fill: var(--theme-cream);
		}
	.text-navy{ 
		color: var(--theme-navy); 
		fill: var(--theme-navy); 
	}

.bg-teal{ 
	background-color: var(--theme-teal); 
}
	.bg-teal:not(.boxed){
		color: var(--theme-white); 
		fill: var(--theme-white); 
	}
		.bg-teal:not(.boxed) h1,
		.bg-teal:not(.boxed) h2,
		.bg-teal:not(.boxed) .h2{
			color: var(--theme-cream);
			fill: var(--theme-cream);
		}

	.text-teal{ 
		color: var(--theme-teal); 
		fill: var(--theme-teal); 
	}

.bg-aqua{ 
	background-color: var(--theme-aqua); 
}
	.bg-aqua:not(.boxed){
		color: var(--theme-black); 
		fill: var(--theme-black); 
	}
	.text-aqua{ 
		color: var(--theme-aqua); 
		fill: var(--theme-aqua); 
	}

.bg-cream{ 
	background-color: var(--theme-lightcream); 
}
	.bg-cream:not(.boxed){
		color: var(--theme-navy); 
		fill: var(--theme-navy); 
	}
	.text-cream{ 
		color: var(--theme-cream); 
		fill: var(--theme-cream); 
	}


.bg-white{ 
	background-color: var(--theme-white); 
}
	.bg-white:not(.boxed){
		color: var(--theme-navy); 
		fill: var(--theme-navy); 
	}
	.text-white{ 
		color: var(--theme-white); 
		fill: var(--theme-white); 
	}

.section.bg-shape{
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: top right calc( 50% + var(--colw) * 4.2 );
}
	.section.bg-white.bg-shape{
		background-image: url('../images/bg-shape_lightcream.svg');
	}
	.section.bg-navy.bg-shape{
		background-image: url('../images/bg-shape_teal.svg');
	}
	.section.bg-teal.bg-shape{
		background-image: url('../images/bg-shape_navy.svg');
	}
	.section.bg-aqua.bg-shape{
		background-image: url('../images/bg-shape_white.svg');
	}


.bg-white .text-highlight, .bg-white .label,
.bg-cream .text-highlight, .bg-cream .label,
.bg-aqua .text-highlight, .bg-aqua .label{
	color: var(--theme-teal);
	fill: var(--theme-teal);
}
	.bg-white .border-highlight,
	.bg-cream .border-highlight,
	.bg-aqua .border-highlight{
		border-color: var(--theme-teal);
	}

.bg-teal .text-highlight, .bg-teal .label,
.bg-navy .text-highlight, .bg-navy .label,
.bg-black .text-highlight, .bg-black .label{
	color: var(--theme-aqua);
	fill: var(--theme-aqua);
}
	.bg-teal .border-highlight,
	.bg-navy .border-highlight,
	.bg-black .border-highlight{
		border-color: var(--theme-aqua);
	}


/*--------------------------------------------------------- THEME: BUTTONS */
.btn-solid{
	appearance: none;
	-webkit-appearance: none;
	display: inline-block;
    vertical-align: baseline;
    font-size: var(--size-button);
    font-family: var(--fontfam-button);
    font-weight: 400;
    border: 1px solid;
    /*line-height: 1.3;    
    padding: var(--contentpad) var(--contentpad2x);*/
    line-height: 24px;
    padding: 14px 32px;
    border-radius: var(--radius-button);
    box-sizing: border-box; 
    white-space: nowrap;
    text-decoration: none!important;
    text-transform: uppercase;
    transition: all 0.35s ease;
}
	.btn-solid{
		background-color: var(--theme-teal);
		border-color: var(--theme-teal);
		color: var(--theme-aqua);
		fill: var(--theme-aqua);
	}
	.bg-teal:not(.boxed) .btn-solid{
		background-color: var(--theme-navy);
		border-color: var(--theme-navy);
		color: var(--theme-aqua);
		fill: var(--theme-aqua);
	}

.btn-clear,
.btn-icon-call,
.btn-icon-menu{
	appearance: none;
	-webkit-appearance: none;
	display: inline-block;
    vertical-align: baseline;
    font-size: var(--size-button);
    font-family: var(--fontfam-button);
    font-weight: 400;
    border: 0;
    padding: 0;
    border-radius: 0;
    box-sizing: border-box;
    background-color: transparent;
    line-height: 1.3;    
    white-space: nowrap;
    text-decoration: none!important;
    transition: all 0.35s ease;
}
	.btn-icon-call{
		text-transform: uppercase;
	}


@media (hover: hover){

	a:hover,
	button:hover{
		transition: all 0.35s ease;
	}

	body:not(.is-device_android) .bg-white:not(.boxed) a:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-cream:not(.boxed) a:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-aqua:not(.boxed) a:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-white:not(.boxed) button:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-cream:not(.boxed) button:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-aqua:not(.boxed) button:not(.btn-solid):hover{
		color: var(--theme-teal);
		fill: var(--theme-teal);
	}

	body:not(.is-device_android) .bg-teal:not(.boxed) a:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-navy:not(.boxed) a:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-black:not(.boxed) a:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-teal:not(.boxed) button:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-navy:not(.boxed) button:not(.btn-solid):hover,
	body:not(.is-device_android) .bg-black:not(.boxed) button:not(.btn-solid):hover{
		color: var(--theme-aqua);
		fill: var(--theme-aqua);
	}

	body:not(.is-device_android) a.btn-solid:hover,
	body:not(.is-device_android) button.btn-solid:hover,
	body:not(.is-device_android) .bg-teal:not(.boxed) a.btn-solid:hover,
	body:not(.is-device_android) .bg-teal:not(.boxed) button.btn-solid:hover{
		background-color: var(--theme-aqua);
		border-color: var(--theme-aqua);
		color: var(--theme-navy);
		fill: var(--theme-navy);
	}
	body:not(.is-device_android) .bg-aqua:not(.boxed) a.btn-solid:hover,
	body:not(.is-device_android) .bg-aqua:not(.boxed) button.btn-solid:hover{
		background-color: var(--theme-navy);
		border-color: var(--theme-navy);
		color: var(--theme-aqua);
		fill: var(--theme-aqua);
	}

}

/*--------------------------------------------------------- GRID: FOR BODY LAYOUR */

/* 12 parts grid @ max-width 1920px */
.grid-container{
	display: grid;
	grid-template-columns: [screenleft] var(--gridedge) [edgeleft] var(--gridgutter) [c0] 1fr [c1] 1fr [c2] 1fr [c3] 1fr [c4] 1fr [c5] 1fr [c6] 1fr [c7] 1fr [c8] 1fr [c9] 1fr [c10] 1fr [c11] 1fr [c12] var(--gridgutter) [edgeright] var(--gridedge) [screenright];
	grid-template-rows: auto;
	grid-auto-rows: auto;
	grid-auto-flow: row; 
	align-items: stretch;
	justify-content: stretch; 
	align-content: stretch; 
    margin: 0 auto;
    padding: 0 0;
}
@media only screen and (min-width : 1921px) {
	:root{
		--gridedge: calc( (100vw - 1920px) / 2);
	}
}
@media only screen and (max-width : 1919px){
	:root{
		--gridedge: 0;
	}
}


.grid-container .grid-item{
	grid-column-start: c0; 
	grid-column-end: c12;
  	grid-row-start: auto; 
  	grid-row-end: auto;
  	position: relative;
}
	.grid-container .grid-item .content,
	.flex-container .flex-item .content{
		padding: var(--contentpad) var(--contentpad);
	}

	.content.text > *:first-child,
	.content.heading > *:first-child{ margin-top: 0; }
	.content.text > *:last-child,
	.content.heading > *:last-child{ margin-bottom: 0; }	


/*--------------------------------------------------------- FLEX: FOR SECTIONS LAYOUT */

.flex-container{
	width: 100%; max-width: 100%; height: 100%; min-height: inherit; position: relative; padding: 0; margin: 0; box-sizing: border-box;
	display: flex; flex-wrap: nowrap; flex-direction: row; 
	align-items: flex-start;  align-content: flex-start;  justify-content: flex-start;
}
	.flex-container.flex-nowrap{ flex-wrap: nowrap!important; }
	.flex-container.flex-wrap{ flex-wrap: wrap; }
	.flex-container.flex-row{ flex-direction: row; }	
	.flex-container.flex-row-reverse{ flex-direction: row-reverse; }	
	.flex-container.flex-center{ align-items: center; align-content: center; justify-content: flex-start; }
	.flex-container.flex-end{ align-items: flex-end; align-content: flex-end; justify-content: flex-start; }
	.flex-container.flex-stretch{ align-items: stretch; align-content: flex-start; justify-content: stretch; }
	.flex-container.flex-edges{ align-items: flex-start; align-content: space-between; justify-content: space-between; }
	.flex-container.flex-edges-center{ align-items: center; align-content: space-between; justify-content: space-between; }
	.flex-container.flex-edges-stretch{ align-items: stretch; align-content: space-between; justify-content: space-between; }

		/* note IE can't handle left/right padding on flex-item - ignores border-box */
		.flex-container .flex-item{ 
			display: block; flex-basis: auto; flex-grow: 0; flex-shrink: 0; position: relative; 
			box-sizing: border-box; box-shadow: none; text-decoration: none; border: 0px none; margin: 0 0; padding: 0 0; max-width: 100%; 
		}
		.flex-container .flex-item.flex-grow{ flex-grow: 1; }
			.flex-container .flex-item.flex-parts-auto{ flex-grow: 1; flex-shrink: 1; }
			.flex-container .flex-item.flex-parts-100{ flex-basis: 100%; width:100%; }
			.flex-container .flex-item.flex-parts-75{ flex-basis: 75%; width: 75%; }
			.flex-container .flex-item.flex-parts-50{ flex-basis: 50%; width: 50%; }
			.flex-container .flex-item.flex-parts-25{ flex-basis: 25%; width: 25%; }
			.flex-container .flex-item.flex-parts-66{ flex-basis: 66.66%; width: 66.66%; }
			.flex-container .flex-item.flex-parts-33{ flex-basis: 33.33%; width: 33.33%; }


/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/
/*---------------------------------------------- WEBSITE SECTION PAGE STYLES */
/*---------------------------------------------------------------------------*/

/*-------- HEADER / MENUS ------------------------------------------- */

#site-menu{
	position: fixed;
	z-index: 403;
	top: 0;
	left: 0;
	width: 100%;
	height: 100dvh;
}

#site-menu_container{
	position: fixed;
	z-index: 401;
	top: -105vh;
	left: 0;
	width: 100%;
	height: 100dvh;	
	overflow: auto;
	opacity: 0;
	pointer-events: none;
	transition: all 0.35s ease;
}
	body.menu-open #site-menu_container{
		top: 0;
		opacity: 1;
		pointer-events: auto;
		transition: all 0.35s ease;
	}

.section_site_menu .container_body{
	min-height: 100%;
	align-content: space-evenly;
	padding-top: var(--sectionpad);
	padding-bottom: var(--contentpad4x);
}
.section_site_menu .container_body .grid-item.item_menu{
	grid-column: c0/c12;
	text-align: center;
	padding: var(--sectionpad05x) 0;
}
	ul#menu-mainnav_mobile{
		list-style-type: none;
		margin: 0;
		padding: 0;
		font-size: 2.34rem;
		line-height: 1.1;
	}
	ul#menu-mainnav_mobile li{
		display: block;
		margin: 0;
		padding: 0;
	}
		ul#menu-mainnav_mobile li:not(:last-child){
			margin-bottom: 20px;
		}
		ul#menu-mainnav_mobile li a{
			display: inline-block;
			width: min-content; /*force newline each word*/
		}

.section_site_menu .container_body .grid-item.item_buttons{
	grid-column: c0/c12;
	text-align: center;
	padding: var(--sectionpad05x) 0;
}
	.section_site_menu .container_body .grid-item.item_buttons p.readmores{
		justify-content: center;
	}



#site-header{
	position: relative;
/*	position: absolute;*/
/*	position: fixed;*/
	z-index: 424;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	z-index: 404;
	transition: all 0.35s ease;
}
/*
	body:not(.scrolling) #site-header,
	body.scrolling.menu-open #site-header{
		background-color: transparent;
	}
	body.menu-open #site-header,
	body.scrolling.menu-open #site-header{
		background-color: transparent;
		color: var(--theme-white);
		fill: var(--theme-white);
	}
	body.scrolling:not(.scroll-up):not(.menu-open) #site-header{
		top: -100px;
		transition: all 0.35s ease;
	}
	*/

.section_site_header{}
.section_site_header ul.menu-mainnav{
	display: flex;
	justify-content: center;
	position: relative;
	list-style-type: none;
	margin: 0 0;
	padding: 0;
	column-gap: var(--contentpad4x);
	row-gap: var(--contentpad2x);
}
.section_site_header ul.menu-mainnav > li{
	display: block;
    margin: 0;
    padding: 0;
}
.section_site_header ul.menu-mainnav > li > a{}


.section_site_header .container_body{
	padding: var(--sectionpad05x) 0 var(--contentpad) 0;
	align-items: end;
}
.section_site_header .container_body .grid-item.item_logo{
	grid-column: c1/c4;
	padding: 0;
}
	body.menu-open .grid-item.item_logo{ opacity: 0; visibility: hidden; pointer-events: none; transition: all 0.35s ease; }

	.section_site_header .container_body .grid-item.item_logo img, 
	.section_site_header .container_body .grid-item.item_logo svg{
		display: block;
		max-width: 100%;
		height: auto;
	}


.section_site_header .container_body .grid-item.item_menu{
	grid-column: c4/c9;
	text-align: center;
}
.section_site_header .container_body .grid-item.item_buttons{
	grid-column: c9/c12;
	text-align: right;
}
	.section_site_header .grid-item.item_buttons p.readmores{
		justify-content: end;
	}
	a.btn-icon-call::before{
		content: '';
		display: inline-block;
	    vertical-align: top;
		mask-image: url('../images/icon-contact-call_filled.svg');
    	-webkit-mask-image: url('../images/icon-contact-call_filled.svg');
		background-color: currentColor;
	    width: 1.0em;
	    height: 1.3em;
	    margin: 0 10px 0 0;
	    padding: 0;
	    overflow: hidden;
	    position: relative;
	    line-height: 0;
	    text-indent: 36px;
	    mask-position: center;
	    mask-repeat: no-repeat;
	    mask-size: contain;
	    -webkit-mask-position: center;
	    -webkit-mask-repeat: no-repeat;
	    -webkit-mask-size: contain;
	}
.section_site_header .container_body .grid-item.item_burger{
	display: none;
	grid-column: c8/c12;
	text-align: right;
	justify-self: end;
}
	#burger-icon{
		display: block;
		position: relative;
		transform-origin: center;
	}
	#burger-icon #burger-menu-closed{ display:block; }
	#burger-icon #burger-menu-open{ display:none; }
		body.menu-open #burger-icon #burger-menu-closed{ display:none; }
		body.menu-open #burger-icon #burger-menu-open{ display:block; }

.section_site_footer{}
.section_site_footer .container_body{
	padding: var(--sectionpad) 0;
	font-size: var(--size-p);
	line-height: 1.4;
}
	.section_site_footer .container_body .grid-item.item_logo{
		grid-column: c1/c4;
		grid-row: 1/4;
		padding-bottom: var(--sectionpad05x);
	}
		.section_site_footer .container_body .grid-item.item_logo img, 
		.section_site_footer .container_body .grid-item.item_logo svg{
			display: block;
			max-width: 100%;
			height: auto;
		}

	.section_site_footer .container_body .grid-item.item_contact{
		grid-column: c6/c9;
		grid-row: 1/4;	
	}
	.section_site_footer .container_body .grid-item.item_follow{
		grid-column: c9/c12;
		grid-row: 1/3;
	}
	.section_site_footer .container_body .grid-item.item_copyr{
		grid-column: c9/c12;
		grid-row: 3/4;
		align-self: end;
		padding-top: var(--contentpad2x);
	}

ul.menu-social{}
ul.menu-social li{}
ul.menu-social li a{}
ul.menu-social li a.social-icon{
	background-color: currentColor;
    display: inline-block;
    vertical-align: top;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    position: relative;
    line-height: 0;
    text-indent: 36px;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
}


/*-------- SECTION BUILDER ------------------------------------------------- */
.section{
	position: relative;
	box-sizing: border-box;
}
	.section .grid-item{
		padding: var(--sectionpad) 0;
	}
	.section .grid-container + .grid-container .grid-item{
		padding-top: 0;
	}


.section_banner_page{}
	.section_banner_page .container_body{}
	.section_banner_page .container_body .item_heading{
		grid-column: c1/c7;
		align-self: center;
		padding: var(--sectionpad05x) 0 var(--sectionpad) 0;
	}
	.section_banner_page .container_body .item_image{
		padding: 0 0;
		grid-column: c7/screenright;
		overflow: hidden;
/*		margin-top: calc( var(--sectionpad) * -0.5 );*/
		margin-top: calc( -160px + var(--sectionpad05x) );
	}
		.section_banner_page .container_body .item_image img, 
		.section_banner_page .container_body .item_image svg{
			display: block;
		    height: 100%;
		    width: auto;
		    max-width: unset;
			position: relative;
			right: calc( var(--colw) * -0.5 );
/*    		bottom: calc( var(--sectionpad) * -1.0 );*/
    		bottom: -160px;
		}



.section_1col_contents{}
	.section_1col_contents .container_body .item_layout{
		grid-column: c3/c9;
	}
		.section_1col_contents .container_body .item_layout + .item_layout{
			padding-top: 0;
		}
		.section_1col_contents .container_body .item_layout:not(:last-child){
			padding-bottom: var(--sectionpad05x);
		}

	.section_1col_contents .container_body .item_layout.layout_textarea{
		text-align: center;
	}
		.section_1col_contents .container_body .item_layout.layout_textarea p.readmores{
			justify-content: center;
		}
	.section_1col_contents .container_body .item_layout.layout_media.image_cover{
/*		grid-column: edgeleft/edgeright;*/
		grid-column: screenleft/screenright;
		align-self: stretch;
	}

.section_2col_contents{}
	.section_2col_contents .container_body .item_layout:nth-child(2n+1){
		grid-column: c0/c6;
	}
		.section_2col_contents .grid-container .grid-item.layout_textarea{
			padding-left: var(--colw05x);
			padding-right: var(--colw05x);
		}
		.section_2col_contents .container_body .item_layout.layout_textarea:nth-child(2n+1){
			grid-column-start: c1;
		}
		.section_2col_contents .container_body .item_layout.layout_media.image_fit:nth-child(2n+1){}
		.section_2col_contents .container_body .item_layout.layout_media.image_cover:nth-child(2n+1){
/*			grid-column-start: edgeleft;*/
			grid-column-start: screenleft;
			align-self: stretch;
		}

	.section_2col_contents .container_body .item_layout:nth-child(2n+2){
		grid-column: c6/c12;
	}
		.section_2col_contents .container_body .item_layout.layout_textarea:nth-child(2n+2){}
			.section_2col_contents .container_body .item_layout.layout_textarea:nth-child(2n+2) p.readmores{
				justify-content: center;
			}

		.section_2col_contents .container_body .item_layout.layout_media.image_fit:nth-child(2n+2){}
		.section_2col_contents .container_body .item_layout.layout_media.image_cover:nth-child(2n+2){
/*			grid-column-end: edgeright;*/
			grid-column-end:screenright;
			align-self: stretch;
		}


.section_faq{}
	.section_faq .container_header .item_heading{
		grid-column: c1/c11;
		text-align: center;
		padding-bottom: var(--sectionpad05x);
	}
		.section_faq .container_header .item_heading p.readmores{
			justify-content: center;
		}

	.section_faq .container_body .item_faq{
		grid-column: c3/c9;
	}
		.section_faq .container_body .item_faq > .content{
			border-bottom-width: 1px;
			border-bottom-style: solid;
			border-color: inherit;
		}

	.section_faq .container_body .item_faq:not(:last-child){
		padding-bottom: 0!important;
	}

	.item_faq button.faq_head{
		display: block;
		appearance: none;
	    -webkit-appearance: none;
	    margin: 0;
	    padding: var(--contentpad) 0;
	    background-color: transparent;
	    border: 0;
	    color: inherit;
	    fill: inherit;
	    width: 100%;
	    height: auto;
	    text-align: left;
	}
	.item_faq .faq_head .flexcontainer_toggle{
		flex-wrap: nowrap;
	}
		.item_faq .faq_head .flexcontainer_toggle .flexitem_icon{
			flex-basis: 40px;
		}
			.item_faq .faq_head .flexcontainer_toggle .flexitem_icon img, 
			.item_faq .faq_head .flexcontainer_toggle .flexitem_icon svg{
				display: block;
				width: 20px;
				height: 1.2em;
				object-fit: contain;
				object-position: top left;
				position: relative;
				color: inherit;
				fill: inherit;
				transform-origin: center;
				transition: all 0.35s ease;
			}
			.item_faq.open .faq_head .flexcontainer_toggle .flexitem_icon img, 
			.item_faq.open .faq_head .flexcontainer_toggle .flexitem_icon svg{
				transform: rotateX(180deg);
			}

		.item_faq .faq_head .flexcontainer_toggle .flexitem_label{
			flex-basis: calc(100% - 40px);
		}
			.item_faq .faq_head .flexcontainer_toggle .flexitem_label p,
			.item_faq .faq_head .flexcontainer_toggle .flexitem_label h3{
				margin: 0;
			}

	.item_faq .faq_body{
		padding-left: 40px;
		box-sizing: border-box;
	}


.section_services{}
	.section_services .container_header .item_heading{
		grid-column: c1/c11;
		text-align: center;
		padding-bottom: var(--sectionpad05x);
	}
		.section_services .container_header .item_heading p.readmores{
			justify-content: center;
		}
	.section_services .container_body .item_services{
		grid-column: c1/c11;
	}
		.section_services .item_services h3{
			margin: 0;
		}
		.section_services .item_services p{
			margin-bottom: 0;
		}

	.section_services .item_services .flexcontainer_services{
		row-gap: var(--contentpad4x);
		margin-top: var(--contentpad2x);
	}
	.section_services .item_services .flexcontainer_stack{
		flex-wrap: nowrap;
/*		align-items: center;*/
	}
		.section_services .item_services .flexcontainer_stack .flexitem_icon{
			flex-basis: 140px;
		}
			.section_services .item_services .flexcontainer_stack .flexitem_icon img, 
			.section_services .item_services .flexcontainer_stack .flexitem_icon svg{
				display: block;
				width: 110px;
				height: 110px;
				object-fit: cover;
				object-position: top left;
			}
		.section_services .item_services .flexcontainer_stack .flexitem_text{
			flex-basis: calc( 100% - 140px );
			flex-shrink: 1;
			padding-right: var(--contentpad2x);
		}



.section_profile{
	overflow: hidden;
}
	.section_profile .container_body{
		max-height: 100vh;
		min-height: 420px;
	}
	.section_profile .container_body .item_image{
/*		grid-column: edgeleft/c6;*/
		grid-column: screenleft/c6;
		grid-row: 1/2;
		padding: 0 0;
		align-self: stretch;
		max-height: inherit;
		overflow: hidden;
	}
		.section_profile .container_body .item_image img{
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: top center;
		}

	.section_profile .container_body .item_heading{
		grid-column: c6/c12;
		grid-row: 1/2;
		padding: var(--sectionpad) var(--colw05x);
    	align-self: center;
    	max-height: inherit;
    	overflow: auto;
	}
	.section_profile .container_body .item_text_overlay{
		grid-column: c6/c12;
		grid-row: 1/2;
		padding: var(--sectionpad) var(--colw) var(--sectionpad) var(--colw05x);
		align-self: stretch;
		position: relative;
		max-height: 100%;
		overflow: auto;
		top: 105%;
		transition: all 0.35s ease;
	}
		.section_profile .container_body .item_text_overlay.open{
			top: 0%;
			transition: all 0.35s ease;
		}


.section_profile .section_lightbox{
	position: fixed;
	z-index: 404;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(16, 24, 32, 0.75);
    overflow: hidden;
}
	.section_lightbox .container_box{
		height: 100%;
    	width: 100%;
    	align-items: center;
    	position: relative;
    	overflow: hidden;
	}
		.section_lightbox .container_box .grid-item.item_bio{
			grid-column: c2/c10;
			padding: var(--sectionpad) var(--colw05x);
			overflow: auto;
		}


/*-------- CONTENT BUILDER ------------------------------------------------- */

p.readmores{
	margin: var(--contentpad4x) 0;
	display: flex;
    flex-wrap: wrap;
    row-gap: var(--contentpad2x);
    column-gap: var(--contentpad2x);
}


.section .grid-container .grid-item.layout_textarea{}
.item_layout.layout_textarea .content:not(:last-child){
	margin-bottom: var(--sectionpad05x);
}

.item_layout.layout_media{}
.item_layout.layout_media.image_fit{}
	.item_layout.layout_media.image_fit img,
	.item_layout.layout_media.image_fit svg,
	.item_layout.layout_media.image_fit iframe,
	.item_layout.layout_media.image_fit video{
		display: block;
		padding: 0 var(--colw05x);
		box-sizing: border-box;
	}
.item_layout.layout_media.image_cover{
	padding: 0!important;
}
	.item_layout.layout_media.image_cover > .content{ height: 100%; }
	.item_layout.layout_media.image_cover > .content iframe,
	.item_layout.layout_media.image_cover > .content video,
	.item_layout.layout_media.image_cover > .content img,
	.item_layout.layout_media.image_cover > .content avg{
		height: 100%;
	}

	.item_layout.layout_media .content.bg-hardlight iframe[src*="google.com/maps/embed"]{
/*		filter: grayscale(1);*/
	}

	.item_layout.layout_media.image_cover img,
	.item_layout.layout_media.image_cover svg{
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
	.item_layout.layout_media.image_cover iframe,
	.item_layout.layout_media.image_cover video{
		display: block;
		width: 100%;
	}
	.item_layout.layout_media.image_cover .content{
		padding: 0 0;
	}



.item_layout.layout_contact{}
	ul.contactlist,
	ul.contactshortlist{
		display: block;
		position: relative;
		list-style-type: none;
		margin: 1em 0;
		padding: 0;
		line-height: 1.3;
	}
	ul.contactlist li,
	ul.contactshortlist li{
		display: block;
		margin: 0;
		padding: 0;
		position: relative;
	}
	ul.contactlist li p,
	ul.contactshortlist li p{
		margin: 0;
	}
		ul.contactlist li p + p,
		ul.contactshortlist li p + p{
			margin-top: 1em;
		}

		ul.contactlist li:not(:first-child){
			padding-top: var(--contentpad4x);
		}
			ul.contactlist .flexcontainer_stack{
				flex-wrap: nowrap;
/*				align-items: center;*/
				align-items: start;
				z-index: 2;
			}
				ul.contactlist > li:not(:first-child)::before{
					content: '';
				    display: block;
				    position: absolute;
					left: 36px;
				    top: -2px;
				    width: 0;
				    border-right: 1px dashed currentColor;
				    height: calc( var(--contentpad4x) + 38px);
				    z-index: 0;
				}
				
				ul.contactlist .flexcontainer_stack h3{ margin: 8px 0 var(--contentpad) 0; }
				ul.contactlist .flexcontainer_stack p{ margin: 0; }
				ul.contactlist .flexcontainer_stack p + p{ 
					margin-top: var(--contentpad2x); 
				}

			ul.contactlist .flexcontainer_stack .flexitem_icon{
				flex-basis: 90px;
			}
				ul.contactlist .flexcontainer_stack .flexitem_icon img,
				ul.contactlist .flexcontainer_stack .flexitem_icon svg{
					display: block;
					width: 72px;
					height: 72px;
					object-fit: contain;
					object-position: center;
				}
			ul.contactlist .flexcontainer_stack .flexitem_text{
				flex-basis: calc( 100% - 90px );
			}

		ul.contactshortlist li:not(:last-child){
			margin-bottom: 1em;
		}
			ul.contactshortlist .flexcontainer_stack{
				flex-wrap: nowrap;
			}
			ul.contactshortlist .flexcontainer_stack .flexitem_icon{
				flex-basis: 40px;
			}
				ul.contactshortlist .flexcontainer_stack .flexitem_icon img,
				ul.contactshortlist .flexcontainer_stack .flexitem_icon svg{
					display: block;
					height: 1.3em;
					margin: 0.1em 0 0 0;
					width: auto;
				}

			ul.contactshortlist .flexcontainer_stack .flexitem_text{
				flex-basis: calc(100% - 40px);
				line-height: 1.4em;
			}


.item_layout.layout_boxlinks{}
	.grid-boxes{
		display: grid;
	    grid-template-columns: 1fr 1fr;
	    grid-column-gap: var(--contentpad2x);
	    grid-row-gap: var(--contentpad2x);
	}
	.grid-boxes .item-box{}
	.grid-boxes .item-box .item-box-border{
		display: block;
		position: relative;
		box-sizing: border-box;
		border-width: 1px;
	    border-style: solid;
	    border-radius: 10px;
	    padding: var(--contentpad2x);
	    height: 100%;
	}
		.grid-boxes .flexcontainer_feature{
			flex-wrap: wrap;
		}
			.grid-boxes .flexcontainer_feature .flexitem_icon{
				flex-basis: 100%;
			}
				.grid-boxes .flexcontainer_feature .flexitem_icon img,
				.grid-boxes .flexcontainer_feature .flexitem_icon svg{
					display: block;
					width: 50px;
					height: 50px;
					object-fit: contain;
					object-position: top left;
				}
			.grid-boxes .flexcontainer_feature .flexitem_text{
				flex-basis: 100%;
			}

.item_layout.layout_listlinks{}
	ul.linklist{
		display: block;
	    list-style-type: none;
	    margin: 0;
	    padding: 0;
	}
	ul.linklist li{
		display: block;
    	margin: 0;
    	padding: var(--contentpad) 0;
    	border-bottom-width: 1px;
    	border-bottom-style: solid;
    	border-color: inherit;
	}
		ul.linklist li:first-child{
			border-top-width: 1px;
    		border-top-style: solid;
		}
		ul.linklist li a{
			display: inline-block;
			padding: var(--contentpad) 0;
			margin: 0;
		}


@media ( hover: hover ){
	.grid-boxes .item-box a.item-box-border:hover{}
}


/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/
/*-------------------------------------------------------- RESPONSIVE STYLES */
/*---------------------------------------------------------------------------*/
/* Desktop/Laptop */
@media only screen and (max-width : 1679px) {
	.section_site_header ul.menu-mainnav{
		column-gap: var(--contentpad2x);
	}
}
@media only screen and (max-width : 1366px) {
	:root{
		--size-h1: 3.44rem;
		--gridgutter: 50px;
		--sectionpad05x: 50px;
    	--sectionpad: 100px;
	}
	.section_site_header .container_body .grid-item.item_logo{
		grid-column: c0/c4;
	}
	.section_banner_page .container_body .item_heading{
		grid-column: c0/c6;
	}
	.section_banner_page .container_body .item_image{
		grid-column: c6/screenright;
	}
	.section_services .container_body .item_services{
		grid-column: c0/c12;
	}
	.section_2col_contents .container_body .item_layout.layout_textarea:nth-child(2n+1){
		grid-column-start: c0;
	}
	.section_faq .container_body .item_faq{
		grid-column: c2/c10;
	}
	.section_1col_contents .container_body .item_layout{
		grid-column: c2/c10;
	}
	.section_site_footer .container_body .grid-item.item_logo{
		grid-column: c0/c4;
	}
}

/* Tablet/iPad - fully switch to responsive @1180 */
@media only screen and (max-width : 1180px) {
	/* globals */
	:root{
		--gridgutter: 30px;
		--size-h1: 2.82rem;
    	--size-h2: 1.82rem;
    	--sectionpad05x: 40px;
    	--sectionpad: 80px;
	}
	html, body { font-size: 16px; }
	small, .text-small{ font-size: 12px; }
	/* grid & flex */
	.flex-container:not(.flex-nowrap){ flex-wrap: wrap; }
	.flex-container:not(.flex-nowrap) .flex-item.flex-parts-75,
	.flex-container:not(.flex-nowrap) .flex-item.flex-parts-50,
	.flex-container:not(.flex-nowrap) .flex-item.flex-parts-25,
	.flex-container:not(.flex-nowrap) .flex-item.flex-parts-66,
	.flex-container:not(.flex-nowrap) .flex-item.flex-parts-33{ flex-basis: 100%; width: 100%; }
	/* section layouts */
	.section_site_header .container_body .grid-item.item_logo{
		grid-column: c0/c8;
	}
	.section_site_header .container_body .grid-item.item_menu{
		display: none;
	}
	.section_site_header .container_body .grid-item.item_buttons{
		display: none;
	}
	.section_site_header .container_body .grid-item.item_burger{
		grid-column: c8/c12;
		display: block;
	}

	.section_services .item_services .flexcontainer_services .flexitem_service{
		flex-basis: 50%; width: 50%;
	}
	.grid-boxes{
		grid-template-columns: 1fr;
	}
	.section_faq .container_body .item_faq{
		grid-column: c1/c11;
	}
	.section_1col_contents .container_body .item_layout{
		grid-column: c1/c11;
	}
	.item_layout.layout_media.image_fit img, .item_layout.layout_media.image_fit svg, .item_layout.layout_media.image_fit iframe, .item_layout.layout_media.image_fit video{
		padding: 0;
	}

	.section_site_footer .container_body .grid-item.item_logo{
		grid-column: c0/c4;
		grid-row: 1/2;
	}
	.section_site_footer .container_body .grid-item.item_contact{
		grid-column: c6/c12;
		grid-row: 1/3;
	}
	.section_site_footer .container_body .grid-item.item_follow{
		grid-column: c6/c12;
		grid-row: 3/4;
		padding-top: var(--contentpad2x);
	}
	.section_site_footer .container_body .grid-item.item_copyr{
		grid-column: c0/c6;
		grid-row: 2/4;
		padding-top: var(--contentpad2x);
	}
}

/* Mobile */
@media only screen and (max-width : 780px) {
	/* globals */
	html,body{
		font-size: 17px;
	}
	:root{
		--size-h1: 1.88rem;/*32*/
		--size-h2: 1.64rem;/*28*/
		/*
		--size-h3: 1.47rem;
		*//*25*/
		--size-h3: 1.29rem;
		--size-h4: 1.29rem;/*22*/
		--size-h5: 1.0rem;/*18*/
		--size-h6: 1.0rem;/*18*/
		--size-p-xlrg: 1.47rem;
		--size-p-lrg: 1.29rem;
		--size-p: 1.0rem;
		--size-p-sml: 0.88rem;
		/*--size-button: 1.0rem;*/
		--size-button: 15px;
	}
		/*.item_faq .faq_head h3,
		.item_faq .faq_head .h3{
			font-size: var(--size-h4);
		}*/


	/* section layouts */
	.btn-solid{
		line-height: 24px;
  		padding: 10px 20px;
	}

	.section_site_header .container_body{
		padding: var(--contentpad2x) 0 var(--contentpad) 0;
	}

	.section_banner_page .container_body .item_heading{
		grid-column: c0/c12;
	}
	.section_banner_page .container_body .item_image{
		grid-column: c0/screenright;
		margin-top: -160px;
	}
		.section_banner_page .container_body .item_image img, 
		.section_banner_page .container_body .item_image svg{
			width: 150%;
		}

	/*.section:not(.section_banner_page) + .section_profile .container_body .item_image{}
	.section:not(.section_banner_page) + .section_profile .container_body .item_heading{}*/
	.section_profile .container_body{
		max-height: unset;
		min-height: unset;
	}
	.section_profile .container_body .item_image{
		grid-column: screenleft/screenright;
    	grid-row: 2/3;
/*    	z-index: 13;*/
	}
		.section_profile .container_body .item_image img{
			aspect-ratio: 1/1;
		}
	.section_profile .container_body .item_heading{
		grid-column: c0/c12;
   		grid-row: 1/2;
   		padding: var(--sectionpad) 0;
	}
	.section_profile .container_body .item_text_overlay{
		position: absolute;
		height: 100%;
		width: 100%;
		grid-column: screenleft/screenright;
    	grid-row: 1/3;
    	padding: var(--sectionpad) var(--gridgutter);
    	z-index: 10;
	}
	.section_services .container_header .item_heading{
		grid-column: c0/c12;
	}
	.section_services .item_services .flexcontainer_services .flexitem_service{
		flex-basis: 100%; width: 100%;
	}
		.section_services .item_services .flexcontainer_stack{
			flex-wrap: wrap;
			text-align: center;
			justify-content: center;
		}
			.section_services .item_services .flexcontainer_stack .flexitem_icon{
				flex-basis: 100%;
				margin-bottom: var(--contentpad2x);
			}
				.section_services .item_services .flexcontainer_stack .flexitem_icon img, 
				.section_services .item_services .flexcontainer_stack .flexitem_icon svg{
					margin: 0 auto;
				}
			.section_services .item_services .flexcontainer_stack .flexitem_text{
				flex-basis: 100%;
				padding-right: 0;
				max-width: 360px;
			}
	.section_2col_contents .container_body .item_layout:nth-child(2n+1),
	.section_2col_contents .container_body .item_layout:nth-child(2n+2){
		grid-column: c0/c12;
	}
		.section_2col_contents .grid-container .grid-item.layout_textarea{
			padding-left: 0;
			padding-right: 0;
		}
		.section_2col_contents .container_body .item_layout:first-child:not(:last-child){
			padding-bottom: var(--sectionpad05x);
		}
		.section_2col_contents .container_body .item_layout + .item_layout{
			padding-top: 0;
		}
		.section_2col_contents .container_body .item_layout.layout_media.image_cover:nth-child(2n+1),
		.section_2col_contents .container_body .item_layout.layout_media.image_cover:nth-child(2n+2){
			grid-column-start: screenleft;
			grid-column-end: screenright;
		}

	.section_faq .container_header .item_heading{
		grid-column: c0/c12;
	}
	.section_faq .container_body .item_faq{
		grid-column: c0/c12;
	}
		.item_faq .faq_body{
			padding-left: 0;
		}
	.section_1col_contents .container_body .item_layout{
		grid-column: c0/c12;
	}

	.section_site_footer .container_body{
		padding-bottom: var(--sectionpad05x);
	}
	.section_site_footer .container_body .grid-item.item_logo{
		grid-column: c0 / c9;
		grid-row: auto;
	}
	.section_site_footer .container_body .grid-item.item_contact,
	.section_site_footer .container_body .grid-item.item_follow,
	.section_site_footer .container_body .grid-item.item_copyr{
		grid-column: c0/c12;
		grid-row: auto;
	}
		.section_site_footer .container_body .grid-item.item_copyr{
			padding-top: var(--sectionpad05x);
		}

}
@media only screen and (max-width : 740px) {
	.label + h1{
		margin-top: var(--contentpad2x);
	}
	.label.desktop-only{
		display: none;
	}
	.label.hide-mobile{
		height: 0;
    	overflow: hidden;
    	opacity: 0;
    	visibility: hidden;
	}
	.label.hide-mobile + h1,
	.label.hide-mobile + h2,
	.label.desktop-only + h1,
	.label.desktop-only + h2{
		margin-top: 0;
	}
}


@media only screen and (max-width : 430px) {
	:root{
		--gridgutter: 10px;
	}
}


