/* ==========================================================================
   Define Custom Fonts Base
   ========================================================================== */
   
@font-face {
    font-family: 'Brandon Text';
    src: url('fonts/BrandonText-Regular.woff2') format('woff2'),
        url('fonts/BrandonText-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
   
@font-face {
    font-family: 'Brandon Text';
    src: url('fonts/BrandonText-Bold.woff2') format('woff2'),
        url('fonts/BrandonText-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

/* ==========================================================================
   Define Brand Colors and cusotm variables
   ========================================================================== */

:root {
	--blue: #1b3765;
	--yellow: #fcd2c1;
	--green: #828e49;
	--purple: #7978a3;
}

/* ==========================================================================
   Global Structure Base
   ========================================================================== */
   
   .col-100p {
	   clear: both;
	   width: 100%;
	   overflow: hidden;
   }
   
   .col-66p {
	   width: 66.66%;
	   overflow: hidden;
   }
   
   .col-50p {
	   width: 50%;
	   overflow: hidden;
   }
   
   .col-33p {
	   width: 33.33%;
	   overflow: hidden;
   }
   
   .col-30p {
	   width: 30%;
	   overflow: hidden;
   }
   
   .col-25p {
	   width: 25%;
	   overflow: hidden;
   }
   
   .col-15p {
	   width: 15%;
	   overflow: hidden;
   }
   
   .overflow {
		overflow: visible;   
   }
   
   .max-width-wrap {
	   width: 90%;
	   max-width: 1200px;
	   margin-left: auto;
	   margin-right:auto;
   }
      
   .flex {
	   display: flex;
   }
   
   .flex-row {
	   flex-direction: row;
	   justify-content: space-between;
   }
   
/* ==========================================================================
   Global Style Base
   ========================================================================== */
   
html {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
	
*, *:before, *:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}  
 
body {
  background: #ffffff;
  color: #333333;
  line-height: 1.5;
  font-family: "Brandon Text", Helvetica, serif;
  font-weight: normal;
  padding-bottom:50px;
}

h1,
h2,
h3 {
  line-height: 1.05;
  font-weight: bold;
  margin: 0;
  width: 100%;
}

h1,
h2,
h3,
p,
ul,
ol {
  font-size: clamp(
    var(--fluid-type-min, 1rem),
    calc(1rem + var(--fluid-type-target, 3vw)),
    var(--fluid-type-max, 1.3rem)
  );
  margin: 0 0 15px 0;
}

h1 {
  --fluid-type-min: 1rem;
  --fluid-type-max: 2.3rem;
  --fluid-type-target: 3vw;

  /*max-width: 15ch;*/
  
  color: var(--blue);
  margin-bottom: 30px;
}

h2 {
  --fluid-type-min: 1.6rem;
  --fluid-type-max: 1.8rem;
  color: var(--blue);
}

h3 {
  --fluid-type-min: 1.3rem;
  --fluid-type-max: 1.4rem;
  color: var(--blue);
}

h2,
h3 {
  /*max-width: 30ch;*/
  margin-top:40px;
}

p, ul, ol {
  --fluid-type-min: 1rem;
  --fluid-type-max: 1.1rem;
  --fluid-type-target: .5vw;
}

section > p:last-child ,
article p:last-child {
	margin-bottom:0;
}


ul, ol {
	
}

.text-center ul,
.text-center ol {
  list-style-position: inside;
  text-align: center;
  padding:0;
}

strong {
	font-weight: bold;
}

a {color: var(--blue); text-decoration: none;}
a:hover {text-decoration: underline;}

#content a {
	font-weight: bold;
}

.cotnent-white a {color: var(--yellow); }



/* ==========================================================================
  CTAs and Buttons
   ========================================================================== */
   
   .cta {
	   display: inline-block;
	   padding:10px 50px;
	   margin: 20px 0;
	   clear: both;
	   border: solid 1px var(--blue);
	   text-transform: uppercase;
	   color: var(--blue);
	   text-decoration: none;
	   font-size: .9rem;
	   font-weight: bold;
		
	   transition: all .2s ease;
   }
   
	   .cta:hover {
		   border-color: var(--yellow);
		   color: var(--blue);
		   background-color: rgba(255, 255, 255, .6);
		   text-decoration: none;
	   }
	   
	  .cta-light {
	   border: solid 1px #fff;
	   color: #fff;
	  }
   
/* ==========================================================================
   CTA Rows 
   ========================================================================== */

.cta-row {
	padding:30px;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

/* ==========================================================================
  Branding Base Theme variables - reusable
   ========================================================================== */
   
/* Background colours */
.bg-white {
	background-color: #fff;
}

.bg-yellow {
	background-color: var(--yellow);
}

.bg-yellow-85 {
	background-color: rgba(244,178,51,.85)
}

.bg-green {
	background-color: var(--green);
}

.bg-green-85 {
	background-color: rgba(130,142,73,0.85)
}

.bg-blue {
	background-color: var(--blue);
}

.bg-blue-85 {
	background-color: rgba(121,120,163,.85)
}

.bg-purple {
	background-color: var(--purple);
}


/* Text colour overrides */
.text-green {color: var(--green);}
.text-blue {color: var(--blue);}
.text-yellow {color: var(--yellow);}
.text-purple {color: var(--purple);}

/* icon Colour overrides */
.white-icon path {fill: #fff;}
.blue-icon path {fill: var(--blue);}
.yellow-icon path {fill: var(--yelow);}
.green-icon path {fill: var(--green);}



/* Gradient Overlays */
 .gradient-blue:after {
	 width: 100%;
	 height:100%;
	 content: '';
	 display: block;
	 position: absolute;
	 background: linear-gradient(132deg, rgba(27,55,101,1) 0%, rgba(27,55,101,0.6) 50%, rgba(27,55,101,1) 100%);
	 top:0; right:0; bottom:0; left:0;
	 z-index:-1;
 }
 
 .gradient-green:after {
	 width: 100%;
	 height:100%;
	 content: '';
	 display: block;
	 position: absolute;
	 background: linear-gradient(132deg, rgba(130,142,73,1) 0%, rgba(130,142,73,.4) 50%, rgba(130,142,73,1) 100%);
	 top:0; right:0; bottom:0; left:0;
	 z-index:-1;
 }

 .gradient-purple:after {
	 width: 100%;
	 height:100%;
	 content: '';
	 display: block;
	 position: absolute;
	 background: linear-gradient(132deg, rgba(121,120,163,1) 0%, rgba(121,120,163,.4) 50%, rgba(121,120,163,1) 100%);
	 top:0; right:0; bottom:0; left:0;
	 z-index:-1;
 }

/* Theme area's*/
.theme-light * {
	color: #fff !important;
}

	.theme-light .cta {
		border-color: #fff;
	}

/* ==========================================================================
  Start to theme it up!
   ========================================================================== */

/* Header Layout */	
.header-cont {
	position: fixed;
	top:0; right:0; left:0;
	z-index: 1;
	background: #fff;
}

	.header {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		
		font-weight: bold;
		z-index:0;
		position: relative;
	}
	
	.header-logo {
		padding: 15px 15px;
		width: 100%;
		max-width: 110px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-content: center;
		z-index: 1;
		transition: all .3s ease;
	}
	
		.header-logo a {
			width: 100%;
		}

		.header-logo img {
			width: 80%;
			height: auto;
			display: block;
			margin: 0 auto;
			transition: all .3s ease;
		}
		
	.header-main-cont {
		display: flex;
		flex-direction: column;
		flex: 1;
		justify-content: space-between;
	}
	
		.header-main {
			display: flex;
			flex-direction: row;
			justify-content: space-between;
			flex: 1;
		}
		
		.nav-main {
			margin: 0 auto;
			list-style: none none;
			width: 100%;
			text-align: center;
		}
		
			.nav-main > li {
				display: inline-block !important;
				float: none !important;
				padding: 0 15px;
				height: 100%;
				font-size: 1em;
			}
			
				/*** ESSENTIAL STYLES ***/
				.sf-menu {
				  position: relative;
				  margin: 0;
				  padding: 0;
				  list-style: none;
				}
				.sf-menu .sf-mega {
				  position: absolute;
				  display: none;
				  top: 100%;
				  left: 0;
				  z-index: 99;
				}
				.sf-menu > li {
				  float: left;
				}
				.sf-menu li:hover > .sf-mega,
				.sf-menu li.sfHover > .sf-mega {
				  display: block;
				}
				
				.sf-menu > li > a {
				  display: block;
				  position: relative;
				  height: 100%;
				  
				  display: flex;
				  flex-direction: column;
				  justify-content: center;
				  align-content: center;
				}
				
				.sf-menu .sf-mega {
				  width: 100%; 
				}
				
				/*** mega menu dropdown ***/
				.sf-mega {
				  background-color: var(--yellow);
				  width: 100%;
				  padding:10px;
				}				
				
					.main-sub {
						list-style: none none;
						margin:0; padding: 0;
					}					
						.main-sub > li {
							display: inline-block;
							padding: 0 15px;
						}

			
			
			
		.header-links {
			width: 100%;
			max-width: 110px;
			height: 100%;
		}
		
			.nav-header-links {
				margin: 0 ;
				padding: 15px;
				list-style: none none;
				width: 100%;
				height: 100%;
				
				display: flex;
				flex-direction: column;
				justify-content: center;
				flex: 1;
				
				font-size: .9em;
			}
			
				/* Mobile menu burger */	
				.mobile-menu {
					padding: 0;
					display: none;
				}	
				
				.mobile-menu a {
					display: block;
					padding:0 0 0 14px;
					background: #fff;
					color: #1f3d7d;
					
					display:flex;
					flex-direction: column;
					justify-content: space-between;
					align-items: center;
					
					-webkit-transition: color .1s ease-out;
					-o-transition: color .1s ease-out;
					transition: color .1s ease-out;
				}
				
				.mobile-menu a:hover {
					color: #e3251c;
				}			
				
				/* MENU BURGER ICON */
				
				.icon-btn-label {
					display: block;
					margin-top:7px;
				}
				
					.icon-btn:hover {
						text-decoration: none;
					}			
				
				span.icon-burger {
					position: relative;
					border: solid 1px #1f3d7d;
					margin: 10px 0;
					height: 2px;
					width: 100%;
					-webkit-transition: all .1s ease-out;
					-o-transition: all .1s ease-out;
					transition: all .1s ease-out;
				}
				
				span.icon-burger:before {
					content: '';
					position: absolute;
					border: solid 1px #1f3d7d;
					height: 2px;
					right:0;
					width: 100%;
					top: -8px;
					-webkit-transition: all .1s ease-out;
					-o-transition: all .1s ease-out;
					transition: all .1s ease-out;
				}
				
				span.icon-burger:after {
					content: '';
					position: absolute;
					border: solid 1px #1f3d7d;
					height: 2px;
					right:0;
					width: 100%;
					bottom: -8px;
					-webkit-transition: all .1s ease-out;
					-o-transition: all .1s ease-out;
					transition: all .1s ease-out;
				}
				
				.icon-btn:hover .icon-burger, 
				.icon-btn:hover span.icon-burger:before,
				.icon-btn:hover span.icon-burger:after {
					width: 100%;
					border-color: var(--yellow);
				}
			
			
			
	
	.header-bar {
		padding:10px;
		text-align: center;
		width: calc(100% + 110px);
		margin-left: -110px;
		transition: all .3s ease;
	}
	
		.header-bar p {
			margin: 0;
		}
		
		
/* Stick that nav on scroll */

.stickied .header-main {
	
}

	.stickied .header-bar {
		padding-top:5px;
		padding-bottom:5px;
	}	
	
		.stickied .header-logo img {
			width: 60%;
		}	
		
		.stickied .sf-mega {
			padding-top:5px !important;
			padding-bottom: 5px !important;
		}
		
		
/* Mobile Icon */

   #menu-cont {
	   position: fixed;
	   z-index: 99999;
	   top:0;
	   right:-110%;
	   width: 100%;
	   max-width: 600px;
	   padding:25px;
	   opacity: 0;
	   height: 100vh;
		background: rgb(31,61,125);
		background: linear-gradient(236deg, rgba(31,61,125,1) 47%, rgba(23,47,98,1) 100%);	   
	   transition: ease-in-out all .2s;
   }
   
	#menu-cont.open {
		/*-webkit-animation: animation 865ms linear both;
		animation: animation 865ms linear both;*/
		right:0;
		overflow-y: auto;
	}
   
   .menu-toggle-opened {
	    top: 25px;
	    right: 25px;
	    width: 40px;
	    height: 40px;
	    background: white;	 
	    float: right;
	    
	    display: flex;
	    flex-direction: column;
	    justify-content: center;
	    align-items: center;
	    
	   transition: ease-in-out all .03s;
   }
   
   	.menu-toggle-opened:hover {
	   	background: var(--yellow);
   	}
   
   	.menu-toggle-opened svg {
	   	width: 50%;
   	}
   
   	.menu-toggle-opened svg path {
	   	fill: var(--blue);
   	}
   
   ul.main-nav {
	   width: 100%;
	   overflow: hidden;
	   padding:0;
	   margin-top:0;
	   float: left;
   }
   
	   ul.main-nav li {
		   padding: 0;
		   overflow: hidden;
		   width: 100%;
		   display: block;
		   float: left;
	   }
   
		   ul.main-nav li a {
				color: #fff;
				display: block;
				width: 100%;
				float: left;
				padding:12px;
				margin: 0;
				display: flex;
				flex-direction: column;
				justify-content: center;
				transition: ease-in-out .15s all;
		   }
   
			   ul.main-nav li a:hover {
				   background: rgba(255, 255, 255, .1);
			   }
   
   ul.main-nav li.active > a {
	   font-weight: bold;
	   text-decoration: underline;
	   background-color: rgba(255, 255, 255, .1);
	}
   
   /*Nested list*/   
   ul.main-nav ul {
		padding: 0 0 0 20px;
		float: left;
		width: 100%;
   }   
      
   /*Animate nested*/
   .hideSub {
	   display: none;
   }
   
   .main-nav > li.has-children > a {
	   width: 87%;
	   width: calc(100% - 40px);
   }	   
	   
   .main-nav > li.has-children > span {
		display: block;
		width: 40px;
		height:100%;
		padding:14px 10px;
		position: relative;
		float: right;
		font-size: 12px;
		text-align: center;
		cursor: pointer;
		background-color: var(--yellow);
		transition: ease-in-out .15s all;
   }
   
		.main-nav > li.has-children > span:hover {
			background-color: white;
		}
	   
   .main-nav > li > span svg {
	    width: 15px;
	    display: inline-block;
		transition: ease-in-out .15s all;
   }
   
   .main-nav > li > span svg path {
	    fill: var(--blue);
   }
   
	   .main-nav > li.subOpened > span svg {
	   	   transform: rotate(180deg);
   	   }
   
	   .main-nav > li.subOpened > span {
	   	   background-color: white;
   	   }
   
  /* .searchbox {
	   width: 70%;
	   float: left;
	   border: solid 1px #eae7de;
	   border-radius: 2px
   }
   
	   	.searchbox input.txtbox {
		   	width: 80%;
		   	float:left;
		   	border: 0;
		   	clear: none;
		   	color: #333;
		   	padding: 15px;
	   	}
	   	
	   	.searchbox input.submit {
		   	width: 20%;
		   	float:right;
		   	clear: none;
		   	text-align: center;
		   	border: 0;
		   	padding:15px 9px;
		   	color: #031235;
		   	font-family: "Font Awesome 5 Pro"
	   	}
	   */
	   	
	   	.main-nav-social {
		   	text-align: center;
	   	}
	   		   	
		   	#menu-cont .main-nav-social li {
			   	display: inline-block;
			   	padding:13px;
		   	}
		   		   	
			   	#menu-cont .main-nav-social li a {
				   	color: #fff;
				   	font-size: 33px;
			   	}
			   	
		#menu-cont .cta {
			background: 0;
			border-color: #fff;
			padding:10px;
			font-weight: normal;
		    font-size: 1.05em;
		    margin: 10px 0;
		}
	   		   	
	   	
