/*

Theme Name: Tina Jensen 2025
Theme URI: http://
Author: Peter Anderhagen
Author URI: www.abrovink.se
Description: Custom made for client
Version: 1.0.0
Text Domain: tinajensen

*/




/* 

	Roboto: 
		Thin 100: h1
		Light 300: p
		Light italic 300i: i/em, blockquote
		Medium 500 (used as bold/strong)
		Medium italic 500i (bold italic for bold text in blockquote)
		
		Roboto:100,300,300i,500,500i

*/

@font-face {
  font-family: Roboto;
  src: url('fonts/roboto.woff2') format('woff2')
}



:root{
	
	--section-padding-vert: 32px;
	--section-padding-horiz: 0;
	
	--content-padding-vert: 24px;
	--content-padding-horiz: 24px;
	
	--content-wrap-max-width: 820px;
	
	--color-white: #fff;
	
	--color-darkgreen: #305c59;
	--color-darkgreen-punch: #234442;
	--color-lightgreen: #edf0f0;	/* org ebeeef */
	--color-mediumgreen: #5f817f;
	
	--color-darkcoral: #d86c5b;
	--color-darkcoral-punch: #ce4732;
	--color-lightcoral: #fbf0ee;
	--color-mediumcoral: #e18d80; 	/* blockquote background image */

	
	--border-color: #234442;
	--border-radius: 8px;
	
	--header-height: 88px;

}



html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

html {
	box-sizing: border-box;
	font-size: 62.5%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	height: 100%;
}
*, *:before, *:after { box-sizing: inherit; }

body{
	height: 100%;
	background: #fff;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.5;
	font-weight: 300;
	color: var(--color-darkgreen-punch);
	font-display: swap
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
	display: block;
}
table {
	border-collapse: separate;
	border-spacing: 0;
}
caption,
th,
td {
	font-weight: normal;
	text-align: left;
}
fieldset {
	min-width: inherit;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}
blockquote,
q {
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	quotes: none;
}

/*------------------------------------------------------------------------*/

h1, h2, h3, h4, h5, h6 {
	clear: both;
	line-height: 1.24;
	margin: 0 0 .47em 0;
	padding: 0;
}
h1 {
	margin: 0 0 .37em 0;
	font-size: 2.8em;
	font-weight: 100;
}
h2 {
	margin: 0 0 1em 0;
	font-size: 1.8em;
	font-weight: 300;
}
h3 {
	margin: 0 0 .47em 0;
	font-size: 1.15em;
	font-weight: 600;
}
h4 {font-size: 1em;}
h5 {font-size: .8em;}
h6 {font-size: .6em;}
p {	margin-bottom: 1.37em; }


a {
	color: inherit;
	text-decoration: underline;
	transition: all .25s ease;
}
a:hover,
button:hover{
	opacity: .66;
}
button{
	transition: all .25s ease;
}

a:focus { outline: 2px solid rgba(51, 51, 51, 0.3); }
a:hover, a:active { outline: 0; }
a img {	border: 0; }


strong, b{ font-weight: 500; }
dfn, cite, em, i { font-style: italic; }


blockquote {
	position: relative;
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	quotes: none;
	min-height: 150px;
	margin: 24px 0 32px 0;
	padding: 12px 8px 8px 32px;
	font-size: 1.8em;
	font-weight: 100;
	line-height: 1.33;
	color: inherit;
	font-style: normal;	
	background: no-repeat top left transparent;
	background-size: 100px auto;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 67.78 59.47'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7B fill:%23efc4bd; opacity:1; stroke-width:0px; %7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M2.25,0h27.44v19.73c0,7.94-.68,14.19-2.05,18.75-1.37,4.56-3.96,8.68-7.76,12.35-3.81,3.68-8.64,6.56-14.5,8.64L0,48.05c5.53-1.82,9.47-4.36,11.82-7.62,2.34-3.25,3.58-7.58,3.71-12.99H2.25V0ZM40.34,0h27.44v19.73c0,7.94-.7,14.19-2.1,18.75-1.4,4.56-4,8.68-7.81,12.35-3.81,3.68-8.61,6.56-14.4,8.64l-5.37-11.43c5.47-1.82,9.39-4.36,11.77-7.62,2.38-3.25,3.6-7.58,3.66-12.99h-13.18V0Z'/%3E%3C/svg%3E");
}
.bg-darkgreen blockquote{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 67.78 59.47'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7B fill:%23234442; opacity:1; stroke-width:0px; %7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M2.25,0h27.44v19.73c0,7.94-.68,14.19-2.05,18.75-1.37,4.56-3.96,8.68-7.76,12.35-3.81,3.68-8.64,6.56-14.5,8.64L0,48.05c5.53-1.82,9.47-4.36,11.82-7.62,2.34-3.25,3.58-7.58,3.71-12.99H2.25V0ZM40.34,0h27.44v19.73c0,7.94-.7,14.19-2.1,18.75-1.4,4.56-4,8.68-7.81,12.35-3.81,3.68-8.61,6.56-14.4,8.64l-5.37-11.43c5.47-1.82,9.39-4.36,11.77-7.62,2.38-3.25,3.6-7.58,3.66-12.99h-13.18V0Z'/%3E%3C/svg%3E");
}




blockquote p{ margin-bottom: 1em; }
blockquote strong, blockquote b{ font-weight: 500; }

p + blockquote,
blockquote + blockquote,
blockquote + p{
	margin-top: 1.5em;
}
blockquote cite,
p.quoted{
	display: block;
	font-style: normal;
	font-weight: 400;
	color: #7d9495;
}

