/*
Theme Name: SharedGeo 
Theme URI: http://www.woolymammothdesign.com/
Author: Sally Wolleat
Author URI: http://www.woolymammothdesign.com/
Description: Custom WordPress Theme
Version: 1
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl.html
Tags: custom
Text Domain: wooly
*/

/*

<--- Table of Contents --->

1. Resets
2. General
3. Basic Structure
4. Header
5. Body
6. Footer
7. Slick Slider
8. Tabs
9. Accordion/Toggle
10. Media Queries

*/


/*-- 1. Resets--*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{font-size:100%;font:inherit;padding:0;border:0;margin:0;vertical-align:baseline;outline:none;}body{line-height:1}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0} article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block;position:relative;}.clear{clear:both}.screen-reader-text{clip:rect(1px, 1px, 1px, 1px);position:absolute !important}.size-auto,.size-full,.size-large,.size-medium,.size-thumbnail,img {max-width: 100%;height: auto;max-height: 100%;} a:hover,input[type=submit]:hover,button:hover{cursor:pointer} aside, section, div {-webkit-box-sizing: -moz-border-box;box-sizing: border-box; }*, :after, :before { -webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit; } html { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-smoothing: antialiased; font-weight: 100; }
@-moz-document url-prefix() { body { font-weight: lighter !important; } }

/*-- 2. General--*/
html {
    overflow-y: scroll;
	-webkit-font-smoothing: antialiased;
    }
body {
    line-height: 1.48em;
	font-size: 18px;
	font-display: auto;
    color: #54575a;
	font-family: 'Barlow', sans-serif;
	font-style: normal;
	font-weight: 300; 
}	
div {
	position: relative;
}
p {
    margin: 0 0 20px;
	line-height: 160%;
}
h1, h2, h3, h4, h5, h6, 
p.h1, p.h2, p.h3, p.h4 {
	font-family: 'Barlow', sans-serif;
	font-weight: 500;
    color: #333333;
	line-height: 1.4em;
	margin-bottom: 20px;
	font-stretch: normal;
	letter-spacing: 1px;
}
h1,
p.h1 {
    font-size: 3.4em;
	line-height: 1.2em;
	margin-bottom: 20px;
    }
h2,
p.h2 {
	margin-bottom: 15px;
    font-weight: 400;
    font-size: 2em;
	line-height: 1.3em;
    }
h3,
p.h3 {
	font-size: 1.2em;
	margin-bottom: 20px;
    }
h3.bigger,
p.h3.bigger {
	font-size: 1.4em;
	margin-bottom: 20px;
    }
h4,
p.h4 {
    color: #232935;
    font-size: 1em;
    font-weight: 600;
    letter-spacing: normal;
    border: 0;
    border-bottom: 3px solid #EAEAEA;
    display: table;
    padding-bottom: 5px;
}
h4.has-text-align-center,
p.h4.has-text-align-center {
	margin: 0 auto 20px;
}
h5,
p.h5 {
	font-size: 0.95em;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-bottom: 5px;
	}
h6 {
	font-size: 1.1em;
	font-weight: 300;
    }
h1.section-title,
h2.section-title,
h3.section-title,
h4.section-title,
h5.section-title {
	margin-bottom: 30px;
}
strong,
.bold {
	font-weight: 600;
}
.uppercase {
	text-transform: uppercase;
}
small,
.small {
    font-size: .9em;
}
.smaller {
    font-size: .8em;
}
sup {
    font-size: .5em;
    vertical-align: super;
	line-height: 0;
}
em {
	font-style: italic;
}
.underline {
	display: table;
	padding-bottom: .35em;
	border-bottom: solid 2px #235d73;
}
.underline-blue {
	border-color: #007afc;
}
.underline-green {
	border-color: #228a55;
}
.underline-orange {
	border-color: #ffac7b;
}
.centered.underline {
	margin-bottom: 30px;
}
.nomargin,
.no-margin {
	margin-bottom: 0;
}
.white-box .border-left,
.border-left {
    border-left: solid 3px rebeccapurple;
	border-bottom: none;
    padding: 0.25em 1.25em 0.25em 1em;
    margin-bottom: 20px;
    line-height: 1.75em;
    font-weight: bold;
    text-transform: capitalize;
    background: #f9f9f9;
}
.border-left.border-left-green {
	border-color: #228a55;
}
.border-left.border-left-blue {
	border-color: #007afc;
}
.border-left.border-left-orange {
	border-color: #ffac7b;
}
ul, 
ol {
	margin: 20px 0 20px 20px;
    padding-left: 30px;
	line-height: 160%;
}
ul {
	list-style: disc;
}
ol li {
    color: #4a4a4a;
}
ol ::marker {
	font-weight: bold;
	color: #007afb;
}
/*arrow list*/
ul.arrow-list {
    text-align: left;
    list-style: none;
    padding: 0;
    margin: 0 0 2em 1.5em;
}
ul.arrow-list li {
    position: relative;
    line-height: inherit;
    list-style: none;
    margin-left: 0px;
    padding-left: 0px;
}
ul.arrow-list li a {
	color: #333;
    border-bottom: 1px solid #d6d6d6;
    text-decoration: none !important;
}
ul.arrow-list li:before {
    display: inline-block;
    font-family: "SharedGeo";
    content: "\f10b";
    
	position: absolute;
    left: -1.5em;
    margin-right: 4px;
	
	font-size: 0.75em;
    line-height: 2em;

	transform: rotate(90deg);
}
/* checklist */
ul.checklist {
    list-style: none;
}
ul.checklist li {
    position: relative;
    display: flex;
    align-items: center;
    color: #4a4a4a;
    line-height: inherit;
    list-style: none;
    margin-left: 0px;
    padding-left: 0px;
}
ul.checklist li:before {
    display: inline-block;
    font-family: "SharedGeo";
    content: "\f129";
    position: absolute;
    left: -28px;
    margin-right: 4px;
    margin-top: 1px;
    padding: 0 3px;
    font-size: 12px;
    line-height: 18px;
    height: 18px;
    width: 18px;
    color: #ffffff;
    background-color: #4db743;
    border-radius: 100%;
	box-sizing: border-box;
}

