/*------------------------------------*\



    CONTENTS



\*------------------------------------*/


/*

1. BASE.........Reset and default styles

2. LAYOUT.......Main and unique elements

3. MODULE............Reusable components

4. STATE..................Current states

5. THEME............Branding and colours

*/


/*------------------------------------*\



    1. $BASE



\*------------------------------------*/

@import url('https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,100..900;1,100..900&display=swap');

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, capt, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
	scroll-behavior: smooth;
}

* {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;	
}

body {
    background: #FFFFFF!important;
	color: #000000!important;
	font-family: "Public Sans", sans-serif;
	font-weight: 400;
	font-size: 18px!important;
	
}


h1 {
	font-weight: bold!important;
	margin-bottom: 1em!important;
}

h2, h3, h4 {
	font-weight: bold!important;
	margin-bottom: 1em!important;
}

p {
	margin-bottom: 2em!important;
    line-height: 1.25em!important;
}

input {
	
}

.wpcf7-form input, .wpcf7-form textarea {
	background-color: #FFFFFF;
    color: #333333;
    padding: 10px;
	font-size: 0.8em;
	width: 100%;
	border: 0px;
	margin-bottom: 1.5em;

}

.wpcf7-form p:last-of-type {
	margin-bottom: 0px!important;
}

.wpcf7-not-valid-tip {
	font-size: 0.8em;
    font-weight: bold;
}

.wpcf7 form.sent .wpcf7-response-output {
	background-color: #46b450;
}

.wpcf7-submit {
	margin-bottom: 0px;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
	color: #999999;
	opacity: 1; /* Firefox */
}
  
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: #999999;
}
  
::-ms-input-placeholder { /* Microsoft Edge */
	color: #999999;
}

.formbox {
	background-color: #23376f;
	padding: 3em 3em 1.25em 3em;
	box-shadow: #00000085 1px 2px 3px;
}

/* Give elements the same bottom margin to create consistent vertical rhythm */


.clr { clear:both;}