address {
	font-style: normal;
	margin: 0 0 1.5em;
}
pre {
	background: #eee;
	font-family: Courier, monospace;
	font-size: .8em;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
code, kbd, tt, var {
	font-family: Courier, monospace;
	font-size: .8em;
}
abbr, acronym {
	border-bottom: 1px dotted #3c6487;
	cursor: help;
}
mark, ins {
	background: #eee;
	text-decoration: none;
}
small {	font-size: smaller; }
big { font-size: bigger; }



hr {
	display: block;
	width: 100%;
	float: none;
	clear: both;
	background-color: #d6c2b0;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

p > embed,
p > iframe,
p > object{
	margin-bottom: 0;
}

ul,
ol {
	margin: 0 0 1.75em 1.25em;
	padding: 0;
}
ul {
	list-style: square;
}
ol {
	list-style: decimal;
	margin-left: 1.5em;
}
li > ul,
li > ol {
	margin-bottom: 0;
}

dt { font-weight: 600; }
dd { margin: 0 1.5em 1.5em; }
sup{
	font-size: 65%;
	line-height: 1;
	font-weight: 100;
	white-space: break-after;
}
sub{
	font-size: 65%;
	line-height: 1;
	font-weight: 100;
	white-space: break-after;
}

table {
	border-collapse: collapse;
	margin: 0 0 1.5em;
	width: 100%;
}
thead th {
	border-bottom: 2px solid #bbb;
	padding-bottom: 0.5em;
}
th {
	padding: 0.4em;
	text-align: left;
}
tr {
	border-bottom: 1px solid #eee;
}
td {
	padding: 0.4em;
}
th:first-child,
td:first-child {
	padding-left: 0;
}
th:last-child,
td:last-child {
	padding-right: 0;
}

.alignleft {
	float: left;
	margin-right: 1.5em;
}
.alignright {
	float: right;
	margin-left: 1.5em;
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}




img, svg{
	display: block;
	max-width: 100%; /* Adhere to container width. */
	height: auto !important; /* Make sure images are scaled correctly. */
}

video {
	display: inline-block;
	height: auto !important; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
	-ms-interpolation-mode: bicubic;
	border: 0;
	vertical-align: middle;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object,
canvas {
	margin-bottom: 1.5em;
	max-width: 100%;
}

/* Handle dynamic height of iframes etc */
.embed-container,
figure { 
	position: relative; 
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	width: 100%;
	max-width: 100%;
	height: 100%;
	margin: 0 0 1.5em 0;
} 
figure iframe,
.embed-container iframe,
.embed-container object,
.embed-container embed,
.embed-container canvas { 
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.embed-container + p{
	margin-bottom: 0;
}


.wp-caption,
.gallery-caption {
	color: #666;
	font-size: 13px;
	font-size: 0.8125rem;
	font-style: italic;
	margin-bottom: 1.5em;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}




/* Extra RTE stylings */

h1 em{
	font-style: normal;
	font-weight: 100;
	color: var(--color-darkcoral-punch);
}

p.introtext{
	font-size: 1.25em;
	line-height: 1.5;
	font-weight: 300;
}
p.caption{
	position: relative;
	margin-top: -.25em;
	font-size: .825em;
}
p.footnote{
	font-weight: 400;
	font-size: .5em;
}

img.rounded{
	border-radius: var(--border-radius);
}

img.round{
	border-radius: 500px;
}



li.checkmark{
	margin-left: 2px;
	/* default = darkgreen = #305c59 */
	list-style-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12' viewBox='0 0 19.6 17.6'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23305c59; stroke-linecap: round; stroke-linejoin: round; stroke-width: 4px; %7D %3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='1 7.3 7.9 16.6 18.6 1'/%3E%3C/svg%3E");
}
/* color adjustments for inline elements on different backgrounds */
.bg-darkgreen li.checkmark,
.bg-darkcoral li.checkmark{
	list-style-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12' viewBox='0 0 19.6 17.6'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23ffffff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 4px; %7D %3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='1 7.3 7.9 16.6 18.6 1'/%3E%3C/svg%3E");
}



/* ************************************************************************************** */
/* a.button, a.button-secondary */
/* ************************************************************************************** */
a.button,
a.button-secondary{
	display: inline-block;
	margin: 1em .25em .5em 0;
	padding: 1.25em 3em 1.2em 1.5em;
	font-family: inherit, sans-serif;
	font-size: .7em;
	line-height: 1;
	font-weight: 400;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: +.175em;
	text-align: left;
	text-decoration: none;
	white-space: nowrap;
	border: 0;
	border-radius: var(--border-radius);
	cursor: pointer;
	transition: all .25s;
	background: no-repeat right 1.55em center;
	background-size: auto .78em;
	background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23ffffff' d='M5.5 0l-2 2 6 6-6 6 2 2 8-8-8-8z'%3E%3C/path%3E%3C/svg%3E");
}
a.button{ background-color: var(--color-darkcoral); }
a.button:hover{
	background-position: right 1.15em center;
	background-color: var(--color-darkcoral-punch);
}
a.button-secondary{ background-color: var(--color-darkgreen); }
a.button-secondary:hover{ 
background-position: right 1.15em center;
	background-color: var(--color-darkgreen-punch); 
}



/* ************************************************************************************** */
/* .read-more [ a.read-more, span.read-more ] */
/* ************************************************************************************** */
a.read-more,
span.read-more{
	display: inline-flex;
	align-items: center;
	
	margin: 1em .25em .5em 0;
	font-family: inherit, sans-serif;
	font-size: .7em;
	line-height: 1;
	font-weight: 500;
	color: inherit;
	text-transform: uppercase;
	letter-spacing: +.125em;
	text-align: left;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: all .25s;
}
a.read-more::after,
span.read-more::after{
	content: "";
	width: 16px;
	height: 16px;
	margin-left: 0px; 
	background: no-repeat center center transparent;
	background-size: auto .78em;
	background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23305c59' d='M5.5 0l-2 2 6 6-6 6 2 2 8-8-8-8z'%3E%3C/path%3E%3C/svg%3E");
	transition: all .25s ease;
}
a.read-more:hover::after,
span.read-more:hover::after{margin-left: 4px;}

/* color exceptions */
.item.bg-white a.read-more::after,
.item.bg-white span.read-more::after{ background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23305c59' d='M5.5 0l-2 2 6 6-6 6 2 2 8-8-8-8z'%3E%3C/path%3E%3C/svg%3E"); }

.bg-lightcoral a.read-more::after,
.bg-lightcoral span.read-more::after{ background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23ce4732' d='M5.5 0l-2 2 6 6-6 6 2 2 8-8-8-8z'%3E%3C/path%3E%3C/svg%3E"); }
.bg-darkcoral a.read-more::after,
.bg-darkcoral span.read-more::after{ background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23ffffff' d='M5.5 0l-2 2 6 6-6 6 2 2 8-8-8-8z'%3E%3C/path%3E%3C/svg%3E"); }
.bg-darkgreen a.read-more::after,
.bg-darkgreen span.read-more::after{ background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23ffffff' d='M5.5 0l-2 2 6 6-6 6 2 2 8-8-8-8z'%3E%3C/path%3E%3C/svg%3E"); }




/* ************************************************************************************** */
/* button.toggle-button */
/* ************************************************************************************** */
button.toggle-button{
	display: inline-flex;
	flex-flow: row nowrap;
	align-items: center;
	margin: 0 0 1em 0;
	padding: 0;
	font-family: inherit;
	font-size: 1em;
	font-weight: 300;
	color: inherit;
	text-decoration: none;
	border: 0;
	background: transparent;
	cursor: pointer;
}
button.toggle-button::after{
	content: "";
	display: inline-block;
	width: 1.25em;
	height: 1.25em;
	margin-left: .5em;
	border-radius: 50px;
	background: no-repeat center center var(--color-darkgreen);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23ffffff; stroke-width: 1; stroke-miterlimit: 10; %7D %3C/style%3E%3C/defs%3E%3Cg%3E%3Cline class='cls-1' x1='18' y1='12' x2='6' y2='12'/%3E%3Cline class='cls-1' x1='12' y1='18' x2='12' y2='6'/%3E%3C/g%3E%3C/svg%3E");
	background-size: 24px 24px;
	transition: transform .2s;
}
button.toggle-button.active::after{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23ffffff; stroke-width: 1; stroke-miterlimit: 10; %7D %3C/style%3E%3C/defs%3E%3Cline class='cls-1' x1='18' y1='12' x2='6' y2='12'/%3E%3C/svg%3E");
	transform: rotate(180deg);
}

/* used by expandable panels through shortcode - not the best solution... */
.initially-hidden{
	display: none;
}

/* color exceptions */
.bg-lightcoral button.toggle-button::after{ background-color: var(--color-darkcoral); }
.bg-darkcoral button.toggle-button::after{ background-color: var(--color-darkcoral-punch); }
.bg-darkgreen button.toggle-button::after,
.bg-white button.toggle-button::after{ background-color: var(--color-darkgreen-punch); }


/* ************************************************************************************** */






/* Utility classes */
.skip-to-main-content-link {
	position: absolute;
	left: -9999px;
	z-index: 99999;
	padding: 1em;
	background-color: black;
	color: white;
	opacity: 0;
}
.skip-to-main-content-link:focus {
	left: 0;
	opacity: 1;
}

*:focus-visible{
	outline: solid 2px #666 !important;
}
.visually-hidden { 
	position: absolute !important;
	height: 1px; 
	width: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

/*
.clearfix::after,
.container::after,
.container ul::after,
.items-container::after{
	content: "";
	display: table;
	clear: both;
}
*/



p.va_bottom{
	margin-top: auto;
	margin-bottom: 0;
}
p.va_bottom .button-primary,
p.va_bottom .button-secondary{
	margin-bottom: 0;
}




/* sticky footer */
html, body {
	height: 100%;
}
body {
	display: flex;
	flex-direction: column;
}
#main {
	flex: 1 0 auto;
	flex-grow: 1;
}
#footer {
	flex-shrink: 0;
}
/* /sticky footer */




.pad{
	padding: 0 var(--section-padding-horiz);
}
.container{
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}




#header{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99;
	display: block;
	width: 100%;
	height: var(--header-height);
	margin: 0;
	padding: 0;
	overflow: hidden;
	background: var(--color-darkgreen);
	scrollbar-width: none;
	transition: all 0;
}
.scrolling #header{
	height: 64px;
	transition: height .4s ease, background .5s ease;
}
#header .container{
	width: 100%;
	padding: 12px var(--content-padding-horiz) 8px var(--content-padding-horiz);
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: center;
	transition: all .5s ease;
}
.scrolling #header .container{
	padding: 4px var(--content-padding-horiz) 0px var(--content-padding-horiz);
	transition: all .5s ease;
}
.nav-expanded #header,
.scrolling.nav-expanded #header{
	height: 100vh;
	overflow-y: auto;
}
#logo{
	flex-grow: 1;
	transition: all .5s ease;
}
#logo img, #logo svg{
	max-width: 220px;
	transition: all .5s ease;
}
.scrolling #logo img, .scrolling #logo svg{
	max-width: 140px;
}
button.toggle-nav{
	position: relative;
	margin-top: 22px;
	flex-grow: 0;
	transition: all .5s ease;
}
.scrolling button.toggle-nav{
	margin-top: 12px;
}