ol{
    list-style: decimal;  
}
li {
	margin-bottom: 10px;
}
hr {
    border: none;
    border-top: solid 1px #dedede;
    margin: 40px 0;
}
ul.minimal {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}
ul.minimal li {
	margin: 0;
}
p.qa {
	display: flex;
}
p.qa:nth-child(even) {
	margin-bottom: 5px;
}
p.qa:nth-child(odd) {
	margin-bottom: 30px;
}
p.qa i {
	margin-right: 10px;
}
p.qa i.icons8-a {
	color: #007afc;
}

/*tables*/
table {
	width: 100%;
	margin: 0 0 30px;
}
table th {	
    padding: 20px 10px;
	font-weight: bold;
	color: #fff;
    background: #1e4d7d;   
}
table td {
	padding: 10px;
	border: solid 1px #eee;
}

/*Wordpress*/
img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*Gravity Forms*/
div.gform_wrapper {
    margin: 0;
}
.gfield {
	margin-bottom: 11px;
}
.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gform_wrapper textarea {
    border: none;
    border-radius: 3px;
    width: 100%;
    background: #eee;
    padding: 10px 10px;
}
.gform_wrapper.gravity-theme .gfield_label {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 0px;
    display: inline-block;
    padding: 0;
}
div.gform_wrapper select {
    border: none;
    border-radius: 3px;
    width: 100%;
    background: #eee;
    padding: 10px 10px;
}
.gform_wrapper textarea {
	height: 90px;
}
div.gform_wrapper .gform_footer input.button, 
div.gform_wrapper .gform_footer input[type=submit] {
	margin-bottom: 0;
}
body .gform_wrapper .top_label div.ginput_container {
    margin-top: 0px;
}
div.gform_wrapper .gform_footer {
    padding: 16px 0 0 0;
    margin: 16px 0 0 0;
}

@media screen and (max-width: 767px) {
	.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
	.gform_wrapper textarea {
		padding: 7px 10px;
		line-height: 1.4em;
	}
}


/*links and buttons*/
a, a:hover {
	text-decoration: none;
    color: #235d73;
    }
.a-white a {
	color: #ffffff;
}
a:focus {
	text-decoration:none;
	}
a:focus, input:focus, select:focus, textarea:focus {
    outline: none !important;
    }
input, textarea, select {
    max-width: 100%;
    }

/*buttons*/
.button,
a.button,
.wp-block-button a {
	position: relative;
	display: inline-block;
    padding: 15px 30px;
    margin: 10px 0 30px;
	font-size: .9em;
    color: #ffffff;
    font-weight: 100;
    letter-spacing: 1px;
    text-transform: uppercase;
    line-height: 1em;
    text-align: center;
    text-decoration: none !important;
    text-shadow: none;
    background-color: #4CB743;
    border: none;
	border-radius: 0;
	transition: all ease-in-out .2s;
}
.button:hover,
a.button:hover {
	transform: translateX(5px);
}
a.button.button-small {
	padding: 10px 16px 10px;
    font-size: .95em;
}
a.button.button-large,
.wp-block-button.button-large a {
	padding: 20px 40px;
    font-size: 1.1em;
}
.wp-block-button.no-margin a,
.wp-block-button.no-margin {
	margin: 0;
}
a.button.button-full-width {
	width: 100%;
}

