/* MAIN WP CSS FILE -- DESKTOP FIRST STYLESHEET */
@font-face{ font-family: 'Englisch'; src: url('../fonts/Englisch-Light.otf') format('opentype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face{ font-family: 'Rooftop Mono'; src: url('../fonts/RooftopMono-Regular.otf') format('opentype'); font-weight: 400; font-style: normal; font-display: swap; }

:root{
	--contentpad: 10px;
	--contentpad2x: 20px;
	--contentpad4x: 40px;
	--sectionpad05x: 40px;
	--sectionpad: 80px;
	--sectionpad2x: 160px;
	/* var(--colw) in document */
	--colw05x: calc( var(--colw) / 2 );
	--colw2x: calc( var(--colw) * 2 );

	--boxpad: 10px;
	--gridgutter: 12px;

	--theme-white: #FFFFFF;
	--theme-cream: #F6F2EF;
	--theme-coffee: #7C4D3A;
	--theme-terracotta: #963821;
	--theme-redwood: #B33D26;
	--theme-eggplant: #210503;
	--theme-black: #000000;
	--theme-iris: #87AAF7;
	--theme-sage: #797763;

	--fontfam-heading: 'Englisch', serif;
	--fontfam-smallcaps: 'Rooftop Mono', monospace;
	--fontfam-button: 'Rooftop Mono', monospace;
	--fontfam-text: 'aktiv-grotesk', sans-serif;

	--size-h1: 4.1rem; /* 82px, 4.1rem */
	--size-menu: 3.5rem; /* 70px, 3.5rem */
	--size-h2: 3.0rem; /* 60px, 3.0rem */
	--size-h3:  2.0rem; /* 40px, 2.0rem */
	--size-h4: 1.5rem; /* 30px, 1.5rem */
	--size-h5: 1.0rem; /* 20px, 1.0rem */
	--size-h6: 14px; /* 14px, 0.7rem */
	--size-p: 1.0rem; /* 20px, 1.0rem */
	--size-p-xsml: 12px; /* 12px, 0.6rem */
	--size-p-sml: 14px; /* 14px, rem */
	--size-p-lrg: 1.5rem; /* 30px, 1.5rem */
	--size-caption: 12px; /* 14px, 0.6rem */
	--size-button: 14px; /* 14px, 0.7rem */
}

html, body {
	margin: 0;
	padding: 0;
	font-family: "aktiv-grotesk", sans-serif;
	font-size: 20px;
	font-size: calc( 16px + (20 - 16) * (100vw - 980px) / (1920 - 980) );
	line-height: 1.3;
	font-weight: normal;
	min-width: 320px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
	@media only screen and (min-width : 1921px) {
		html, body {
			font-size: 20px; /* 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, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: var(--fontfam-heading);
	text-transform: uppercase;
	font-weight: 400;
	line-height: 1.1;
}
	h1, .h1{
		font-size: var(--size-h2);
		line-height: 0.9;
	}
		h1.large, .h1.large{
			font-size: var(--size-h1);
			line-height: 0.9;
		}
	h2, .h2{
		font-size: var(--size-h2);
		line-height: 0.9;
	}
		.text-menu,
		h2, .h2{
			font-size: var(--size-menu);
			line-height: 0.9;
		}

	h3, .h3{
		font-size: var(--size-h3);
	}
	h4, .h4{
		font-size: var(--size-h4);
	}
	h5, .h5{
		font-size: var(--size-h5);
	}
	h6, .h6{
		font-size: var(--size-h6);
		font-family: var(--fontfam-smallcaps);
		line-height: 1.4;
	}

.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{
	font-family: var(--fontfam-smallcaps);
	font-size: var(--size-p-sml);
	text-transform: initial;
	font-weight: normal;
	line-height: 1.4;
}
.text-caption{
	font-family: var(--fontfam-text);
	font-size: var(--size-caption);
	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; }

.text-center{ text-align: center; }
.text-left{ text-align: left; }
.text-right{ text-align: right; }

/* 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: #FFFFFF;
	background-color: rgba(135, 170, 247, 0.99);
}
*::-moz-selection{
	color: #FFFFFF;
	background-color: rgba(135, 170, 247, 0.99);
}

img::selection{
	background-color: rgba(135, 170, 247, 0.33);
}
img::-moz-selection{
	background-color: rgba(135, 170, 247, 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%; 
	min-height: 320px; 
}
iframe[src*="vimeo"]{} 
iframe[src*="youtube"]{}
iframe[src*="google.com/maps"]{
	display: block;
}

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{
	fill: inherit;
}

a{
	position: relative;
	color: inherit; 
	text-decoration: none; 
	transition: all 0.35s ease 0s;
}

#menu-social_inline a,
main a:not([class]),
a.no-underline,
a.underline,
button.no-underline,
button.underline{ 
	display: inline-block;
	vertical-align: baseline;
	position: relative;
	color: inherit; 
	text-decoration: none; 
	transition: none;
}
	a > span{
		display: inline-block;
		vertical-align: middle;
	}
	a > span:not(.visually-hidden) + span:not(.visually-hidden){
		margin-left: 8px;
	}

	#menu-social_inline a::before, #menu-social_inline a::after,
	main a:not([class])::before, main a:not([class])::after,
	a.underline::before, a.underline::after,
	button.underline::before, button.underline::after{
		height: 1px;
		content: ''; 
		display: block;
		position: absolute; 
		bottom: 0;   
	}
	#menu-social_inline a::before,
    main a:not([class])::before,
	a.underline::before,
	button.underline::before{
		width: 100%; 
		left: auto; 
		right: auto;
		background: currentColor;
		transition: width 0.35s ease;
	}
	#menu-social_inline a::after,
	main a:not([class])::after,
	a.underline::after,
	button.underline::after{
		width: 100%; 
		left: auto; 
		right: auto;
		background: transparent;
		transition: width 0.35s ease;
	}

	a.no-underline::before, a.no-underline::after,
	button.no-underline::before, button.no-underline::after{
		content: '';
    	display: block;
    	height: 1px;
    	position: absolute; 
    	bottom: 0px;    	   	
	}
	a.no-underline::before,
	button.no-underline::before{
		left: 0; 
		right: 0; 
		width: 0;
		transition: width 0s ease;
		background: currentColor; 
	}
	a.no-underline::after,
	button.no-underline::after{
		right: 0%; 
		width: 0;
		transition: width 0.35s ease;
		background: currentColor; 
	}


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: 0.4rem; 
}

/* list styles */
ul.inline{
	list-style-type: none; 
	margin: 1em 0;
	padding: 0;
}
ul.inline li{ 
	margin: ;
	display: inline-block; 
	vertical-align: middle; 
	margin: 0; 
	padding: 0;
}
ul.inline li + li{
	margin-left: 8px;
	margin-top: 0;
}

/* 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-cream{ 
	background-color: var(--theme-cream); 
}
	.bg-cream:not(.boxed){
		color: var(--theme-eggplant); 
		fill: var(--theme-eggplant); 
	}
	.text-cream{
		color: var(--theme-cream); 
		fill: var(--theme-cream); 
	}
	.section_cta_link.bg-white:not(.boxed),
	.section_cta_link.bg-cream:not(.boxed){
		color: var(--theme-coffee); 
		fill: var(--theme-coffee); 
	}
	.section_cta_link.bg-white:not(.boxed) .btn_arrow,
	.section_cta_link.bg-cream:not(.boxed) .btn_arrow{
		color: var(--theme-cream);
		border-color: var(--theme-coffee);
  		background-color: var(--theme-coffee);
	}



.bg-coffee{ 
	background-color: var(--theme-coffee); 
}
	.bg-coffee:not(.boxed){
		color: var(--theme-cream); 
		fill: var(--theme-cream); 
	}
	.text-coffee{
		color: var(--theme-coffee); 
		fill: var(--theme-coffee); 
	}
	.bg-coffee .text-colorswap,
	.bg-terracotta .text-colorswap,
	.bg-redwood .text-colorswap{
		color: var(--theme-eggplant); 
		fill: var(--theme-eggplant); 
	}


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

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

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

.bg-sage{ 
	background-color: var(--theme-sage); 
}
	.bg-sage:not(.boxed){
		color: var(--theme-eggplant); 
		fill: var(--theme-eggplant); 
	}
	.text-sage{
		color: var(--theme-sage); 
		fill: var(--theme-sage); 
	}
	.bg-cream .text-colorswap,
	.bg-sage .text-colorswap,
	.bg-eggplant .text-colorswap{
		color: var(--theme-iris); 
		fill: var(--theme-iris); 
	}
	.text-iris{
		color: var(--theme-iris); 
		fill: var(--theme-iris); 
	}

/*--------------------------------------------------------- THEME: BUTTONS */
.btn_inline,
.btn_outline,
.btn_solidiris,
.btn_arrow{
	display: inline-block;
    vertical-align: baseline;
    height: 38px;
    line-height: 20px; 
    border-radius: 0;
    position: relative;
    box-sizing: border-box;
    font-size: var(--size-button);
    font-weight: 500;
    font-family: var(--fontfam-smallcaps);
    text-transform: uppercase; 
    white-space: nowrap;
    text-decoration: none;
    border: 0;
    color: inherit;
	background-color: transparent;
	margin: 0;
	transition: all 0.35s ease;
}
	.btn_inline{
		padding: 8px 8px;
	}
		.btn_inline.no-underline,
		.btn_inline.underline{
			padding: 0px 0px;
			height: initial;
		}

	.btn_outline{
		text-decoration: none!important;
    	border: 1px solid;
    	border-radius: 20px;
    	padding: 8px 28px;
	}

	.btn_solidiris{
		text-decoration: none!important;
    	border: 1px solid var(--theme-iris);
    	border-radius: 20px;
    	padding: 8px 28px;
    	background-color: var(--theme-iris);
    	color: var(--theme-cream);
    	fill: var(--theme-cream);
	}

	.btn_arrow{
		text-decoration: none!important;
    	border: 1px solid;
    	border-radius: 20px;
    	line-height: 30px; 
   		padding: 2px 12px;
	}
		.bg-white:not(.boxed) .btn_arrow{
			color: var(--theme-white);
			border-color: var(--theme-eggplant); 
			background-color: var(--theme-eggplant); 
		}
		.bg-cream:not(.boxed) .btn_arrow{
			color: var(--theme-cream);
			border-color: var(--theme-eggplant); 
			background-color: var(--theme-eggplant); 
		}
		.bg-coffee:not(.boxed) .btn_arrow{
			color: var(--theme-coffee);
			border-color: var(--theme-cream); 
			background-color: var(--theme-cream); 
		}
		.bg-terracotta:not(.boxed) .btn_arrow{
			color: var(--theme-terracotta);
			border-color: var(--theme-cream); 
			background-color: var(--theme-cream); 
		}
		.bg-redwood:not(.boxed) .btn_arrow{
			color: var(--theme-redwood);
			border-color: var(--theme-cream); 
			background-color: var(--theme-cream); 
		}
		.bg-eggplant:not(.boxed) .btn_arrow{
			color: var(--theme-eggplant);
			border-color: var(--theme-sage); 
			background-color: var(--theme-sage); 
		}
		.bg-sage:not(.boxed) .btn_arrow{
			color: var(--theme-sage);
			border-color: var(--theme-eggplant); 
			background-color: var(--theme-eggplant); 
		}
			.bg-white:not(.boxed) .btn_arrow.text-colorswap,
			.bg-cream:not(.boxed) .btn_arrow.text-colorswap,
			.bg-coffee:not(.boxed) .btn_arrow.text-colorswap,
			.bg-terracotta:not(.boxed) .btn_arrow.text-colorswap,
			.bg-redwood:not(.boxed) .btn_arrow.text-colorswap,
			.bg-eggplant:not(.boxed) .btn_arrow.text-colorswap,
			.bg-sage:not(.boxed) .btn_arrow.text-colorswap{
				border-color: var(--theme-iris); 
				background-color: var(--theme-iris); 
			}

		.btn_arrow::before{
			content: '';/*'\2933' ⤳ */
			mask-image: url('../images/icon-arrow-next_button.svg');
			-webkit-mask-image: url('../images/icon-arrow-next.svg');
			mask-size: contain;
			-webkit-mask-size: contain;
			background-color: currentColor;
			width: 46px;
			height: 30px;
			display: inline-block;
			vertical-align: middle;
		}

		.btn_arrow.arrow_down{
			width: 38px;
			height: 72px;
		}
		.btn_arrow.arrow_down::before{
			transform: rotate(90deg);
			transform-origin: 6px;
		}

/* fix: body:not(.is-device_android)" android chrome ignores lack of hover support and attempts hover on mobile */
@media (hover: hover){

	body:not(.is-device_android) a:hover{ 
		color: inherit; 
		transition: all 0.35s ease 0s; 
	}	

	body:not(.is-device_android).menu-open #site-header a.home-logo:hover,
	body:not(.is-device_android) #site-header:not(.bg-eggplant) a.home-logo:hover{
		color: var(--theme-eggplant);
		fill: var(--theme-eggplant);
	}
		body:not(.is-device_android):not(.menu-open) #site-header.bg-white a.home-logo:hover,
		body:not(.is-device_android):not(.menu-open) #site-header.bg-cream a.home-logo:hover{
			color: var(--theme-sage);
			fill: var(--theme-sage);
		}
		body:not(.is-device_android):not(.menu-open) #site-header.bg-sage a.home-logo:hover{
			color: var(--theme-cream);
			fill: var(--theme-cream);
		}
		body:not(.is-device_android):not(.menu-open) #site-header.bg-eggplant a.home-logo:hover{
			color: var(--theme-terracotta);
			fill: var(--theme-terracotta);
		}

/*	body:not(.is-device_android) a.btn_inline:hover,
	body:not(.is-device_android) button.btn_inline:hover{
		text-decoration: underline;
		transition: all 0.35s ease 0s; 
	}*/

	body:not(.is-device_android) a.btn_outline:hover,
	body:not(.is-device_android) button.btn_outline:hover,
	body:not(.is-device_android) .btn_solidiris:hover,
	body:not(.is-device_android) ul#menu-mainnav_buttons li a:hover{
		transition: all 0.35s ease 0s; 
		background-color: var(--theme-eggplant);
		border-color: var(--theme-eggplant);
		color: var(--theme-cream);
		fill: var(--theme-cream);
	}


/* moth on top of close button, removed 14/5/25 */
/*
		body:not(.is-device_android).menu-open #toggle_site-menu[aria-expanded="true"],
		body:not(.is-device_android).menu-open #toggle_site-menu[aria-expanded="true"]:hover{
			background-color: transparent;
    		color: transparent;
		}
		body:not(.is-device_android).menu-open #toggle_site-menu[aria-expanded="true"]:hover::after{
			background-image: url('../images/icon-moth_header_cream.svg');
			transition: all 0.35s ease;
		}
*/

		body:not(.is-device_android) .bg-eggplant:not(.section_site_header) a.btn_outline:hover,
		body:not(.is-device_android) .bg-eggplant:not(.section_site_header) button.btn_outline:hover,
		body:not(.is-device_android) .bg-eggplant:not(.section_site_header) .btn_solidiris:hover,
		body:not(.is-device_android):not(.menu-open) .section_site_header.bg-eggplant  a.btn_outline:hover,
		body:not(.is-device_android):not(.menu-open) .section_site_header.bg-eggplant button.btn_outline:hover{
			background-color: var(--theme-terracotta);
			border-color: var(--theme-terracotta);
		}

	body:not(.is-device_android) a.btn_arrow:hover,
	body:not(.is-device_android) button.btn_arrow:hover{
		transition: all 0.35s ease 0s; 
	}

	body:not(.is-device_android) #menu-social_inline a:hover::before,
	body:not(.is-device_android) main a:not([class]):hover::before,
	body:not(.is-device_android) a.underline:hover::before,
	body:not(.is-device_android) button.underline:hover::before{
		width: 0; 
		left: auto; 
		right: 0;
		background: transparent;
		transition: width 0.35s ease;
	}
	body:not(.is-device_android) #menu-social_inline a:hover::after,
	body:not(.is-device_android) main a:not([class]):hover::after,
	body:not(.is-device_android) a.underline:hover::after,
	body:not(.is-device_android) button.underline:hover::after{
		width: 0; 
		left: auto; 
		right: 0%;
    	background: #000;
		transition: width 0.35s ease;
	}

	body:not(.is-device_android) a.no-underline:hover::before,
	body:not(.is-device_android) button.no-underline:hover::before{
		width: 100%;
		transition: width 0.35s ease;
	}	
	body:not(.is-device_android) a.no-underline:hover::after,
	body:not(.is-device_android) button.no-underline:hover::after{
		width: 100%;
		background: transparent;
		transition: none;
	}

	
	body:not(.is-device_android) .item_box > a.box .boxlink-arrow{
		opacity: 0;
		transition: all 0.35s ease;
	}
	body:not(.is-device_android) .item_box > a.box:hover .boxlink-arrow{
		opacity: 1;
		transition: all 0.35s ease;
	}

	body:not(.is-device_android) a.btn_arrow:hover,
	body:not(.is-device_android) a.hoverstack:hover span.btn_arrow{
		color: var(--theme-cream);
  		border-color: var(--theme-iris);
  		background-color: var(--theme-iris);
  		transition: all 0.35s ease;
	}
	body:not(.is-device_android) .section_3img_links .container_links a.boxed-link:hover{
		border-color: currentColor;
	}


}

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