#nav{
	display: none;
	position: relative;
	z-index: 100;
	width: 100%;
	transition: height .2s ease-out;
	pointer-events: none;
}
.nav-expanded #nav{
	display: block;
	pointer-events: auto;
}
#nav ul{
	margin: 44px 0;
	padding: 0;
	list-style: none;
}
#nav li{
	position: relative;
	display: block;
	width: 100%;
	margin: 2px 0;
	padding: 0;
	list-style: none;
	text-align: right;
}
#nav li:first-child{
	margin-top: 80px;
}
#nav li.current-menu-item a{
	font-weight: 500;
}
#nav a{
	position: relative;
	display: inline-block;
	padding: 8px 0;
	font-size: 29px;
	color: #d7dedf;
	color: #f5ede9;
	font-weight: 100;
	text-decoration: none;
	text-transform: uppercase;
}
#nav a:hover{
	color: #fff;
}



#main{
	/* set to same as header height - if header = fixed */
	margin-top: var(--header-height);
}






/* ************************************************************************************** */
/* page sections */
/* ************************************************************************************** */
.page-section{
	position: relative;
	z-index: 1;
	margin: 0;
	padding: var(--section-padding-vert) 0;
	background: url() no-repeat center center transparent;
	background-color: transparent; color: inherit;
}
.page-section:last-child{
	padding-bottom: calc(var(--section-padding-vert) * 2 );
}


/* backgrounds for sections, cells and whatnots */
.bg-transparent{ background-color: transparent; color: inherit; }
.bg-inherit{ background-color: inherit; }
.bg-image{ background: url() no-repeat center center transparent; background-size: cover; }