/*ghost buttons*/
.button.ghost {
	border: solid 1px;
	background-color: transparent;
}
.is-style-outline>.wp-block-button__link:not(.has-background), 
.wp-block-button__link.is-style-outline:not(.has-background) {
	color: #111111;
}
.is-style-outline > .wp-block-button__link:hover, 
.wp-block-button__link.is-style-outline:hover {
	background-color: #111111;
	color: #ffffff;
}

/*helpers*/
.text-right {
	text-align: right;
}
.centered {
	margin: 0 auto 20px;
	text-align: center;
}
.desktop-hide,
.hidden-desktop,
.header-container-top-mobile {
	display: none;
}
.mobile-hide,
.hidden-mobile {
	display: block;
}
.background-image {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}
.absolutely-filled {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.wow {
	visibility: hidden;
}
iframe {
    max-width: 100%;
}
.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 0px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Opera and Firefox */
}
.white-box {
	margin: 20px 0;
    padding: 20px;
    background-color: #ffffff;
    box-shadow: 0px 0px 20px 5px rgb(0 0 0 / 12%);
}
.m-bottom-60 {
	margin-bottom: 60px;
}

/*custom pretty little scrollbar*/
.mini-scoller-inner {
	padding-right: 20px;
	width: 100%;
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
}
.mini-scoller-inner::-webkit-scrollbar {
    width: 5px;
}
 
.mini-scoller-inner::-webkit-scrollbar-track {
    -webkit-box-shadow: none;
	box-shadow: none;
	background-color: #ffffff2b;
}
 
.mini-scoller-inner::-webkit-scrollbar-thumb {
  background-color: #ffffffa6;
  outline: none;
}
.mini-scoller-inner > div {
    min-height: 100%;
}

/*scrolltop button*/
#scroll-top {
	display: none;
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 46px;
    height: 46px;
    font-size: 30px;
    color: white;
    text-align: center;
    background-color: #46788C;
    border-radius: 100%;
    z-index: 5;
    transition: background-color ease-in-out .2s;
}
#scroll-top:before {
    display: block;
    font-size: 25px;
    padding: 9px 0 0 0;
    margin: 0;
}
#scroll-top:hover {
    background-color: #295263;
}

/*-- 3. Basic Structure --*/
div,
main {
	display: block;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
main {
	padding-top: 110px;
	overflow: hidden;
}
body.search-results .page-wrapper {
	padding: 60px 0;
}
body:not(.home) .page-wrapper {
    padding: 110px 0 0px;
}
.container,
.wp-block-group__inner-container {
    width: 1200px;
    margin: 0 auto;
}
.wp-block-group__inner-container .wp-block-group__inner-container {
	width: auto;
	margin: 0;
}
.container-big {
	width: 88%;
	margin: 0 6%;
}

/*Gutenberg Block Editor*/
.wp-block-cover, 
.wp-block-cover-image {
	padding: 0;
}
.wp-block-columns,
.wp-block-group,
.wp-block-group.has-background {
	padding: 60px 0 70px;
}
.wp-block-columns .wp-block-group,
.wp-block-columns .wp-block-columns,
.wp-block-group .wp-block-group,
.wp-block-group .wp-block-columns {
	margin: 0 auto 0;
	padding: 0;
}
.icon_separator + .wp-block-group {
	padding: 90px 0 80px;
}
.wp-block-group.has-background .wp-block-columns,
.wp-block-group .wp-block-columns {
	margin: 0;
}
.wp-block-group.has-background:first-child {
	padding: 50px 0 60px;
}
.wp-block-group.has-background:last-child {
	margin-bottom: 0px;
}
hr.wp-block-separator,
hr.wp-block-separator.alignwide,
hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
	max-width: 100%;
    width: 100%;
    border-bottom: solid 1px rgb(51 51 51 / 34%);
    margin: 1.6em 0;
}
ul.blocks-gallery-grid {
	width: 100%;
}
@media screen and (min-width: 2560px) {
	.container,
	.wp-block-group__inner-container {
		width: 1400px;
    	margin: 0 auto;
	}
}
@media screen and (max-width: 1300px) {
	.container,
	.wp-block-group__inner-container {
		width: 960px;
	}
}
@media screen and (max-width: 980px) {
	body:not(.home) .page-wrapper {
		padding: 80px 0 0px;
	}
	.container,
	.wp-block-group__inner-container {
		width: 90%;
		margin: 0 5%;
	}
}
@media screen and (max-width: 767px) { 
	.wp-block-columns, .wp-block-group {
		margin: 30px auto 30px;
	}
}

/*Home Custom 1*/
.wp-block-columns.home-custom-1 .has-background {
	padding: 40px 40px 20px;
}
.wp-block-columns.home-custom-1 i {
    font-size: 30px;
    float: left;
    margin-right: 15px;
}
.wp-block-columns.home-custom-1 .wp-block-column:not(:first-child) {
	margin-left: 0;
    display: flex;
    flex-direction: column;
}
.home-custom-1 .wp-block-image {
    margin: 0;
}
.wp-block-columns.home-custom-1 .wp-block-gallery {
	height: 100%;
}
.wp-block-columns.home-custom-1 .blocks-gallery-item {
	margin: 0;
}