/* width */
#menu-cont.open::-webkit-scrollbar {width: 12px;}

/* Track */
#menu-cont.open::-webkit-scrollbar-track {background: var(--blue);}

/* Handle */
#menu-cont.open::-webkit-scrollbar-thumb {background:  var(--yellow); border-radius: 3px;}
   

	#menu-cont.open {
		opacity: 1;
		visibility: visible;
		right:0;
	}   
	

.menu-icons {
	width: 100%;
	margin: 0;
	padding:0;
	clear: both;
	display: block;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	flex-wrap: wrap;
}	

	.menu-icons li {
		padding:10px;
		display: block;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
		text-align: center;
	    width: 20%;
	    min-width: 105px;
	    flex-grow: 1;
	}
	
		.menu-icons a {
			display: block;
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
			align-items: center;
			color: #fff;
			text-transform: uppercase;
			font-size: .8em;
		    font-weight: 700;
		    line-height: 1.1em;
		    
			-webkit-transition: all .1s ease-out;
		    -o-transition: all .1s ease-out;
		    transition: all .1s ease-out;
		}
		
			.menu-icons a:hover {
				text-decoration: none;
			    color: var(--yellow);
			}
	
		.menu-icons svg {
			margin: 0 0 10px 0;
			-webkit-transition: all .1s ease-out;
		    -o-transition: all .1s ease-out;
		    transition: all .1s ease-out;
		}
		
			.menu-icons a:hover svg {
				transform: scale(1.3);
			}
		
			.menu-icons a:hover svg path {
				fill: var(--yellow);
			}
			


			
		
		
		