/* 12 parts grid @ max-width 100% */
.grid-container{
	display: grid;
	grid-template-columns: [screenleft] 0 [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] 0 [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;
}
.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,
.text-wrapper > *:first-child{ margin-top: 0; }
.content.text > *:last-child,
.text-wrapper > *:last-child{ margin-bottom: 0; }	


p.readmores{
	display: flex;
	flex-wrap: wrap;
	margin: var(--contentpad2x) 0 0 0;
	column-gap: var(--contentpad2x);
	row-gap: var(--contentpad2x);
	position: relative;
}
	p.readmores > *{
		display: block;
	}
	p.readmores .fw{
		flex-basis: 100%;
	}


/*--------------------------------------------------------- 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%; }


.section.colw_12 .container_items .item_col,
.container_items.colw_12 .item_col{
	grid-column: c0/c12;	
}

.section.colw_edge .container_items .item_col,
.container_items.colw_edge .item_col{
	grid-column: screenleft/screenright;	
}
	.section.colw_edge .container_items .item_col .content,
	.container_items.colw_edge .item_col .content{
		padding: 0 0;
	}

/*.container_items .item_col:not(:last-child){
	margin-bottom: var(--sectionpad05x);
}*/

@media only screen and (min-width : 981px) {

	/* to fix for: .container_items .item_col:not(:last-child) */
	/*
	.section.colw_6 .container_items .item_col:nth-last-child(2),
	.section.colw_4 .container_items .item_col:nth-last-child(2),
	.section.colw_4 .container_items .item_col:nth-last-child(3),
	.section.colw_3 .container_items .item_col:nth-last-child(2),
	.section.colw_3 .container_items .item_col:nth-last-child(3),
	.section.colw_3 .container_items .item_col:nth-last-child(4),
	.container_items.colw_6 .item_col:nth-last-child(2),
	.container_items.colw_4 .item_col:nth-last-child(2),
	.container_items.colw_4 .item_col:nth-last-child(3),
	.container_items.colw_3 .item_col:nth-last-child(2),
	.container_items.colw_3.item_col:nth-last-child(3),
	.container_items.colw_3 .item_col:nth-last-child(4){
		padding-bottom: 0;
	}
	*/

	.section.colw_3_9 .container_items .item_col,
	.container_items.colw_3_9 .item_col{
		grid-column: c3/c9;
	}
	.section.colw_2_10 .container_items .item_col,
	.container_items.colw_2_10 .item_col{
		grid-column: c2/c10;
	}

	.section.colw_6 .container_items .item_col:nth-child(2n+1),
	.container_items.colw_6 .item_col:nth-child(2n+1){
		grid-column: c0/c6;
	}
	.section.colw_6 .container_items .item_col:nth-child(2n+2),
	.container_items.colw_6 .item_col:nth-child(2n+2){
		grid-column: c6/c12;
	}

	.section.colw_4 .container_items .item_col:nth-child(3n+1),
	.container_items.colw_4 .item_col:nth-child(3n+1){
		grid-column: c0/c4;
	}
	.section.colw_4 .container_items .item_col:nth-child(3n+2),
	.container_items.colw_4 .item_col:nth-child(3n+2){
		grid-column: c4/c8;
	}
	.section.colw_4 .container_items .item_col:nth-child(3n+3),
	.container_items.colw_4 .item_col:nth-child(3n+3){
		grid-column: c8/c12;
	}

	.section.colw_3 .container_items .item_col:nth-child(4n+1),
	.container_items.colw_3 .item_col:nth-child(4n+1){
		grid-column: c0/c3;
	}
	.section.colw_3 .container_items .item_col:nth-child(4n+2),
	.container_items.colw_3 .item_col:nth-child(4n+2){
		grid-column: c3/c6;
	}
	.section.colw_3 .container_items .item_col:nth-child(4n+3),
	.container_items.colw_3 .item_col:nth-child(4n+3){
		grid-column: c6/c9;
	}
	.section.colw_3 .container_items .item_col:nth-child(4n+4),
	.container_items.colw_3 .item_col:nth-child(4n+4){
		grid-column: c9/c12;
	}

	.container_boxes.colw_6 .item_box:nth-child(2n+1){
		grid-column: screenleft/c6;
		border-right: none;
	}
	.container_boxes.colw_6 .item_box:nth-child(2n+2){
		grid-column: c6/screenright;
	}
		.container_boxes.colw_6 .item_box:nth-child(n+3){
			border-top: none;
		}


	.container_boxes.colw_4 .item_box:nth-child(3n+1){
		grid-column: screenleft/c4;
		border-right: none;
	}
	.container_boxes.colw_4 .item_box:nth-child(3n+2){
		grid-column: c4/c8;
		border-right: none;
	}
	.container_boxes.colw_4 .item_box:nth-child(3n+3){
		grid-column: c8/screenright;
	}
		.container_boxes.colw_4 .item_box:nth-child(n+4){
			border-top: none;
		}

}
@media only screen and (max-width : 1180px) and (min-width : 769px) {

	/* to fix for: .container_items .item_col:not(:last-child) */
	/*.section.colw_3 .container_items .item_col:nth-last-child(2),
	.container_items.colw_3 .item_col:nth-last-child(2){
		padding-bottom: 0;
	}*/

	.section.colw_3_9 .container_items .item_col,
	.container_items.colw_3_9 .item_col{
		grid-column: c1/c11;
	}
	.section.colw_2_10 .container_items .item_col,
	.container_items.colw_2_10 .item_col{
		grid-column: c0/c12;
	}

	.section.colw_6 .container_items .item_col,
	.section.colw_4 .container_items .item_col,
	.container_items.colw_6 .item_col,
	.container_items.colw_4 .item_col{
		grid-column: c0/c12;
	}
	.section.colw_3 .container_items .item_col:nth-child(2n+1),
	.container_items.colw_3 .item_col:nth-child(2n+1){
		grid-column: c0/c6;
	}
	.section.colw_3 .container_items .item_col:nth-child(2n+2),
	.container_items.colw_3 .item_col:nth-child(2n+2){
		grid-column: c6/c12;
	}

	.container_boxes.colw_6 .item_box:nth-child(2n+1){
		grid-column: screenleft/c6;
		border-right: none;
	}
	.container_boxes.colw_6 .item_box:nth-child(2n+2){
		grid-column: c6/screenright;
	}
		.container_boxes.colw_6 .item_box:nth-child(n+3){
			border-top: none;
		}
	.container_boxes.colw_4 .item_box:nth-child(3n+1){
		grid-column: screenleft/c4;
		border-right: none;
	}
	.container_boxes.colw_4 .item_box:nth-child(3n+2){
		grid-column: c4/c8;
		border-right: none;
	}
	.container_boxes.colw_4 .item_box:nth-child(3n+3){
		grid-column: c8/screenright;
	}
		.container_boxes.colw_6 .item_box:nth-child(n+4){
			border-top: none;
		}

}
@media only screen and (max-width : 768px) {

	.section.colw_3_9 .container_items .item_col,
	.container_items.colw_3_9 .item_col,
	.section.colw_2_10 .container_items .item_col,
	.container_items.colw_2_10 .item_col,
	.section.colw_6 .container_items .item_col,
	.section.colw_4 .container_items .item_col,
	.section.colw_3 .container_items .item_col,
	.container_items.colw_6 .item_col,
	.container_items.colw_4 .item_col,
	.container_items.colw_3 .item_col{
		grid-column: c0/c12;
	}
		.section.colw_6 .container_items .item_col:not(:last-child),
		.section.colw_4 .container_items .item_col:not(:last-child),
		.section.colw_3 .container_items .item_col:not(:last-child){
			padding-bottom: var(--sectionpad05x);
		}

	.container_boxes.colw_6 .item_box,
	.container_boxes.colw_4 .item_box{
		grid-column: screenleft/screenright;
	}
		.section_boxes.colw_4 .container_boxes .item_box:not(:first-child),
		.section_boxes.colw_6 .container_boxes .item_box:not(:first-child){
			border-top: 0;
		}
		.container_boxes .item_box .group-imagecut svg.imagecut{
			padding: 0;
		}
		.container_boxes .item_box .h4{
			font-size: var(--size-h3);
		}
}

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

/*-------- HEADER + MENU ------------------------------------------- */
#site-header{
/*	position: absolute;*/
	position: fixed;
	z-index: 404;
	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-cream);
		fill: var(--theme-cream);
	}

	body.scrolling:not(.scroll-up):not(.menu-open) #site-header{
		top: -100px;
		transition: all 0.35s ease;
	}