/* partner-links */
.wp-block-columns .wp-block-column.partner-box {
    padding: 20px;
    border: solid 1px #eee;
    background-color: #fff;
    text-align: center;
    align-self: stretch;
}
.wp-block-columns .wp-block-column.partner-box figure {
	height: 120px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.wp-block-columns .wp-block-column.partner-box figure img {
	object-fit: contain;
	max-height: 110px;
}

/*columns*/
.row {
	display: -webkit-box;
    display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	
	-webkit-align-items: stretch;
    align-items: stretch;
	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.row.hor_center {
	justify-content: center;
}
.row.vert_center {
	align-items: center;
}
.row.row_nowrap {
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.row.cols-spaced .col {
	padding: 10px;
}
section > .container > .row:last-child,
.banner-text .row:last-child {
	margin-bottom: 0;
}
.col.last,
.col:last-of-type {
	margin-right: 0;
	margin-bottom: 0;
}
.col.full {
	float: none;
	width: 100%;
}
.col.half,
.col.fifty {
	width: 50%;
}
.col.third {
	width: 33.33%;
}
.col.thirty {
	width: 30%;
}
.col.thirty-five {
	width: 35%;
}
.col.two-thirds {
	width: 66.66%;
}
.col.fourth {
	width: 25%;
}
.col.three-fourths {
	width: 75%;
}
.col.fifth,
.col.twenty {
	width: 20%;
}
.col.four-fifths {
	width: 80%;
}
.col.three-fifths {
	width: 60%;
}
.col.two-fifths,
.col.forty {
	width: 40%;
}
.col.sixth {
	width: 16.66%;
}
.col.three-tenths {
	width: 30%;
}
.col.eighth {
	width: 12.5%;
}

/*sidebar*/
aside.sidebar {
	padding-right: 30px;
}
aside.sidebar h3 {
	font-size: 1.1em;
    font-weight: 400;
    text-transform: uppercase;
}
@media screen and (max-width: 980px) {
	aside.sidebar,
	aside.sidebar.col.fifth {
		order: 2;
		padding: 0;
		width: 100%;
	}
}

/*-- 4. Header --*/
#header {
	position: fixed;
    padding: 0;
    width: 100%;
	height: 110px;
	background-color: #245C73;
	transition: top ease-in-out .3s;
	z-index: 9;
}
#header .header-container {
	display: -webkit-box;
    display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items: stretch;
	
	height: 100%;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0 30px;
	
	z-index: 2;
}
.header-left {
	display: flex;
    align-items: center;
    flex-basis: 20%;
}
.header-middle {
	display: flex;
    align-items: center;
    justify-content: center;
    width: 60%;
}
.header-right {
	display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-basis: 20%;
}
#header.fixed-open {
  transform: translate3d(256px, 0px, 0px);
}
#top-area {
    will-change: opacity;
}
#menu-header-buttons li {
	margin: 0;
}
#menu-header-buttons li a {
	display: flex;
    justify-content: center;
    align-items: center;
    padding: 3px 18px 5px;
    color: #ffffff;
    background-color: #4CB743;
    border-radius: 30px;
}

/* logo/branding */
div.site-logo {
	display: flex;
    align-items: center;
    height: 65px;
    transition: all ease-in .15s;
}
div.site-logo p {
	margin: 0;
	font-size: 2rem;
	color: #ffffff;
}
div.site-logo a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    text-indent: -300px;
    overflow: hidden;
}

/* stickiness */
#header.fixed {
	position: fixed;
    top: 0;
	height: 60px;
}
body.admin-bar > .wrapper {
	margin-top: 32px;
}
.admin-bar #header.fixed {
	top: 32px;
}

/* Header Navigation General*/
.header-nav-desktop a {
	display: block;
    color: #eaeaea; 
}
.header-nav-desktop a:hover,
.header-nav-desktop a.active{
	color: #ffffff;
}
ul.menu,
ul.sub-menu{
	margin: 0;
	padding: 0;
}
ul.menu li {
	list-style: none;
}