.topbar { background-color: #007ec1; }
.topbar p { margin-bottom:0px!important; color: #FFFFFF; font-size: 13px; padding: 5px 0px;}

.header-block {width: 100%; z-index: 999; position: absolute; }

.content a { 
	color:#555555;
 }

 .content a:hover { 
	color:#fbb017;
 }

 .content p:last-child {
    margin-bottom: 0!important;
}

.content-section p, .content-section img {
/*	margin-bottom: 0px!important; */
}

/*------------------------------------*\



    $TYPOGRAPHY



\*------------------------------------*/



.post-meta { 
	z-index: 2;
	position: relative;
	padding-bottom: 0!important;
}
.text-center {
	z-index: 2;
    position: relative;
}


a.post-link { 
	text-align: center;
	display: block;
    height: 25vw;
    position: relative;
}
a.post-link p {
	text-decoration: none;
	color: #FFFFFF;
	font-weight: normal;
}
a.post-link:hover {
	text-decoration: none;
	color: #FFFFFF;
}
a.post-link hr {
	border: solid #FFFFFF!important;
    border-width: 1px 0 0 0!important;
    clear: both;
    width: 40%;
    margin: 1.5em auto!important;
}

a.post-link img {
	
	opacity: 0;
	transform: scale(1.35);
	-webkit-transition: all .25s ease-out;
	-moz-transition: all .25s ease-out;
	 -ms-transition: all .25s ease-out;
	  -o-transition: all .25s ease-out;
		 transition: all .25s ease-out;

}
a.post-link:hover > img {
	opacity: 1;
	transform: scale(1);
	-webkit-transition: all .35s ease-in-out;
	-moz-transition: all .35s ease-in-out;
	 -ms-transition: all .35s ease-in-out;
	  -o-transition: all .35s ease-in-out;
		 transition: all .35s ease-in-out;
}
.post-box { 
	overflow: hidden; 
	height:24vw;
}

.post-box:nth-child(1) {
	background-color: #374454;
}
.post-box:nth-child(2) {
	background-color: #97a0a9;
}
.post-box:nth-child(3) {
	background-color: #e0dfda;
}
.post-box:nth-child(4) {
	background-color: #fbb017;
}


.category .content {
	padding-top: 150px;
}

@media only screen and (max-width: 1023px) {
	a.post-link { height: 33vw; }
	.post-box { height: 33vw; }
	.blog-content .page-title { font-size: 3em; }
	.formbox { padding: 2em; }
}

@media only screen and (max-width: 767px) {
	a.post-link { height: 100vw; }
	.post-box { height: 100vw; }
	.blog-content .page-title { font-size: 2.5em; }
	.category .content { padding-top: 100px; }
}
/*------------------------------------*\



    $LINKS



\*------------------------------------*/


a:link, a:visited {

    text-decoration: none;
    color: #555;
    font-weight: bold;
	-webkit-transition: all .25s ease-in-out;
       -moz-transition: all .25s ease-in-out;
        -ms-transition: all .25s ease-in-out;
         -o-transition: all .25s ease-in-out;
            transition: all .25s ease-in-out;

}

a:hover {

    color: #1694d6;
    text-decoration: underline;
    outline: none;

}

a:focus, a:active { outline: none }

/*------------------------------------*\



    $BUTTONS



\*------------------------------------*/



a.button, button {
	font-size: 1em;
	padding: 10px 40px;
	font-weight: normal;
	text-decoration:none!important;
	color: #FFFFFF;
	background-color: #001a70;
	text-shadow: 2px 2px #091231;
	text-transform: uppercase!important;
    letter-spacing: 2px;
    line-height: 2em;

}

button:focus {
	outline: 1px dotted!important;
}

input[type="submit"] {
	font-size: 1em;
    padding: 8px 40px;
	font-weight: bold;
	text-decoration:none!important;
	color: #FFFFFF;
	background-color: #4e6d90;
	/*text-shadow: 2px 2px #a35801;*/
    letter-spacing: 1px;
	width: auto;
}

button[type="submit"] .fas {
	padding-left: 2px;
}


a.button:hover, button:hover { color: #FFFFFF; background-color: #203579; }

a.button {
    display: inline-block;
    zoom: 1;
    *display: inline;    
}

a.button:hover, button:hover, input[type="submit"]:hover {
    text-decoration: none;
    color: #FFFFFF;
    background-color: #28507c;
}

a.button-alt { color: #000000; background-color: #ffffff; text-shadow: 2px 2px #cacaca; text-transform: uppercase; letter-spacing: 6px; line-height: 2em;}
a.button-alt:hover { color: #000000; background-color: #d2d2d2; }



a.button-full {
	width: 100%;
	display: block;
	text-align: center;
	padding-left: 0;
	padding-right: 0;
}

a.button-cta {
	font-size: 2em;
	font-weight: bold;
	margin-bottom: 0.469em;
}

.button + .button { margin-left: 0.75em; }

.btn-primary {
	color: #FFF!important;
}


/*------------------------------------*\



    $FORMS



\*------------------------------------*/

input, select, textarea {

    font-family: inherit;
	font-size: inherit; 
    line-height: 1em;
    border: 1px solid #ddd;
	padding: 0.188em 0.313em; /* 3px 5px */
}


input[type="submit"], button {

	-webkit-appearance: none; /* Remove iOS default styles */
    cursor: pointer;
    border: none;
    -webkit-transition: all .1s linear;
       -moz-transition: all .1s linear;
        -ms-transition: all .1s linear;
         -o-transition: all .1s linear;
            transition: all .1s linear;

}

.nf-field-element textarea {
	height: 120px!important;
}

.page-id-8 .nf-field-element textarea {
	height: 200px!important;
}

.nf-form-fields-required {
	font-size: 0.75em;
    margin: 0em 0 2em 0;
    color: #666;
}

.nf-form-content {
	padding: 0px!important;
	max-width:none!important;
}

.nf-form-content  input[type=button] {
	font-size: 1em;
    padding: 8px 20px;
    font-weight: bold;
    text-decoration: none!important;
    color: #FFFFFF;
    background-color: #fbb017;
    text-shadow: 2px 2px #000000;
    text-transform: uppercase;
    letter-spacing: 6px;
}

.nf-form-content button:hover, .nf-form-content input[type=button]:hover, .nf-form-content input[type=submit]:hover {
	background: #828282!important;
    color: #ffffff!important;
}

/*------------------------------------*\



    $OTHER ELEMENTS



\*------------------------------------*/



hr {

	border: solid #bbbbbb!important;
	border-width: 1px 0 0 0!important;
    clear: both;
	width: 33%;
	margin: 3.5em auto!important;

}

img, iframe { 

	vertical-align: top; 
	max-width: 100%;
	height: auto;

}

/*------------------------------------*\



    2. $LAYOUT



\*------------------------------------*/



.logo { 
	width: 50%; 	
}

.logo-cont {
    top: 0px;
	width: 100%;
	text-align: center;
	display: block;
}

nav.navigation { z-index: 999!important; }

.navigation-touch { margin-top: 0px!important; }

header { 
	z-index: 9999;
	background-color: #fffcf8;
	padding: 1em 0px;
 }

.header, .navigation, .main, .footer { width: 100%; }


/*-- Parallex --*/

.MainContainer {
	perspective: 1px;
	transform-style: preserve-3d;
	height: 100vh;
	overflow-x: hidden;
	overflow-y: scroll;
  }
  
.ParallaxContainer {
	display: flex;
	flex: 1 0 auto;
	position: relative;
	height: 100vh;
	transform: translateZ(-2px) scale(2);
	z-index: -1;
	background: url();
	background-color: rgb(250,228, 216);
  }
  
.ContentContainer {
	display: block;
	position: relative;
	background-color: white;
	z-index: 1;
  }

/*-- Parallex End --*/


/*------------------------------------*\



    $HEADER



\*------------------------------------*/

.top { padding: 0; }

/*------------------------------------*\


	$TOUCH NAV
	Only displayed on touch devices


\*------------------------------------*/



@media only screen and (max-width: 767px) {
	
	
}
/*------------------------------------*\



    $FULL SIZE NAV



\*------------------------------------*/

@media all and (min-width: 62em) { /* 980px */

	
}

/*------------------------------------*\



    $BANNER



\*------------------------------------*/

.feature-banner {
	width: 100%;
	position: relative;
	background-position: top;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	margin-bottom:0px;
	height: 100vh;
}

.banner {
	width: 100%;
	height: 40vh;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
/*	background-attachment: fixed;*/
	margin-bottom:0px;
}
.banner img {
	width: 100%;
/*	box-shadow: inset 40px 40px 80px #000000;*/
}

.breadcrumb-bar {
	background-color:#0b1423;
}
.banner-content {
	top: 50%;
    transform: perspective(1px) translateY(-50%);
	position: absolute;
	width: 50%;
	color: #FFFFFF;
	text-shadow: 1px 1px 1px #000000;
}

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


.banner-text hr { 
	margin: 1.5em auto!important; 
	border: solid #FFFFFF!important;
	border-width: 1px 0 0 0!important;
}

.home .breadcrumb-bar {
	display:none;
}


.owl-carousel .owl-item img {
	padding: 0px 5px!important;
}

.button-group {
	margin-top: 2em;
}

@media all and (min-width: 62em) { /* 980px */

	.banner { background-size: cover; }
	.banner-content { position: absolute; }	

}

@media all and (max-width: 62em) { /* 980px */
	.nav>li>a {
		padding: 10px 15px!important;	
	}
}

@media all and (max-width: 767px) {
	.carousel-indicators { display: none!important;}
	.carousel-control { background: transparent; top: 37%; }
	.banner-text { margin-top: 5em; }
}
/*------------------------------------*\



    $CONTENT TABLES



\*------------------------------------*/


.content table { border-collapse: collapse; }

.content table th, .content table td {
	padding: 0.625em;
	border-bottom: 1px solid #ddd;
}

td, th {
	padding: 10px!important;
    border: 1px solid #dcdcdc!important;
}

/*------------------------------------*\



    $CONTENT LISTS



\*------------------------------------*/

.content ul, .content ol { margin-left: 1em; }
.content ul { list-style: disc; }
.content ol { list-style: decimal; }
.content li { margin-bottom: 0.05em; }
.content li > ul, .content li > ol { 
    margin-top: 0.625em; 
    margin-bottom: 0;
}

@media all and (min-width: 48em) { /* 700px */
	.content ul, .content ol { margin-left: 1.25em; } /* 42px */
}

/*------------------------------------*\



    $BLOCKQUOTE



\*------------------------------------*/

blockquote {
    position: relative;
    font-size: 1.35em;
    line-height: 1.618em;
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    font-style: italic;
    border: solid #eee;
    border-width: 0;
    border-left: none!important;
}

blockquote p:last-child { margin-bottom: 0!important; }

@media all and (min-width: 62em) { /* 980px */
	blockquote { padding: 1.5em 2em; }
}
@media all and (max-width: 768px) {
	blockquote h2 { font-size: 1.5em!important; }
}

/*------------------------------------*\



    $BLOG



\*------------------------------------*/

.post-divider {
    display: block;
    height: 1px;
    background: #a9a9a9;
    width: 50%; 
	margin: 3em auto;
	padding-bottom:0px!important;
}

.post-meta p {
	font-size: 0.875em;
	line-height: 1.4em;
}

.single-post .content {
	padding-top: 3em;
	padding-bottom: 3em;
}

.blog .content {
	padding-bottom: 3em;
}

.post-navigation {
	border-top: 1px solid #2e2e2f;
    padding-top: 20px;
}

.more-link {
	display: none;
}

.posts article:last-of-type {
	padding-bottom: 6em;
}

.search .content {
	padding-top: 12em;
}

.img-container {
	position: relative;
	margin-bottom: 2em;
}

.img-container img {
	position: relative;
}
.img-container span {
	bottom: 0px;
    position: absolute;
    padding: 10px;
    width: 100%;
	background-color: #333;
	color: #FFFFFF;
}

@media all and (max-width: 767px) { 
	.single-post .content { padding-top: 0em; }
	.post-navigation { font-size: 0.75em; }
}

/*------------------------------------*\



    $CONTENT IMAGES



\*------------------------------------*/


@media all and (max-width: 25.000em) { /* 400px */
	img.alignleft, img.alignright { 
		max-width: 50%;
		height: auto; 
	}
}

.alignright, a.alignright {
    float: right;
    margin: 0 0 1.618em 1.618em; /* 0 0 26px 26px */
}

.alignleft, a.alignleft {
    float: left;
    margin: 0 1.618em 1.618em 0; /* 0 26px 26px 0 */
}

.aligncenter, a .aligncenter {
    display: block;
    margin: 0 auto 1.618em auto; /* 0 auto 26px auto */
}

.alignnone, a .alignnone {
    display: block;
    margin-bottom: 1.618em; /* 26px */
}


/*------------------------------------*\



    $SIDEBAR



\*------------------------------------*/


@media all and (min-width: 62em) { /* 980px */

	.sidebar {
		margin-top:2em;
	}	

}

.sidebar > div, .sidebar-blog > div { margin-top: 1em; margin-bottom: 2em; }

.sidebar-heading { 
	font-size: 1.25em;
	line-height: 1.3em;
	margin-bottom: 0.5em;
	margin-top: 2em;
}

.sidebar .ui-list {
	margin-left: 0px!important;
	list-style: none!important;
}

/*------------------------------------*\



    $UI LIST



\*------------------------------------*/

.ui-list {
    list-style: none;
    border-top: 1px solid #ddd;
	margin: 0;
}

.ui-list li { border-bottom: 1px solid #ddd; }

.ui-list a {
    display: block;
    padding: 0.625em 0.313em;
	line-height: 1.4em;
	font-weight: normal;
}
.ui-list a:hover, .ui-list .current_page_item a { text-decoration: none; }

/*------------------------------------*\



    $SEARCH



\*------------------------------------*/

header .search { float: right; }

.contact-forms_wrapper { display:block!important;}

.form-search { position: relative; } 

.form-search input.search-input { 
	width: 100%;
	margin: 0;
	padding: 0.15em;
	color: #666;
	border: none;
	background-color: #F5F5F5;
}

.form-search .search-submit {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 35px;
	border: none;
	margin: 0;
	background-color: #464646;
}

@media all and (min-width: 62em) { /* 980px */
	.sidebar .form-search .search-input, .content .form-search .search-input {
		border: solid #eee;
		border-width: 1px 0 1px 1px;
	}
}

/*------------------------------------*\



    $SIDEBAR - LEFT



\*------------------------------------*/

.sidebar-left { 
	padding: 0 1em; 
	margin-bottom: 1em;
	margin-top: 40px;
}

.sidebar-left .contact-detail {
    padding: 1em 0;
    border-bottom: 1px solid #ddd;
}

.sidebar-left h4 {
    font-size: 1em;
    line-height: 1em;
    font-weight: bold;
    text-transform: uppercase;
  	margin-bottom: 0.313em;
}

.sidebar-left .icon { vertical-align: top; }

.sidebar-left p, .sidebar-left table {
    font-size: 1em;
    line-height: 1.4em;
    margin: 0;
}

.sidebar-left p + p { margin: 10px 0 0 0 }

.sidebar-left .is-day, .sidebar-left .is-time { width: 50%; }

@media all and (min-width: 48em) and (max-width: 61.188em) { /* 700px - 979px */
	.sidebar-left table { width: 50%; }
}

@media all and (min-width: 62em) { /* 980px */

	.sidebar-left {
		float: left;
		width: 18.750em; /* 300px */
		padding: 0;
		margin-bottom: 1em;
	}

	.sidebar-left h4 { margin-bottom: 0.875em; }
}

/*------------------------------------*\



    $CONTACT PAGE



\*------------------------------------*/

@media all and (min-width: 48em) and (max-width: 61.188em) { /* 700px - 979px */

	.page-template-page-contact-php .main { padding: 1.5em 1.875em 2.5em 1.875em; }	


}


/*------------------------------------*\



    $FOOTER



\*------------------------------------*/
footer {
	background-color: transparent; 
	text-align: center;
	padding: 12px 0px;
	color: #ffffff80;
    font-size: 0.6em;
	position: absolute;
	bottom: 0px;
	width: 100%;
}

.footer {
	text-align: center;
	padding:5em 0em;
	background-color:#96A1AA;
	margin:0em;
}

.footer-body {
	font-size: 0.813em;
	line-height: 1.4em;
	padding: 30px 0px;
}

.footer-body h1 {
	color: #FFFFFF;
}

.footer-body h2 {
	margin-top: 20px;
	color: #FFFFFF;
	font-size: 1.5em;
}

.footer-body hr {
	margin: 0.5em auto!important;
	width: 13%;
}

.footer p, .footer a { color: #FFF; padding: 8px 0px; }
.footer a { font-weight: normal; }
.footer a:hover { color: #E2DFDA;  }


ul.footer-nav { border-top: 1px solid #353535; }
.footer-nav li { text-align: left; border-bottom: 1px solid #353535;}

.footer-nav a {line-height: 24px;}

.social { font-size: 3em; }
.social a { color:#FFFFFF; }

.footer .email { font-size: 1em; border: 0px; padding: 8px 8px 8px 8px; float: left; width: -webkit-calc(100% - 180px); width: -moz-calc(100% - 180px); width: calc(100% - 180px); }
.footer .button { float: left; }

/*------------------------------------*\



    3. $MODULE



\*------------------------------------*/ 




/*------------------------------------*\



    $CALL NOW



\*------------------------------------*/


.call-now {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 999;
}
.call-now a { 
	display: block;
	text-align: center;
	margin-bottom: 0;
	font-size: 1.125em;
}

/*------------------------------------*\

    $SIDR
	Slide out sidebar for touch devices

\*------------------------------------*/



/*------------------------------------*\



    $BRAND SPECIFIC



\*------------------------------------*/


.flex-content { overflow: hidden; }

.primary { padding:5em 0em; color: #FFFFFF; overflow: hidden; position: relative; }
.secondary {background-color: #fffcf8; padding:5em 0em; color: #001a70; overflow: hidden; position: relative; }
.tertiary {background-color: #001a70; padding:5em 0em;  color: #FFFFFF; overflow: hidden; position: relative; }
.quaternary { background-color: #e0dfda; padding:5em 0em; color: #303030; overflow: hidden; position: relative; }
.quinary { background-color: #566C7C; padding:5em 0em; color: #FFFFFF; overflow: hidden; position: relative; }

.tertiary p, .tertiary ul, .tertiary h1, .tertiary h2, .tertiary h3, .tertiary h4 { color: #FFFFFF; }

.feature-block img { -webkit-border-radius: 50%; border-radius: 50%; }

.offset-columns .col-sm-4 { text-align: center; }
.contentbreak { height: 70vh; background-repeat: no-repeat; background-size: cover;  width:100%; background-position: center; /* box-shadow: inset 0px 0px 70px #000000; -webkit-box-shadow: inset 0px 0px 70px #000000; -moz-box-shadow: inset 0px 0px 70px #000000;*/}
.contentbreakhalf { height: 50vh; background-repeat: no-repeat; background-size: cover;  width:100%; background-position: center; /* box-shadow: inset 0px 0px 70px #000000; -webkit-box-shadow: inset 0px 0px 70px #000000; -moz-box-shadow: inset 0px 0px 70px #000000; */}
.contentbreakhalf .block { height: 50vh; }
.contentquote {background-repeat: no-repeat; background-size: cover;  width: 100%; background-attachment: fixed; background-position: center; padding:0px; text-align: center; color: #FFFFFF; }
.contentquote span { color: #001a70; }
.contentquote .button { margin-top: 1.5em; }

.overlay { padding: 200px 0px; background-color: rgba(0, 0, 0, 0.75); color: #FFF; text-align: center;}

.contentquote2 {background-repeat: no-repeat; background-size: cover;  width: 100%; background-attachment: fixed; background-position: center; padding:0px; text-align: center; color: #FFFFFF; }
.contentquote2 span { color: #001a70; }
.contentquote2 .contentbox { background-color: #fffffff0; padding: 30px; color: #000000; }
.contentquote2 .contentbox hr { border: solid #001a70!important; margin: 1.5em auto!important; border-width: 2px 0 0 0!important; }
.contentquote2 .overlay { padding: 80px 0px; background: none;}
.contentquote2 h3 { font-size: 2em; font-weight: 400!important; }

.fws-bg { height: 50vh; background-size: cover; background-position: center; }
.fws-bgfh { height: 100vh; background-size: cover; background-position: center; }
.full-width-split { padding: 0px!important; margin: 0px 0px; }

.full-height { height: 100vh; }
.half-height { height: 50vh; }
.h-fill { height: 100%; }

.flex-banner { background-size: cover; }
.flex-banner .content p:last-of-type { margin-bottom:0px!important; }
.flex-banner .content { padding:15px; box-shadow: 3px 3px 3px #0000001a; }
.flex-banner .overlay { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; padding:0;  }

.flex-3-column .col-sm-4 { min-height: 380px; background-size: cover; }
.flex-3-column .f3c-content { text-align: center;  top: 50%; transform: perspective(1px) translateY(-50%); position: relative; padding: 2em 2em 1em 2em;}
.flex-3-column .f3c-content a { border-bottom: 2px solid #FFF; text-decoration: none;}
.flex-3-column .f3c-content a:hover {  border-bottom: 2px solid #FFFFFF; text-decoration: none; opacity: 0.5;}

.feat-border .row div:first-of-type { border-right:2px solid #D67490; }
.feat-border .row div:last-of-type { border-left:2px solid #D67490; }

.primary .f3c-content a { color: #303030; border-bottom: 2px solid #303030; text-decoration: none;}
.primary .f3c-content a:hover { color: #303030; border-bottom: 2px solid #303030; text-decoration: none; opacity: 0.5;}

.secondary .f3c-content a { color: #FFF; border-bottom: 2px solid #FFF; text-decoration: none;}
.secondary .f3c-content a:hover { color: #FFF; border-bottom: 2px solid #FFF; text-decoration: none; opacity: 0.5;}

.tertiary .f3c-content a { color: #FFF; border-bottom: 2px solid #FFF; text-decoration: none;}
.tertiary .f3c-content a:hover { color: #FFF; border-bottom: 2px solid #FFF; text-decoration: none; opacity: 0.5;}

.quaternary .f3c-content a { color: #303030; border-bottom: 2px solid #303030; text-decoration: none;}
.quaternary .f3c-content a:hover { color: #303030; border-bottom: 2px solid #303030; text-decoration: none; opacity: 0.5;}


.primary a { color: #303030;  }
.primary a:hover { color: #777777; }

.secondary a { color: #303030; font-weight: bold; text-decoration: underline; }
.secondary a:hover { color: #777777;}

.tertiary a { color: #FFFFFF; font-weight: bold; text-decoration: underline; }
.tertiary a:hover { color: #999999; }

.quaternary a { color: #FFFFFF; font-weight: bold; text-decoration: underline; }
.quaternary a:hover { color: #999999; }

.quinary a { color: #FFFFFF; font-weight: bold; text-decoration: underline; }
.quinary a:hover { color: #000000;}

.primary a.button { color: #FFFFFF; background-color: #001a70; text-shadow: 2px 2px #091231; text-transform: uppercase; letter-spacing: 2px; line-height: 2em;}
.primary a.button:hover { color: #FFFFFF; background-color: #203579; }

.secondary a.button { color: #FFFFFF; background-color: #001a70; text-shadow: 2px 2px #091231; text-transform: uppercase; letter-spacing: 2px; line-height: 2em; font-weight: normal;}
.secondary a.button:hover { color: #FFFFFF; background-color: #203579; }

.tertiary a.button { color: #a92631; background-color: #ffffff; text-transform: uppercase; letter-spacing: 6px; line-height: 2em;}
.tertiary a.button:hover { color: #a92631; background-color: #ffcacf; }

.quaternary a.button { color: #e8ac39; background-color: #ffffff; text-transform: uppercase; letter-spacing: 6px; line-height: 2em;}
.quaternary a.button:hover { color: #e8ac39; background-color: #ffe6b6; }

.quinary a.button { color: #000000; background-color: #ffffff; text-transform: uppercase; letter-spacing: 6px; line-height: 2em;}
.quinary a.button:hover { color: #000000; background-color: #d2d2d2; }

.contentquote a.button { color: #FFFFFF; background-color: #fbb017; text-shadow: 2px 2px #df9705; }
.contentquote a.button:hover { color: #FFFFFF; background-color: #fbc048; }

.feature-boxes { background-color: #000000; position: relative; overflow: hidden; height: 230px; margin: 30px 0px; padding: 0px 5%; text-align: center; }
.feature-boxes h2 { color: #FFF; line-height: 1.1em; top: 50%; transform: perspective(1px) translateY(-50%); position: relative; z-index: 9999; text-shadow: 1px 2px 1px #000000;}
.fboxes a { text-decoration: none;}
.fboxes a:hover { text-decoration: none;}

.formtitle {
	font-style: normal;
	color: #23376f;
    text-align: center;
    margin-bottom: 0px!important;
    padding-bottom: 0.5em;
    font-size: 2em;
}

.btn-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-size: cover;
    overflow: hidden;
    width: 100%;
    height: 100%;
    transition: .25s ease;
    white-space: nowrap;
    opacity: 1;
    zoom: 0.75;
}
.feature-boxes:hover .btn-overlay {
    width: 100%;
    opacity: 1;
    overflow: hidden;
    transform: scale(1.25);
    -moz-transform: scale(1.25);
    -webkit-transform: scale(1.25);
    -o-transform: scale(1.25);
    -ms-transform: scale(1.25); /* IE 9 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=1.5, M12=0, M21=0, M22=1.5, SizingMethod='auto expand')"; /* IE8 */
 filter: progid:DXImageTransform.Microsoft.Matrix(M11=1.5, M12=0, M21=0, M22=1.5, SizingMethod='auto expand'); /* IE6 and 7 */
}

.block {
	width: 100%;
	height: 70vh;
	position: relative;
	overflow: hidden;
	font-size: 16px;
  }
  .block h2 {
	position: relative;
	display: block;
	text-align: center;
	margin: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 7vw;
	color: white;
	font-weight: 400;
	text-shadow: 1px 1px 7px #000000;
  }
  .img-parallax {
	width: 100vmax;
	z-index: -1;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	pointer-events: none
  }

.left { float: left }
.right { float: right }
.text-center { text-align: center; }
.text-right { text-align: right; }
.no-mt { margin-top: 0px!important; }
.no-mb { margin-bottom: 0px!important; }
.no-margin { margin: 0px!important; }
.no-pt { padding-top: 0px!important; }
.no-pb { padding-bottom: 0px!important; }
.no-padding { padding: 0px!important; }
.pb { padding: 100px 0px; }
.mb { margin: 100px 0px; }
.bordered { border-top:1px solid #e8e8e8; border-bottom:1px solid #e8e8e8; }
.border-top { border-top:1px solid #e8e8e8; }
.border-bottom { border-bottom:1px solid #e8e8e8; }

.to-top-ar {
    position: fixed;
    font-size: 2em;
    bottom: 1em;
    right: 20px;
    z-index: 9;
    width: 120px;
    text-align: center;
}
.to-top-ar a {
    color: #D67490;
    background-color: transparent;
    border: 0px;
    padding: 0px;
}

.about-section { /*background-color: #d67490;*/ }

.about-section .fws-con { background-color: #FFFFFF; padding: 3em 0; }

section { overflow-y:hidden;}

@media only screen and (max-width: 1480px) {
	.fws-bg { height: 65vh; }
}

@media only screen and (max-width: 1180px) {
		.full-height { height: 100%; }
		footer { position: relative; }
}

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

	.nav { display: flex!important; }
	.nav a { font-size: 1em; color: #001a70; }

	.nav>li>a { padding: 10px 12px!important; }

	.contentbreak { height: 25vh; }
	.contentbreak .block { height: 25vh; }

	.contentbreakhalf { height: 20vh; }
	.contentbreakhalf .block { height: 20vh; }

	.pb { padding: 70px 0px; }
	.mb { margin: 70px 0px; }

	.carousel-caption h1 { font-size: 1.85em; }
	.carousel-caption p { font-size: 1em; margin-bottom: 0px;}
	.carousel-caption a.button { padding: 0.45em 1.118em!important; }

	.carousel-caption { left: 5%!important; }

	.carousel-item .left-text { padding: 20px!important; }

	.feature-boxes h2 { font-size: 1.5em; }

	blockquote h3 { font-size: 1.2em; line-height: 1.5em; margin-top: 0.5em; }
	.instafeed-section { padding:50px 0px; }

	.fws-bg { height: 60vh; }
}

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



	ul.nav { text-align: center; margin-top: 1em; display: inline-block!important; }
	.nav-primary li { display: inline-block; border-left: 1px solid #D67490; margin:5px 0px;}
	.nav-primary li:first-of-type {  border-left: 0px solid #D67490; }

	.nav>li>a { padding: 0px 15px!important; color: #001a70; }

	h1 { font-size: 2.15rem!important; }
	h2 { font-size: 1.5rem!important; }
	h3 { font-size: 1.25rem!important; }

	.primary {padding:25px 0px;}
	.secondary {padding:25px 0px;}
	.tertiary {padding:25px 0px;}
	.quaternary {padding:25px 0px;}

	.full-width-split .fws-bg { order: 1; }
	.full-width-split .fws-con { order: 2; padding: 40px;}

	.primary a.button { margin-bottom: 2em; }
	.secondary a.button { margin-bottom: 2em; }
	.tertiary a.button { margin-bottom: 2em; }
	.quaternary a.button { margin-bottom: 2em; }

	.pb { padding: 50px 0px; }
	.mb { margin: 50px 0px; }

	.offset-columns .col-sm-4 { order: 1; padding-bottom: 20px; }
	.offset-columns .col-sm-8 { order: 2; }

	.instafeed-section h2 { font-size: 18px; }

	.carousel .container { padding-left: 0px!important; padding-right: 0px!important; }
	.carousel-caption { bottom: 10px!important; position: inherit!important; width: 100%; display: block;}
	.carousel-item { background-color: #2a2a2c; }

	.fws-bgfh { height: 50vh; }
	.feature-banner { height: 50vh; }
	.flex-banner { padding: 0px; }

	.feat-border .row div:last-of-type, .feat-border .row div:first-of-type { border: 0px; }

	.contact-section .col-sm-6 {
		padding-top:2em;
	}

	footer { padding-bottom: 0px; }

	.to-top-ar { bottom: 2em; right: 0px; }
}