/* Footer Layout */	
.footer-cont {
	margin-top: 50px;
	margin-bottom: 20px;
	position: relative;
}

	.footer-cont:before {
		content: '';
	    width: 105%;
	    height: 30px;
	    background-image: url("data:image/svg+xml,%3Csvg enable-background='new 0 0 4179.7 321.4' viewBox='0 0 4179.7 321.4' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m0 276h4179.7v45.4h-4179.7z' fill='%237677a2'/%3E%3Cpath d='m0 241.5h4179.7v34h-4179.7z' fill='%23fff'/%3E%3Cpath d='m0 195.5h4179.7v45.4h-4179.7z' fill='%23e0a942'/%3E%3Cpath d='m0 161h4179.7v34h-4179.7z' fill='%23fff'/%3E%3Cpath d='m0 115.1h4179.7v45.4h-4179.7z' fill='%237a8b4f'/%3E%3Cpath d='m0 80.5h4179.7v34h-4179.7z' fill='%23fff'/%3E%3Cpath d='m0 0h4179.7v34h-4179.7z' fill='%23fff'/%3E%3Cpath d='m0 34.6h4179.7v45.4h-4179.7z' fill='%23a29991'/%3E%3Cpath d='m0 276h4179.7v45.4h-4179.7z' fill='%231f3664'/%3E%3Cpath d='m0 195.5h4179.7v45.4h-4179.7z' fill='%23f5b333'/%3E%3Cpath d='m0 115.1h4179.7v45.4h-4179.7z' fill='%237978a2'/%3E%3Cpath d='m0 34.6h4179.7v45.4h-4179.7z' fill='%23828e48'/%3E%3C/svg%3E");
	    background-position: top left;
	    background-repeat: repeat;
	    position: relative;
	    display: block;
	}

	.footer {
		margin-top:40px;
		margin-bottom:15px;
		width:60%;
	}
	
		.footer img.logo {
			margin: 0 auto;
			display: block;
		}
	
	.footer p {
		font-size: .9rem;
	}

	.footer a {
		font-weight: bold;
	}

	.social-links {
		list-style: none none;
		margin: 0;
		padding:0;
	}
	
		.social-links li {
			display: inline-block;
			margin: 0 30px 10px 0;
		}
	
		.social-links a {
			color: var(--yellow);
			text-decoration: none;
		}
		
		.social-links svg{
			transition: all .2s ease-in-out;
		}
		
		.social-links path {
			transition: all .2s ease-in-out;
		}
		
		.social-links a:hover svg {
			transform: scale(1.1)
		}
		
			.social-links a:hover path {
				fill: var(--yellow);
			}
		
	.footer-menu {
		list-style: none none;
		margin: 0;
		padding:0;
	}
	
	.signoff {
		padding-top: 20px;
		padding-top: 10px;
	}
		.signoff p {
			font-size: .9rem;
			margin: 0 0 10px 0;
		}
		
		