.section_site_header{}
.section_site_header .container_body{
	align-items: center;
}
	.section_site_header .container_body .header_logo{
		grid-column: c0/c4;
		justify-self: start;
	}
		.section_site_header .container_body .header_logo img,
		.section_site_header .container_body .header_logo svg{
			display: inline-block;
			vertical-align: middle;
			max-width: 100%;
		}

	.section_site_header .container_body .header_tagline{
		grid-column: c4/c8;
		justify-self: center;
	}
	.section_site_header .container_body .header_menu{
		grid-column: c8/c12;
		justify-self: end;
		white-space: nowrap;
	}
		.section_site_header .container_body .header_menu .content > a:not(:last-child),
		.section_site_header .container_body .header_menu .content > button:not(:last-child){
			margin-right: 12px;
		}


	.section_site_header .container_body .mobile-only,
	ul#menu-text_buttons .desktop-only,
	.section_site_header .mobile-only,
	.section_site_menu .mobile-only{
		display: none;
	}


#site-menu{
	position: fixed;
	z-index: 403;
	top: 0;
	left: 0;
	width: 100%;
	height: 100dvh;
}
.section_site_menu{
	padding: var(--sectionpad2x) 0 0 0;
	background-image: url('../images/bg-menu-pattern2_redwood.svg');
	background-size: 100% auto;
	background-position: top left;
}
	.section_site_menu .container_body{
		min-height: 100%;
		height: auto;
		overflow: auto;
		box-sizing: border-box;
		padding-bottom: var(--sectionpad2x);
	}
		.section_site_menu .container_body .item_nav{
			grid-column: c7/c12;
			grid-row: 1/4;
			text-align: right;
		}
		.section_site_menu .container_body .item_text{
			grid-column: c0/c5;
			grid-row: 3/4;
			align-self: end;
		}
		.section_site_menu .container_body .item_text p.readmores{
			margin-top: var(--sectionpad);
		}

#toggle_site-menu{
	display: inline-block;
	vertical-align: middle;
	/*width: 112px;*/
	width: auto;
	height: 38px;
	padding: 8px 12px;
	position: relative;
	border-color: transparent;
}
	#toggle_site-menu .burger{
		display: block;
		width: 24px;
		height: 20px;
		position: relative;
		box-sizing: border-box;
	}
	#toggle_site-menu .burger span{
		display: block;
		position: absolute;
		width: 100%;
		height: 2px;
		background-color: currentColor;
		transition: all 0.35s ease-in-out;
		transform-origin: center;
	}
		#toggle_site-menu .burger span.ltop{ top: 0px; }
		#toggle_site-menu .burger span.lmid{ top: 9px; }
		#toggle_site-menu .burger span.lbtm{ top: 18px; }
			body.menu-open #toggle_site-menu .burger span.ltop{ 
				transform: rotate3d(0, 0, 1, 45deg); top: 9px;
			}
			body.menu-open #toggle_site-menu .burger span.lmid{ 
				opacity: 0;
			}
			body.menu-open #toggle_site-menu .burger span.lbtm{ 
				transform: rotate3d(0,0, 1, -45deg); top: 9px;
			}

ul#menu-mainnav_buttons,
ul.menu-mainnav_buttons{
	display: inline-block;
	vertical-align: middle;
	list-style-type: none;
	margin: 0;
	padding: 0;
	height: 38px;
	box-sizing: border-box;
/*    white-space: nowrap;*/
}
	ul#menu-text_buttons{
		margin-top: var(--size-h3);
	}

	ul#menu-mainnav_buttons li,
	ul.menu-mainnav_buttons li{
		display: inline-block;
    	vertical-align: baseline;
    	position: relative;
    	margin-right: 8px;
	}
/*		ul#menu-mainnav_buttons li:not(:last-child){}*/
	ul#menu-mainnav_buttons li a,
	ul.menu-mainnav_buttons li a{
		display: block;
		height: 38px;
		width: auto;
		margin: 0;
		box-sizing: border-box;
		white-space: nowrap;
		font-size: var(--size-button);
    	font-weight: 500;
    	font-family: var(--fontfam-smallcaps);
    	text-transform: uppercase;
    	line-height: 20px;
		text-decoration: none!important;
	    border: 1px solid var(--theme-iris);
	    border-radius: 20px;
	    padding: 8px 12px;
	    background-color: var(--theme-iris);
    	color: var(--theme-cream);
    	fill: var(--theme-cream);
	}

/*	body.menu-open */
/* moth on top of close button, removed 14/5/25 */
	/*
	#toggle_site-menu[aria-expanded="true"]{
		border-color: var(--theme-terracotta);
		color: var(--theme-terracotta);
	}

	#toggle_site-menu[aria-expanded="true"],
	body.menu-open #toggle_site-menu[aria-expanded="true"],
	body.menu-open #toggle_site-menu[aria-expanded="true"]:hover{
		background-color: transparent;
		color: transparent;
	}	
	#toggle_site-menu::after{
		content: '';
		display: block;
		width: 70px;
		height: 60px;
		position: absolute;
		top: 18px;
		right: 18px;
		opacity: 0;
		background-image: url('../images/icon-moth_header.svg');
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		transition: all 0.35s ease;
	}
		#toggle_site-menu[aria-expanded="true"]::after{
			top: -1px;
		    opacity: 1;
		    transition: all 0.35s ease;
		}
	*/


ul#menu-mainnav_primary{
	display: block;
	list-style-type: none;
	margin: 0;
	padding: 0;
	line-height: 0.9;
}
	ul#menu-mainnav_primary li{
		display: block;
		margin: 0;
		padding: 0;
	}
		ul#menu-mainnav_primary li:not(:last-child){
			margin-bottom: 8px;
		}
		ul#menu-mainnav_primary li > a{}


@media (hover: hover){

	body:not(.is-device_android) ul#menu-mainnav_primary li > a:hover{
		color: var(--theme-eggplant);
		fill: var(--theme-eggplant);
	}

}

/*-------- FOOTER + MENU --------------------------------------------------- */

.section_site_footer{
	overflow: hidden;
}
	.section_site_footer .container_graphic_overlay{
		position: relative;
		border-bottom: 2px solid var(--theme-sage);
	}

		.section_site_footer .container_graphic_overlay .item_graphic{
			grid-column: screenleft/screenright;
			position: relative;
			overflow: visible;
		} 
			.section_site_footer .container_graphic_overlay .item_graphic::after{
				content: '';
				width: 100%;
				height: 4px;
				display: block;
				position: absolute;
				bottom: -3px;
				background-color: var(--theme-sage);
			}

			.section_site_footer .container_graphic_overlay .item_graphic svg{
				position: relative;
				display: block;
				width: 100%;
				height: 108px;
			}

	.section_site_footer .container_info{}
		.section_site_footer .container_info .content + .content{
			margin-top: var(--sectionpad05x);
		}

		.section_site_footer .container_info .item_contact_address p,
		.section_site_footer .container_info ul#menu-social_inline{
			margin-top: 0;
		}

		.section_site_footer .container_info .item_newsletter{
			grid-column: c4/c8;
			grid-row: 1/2;
			text-align: center;
			padding-bottom: var(--sectionpad05x);
		}
			.section_site_footer .container_info .item_newsletter form{
				width: 80%;
				margin: 0 auto;
			}

		.section_site_footer .container_info .item_featlink{
			grid-column: c4/c8;
			grid-row: 2/6;
			text-align: center;
			padding-bottom: var(--sectionpad05x);
		}
			.section_site_footer .container_info .item_featlink .featlink_icon{
				margin-top: var(--contentpad);
			}
			.section_site_footer .container_info .item_featlink .icon{}

		.section_site_footer .container_info .item_contact_service{
			grid-column: c2/c4;
			grid-row: 3/6;
			align-self: end;
		}
			.section_site_footer .container_info .contact-meta{
				font-family: 'Rooftop Mono', monospace;
				font-size: var(--size-p-sml);
				text-transform: uppercase;
			}
		.section_site_footer .container_info .item_contact_getintouch{
			grid-column: c8/c10;
			grid-row: 3/6;
			text-align: right;
			align-self: end;
		}
			.section_site_footer .container_info .item_contact_social{
				grid-column: c8/c10;
				grid-row: 3/5;
				text-align: right;
			}
			.section_site_footer .container_info .item_contact_address{
				grid-column: c8/c10;
				grid-row: 5/6;
				text-align: right;
				align-self: end;
				padding-top: var(--sectionpad05x);
			}

		.section_site_footer .container_info .item_logo{
			grid-column: c0/c12;
			grid-row: 6/7;
			text-align: center;
			padding: var(--sectionpad) 0 0 0;
		}
			.section_site_footer .container_info .item_logo .logo{
				display: block;
				width: 100%;
				height: auto;
				padding-bottom: var(--sectionpad05x);
				border-bottom: 1px solid;
			}

		p.contact-meta,
		.section_site_footer .container_info .content.text p,
		.section_site_footer .container_info .content.text ul{
			line-height: 1.2;
			margin: var(--contentpad) 0 0 0;
		}
		/*a.underline,
		.section_site_footer .container_info .content.text a.underline{
			text-decoration: underline;
		}*/

	.section_site_footer .container_foot{
		padding: var(--contentpad) 0 var(--contentpad2x) 0;
		font-size: var(--size-p-sml);
	}
		.section_site_footer .container_foot .item_copyright{
			grid-column: c0/c8;
		}
		.section_site_footer .container_foot .item_siteby{
			grid-column: c8/c12;
			text-align: right;
		}

		.section_site_footer .container_foot p,
		.section_site_footer .container_foot ul{
			margin: 0;
			padding: 0;
		}


ul#menu-social_inline{
	display: block;
	list-style-type: none;
	padding: 0;
	font-family: 'Rooftop Mono', monospace;
	text-transform: uppercase;
	font-size: var(--size-p-sml);
}
	ul#menu-social_inline li{
		display: block;
		margin: 0;
		padding: 0;
	}
	ul#menu-social_inline li:not(:last-child){
		margin-bottom: var(--contentpad);
	}
	/*ul#menu-social_inline li a{
		text-decoration: underline;
	}*/


ul#menu-footer_tc{
	display: block;
	list-style-type: none;
	padding: 0;	
}
	ul#menu-footer_tc li{
		display: inline-block;
		vertical-align: middle;
	}
	ul#menu-footer_tc li:not(:last-child){
		margin-right: var(--contentpad2x);
	}


@media (hover: hover){}

/*-------- BANNER ---------------------------------------------------------- */

.section.section_banner{
	padding-top: var(--sectionpad2x);
}
	.section_banner .container_body .item_heading{
		grid-column: c3/c9;
		text-align: center;
	}
	.section_banner .container_body .item_subheading{
		grid-column: c3/c9;
		text-align: center;
		padding-top: var(--contentpad2x);
	}
	.section_banner .container_body .item_text{
		grid-column: c3/c9;
		padding-top: var(--sectionpad);
	}


