/*
Theme Name:   WBG Luckenwalde
Theme URI:    https://www.webmandesign.eu/portfolio/reykjavik-wordpress-theme/
Author:       BÜRO FÜR WELTGESTALTUNG / WebMan Design
Author URI:   https://www.webmandesign.eu/
Version:      1.5.3
Text Domain:  reykjavik
Domain Path:  /languages
License:      GNU General Public License v3
License URI:  https://www.gnu.org/licenses/gpl-3.0.html
Template:     reykjavik
*/

@import url("../reykjavik/style.css");

@font-face {
	font-family: 'DIN-Regular';
	font-style: normal;
	font-weight: 400;
	src: url('assets/webfonts/DINPro-Regular.woff2') format('woff2'),
		 url('assets/webfonts/DINPro-Regular.woff') format('woff');
	font-display: swap;
}

@font-face {
	font-family: 'DIN-Bold';
	font-style: normal;
	font-weight: 700;
	src: url('assets/webfonts/DINPro-Medium.woff2') format('woff2'),
		 url('assets/webfonts/DINPro-Medium.woff') format('woff');
	font-display: swap;
}

@font-face {
	font-family: 'TheKnight';
	font-style: normal;
	font-weight: 400;
	src: url('assets/webfonts/TheKnight.woff2') format('woff2'),
		 url('assets/webfonts/TheKnight.woff') format('woff');
	font-display: swap;
}

:root {
	--color-grey: #C9CACC;
	--color-red: #B12C31;
	--color-green: #0B8066;
	--color-light-green: #ACCCBF;
	--color-dark-green: #074F3E; /**/
	--color-white: #FFFFFF;
	--color-black: #424444;
	--color-transparent-white: rgba(255, 255, 255, 0.75);
	--color-transparent-grey: rgba(201, 202, 204, 0.75);
	--color-transparent-red: rgba(177, 44, 49, 0.95);
	--color-transparent-light-green: rgba(172, 204, 191, 0.75);
	--vp-color-brand: var(--color-green) !important;
}

.vp-portfolio__items-style-fade {
	--vp-items-style-fade--image-hover__transform: none !important;
}
	