.bg-white{ background: #fff; color: var(--color-darkgreen); }
.bg-lightgreen{ background: var(--color-lightgreen); color: var(--color-darkgreen-punch); }
.bg-lightcoral{ background: var(--color-lightcoral); color: var(--color-darkcoral-punch); }
.bg-darkgreen{ background: var(--color-darkgreen); color: #fff; }
.bg-darkcoral{ background: var(--color-darkcoral); color: #fff; }




/* Use technique on larger screens only 2025-11-10 */
/*
.half-background.bg-lightgreen{ background: linear-gradient(180deg,var(--color-lightgreen) 0%, var(--color-lightgreen) 50%, rgba(255,255,255, 0) 50%);}
.half-background.bg-lightcoral{ background: linear-gradient(180deg,var(--color-lightcoral) 0%, var(--color-lightcoral) 50%, rgba(255,255,255, 0) 50%); }
.half-background.bg-darkgreen{ background: linear-gradient(180deg,var(--color-darkgreen) 0%, var(--color-darkgreen) 50%, rgba(255,255,255, 0) 50%); }
.half-background.bg-darkcoral{ background: linear-gradient(180deg,var(--color-darkcoral) 0%, var(--color-darkcoral) 50%, rgba(255,255,255, 0) 50%); }
*/

.page-section.no-padding-top{ padding-top: 0; }
.page-section.no-padding-bottom{ padding-bottom: 0; }
.page-section.extra-padding-top{ padding-top: calc( var(--section-padding-vert) * 3 ); }
.page-section.extra-padding-bottom{ padding-bottom: calc( var(--section-padding-vert) * 3 ); }






/* generic alignment and padding classes for content-wrap divs */
.va_top .content-wrap{ 
	align-self: flex-start;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}
.va_middle .content-wrap{ align-self: center; }
.va_bottom .content-wrap{ align-self: flex-end; margin-top: auto; }


/* padding for content-wrap containers */
.content-wrap{
	padding: var(--content-padding-vert) var(--content-padding-horiz);
}
.content-wrap.pad-nopad{ padding: 0; }
.content-wrap.pad-extra-vertical{ padding-top: calc(var(--content-padding-vert)*2); padding-bottom: calc(var(--content-padding-vert)*2); }
.content-wrap.pad-extra-horizontal{ padding-left: calc(var(--content-padding-horiz)*2); padding-right: calc(var(--content-padding-horiz)*2); }
.content-wrap.pad-extra-both{ padding: var(--content-padding-vert); }
.content-wrap.pad-only-vertical{ padding-left: 0; padding-right: 0; }
.content-wrap.pad-only-horizontal{ padding-top: 0; padding-bottom: 0; }


.col{
	border-radius: var(--border-radius);
	overflow: hidden;
}

/*
.inner-bg .col.cell-1{
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}
.inner-bg .col.cell-2{
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
*/



/* ************************************************************************************** */
/* !!! We need to construct a consequent way to override default widths, padding and alignment on section intro, column content and images etc */
/* ************************************************************************************** */

.section-intro,
.section-outro{
	display: block;
	width: 100%;
	max-width: var(--content-wrap-max-width);
	margin: 0 auto 0 0;
	padding: 0 var(--content-padding-horiz);
}
.section-intro{ padding-bottom: var(--content-padding-vert); }
.section-outro{ padding-top: var(--content-padding-vert); }
.centered .section-intro,
.centered .section-outro{ margin: 0 auto; }


/* if background color - add some extra padding top */
.page-section:not(.bg-transparent) .section-intro{
	padding-top: var(--content-padding-vert);
}



/* ************************************************************************************** */
/* .page-section.hero  */
/* ************************************************************************************** */
.page-section.hero{
	padding: 24px 0;
	z-index: 10;
}
.page-section.hero.fullwidth{
	margin: 0;
	padding: 0;
}
.hero .item{}
.hero .item .wrap{}
.hero .content-wrap{
	position: relative;
	z-index: 110;

	width: 100vw;
	max-width: unset;
	margin: 0 auto;
	padding: var(--content-padding-vert) var(--content-padding-horiz) 0 var(--content-padding-horiz);
	padding-bottom: 24px;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-end;
}
.hero.in-container{
	padding-bottom: 0;
}
.hero.in-container .content-wrap{
	width: 100%;
	min-height: 200px;
	max-height: unset;
}
.hero.in-container .image-wrap{
	overflow: hidden;
}
.hero.in-container .items-container{
	grid-gap: 0;
}
.hero .content{
	max-width: var(--content-wrap-max-width);
	margin: 0 auto;
}
/* item background images - need to check heights! Not 100% automatic... */
.hero .item.bg-image .image-wrap{
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 100;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.hero.fullwidth .item.bg-image .image-wrap img,
.hero.fullwidth .item.bg-image .image-wrap video{
	min-width: 100vw;
	min-height: 100%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.hero.in-container .item .image-wrap{
	/*max-width: 480px;*/
	margin: 0 auto;
	padding: var(--content-padding-vert) var(--content-padding-horiz);
}
/* round stand-alone image */
.hero.in-container .item.round-image .image-wrap img,
.hero.in-container .item.round-image .image-wrap svg,
.hero.in-container .item.round-image .image-wrap video{
	border-radius: 100%;
}
.hero .item.overlay .image-wrap::after{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 10;
	content: "";
	background: rgb(11,59,91, .25);
	background: linear-gradient(195deg, rgb(11,59,91, 0), rgb(11,59,91, .5) 80%);
	mix-blend-mode: darken;
}




/* ************************************************************************************** */
/* page-section.standard-content */
/* 
/* 

.page-section [cols_33-66|cols_66-33|cols_33-33-33|cols_50_centered|cols_66_centered|cols_100]
	.pad
		.container
			.col [cell-1]
				.content-wrap [pad-default|pad-extra-vertical|pad-extra-horizontal|pad-extra-both|pad-only-vertical|pad-only-horizontal|pad-nopad]
			.col [cell-2]
				.content-wrap [pad-default|pad-extra-vertical|pad-extra-horizontal|pad-extra-both|pad-only-vertical|pad-only-horizontal|pad-nopad]
			.col [cell-3]
				.content-wrap [pad-default|pad-extra-vertical|pad-extra-horizontal|pad-extra-both|pad-only-vertical|pad-only-horizontal|pad-nopad]
				
/*
/* ************************************************************************************** */
.page-section.standard-content .container{
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: stretch;
}
.standard-content .col{
	position: relative;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	width: 100%;
}
.standard-content .content-wrap{
	width: 100%;
	max-width: var(--content-wrap-max-width);
	display: flex;
	flex-flow: column;
}

/* flip order on mobile */
.standard-content.rev-on-mobile .cell-1{ order: 2; }
.standard-content.rev-on-mobile .cell-2{ order: 1; }

/* ************************************************************************************** */





/* ************************************************************************************** */
/*.page-section.featured-items
/* boxes | grid | panels etc - new version */
/* ************************************************************************************** */
.page-section.featured-items{}
.page-section.featured-items .section-intro{}


/*
.image-size-full .items-container .image-wrap{}
.image-size-xlarge .items-container .image-wrap{ padding: calc(var(--content-padding-vert)/2); }
.image-size-large .items-container .image-wrap{ padding: var(--content-padding-vert) var(--content-padding-horiz) 0; }

.image-size-medium .items-container .image-wrap{ padding: var(--content-padding-vert) var(--content-padding-horiz) 0; }
.image-size-medium .items-container .image-wrap img{ max-width: 400px; }

.image-size-small .items-container .image-wrap{ padding: var(--content-padding-vert) var(--content-padding-horiz) 0; }
.image-size-small .items-container .image-wrap img{ max-width: 180px; }

.image-size-mini .items-container .image-wrap{ padding: var(--content-padding-vert) var(--content-padding-horiz) 0; aspect-ratio: 4/3; }
.image-size-mini .items-container .image-wrap img{ max-width: 120px; }
*/



.featured-items a{
	text-decoration: none;
}
.items-container.list{
	display: block;
}

/* .boxes - not only featured items! */
.items-container.boxes{
	display: grid;
	grid-gap: 24px;
	grid-template-columns: 1fr;
	padding: 0 var(--content-padding-horiz);
}
/* Note: .item can be <div>, <li> or <a> ... */
.items-container.boxes .item{
	position: relative;
	display: flex;
	flex-flow: column;
	width: 100%;
	overflow: hidden;
	border-radius: var(--border-radius);
	padding: 0;
	text-decoration: none;
	/* box-shadow: 0 0 40px rgba(0,0,0, .15); */
}

.items-container.boxes .image-wrap,
.items-container.columns .image-wrap{
	display: flex;
	flex-flow: column;
	justify-content: center;
	aspect-ratio: 16/9;
	width: 100%;
	margin: 0 auto;
	background: url() no-repeat center center transparent;
	background-size: cover;
}
.image-size-small .items-container .image-wrap{ max-width: 180px; aspect-ratio: 4/3; padding: var(--content-padding-vert) var(--content-padding-horiz) 0; }



.items-container.boxes .image-wrap img,
.items-container.columns .image-wrap img{
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: 100% !important;
	margin: auto;
}
.items-container.boxes .content-wrap{
	display: flex;
	flex-flow: column wrap;
	flex-grow: 2;
	width: 100%;
	margin: 0 auto;
	padding: 24px;
	font-size: 16px;
}
.read-more-wrap{
	margin-top: auto;
}

/* linkedin-posts */
.linkedin-posts .items-container.boxes .item{
	background: #fff;
}
.linkedin-posts .items-container.boxes .content-wrap{
	/* padding: 0; */
}
.linkedin-posts .items-container.boxes .content-wrap iframe{
	width: 100%;
	border: 0;
	margin-bottom: 0;
	border-radius: 4px;
}



/* .boxes_icons - header with icon */
.items-container.boxes_icons{
	display: grid;
	grid-gap: 24px;
	grid-template-columns: 1fr;
	padding: 0 var(--content-padding-horiz);
}
.items-container.boxes_icons .item{
	position: relative;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	width: 100%;
	overflow: hidden;
	border-radius: var(--border-radius);
	padding: 0;
}
.items-container.boxes_icons .content-wrap{
	display: flex;
	flex-flow: column;
	width: 100%;
	height: 100%;
	margin: 0 auto;

	padding: var(--content-padding-horiz);
}
.items-container.boxes_icons .content-wrap .heading{
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	
	min-height: 48px;
	margin-bottom: 24px;
	padding-left: 60px;
	line-height: 1;
}
.items-container.boxes_icons .content-wrap .heading h3{
	margin-bottom: 0;
	
}
.items-container.boxes_icons .image-wrap{
	position: absolute;
	top: 2px;
	left: 0;
	z-index: 2;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	width: 48px;
	height: 48px;
	margin: var(--content-padding-vert) 0 0 var(--content-padding-horiz);
}
.items-container.boxes_icons .image-wrap img{}




/* .panels - expandable panels */
.items-container.panels{
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
	gap: 24px;
	padding: 0 var(--content-padding-horiz);
}
.items-container.panels .item{
	position: relative;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	width: 100%;
	overflow: hidden;
	border-radius: var(--border-radius);
	padding: 0;
	text-decoration: none;
	box-shadow: none;
	/*background: transparent !important;*/
}
.items-container.panels .item .panel-wrap{
	border-radius: var(--border-radius)
}
.items-container.panels .image-wrap{
	/* max-width: 320px; */
	margin: auto;
	/*padding: 24px;*/
}
.items-container.panels .image-wrap img{
	/*
	width: auto;
	max-width: 80%;
	*/
	margin: auto;
}
html.js .panels .item.has-more{
	cursor: pointer;
}
html.js .panels .item.has-more .content-wrap{
	min-height: 240px;
	max-height: 240px;
	padding-bottom: 48px;
	overflow: hidden;
	transition: max-height .4s ease;
	border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.items-container.panels .item a{
	position: relative;
	z-index: 999;
}


html.js .panels .item.has-more.active .content-wrap{
	height: auto;
	max-height: 1600px;
	transition: max-height .5s ease;
}
/* click indicator */
html.js .panels .item.has-more .content-wrap::after{
	position: absolute;
	bottom: var(--content-padding-vert);
	z-index: 200;
	display: block;
	width: 24px;
	height: 24px;
	content: "";
	border-radius: 50%;
	background: no-repeat center center var(--color-darkgreen);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23ffffff; stroke-width: 1; stroke-miterlimit: 10; %7D %3C/style%3E%3C/defs%3E%3Cg%3E%3Cline class='cls-1' x1='18' y1='12' x2='6' y2='12'/%3E%3Cline class='cls-1' x1='12' y1='18' x2='12' y2='6'/%3E%3C/g%3E%3C/svg%3E");
	background-size: 24px 24px;
	transition: transform .4s;
}
html.js .panels .item.active.has-more .content-wrap::after{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23ffffff; stroke-width: 1; stroke-miterlimit: 10; %7D %3C/style%3E%3C/defs%3E%3Cline class='cls-1' x1='18' y1='12' x2='6' y2='12'/%3E%3C/svg%3E");
	transform: rotate(180deg);
}
/* color adjustments for click indicator */
html.js .panels .item.has-more .content-wrap::after{ background-color: var(--color-darkgreen); }
html.js .panels .item.has-more.bg-lightgreen .content-wrap::after{ background-color: var(--color-mediumgreen); }
html.js .panels .item.has-more.bg-darkgreen .content-wrap::after{ background-color: var(--color-darkgreen-punch); }
html.js .panels .item.has-more.bg-lightcoral .content-wrap::after{ background-color: var(--color-mediumcoral); }
html.js .panels .item.has-more.bg-darkcoral .content-wrap::after{ background-color: var(--color-darkcoral-punch); }

/* item background - panel version, will not grow height when panel is open - ??? */

.items-container.panels .item.bg-white .content-wrap,
.items-container.panels .item.bg-white .image-wrap{ background: #fff; color: var(--color-darkgreen); }



/* gradient cover */
html.js .panels .item.has-more .panel-wrap::before{
	position: absolute;
	bottom: 0;
	z-index: 20;
	width: 100%;
	height: 180px;
	content: "";
	background: linear-gradient(0deg, rgba(255,255,255,1) 54px, rgba(255,255,255,0) 100%);
	transition: opacity .4s ease-out;
	border-radius: var(--border-radius);
}
html.js .panels .item.active.has-more .panel-wrap::before{
	opacity: 0;
	transition: opacity .4s ease-in;
}
/* gradient cover background color adjustments */
html.js .panels .item.bg-white .panel-wrap::before{ background: linear-gradient(0deg, rgba(255,255,255,1) 54px, rgba(255,255,255,0) 100%); }
html.js .panels .item.bg-lightgreen .panel-wrap::before{ background: linear-gradient(0deg, rgba(235,238,239,1) 54px, rgba(235,238,239,0) 100%); }
html.js .panels .item.bg-darkgreen .panel-wrap::before{ background: linear-gradient(0deg, rgba(48,92,89,1) 54px, rgba(48,92,89,0) 100%); }

html.js .panels .item.bg-lightcoral .panel-wrap::before{ background: linear-gradient(0deg, rgba(251,240,238,1) 54px, rgba(251,240,238,0) 100%); }
html.js .panels .item.bg-darkcoral .panel-wrap::before{ background: linear-gradient(0deg, rgba(216,108,91,1) 54px, rgba(216,108,91,0) 100%); }


/* .cards - image on the left, content on the right, right? */
/* Not constructed yet. */

/* .columns - boxes without borders, backgrounds or box shadows */
/* Not constructed yet. */

/* .list - just a plain list */
/* Not constructed yet. */


/* ************************************************************************************** */







/* ************************************************************************************** */
/* .page-section.post-listing */
/* also using boxes, grid etc. */
/* ************************************************************************************** */
.page-section.post-listing .category-filters{
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	width: 100%;
	padding: 0 var(--content-padding-horiz);
}
.category-filters label{
	margin: 3px 10px 3px 0;
	font-size: 14px;
	text-transform: uppercase;
}
.category-filters ul{
	display: flex;
	flex-flow: row wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}
.category-filters li{
	margin: 3px 3px 3px 0;
}
.category-filters a{
	display: inline-block;
	padding: 2px 14px;
	font-size: 14px;
	text-transform: uppercase;
	text-decoration: none;
	background: #f6f6f6;
}
.category-filters a:hover{
	color: #fff;
	background: #8eb9cb;
}
.category-filters .active a{
	color: #fff;
	background: #8eb9cb;
}

/* item */
.post-listing .item{}
.post-listing .item .excerpt{
	margin-bottom: 1em;
}
.post-listing .item a{
	text-decoration: none;
}
.post-listing .item .categories ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
}
.post-listing .item .categories li{
	margin-right: 5px;
}
.post-listing .item .meta{
	font-size: 14px;
}
.post-listing .item .author::before,
.post-listing .item .date::before,
.post-listing .item .item-categories::before{
	content: " · ";
}
.post-listing .item .meta span:first-child::before{
	display: none;
}










/* ************************************************************************************** */
/* .page-section.testimonials */
/* ************************************************************************************** */
.page-section.testimonials{}
.testimonials .container{}
.testimonials .pad{}
.testimonials .item{}
.testimonials .item .content-wrap{
	min-height: 200px;
}
.testimonials .item blockquote{
	margin-bottom: 0;
	padding-bottom: 0;
}
.testimonials p.quotee{
	text-transform: uppercase;
	font-weight: 300;
}
.testimonials .slideshow p.quotee{
	padding-left: 32px;
}

.testimonials .list .item{
	width: 100%;
	display: flex;
	flex-flow: row wrap;
	padding: var(--content-padding-vert) var(--content-padding-horiz);
}

.testimonials .list .image-wrap{ display: none; }
.testimonials .list .image-wrap img,
.testimonials .list .image-wrap svg{
	max-width: 180px;
}
.testimonials .list .content-wrap{ border-radius: var(--border-radius);	 }
.testimonials.bg-white .list .content-wrap,
.testimonials.bg-inherit .list .content-wrap,
.testimonials.bg-transparent .list .content-wrap{ background: var(--color-lightgreen); }
.testimonials.bg-lightgreen .list .content-wrap,
.testimonials.bg-lightcoral .list .content-wrap{ background: #fff; }
.testimonials.bg-darkgreen .list .content-wrap{ background: var(--color-lightgreen); color: var(--color-darkgreen); }
.testimonials.bg-darkcoral .list .content-wrap{ background: var(--color-lightcoral); color: var(--color-darkcoral); }
/* ************************************************************************************** */







/* ************************************************************************************** */
/* slick-slider */
/* ************************************************************************************** */
.slick-loading .slick-list{
    background: transparent;
}
/* slick-arrows */
.slick-prev,
.slick-next{
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 20px;
    height: 20px;
	z-index: 9999;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before{
    opacity: .25;
}
.slick-prev:before,
.slick-next:before{
    font-size: 24px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-prev{
    left: 10px;
}
.slick-prev:before{
    content: '←';
}
.slick-next{
    right: 10px;
}
.slick-next:before{
    content: '→';
}
/* slick-dots */
.slick-dots{
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 99;

	display: block;
	width: auto;
	margin: 0px var(--content-padding-horiz) 0 0;
	padding: 0;
	list-style: none;
	text-align: right;
}
.slick-dots li{
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0;
	padding: 0;
	cursor: pointer;
}
.slick-dots li button{
	display: inline-block;
	width: 12px;
	height: 12px;
	margin: 0;
	padding: 0;
	color: transparent;
	border: 0;
	outline: none;
	background: var(--color-mediumcoral);
	border-radius: 50%;
	cursor: pointer;
	transition: opacity .5s ease;
}
.slick-dots li.slick-active button{
	background: var(--color-darkcoral-punch);
}



.bg-darkgreen .slick-dots li button{ background: var(--color-mediumgreen); }
.bg-darkgreen .slick-dots li.slick-active button{ background: var(--color-darkgreen-punch); }



/* ************************************************************************************** */






/* ************************************************************************************** */
/* footer */
/* ************************************************************************************** */
#footer{
	padding: var(--content-padding-vert) 0 0 0;
	font-size: 14px;
	color: #ebefef;
	background: var(--color-darkgreen);
}
#footer .pad{
	padding: var(--content-padding-horiz);
}
#footer a{
	color: inherit;
	text-decoration: none;
}
#footer a:hover{
	color: #fff;
	text-decoration: underline;
	opacity: 1;
}
.legal{
	color: #98aeac;
	clear: both;
}
/* ************************************************************************************** */






@media screen and ( max-width: 340px ) {
	/* wrap tooooo long words */
	h1, h2, h3{
		/* These are technically the same, but use both */
		overflow-wrap: break-word;
		word-wrap: break-word;
		-ms-word-break: break-all;
		/* This is the dangerous one in WebKit, as it breaks things wherever */
		word-break: break-all;
		/* Instead use this non-standard one: */
		word-break: break-word;
		/* Adds a hyphen where the word breaks, if supported (No Blink) */
		-ms-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
	}
}




@media screen and (min-width: 540px){
	
	:root{
		--content-padding-vert: 32px;
		--content-padding-horiz: 32px;
	}

	.soft-hyphen{
		display: none;
	}

}


@media screen and (min-width: 640px){
	
	
	/* ************************************************************************************** */
	/* .boxes and similar
	/* ************************************************************************************** */
	.items-container.boxes,
	.items-container.boxes_icons{ grid-template-columns: 1fr 1fr; }
	.items-container.boxes .items-container.n1,
	.items-container.boxes_icons .items-container.n1{ grid-template-columns: 1fr; }
	.items-container.boxes .item,
	.items-container.boxes_icons .item{ width: auto; }
	
	.items-container.panels .item{ width: calc( 50% - 12px ); }
	/* ************************************************************************************** */
	
	.testimonials .items-container{
		padding: 0 var(--content-padding-horiz);
	}
	
	/* ************************************************************************************** */
	/* responsive form field widths */
	/* ************************************************************************************** */
	form .form-field.w50{
		width: 50%;
		float: left;
	}
	form .form-field.w25{
		width: 25%;
		float: left;
	}
	/* ************************************************************************************** */
	
}








@media (max-width: 939.99px) {
	
	.page-section.half-background{
		padding-bottom:  var(--section-padding-vert) !important;
	}
	
}



@media screen and (min-width: 940px){
	
	/* Use technique on larger screens only 2025-11-10 */
	.half-background.bg-lightgreen{ background: linear-gradient(180deg,var(--color-lightgreen) 0%, var(--color-lightgreen) 50%, rgba(255,255,255, 0) 50%);}
	.half-background.bg-lightcoral{ background: linear-gradient(180deg,var(--color-lightcoral) 0%, var(--color-lightcoral) 50%, rgba(255,255,255, 0) 50%); }
	.half-background.bg-darkgreen{ background: linear-gradient(180deg,var(--color-darkgreen) 0%, var(--color-darkgreen) 50%, rgba(255,255,255, 0) 50%); }
	.half-background.bg-darkcoral{ background: linear-gradient(180deg,var(--color-darkcoral) 0%, var(--color-darkcoral) 50%, rgba(255,255,255, 0) 50%); }
	
	
	/* ************************************************************************************** */
	/* boxes and similar
	/* ************************************************************************************** */
	.items-container.boxes,
	.items-container.boxes_icons{ grid-template-columns: 1fr 1fr 1fr; }
	.items-container.boxes.n1,
	.items-container.boxes_icons.n1,
	.items-container.boxes.n2,
	.items-container.boxes_icons.n2,
	.items-container.boxes.n4,
	.items-container.boxes_icons.n4{ grid-template-columns: 1fr 1fr; }
	.items-container.boxes .item,
	.items-container.boxes_icons .item{ width: auto; }
	
	
	.items-container.panels .item{ width: calc( 33.3333% - 16px ); } /* 3 boxes, 2 gaps */
	.items-container.panels.n4 .item{ width: calc( 50% - 23px ); } /* 2 boxes, 1 gap */
	/* ************************************************************************************** */

}





@media (max-width: 1023.99px) {
	
	.hide-s{
		display: none;
	}
	
}


@media (min-width: 1024px) {
	
	:root{
		--header-height: 108px;
		--section-padding-horiz: 24px;
	}
	
	body{
		font-size: 18px;
	}
	
	#header,
	.nav-expanded #header,
	.scrolling.nav-expanded #header{
		height: var(--header-height);

	}
	.scrolling #header,
	.scrolling.nav-expanded #header{
		height: 68px;
	}
	#header .container{
		padding-top: 24px;
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		align-items: flex-end;
		align-content: flex-end;
	}
	.scrolling #header .container,
	.scrolling.nav-expanded #header #header .container{
		padding-top: 12px;
	}
	#logo img, #logo svg{
		max-width: 250px;
	}
	.scrolling #logo img, .scrolling #logo svg{
		max-width: 170px;
	}
	button.toggle-nav{
		display: none;
	}
	#nav,
	.nav-expanded #nav{
		display: flex;
		pointer-events: auto;
	}
	#nav ul{
		display: flex;
		justify-content: flex-end;
		flex-grow: 1;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	#nav li{
		display: inline-block;
		width: auto;
		margin: 0;
		padding: 0 12px 1px 12px;
		list-style: none;
	}
	#nav li:first-child{
		margin-top: unset;
	}
	#nav a{
		display: inline-block;
		padding: 7px 0;
		font-size: 18px;
	}
	.scrolling #nav a{
		padding: 0 0;
	}
	#nav li.current-menu-item a{
		font-weight: 100;
		border-bottom: solid 1px #afbdbf;
	}
	
	
	.page-section.section-1{
		padding-top: calc( var(--section-padding-vert) * 2 );
	}
	
	#footer .container{
		padding: 0 var(--section-padding-horiz);
	}


	/* ************************************************************************************** */
	/* .page-section.hero */
	/* ************************************************************************************** */
	.page-section.hero{}
	.page-section.hero .content-wrap{}
	.hero .item{
		display: flex;
		align-items: center;
		/*height: 80vh;*/
		max-height: 740px;
		overflow: hidden;
	}
	.hero .item .image-wrap{}
	.hero .item .image-wrap img{
		width: 100%;
	}
	.hero .item .content-wrap{
		position: absolute;
		bottom: 48px;
		left: 0;
		z-index: 99;
	}
	.hero .item .content{
		width: 66%;
		margin: 0;
		padding: var(--content-padding-vert) var(--content-padding-horiz);
	}
	
	
	/* ************************************************************************************** */
	/* .page-section.standard-content */
	/* ************************************************************************************** */
	.standard-content .container{}
	.standard-content .content{}
	
	/* ORG
	.standard-content .cell-1, 
	.standard-content .cell-2{ 
		width: 47.817%;
	}
	.standard-content .cell-2{ 
		margin-left: 4.347%;
	}
	.cols_33-66 .cell-1,
	.cols_66-33 .cell-2{ 
		width: 30.429%;
	}
	.cols_33-66 .cell-2,
	.cols_66-33 .cell-1{ 
		width: 65.205%;
	}
	*/
	
	/* New eval - may not need margin, since .col divs have padding */
	.standard-content .cell-1, 
	.standard-content .cell-2{ 
		width: 50%;
	}
	.standard-content .cell-2{}
	.cols_33-66 .cell-1,
	.cols_66-33 .cell-2{ 
		width: 33.3333%;
	}
	.cols_33-66 .cell-2,
	.cols_66-33 .cell-1{ 
		width: 66.6666%;
	}
	.cols_50_centered .content-wrap{
		margin-left: auto; 
		margin-right: auto;	
	}
	.cols_50_centered .cell-1, 
	.cols_50_centered .cell-2{ width: 50%; margin-left: auto; margin-right: auto;}
	.cols_50_centered .content{
		width: 100%;
		max-width: var(--content-wrap-max-width);
		margin-left: auto; 
		margin-right: auto;
	}
	.cols_66_centered .content-wrap{
		margin-left: auto; 
		margin-right: auto;	
	}
	.cols_66_centered .cell-1, 
	.cols_66_centered .cell-2{ width: 66.66%; margin-left: auto; margin-right: auto;}
	.cols_66_centered .content{
		width: 100%;
		margin-left: auto; 
		margin-right: auto;
	}
	.cols_100 .content{
		width: 100%;
		max-width: none;
	}
	.cols_100 .col{
		width: 100%;
	}
	.col{
		display: flex;
		flex-flow: row wrap;
		align-items: center;
		background-repeat: no-repeat;
		background-size: cover;
	}
	.page-section.w66 .items-container,
	.page-section.w66 .section-wrap,
	.page-section.w50 .items-container,
	.page-section.w50 .section-wrap{
		margin-left: auto;
		margin-right: auto;
	}
	.page-section.w66 .items-container,
	.page-section.w66 .section-wrap{
		max-width: 66.66%;

	}
	.page-section.w50 .items-container,
	.page-section.w50 .section-wrap{
		max-width: 50%;
	}
	/* reset order from mobile */
	.standard-content.rev-on-mobile .cell-1,
	.standard-content.rev-on-mobile .cell-2{ order: unset; }
	
	.inner-bg .col.cell-1{
		border-radius: var(--border-radius) 0 0 var(--border-radius);
	}
	.inner-bg .col.cell-2{
		border-radius: 0 var(--border-radius) var(--border-radius) 0;
	}
	.inner-bg .col.cell-1 .content-wrap.pad-default{
		padding-right: 0;
	}
	.inner-bg .col.cell-2  .content-wrap.pad-default{
		padding-left: 0;
	}
	/* ************************************************************************************** */
	
	
	
	/* ************************************************************************************** */
	/* .page-section.testimonials .list */
	/* ************************************************************************************** */
	.testimonials .list{}
	.testimonials .list .item{ }
	.testimonials .list .item .image-wrap{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 30.429%;
	}
	.testimonials .list .item .content-wrap{
		width: 65.205%;
	}
	.testimonials .list .item:nth-child(odd) .content-wrap{ margin-left: 4.347%; }
	.testimonials .list .item:nth-child(even) .content-wrap{ order: 1; }
	.testimonials .list .item:nth-child(even) .image-wrap{ order: 2; }
	/* ************************************************************************************** */

}