.section_banner.banner-home{
	padding-bottom: 0;
}
	.section_banner.banner-home .container_intro{
		height: calc(100lvh - var(--sectionpad2x) );
		grid-template-rows: [r0] auto [r1] var(--sectionpad05x) [r2] auto [r3] var(--sectionpad) [r4] auto [r5] auto [r6] auto [r7] var(--sectionpad) [r8];
		background-color: inherit!important;/* this is to do with colour swap in animationTimeline of homepage banner */
	}
		.section_banner .container_intro .item_logo{
			grid-column: c3/c9;
			grid-row: r2/r3;
			z-index: 6;
			padding-top: var(--contentpad2x);
		}
			.section_banner .container_intro .item_logo img,
			.section_banner .container_intro .item_logo svg{
				display: block;
				max-width: 100%;
				height: auto;
			}
		.section_banner .container_intro .item_intro{
			grid-column: c6/c10;
			grid-row: r4/r7;
			z-index: 6;
		}
			.section_banner .container_intro .item_intro p.readmores{
			 	margin-top: var(--sectionpad05x);
			}

		.section_banner .container_intro .item_image{
			overflow: hidden;
		}
			.section_banner .container_intro .item_image svg.imagecut{
				padding: 0;
			}

		.section_banner .container_intro .item_image_1{
			grid-column: c8/c10;
			margin-top: calc(var(--sectionpad2x)* -1);
			grid-row: r0/r1;
			text-align: right;
		}
			.section_banner .container_intro .item_image_1 img{
				aspect-ratio: 0.67/1;
				align-self: start;
			}
		.section_banner .container_intro .item_image_2{
			grid-column: c1/c4;
			grid-row: r2/r7;
		}
			.section_banner .container_intro .item_image_2 img{
				aspect-ratio: 0.71/1;
			}
		.section_banner .container_intro .item_image_3{
			grid-column: c9/screenright;
			grid-row: r4/r8;
			text-align: right;
		}

	.section_banner.banner-animated .gallery-img.floating-image{
		position: absolute;
		top: calc(50vh - ( var(--colw) * 2.0 ) - var(--sectionpad) );
		left: calc(50vw - ( var(--colw) * 1.5 ) );
		width: calc( var(--colw) * 3);
		aspect-ratio: 3 / 4;
	}
		.section_banner .gallery-img.floating-image img,
		.section_banner.banner-animated .gallery-img.floating-image img,
		.section_banner.banner-animated .gallery-img.floating-image svg{
			display: block;
			height: 100%;
			width: 100%;
			object-fit: contain;
			object-position: center;
		}
		.section_banner .gallery-img.floating-image.moving-out img,
		.section_banner.banner-animated .gallery-img.floating-image.moving-out img,
		.section_banner.banner-animated .gallery-img.floating-image.moving-out svg{
			object-position: top;
		}

		.section_banner.banner-animated .gallery-img.floating-image .group-imagecut svg.imagecut{
			padding: 0 0;
		}
	.section_banner.banner-animated svg.floating-moth{
		position: absolute;
		display: block;
		width: 250px;
		height: auto;
		z-index: 11;
  		top: calc(100vh - 200px - var(--sectionpad));
  		left: calc(100vw - 250px - (var(--colw) * 3));
  		fill: inherit;
	}
		.section_banner.banner-animated.bg-terracotta svg.floating-moth,
		.section_banner.banner-animated.bg-redwood svg.floating-moth{
			fill: var(--theme-eggplant);
		}
		.section_banner.banner-animated.bg-coffee svg.floating-moth{
			fill: var(--theme-cream);
		}
		.section_banner.banner-animated.bg-sage svg.floating-moth{
			fill: var(--theme-eggplant);
		}
		.section_banner.banner-animated.bg-white svg.floating-moth,
		.section_banner.banner-animated.bg-cream svg.floating-moth{
			fill: var(--theme-iris);
		}
		.section_banner.banner-animated.bg-eggplant svg.floating-moth{
			fill: var(--theme-sage);
		}



	.section_banner.banner-home .container_tagline{
		padding-bottom: var(--sectionpad);
	}
		.section_banner .container_tagline .item_graphic_overlay{
			grid-row: 1/2;
			grid-column: screenleft/screenright;
		}
			.section_banner .container_tagline .item_graphic_overlay svg,
			.section_banner .container_tagline .item_graphic_overlay img{
				display: block;
  				width: 100%;
  				height: auto;
			}

		.section_banner .container_tagline .item_graphic{
			grid-row: 1/3;
			grid-column: c3/c6;
			top: calc(var(--sectionpad05x)* -1);
		}
			.section_banner .container_tagline .item_graphic svg,
			.section_banner .container_tagline .item_graphic img{
				display: block;
				max-width: 100%;
				height: auto;
			}

			.section_banner svg.bnr-graphic .bnr-fg-1{
				animation: blobblobbing_f1 7s ease-in-out infinite;
			}
			.section_banner svg.bnr-graphic .bnr-fg-2{
				animation: blobblobbing_f2 9s ease-in-out infinite;
			}
			.section_banner svg.bnr-graphic .bnr-fg-3{
				animation: blobblobbing_f3 8s ease-in-out infinite;
			}

		@keyframes blobblobbing_f1{
			0%, 100% {
				transform: translate(0px,0px);
			}
			50% {
				transform: translate(0px, 10px)
			}
		}
		@keyframes blobblobbing_f2{
			0%, 100% {
				transform: translate(0px,-5px);
			}
			50% {
				transform: translate(0px, 5px)
			}
		}
		@keyframes blobblobbing_f3{
			0%, 100% {
				transform: translate(0px,0px);
			}
			50% {
				transform: translate(0px, -10px)
			}
		}



		.section_banner .container_tagline .item_tagline{
			grid-row: 3/4;
			grid-column: c4/c9;
			padding-top: var(--sectionpad05x);
			padding-bottom: var(--sectionpad);
		}
		.section_banner .container_tagline .item_overlay{
			grid-row: 3/4;
			grid-column: c2/c11;
			padding-bottom: var(--sectionpad05x);
		}
			.item_overlay .flexcontainer_tagoverlay{
				text-align: center;
				row-gap: calc( var(--size-h1) * 1.2 );
				column-gap: 0;
				padding: 0 var(--sectionpad);
			}
			.item_overlay .flexcontainer_tagoverlay .flexitem_tag{}
			.item_overlay .flexcontainer_tagoverlay .flexitem_tag:first-child{
				flex-basis: 100%;
			}
			.item_overlay .flexcontainer_tagoverlay .flexitem_tag > span{
				display: inline-block;
				vertical-align: middle;
				text-align: left;
			}

.section_banner.banner-graphic{}
	.section_banner.banner-graphic .container_body .item_heading{
		grid-row: 1/2;
		z-index: 3;
	}
	.section_banner.banner-graphic .container_body .item_subheading{
		grid-row: 2/3;
		z-index: 3;
	}
	.section_banner.banner-graphic .container_body .item_graphic{
		grid-column: c1/c11;
		grid-row: 1/4;
		z-index: 0;
		margin-top: calc(var(--sectionpad)* -1);
	}
		.section_banner.banner-graphic .container_body .item_graphic img,
		.section_banner.banner-graphic .container_body .item_graphic svg{
			display: block;
			width: 100%;
			height: auto;
		}

	.section_banner.banner-graphic .container_body .item_text{
		grid-row: 4/5;
	}

.section_banner.banner-gallery{}
	.section_banner.banner-gallery .container_body .item_heading{}
	.section_banner.banner-gallery .container_body .item_subheading{}
	.section_banner.banner-gallery .container_body .item_gallery{
		padding-top: var(--sectionpad);
		grid-column: screenleft/screenright;
	}
		.item_gallery .flexcontainer_galrow{
			flex-wrap: nowrap;
		}
		.item_gallery .flexcontainer_galrow .flexitem_galcol{
			flex-grow: 1;
			flex-shrink: 1;
			flex-basis: 0px;
		}
		.item_gallery .flexcontainer_galrow .flexitem_galcol img{
			display: block;
			width: 100%;
			aspect-ratio: 6/10;
    		max-height: 60vh;
    		border: 1px solid;
    		box-sizing: border-box;
		}
			.item_gallery .flexcontainer_galrow .flexitem_galcol img:not(:first-child){
				border-left: 0;
			}
			.item_gallery .flexcontainer_galrow .flexitem_galcol img:not(:last-child){
				border-right: 0;
			}


	.section_banner.banner-gallery .container_body .item_text{}

.section_banner.banner-text{}


/*-------- SECTION BUILDER ------------------------------------------------- */

.section,
.container_layout{
	position: relative;
	box-sizing: border-box;
	padding: var(--sectionpad) 0;
}
	.section.bg-white:not(.section_boxes) + .section.bg-white,
	.section.bg-cream:not(.section_boxes) + .section.bg-cream,
	.section.bg-coffee:not(.section_boxes) + .section.bg-coffee,
	.section.bg-terracotta:not(.section_boxes) + .section.bg-terracotta,
	.section.bg-redwood:not(.section_boxes) + .section.bg-redwood,
	.section.bg-eggplant:not(.section_boxes) + .section.bg-eggplant,
	.section.bg-sage:not(.section_boxes) + .section.bg-sage,
	.container_layout + .container_layout{
		padding-top: 0;
	}

	.container_layout:first-child{
		padding-top: 0;
	}
	.container_layout:last-child{
		padding-bottom: 0;
	}

	.container_header .item_heading{
		grid-column: c3/c9;
		text-align: center;
	}
		.container_header .item_heading h2{
			margin-top: 0;
			margin-bottom: var(--sectionpad05x);
		}

.section.section_hero{}
	.section.section_boxes + .section_hero{
		padding-top: 0;
	}

	.section_hero .container_hero{}
		.section_hero .container_hero .item_image{
			grid-column: screenleft/screenright;
		}
			.section_hero .container_hero .item_image img{
				width: 100%;
				height: auto;
				max-height: calc( 100svh - var(--sectionpad) - 108px );
				object-fit: cover;
				object-position: top;
			}

	main.site-main .section.section_hero:last-child{
		padding-bottom: 0;
		margin-bottom: -108px;
	}
	main.site-main .section:not(.section_hero):last-child{
		padding-bottom: calc( var(--sectionpad) + 108px );
		margin-bottom: -108px;
	}


.section.section_2img_text{}
	.section_2img_text .container_body{}
		.section_2img_text .container_body .item_heading{
			grid-column: c4/c8;
			grid-row: 2/4;
			text-align: center;
		}
			.section_2img_text .container_body .item_heading .hoverstack h2{
				margin-top: 0;
				margin-bottom: var(--sectionpad05x);
			}

		.section_2img_text .container_body .item_image_left{
			grid-column: c0/c4;
			grid-row: 1/5;
		}
		.section_2img_text .container_body .item_image_right{
			grid-column: c8/screenright;
			grid-row: 3/6;
		}
	.section_2img_text .container_layout{}
		.section_2img_text .container_layout.layout_table .item_row{
			grid-column: c3/c9;
		}


.section.section_3img_links{}
	.section_3img_links .container_links{
		grid-template-rows: [r0] 0 [r1] var(--sectionpad2x) [r2] var(--sectionpad05x) [r3] var(--sectionpad) [r4] auto [r5] var(--sectionpad05x) [r6];
	}
		.section_3img_links .container_links .item_link{}
		.section_3img_links .container_links .item_link.link_1{
			grid-column: c0/c3;
			grid-row: r0/r4;
		}
		.section_3img_links .container_links .item_link.link_2{
			grid-column: c5/c8;
			grid-row: r2/r6;
		}
		.section_3img_links .container_links .item_link.link_3{
			grid-column: c9/c11;
			grid-row: r3/r5;
		}
			.section_3img_links .container_links .boxed-link{
				display: block;
				position: relative;
				box-sizing: border-box;
				border: 1px solid transparent;
				padding: var(--boxpad);
			}
			.section_3img_links .container_links .boxed-link .h6{
				margin: 0;
				padding: var(--boxpad) 0 0 0;
			}


/*
 * text style: [secondar_text_bottom|secondar_text_left|secondar_text_right]
 * heading style: [heading_narrow|heading_mid|heading_wide]
 */
.section.section_3img_text{}