/*Main Nav Parents*/
.header-nav-desktop {
    height: 100%;
}
.header-nav-desktop > ul.menu {
	display: flex;
	height: 100%;
}
.header-nav-desktop > ul.menu > li {
	display: flex;
	justify-content: center;
    align-items: center;
	
	flex-grow: 1;
    flex-basis: 0;
	
	position: relative;
	margin: 0 10px;
}
.header-nav-desktop span.open-sub-menu {
	margin-top: -1px;
	transform: translateY(0px);
	transition: transform ease-in-out .1s;
}
.header-nav-desktop span.open-sub-menu i {
	display: none;
	margin-left: 4px;
    font-size: .6em;
}
.header-nav-desktop > ul.menu > li.menu-item-has-children > a > span.open-sub-menu > i.icons8-expand-arrow,
.header-nav-desktop > ul.menu > li.menu-item-has-children > a.active > span.open-sub-menu > i.icons8-collapse-arrow {
	display: inline-block;
}
.header-nav-desktop > ul.menu > li.menu-item-has-children > a.active > span.open-sub-menu > i.icons8-expand-arrow,
.header-nav-desktop > ul.menu > li.menu-item-has-children > a > span.open-sub-menu > i.icons8-collapse-arrow{
	display: none;
}
.header-nav-desktop > ul.menu > li > a {
	display: flex;
    align-items: center;
    padding: 13px 10px;
    margin: 0 5px;
    font-size: .95em;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1.5px;
    color: rgb(255 255 255 / 82%);
}
.header-nav-desktop > ul.menu > li > a:hover {
	color: #ffffff;
}
.header-nav-desktop > ul.menu > li > a:hover span.open-sub-menu {
	transform: translateY(2px);
}
a.menu-search {
	font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

@media screen and (max-width: 980px) {
	#header a.menu-search {
		display: none;
	}
}

/*Main Nav Sub-menus*/
.header-nav-desktop ul.menu ul.sub-menu {
	position: absolute;
    top: calc(100%);
    right: auto;
    left: 50%;
    margin-left: -90px;
    padding: 0;
    width: 180px;
    height: auto;
    transform-origin: 50% -15px;
    transform: scale(0) translateY(0) translateZ(0);
    list-style-type: none;
    transition: transform .11s cubic-bezier(.2,.3,.25,.9) 0s;
    z-index: 6;
    background: #235d73;
    box-shadow: 0px 5px 5px #00000047;
}
.header-nav-desktop ul.menu ul.sub-menu.active {
    transform: scale(1) translateY(0) translateZ(0);
    transition: transform .15s cubic-bezier(.2,.3,.25,.9) 0s;
}
.header-nav-desktop ul.menu ul.sub-menu li {
	margin: 0;
}
.header-nav-desktop ul.menu ul.sub-menu a {
	padding: 14px 15px;
    font-size: .85em;
    line-height: 1.2;
    font-weight: 400;
    border-top: solid 1px rgb(255 255 255 / 16%);
	transition: all ease-in .2s;
}
.header-nav-desktop ul.menu ul.sub-menu a:hover {
	background-color: rgb(0 0 0 / 18%);
}

/* Secondary Menu */
nav.secondary-menu {
    display: flex;
    justify-content: center;
    align-items: center;
	height: 100px;
	background-color: rgb(35 93 115 / 76%);
}
header.fixed nav.secondary-menu {
	height: 70px;
	background-color: rgb(35 93 115 / 96%);
}
nav.secondary-menu a {
    display: flex;
    justify-content: center;
    align-items: center;
	position: relative;
    height: 100%;
	width: 120px;
	padding: 20px 30px;
	font-size: 13px;
	color: rgba(255, 255, 255, .8);
	white-space: nowrap;
}
nav.secondary-menu a.active,
nav.secondary-menu a:hover {
	color: #ffffff;
}
nav.secondary-menu a.active:after,
nav.secondary-menu a:hover:after {
	content: "";
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 2px;
	background-color: #ffffff;
}
nav.secondary-menu a span {
    display: flex;
    flex-direction: column;
    align-items: center;
}
nav.secondary-menu i {
    display: block;
    margin: 7px 0;
    font-size: 35px;
}
header.fixed nav.secondary-menu i {
	font-size: 22px;
	margin: 2px 0 0;
}

/* Mobile Menu */
/*menu toggle*/
.toggle-button {
	font-size: 2em;
	color: #ffffff;
	border: 0;
	background-color: transparent;
	outline: none;
}
.toggle-button i {
	padding-top: 1px;
}
.mobile-menu-fancybox .fancybox__backdrop {
	background-color: rgb(36 92 115 / 95%);
}
.mobile-menu-fancybox .fancybox__slide {
	padding: 75px 40px 50px;
}
.mobile-menu-fancybox .fancybox__content {
	width: 100%;
    height: 90%;
    padding: 0;
    background: transparent;
}
.mobile-menu ul {
	display: block;
	margin: 0;
    padding: 0;
	font-size: 1.2em;
}
/*parents*/
.mobile-menu > ul.menu > li {
	position: relative;
	margin-bottom: 10px;
    padding: 0 0 10px;
    border-bottom: solid 1px rgb(0 0 0 / 22%);
}
.mobile-menu > ul.menu > li > a {
	display: block;
    padding: 7px 0;
    font-size: .9em;
	font-weight: 600;
    line-height: 1em;
	color: #ffffff;
}