@media (min-width: 1280px) {

	.page-section.hero .content{
		max-width: 940px;
	}

	.gallery.gallery-columns-5{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;	}
	.gallery.gallery-columns-6{	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;	}

	
	/* ************************************************************************************** */
	/* boxes and similar
	/* ************************************************************************************** */
	.items-container.boxes,
	.items-container.boxes_icons,
	.items-container.boxes.n4,
	.items-container.boxes_icons.n4{ grid-template-columns: 1fr 1fr 1fr 1fr; }
	.items-container.boxes.n2,
	.items-container.boxes_icons.n2{ grid-template-columns: 1fr 1fr; }
	.items-container.boxes.n3,
	.items-container.boxes_icons.n3,
	.items-container.boxes.n5,
	.items-container.boxes_icons.n5,
	.items-container.boxes.n6,
	.items-container.boxes_icons.n6,
	.items-container.boxes.n9,
	.items-container.boxes_icons.n9{ grid-template-columns: 1fr 1fr 1fr; }
	
	.items-container.panels .item,
	.items-container.panels.n4 .item{ width: calc( 25% - 18px ); } /* 4 boxes, 3 gaps */
	.items-container.panels.n3 .item,
	.items-container.panels.n6 .item,
	.items-container.panels.n9 .item{ width: calc( 33.3333% - 16px ); } /* 3 boxes, 2 gaps */
	/* ************************************************************************************** */
	
	.testimonials .item blockquote{
		font-size: 2.4em;
	}

}