/* V2 - simplified. */
	/* ( heading_narrow + secondar_text_bottom ) */
	.section_3img_text.style_cafe .container_body .item_heading{
		grid-column: c4/c7;
		grid-row: 1/3;
	}
		.section_3img_text.style_cafe .container_body .item_heading .content{
			margin-bottom: var(--sectionpad05x);
		}

	.section_3img_text.style_cafe .container_body .item_text_1{
		grid-column: c4/c10;
		grid-row: 4/6;
		padding-top: var(--sectionpad);
		align-self: end;
	}
	.section_3img_text.style_cafe .container_body .item_image_l{
		grid-column: screenleft/c3;
		grid-row: 3/6;
		align-self: end;
	}
		.section_3img_text.style_cafe .container_body .item_image_l .content{
			padding-left: 0;
			padding-right: var(--contentpad2x);
		}

	.section_3img_text.style_cafe .container_body .item_image_r{
		grid-column: c7/screenright;
		grid-row: 1/4;
	}
		.section_3img_text.style_cafe .container_body .item_image_r .content{
			padding-left: var(--contentpad2x);
			padding-right: 0;
		}

	.section_3img_text.style_cafe .container_body .item_image_b{
		grid-column: c1/c11;
		grid-row: 6/7;
		padding-top: var(--sectionpad);
	}
	.section_3img_text.style_cafe .container_body .item_text_2{
		grid-column: c4/c7;
		grid-row: 7/8;
		padding-top: var(--sectionpad);
	}
	/* ( heading_mid + secondar_text_right ) */
	.section_3img_text.style_venue .container_body .item_heading{
		grid-column: c0/c6;
		grid-row: 1/3;
	}	
		.section_3img_text.style_venue .container_body .item_heading .content{
			margin-bottom: var(--sectionpad05x);
		}

	.section_3img_text.style_venue .container_body .item_text_1{
		grid-column: c4/c10;
		grid-row: 4/6;
  		padding-top: var(--sectionpad);
  		align-self: center;
	}
	.section_3img_text.style_venue .container_body .item_image_l{
		grid-column: c0/c3;
		grid-row: 3/6;
		align-self: end;
	}
	.section_3img_text.style_venue .container_body .item_image_r{
		grid-column: c6/screenright;
		grid-row: 1/4;
		align-self: end;
	}
		.section_3img_text.style_venue .container_body .item_image_r .content{
			padding-left: var(--contentpad2x);
			padding-right: 0;
		}
	.section_3img_text.style_venue .container_body .item_image_b{
		grid-column: c1/c7;
		grid-row: 7/8;
		padding-top: var(--sectionpad);
	}
	.section_3img_text.style_venue .container_body .item_text_2{
		grid-column: c7/c11;
		grid-row: 7/8;
		align-self: end;
		padding-top: var(--sectionpad);
	}
	/* ( heading_wide + secondar_text_left ) */
	.section_3img_text.style_events .container_body .item_heading{
		grid-column: c0/c6;
		grid-row: 1/3;
	}
		.section_3img_text.style_events .container_body .item_heading .content{
			margin-bottom: var(--sectionpad05x);
		}

	.section_3img_text.style_events .container_body .item_text_1{
		grid-column: c3/c9;
		grid-row: 4/6;
		justify-self: end;
		padding-bottom: var(--sectionpad);
	}
	.section_3img_text.style_events .container_body .item_image_l{
		grid-column: c0 / c3;
  		grid-row: 3/7;
	}
	.section_3img_text.style_events .container_body .item_image_r{
		grid-column: c9/c12;
		grid-row: 1/4;
		bottom: var(--sectionpad);
	}
	.section_3img_text.style_events .container_body .item_image_b{
		grid-column: c6/c11;
		grid-row: 6/9;
		align-self: end;
	}
	.section_3img_text.style_events .container_body .item_text_2{
		grid-column: c0/c6;
		grid-row: 8/9;
		align-self: end;
	}

	/* style_basic => primary text only */
	.section.section_3img_text.style_basic{}
	.section.section_3img_text.style_basic .container_body{
		padding: var(--sectionpad) 0;
	}

	.section_3img_text.style_basic .container_body .item_heading{
		grid-column: c3/c9;
		text-align: center;
	}	
		.section_3img_text.style_basic .container_body .item_heading .content{
			margin-bottom: var(--sectionpad05x);
		}

	.section_3img_text.style_basic .container_body .item_text_1{
		grid-column: c3/c9;
		text-align: center;
	}

	.section_3img_text.style_basic .container_body .item_image_l,
	.section_3img_text.style_basic .container_body .item_image_r,
	.section_3img_text.style_basic .container_body .item_image_b,
	.section_3img_text.style_basic .container_body .item_text_2{
		display: none;
	}


/* V1 - Too bothersome to manage.
	.section_3img_text .container_body{}
		.section_3img_text.heading_narrow .container_body .item_heading{
			grid-column: c4/c7;
			grid-row: 1/3;
			padding-bottom: var(--sectionpad05x);
		}
		.section_3img_text.heading_narrow .container_body .item_text_1{
			grid-column: c4/c11;
			grid-row: 4/6;
		}
		.section_3img_text.heading_narrow .container_body .item_image_l{
			grid-column: c0/c3;
			grid-row: 3/6;
		}
		.section_3img_text.heading_narrow .container_body .item_image_r{
			grid-column: c7/c12;
			grid-row: 1/5;
			justify-self: end;
			align-self: end;
		}

		.section_3img_text.heading_mid .container_body .item_heading{
			grid-column: c0/c6;
			grid-row: 1/3;
			padding-bottom: var(--sectionpad05x);
		}
		.section_3img_text.heading_mid .container_body .item_text_1{
			grid-column: c4/c10;
			grid-row: 5 / 8;
  			padding: var(--sectionpad) 0;
  			align-self: center;
		}
		.section_3img_text.heading_mid .container_body .item_image_l{
			grid-column: c0/c3;
			grid-row: 3/8;
			padding-bottom: var(--sectionpad);
		}
		.section_3img_text.heading_mid .container_body .item_image_r{
			grid-column: c6/screenright;
			grid-row: 1/5;
			align-self: end;
		}

		.section_3img_text.heading_wide .container_body .item_heading{
			grid-column: c0/c7;
			grid-row: 2/3;
			padding-bottom: var(--sectionpad05x);
		}
		.section_3img_text.heading_wide .container_body .item_text_1{
			grid-column: c3/c9;
			grid-row: 4/6;
			justify-self: end;
			padding: var(--sectionpad) 0;
		}
		.section_3img_text.heading_wide .container_body .item_image_l{
			grid-column: c0/c3;
			grid-row: 3/6;
		}
			.section_3img_text.heading_narrow.secondar_text_left .container_body .item_image_l,
			.section_3img_text.heading_mid.secondar_text_left .container_body .item_image_l,
			.section_3img_text.heading_wide.secondar_text_left .container_body .item_image_l{
				grid-row: 3/8;
			}

		.section_3img_text.heading_wide .container_body .item_image_r{
			grid-column: c9/c12;
			grid-row: 1/5;
			justify-self: end;
			align-self: start;
			top: calc(var(--sectionpad)* -1);
		}

		.section_3img_text.secondar_text_bottom .container_body .item_image_b{
			grid-column: c1/c11;
			grid-row: 10/11;
		}
		.section_3img_text.secondar_text_bottom .container_body .item_text_2{
			grid-column: c4/c7;
			grid-row: 11/12;
		}

		.section_3img_text.secondar_text_left .container_body .item_image_b{
			grid-column: c1/c6;
			grid-row: 8/9;
		}
		.section_3img_text.secondar_text_left .container_body .item_text_2{
			grid-column: c6/c11;
			grid-row: 9/10;
			align-self: end;
		}
		.section_3img_text.secondar_text_right .container_body .item_image_b{
			grid-column: c6/c11;
			grid-row: 9/10;
		}
		.section_3img_text.secondar_text_right .container_body .item_text_2{
			grid-column: c0/c6;
			grid-row: 7/10;
			align-self: end;
		}
*/
		


.section.section_boxes{
	padding-bottom: 0;
}
.section.section_boxes.no-heading{
	padding-top: 0;
}
	.section_boxes .container_header{
		padding-bottom: var(--sectionpad);
	}


	.section_boxes .container_boxes{}
		.section_boxes .container_boxes .item_box{
			border: 1px solid currentColor;
		}
			.item_box > .box{
				display: block;
				height: 100%;
				box-sizing: border-box;
				aspect-ratio: 4/3;
				overflow: auto;
			}
				.item_box.box_link > .box{
					padding: var(--sectionpad05x);
				}
				.item_box.box_image > .box{
					padding: 0 0;
				}
				.item_box.box_text > .box{
					padding: var(--boxpad);
				}
					.item_box.box_text > .box .flexitem_row:not(:last-child){
						padding-bottom: var(--contentpad2x);
					}

				.item_box.item_col > .box{
					aspect-ratio: unset;
					padding: var(--boxpad);
				}


				.item_box > .box .boxlink-title{
					display: block;
					position: absolute;
					top: 0;
					left: 0;
					width: 100%;
					z-index: 3;
					text-align: center;
					box-sizing: border-box;
				}
					.item_box > .box .boxlink-title h2.h3,
					.item_box > .box .boxlink-title h3{
						margin: 0 auto;
  						width: min-content;
					}

				.item_box > .box .boxlink-image.has-title{
					padding-top: var(--size-h3);
				}

				.item_box > .box .boxlink-arrow{
					position: absolute;
  					top: calc(65% - 18px);
  					left: calc(66% + 46px);
				}
				.item_box > .box .boxlink-text{
					text-align: center;
				}

			.group-imagecut svg.imagecut{
				display: block;
				width: 100%;
				height: auto;
				position: relative;
				margin: 0 auto;
				padding: 0 var(--sectionpad05x);
  				box-sizing: border-box;
			}
			.group-imagecut.light svg.imagecut .shadow{
				fill: var(--theme-white);
			}
				.section.bg-white .group-imagecut.light svg.imagecut .shadow{
					fill: var(--theme-cream);
				}
			.group-imagecut.dark svg.imagecut .shadow{
				fill: var(--theme-terracotta);
			}
				.section.bg-terracotta .group-imagecut.dark svg.imagecut .shadow{
					fill: var(--theme-eggplant);
				}

		.item_box.box_link{
			text-align: center;
		}
		.item_box.box_image{}
			.item_box.box_image img{
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center;
			}

		.item_box.box_text{}


.section.section_columns{}


.section.section_cta_link{}
	.section_cta_link .container_cta{}
	.section_cta_link .container_cta .item_link{
		grid-column: c3/c9;
		text-align: center;
	}


.section.section_hero{}


.section.section_layouts{}
	.section_layouts .layout_accordion .item_accordion{
		grid-column: c3/c9;
	}




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

.container_layout{}

.container_layout.layout_text{}
	.layout_text .item_heading{
		grid-column: c3/c9;
		text-align: center;
	}
	.layout_text .item_text{
		grid-column: c3/c9;
	}

.container_layout.layout_accordion{}
	.layout_accordion .item_heading{}
	.layout_accordion .item_accordion{
		border-bottom: 1px solid;
	}
		.layout_accordion .item_accordion .flexcontainer_acc_head{}
			.layout_accordion .item_accordion .flexcontainer_acc_head .flexitem_label{
				flex-basis: 80%;
				flex-grow: 1;
				flex-shrink: 1;
			}
			.layout_accordion .item_accordion .flexcontainer_acc_head .flexitem_icon{
				flex-basis: 48px;
				text-align: right;
			}

		.layout_accordion .item_accordion .accordion_head,
		.layout_accordion .item_accordion button.accordion_head{
			display: block;
			width: 100%;
			margin: 0;
			padding: var(--contentpad) 0;
			border: 0;
			appearance: none;
			-webkit-appearance: none;
			background: transparent;
			text-align: left;
  			color: inherit;
  			fill: inherit;
		}
			.layout_accordion .item_accordion .accordion_head h3{
				margin: 0;
			}
			.layout_accordion .item_accordion .accordion_head svg{
				display: inline-block;
				vertical-align: middle;
			}
				.layout_accordion .item_accordion .accordion_head svg .vert{
					transform-origin: center;
					transition: all 0.35s ease;
				}
				.layout_accordion .item_accordion.open .accordion_head svg .vert{
					transform: rotate(90deg);
					transition: all 0.35s ease;
				}

		.layout_accordion .item_accordion .accordion_body{
			padding-bottom: var(--contentpad2x);
		}