.lower-ctas-cont {
	position: fixed;
	bottom:0; right: 0; left:0;
	background: var(--yellow);
	text-align: center;
	padding: 10px;
	transform: translateY(100%);
	opacity: 0;
	transition: all .4s ease-in-out;
}

.stickied .lower-ctas-cont {
	opacity: 1;
	transform: translateY(0);
}

	.lower-ctas .cta {
		display: inline-block;
		margin: 0 15px;
	}
		
		
@media only screen and (max-width: 700px) {
	.footer {
		flex-direction: column;
		text-align: center;
		margin-bottom:0;
	}
	
	.footer > div {
		width: 100%;
		margin-bottom:20px;
	}
	
		.social-links li {
			margin: 0 20px 10px 20px;
		}

	
}



/* ==========================================================================
   Home Specific 
   ========================================================================== */
   
   .home-intro h1 {
	  --fluid-type-min: 1rem;
	  --fluid-type-max: 2rem;
	  --fluid-type-target: 2vw;
   }  
   
/* ==========================================================================
   Side Tabs
   ========================================================================== */
   
 .side-tabs {
	 position: fixed;
	 right: 0;
	 top: 20%;
 }  
 
 	.side-tabs ul {
	 	display: block;
	 	overflow: visible;
	 	width: 128px;
		padding:0;
 	}
 
 	.side-tabs li {
	 	width: 100%;
	 	position: relative;
	 	left: 85px;
	 	display: block;
	 	background: #1b3765;
	 	margin: 0 0 5px 0;
	 	padding:0;
	 	opacity: 0;
		
		backface-visibility: hidden;	
		transition: .2s ease-in-out all;
		
-webkit-animation: fadeinTab 1s forwards; /* Safari, Chrome and Opera > 12.1 */
       -moz-animation: fadeinTab 1s forwards; /* Firefox < 16 */
        -ms-animation: fadeinTab 1s forwards; /* Internet Explorer */
         -o-animation: fadeinTab 1s forwards; /* Opera < 12.1 */
            animation: fadeinTab 1s forwards; 	
            
	   	animation-delay: .5s

    } 	
    
 	.side-tabs li:nth-child(2) {
	   	animation-delay: .6s
    } 	
    
 	.side-tabs li:nth-child(3) {
	   	animation-delay: .7s
    } 	
    
 	.side-tabs li:nth-child(4) {
	   	animation-delay: .8s
    } 	
    
 	.side-tabs li:nth-child(5) {
	   	animation-delay: .9s
    } 	
    
@keyframes fadeinTab {
    from { opacity: 0; transform: translateX(20px) }
    to   { opacity: .9; transform: translateX(0) }
}