/*children*/
.mobile-menu > ul.menu > .menu-item-has-children > .sub-menu {
	padding: 0;
    margin: 0;
    max-height: 0;
    overflow: hidden;
	transition: max-height ease-in-out .3s;
}
.mobile-menu > ul.menu > .menu-item-has-children > .sub-menu.active {
    max-height: 800px;
}
.mobile-menu > ul.menu > .menu-item-has-children > .sub-menu .sub-menu {
	padding-top: 5px;
}
.mobile-menu .menu-item-has-children .sub-menu li {
	margin: 0;
    padding: 0;
    border: none;
}
.mobile-menu .menu-item-has-children .sub-menu li a {
    display: inline-block;
    padding: 3px 0;
    margin: 4px 0;
    font-size: .8em;
    color: #fff;
    font-weight: 400;
}

/*sub-menu open close icon states*/
.mobile-menu a span.open-sub-menu {
	display: none;
}
.mobile-menu > ul > li.menu-item-has-children > a > span.open-sub-menu {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	padding: 0;
}
.mobile-menu ul li.menu-item-has-children span.open-sub-menu i {
	height: 30px;
	line-height: 30px;
}
.mobile-menu ul li.menu-item-has-children.active span.open-sub-menu i.sub-open {
	display: none;
}
.mobile-menu .menu-item-has-children span.open-sub-menu i.sub-close {
	display:none;
}
.mobile-menu ul li.menu-item-has-children.active span.open-sub-menu i.sub-close {
	display: block;
}

.mobile-menu .menu-col {
	display: none;
}
@media screen and (max-width: 980px) {
	/*hide menu by default on mobile*/
	.header-nav-container {
		display: none;
	}
}


/*-- 5. Body --*/

/*social links*/
.social-links {
    font-size: 30px;
}
.social-links a {
    display: inline-block;
    margin-right: 10px;
	transition: transform ease-in-out .3s;
}
.social-links a:last-child {
    margin-right: 0;
}
.social-links a:hover {
    transform: translateY(-3px);
}



/*single post*/
.single-post .page-wrapper {
	margin-bottom: 60px;
}
.single-post article header h1.entry-title {
	font-size: 2.4em;
}
article.type-post {
    margin-bottom: 40px;
}
.entry-title a {
	text-decoration: none;
}
.entry-meta {
	font-size: .8em;
    color: #A0A0A0;
}
.single .entry-meta {
	margin-bottom: 20px;
} 
.featured-image {
    margin-bottom: 20px;
}
.featured-image img {
	max-height: 400px;
	height: auto;
	max-width: 100%;
	width: auto;
}
article footer {
	color: #777779;
	background-color: transparent;
}
footer.footer {
    margin: 60px 0;
}

/*-- 6. Footer --*/

/*footer-general*/
#footer {
	padding: 80px 0 60px;	
	color: rgb(255 255 255 / 68%);
	background-color: #245C73;
}
#footer h3 {
	margin-bottom: 10px;
    font-size: 1em;
    font-weight: 600;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #f7f7f7;
}
#footer a:not(.button),
#footer a:visited:not(.button){
	color: rgb(255 255 255 / 68%);
}
#footer hr {
	margin: 30px 0;
	opacity: .1;
	border-color: #ffffff;
}
#footer .menu li {
    margin-bottom: 5px;
}
#footer a i {
	margin-right: 3px;
}

/*footer-top*/
#footer .footer-top .row {
	flex-wrap: nowrap;
}
#footer .footer-top .col:first-of-type {
	padding: 0;
}
#footer .footer-top .col:not(:first-child){
	padding: 0 0 0 30px;
}
.col-footer-contact > div {
	margin-bottom: 40px;
}

/*footer-bottom*/
.footer-left {
	float: left;
    display: flex;
    align-items: center;
}
#copyright {
	display: flex;
	justify-content: space-between;
}
p.copyright span {
	opacity: .4;
}
.footer-right {
	float: right;
}
.footer-right-top {
	text-align: right;
}
.footer-right-top a.button {
    margin-top: 0;
    padding: 12px 24px;
}
#footer .social-links {
	display: flex;
    margin: 0;
}
#footer .social-links a {
    margin: 0 0 0 16px;
	font-size: 28px;
}
#footer .social-links a:hover {
    text-shadow: 0px 0px 5px #b0d597;
}
.footer-bottom {
    font-size: .8em;
}

