/*
	(c)2021 - visuallizard.com

	Responsive styles using Media Queries
*/

:root {
    --black: #000000;
    --white: #ffffff;
    --gray: #c0c0c0;
    --ltgray: #f0f0f0;
    --dkgray: #444444;
    --blue: #006688;
    --gold-deep: #7B7A2B;
    --gold: #cecc72;
}

span.mobile-menu-toggle,
span.search-toggle { display: none; }

/* Larger Desktop sizes (more than 1400px): */
@media only screen and (min-width: 1400px) {
	body:before { content: 'x-large'; }

}

/* Desktop sizes (up to 1400px): */
@media only screen and (max-width: 1400px) {
	body:before { content: 'large'; }

}

/* Medium Tablet sizes (up to 1024px):  usually when mobile nav mode kicks in */
@media only screen and (max-width: 1024px) {
	body:before { content: 'medium'; }

	.site-header .container { padding: 0 2rem; }
	.container { padding: 2rem; }
	footer div.container { padding: 0 2rem; }
	footer div.container div.footer-block { flex-basis: 49%; max-width: 49%; }
	footer div.container div.footer-block#map { flex-basis: 100%; max-width: 100%; }

	/* 	Site Header */
	.site-header { padding: 0; }
	.site-header-container { display: flex; justify-content: space-between; }
	.site-title { margin-top: 1rem; flex-basis: 32%; max-width: 32%; }
	.site-title-img { max-height: 80px; }

	.search-form { float: none; margin: 1rem; display: none; }

	/* MOBILE nav */
	.main-nav { z-index: 100; background: #444; color: #fff; font-size: 18px; box-shadow: none; }
	.main-nav .nav-list,
	.main-nav li > .sub-list { width: 100%; max-height: 9999px; transform: scale(1); transition: max-height .2s ease-in; background: transparent; margin: 0 0 1rem 0; padding: 0; position: relative; top: auto; left: auto; opacity: 1; visibility: visible; border: none; box-shadow: none; }
	.main-nav li > .sub-list { padding: 0 0 0 1rem; }
	.main-nav .nav-item { border-top: 1px solid rgba(255,255,255,.1); display: flex; flex-wrap: wrap; overflow: hidden; }
	.main-nav .nav-link, .main-nav .nav-1 > .nav-item > .nav-link { -webkit-tap-highlight-color: transparent; width: 100%; border: none; padding-right: 0; }
	.main-nav .nav-link:hover { opacity: .8; }
	.main-nav .nav-item:hover > .nav-link { color: inherit; border: none; }

	.main-nav .nav-1 > .nav-item[data-nav-status="has-active"] > .nav-link,
	.main-nav .nav-1 > .nav-item[data-nav-status="active"] > .nav-link,
	.main-nav .nav-1 > .nav-item:hover > .nav-link { background: rgba(255,255,255,.5); }

	.main-nav .nav-1 { display: block; }
	.main-nav .nav-1 li a { color: #fff; padding: 0.5rem; }
	.main-nav .nav-1 > li > a {  font-weight: bold; color: #fff; text-align: left; }

	.main-nav .has-sub > .nav-link::after { content: none; }

	.main-nav .sub-list .sub-list { left: auto; display: block; visibility: visible; opacity: 1; transform: scale(1); left: auto; position: static; top: auto; margin: 0; padding: 0; }

	.main-nav .nav-2 { /* text-align: center;  */}
	.main-nav .nav-2 > li { padding: 0; position: relative; }
	.main-nav .nav-2 li a { border-bottom: none; }
	.main-nav .nav-2 > .nav-item[data-nav-status="active"] > .nav-link { font-weight: 700; background-image: linear-gradient(to right, transparent, #fff); }

	.main-nav li > .nav-3 > li { padding-left: 1.5em; }
	.main-nav li > .nav-4 > li { padding-left: 2.5em; }
	.main-nav li > .nav-5 {  }

	.js         .main-nav { max-height: 100vh; display: block; position: absolute; left: -100%; left: -100vw; top: 0px; width: 100%; width: 100vw; height: auto; min-height: 100vh; padding: 4rem 1rem 1rem; margin: 0; overflow: hidden; transition: transform .2s ease-in;  z-index: 1000; }
	.js .nav-on .main-nav { max-height: none; transform: translateX(100%); }

	.nav-toggle { position: absolute; top: 0; right: 15px; width: 42px; height: 42px; min-width: 0; margin: 1rem 0; color: inherit; padding: 0; border: none; z-index: 1001; background: transparent; transition: color .2s; flex-shrink: 0; }
	.js .nav-on .nav-toggle,
	.js .nav-on .nav-toggle:hover { color: #fff; }

	.js .nav-on main,
	.js .nav-on .site-footer { max-height: 0; overflow: hidden; /* hide content when navigation is open */ }

	/* mega-menu responsive */
	.mega-container { padding: 0; }
	.mega-container p.mega-title { display: none; }


	/* 	Featured banners */
	.slick-dots {  }
	.banner-container { padding: 2% 4%; }



	/* 	General styles */

	.cke > .c2,
	.cke > .c3,
	.cke > .c4,
	.cke > .c5,
	.cke > .c6 { float: none; margin-left: 0; width: auto; }

	.region-row { display: block; }
	.region-cell { padding: 0; }

	.flex { display: block; }
	.flex > div + div { margin: 0 0 1em 0; }

	h1, .h1 { font-size: 3.5rem; }
	h2, .h2 { font-size: 2.8rem; }
	h3, .h3 { font-size: 2.0rem; }

	table { font-size: 1.6rem; }

	/* Forms */
	.fm-form [type="url"],
	.fm-form [type="tel"],
	.fm-form [type="text"],
	.fm-form [type="date"],
	.fm-form [type="email"],
	.fm-form [type="number"],
	.fm-form [type="password"],
	.fm-form select,
	.fm-form textarea { -webkit-appearance: none; }

	.fm-form [type="date"] {  min-height: 46px; }
	.fm-form [class^="input-"] { width: 100%; }

	.button { font-size: 1rem; min-width: 0; }
	.button.large { font-size: 100%;  margin-left: 0; margin-right: 0; }


	.pagination-links { font-size: 16px; }
	.pagination-links li:not([class]) { display: none; }

	.img-left,
	.img-right { float: none; margin-left: 0; margin-right: 0; }


	/* 	Modules */

	/* 	Toggles */
	.toggle { right: 1rem; top: .85rem; width: 1.5rem; height: 1.5rem; }
	.toggle-head {padding: .5rem 3rem .5rem 1rem; }
	.toggle-head > .toggle-title { font-size: 18px; }
	.is-toggle-on .toggle-details { padding-left: 0; padding-right: 0; }


	/* 	Staff */
	.staff-item { width: 45%; min-width: 0; }


	/* 	Documents */
	.document-item { width: 45%; }
}

/* Medium Tablet sizes (up to 800px):  usually when mobile nav mode kicks in */
@media only screen and (max-width: 800px) {

}

/* Small Mobile sizes (up to 520px): */
@media only screen and (max-width: 520px) {
	body:before { content: 'small'; }

    div.page-title > h1 { font-size: 2.8rem; }
	footer div.container div.footer-block { flex-basis: 100%; max-width: 100%; }

	/* 	News */
	.article-item  { width: 100%; }

	/* 	Events */
	.event-item { width: 100%; }

}