/* Firefox < 16 */
@-moz-keyframes fadeinTab {
    from { opacity: 0; transform: translateX(20px) }
    to   { opacity: .9; transform: translateX(0) }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadeinTab {
    from { opacity: 0; transform: translateX(20px) }
    to   { opacity: .9; transform: translateX(0) }
}

/* Internet Explorer */
@-ms-keyframes fadeinTab {
    from { opacity: 0; transform: translateX(20px) }
    to   { opacity: .9; transform: translateX(0) }
}    
 	
	 	.side-tabs li:hover {
		 	left: 81px;
		 	background: var(--yellow);
		}
			
	 	.side-tabs li a {
		 	padding:12px;
		 	display: block;
		 	color: #333;
		 	font-size: 25px;
		 	text-align: center;
		 	line-height: 0;
		 	display: flex;
		 	flex-direction: row;
		 	flex-wrap: nowrap;
	 	}
	
		 	.side-tabs li a:hover {
			 	text-decoration: none;
		 	}		
   
/* ==========================================================================
   SECTION: Hero banners 
   ========================================================================== */
   
   .hero-banner {
	   position: relative;
	   margin-top:90px;
   }
      
   .banner-slide {
	   position: relative;
	   width: 100%;
   }
   
	   .banner-slide:after {
		    content: '';
		    display: block;
		    position: absolute;
		    top: 0;
		    right: 0;
		    bottom: 0;
		    left: 0;
		    width: 100%;
		    height: 100%;
		    background: linear-gradient(318deg, rgba(27,55,101,0.7) 0%, rgba(27,55,101,0) 55%);
		}
		
		.home-first-logo {
		    scale: 80%;
			width: 100%;
			max-width: 450px;
			margin-top:50px;
		}
   
   .slide-inner {
	   width: 100%;
	   max-width: 85%;
	   margin: 80px auto;
	   clear: both;
	   position: relative;
	   height:45vh;
	   min-height: 650px;
	   z-index: 1;
	   
	   text-align: center;
	   color: #fff;
	   
	   display: flex;
	   flex-direction: column;
	   justify-content: center;
	   align-items: center; 
   }
   
   .tall-banner .slide-inner {
	   height: 70vh;
   }
   
	   	.slide-inner span {
		   	font-size: 3.3rem;
		   	font-weight: bold;
		   	line-height: 1.1;
		   	margin-bottom: 20px;
		   	text-shadow: 1px 1px 1px rgba(0,0,0,.3);
	   	}
   
   	.banner-media {
	   	width: 100%;
	   	height:100%;
	   	float: left;
	   	position: absolute;
	   	top:0; right:0; bottom:0; left:0;
	   	z-index:0;
   	}
   	
	   	.banner-slide img {
		   	width: 100%;
		   	height:100%;
		   	object-fit: cover;
	   	}
	   	
	   	.banner-media video {
		   	width: 100%;
		   	height:100%;
		   	object-fit: cover;
	   	}	   	
	   	
   .hero-banner .slick-next {
	   right:30px;
	   width: 28px;
	   height:28px;
	   padding-top:2px;
   }
   
   .hero-banner .slick-prev {
	   left:30px;
	   width: 28px;
	   height:28px;
	   padding-top:2px;
	   z-index:1;
   }
   
	   	.slide-inner img {
		   	width: 100%;
		   	height:100%;
		   	float: left;
		   	object-fit: cover;
	   	}
	   	
		@keyframes fadein {
				    from { opacity: 0; transform: translateX(-20px) }
				    to   { opacity: 1; transform: translateX(0) }
		}
		
		/* Firefox < 16 */
		@-moz-keyframes fadein {
				    from { opacity: 0; transform: translateX(-20px) }
				    to   { opacity: 1; transform: translateX(0) }
		}
		
		/* Safari, Chrome and Opera > 12.1 */
		@-webkit-keyframes fadein {
				    from { opacity: 0; transform: translateX(-20px) }
				    to   { opacity: 1; transform: translateX(0) }
		}
		
		/* Internet Explorer */
		@-ms-keyframes fadein {
				    from { opacity: 0; transform: translateX(-20px) }
				    to   { opacity: 1; transform: translateX(0) }
		}

	   	.slide-ani {
		   	opacity: 0;
		   	display: inline-block;
	   	}
	   	
	   	.slick-current .slide-ani {
		    -webkit-animation: fadein .5s forwards; /* Safari, Chrome and Opera > 12.1 */
       -moz-animation: fadein .5s forwards; /* Firefox < 16 */
        -ms-animation: fadein .5s forwards; /* Internet Explorer */
         -o-animation: fadein .5s forwards; /* Opera < 12.1 */
            animation: fadein .5s forwards;
		   	animation-delay: .3s
	   	}
	   	
	   	.slick-current .slide-ani:nth-child(2) {
		   	animation-delay: .4s
	   	}

	   	.slick-current .slide-ani:nth-child(3) {
		   	animation-delay: .5s;
	   	}
	   	
	   	
	   	.hero-banner span.arrow {
			color:#fff;
			display: block;
			width: 100%;
			position: absolute;
			bottom:0;
			left:0;
			text-align: center;
			-webkit-transition: all ease-in-out .3s;
			-o-transition: all ease-in-out .3s;
			transition: all ease-in-out .3s;
			margin-top: 30px;
			margin-bottom: 50px;
			-webkit-animation: bounce 4s infinite;
			        animation: bounce 4s infinite;
		}		
 
		@-webkit-keyframes bounce {
			0%, 20%, 50%, 80%, 100% {-webkit-transform: translateY(0);transform: translateY(0);}
			40% {-webkit-transform: translateY(-15px);transform: translateY(-15px);}
			60% {-webkit-transform: translateY(-5px);transform: translateY(-5px);}
		}		
 
		@keyframes bounce {
			0%, 20%, 50%, 80%, 100% {-webkit-transform: translateY(0);transform: translateY(0);}
			40% {-webkit-transform: translateY(-15px);transform: translateY(-15px);}
			60% {-webkit-transform: translateY(-5px);transform: translateY(-5px);}
		}
		
@media only screen and (max-width: 700px) {
	
		.tall-banner .slide-inner {
		    height: 50vh;
		}
		
		.home-first-logo {
		    width: 60%;
		}
		
		.home-banner span.arrow {
			display: none;
		}
}

/* ==========================================================================
Popup Styling
========================================================================== */

.popup-overlay {
	width: 100%;
	position: fixed;
	top:0;
	right:0;
	left:0;
	bottom:0;
	opacity: 0;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	visibility: hidden;
	z-index: 999999;
	-webkit-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

	.popup-open .popup-overlay {
		background: rgba(27,55,107, .55);
		opacity: 1;
		visibility: visible;
	}
	   
   .popup-cont {
		width: 100%;
	    max-width: 800px;
	    display: block;
	    position: fixed;
	    padding:20px;
	    top: 35%;
	    left: 50%;
	    opacity: 0;
	    visibility: hidden;
		z-index: 9999999;
	    transform: translateY(-50%) translateX(-50%);
	    
	    animation-duration: .5s;
	    animation-fill-mode: both;
	    animation-delay: .2s;
	    -webkit-animation-duration: 1s;
	    -webkit-animation-fill-mode: both;
	    
	    display: flex;
	    flex-direction: row;
	    flex-wrap: nowrap;
	    align-content: center;
	    justify-content: center;
	}
	
		@keyframes fadeInUp {
		    from {
			    transform: translateY(-40%) translateX(-50%);
		    }
		
		    to {
			    transform: translateY(-50%) translateX(-50%);
		        opacity: 1
		    }
		}
		
		
	   .popup-open .popup-cont {
		    visibility: visible;
		    animation-name: fadeInUp;
		    -webkit-animation-name: fadeInUp;
		}	
		
	.popup-logo {
		position: absolute;
		top: -20px;
		left: 50%;
		margin-left: -40px;
		width: 80px;
		height: 80px;
		z-index: 1;
		background-color: var(--blue);
		padding:15px;
	}
	

	.popup-open .popup-logo {
		-webkit-animation: jello-horizontal 1s both;
	        animation: jello-horizontal 1s both;	
	}
	

@-webkit-keyframes jello-horizontal {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}
@keyframes jello-horizontal {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

   	
   	.popup-close {
	   	position: absolute;
	   	display: block;
	   	top:-10px;
	   	right:20px;
	   	font-size: 16px;
	   	font-weight: bold;
   	}
   	
	   	.popup-close a {
		   	color: white;
		   	font-weight: bold;
	   	}	   	
	   	
	.popup-inner {
		padding: 55px 20px 35px 20px;
		background: #fff;
		width: 100%;
		text-align: center;
	}		
		
	.popup-cont h3 {
		line-height: 120%;
		font-weight: 700;
		text-align: center;
		margin-top:10px;
	}
	
	.popup-cont .cta {
		display: block;
	    width: fit-content;
	    margin: 25px auto 0 auto;
	}
	
@media only screen and (max-width: 850px) {	
	
   .popup-cont {
	    flex-direction: column-reverse;
	    top:25%;
	}
	
	.popup-cont > div {
		width: 100%;
		clear: both;
	}
	
	.popup-inner {
		padding-left:20px;
		padding-right:20px;
	}
	
		@keyframes fadeInUp {
		    from {
			    transform: translateY(-40%) translateX(-50%);
		    }
		
		    to {
			    transform: translateY(-35%) translateX(-50%);
		        opacity: 1
		    }
		}
		
}		
		

	   	
	   	
/* ==========================================================================
   SECTION: TEXT BANNER 
   ========================================================================== */
	 
	 .section-text-banner {
		 background-size: cover;
		 background-position: top center;
		 background-repeat: no-repeat;
		 position: relative;
		 z-index:0;
	 }  	
	 
	 	.text-banner-inner {
		 	padding: 40px 0;
		 	z-index: 1;
	 	}
	 	
		 	.text-banner-inner p:last-child,
		 	.text-banner-inner p:last-child a.cta {
			 	margin-bottom: 0;
			 }
	 	
		 	.text-banner-inner > :first-child {
			 	margin-top: 0;
			 }
	 	
	 	.text-banner-has-bg {
		 	padding-top:60px;
		 	padding-bottom:40px;
	 	}
	 	
	 	.accordian-link {
		 	position: relative;
		 	padding-bottom:50px;
		 	border: 0;
		 	margin-bottom:0;
	 	}
	 	
		 	.accordian-link:hover {
			 	background: none;
			 	color: var(--yellow) !important;
		 	}
	 	
		 	.accordian-link svg,
		 	.accordian-link svg path {
			 	transition: all .4s ease;
		 	}
	 	
		 	.accordian-open svg {
			 	transform: rotate(180deg);
		 	}
	 	
		 	.accordian-link:hover svg path {
			 	fill: var(--yellow) !important;
		 	}
	 	
	 	.accordian-link .arrow {
			position: absolute;
			bottom: 12px;;
			left:50%;
			margin-left: -7px;
			text-align: center;
			-webkit-transition: all ease-in-out .3s;
			-o-transition: all ease-in-out .3s;
			transition: all ease-in-out .3s;
				-webkit-animation: bounce 4s infinite;
	        animation: bounce 4s infinite;
	 	}
	 	
	 	
 	@media only screen and (max-width: 700px) {
	 	
	 	.text-banner-inner {
		 	padding: 40px 0 20px 0;
		 	z-index: 1;
	 	}
	 	
	 	}


/* ==========================================================================
   SECTION: TEXT / IMG GRID 
   ========================================================================== */
	 
   .text-image-row {
	   display: flex;
	   flex-direction: row;
	   justify-content: space-between;
	   flex-wrap: nowrap;
   }
   
	   .text-image-row > div {
		   width: 50%;
		   padding: 70px;
	   }
	   	   
	   .ti-text {
		   display: flex;
		   flex-direction:column;
		   justify-content: center;
	   }
	   
	   .ti-img {
		   background-repeat: no-repeat;
		   background-size: cover;
		   background-position: center center;
		   min-height: 400px;
	   }
	   
	   	.text-image-row:nth-child(even) .ti-img {
		   	order: 0;
	   	}
   
	   	.text-image-row:nth-child(even) .ti-text {
		   	order: 1;
	   	}
	   	
	   	
   @media only screen and (max-width: 700px) {
	   
	   .text-image-row {
		   flex-direction: column;
	   }
	   
	   .text-image-row > div {
		   width: 100%;
		   padding: 0 30px 30px 30px;
	   }
	   
	   .text-image-row:nth-child(even) .ti-text {
		  order: unset;
		}
		
		.text-image-row:nth-child(even) .ti-img {
		    order:  unset;
		}


	}
   	 	
/* ==========================================================================
   SECTION: CARD CTAs 
   ========================================================================== */
   
   .section-card-ctas {
	   padding-top: 55px;
	   padding-bottom: 35px;
   }
   
   	.card-ctas-cont {
	   	display: flex;
	   	flex-direction: row;
	   	flex-wrap: wrap;
	   	justify-content: space-between;
   	}
   	
   		.card-cta {
	   		width: 31%;
	   		padding: 40px 30px 30px 30px;
		   	margin: 0 0 30px 0;
	   		color: #fff;
	   		text-align: center;
	   		
	   		display: flex;
	   		flex-direction: column;
	   		justify-content: flex-start;
	   		align-items: center;
   		}
   		
   		.card-cta-ico {
	   		display: inline-block;
	   		margin: 0 0 20px 0;
	   		width: 100%;
	   		max-width: 50px;
   		}
   		
	   		.card-cta-ico svg {
		   		width: 100%;
	   		}
   		
		   		.card-cta-ico svg path{
			   		fill: #fff;
		   		}
   		
		   		.theme-dark .card-cta-ico svg path{
			   		fill:  var(--blue);
		   		}
   		
   		.card-cta h2 {
	   		font-size: 1.4em;
	   		margin-top:5px;
   		}
   		
   		.card-cta .cta {
	   		margin:10px 0;
	   		margin-top: auto;
   		}
   		
@media only screen and (max-width: 700px) {
	
	.section-card-ctas {
		padding-top:25px;
		padding-bottom:0;
	}
	
   	.card-ctas-cont {
	   	flex-direction: column;
   	}
   	
   		.card-cta {
	   		width: 100%;
	   		padding: 40px 30px 30px 30px;
		   	margin: 0 0 30px 0;
	   		color: #fff;
	   		text-align: center;
	   		
	   		display: flex;
	   		flex-direction: column;
	   		justify-content: flex-start;
	   		align-items: center;
   		}
   		

	
}
   			
   		
   		
/* ==========================================================================
   SECTION: TESTIMONIALS 
   ========================================================================== */
   
   .section-testims {
   }
   
   .testims-has-bg {
   	   background-repeat: no-repeat;
	   background-size: cover;
	   background-position: left center;
   }
   
   .testims-has-bg .testims-cont {
	   width: 50%;
   }
   
   	.testims-cont {
	   	float: right;
	   	padding: 140px 5% 140px 10%;
   	}
   	
   		.testims-cont h2 {
   			margin-bottom:40px;
   		}
   		
   		.testims .slick-prev {
	   		display: none !important;
   		}
   	
   		.testims .slick-next {
	   		display: block !important;
	   		margin-top:20px !important;
	   		position: relative !important;
	   		right: unset !important;
   		}
   	
	   	.testim-slide blockquote {
		   	margin:0;
		   	color: var(--blue);
		   	font-size: 1.2rem;
		   	line-height: 2rem;
	   	}
	   
	   	.testim-slide cite {
		   	display: inline-block;
		   	margin: 20px 0 0 0;
		   	font-style: normal;
		   	font-weight: bold;
	   	}
	   	
	   	
@media only screen and (max-width: 700px) {
	   	
   	.testims-has-bg .testims-cont {
	    width: 100%;
	    padding: 57px 5% 57px 10%
	}
}
	   	
/* ==========================================================================
   SECTION: APPROACH 
   ========================================================================== */
   
   .approach-cont {
	   padding: 70px 30px;
   }
   
   .approach-has-bg {
	   background-repeat: no-repeat;
	   background-size: cover;
	   background-position: center center;
	   position: relative;
	   z-index: 0;
   }
   
   .approach-header {
	   margin: 0 0 50px 0;
   }
   
   	.approach-blocks {
	   	display: flex;
	   	flex-direction: row;
	   	flex-wrap: wrap;
	   	justify-content: space-between;
   	}
   	
   		.approach-block {
	   		width:30%;
	   		margin: 10px 0;
   		}
   		
   			.approach-icon {
	   			border: solid 1px var(--blue);
	   			border-radius: 50%;
	   			width: 150px;
	   			height: 150px;
	   			margin: 0 auto 30px auto;
	   			
	   			display: flex;
	   			flex-direction: column;
	   			justify-content: center;
	   			align-items: center;
   			}
   			
   			.approach-icon svg path{
	   			fill: var(--blue);
   			}
   			
   			.approach-block h3 {
	   			color: var(--yellow);
   			}
   			
   			
   			.theme-light .approach-icon {
	   			border-color: #fff;
   			}
   			
   			.theme-light .approach-icon svg path{
	   			fill: #fff;
   			}
   			
   			
@media only screen and (max-width: 700px) {
	
	.approach-cont {
		padding-right:20px;
		padding-left: 20px;
	}
	
   	.approach-blocks {
	   	display: flex;
	   	flex-direction: column;
   	}
   	
   		.approach-block {
	   		width:100%;
	   		margin: 10px 0 20px 0;
	   		padding-left:10px;
	   		padding-right:10px;
   		}
	
}
   			
   			
/* ==========================================================================
   Section: FAQs 
   ========================================================================== */
   
  .faqs-cont {
    padding: 20px 0 20px 0;
	} 
   
   
	h4.faq-q {
		width: 100%;
		clear: both;
		display: block;
		margin: 0 0 0 0;
		position: relative;
		border-bottom: solid 1px #b7b7c0;
		-webkit-transition: all ease-in .1s;	
		-o-transition: all ease-in .1s;	
		transition: all ease-in .1s;
	}

	h4.faq-q:hover {

	}

	h4.faq-q svg {
		-webkit-transition: all ease-in .1s;
		-o-transition: all ease-in .1s;
		transition: all ease-in .1s;
		position: absolute;
		top: 25px; right: 15px;
	}
	
	h4.faq-open,
	h4.faq-open:hover {

	}

	h4.faq-open svg {
		-webkit-transform: rotate(-180deg);
		    -ms-transform: rotate(-180deg);
		        transform: rotate(-180deg);
	}

	h4.faq-q a {
		width: 100%;
		color: #333;
		display: block;
		padding:25px 40px 25px 0;
		font-size: 1.2em;
	}

.faq-a {
	display: none;
	width: 100%;
	clear: both;
	padding:30px 0;
}

.accordian-content {
	display: none;
	width: 100%;
	clear: both;
	padding:50px 0;
}

	.faq-a > :last-child,
	.accordian-content > :last-child {
		margin-bottom:0;
	}	
	
	.faq-a ul {
		list-style-position: inside;
	    list-style-type: disc;
	    margin: 20px 0;
	}
	
/* ==========================================================================
	   SECTION: Staff List cards
	========================================================================== */
	
	  .staff-cont {
	   padding: 20px 0 20px 0;
	   }    
	
	.staff-wrap {
		display: flex;
		clear: both;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.staff-member {
		padding:10px;
		margin:0 1% 20px 1%;
		width: 31.33%;
		min-width: 300px;
		
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
	
	.staff-info {
		flex: 1;
	}
		.staff-info h3 {
			margin: 0 0 10px 0;
			font-size: 1.5em;
			font-weight: normal;
		}
	
	.staff-photo {
		margin-right:15px;
		width: 100%;
		max-width: 170px;
		height: auto;
		transform: rotate(-1.5deg);
	}
	
		.staff-image {
			width: 100%;
			height: auto;
			background:#fafafa;
		}
		
		@media only screen and (max-width: 1100px) {
			.staff-member {
				width: 49%;
				margin: 0 0 15px 0;
			}
			
			.staff-photo {
				max-width: 120px;
			}
			
		}
		
		@media only screen and (max-width: 650px) {
			.staff-member {
				width: 100%;
			}
			
		}
		
	 	   	
/* ==========================================================================
   SECTION: Column CTAs banners 
   ========================================================================== */
   
   .column-cta {

   }
   
   .column-cta {
	   display: flex;
	   flex-direction: column;
	   overflow: visible;
   }

   .column-cta-inner {
	   background-color: #fff;
	   padding:85px 25px 25px 25px;
	   flex: 1;
	   z-index:0;
   	   -webkit-box-shadow: 0px 0px 18px -3px rgba(0,0,0,0.1); 
		box-shadow: 0px 0px 18px -3px rgba(0,0,0,0.1);
   }
   
   	.column-cta-icon {
	   	width:100px;
	   	height:100px;
	   	border-radius: 100%;
	   	margin-bottom:-50px;
	   	margin-left:30px;
	   	z-index:1; 
	   	color: #fff;
	   	
	   	display: flex;
	   	flex-direction: column;
	   	justify-content: center;
	   	align-items: center;
	   	text-align: center;
   	}
   	
   	
/* ==========================================================================
   SECtioN: Facilities Split Content 
   ========================================================================== */
   
   
   .facilities-cont {
	   position: relative;
	   z-index: 0;
	   clear: both;
	   float: left;
	   margin: 100px 0 100px 0;
	   overflow: visible;
   }
   
   	.facilities-media {
	   	width: 53%;
	   	position: absolute;
	   	display: block;
	   	z-index:1;
	   	top:50%; left:0;
	   	transform: translateY(-50%);
	   	max-width: 700px;
	   	min-width: 500px;
   	   -webkit-box-shadow: 0px 0px 18px -3px rgba(0,0,0,0.1); 
		box-shadow: 0px 0px 18px -3px rgba(0,0,0,0.1);
   	}
   	
   		.facility-slide {
	   		position: relative;
	   		z-index:0;
	   		float: left;
   		}
   		
   		.facility-slide:after {
	   		content: '';
	   		position: absolute;
	   		display: block;
	   		bottom: -1px;
	   		right:0;
	   		width: 100%;
	   		height: 40%;
	   		z-index:1;
			background: rgb(255,255,255);
			background: linear-gradient(0deg, rgba(255,255,255,1) 2%, rgba(255,255,255,0) 100%);   		
		}
   		
   		.facility-slide img {
	   		width: 100%;
	   		height: auto;
	   		float: left;
   		}
   		
   			.facility-slide-caption {
	   			position: absolute;
	   			display: block;
	   			bottom:0; left:0; right: 0;
	   			text-align: center;
	   			padding: 0 0 25px 0;
	   			font-size: 2.2rem;
	   			font-weight: bold;
	   			z-index:2;
   			}
   	
   	.facilities-content {
	   	width: auto;
	   	padding:50px 30px 50px 55%;
	   	margin: 20px 0 20px 20px;
	   	background: #fff;
	   	float: right;
	   	position: relative;
	   	z-index:0;
	   	
   	   -webkit-box-shadow: 0px 0px 18px -3px rgba(0,0,0,0.1); 
		box-shadow: 0px 0px 18px -3px rgba(0,0,0,0.1);
   	}
   	
   	
/* ==========================================================================
   Forms 
   ========================================================================== */
      
   .form-cont {
	   border: solid 1px var(--blue);
	   padding: 50px;
	   padding-top: 20px;
	   max-width: 900px;
	   margin-top: 20px;
	   margin-bottom: 40px;
   }
   
	   	.form-cont h2 {
		   	text-align: center;
		   	margin-bottom:30px;
	   	}
	   	
	   	.form-cont > p:last-of-type {
	   		margin-bottom:30px;
	   	}
	   	
	   	.form {
	   	}
	   	
	 @media only screen and (max-width: 700px) {
		 .form-cont {
			 padding: 0 20px;
		 }

	}  	
	   	
	   	
/* ==========================================================================
   Formie overrides
   ========================================================================== */
   
   /* Animate the multi page forms */
   .fui-form-container {
	   overflow: hidden;
   }
   .fui-page {
	   opacity: 1;
	   visibility: visible;
	   transition: all .2s ease;
	   
   }
   
   .fui-hidden {
	   display: block !important;
	   visibility: hidden !important;
	   transform: translateX(120%);
	   height: 0 !important;
	   overflow: hidden !important;
	   
        /*animation-duration: 2s;
        animation-iteration-count: 1;
        animation-name: bounce-7;
        animation-timing-function: cubic-bezier(0.280, 0.840, 0.420, 1);
        transform-origin: bottom;*/
	   
   }   
   
    @keyframes bounce-7 {
        0%   { transform: scale(1,1)      translateY(0); }
        10%  { transform: scale(1.1,.9)   translateY(0); }
        30%  { transform: scale(.9,1.1)   translateY(-100px); }
        50%  { transform: scale(1.05,.95) translateY(0); }
        57%  { transform: scale(1,1)      translateY(-7px); }
        64%  { transform: scale(1,1)      translateY(0); }
        100% { transform: scale(1,1)      translateY(0); }
    }
    
    
    
   
   .fui-label,
   .fui-legend,
   .fui-checkbox-label  {
	   color: var(--blue) !important;
	   font-family: "Brandon Text", Helvetica, serif !important;
	   font-size: 1.15rem !important;
	   font-weight: bold !important;
   }
   
  .fui-input, .fui-select 	{
	  border-radius: 1px !important;
	  padding: 15px 10px !important;
	  color: var(--blue) !important;
  }	
  
	  .fui-select option 	{
		  color: var(--blue) !important;
	  }	
  
   .fui-btn-container .fui-btn {
	   display: inline-block;
	   padding:10px 50px;
	   margin: 20px auto !important;
	   clear: both;
	   border: solid 1px var(--yellow);
	   text-transform: uppercase;
	   background: none;
	   color: var(--yellow) !important;
	   text-decoration: none;
	   font-size: .9rem;
	   font-weight: bold;
	   border-radius: 0 !important;
		
	   transition: all .2s ease;
   }
   
   .fui-btn-container .fui-btn:hover {
		   border-color: var(--yellow);
		   color: var(--blue);
		   background-color: rgba(255, 255, 255, .6);
		   text-decoration: none;
	   }


	   
   
   	
/* ==========================================================================
   Slick overrides
   ========================================================================== */
   		
.slick-prev, .slick-next {
    transition: all .1s ease-in-out;
}   

.slick-prev:before, .slick-next:before {
    font-size: 28px !important;
    color: #f4b233 !important;
    transition: all .2s ease-in-out;
}   

.slick-next:before {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23f5b333' d='m443.7 266.8-165.9 176c-3.3 3.5-8.7 5.2-12.3 5.2-3.986 0-7.988-1.375-11.16-4.156-6.773-5.938-7.275-16.06-1.118-22.59l140.678-149.254h-377.31c-9.171 0-16.59-7.155-16.59-15.1s7.421-16.9 16.59-16.9h377.3l-140.7-149.3c-6.157-6.531-5.655-16.66 1.118-22.59 6.789-5.906 17.27-5.469 23.45 1.094l165.9 176c5.742 6.096 5.742 15.496.042 21.596z'/%3E%3C/svg%3E") !important;
}

.slick-prev:before {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23f5b333' d='m448 256c0 8.8-7.4 16-16.6 16h-377.29l140.7 149.3c6.157 6.531 5.655 16.66-1.118 22.59-3.192 2.71-7.192 4.11-11.192 4.11-4.505 0-9.009-1.75-12.28-5.25l-165.9-176c-5.752-6.094-5.752-15.41 0-21.5l165.9-176c6.19-6.562 16.69-7 23.45-1.094 6.773 5.938 7.275 16.06 1.118 22.59l-140.678 149.254h377.3c9.19 0 16.59 7.2 16.59 16z'/%3E%3C/svg%3E") !important;
}

.slick-prev:hover, .slick-next:hover {
    transform: scale(1.2) translate(0, -45%);
}   


   
   	
   
/* ==========================================================================
   Other Variables + Overrides
   ========================================================================== */
   
.text-center {
	text-align: center;
}

.py-60 {
	padding-top:60px;
	padding-bottom:60px;
}

.px-50 {
	padding-left:50px;
	padding-right:50px;
}

.px-80 {
	padding-left:80px;
	padding-right:80px;
}


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

/* ==========================================================================
   Responsive classes
   ========================================================================== */


@media only screen and (max-width: 768px) {
	
	/* Header */
	.header-cont {
		display: flex;
		justify-content: space-between;
	}	
	
	.header-main {
	    justify-content: flex-end;
	}

	.header-links {

	}
	
	.nav-main {
		display: none;
	}
	.mobile-menu {
		display: block;
	}
	
	.nav-header-links li:not(.mobile-menu) {
		display: none;
	}
	
	.header-logo {
		max-width: 85px;
	}
	
	.header-bar {
	    width: calc(100% + 87px);
	    margin-left: -87px;
	    text-align: right;
	    padding-right:15px;
	}
	
	/* Header */
	.slide-inner {
		height: 40vh;
		min-height: 200px;
	}
	
		.slide-inner > span {
			font-size: 2rem;
		}
		
	/* Base Structure */
	.max-width-wrap {
		width: 90%;
	}
	
	.px-80 {
		padding-right:20px;
		padding-left:20px;
	}
	
	/* Home intro */
	
	.home-intro {
		padding:6%;
	}
	
	/* Column CTAS Stack*/
	.column-ctas {
		flex-direction: column;
		align-items: center;
	}
	
		.column-cta {
			width: 90%;
			margin-bottom:25px;
		}
		
	/* Facilities */
	
	.facilities-cont {
		display: flex;
		flex-direction: column;
	}
	
		.facilities-media {
			width: 90%;
		}
		
	.facilities-media .slick-next {
		    right: -5px !important;
	}
	
		.facilities-media .slick-prev {
			    left: -13px !important;
			    z-index: 1;
		}
	
		.facility-slide:after {
		    height: 80%;
		 }
		 
		 .facility-slide-caption {
		    font-size: 2rem;
		}
	
	.facilities-content {
		margin:0;
		padding:40px;
	}
	
		
		.fui-row {
			display: block !important;
		}
	
	
	
}


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



/* ==========================================================================
   Print styles.
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }
    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}

/*CMS Admin Bar*/
.admin-bar {
	width: 100%;
	position: fixed;
	bottom:0;
	left: 0;
	padding: 0;
	background: #333f4d;
	z-index: 999;
}

	.admin-bar ul {
		width: 100%;
		padding:0;
		margin: 0 auto;
		font-size: .9em;
		text-align: center;
	}

		.admin-bar ul li {
			display: inline-block;
			float: none;
			clear: none;
			width: auto;
			padding:0;
		}

		.admin-bar ul li a {
			color: #d7d9db;
			display: block;
			float: none;
			padding: 10px 20px;
		}
		
		.admin-bar ul li a:hover {
			background: rgba(255, 255, 255, 0.05);
			text-decoration: none;
			color: #fff;
		}
		
	.devmode {
		width: 100%;
	    height: 3px;
	    background: url('../cpresources/759cdfeb/images/dev-mode.svg') repeat-x 15px 0;
	}
	
	.dev {
		padding: 10px 20px;
		color: #fdd50b
	}