.container_layout.layout_table{}
	.section_layouts .layout_table .item_row:first-child{
		border-top: 1px solid;
	}
	.layout_table .item_row{
		border-bottom: 1px solid;
	}

	.flexcontainer_tr{}
		.flexcontainer_tr > .flexitem_th{
			width: 33.33%;
		}
		.flexcontainer_tr > .flexitem_td{
			width: 66.67%;
		}
		.flexcontainer_tr > .flexitem_th .content,
		.flexcontainer_tr > .flexitem_td .content{
			padding-top: var(--contentpad2x);
			padding-bottom: var(--contentpad2x);
		}
		.flexitem_td p{
			margin: 0;
		}
		.flexitem_td button.row_toggle{
			display: block;
			padding-top: var(--contentpad);
		}

.container_layout.layout_imagepair{}
	.layout_imagepair .item_heroimg{
		grid-column: c1/c11;
		grid-row: 1/2;
	}
	.layout_imagepair .item_smlimg{
		grid-column: c8/c12;
		grid-row: 1/2;
	}
		.layout_imagepair .item_smlimg.pos_shape_4{}
		.layout_imagepair .item_smlimg.pos_shape_5{
			align-self: end;
			bottom: calc(var(--sectionpad05x)* -1);
		}

.container_layout.layout_gallery{
	overflow: hidden;
}
	.container_header + .container_layout.layout_gallery{
		padding-top: var(--sectionpad05x);
	}
	

	.layout_gallery .item_images{}
		.layout_gallery.gallery_landscape .item_images{
/*			grid-column: c2/c10;*/
			grid-column: c3/c9;
			text-align: center;
		}
		.layout_gallery.gallery_portrait .item_images{
			grid-column: c4/c8;
			text-align: center;
		}
			/* V1 - simple sticky stack */
			.layout_gallery .item_images .wrapper-image{
				position: sticky;
		    	top: 0;
		    	padding-bottom: var(--contentpad2x);
			}
			/* V2 - inline gallery stack: assume max is 5 */
			.layout_gallery .item_images .gallery-stack_hoverable{
				display: grid;
				align-items: center;
    			justify-content: center;
    			align-content: center;
/*    			padding-bottom: var(--contentpad2x);*/
    			position: relative;
    			max-height: calc( 100lvh - (var(--sectionpad2x) * 2) );
    			margin: var(--contentpad2x) auto;
			}
				.gallery-stack_hoverable .wrapper-hoverable,
				.gallery-stack_hoverable .wrapper-hoverable img{
					max-height: inherit;
					width: auto;
				}

			.gallery-stack_hoverable .wrapper-hoverable{
				grid-column: 1/2;
				grid-row: 1/2;
				position: relative;
				transition: all 0.35s ease;
			}	
				/* [edit 14/5/25] start rotating images as soon as visible */
				.gallery-stack_hoverable.aos-animate .wrapper-hoverable,
				.gallery-stack_hoverable.hover .wrapper-hoverable{
					animation-name: gallery_stack_hover;
    				animation-iteration-count: infinite;
    				animation-duration: 4s;
				}

				@keyframes gallery_stack_hover {
					/*0%{ z-index: 10; }
					12.5%{ z-index: 8; }
					25%{ z-index: 7; }
					37.5%{ z-index: 6; }
					50%{ z-index: 5; }
					62.5%{ z-index: 4; }
					75%{ z-index: 3; }
					87.5%{ z-index: 2; }
					100%{ z-index: 1; }*/
					0%{ z-index: 1; }
					20%{ z-index: 3; }
					40%{ z-index: 5; }
					60%{ z-index: 7; }
					80%{ z-index: 9; }
					100%{ z-index: 11; }
				}


				.gallery-stack_hoverable .wrapper-hoverable.active{
					z-index: 6;
				}
				.gallery-stack_hoverable .wrapper-hoverable img{
					display: block;
					margin: 0 auto;
				}
				/* normally, would expect reverse z-index for these, but due to stack already in reverse order.. */
				.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+1){
					top: 40px;
					left: -60px;
					animation-delay: -1s;
				}
					.gallery-stack_hoverable.aos-animate .wrapper-hoverable:nth-child(5n+1),
					.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+1),
					.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+1){
/*						left: calc( var(--colw) * -1.0 );*/
					}
				.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+2){
					top: 20px;
					left: -30px;
					animation-delay: -2s;
				}
					.gallery-stack_hoverable.aos-animate .wrapper-hoverable:nth-child(5n+2),
					.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+2),
					.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+2){
/*						left: calc( var(--colw) * -0.4 );*/
					}
				.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+3){
					top: 0px;
					left: 0px;
					animation-delay: -3s;
				}	
					.gallery-stack_hoverable.aos-animate .wrapper-hoverable:nth-child(5n+3),
					.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+3),
					.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+3){
/*						left: calc( var(--colw) * 0.2 );*/
					}
				.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+4){
					top: -20px;
					left: 30px;
					animation-delay: -4s;
				}
					.gallery-stack_hoverable.aos-animate .wrapper-hoverable:nth-child(5n+4),
					.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+4),
					.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+4){
/*						left: calc( var(--colw) * 0.8 );*/
					}
				.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+5){
					top: -40px;
					left: 60px;
					animation-delay: -5s;
				}	
					.gallery-stack_hoverable.aos-animate .wrapper-hoverable:nth-child(5n+5),
					.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+5),
					.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+5){
/*						left: calc( var(--colw) * 1.2 );*/
					}


	.layout_gallery .item_caption{
		grid-column: c3/c9;
		text-align: center;
		padding-top: var(--sectionpad05x);
	}

.container_layout.layout_contact{}
	.layout_contact .item_contact{
		grid-column: c1/c11;
		text-align: center;
	}


/*-------- POST / SINGLE / ARCHIVE --------------------------------------------------- */

/*-------- FORMS GFORM / WIDGET --------------------------------------------------------- */

/* style the form select dropdowns with js lib: */
body.broadbean-theme #tripleseat_embed_form .nice-select{
	display: block;
	width: 100%;
	height: 52px;
	box-sizing: border-box;
	border: 1px solid;
	background-color: transparent;
	color: inherit;
	padding: 8px 24px;
	border-radius: 0;
	position: relative;
	z-index: 11;
}
body.broadbean-theme #tripleseat_embed_form .nice-select.open .nice-select-dropdown{
  display: block;
  width: calc(100% + 2px);
  box-sizing: border-box;
  border: 0;
  background-color: var(--theme-cream);
  color: var(--theme-eggplant);
  padding: 0;
  border-radius: 0;
  margin: 1px 0 0 0;
  left: -1px;
}
body.broadbean-theme #tripleseat_embed_form .nice-select .list{
  margin: 0;
  padding: 8px 0;
}
	body.broadbean-theme #tripleseat_embed_form .nice-select .list .option{
		padding: 8px 24px;
		line-height: 1.3;
	}
	body.broadbean-theme #tripleseat_embed_form .nice-select .list .option:hover, 
	body.broadbean-theme #tripleseat_embed_form .nice-select .list .option.focus, 
	body.broadbean-theme #tripleseat_embed_form .nice-select .list .option.selected.focus{
		background-color: var(--theme-iris);
	}
	body.broadbean-theme #tripleseat_embed_form .nice-select .list .option.selected{
		font-weight: normal;
	}
		body.broadbean-theme #tripleseat_embed_form .nice-select .list .option.selected:not(:hover){
			color: var(--theme-cream);
			background-color: var(--theme-coffee)!important;
		}


/* normal  */
body.broadbean-theme #tripleseat_embed_form h2{
	font-size: var(--size-h4);
	margin: var(--contentpad) 0 8px 0;
	padding: var(--contentpad) 0 0 0;
	text-align: center;
}

/* avoid date and time selectors floating randomly: */
/* important: there are nested tables here... */
body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td{
	position: relative;
}
	body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td div.ui-datepicker{
		top: 36px!important;
		left: 0!important;
	}

/* also set better width for the time stuff - outside of form */
@media only screen and (max-width: 980px){
	body.broadbean-theme div.timeselect{
		width: calc( 100vw - var(--contentpad4x) - 4px );
	}
}



body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td[colspan="2"]{
	padding: 0 0 var(--contentpad) 0;
}
	body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td:not([colspan="2"]):nth-child(2n+1){
		padding-right: var(--contentpad);
		padding-left: 0;
	}
	body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td:not([colspan="2"]):nth-child(2n+2){
		padding-right: 0;
		padding-left: var(--contentpad);
	}

body.broadbean-theme #tripleseat_embed_form .g-recaptcha{
	margin-bottom: 0px;
  	padding: var(--contentpad) 0;
}

body.broadbean-theme #tripleseat_embed_form label{
	font-size: var(--size-p-sml);
	font-family: 'Rooftop Mono', monospace;
	text-transform: uppercase;
	font-weight: normal;
	color: inherit;
	margin: var(--contentpad) 0 8px 0;
	padding: 0;
}
	body.broadbean-theme #tripleseat_embed_form label span.required{
		color: inherit;
	}
body.broadbean-theme #tripleseat_embed_form td > input, 
body.broadbean-theme #tripleseat_embed_form td textarea,
body.broadbean-theme #tripleseat_embed_form td > select,
body.broadbean-theme #tripleseat_embed_form td > button{
	display: block;
	width: 100%;
	height: 52px;
	box-sizing: border-box;
	border: 1px solid;
	background-color: transparent;
	color: inherit;
	padding: 8px 24px;
}
	body.broadbean-theme #tripleseat_embed_form td textarea{
		resize: vertical;
		padding: 16px 24px;
	}
	body.broadbean-theme #tripleseat_embed_form td > button[type="submit"],
	body.broadbean-theme #tripleseat_embed_form td > nput[type="submit"]{
		width: 300px;
	}

	body.broadbean-theme #tripleseat_embed_form #lead_phone_number,
	body.broadbean-theme #tripleseat_embed_form #lead_guest_count{
		width: 100%;
	}


body.broadbean-theme #tripleseat_embed_form .row_robot_check{
	overflow: hidden;
}
body.broadbean-theme #tripleseat_embed_form .row_submit{
	position: relative;
	z-index: 2; /* because of recpatch box bug */
}
body.broadbean-theme #tripleseat_embed_form .row_submit a[href]{
	display: none;
	font-size: 10px !important;
  	font-family: 'Rooftop Mono', monospace;
  	text-transform: uppercase;
  	opacity: 0.5;
}


body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields{
	grid-column-gap: 0px;
	grid-row-gap: 0px;
}
	body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields .gfield--type-email{}
	body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields .gfield--type-submit{
		position: relative;
	}
		body.broadbean-theme .gform_wrapper.gravity-theme #field_submit, 
		body.broadbean-theme .gform_wrapper.gravity-theme .gform_footer{
			position: relative;
		}

		body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields input{
			display: block;
		  	width: 100%;
		  	height: 52px;
		  	box-sizing: border-box;
		  	border: 1px solid;
		  	background-color: transparent;
		  	color: inherit;
		  	padding: 8px 24px;
		}
			body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields input::placeholder{
				color: inherit;
			}

	@media only screen and (min-width: 640px){
		body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields input[type="email"]{
			border-right: 0;
		}
	}
	@media only screen and (max-width: 641px){
		body.broadbean-theme .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]){
			line-height: initial;
		}
		body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields input[type="email"]{
			border-bottom: 0;
			text-align: center;
		}
	}



	body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_footer{
		margin: 0;
		padding: 0;
	}


	body.broadbean-theme .gform_wrapper.gravity-theme button[type="submit"],
	body.broadbean-theme .gform_wrapper.gravity-theme input[type="submit"],
	body.broadbean-theme #tripleseat_embed_form input[type="submit"]{
		font-size: var(--size-button);
	    font-weight: 500;
	    text-transform: uppercase; 
	    white-space: nowrap;
	    cursor: pointer;
	}


	body.broadbean-theme .gform_wrapper.gravity-theme .gform_validation_errors{
		background: transparent;
		border-radius: 0;
		border: 0;
		box-shadow: none;
		margin-block-end: 0px;
		margin-block-start: 0px;
		padding-block: 0px;
		padding-inline-end: 0px;
		padding-inline-start:0px;
		padding: var(--contentpad2x) 0;
	}
		body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_validation_errors{
			display: none;
		}
		body.broadbean-theme .gform_wrapper.gravity-theme .gform_validation_errors>h2{
			font-family: var(--fontfam-text);
		}
		body.broadbean-theme .gform_wrapper.gravity-theme .gform_validation_errors>h2 .gform-icon{
			display: none;
		}

		body.broadbean-theme .gform_wrapper .gfield_validation_message, 
		body.broadbean-theme .gform_wrapper .gform_wrapper .validation_message,
		body.broadbean-theme .gform_wrapper.gravity-theme .gfield_description{
			display: block;
			border: 0;
			padding: 4px 10px;
			margin: 0 0;
			background: var(--theme-eggplant);
			color: var(--theme-cream);
			border: 0;
			border-top: 1px dashed var(--theme-cream);
			font-size: 12px;
		}
			body.broadbean-theme .gform_wrapper .gfield_validation_message::before, 
			body.broadbean-theme .gform_wrapper .gform_wrapper .validation_message::before{
				content: '\2191\A0\A0';
  				display: inline;
			}