/*-- 7. Slick Slider Defaults --*/
.slick-slider {
	position: relative;
	display: block;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
	overflow: hidden;
}
.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
.slick-list:focus {
	outline: none;
}
.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}
.slick-slider .slick-track, .slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: flex;
	align-items: stretch;
}
.slick-track:before, .slick-track:after {
	display: table;
	content: '';
}
.slick-track:after {
	clear: both;
}
.slick-loading .slick-track {
	visibility: hidden;
}
.slick-slide {
	display: none;
	float: left;
	outline: none;
}
.slick-slide:hover {
	cursor: default;
}
[dir='rtl'] .slick-slide {
	float: right;
}
.slick-slide img {
	display: block;
	margin: 0 auto;
	object-fit: cover;
    width: 100%;
    height: 100%;
}
.slick-slide.slick-loading img {
	display: none;
}
.slick-slide.dragging img {
	pointer-events: none;
}
.slick-initialized .slick-slide {
	display: block;
}
.slick-loading .slick-slide {
	visibility: hidden;
}
.slick-vertical .slick-slide {
	display: block;
}
.slick-arrow.slick-hidden {
	display: none;
}
.slick-dots {
	display: flex;
	padding: 0;
    margin: 30px 0 0;
    width: 100%;
    list-style: none;
}
.slick-dots li {
    position: relative;
    display: block;
    padding: 0;
	margin: 0;
    cursor: pointer;
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    margin: 0 5px 0;
    padding: 0;
    width: 13px;
    height: 13px;
    cursor: pointer;
    border: solid 1px #2badc5;
    background: transparent;
    outline: none;
    border-radius: 20px;
    -webkit-transition: all ease-in .25s;
    -moz-transition: all ease-in .25s;
    transition: all ease-in .25s;
}
.slick-dots li button:hover,
.slick-dots li.slick-active button {
    background: #ffc252;
    border-color: #ffc252;
}


/*-- 8. Tabs --*/
.tabs-holder {
	margin-bottom: 60px;
}
ul.tabs {
    margin: 0;
    padding: 0;
    width: 100%;
}
.tabs li {
	display: inline-block;
    margin: 0;
    list-style: none;
}
.tabs li a {
	display: block;
    padding: 20px 10px;
    margin-right: 40px;
    font-size: 1em;
    line-height: 2em;
    font-weight: 600;
    text-decoration: none;
    color: #e51936;
    border: none;
    -webkit-transition: all ease .3s;
    -moz-transition: all ease .3s;
    transition: all ease .3s;
}
.tabs li a:after {
    content: "";
	display: block;
	background-color: #e51936;
	width: 0;
	height: 1px;
	transition: width ease-in-out .2s;
}
.tabs li a:hover:after,
.tabs li a.active:after {
	width: 100%;
}
.tabcontent {
	width: 100%;
}
.tabcontent > div {
    padding: 40px 30px;
}

/*-- 9. Accordion/Toggle --*/
.acc-group {
    margin-bottom: 15px;
    padding-bottom: 17px;
	border-bottom: solid 1px #eee;
}
.js-title,
h3.js-title {
	display: flex;
    align-items: center;
	margin-bottom: 0px;
}
.js-title:hover {
	cursor: pointer;
}
.js-title i {
    font-size: .8em;
    margin-left: 5px;
	transform: scale(1);
	transition: all ease-in .15s;
}
.js-title .plus {
    font-size: .7em;
}
.js-title:hover i {
    text-shadow: 0px 0px 3px #007cff;
	transform: scale(1.1);
}
.js-title i.plus,
.js-title.active i.minus {
	display: inline-block;
}
.js-title.active i.plus,
.js-title i.minus {
	display: none;
}
.js-copy {
	display: none;
    padding: 0;
    margin: 10px 0 20px;
}
.js-copy:first-of-type {
	display: block;
}
.js-copy :last-child {
    margin-bottom: 0;
}