.grey { color: #C9CACC !important; }
.red { color: #B12C31 !important; }
.green { color: #0B8066 !important; }
.light-green { color: #ACCCBF !important; }
.dark-green { color: #074F3E !important; /**/ }
.white { color: #FFFFFF !important; }

.clearfix {
	zoom: 1;
	-moz-transform: scale(1);
	-moz-transform-origin: 0 0;
	-o-transform: scale(1);
	-o-transform-origin: 0 0;
	-webkit-transform: scale(1);
	-webkit-transform-origin: 0 0;
	transform: scale(1);
	transform-origin: 0 0;
}

.clearfix:before,
.clearfix:after { 
	content: "";
	display: table; 
	width: 0;
}

.clearfix:after {
	clear: both;
}

:focus {
  outline: none !important;
}

/* TYPOGRAPHY */

body,
p, ul, ol, li {
	font-family: 'DIN-Regular', sans-serif !important;
	font-weight: 400 !important;
}

h1.site-title, h2:not(.intro-title), h3, h4, h5, h6
b, strong, a {
	font-family: 'DIN-Bold', sans-serif !important;
	font-weight: 400 !important;
}

h1:not(.site-title),
h2.intro-title {
	font-family: 'TheKnight', serif !important;
	font-weight: 400 !important;
	line-height: 1.25em !important;
}

h1:not(.site-title) { font-size: 3em !important; }
h1.site-title {	font-size: 1.5em !important; }
h2 { font-size: 1.5em !important; }
h2.intro-title { font-size: 4em !important; }
h3 { font-size: 1.25em !important; }
h4 { font-size: 1em !important; }
h5 { font-size: 1em !important; }
h6 { font-size: 1em !important; }

a, a:active, a:focus, a:hover {
	text-decoration: underline !important;
}

.content-area a[href^="tel"] {
	color: var(--color_accent) !important;
}

.menu-primary a, .menu-primary a:focus, .menu-primary a:active, .menu-primary a:hover,
button a, button a:focus, button a:active, button a:hover,
.wp-block-button a, .wp-block-button a:focus, .wp-block-button a:active, .wp-block-button a:hover {
	text-decoration: none !important;
}

p.highlight-link a,
p.highlight-link a:active,
p.highlight-link a:focus,
p.highlight-link a:hover {
	color: inherit !important;
}

/*
h1.intro-title span:not(.sep) {
	font-size: 0.5em !important;
	font-weight: 500 !important;
	line-height: 2.5em;
	padding: 0.25em 0.5em;
	color: var(--color-white);
	background-color: var(--color-green);
	text-transform: uppercase;
}

h1.intro-title span.sep {
	font-size: 0 !important;
	width: 0 !important;
}
*/

::marker {
	color: var(--color-green);
}

::-moz-selection { background: var(--color-red); color: var(--color-white); }
::selection { background: var(--color-red); color: var(--color-white); }

/* HEADER */

#masthead {
	position: fixed;
	z-index: 1499;
	width: 100%;
	height: 200px;
	border-bottom: 1px solid var(--color-red);
}

.site-header-content {
	height: 100%;
	padding: 0 !important;
	box-shadow: 0 0.25em 1em rgba(0,0,0,0.25);
}

.site-header-inner {
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
	margin-top: 0 !important;
	padding: 1rem 0;
}

.site-branding,
.site-controls {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	width: 100%;
	margin: 0 !important;
}

.site-branding {
	flex: 1 !important;
}

.site-header-inner .site-branding-logo {
	order: 1;
	width: 50%;
	height: 100%;
	text-align: left;
}

.site-header-inner .site-branding-contact {
	order: 2;
	display: flex;
	flex-flow: column wrap;
	align-items: flex-end;
	justify-content: flex-start;
	width: 50%;
	height: 100%;
}

.site-branding-contact > a {
	display: inline-block;
	text-align: right;
}	

.site-controls > nav {
	width: 100%;
	margin: 0;
}

nav li,
nav a {
	border: 0 !important;
}

nav a {
	-webkit-transition: color 0.25s ease-in !important;
    -moz-transition: color 0.25s ease-in !important;
    -o-transition: color 0.25s ease-in !important;
	transition: color 0.25s ease-in !important;
}

nav ul.menu-primary > li > a {
	font-size: 0.9em;
	text-transform: uppercase;
	line-height: 2em !important;
}

nav ul.sub-menu-items > li > a:hover,
footer nav a:hover {
	font-weight: 500 !important;
}

.main-navigation {
	/* font-size: 0.9em; */
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

html:not(.menu-overlay) .main-navigation-container .menu > ul > li:not(:first-child) {
	margin: 0 !important;
	/* margin-left: 2rem !important; */
}

.main-navigation-container .menu > ul > li,
.sub-menu-items li,
.sub-menu-items li a,
footer nav li,
footer nav a {
	padding: 0 !important;
}

.sub-menu-items,
.sub-menu-items li,
.sub-menu-items li a {
	display: inline-block;
	text-align: left;
}

.site-branding-contact-mobile {
	display: none !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
}

.site-mail,
.site-phone {
	display: inline-block;
	font-size: 1em;
	line-height: 1em;
	margin-bottom: 0.5em;
	padding: 0.25em 0.5em;
	color: var(--color-white) !important;
	background-color: var(--color-red) !important;
}

.site-mail,
.site-mail:hover,
.site-mail:focus,
.site-mail:active,
.site-phone,
.site-phone:hover,
.site-phone:focus,
.site-phone:active {
	text-decoration: none !important;
}

/*
.site-mail::before {
	content: " ";
	display: inline-block;
	width: 1.5em;
	height: 0.75em;
	margin-top: 0.5em;
	margin-right: 0.25em;
	background-image: url('assets/images/wbg_Icon_Mail.png');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 100%;
}
*/

/* CONTENT */

#content {
	padding-top: 200px;
}

body:not(.page-template-page-start) .content-area {
	padding: var(--content_padding) 0;
}

body.page-template-page-start .content-area {
	padding: 0 0 var(--content_padding) 0;
}

/*
.site-header-inner,
.site-footer-area-inner {
	max-width: 1200px !important;
}
*/

/*
.wp-block-group__inner-container > *:not(:first-child),
.wp-block-column > *:not(:first-child) {
	margin-top: 0.5em;
}

.wp-block-group__inner-container > *:not(:last-child),
.wp-block-column > *:not(:last-child) {
	margin-bottom: 0.5em;
}
*/

.intro-container {
	background-color: unset !important;
	color: inherit !important;
	border: 0 !important;
}

.is-singular:not(.content-layout-no-paddings):not(.has-widgets-sidebar) .entry-content-inner > .alignfull:first-child {
	padding-top: 0 !important;
}

.wp-block-group__inner-container > *:not(.alignfull):not(.alignwide):not(.alignwide-wrap) {
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: unset !important;
}

.entry-content-inner > .alignnarrow,
.entry-content-inner > .alignbreakout{
	margin-top: calc(var(--white_space) / 2) !important;
	margin-bottom: calc(var(--white_space) / 2) !important;
}

.entry-content > .alignfull,
.entry-content-inner > .alignfull,
.wp-block-quote {
	/* margin-top: 0 !important;
	margin-bottom: 0 !important; */
	padding: calc(var(--white_space) / 2) 0 !important;
}

.entry-content-inner > *:first-child:not(.alignfull) {
	margin-top: 0 !important;
	margin-bottom: calc(var(--white_space) / 2) !important;
}

.wp-block-group:not(.alignfull):not(:first-child) {
	margin-top: calc(var(--white_space) / 2);
}

.wp-block-group:not(.alignfull):not(:last-child) {
	margin-bottom: calc(var(--white_space) / 2);
}

.is-intro.alignfull {
	margin-top: 0 !important;
	padding-bottom: 0 !important;
}

#news-content-highlight article {
	background-color: var(--color-red) !important;
	color: var(--color-white) !important;
}

#news-content-highlight article .entry-content * {
	color: var(--color-white) !important;
}

#news-content-timeline article {
	border: 2px solid var(--color-grey);
}

.posts-layout-list #news-content-timeline.posts .wp-block-column,
.posts-layout-list #news-content-highlight.posts .entry,
.posts-layout-list #news-content-highlight.posts .entry:last-child {
	margin-bottom: calc(var(--white_space) / 2) !important;
}

.posts-layout-list .type-post .entry-content,
.posts-layout-list .type-post .entry-meta,
.posts-layout-list .type-post .entry-title {
	float: none;
	width: 100%;
}

.posts-list article {
	padding: calc(var(--white_space) / 10) calc(var(--white_space) / 5);
}

nav.pagination {
	margin-top: var(--white_space);
}

nav.pagination a,
nav.pagination span {
	display: inline-block;
	width: auto;
	padding: 1rem 2rem !important;
	margin: 0 !important;
	font-size: 1rem !important;
	line-height: 1rem !important;
	text-align: center;
	text-decoration: none !important;
	color: inherit !important;
	vertical-align: top;
	text-decoration: none !important;
	border: 1px solid var(--color-red) !important;
}

nav.pagination span.current {
	color: var(--color-red) !important;
	background-color: transparent !important;
}

nav.pagination a,
nav.pagination a:hover,
nav.pagination a:focus,
nav.pagination a:active {
	color: var(--color-white) !important;
	background-color: var(--color-red) !important;
}

nav.pagination span::before,
nav.pagination a::before {
	display: none !important;
}

/* ELEMENTS */

.has-bottom-line-grey { border-bottom: 1px solid var(--color-grey); padding-bottom: 1em; }
.has-bottom-line-red { border-bottom: 1px solid var(--color-red); padding-bottom: 1em; }
.has-bottom-line-green { border-bottom: 1px solid var(--color-green); padding-bottom: 1em; }
.has-bottom-line-light-green { border-bottom: 1px solid var(--color-light-green); padding-bottom: 1em; }
.has-bottom-line-dark-green { border-bottom: 1px solid var(--color-dark-green); padding-bottom: 1em; }

.has-background-grey { background-color: var(--color-grey); }
.has-background-red { background-color: var(--color-red); color: var(--color-white); }
.has-background-green { background-color: var(--color-green); color: var(--color-white); }
.has-background-light-green { background-color: var(--color-light-green); color: var(--color-white); }
.has-background-dark-green { background-color: var(--color-dark-green); color: var(--color-white); }

div[class*="has-background"] * { color: inherit !important; }

.has-parallax {
	background-attachment: fixed;
}

.has-block-margin-top {
	margin-top: var(--white_space) !important;
}

.has-block-margin-bottom {
	margin-bottom: var(--white_space) !important;
}

.has-half-margin-top {
	margin-top: calc(var(--white_space) / 2) !important;
}

.has-half-margin-bottom {
	margin-bottom: calc(var(--white_space) / 2) !important;
}

.has-min-margin-top {
	margin-top: calc(var(--white_space) / 10) !important;
}

.has-min-margin-bottom {
	margin-bottom: calc(var(--white_space) / 10) !important;
}

.has-border-grey {
	border: 2px solid var(--color-grey);
	padding: calc(var(--white_space) / 10) calc(var(--white_space) / 5);
}

.has-border-red {
	border: 2px solid var(--color-red);
	padding: calc(var(--white_space) / 10) calc(var(--white_space) / 5);
}

.wp-block-cover.alignfull:not(.has-parallax) {
	min-height: calc(100vh - 200px);
	height: auto;
}

.wp-block-cover.alignfull.has-parallax {
	position: relative;
	min-height: unset;
	height: 25vh;
	padding: 0 !important;
}

.wp-block-cover.alignfull.has-parallax:not(:first-child) {
	margin-top: calc(var(--white_space) / 2) !important;
}

.wp-block-cover.alignfull.has-parallax:first-child {
	margin-top: 0 !important;
}

.wp-block-cover.alignfull.has-parallax:not(:last-child) {
	margin-bottom: calc(var(--white_space) / 2) !important;
}

.wp-block-cover.alignfull.has-parallax:last-child {
	margin-bottom: 0 !important;
}

.wp-block-cover .wp-block-cover__inner-container > :not(.alignfull):not(.alignwide):not(.alignwide-wrap) {
	max-width: unset !important;
}

.wp-block-cover .wp-block-cover__inner-container > * {
	display: inline-block;
	margin-bottom: 1rem;
	/* line-height: 1em !important; */
	/* text-align: left; */
}

.wp-block-cover .wp-block-cover__inner-container h1,
.wp-block-cover .wp-block-cover__inner-container h2,
.wp-block-cover .wp-block-cover__inner-container h3,
.wp-block-cover .wp-block-cover__inner-container h4,
.wp-block-cover .wp-block-cover__inner-container h5,
.wp-block-cover .wp-block-cover__inner-container h6,
.wp-block-cover .wp-block-cover__inner-container p,
.wp-block-button {
	padding: 0.25em 0.5em !important;
	background-color: var(--color-red);
}

.is-intro .wp-block-cover .wp-block-cover__inner-container h1,
.is-intro .wp-block-cover .wp-block-cover__inner-container h2,
.is-intro .wp-block-cover .wp-block-cover__inner-container h3,
.is-intro .wp-block-cover .wp-block-cover__inner-container h4,
.is-intro .wp-block-cover .wp-block-cover__inner-container h5,
.is-intro .wp-block-cover .wp-block-cover__inner-container h6 {
	display: inline-block;
	margin-left: unset !important;
	padding: 0.75rem 1rem 0 0.5rem !important;
	background-color: var(--color-red);
}

.is-intro .wp-block-cover .wp-block-cover__inner-container p {
	display: inline-block;
	margin-left: unset !important;
	padding: 0.5em !important;
	background-color: var(--color-red);
}

.is-intro .wp-block-cover .wp-block-cover__inner-container {
	display: flex;
	flex-flow: column wrap;
	justify-content: flex-start;
	align-items: flex-start;
}

.wp-block-cover .wp-block-cover__inner-container h6
.wp-block-quote {
	font-size: 1em !important;
	font-weight: 300 !important;
	background-color: var(--color-green);
}

.wp-block-cover p {
	line-height: 1.5rem !important;
}

.wp-block-quote p {
	margin: 0 auto 0.5em auto;
	font-size: 1.382em;
	color: var(--color-white);
}	

.wp-block-quote cite {
	margin: 0 auto;
	font-size: inherit !important;
	font-weight: inherit !important;
}

.wp-block-quote::before,
.wp-block-quote cite::before {
	content: '' !important;
}

.wp-block-buttons {
	display: flex !important;
	/*flex-flow: column wrap;*/
}

.wp-block-button,
.wp-block-button a,
.wp-block-button a:hover,
.wp-block-button a:focus,
.wp-block-button a:active {
	line-height: 1.5rem !important;
}

.wp-block-buttons.is-vertical .wp-block-button:not(:last-child) {
	margin-bottom: 0.5em;
}

.wp-block-button__link,
.wp-block-button__link:hover,
.wp-block-button__link:active,
.wp-block-button__link:focus {
	line-height: 1em !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    color: var(--color-white) !important;
}

.wp-block-button.red .wp-block-button__link:hover,
.wp-block-button.red .wp-block-button__link:active,
.wp-block-button.red .wp-block-button__link:focus {
	background-color: var(--color-red) !important;
	border-color: var(--color-red) !important;
}

.wp-block-button.green .wp-block-button__link:hover,
.wp-block-button.green .wp-block-button__link:active,
.wp-block-button.green .wp-block-button__link:focus {
	background-color: var(--color-green) !important;
	border-color: var(--color-green) !important;
}

.wp-block-cb-carousel .wp-block-cb-slide {
	margin-bottom: 0 !important;
}

.wp-block-cb-carousel .slick-arrow {
	font-size: 0 !important;
	color: transparent !important;
	z-index: 99999;
}

.slick-next,
.slick-next::before,
.slick-prev,
.slick-prev::before {
	display: block !important;
	width: 2rem !important;
	height: 2rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	opacity: 1 !important;
}

.slick-next::before,
[dir="rtl"] .slick-prev::before {
	content: " " !important;
	background-size: 100% 100%;
	background-position: center center;
	background-repeat: no-repeat;
}

.wp-block-cb-carousel.green .slick-next::before,
.wp-block-cb-carousel.green [dir="rtl"] .slick-prev::before {
	/* background-image: url('assets/images/wbg_Icon_Pfeil_gruen_rechts.png'); */
}

.wp-block-cb-carousel.green .slick-next:hover::before,
.wp-block-cb-carousel.green [dir="rtl"] .slick-prev:hover::before {
	/* background-image: url('assets/images/wbg_Icon_Pfeil_gruen_rechts_hover.png'); */
}

.wp-block-cb-carousel.red .slick-next::before,
.wp-block-cb-carousel.red [dir="rtl"] .slick-prev::before {
	/* background-image: url('assets/images/wbg_Icon_Pfeil_blau_rechts.png'); */
}

.wp-block-cb-carousel.red .slick-next:hover::before,
.wp-block-cb-carousel.red [dir="rtl"] .slick-prev:hover::before {
	/* background-image: url('assets/images/wbg_Icon_Pfeil_blau_rechts_hover.png'); */
}

.wp-block-cb-carousel.white .slick-next::before,
.wp-block-cb-carousel.white [dir="rtl"] .slick-prev::before {
	/* background-image: url('assets/images/wbg_Icon_Pfeil_weiss_rechts.png'); */
}

.wp-block-cb-carousel.white .slick-next:hover::before,
.wp-block-cb-carousel.white [dir="rtl"] .slick-prev:hover::before {
	/* background-image: url('assets/images/wbg_Icon_Pfeil_weiss_rechts_hover.png'); */
}

.slick-dots {
	bottom: 5% !important;
}

.slick-dots li button::before {
	content: " " !important;
	width: 1rem;
	height: 1rem;
	background-color: var(--color-white);
	opacity: 1 !important;
}

.slick-dots li.slick-active button::before {
	background-color: var(--color-red);
}

.wp-block-columns .wp-block-visual-portfolio {
	margin-top: 0.25rem !important;
}

.wp-block-visual-portfolio,
.wp-block-visual-portfolio:last-child {
	/* margin-top: 2.5em;
	margin-bottom: 2.5em !important; */
}

.vp-portfolio__layout-elements {
	justify-content: flex-start;
}

.vp-portfolio__filter-wrap {
	margin: 0 !important;
}

.vp-portfolio__items-arrow {
	color: var(--color-white) !important;
	background-color: var(--color-red) !important;
	border-radius: 0 !important;
	opacity: 1 !important;
}

.vp-portfolio[data-vp-layout="slider"] {
	position: relative;
}

.vp-portfolio[data-vp-layout="slider"] .wp-block-button.wbg-button-360 {
	display: inline-block;
	position: absolute;
	bottom: var(--vp-layout-slider--arrows__offset);
	left: var(--vp-layout-slider--arrows__offset);
	z-index: 250;
}

.wbg-toggle {
	position: relative;
	margin: 0;
	overflow: hidden;
}

.wbg-toggle-inner {
	position: relative;
	margin: 0;
	overflow: hidden;
}
		
.wbg-toggle-inner > *:last-child {
	margin-bottom: 0;
}
		
.wbg-toggle-title-holder {
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	cursor: pointer;
}

.wbg-toggle-title-holder,
#news-content-highlight .entry-title {
	margin-bottom: 1em;
}