/*			body.broadbean-theme .gform_wrapper.gravity-theme .gform_ajax_spinner,*/
			body.broadbean-theme .gform_wrapper.gravity-theme .gform-loader{
				position: absolute;
				right: 10px;
			}


@media (hover: hover){
	body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper button[type="submit"]:hover,
	body.broadbean-theme .gform_wrapper.gravity-theme.broadbean-newsletter_wrapper .gform_fields input[type="submit"]:hover,
	body.broadbean-theme #tripleseat_embed_form input[type="submit"]:hover{
		background-color: var(--theme-iris);
		border-color: var(--theme-iris);
		color: var(--theme-white);
	}

}	

/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/
/*-------------------------------------------------------- RESPONSIVE STYLES */
/*---------------------------------------------------------------------------*/

/* Desktop/Laptop */
@media only screen and (max-width : 1440px) {
	.section_site_footer .container_info .item_contact_service{
		grid-column: c1/c4;
	}
	.section_site_footer .container_info .item_contact_address,
	.section_site_footer .container_info .item_contact_social{
		grid-column: c8/c11;
	}
}
@media only screen and (max-width : 1366px) {
	.section_site_menu .container_body{
		padding-bottom: var(--sectionpad);
	}
	.section_site_menu .container_body .item_text p.readmores{
		margin-top: var(--sectionpad05x);
	}

}
@media only screen and (max-width : 1280px) {
	.section_site_footer .container_info .item_contact_service{
		grid-column: c0/c4;
	}
	.section_site_footer .container_info .item_contact_address,
	.section_site_footer .container_info .item_contact_social{
		grid-column: c8/c12;
	}
}
@media only screen and (max-width : 1279px) {
	.section_site_header .container_body .header_tagline{
		display: none;
	}
	.section_site_header .container_body .header_menu{
		grid-column: c4/c12;
	}
}

@media only screen and (max-width : 1180px) {

	/* header / menu @1180 */
	/*.section_site_menu .container_body{
		padding-bottom: var(--sectionpad);
	}*/
	.section_site_menu .container_body .item_text{
		grid-column: c0 / c7;
	}
	/*.section_site_menu .container_body .item_text p.readmores{
		margin-top: var(--sectionpad05x);
	}*/

	/* banner @1180 */
	.section_banner .container_body .item_heading{
		grid-column: c2 / c10;
	}
	.section_banner .container_body .item_subheading{}
	.section_banner.banner-graphic .container_body .item_graphic{
		grid-column: screenleft / screenright;
	}

	/* sections @1180 */
	.container_header .item_heading{
		grid-column: c2 / c10;
	}

	.section_cta_link .container_cta .item_link{
		grid-column: c2 / c10;
	}

	.group-imagecut svg.imagecut{
		padding: 0 0;
	}
	.item_box > .box{
		aspect-ratio: unset;
	}
	.item_box.box_image img{
		aspect-ratio: 4/3;
	}

	.section_layouts .layout_accordion .item_accordion{
		grid-column: c2 / c10;
	}

	.section_2img_text .container_layout.layout_table .item_row{
		grid-column: c1 / c11;
	}

	/* layouts @1180 */
	.layout_text .item_heading{
		grid-column: c2 / c10;
	}
	.layout_text .item_text{
		grid-column: c2 / c10;
	}
	.layout_contact .item_contact{
		grid-column: c0 / c12;
	}

	.layout_imagepair .item_smlimg.pos_shape_5{
		bottom: calc(var(--sectionpad05x)* -1);
	}

	/* footer @1180 */
	.section_site_footer .container_graphic_overlay .item_graphic svg{
		width: 170%;
		left: -13%;
	}
	.section_site_footer .container_info{
		padding-top: var(--contentpad2x);
	}

	.section_site_footer .container_info .item_newsletter{
		grid-column: c3 / c9;
	}
	.section_site_footer .container_info .item_contact_service{
		grid-column: c0 / c4;
	}
	.section_site_footer .container_info .item_contact_getintouch,
	.section_site_footer .container_info .item_contact_address,
	.section_site_footer .container_info .item_contact_social{
		grid-column: c8 / c12;
	}

}

/* Tablet/iPad - fully switch to responsive @980 */
@media only screen and (max-width : 980px) {
	/* header / menu @980 */
	.section_site_header .container_body .header_logo{
		grid-column: c0 / c6;
	}
	.section_site_header .container_body .header_tagline{
		display: none;
	}
	.section_site_header .container_body .header_menu{
		grid-column: c6 / c12;
	}
		.section_site_header .container_body .desktop-only,
		ul#menu-mainnav_buttons.desktop-only,
		.section_site_header .desktop-only,
		.section_site_menu .desktop-only{
			display: none;
		}
		.section_site_header .container_body .mobile-only,
		ul#menu-text_buttons.mobile-only,
		.section_site_header .mobile-only,
		.section_site_menu .mobile-only{
			display: block;
		}


	.section_site_menu .container_body .item_nav{
		grid-column: c0 / c12;
  		grid-row: 1 / 2;
	}
	.section_site_menu .container_body .item_text{
		grid-column: c0 / c12;
   		grid-row: 2 / 3;
   		padding-top: var(--sectionpad);
	}

	/* banner @980 */

	.section_banner.banner-animated .gallery-img.floating-image{
		top: calc( 50vh - ( var(--colw) * 5.5 ) );
		left: calc( 50vw - ( var(--colw) * 3.5 ) );
		width: calc( var(--colw) * 7 );
	}

	.section_banner .container_body .item_heading{
		grid-column: c1 / c11;
	}
		.section_banner.banner-gallery .container_body .item_heading{
			grid-column: c1 / c11;
		}
	.section_banner .container_body .item_subheading{
		grid-column: c0 / c12;
	}
	.section_banner.banner-gallery .container_body .item_gallery{}
		.item_gallery .flexcontainer_galrow .flexitem_galcol:nth-child(n+4){
			/* display max 3 */
			display: none;
		}


	.section_banner .container_tagline .item_tagline{
		grid-column: c1 / c11;
	}
	.section_banner .container_tagline .item_overlay{
		grid-column: c0 / c12;
	}
		.item_overlay .flexcontainer_tagoverlay{
			padding: 0;
		}


	/* sections @980 */
	.container_header .item_heading{
		grid-column: c0 / c12;
	}

	.section_banner .container_body .item_text{
		grid-column: c0 / c12;
	}

	.section_3img_text.style_venue .container_body .item_text_1{
		grid-column: c4 / c12;
	}

	.section_cta_link .container_cta .item_link{
		grid-column: c1 / c11;
	}

	.section_columns .item_col:not(:last-child){
		padding-bottom: var(--sectionpad05x);
	}
	.section_columns .item_box > .box .boxlink-title h2.h3{
		font-size: var(--size-h2);
	}
	.section_columns .item_box > .box .boxlink-image{
		padding-top: var(--size-h2);
		max-width: 75%;
  		margin: 0 auto;
	}

	.section_3img_links .container_links{
		grid-template-rows: auto;
	}
		.section_3img_links .container_links .item_link:not(:last-child){
			padding-bottom: var(--sectionpad05x);
		}
	.section_3img_links .container_links .item_link.link_1,
	.section_3img_links .container_links .item_link.link_2,
	.section_3img_links .container_links .item_link.link_3{
		grid-column: c0 / c12;
 		grid-row: auto;
	}

	/* ( heading_narrow + secondar_text_bottom ) @980 */
	.section_3img_text.style_cafe .container_body .item_heading{
		grid-column: c2 / c7;
	}
	.section_3img_text.style_cafe .container_body .item_text_1{
		grid-column: c4 / c12;
	}
	.section_3img_text.style_cafe .container_body .item_image_l{}
	.section_3img_text.style_cafe .container_body .item_image_r{}
	.section_3img_text.style_cafe .container_body .item_image_b{
		grid-column: c0 / c12;
	}

	.section_3img_text.style_cafe .container_body .item_text_2{}
	/* ( heading_mid + secondar_text_right ) @980 */
	.section_3img_text.style_venue .container_body .item_heading{}	
	.section_3img_text.style_venue .container_body .item_text_1{}
	.section_3img_text.style_venue .container_body .item_image_l{}
	.section_3img_text.style_venue .container_body .item_image_r{}
	.section_3img_text.style_venue .container_body .item_image_b{}
	.section_3img_text.style_venue .container_body .item_text_2{}
	/* ( heading_wide + secondar_text_left ) @980 */
	.section_3img_text.style_events .container_body .item_heading{
		grid-column: c0 / c9;
	}
	.section_3img_text.style_events .container_body .item_text_1{
		grid-column: c3 / c12;
	}
	.section_3img_text.style_events .container_body .item_image_l{}
	.section_3img_text.style_events .container_body .item_image_r{}
	.section_3img_text.style_events .container_body .item_image_b{
		grid-column: c7 / c12;
	}
	.section_3img_text.style_events .container_body .item_text_2{
		grid-column: c0 / c7;
	}

	.section_2img_text .container_body .item_heading{
		grid-column: c5 / c12;
  		grid-row: 1 / 3;
  		text-align: left;
	}
	.section_2img_text .container_body .item_image_left{}
	.section_2img_text .container_body .item_image_right{
		grid-column: c2 / screenright;
		grid-row: 4 / 6;
		padding-top: var(--sectionpad);
	}
	.section_2img_text .container_layout.layout_table .item_row{
		grid-column: c0 / c12;
	}


	.layout_gallery.gallery_landscape .item_images{
		grid-column: c1 / c11;
	}
	.layout_gallery.gallery_portrait .item_images{
		grid-column: c2 / c10;
	}

	/* layouts @980 */
	.layout_text .item_heading{
		grid-column: c1 / c11;
	}
	.layout_text .item_text{
		grid-column: c0 / c12;
	}

	.layout_imagepair .item_heroimg{
		grid-column: screenleft / screenright;
/*		grid-column: c0 / c12;*/
	}
		.layout_imagepair .item_heroimg .content{
			padding-left: 0;
			padding-right: 0;
		}
		.layout_imagepair .item_heroimg img{
			aspect-ratio: 4 / 3;
			display: block;
			object-fit: cover;
			object-position: left;
		}


	.layout_imagepair .item_smlimg{
		grid-column: c6 / screenright;
	}
		.layout_imagepair .item_smlimg .content{
			padding-right: 0;
		}
		.layout_imagepair .group-imagecut svg.imagecut{
			padding: 0 0 0 var(--contentpad2x);
		}
			.group-imagecut svg.imagecut,{
				padding: 0 var(--contentpad2x);
			}
		.layout_imagepair .item_smlimg.pos_shape_4{}
		.layout_imagepair .item_smlimg.pos_shape_5{
			bottom: calc(var(--contentpad2x)* -1);
		}

	.layout_gallery .item_caption{
		grid-column: c1 / c11;
		padding-top: var(--contentpad2x);
	}

	.flexcontainer_tr{
		flex-wrap: wrap;
	}
	.flexcontainer_tr > .flexitem_th,
	.flexcontainer_tr > .flexitem_td{
		flex-basis: 100%;
		width: 100%;
	}
		.flexcontainer_tr > .flexitem_th .content{
			padding-bottom: 0;
		}

	.section_layouts .layout_accordion .item_accordion{
		grid-column: c0 / c12;
	}

	.flex-container.flexcontainer_contact .flex-item.flex-parts-33{
		flex-basis: 100%; width: 100%;
	}
	.flex-container.flexcontainer_contact .flex-item:not(:last-child){
		padding-bottom: var(--contentpad2x);
	}


	/* footer / forms @980 */
	.section_site_footer .container_info .item_newsletter,
	.section_site_footer .container_info .item_featlink,
	.section_site_footer .container_info .item_contact_service,
	.section_site_footer .container_info .item_contact_getintouch,
	.section_site_footer .container_info .item_contact_address,
	.section_site_footer .container_info .item_contact_social{
		grid-column: c0 / c12;
		grid-row: auto;
		text-align: center;
	}
		.section_site_footer .container_info .item_contact_getintouch,
		.section_site_footer .container_info .item_contact_address,
		.section_site_footer .container_info .item_contact_social{
/*			text-align: left;*/
			padding-top: var(--contentpad2x);
		}
		.section_site_footer .container_info .content + .content{
			margin-top: var(--contentpad2x);
		}

	body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td:not([colspan="2"]){
		display: block;
		width: 100%;
	}
		body.broadbean-theme #tripleseat_embed_form #lead_phone_number,
		body.broadbean-theme #tripleseat_embed_form #lead_guest_count{
			width: 100%;
		}
		body.broadbean-theme #tripleseat_embed_form button[type="submit"], 
		body.broadbean-theme #tripleseat_embed_form input[type="submit"]{
			width: 100%;
		}


	body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td:not([colspan="2"]):nth-child(2n+1),
	body.broadbean-theme #tripleseat_embed_form > table > tbody > tr > td:not([colspan="2"]):nth-child(2n+2){
		/*padding-right: 0;
		padding-left: 0;*/
		padding: 0 0 var(--contentpad) 0;
	}
}


