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

	#header .nav-toggle,
	#main-nav .menu .more,
	#main-nav .social-links {display:none;}

	#main-nav .menu {display:flex;}
	#main-nav .menu li {margin-left:30px; padding:10px 0; line-height:30px; font-size:18px;}
	#main-nav .menu li a {display:block; color:var(--color-theme-a);}
	
	#main-nav .menu > li.menu-item-has-children {position:relative;}
	#main-nav .menu > li.menu-item-has-children::after {position:absolute; inset:auto auto 0 50%; display:block; width:0; height:0; content:''; border:4px solid #0000; border-bottom:none; border-top-color:var(--color-theme-a); transform:translateX(-50%);}
	
	#main-nav .menu > li.menu-item-has-children > .sub-menu-wrap {z-index:100; position:absolute; inset:100% auto auto 50%; padding:15px 0 0 0; visibility:hidden; opacity:0; transform:translateX(-50%); transition:visibility 0.1s ease, opacity 0.1s ease;}
	#main-nav .menu > li.menu-item-has-children:hover > .sub-menu-wrap,
	#main-nav .menu > li.menu-item-has-children > a:focus + .sub-menu-wrap,
	#main-nav .menu > li.menu-item-has-children > .sub-menu-wrap:focus-within {visibility:visible; opacity:1;}
	
	#main-nav .menu > li.menu-item-has-children > .sub-menu-wrap > .sub-menu {padding:20px 20px 15px 20px; text-align:left; background:var(--color-theme-c);}
	#main-nav .menu > li.menu-item-has-children > .sub-menu-wrap > .sub-menu li {margin:0 0 5px 0; padding:0; font-size:16px; line-height:var(--def-line-height); white-space:nowrap;}
	
	#banner .wrapper {width:980px;}
	#banner .details p.intro-text {font-size:48px;}

}
 

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

	:root {
		--h1-font-size:40px; 
		--h2-font-size:30px; 
		--h3-font-size:20px; 
		--content-width:980px;
		--lyt-bl-pad-top:60px;
	}

	.cols-wrap.cols-2 {--cols-gap:40px;}
	.button {padding:10px 15px; font-size:16px;}

	.editable-content p.intro-text {font-size:22px;}

	#header {padding:10px 0;}

	#header .nav-toggle {display:block; margin-left:20px; padding:13px 0; border:none;}
	.nav-active #header .nav-toggle {position:relative; z-index:3001;}
	#header .nav-toggle span,
	#header .nav-toggle span::before,
	#header .nav-toggle span::after {position:absolute; display:block; width:30px; height:2px; content:''; background:#FFF; transition:all 0.2s ease;}
	#header .nav-toggle span {position:relative; text-indent:-9999px;}
	#header .nav-toggle span::before {top:-9px;}
	#header .nav-toggle span::after {bottom:-9px;}
	#header .nav-toggle:hover span::before {top:-11px;}
	#header .nav-toggle:hover span::after {bottom:-11px;}
	.nav-active #header .nav-toggle span {background:#0000;}
	.nav-active #header .nav-toggle span::before {top:0; transform:rotate(-45deg);}
	.nav-active #header .nav-toggle span::after {bottom:0; transform:rotate(45deg);}

	#main-nav {z-index:3000; position:fixed; inset:-100vh 0 auto 0; width:100vw; min-height:calc(100vh - var(--header-height)); max-height:calc(100vh - var(--header-height)); padding-top:var(--header-height); color:#FFF; background:var(--color-theme-c); opacity:0; visibility:hidden; transition:all 0.2s ease;}
	.nav-active #main-nav {top:0; opacity:1; visibility:visible;}
	.logged-in.nav-active #main-nav {top:var(--wpadminbar-height); min-height:calc(100vh - (var(--header-height) + var(--wpadminbar-height))); max-height:calc(100vh - (var(--header-height) + var(--wpadminbar-height)));}
	
	#main-nav .nav-wrap {display:flex; min-height:inherit; max-height:inherit; overflow-y:auto;}
	#main-nav .content {width:var(--wrapper-width); margin:auto; padding:0 20px;}

	#main-nav .menu {margin-bottom:40px; text-align:right;}
	#main-nav .menu.has-sub-nav {padding-right:45px;}
	#main-nav .menu li {margin:0 0 15px 0; font-size:30px; line-height:30px;}
	#main-nav .menu li a {color:#FFF;}
	
	#main-nav .menu li.menu-item-has-children a {display:inline-block;}
	#main-nav .menu li.menu-item-has-children .sub-menu-wrap {display:none;}
	#main-nav .menu li.menu-item-has-children .sub-menu {padding:5px 0 10px 0;}
	#main-nav .menu li.menu-item-has-children .sub-menu li {margin:0; padding:5px 0 0 0; font-size:20px; line-height:1.4;}
	
	#main-nav .menu li.menu-item-has-children {position:relative;}
	#main-nav .menu li.menu-item-has-children .more {position:absolute; inset:3px -42px auto auto; display:block; width:24px; height:24px; text-indent:-9999px; overflow:hidden; transition:all 0.2s ease;}
	#main-nav .menu li.menu-item-has-children .more::before,
	#main-nav .menu li.menu-item-has-children .more::after {position:absolute; inset:50% auto auto 50%; display:block; width:22px; height:2px; content:''; background:#FFF; transition:all 0.2s ease;}
	#main-nav .menu li.menu-item-has-children .more::before {transform:translate(-50%, -50%);}
	#main-nav .menu li.menu-item-has-children .more::after {transform:translate(-50%, -50%) rotate(90deg);}
	#main-nav .menu li.menu-item-has-children .more.active::after {width:0;}

	#main-nav .social-links {display:flex!important; justify-content:flex-end;}
	#main-nav .menu.has-sub-nav + .social-links {padding-right:45px;}

	#banner {min-height:400px;}
	.front-page #banner .details {width:500px; max-width:100%; margin:0 auto;}
	.front-page #banner .details .logo {width:340px;}

	#main .content-section .cols-wrap .col .cols-1 .col.has-wrap {padding:30px 30px 10px 30px;}
	#main .content-section .cols-1 .col .cols-1 .col.has-wrap {padding:50px 50px 30px 50px;}
	#main .content-section .cols-3 {--cols-gap:10px;}

	#main .content-section .map-wrap {height:470px;}

	#main .map-section {height:400px;}

	#footer .cols-4 {grid-template-columns:1fr 1.25fr 1.25fr 1.25fr; --cols-gap:30px;}

}


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

	:root {
		--min-content-width:720px;
	}

	.cols-1 .col-1 .info-list .info .content {width:var(--min-content-width); margin:0 auto; padding-left:0;}

	#main .layout-section .intro.layout-b,
	#main .layout-section .outro.layout-b,
	#main .layout-section .cols-1.layout-b .col-1:not(.has-wrap) {width:var(--min-content-width);}

}


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

	:root {
		--content-width:760px;
		--lyt-bl-pad-top:50px;
	}

	.cols-wrap:not(.cols-1) .col .cols-wrap {grid-template-columns:1fr!important; gap:0;}

	#main .content-section .map-wrap {height:360px;}

	#footer .cols-4 {grid-template-columns:repeat(2, minmax(0, 1fr));}

	#footer .main-logo img {margin:0;}
	#footer .main-logo .logo {width:200px;}
	#footer .main-logo .strap {width:200px;}
	#footer .social-links {margin-top:40px;}

}


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

	:root {
		--wpadminbar-height:46px;
	}

}


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

    .cols-wrap.cols-2.cols-rev .col-1 {order:1;}
	
}


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

	:root {
		--body-font-size:18px;
		--h1-font-size:34px; 
		--h2-font-size:28px; 
		--h3-font-size:22px; 
		--content-width:620px;
	}

	.editable-content p.intro-text {font-size:20px;}

	.editable-content img {margin:0 0 20px 0;}
	.editable-content img.alignleft {float:none; margin-right:0;}
	.editable-content img.aligncenter {margin-right:auto; margin-left:auto;}
	.editable-content img.alignright {float:none; margin-left:auto;}
	.editable-content .wp-caption.alignleft {float:none; margin-right:0;}
	.editable-content .wp-caption.aligncenter {margin-right:auto; margin-left:auto;}
	.editable-content .wp-caption.alignright {float:none; margin-left:auto;}
	.editable-content .wp-caption.aligncenter .wp-caption-text {text-align:left;}

	.cols-wrap:not(.cols-1) {grid-template-columns:1fr!important; gap:0;}

	#main .layout-section.hide-bg {background-image:none!important;}

	#main .content-section .img-fh {height:50vw;}

	#main .map-section {height:300px;}

	#footer .social-links {margin:20px 0 40px -10px;}
	#footer .copy {margin-top:30px;}

}


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

	:root {
		--h1-font-size:30px; 
		--h2-font-size:24px; 
		--h3-font-size:20px; 
		--content-width:100%;
	}

	#header {padding:10px 0 0 0!important;}
	#header .main-logo img {height:40px;}

	#main-nav .menu li {font-size:22px;}
	#main-nav .menu li.menu-item-has-children .sub-menu li {font-size:16px;}
	
	#banner {min-height:300px;}

	#main .content-section .img-fh {height:75vw;}

	#main .content-section .cols-wrap .col .cols-1 .col.has-wrap,
	#main .content-section .cols-1 .col .cols-1 .col.has-wrap {padding:20px 20px 1px 20px;}

}

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

	#header .social-links {display:none;}


}