#news-content-highlight .wbg-toggle-title-holder {
	color: var(--color-white);
}

#news-content-timeline .wbg-toggle-title-holder {
	color: var(--color-green);
}

.wbg-toggle-title-holder h1,
.wbg-toggle-title-holder h2,
.wbg-toggle-title-holder h3,
.wbg-toggle-title-holder h4,
.wbg-toggle-title-holder h5,
.wbg-toggle-title-holder h6 {
	display: inline-block;
	margin: 0 !important;
	color: inherit !important;
}

.wbg-toggle-icon-holder {
	display: inline-block;
	position: relative;
	min-width: 1.5em;
	width: 1.5em;
	height: 1.75em;
	margin-left: 1em;
	font-size: 1em;
	
}

.wbg-toggle-icon-inner {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.wbg-toggle-icon-holder::after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	width: 0;
	height: 0;
	border-top: 1em solid transparent;
	border-bottom: 1em solid transparent;
}

#news-content-highlight .wbg-toggle-icon-holder .icon-plusminus-horizontal,
#news-content-highlight .wbg-toggle-icon-holder .icon-plusminus-vertical {
	background-color: var(--color-white);
}

#news-content-timeline .wbg-toggle-icon-holder .icon-plusminus-horizontal,
#news-content-timeline .wbg-toggle-icon-holder .icon-plusminus-vertical  {
	background-color: var(--color-green);
}