/* Mobile */
@media only screen and (max-width : 760px) {
	/* globals @760px */
	html, body { font-size: 16px; }
	:root{
		--sectionpad05x: 20px;
		--sectionpad: 40px;
		--sectionpad2x: 80px;

		--size-h1: 2.5rem; /* 40px, 2.5rem */
		--size-menu: 2.5rem; /* 40px, 2.5rem */
		--size-h2: 1.88rem; /* 30px, 1.875rem */
		--size-h3: 1.5rem; /* 24px, 1.5rem */
		--size-h4: 1.25rem; /* 20px, 1.25rem */
		--size-p-lrg: 1.25rem; /* 20px, 1.25rem */
	}

	h1.large, .h1.large{
		line-height: 1.0;
	}

	.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%; }
	
	/* header / menu @760px */
	/*
	.section_site_menu .container_body .item_text p.readmores{
		display: block;
	}
	.section_site_menu .container_body .item_text p.readmores > *{
  		display: block;
    	width: max-content;
    	min-width: 172px;
    	text-align: center;
	}
	.section_site_menu .container_body .item_text p.readmores > *:not(:last-child){
		margin-bottom: 12px;
	}
	*/

	#toggle_site-menu::after{
		right: 0;
		width: 64px;
		height: 48px;
	}

	.section_site_menu .container_body .item_text h3,
	.section_site_menu .container_body .item_text .h3{
		font-size: var(--size-h4);
	}

	/* banner @760px */
	.section_banner.banner-home .container_intro{
		height: auto;
		min-height: calc( 100svh - var(--sectionpad) );
		grid-template-rows: [r0] auto [r1] var(--sectionpad) [r2] auto [r3] var(--sectionpad) [r4] auto [r5] auto [r6] auto [r7] var(--sectionpad) [r8];
	}
		.section_banner .container_intro .item_logo{
			grid-column: c2 / c11;
			grid-row: r2/r5;
			padding: var(--sectionpad05x) 0 var(--sectionpad05x) 0;
		}
		.section_banner .container_intro .item_intro{
			grid-row: r6 / r7;
    		grid-column: c0 / c7;
    		padding: var(--sectionpad05x) 0 0 0;
		}
			.section_banner .container_intro .item_intro br{
				display: none;
			}

		.section_banner .container_intro .item_image_1{
			grid-column: c5 / c10;
			grid-row: r0/r1;
		}
		.section_banner .container_intro .item_image_2{
			grid-column: screenleft / c5;
			grid-row: r2/r6;
		}
		.section_banner .container_intro .item_image_3{
			grid-column: c7 / screenright;
  			grid-row: r4 / r7;
		}
			.section_banner .container_intro .item_image img{
				object-fit: cover;
	  			height: auto;
			}


	.section_banner .container_body .item_heading{
/*		grid-column: c0 / c12;*/
	}

	.section_banner .container_tagline .item_graphic{
		grid-column: c2 / c12;
	}
	.section_banner .container_tagline .item_tagline{
		grid-column: c0 / c12;
		padding-top: calc(var(--size-h1)* 2.88);
		padding-bottom: 0;
	}
	.section_banner .container_tagline .item_overlay{
		padding: 0 var(--contentpad) 0 var(--contentpad);
	}
		.item_overlay .flexcontainer_tagoverlay{
			row-gap: calc( var(--size-h1) * 1.1);
		}
			.item_overlay .flexcontainer_tagoverlay .flexitem_tag{
				flex-basis: 100%; width: 100%;
			}
			.item_overlay .flexcontainer_tagoverlay .flexitem_tag:nth-child(2n+1){
				text-align: right;
			}
			.item_overlay .flexcontainer_tagoverlay .flexitem_tag:nth-child(2n+2){
				text-align: left;
			}


	.section_banner.banner-graphic .container_body .item_graphic{
		margin-top: 0;
		padding-top: var(--sectionpad);
	}

	/* sections @760px */

	/* ( heading_narrow + secondar_text_bottom ) @760 */
	/* ( heading_mid + secondar_text_right ) @760 */
	/* ( heading_wide + secondar_text_left ) @760 */
	.section_3img_text.style_venue .container_body .item_heading,
	.section_3img_text.style_cafe .container_body .item_heading,
	.section_3img_text.style_events .container_body .item_heading{
		grid-column: c0 / c12;
    	grid-row: 2/3;
    	padding-top: var(--sectionpad);
	}	
		.section_3img_text.style_venue .container_body .item_heading .content,
		.section_3img_text.style_cafe .container_body .item_heading .content,
		.section_3img_text.style_events .container_body .item_heading .content{
			margin-bottom: var(--contentpad2x);
		}

	.section_3img_text.style_venue .container_body .item_text_1,
	.section_3img_text.style_cafe .container_body .item_text_1,
	.section_3img_text.style_events .container_body .item_text_1{
		grid-column: c0 / c12;
    	grid-row: 3/4;
    	padding-top: 0;
    	padding-bottom: var(--sectionpad05x);
	}
	.section_3img_text.style_venue .container_body .item_text_2,
	.section_3img_text.style_cafe .container_body .item_text_2,
	.section_3img_text.style_events .container_body .item_text_2{
		grid-column: c0 / c12;
    	grid-row: 4/5;
    	padding-top: 0;
	}
	.section_3img_text.style_venue .container_body .item_image_r,
	.section_3img_text.style_cafe .container_body .item_image_r,
	.section_3img_text.style_events .container_body .item_image_r{
		grid-column: c0 / c12;
    	grid-row: 1/2;
    	bottom: unset;
	}
		.section_3img_text.style_venue .container_body .item_image_r .content,
		.section_3img_text.style_cafe .container_body .item_image_r .content,
		.section_3img_text.style_cafe .container_body .item_image_l .content{
			padding-left: var(--contentpad);
			padding-right: var(--contentpad);
		}

	.section_3img_text.style_venue .container_body .item_image_l,
	.section_3img_text.style_cafe .container_body .item_image_l,
	.section_3img_text.style_events .container_body .item_image_l{
		grid-column: c0 / c12;
    	grid-row: 5/6;
    	padding-top: var(--sectionpad);
	}
	.section_3img_text.style_venue .container_body .item_image_b,
	.section_3img_text.style_cafe .container_body .item_image_b,
	.section_3img_text.style_events .container_body .item_image_b{
		grid-column: c0 / c12;
    	grid-row: 6/7;
    	padding-top: 0;
	}
		.section_3img_text.style_venue .container_body .item_image_r img,
		.section_3img_text.style_cafe .container_body .item_image_r img,
		.section_3img_text.style_events .container_body .item_image_r img,
		.section_3img_text.style_venue .container_body .item_image_l img,
		.section_3img_text.style_cafe .container_body .item_image_l img,
		.section_3img_text.style_events .container_body .item_image_l img,
		.section_3img_text.style_venue .container_body .item_image_b img,
		.section_3img_text.style_cafe .container_body .item_image_b img,
		.section_3img_text.style_events .container_body .item_image_b img{
			display: block;
		  	aspect-ratio: 3 / 4;
		  	object-fit: cover;
		  	object-position: center;
		}

	.section_cta_link .container_cta .item_link{
		grid-column: c0 / c12;
	}

	.section_2img_text .container_body .item_heading{
		grid-column: c0 / c12;
    	grid-row: 2 / 3;
    	padding-top: var(--sectionpad);
	}
	.section_2img_text .container_body .item_image_left{
		grid-column: c0 / c12;
    	grid-row: 1 / 2;
    	padding-top: 0;

	}
	.section_2img_text .container_body .item_image_right{
		grid-column: c0 / c12;
    	grid-row: 3 / 4;
    	padding-top: var(--sectionpad);
	}


	/* layouts @760px */
	.layout_gallery.gallery_landscape .item_images,
	.layout_gallery.gallery_portrait .item_images{
		grid-column: c1 / c11;
	}
	.layout_text .item_heading{
		grid-column: c0 / c12;
	}

	.layout_gallery .item_images .gallery-stack_hoverable{
		padding-bottom: 0;
	}
	.gallery-stack_hoverable .wrapper-hoverable,
	.gallery-stack_hoverable.hover .wrapper-hoverable{
		animation-name: gallery_stack_hover;
		animation-iteration-count: infinite;
		animation-duration: 6s;
	}

	.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+1),
	.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+2),
	.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+3),
	.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+4),
	.gallery-stack_hoverable .wrapper-hoverable:nth-child(5n+5){
		top: unset;
		left: unset;
	}
		.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+1),
		.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+1),
		.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+2),
		.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+2),
		.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+3),
		.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+3),
		.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+4),
		.gallery-stack_hoverable.clicked .wrapper-hoverable:nth-child(5n+4),
		.gallery-stack_hoverable.hover .wrapper-hoverable:nth-child(5n+5){
			left: unset;
		}


	.container_header + .container_layout.layout_accordion{
		padding-top: var(--sectionpad05x);
	}

	.item_box > .box .boxlink-title{
		position: relative;
		padding-bottom: var(--contentpad);

	}
	.item_box > .box .boxlink-image.has-title,
	.section_columns .item_box > .box .boxlink-image.has-title,
	.item_box > .box .boxlink-image,
	.section_columns .item_box > .box .boxlink-image{
		padding-top: 0;
    	max-width: 100%;
	}
	.group-imagecut svg.imagecut{
		padding: 0;
	}

	p.readmores{
/*		display: block;*/
	}
	p.readmores > *:not(.btn_arrow):not(.arrow_down){
		display: block;
		width: max-content;
/*    	min-width: 172px;*/
		min-width: calc( 50% - var(--contentpad) - 2px );
    	text-align: center;
	}
	p.readmores > *:not(:last-child){
/*		margin-bottom: 12px;*/
	}

	/* footer / forms */
	.section_site_footer .container_graphic_overlay .item_graphic svg{
		width: 600%;
		left: -13%;
	}

	.section_site_footer .container_foot{
		font-size: var(--size-p-xsml);
	}
	.section_site_footer .container_foot .item_copyright,
	.section_site_footer .container_foot .item_siteby{
		/*grid-column: c0 / c12;
		grid-row: auto;
  		text-align: left;*/
	}
		.section_site_footer .container_foot .item_copyright .content,
		.section_site_footer .container_foot .item_siteby .content{
			padding-top: 0;
		}
}

@media only screen and (max-width : 440px) {
	.section_banner.banner-gallery .container_body .item_heading{
		grid-column: c0 / c12;
	}
	.layout_gallery.gallery_portrait .item_images{
		grid-column: c0 / c12;
	}

	p.readmores{
		display: block;
	}
	p.readmores > *:not(.btn_arrow):not(.arrow_down){
		display: block;
		width: max-content;
   		min-width: 172px;
    	text-align: center;
	}
	p.readmores > *:not(:last-child){
		margin-bottom: 12px;
	}
}