/*-- 10. Media Queries --*/
@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 1366px) {
	/*general*/
	body {
		font-size: 16px;
	}
	h1,
	p.h1 {
		font-size: 2.6em;
		}
	h2,
	p.h2 {
		font-size: 2em;
		}
	h3,
	p.h3 {
		font-size: 1.4em;
		line-height: 1.4em;
		}

	
	/*header*/
	.header-nav-desktop > ul.menu > li {
		margin: 0;
	}
	.header-parent-nav-menu ul.menu li a {
		padding: 5px;
		margin: 0 5px;
	}

}
@media screen and (max-width: 1200px) {	
	
	/*header*/
	div.site-logo {
		height: 56px;
	}
	.header-nav-main ul.menu {
		font-size: .9em;
	}
	.header-nav-desktop > ul.menu > li > a {
		padding: 10px 5px;
    	margin: 0 10px;
		font-size: 1em;
	}
	
	/*footer*/
	#copyright {
		display: block;
	}
	.footer-left {
		float: none;
		text-align: center;
	}
	.footer-right {
		float: none;
		width: 100%;
		text-align: center;
	}
	.footer-right-top {
		text-align: center;
	}
	#footer .social-links {
		justify-content: center;
	}
}
@media screen and (max-width: 980px) {
	/*general*/
	body {
		font-size: 15px;
	}
	main {
		padding-top: 80px;
	}
	hr {
		margin: 30px 0;
	}
	.alignright,
	.alignleft {
		float: none;
		width: 70%;
		margin: 10px 15% 0;
	}
	.row {
		margin-bottom: 30px;
	}
	article.row {
		margin: 0;
	}
	.col.half,
	.col.third {
		float: none;
		width: 100%;
		min-height: 1px !important;
		margin-bottom: 30px;
		margin-right: 0;
	}
	.col.two-thirds,
	.col.three-fourths,
	.col.four-fifths {
		width: 100%;
	}
	.col.fourth,
	.col.three-tenths,
	.col.fifth {
		width: 33.33%;
	}
	.col.sixth {
		width: 33.33%;
	}
	.hidden-desktop {
		display: flex;
	}
	.hidden-mobile {
		display: none;
	}
	
	/*header*/
	#header {
		height: 80px;
	}
	.header-left {
		position: relative;
		top: unset;
	}
	div.site-logo {
		height: 50px;
    	padding: 0;
	}
	.header-right {
		width: auto;
	}
	.toggle-button {
		display: block;
	}
	nav.secondary-menu {
		display: none;
	}

	/*tabs*/
	.tabs li a {
		margin-right: 10px;
		padding: 10px 10px 10px 0;
		font-size: 1em;
		line-height: 1.6em;
	}
	
	/*footer*/
	#footer {
		padding: 40px 0;
	}
	#scroll-top {
		right: 10px;
		bottom: 20px;
		color: white;
		background-color: transparent;
	}
	.footer-left,
	.footer-right {
		display: block;
		float: none;
		text-align: center;
	}
}
@media screen and (max-width: 782px) {
	body.admin-bar > .wrapper {
		margin-top: 42px;
	}
	.admin-bar #header.fixed {
		top: 42px;
		margin-top: 0px;
	}
	html #wpadminbar {
		position: fixed;
	}

	/*general*/
	.hidden-mobile {
		display: none;
	}
	
}
@media screen and (max-width: 767px) {
	/*general*/
	main {
		padding-top: 70px;
	}
	ul {
		margin: 20px 0 20px 20px;
		padding-left: 10px;
	}
	ul.checked li {
		margin-bottom: .8em;
		font-size: 1em;
		line-height: 1.3;
	}
	
	/*header*/
	#header {
    	height: 70px;
	}
	#header.fixed {
		height: 70px;
	}
	#header .header-container {
		padding: 0 10px;
	}
	.header-left {
		flex-basis: 50%;
	}
	.header-middle {
		display: none;
	}
	.header-right {
		flex-basis: 50%;
	}
	#branding {
		display: flex;
		justify-content: center;
		padding-right: 0px;
		margin: 0;
	}
	#branding div.site-logo,
	#header.fixed div.site-logo {
    	height: 45px;
	}
	
	/*footer*/
	#footer .footer-top .col,
	#footer .footer-top .col:not(:first-child) {
		padding: 0;
	}
	#footer h3 {
    	margin-bottom: 5px;
	}
	
}
@media screen and (max-width: 600px) {
	html {
		margin-top: 0px !important;
	}
	.row {
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	.col.third,
	.col.thirty,
	.col.fourth,
	.col.fifth,
	.col.two-thirds,
	.col.three-fourths,
	.col.three-tenths,
	.col.two-fifths, 
	.col.forty {
		float: none;
		-webkit-box-flex: 1 auto;
        -webkit-flex: 1 auto;
        -moz-box-flex: 1 auto;
        -ms-flex: 1 auto;
		flex: 1 auto;
		width: 100%;
		min-height: 1px !important;
		margin-bottom: 30px;
		margin-right: 0;
	}
	
}
@media screen and (max-width: 414px) {
	/*general*/
	.full-width-content {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	h1, p.h1 {
		font-size: 2.2em;
	}
	h2, p.h2 {
		font-size: 1.8em;
	}
	h3, p.h3 {
		font-size: 1.4em;
	}

	/*buttons*/
	.button,
	a.button,
	input.button {
		padding: 10px 20px;
	}
	
	/*body*/
	.no_top_area_banner .page-wrapper {
		padding: 90px 0 20px;
	}
	.col.half, .col.third, .col.fourth, .col.two-thirds, .col.three-fourths, .col.three-tenths, .col.fifth, .col.sixth {
		margin-bottom: 20px;
	}
	.desktop-hide {
		display: block;
	}
	.mobile-hide {
		display: none;
	}
	
	/*tabs hover state fix for iOS mobile*/
	.tabs li a {
    	padding: 5px 0 0;
	}
	.tabs li a.active {
		border-bottom: solid 1px;
	}
	.tabs li a:after {
		content: none;
		display: none;
	}
	.tabs li a:hover:after,
	.tabs li a.active:after {
		width: auto;
	}
	
	/*footer*/
	#footer .footer-top {
		padding: 40px 0 10px;
	}
	#footer .footer-top .container {
		display: block;
	}

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


}
html {
    visibility: visible;
    opacity: 1;
}