.wbg-toggle-icon-holder .icon-plusminus-horizontal,
.wbg-toggle-icon-holder .icon-plusminus-vertical {
	font-size: inherit;
}

.wbg-toggle-icon-holder .icon-plusminus-horizontal {
	position: absolute;
	width: 1em;
	height: 0.2em;
	left: 60%;
	margin-left: -0.5em;
	top: 50%;
	margin-top: -0.1em;
}

.wbg-toggle-icon-holder .icon-plusminus-vertical {
	position: absolute;
	width: 0.2em;
	height: 1em;
	left: 60%;
	margin-left: -0.1em;
	top: 50%;
	margin-top: -0.5em;
}

.wbg-toggle .wbg-toggle-icon-holder,
.wbg-toggle .wbg-toggle-icon-holder .icon-plusminus-vertical,
.wbg-toggle .wbg-toggle-icon-holder .icon-plusminus-horizontal {
	transition: all 0.25s ease-in-out;
}

.wbg-toggle.open .wbg-toggle-icon-holder {
	transform: rotate(90deg);
}

.wbg-toggle.closed .wbg-toggle-icon-holder .icon-plusminus-horizontal {
	opacity: 1;
}

.wbg-toggle.open .wbg-toggle-icon-holder .icon-plusminus-horizontal {
	opacity: 0;
}

.wbg-toggle.open .wbg-toggle-inner {
	display: block;
}
	
.wbg-toggle.closed .wbg-toggle-inner {
	display: none;
}

.wbg-tabs {
	display: block;
	width: 100%;
	height: auto;
}

.wbg-tabs:not(:last-child) {
	margin-bottom: calc(var(--white_space) / 2);
}

.wbg-tab-navigation ul {
	display: block;
	list-style: none;
	margin: 0 0 calc(var(--white_space) / 2) 0;
	padding: 0;
}

.wbg-tab-navigation ul li a {
	color: currentColor;
}

.wbg-tab-navigation ul li.active:hover a,
.wbg-tab-navigation ul li.active:focus a
.wbg-tab-navigation ul li.active:active a {
	color: currentColor;
	text-decoration: inherit;
}
			
.wbg-tabs-inner {
	display: block;
	width: 100%;
	height: auto;
	color: var(--color-grey);
	overflow: hidden;
}
		
.wbg-tab {
	display: block;
	overflow: hidden;
	transition: height 0.25s ease;
}
		
.wbg-tab.show {
	max-height: unset;
	height: auto;
}

.wbg-tab.hide {
	max-height: 0;
	height: 0;
}

.wp-block-table,
.wp-block-table thead {
	border-top-width: 1px !important;
	border-bottom-width: 1px !important;
	border-color: var(--color-light-green) !important;
}

.wbg-person .wp-block-column:nth-child(2) {
	padding: 0.5em 1em;
}

.wbg-person:not(:last-of-type) {
	margin-bottom: 2em !important;
}

.wpgmza_map {
	margin: 0 !important;
}

.wpgmza_map .ol-attribution a {
	color: #000 !important;
}

.wpgmza-gdpr-compliance {
	margin: 0 auto;
}

.wpgmza-gdpr-compliance p {
	margin-top: 1.618em;
	color: var(--color-black);
}

.wpgmza-api-consent,
.wpgmza-api-consent:hover,
.wpgmza-api-consent:active,
.wpgmza-api-consent:focus {
	padding: 0.75em 1em !important;
	border: none !important;
    border-radius: 0 !important;
	background-color: var(--color-red) !important;
    color: var(--color-white) !important;
}
	

/* CONTACT FORM */

.wp-block-contact-form-7-contact-form-selector {
	margin: calc(var(--white_space) / 2) 0 !important;
}

.wpcf7-form {
	padding: 0.5em 1em;
	background-color: var(--color-light-green);
}

.wpcf7-form h2 {
	margin: 0.5em 0 1em 0 !important;
}

.wpcf7-form h2 {
	color: var(--color-green) !important;
}

.wpcf7-form p,
.wpcf7-form label,
.wpcf7-response-output {
	color: var(--color-grey) !important;
}

.wpcf7-form input,
.wpcf7-form textarea,
.wpcf7-form label {
	width: 100%;
}

.wpcf7-form input,
.wpcf7-form input:hover,
.wpcf7-form input:active,
.wpcf7-form input:focus,
.wpcf7-form textarea,
.wpcf7-form textarea:hover,
.wpcf7-form textarea:active,
.wpcf7-form textarea:focus {
	color: var(--color-grey) !important;
	background-color: var(--color-white);
	border: none !important;
}

.wpcf7-form input[type="submit"] {
	font-size: inherit !important;
	font-weight: 300 !important;
	color: var(--color-white) !important;
	background-color: var(--color-green) !important;
	border: none !important;
	/* text-transform: none !important; */
}

.wpcf7-form input[type="submit"]:hover,
.wpcf7-form input[type="submit"]:active,
.wpcf7-form input[type="submit"]:focus {
	font-weight: 300 !important;
	background-color: var(--color-green) !important;
	border: none !important;
}