/* small screen nav */
@media (max-width: 1023.99px) {
	
	#nav li{
		opacity: 0;
	}
	.nav-expanded #nav li{
		-webkit-animation: fadeinmenu .75s 1;
				animation: fadeinmenu .75s 1;
		-webkit-animation-fill-mode: forwards;
				animation-fill-mode: forwards;
	}
	.nav-expanded #nav li:nth-child(1){-webkit-animation-delay: .20s; animation-delay: .20s;}
	.nav-expanded #nav li:nth-child(2){-webkit-animation-delay: .27s; animation-delay: .27s;}
	.nav-expanded #nav li:nth-child(3){-webkit-animation-delay: .34s; animation-delay: .34s;}
	.nav-expanded #nav li:nth-child(4){-webkit-animation-delay: .41s; animation-delay: .41s;}
	.nav-expanded #nav li:nth-child(5){-webkit-animation-delay: .48s; animation-delay: .48s;}
	.nav-expanded #nav li:nth-child(6){-webkit-animation-delay: .55s; animation-delay: .55s;}
	.nav-expanded #nav li:nth-child(7){-webkit-animation-delay: .62s; animation-delay: .62s;}
	.nav-expanded #nav li:nth-child(8){-webkit-animation-delay: .69s; animation-delay: .69s;}
	.nav-expanded #nav li:nth-child(9){-webkit-animation-delay: .76s; animation-delay: .76s;}
	.nav-expanded #nav li:nth-child(10){-webkit-animation-delay: .81s; animation-delay: .81s;}
	.nav-expanded #nav li:nth-child(11){-webkit-animation-delay: .95s; animation-delay: .95s;}
	
	@-webkit-keyframes fadeinmenu { from {opacity: 0; padding-left: 20px; padding-right: 0; } to {opacity: 1; padding-left: 0px; padding-right: 20px; } }
	@keyframes fadeinmenu { from {opacity: 0; padding-left: 20px; padding-right: 0; } to {opacity: 1; padding-left: 0px; padding-right: 20px; } }
	#nav li a{
		-webkit-transition: all .5s;
		-o-transition: all .5s;
		-webkit-transition: all .5s;
		transition: all .5s;
	}
	
	.hamburger {
		
		display: inline-block;
		padding: 7px;
		cursor: pointer;
		-webkit-transition-property: opacity, -webkit-filter;
		transition-property: opacity, -webkit-filter;
		-o-transition-property: opacity, filter;
		transition-property: opacity, filter;
		transition-property: opacity, filter, -webkit-filter;
		-webkit-transition-duration: 0.15s;
			 -o-transition-duration: 0.15s;
				transition-duration: 0.15s;
		-webkit-transition-timing-function: linear;
			 -o-transition-timing-function: linear;
				transition-timing-function: linear;
		font: inherit;
		color: inherit;
		font-size: 1px;
		line-height: 1px;
		text-transform: none;
		background-color: transparent;
		border: 0;
		margin: 0;
		overflow: visible; 
	}
	.hamburger:hover {
		/*opacity: 0.6; */
	}
	.hamburger.is-active:hover {
		/*opacity: 0.6; */
	}
	.hamburger:focus{
		outline: none;
	}
	.hamburger-box {
		position: relative;
		display: inline-block;
		width: 31px;
		height: 31px;
	}
	.hamburger-inner {
		display: block;
		top: 50%;
		margin-top: 0px; 
	}
	.hamburger-inner, 
	.hamburger-inner::before, 
	.hamburger-inner::after {
		width: 25px;
		height: 1px;
		background-color: #ccd5d6;
		border-radius: 0;
		position: absolute;
		-webkit-transition-property: -webkit-transform;
		transition-property: -webkit-transform;
		-o-transition-property: transform;
		transition-property: transform;
		transition-property: transform, -webkit-transform;
		-webkit-transition-duration: 0.15s;
			 -o-transition-duration: 0.15s;
				transition-duration: 0.15s;
		-webkit-transition-timing-function: ease;
			 -o-transition-timing-function: ease;
				transition-timing-function: ease; 
	}
	.hamburger-inner::before, .hamburger-inner::after {
		content: "";
		display: block; 
	}
	.hamburger-inner::before {
		top: -8px; 
	}
	.hamburger-inner::after {
		bottom: -8px; 
	}
	.hamburger--squeeze .hamburger-inner {
		-webkit-transition-duration: 0.075s;
			 -o-transition-duration: 0.075s;
				transition-duration: 0.075s;
		-webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
			 -o-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
				transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}
	.hamburger--squeeze .hamburger-inner::before {
		-webkit-transition: top 0.075s 0.12s ease, opacity 0.075s ease;
		-o-transition: top 0.075s 0.12s ease, opacity 0.075s ease;
		transition: top 0.075s 0.12s ease, opacity 0.075s ease; 
	}
	.hamburger--squeeze .hamburger-inner::after {
		-webkit-transition: bottom 0.075s 0.12s ease, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
		transition: bottom 0.075s 0.12s ease, -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
		-o-transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
		transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
		transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}
	.hamburger--squeeze.is-active .hamburger-inner {
		-webkit-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
				transform: rotate(45deg);
		-webkit-transition-delay: 0.12s;
			 -o-transition-delay: 0.12s;
				transition-delay: 0.12s;
		-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
			 -o-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
				transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); 
	}
	.hamburger--squeeze.is-active .hamburger-inner::before {
		top: 0;
		opacity: 0;
		-webkit-transition: top 0.075s ease, opacity 0.075s 0.12s ease;
		-o-transition: top 0.075s ease, opacity 0.075s 0.12s ease;
		transition: top 0.075s ease, opacity 0.075s 0.12s ease; 
	}
	.hamburger--squeeze.is-active .hamburger-inner::after {
		bottom: 0;
		-webkit-transform: rotate(-90deg);
			-ms-transform: rotate(-90deg);
				transform: rotate(-90deg);
		-webkit-transition: bottom 0.075s ease, -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
		transition: bottom 0.075s ease, -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
		-o-transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
		transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
		transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); 
	}
	
}