input[type="submit"]:disabled {
	color: var(--color-grey) !important;
	background-color: var(--color-white) !important;
	opacity: 1;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7-form input.wpcf7-not-valid,
.wpcf7-form textarea.wpcf7-not-valid {
	border: 2px solid red !important;
}

.wpcf7-not-valid-tip {
	display: none;
}

.wbg-consent a {
	font-weight: 300 !important;
	color: var(--color-green) !important;
}

.wbg-consent label {
	position: relative;
	padding: 0 0 1em 2em;
}

.wbg-consent label span:last-child {
	display: inline-block;
}

.wbg-consent .wpcf7-list-item {
	margin: 0 !important;
}

.cmplz-cookiebanner * {
	font-size: 0.9rem !important;
}

.cmplz-cookiebanner.cmplz-categories-type-view-preferences .cmplz-buttons,
.cmplz-cookiebanner.cmplz-categories-type-no .cmplz-buttons {
	flex-direction: column !important;
}

.cmplz-blocked-content-container .cmplz-blocked-content-notice,
.cmplz-blocked-content-container .cmplz-blocked-content-notice:hover,
.cmplz-wp-video .cmplz-blocked-content-notice,
.cmplz-wp-video .cmplz-blocked-content-notice:hover {
	left: 25% !important;
	max-width: 50% !important;
	padding: 15px 20px;
	font-size: 0.9rem !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
	background-color: var(--cmplz_button_accept_background_color, var(--color-red));
    color: var(--cmplz_button_accept_text_color, var(--color-white));
    border-style: solid;
    border-color: var(--cmplz_button_accept_border_color, var(--color-red));
    border-width: var(--cmplz_banner_border_width);
    border-radius: var(--cmplz_banner_border_radius);
	transform: translate(0%, -50%) !important;
}

.cmplz-custom-accept-btn.cmplz-accept,
.cmplz-custom-accept-btn.cmplz-accept:hover,
.cmplz-deny.cmplz-revoke-custom,
.cmplz-deny.cmplz-revoke-custom:hover,
.cmplz-deny.cmplz-revoke-custom:disabled {
	display: inline-block;
	margin-bottom: 1em;
	padding: 0.25em 0.5em !important;
	background-color: var(--color-red);
	line-height: 1.5rem !important;
	border: none !important;
	border-radius: 0 !important;
}

.cmplz-custom-accept-btn.cmplz-accept a,
.cmplz-custom-accept-btn.cmplz-accept a:hover,
.cmplz-deny.cmplz-revoke-custom,
.cmplz-deny.cmplz-revoke-custom:hover,
.cmplz-deny.cmplz-revoke-custom:disabled {
	font-size: 0.809em;
	font-weight: 700;
	color: var(--color-white) !important;
	line-height: 1.5rem !important;
	letter-spacing: 0.0636666667em;
	text-transform: uppercase;
	text-decoration: none !important;
}

.cmplz-status-accepted,
.cmplz-status-denied {
	margin: 0 0 1.618em;
	color: var(--color-red);
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
	content: "" !important;
}

input[type="checkbox"] {
	display: inline-block !important;
	position: absolute;
	height: 0 !important;
	width: 0 !important;
	top: 0;
	opacity: 0;
}
	
input[type="checkbox"]:checked ~ span .checkmark {
	background-color: var(--color-white);
}

input[type="checkbox"]:checked ~ span .checkmark::before,		
input[type="checkbox"]:checked ~ span .checkmark::after {
	display: block;
}

.checkmark {
	display: inline-block;
	position: absolute;
	top: 0.5em;
	left: 0;
	height: 1.5em;
	width: 1.5em;
	background-color: var(--color-white);
	cursor: pointer;
}

.checkmark:before,
.checkmark:after {
	content: "";
	display: none;
	position: absolute;
	top: 0.25em;
	left: 0.7em;
	width: 2px;
	height: 1em;
	background-color: var(--color-grey);
}

.checkmark::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.checkmark::after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.wpcf7-response-output {
	margin: 0 0 1em 0 !important;
	text-align: center;
}

.wpcf7-spinner {
	display: none !important;
}

/* FOOTER */

.site-footer {
	font-size: unset !important;
}

.site-footer-area-top {
	position: relative;
	min-height: 200px;
	height: auto;
}

.site-footer-area-top:not(.has-no-padding) {
	padding: calc(var(--white_space) / 2) 0;
}

.site-footer-area-top-background,
.site-footer-area-top-overlay {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: var(--color-transparent-light-green);
}

.site-footer-area-top-background {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
	
.site-footer-area-top-overlay {
	background: var(--color-transparent-white);
}

.site-footer-area-top-inner {
	position: relative;
	min-height: 100%;
	height: auto;
	text-align: center !important;
}

.site-footer-area-top-inner > p,
.site-footer-area-top-inner > a,
.site-footer-area-top-inner > span,
.site-footer-area-top-inner > h1, 
.site-footer-area-top-inner > h2,
.site-footer-area-top-inner > h3,
.site-footer-area-top-inner > h4,
.site-footer-area-top-inner > h5,
.site-footer-area-top-inner > h6 {
	display: inline-block;
	padding: 0.25em 0.5em;
	background-color: var(--color-red);
}

.site-info {
	width: 100%;
	text-align: center;
	padding-bottom: 0 !important;
}

.site-info span {
	font-size: 1.5em;
}

.footer-widgets {
	padding-top: calc(var(--white_space) / 2) !important;
	padding-bottom: calc(var(--white_space) / 2) !important;
}

footer .widget_block,
.widget_nav_menu {
	padding: 0 !important;
}

.widget_nav_menu {
	margin: 0 !important;
}

footer nav {
	text-align: center;
}

span.sep {
	margin: 0 1rem;
	color: transparent !important;
}


/* MEDIA QUERIES */

@media screen and (min-width: 1920px) {

	.site-header-inner,
	.site-footer-area-inner,
	.content-area,
	.has-blocks .content-area,
	.wp-block-cover .wp-block-cover__inner-container,
	.alignwide-wrap,
	.wp-block-quote p,
	.wp-block-quote cite,
	.wpgmza-gdpr-compliance	{
		width: 75% !important;
		max-width: 1600px !important;
	}
	
	.alignwide-wrap {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.alignwide-wrap > .alignwide {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

}

@media screen and (min-width: 1280px) {
	
	:root {
		--white_space: 5rem !important;
	}
		
	#menu-primary {
		margin-left: calc(var(--custom_logo_height) * 1.5);
	}
	
	nav ul.menu-primary > li > a,
	nav ul.sub-menu > li > a {
		letter-spacing: 0.5px !important;
	}
	
	.wp-block-cover .wp-block-cover__inner-container > :not(.alignfull):not(.alignwide):not(.alignwide-wrap) {
		/* margin-left: -7.5%; */
	}
	
	.wp-block-cover .wp-block-cover__inner-container h2 {
		max-width: 50%;
	}
	
}

@media screen and (min-width: 1200px) and (max-width: 1919px) {
		
	.site-header-inner,
	.site-footer-area-inner,
	.content-area,
	.has-blocks .content-area,
	.wp-block-cover .wp-block-cover__inner-container,
	.alignwide-wrap,
	.wp-block-quote p,
	.wp-block-quote cite,
	.wpgmza-gdpr-compliance	{
		width: 85% !important;
		max-width: 1200px !important;
	}
	
	.alignwide-wrap {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.alignwide-wrap > .wp-block-group__inner-container {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
}

@media screen and (min-width: 880px) and (max-width: 1199px) {
	
	.site-header-inner,
	.site-footer-area-inner,
	.content-area,
	.has-blocks .content-area,
	.wp-block-cover .wp-block-cover__inner-container,
	.alignwide-wrap,
	.wp-block-quote p,
	.wp-block-quote cite,
	.wpgmza-gdpr-compliance	{
		width: 88% !important;
		max-width: 1000px !important;
	}
	
	.alignwide-wrap {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.alignwide-wrap > .wp-block-group__inner-container {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
	.wp-block-cover .wp-block-cover__inner-container > :not(.alignfull):not(.alignwide):not(.alignwide-wrap) {
		/* margin-left: -2.5%; */
	}
	
	.wp-block-cover .wp-block-cover__inner-container h2 {
		max-width: 50%;
	}
	
}

@media screen and (min-width: 900px) {

	nav ul.menu-primary > li > a,
	nav ul.sub-menu > li > a {
		letter-spacing: 0.125px !important;
	}
	
}

@media screen and (max-width: 899px) {
	
	.wp-block-cover .wp-block-cover__inner-container > :not(.alignfull):not(.alignwide):not(.alignwide-wrap) {
		margin-left: auto;
	}
	
	nav ul.menu-primary > li > a,
	nav ul.sub-menu > li > a {
		letter-spacing: 0px !important;
	}
	
}

@media screen and (min-width: 880px) {
	
	.menu-toggle {
		display: none !important;
	}
	
	#menu-primary {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
	}
			
	nav ul.menu-primary > li > a {
		/* padding: 0 0 15px 0 !important; */
		padding: 0 !important;
	}

	nav ul.menu-primary > li > a:hover {
		color: var(--color-red) !important;
	}
	
	nav ul.sub-menu > li > a {
		font-size: 0.75em !important;
		line-height: 1.5em !important;
		text-transform: uppercase !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	nav ul.sub-menu > li:not(:last-child) {
		/* border-bottom: 1px solid var(--color-white) !important; */
	}

	nav ul.sub-menu > li > a,
	nav ul.sub-menu > li > a:hover {
		color: var(--color-white) !important;
	}
	
	.toggle-sub-menus .button-toggle-sub-menu,
	.toggle-sub-menus .button-toggle-sub-menu:hover	{
		margin-left: 0.5em;
		color: var(--color-red) !important;
		opacity: 1 !important;
	}

	.main-navigation-container .sub-menu {
		background-color: var(--color-red) !important;
		margin: 0 -0.75em !important;
		padding: 0.5em 0.75em !important;
		box-shadow: 0 0.25em 1em rgba(0,0,0,0.25) !important;
		text-align: left !important;
	}

	.sub-menu-inner {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
		width: auto;
		height: auto;
	}

	.site-content-inner {
		padding: 5em 0 !important;
	}
	
	.wp-block-cb-carousel .slick-slide {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.slick-next {
		right: -2.5rem !important;
	}

	.slick-prev {
		left: -2.5rem !important;
	}
	
	.cmplz-blocked-content-container .cmplz-blocked-content-notice,
	.cmplz-blocked-content-container .cmplz-blocked-content-notice:hover,
	.cmplz-wp-video .cmplz-blocked-content-notice,
	.cmplz-wp-video .cmplz-blocked-content-notice:hover {
		left: 12.5% !important;
		max-width: 75% !important;
		transform: translate(0%, -50%) !important;
	}

}

@media screen and (max-width: 879px) {
	
	:root {
		--custom_logo_height: 100px;
	}
	
	#masthead {
		height: 125px;
	}
	
	#content {
		padding-top: 125px;
	}
	
	.site-header-inner {
		flex-flow: row nowrap;
	}
	
	.site-header-inner .site-branding {
		flex: 1 0 auto;
	}	
		
	.site-header-inner .site-controls {
		max-width: 100px;
	}
	
	.site-header-inner .site-branding-logo,
	.site-header-inner .site-branding-contact {
		width: unset;
		height: var(--custom_logo_height);
	}
	
	.site-header-inner .site-branding-contact {
		flex: 1;
		align-items: center;
		justify-content: center;
	}
	
	#site-navigation,
	#site-navigation.is-active {
		position: relative;
		height: 3rem;
	}
	
	.menu-toggle {
		display: inline-block !important;
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: auto !important;
		left: auto !important;
		width: 3rem !important;
		height: 3rem !important;
		margin-right: 0 !important;
		padding: 0 !important;
		font-size: 1em !important;
		box-shadow: none !important;
		animation: none !important;
	}
	
	.menu-toggle,
	.is-active .menu-toggle,
	.toggled .menu-toggle {
		margin-top: 0 !important;
		z-index: 1001 !important;
	}
	
	.main-navigation:not(.toggled) .menu-toggle:not(:hover):not(:active),
	.main-navigation:not(.toggled) .menu-toggle:focus {
		background-color: var(--color-white) !important;
		color: var(--color-red) !important;
		border: none !important;
		box-shadow: none !important;
		animation: none !important;
	}
	
	.main-navigation.toggled .menu-toggle:not(:hover):not(:active),
	.main-navigation.toggled .menu-toggle:focus {
		background-color: transparent !important;
		color: var(--color-white) !important;
		border: none !important;
		box-shadow: none !important;
		animation: none !important;
	}
	
	.menu-toggle::before,
	.menu-toggle:hover::before {
		display: block !important;
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		margin: 0 auto !important;
		font-size: 1.3em !important;
		line-height: 2.75rem !important;
		text-align: center !important;
	}
	
	.is-active .menu-toggle {
		display: block !important;
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: auto !important;
		left: auto !important;
		width: 3rem !important;
		height: 3rem !important;
		margin-top: unset !important;
		text-indent: -999em !important;
		border-width: 0 !important;
		will-change: transform !important;
	}
	
	.is-active .menu-toggle::before {
		display: block !important;
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		margin: 0 auto !important;
		font-size: 1.3em !important;
		line-height: 2.75rem !important;
		text-align: center !important;
		text-indent: 0 !important;
	}
	
	.has-navigation-mobile .main-navigation-container {
		visibility: hidden;
		position: fixed;
		width: 100%;
		height: 100%;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		flex-flow: column wrap;
		background-color: var(--color-transparent-red);
		color: var(--color-white) !important;
		z-index: 1000;
		opacity: 0;
		box-shadow: none !important;
		animation: none !important;
		-webkit-transform: scaleY(0);
		-ms-transform: scaleY(0);
		transform: scaleY(0);
		-webkit-transform-origin: 50% 0;
		-ms-transform-origin: 50% 0;
		transform-origin: 50% 0;
		-webkit-transition: visibility 0s linear 0.3s, opacity 0.3s, -webkit-transform 0.3s;
		transition: visibility 0s linear 0.3s, opacity 0.3s, -webkit-transform 0.3s;
		-o-transition: visibility 0s linear 0.3s, opacity 0.3s, transform 0.3s;
		transition: visibility 0s linear 0.3s, opacity 0.3s, transform 0.3s;
		transition: visibility 0s linear 0.3s, opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
	}
	
	.has-navigation-mobile .is-active .main-navigation-container {
		visibility: visible;
		opacity: 1;
		-webkit-transform: scaleY(1);
		-ms-transform: scaleY(1);
		transform: scaleY(1);
		-webkit-transition: visibility 0s linear 0s, opacity 0.3s, -webkit-transform 0.3s;
		transition: visibility 0s linear 0s, opacity 0.3s, -webkit-transform 0.3s;
		-o-transition: visibility 0s linear 0s, opacity 0.3s, transform 0.3s;
		transition: visibility 0s linear 0s, opacity 0.3s, transform 0.3s;
		transition: visibility 0s linear 0s, opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
	}
	
	.main-navigation {
		float: right;
		margin-right: 0 !important;
		font-size: 1.1em !important;
	}
	
	.has-navigation-mobile .main-navigation-container .menu {
		position: relative;
		flex: 1;
		overflow-y: auto;
	}
	
	.has-navigation-mobile .main-navigation-container > .menu > ul {
		display: flex;
		flex-flow: column wrap;
		justify-content: center;
		align-items: flex-start;
		max-width: 100%;
		height: 100%;
		padding: 15% 10% 15% 10%;
		margin-left: auto;
		margin-right: auto;
		text-align: left;	
	}
	
	.has-navigation-mobile .main-navigation-container > .menu > ul > li.menu-item {
		display: inline-flex;
		align-items: center;
		width: 100%;
		margin-left: 0 !important;
		line-height: 1em !important;
		/* border-top: 1px solid var(--color-white) !important; */
	}
	
	.has-navigation-mobile .main-navigation-container > .menu > ul > li.menu-item:nth-last-child(2) {
		/* border-top: 1px solid var(--color-white) !important;
		border-bottom: 1px solid var(--color-white) !important; */
	}
	
	.has-navigation-mobile .main-navigation-container > .menu > ul > li.menu-item .button-toggle-sub-menu {
		order: 2 !important;
		display: block !important;
		width: 1em !important;
		height: 1em !important;
		margin: 0 0 0 1em !important;
		font-size: inherit !important;
		line-height: inherit !important;
		/*
		border-top: none !important;
		border-right: 1px solid var(--color-white) !important;
		border-bottom: none !important;
		border-left: none !important;
		*/
		opacity: 1 !important;
	}
	
	.toggle-sub-menus .button-toggle-sub-menu {
		border: 0 !important;
	}
	
	.toggle-sub-menus .button-toggle-sub-menu::after,
	.toggle-sub-menus .button-toggle-sub-menu::before {
		width: 3px !important;
		height: 0.75em !important;
	}
	
	.has-navigation-mobile .main-navigation-container > .menu > ul > li.menu-item > a {
		order: 1 !important;
		flex: 1;
		display: block;
		width: auto;
		padding: 0 !important;
	}
	
	.has-navigation-mobile .main-navigation-container li.menu-item a,
	.has-navigation-mobile .main-navigation-container li.menu-item a:hover {
		border-color: transparent !important;
	}
	
	.has-navigation-mobile .main-navigation-container .sub-menu {
		order: 3 !important;
		/* background-color: var(--color-green); */
		/* border-left: 1px solid var(--color-white) !important; */
	}
	
	.has-navigation-mobile .main-navigation-container li.has-expanded-sub-menu .sub-menu {
		display: flex;
		flex-flow: column wrap;
		justify-content: center;
		align-items: flex-start;
	}
	
	.has-navigation-mobile .main-navigation-container li.has-expanded-sub-menu .sub-menu li {
		display: block;
		width: 100%;
		padding-left: 1em !important;
		/* padding-left: 3em !important; */
		line-height: 1em !important;
	}
	
	.has-navigation-mobile .main-navigation-container .sub-menu li:not(:last-child) {
		/* border-bottom: 1px solid var(--color-white) !important; */
	}
	
	.has-navigation-mobile .main-navigation-container li.has-expanded-sub-menu .sub-menu a {
		display: inline-block;
		/* width: 100%; */
		padding: 0 !important;	
	}
	
	.has-navigation-mobile .main-navigation-container .sub-menu a:before {
		content: "" !important;
		display: none !important;
		visibility: hidden !important;
		width: 0 !important;
		height: 0 !important;
	}
	
	.has-navigation-mobile .site-footer > div:last-child {
		margin-bottom: 0 !important;
	}
	
	nav ul.menu-primary > li > a,
	.has-navigation-mobile .main-navigation-container li.has-expanded-sub-menu .sub-menu a {
		letter-spacing: 0.5px !important;
		text-transform: uppercase;
		color: var(--color-white) !important;
	}
	
	nav ul.menu-primary > li > a {
		font-size: 1.25rem !important;
		line-height: 2.5rem !important;
	}
	
	.has-navigation-mobile .main-navigation-container li.has-expanded-sub-menu .sub-menu a {
		font-size: 1rem !important;
		line-height: 1.25rem !important;
	}
	
	.site-branding-contact-mobile {
		display: block !important;
		visibility: visible !important;
		position: absolute;
		bottom: 5%;
		width: 100% !important;
		height: auto !important;
		padding: 5% 10%;
		z-index: 998;
	}
	
	.site-branding-contact-mobile a {
		line-height: 1.5em;
		margin-bottom: 1em;
		padding: 0 !important;
		background-color: transparent !important;
	}
	
	.no-widgets-sidebar .content-area,
	.wp-block-group.alignfull:not(.is-intro) > .wp-block-group__inner-container,
	.wp-block-quote p,
	.wp-block-quote cite,
	.site-footer-area-top:not(.has-no-padding) .site-footer-area-top-inner	{
		width: 88% !important;
		float: none !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	
	.wp-block-group__inner-container {
		max-width: unset;
	}
	
	.alignwide-wrap {
		max-width: 100% !important;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.alignwide-wrap > .wp-block-group__inner-container {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
	.wp-block-cover.alignfull:not(.has-parallax) {
		max-width: 100%;
		min-height: calc(75vh - 75px);
	}
			
	.wp-block-cover .wp-block-cover__inner-container {
		max-width: 75% !important;
		hyphens: auto;
	}
	
	.wp-block-cb-carousel .slick-slide {
		padding: 0 !important;
		/*
		padding-left: 1.5em !important;
		padding-right: 1.5em !important;
		*/
	}
	
	.slick-next {
		right: -1rem !important;
	}

	.slick-prev {
		left: -1rem !important;
	}
	
	.cmplz-blocked-content-container .cmplz-blocked-content-notice,
	.cmplz-blocked-content-container .cmplz-blocked-content-notice:hover,
	.cmplz-wp-video .cmplz-blocked-content-notice,
	.cmplz-wp-video .cmplz-blocked-content-notice:hover {
		left: 6% !important;
		max-width: 88% !important;
		transform: translate(0%, -50%) !important;
	}
	
}

@media screen and (max-width: 879px) and (orientation: landscape) {

	.has-navigation-mobile .main-navigation-container .menu > ul {
		padding: 0 20% !important;
	}
	
	.has-navigation-mobile .main-navigation-container .sub-menu-items {
		flex-flow: row nowrap;
		justify-content: flex-start;
		align-items: space-between;
		max-width: 100%;
		width: 100%;
	}
	
	.has-navigation-mobile .main-navigation-container li {
		padding-top: 0.25rem;
		padding-bottom: 0.25rem;
	}
	
	nav ul.menu-primary > li > a {
		font-size: 1rem !important;
		line-height: 2rem !important;
	}
	
	.has-navigation-mobile .main-navigation-container li.has-expanded-sub-menu .sub-menu a {
		font-size: 0.75em !important;
	}
	
	.site-branding-contact-mobile {
		display: none !important;
		visibility: hidden !important;
		width: 0 !important;
		height: 0 !important;
	}
	
	.wp-block-cover.alignfull:not(.has-parallax) {
		min-height: calc(100vh - 150px);
		height: auto;
	}
	
	.is-intro .wp-block-cover .wp-block-cover__inner-container {
		max-width: 100% !important;
	}
	
}

@media screen and (min-width: 782px) {
	
	.hide-desktop {
		display: none !important;
		visibility: hidden !important;
		width: 0 !important;
		height: 0 !important;
	}
	
	.alignnarrow {
		width: 75% !important;
	}

	.alignbreakout {
		max-width: unset !important;
		margin-left: -7.5%;
		margin-right: -7.5%;
	}
	
	.wbg-person .wp-block-column:first-child {
		margin-bottom: 0 !important;
	}
	
	.wp-block-column:last-child {
		margin-bottom: 0 !important;
	}

	.wbg-tabs.red .wbg-tab-navigation ul {
		border-bottom: 1px solid var(--color-red);
	}

	.wbg-tabs.green .wbg-tab-navigation ul {
		border-bottom: 1px solid var(--color-green);
	}

	.wbg-tab-navigation ul li {
		display: inline-block;
		width: auto;
	}
				
	.wbg-tab-navigation ul li:not(:first-of-type) {
		margin-left: 0.5em;
	}

	.wbg-tab-navigation ul li:not(:last-of-type) {
		margin-right: 0.5em;
	}
	
	.wbg-tabs.red .wbg-tab-navigation ul li.active {
		border-bottom: 1px solid var(--color-red);
	}

	.wbg-tabs.green .wbg-tab-navigation ul li.active {
		border-bottom: 1px solid var(--color-green);
	}
	
}

@media screen and (max-width: 781px) {
	
	h1:not(.site-title),
	h2.intro-title { 
		font-size: 2.75em !important;
		hyphens: auto;
	}
	
	.wp-block-columns.has-full-width-mobile:not(.is-not-stacked-on-mobile) > .wp-block-column:not(:only-child) {
		flex-basis: 100% !important;
		flex-grow: 1 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
	.wp-block-columns:not(:last-child) {
		margin-bottom: calc(var(--white_space) / 2) !important;
	}
	
	.posts-layout-list #news-content-timeline.posts .wp-block-column,
	.wp-block-columns:not(.has-gallery-right) .wp-block-column:last-child {
		margin-bottom: 0 !important;
	}
	
	.wp-block-columns.has-gallery-right .wp-block-column:not(:last-child) {
		margin-bottom: 0 !important;
	}
	
	.wp-block-columns.has-gallery-right .wp-block-column:nth-child(2) {
		order: 1 !important;
		margin-left: 0;
	}
	
	.wp-block-columns.has-gallery-right .wp-block-column:nth-child(1) {
		order: 2 !important;
		margin-left: var(--wp--style--block-gap,2em);
	}
		
	.wp-block-cover {
		min-height: 200px;
	}
	
	nav.pagination {
		display: flex;
		flex-flow: row nowrap;
		justify-content: space-between;
	}
	
	nav.pagination span,
	nav.pagination a {
		flex-grow: 1;
		margin: 0 0.5rem !important;
		padding: 1rem 0.5rem !important;
	}
	
	nav.pagination > *:first-child {
		margin-left: 0 !important;
	}
	
	nav.pagination > *:last-child {
		margin-right: 0 !important;
	}
	
	nav.pagination::after {
		display: none !important;
	}
	
	.wbg-person .wp-block-image img {
		width: 100% !important;
		height: auto;
	}

	.wbg-tab-navigation ul li {
		display: block;
		width: 100%;
		margin: 0 0 1em 0;
	}
	
	.wbg-tabs.red .wbg-tab-navigation ul li.active a {
		border-bottom: 1px solid var(--color-red);
	}

	.wbg-tabs.green .wbg-tab-navigation ul li.active a {
		border-bottom: 1px solid var(--color-green);
	}
	
	footer .wp-block-columns {
		display: block !important;
		margin-bottom: calc(var(--white_space) / 2) !important;
	}
	
	footer .wp-block-column > .wp-block-columns > .wp-block-column:first-child {
		margin-bottom: 0.5em;
	}
	
	footer .site-info {
		/* padding-top: 0 !important; */
	}
	
}

@media screen and (max-width: 600px) {
	
	h1:not(.site-title),
	h2.intro-title { 
		font-size: 2.5em !important;
		hyphens: auto;
	}
	
	:root {
		--custom_logo_height: 75px;
	}
	
	#masthead {
		height: 90px;
	}
	
	#content {
		padding-top: 90px;
	}
	
	.site-header-inner .site-controls {
		max-width: 75px;
	}
	
	.site-mail,
	.site-phone {
		font-size: 0.75em;
	}
	
	.site-info {
		display: flex;
		flex-flow: column wrap;
	}
	
	.site-info span.sep {
		display: none;
		visibility: hidden;
	}
	
	.wp-block-columns.has-gallery-right .wp-block-column:nth-child(1) {
		margin-left: 0;
	}
	
	.is-intro .wp-block-cover .wp-block-cover__inner-container {
		max-width: 100% !important;
	}
	
	.has-parallax {
		background-attachment: scroll;
    }
	
	.is-intro .wp-block-cover > * {
		text-align: center;
	}
	
}

@media screen and (max-width: 54.9375em) and (orientation: portrait) {
	
}

@media screen and (max-width: 54.9375em) and (orientation: landscape) {

	
}

@media screen and (min-width: 42em) and (max-width: 54.9375em) {

	.main-navigation-container .menu {
		margin-top: 0 !important;
	}

}

@media screen and (max-width: 41.9375em) and (min-height: 28em) {
	
}

@media screen and (max-width: 41.9375em) {
	
	.main-navigation-container .menu {
		margin-top: 0 !important;
	}
	
	.main-navigation {
		font-size: 1.1em !important;
	}
	
	.has-navigation-mobile .main-navigation-container {
		transform-origin: 50% 0;
	}
	
	.has-navigation-mobile .main-navigation-container .menu > ul {
		padding: 15% 10% 15% 10%;
	}
	
	.wp-block-cover .wp-block-cover__inner-container > :not(.alignfull):not(.alignwide):not(.alignwide-wrap) {
		margin-left: auto;
	}
	
	.wp-block-cover .wp-block-cover__inner-container h2 {
		max-width: 100%;
	}
	
}

@media screen and (max-width: 450px) {
	
	:root {
		--custom_logo_height: 50px;
	}
	
	#masthead {
		height: 75px;
	}
	
	#content {
		padding-top: 75px;
	}
	
	.site-header-inner .site-branding-contact {
		display: none;
	}
	
	.has-navigation-mobile .main-navigation-container > .menu > ul > li.menu-item {
		font-size: 1.25em;
	}
	
	.main-navigation {
		font-size: 1.25em !important;
	}

}

@media screen and (max-width: 350px) {
	
	#masthead {
		height: 65px;
	}
	
	#content {
		padding-top: 65px;
	}
	
	.site-description {
		display: none !important;
	}
	
	.has-navigation-mobile .main-navigation-container > .menu > ul > li.menu-item {
		font-size: 1em;
	}
	
}

@supports (-webkit-overflow-scrolling: touch) {
	
    .has-parallax {
		background-attachment: scroll;
    }
	
}