/* Globals
=====================================================================*/
html, body {
  margin:0;
  padding:0;
  height: 100%;
  width: 100%;
  overflow-x: hidden;
}
body {
  background: #fff;
  font-family: baskerville-display-pt,serif;
  font-weight: 400;
  font-style: normal;
  font-size: 20px;
  text-transform: none;
  color: #000000;
  line-height: 1.75em;
}

/* Alert
=====================================================================*/
.alert, .alert-success, .alert-danger {
  color:#fff;
  padding: 2em;
  margin: 0 0 2em 0;
  font-weight: bold;
}
.alert-danger {
  background: #e10600;
}
.alert-success {
  background: #0d91ca;
}
.alert h3, .alert-success h3 {
  color:#fff;
}

/* Utilities
=====================================================================*/
.red-bg {background:#e10600;}
.blue-bg {background:#001446;}
.lt-blue-bg {background:#9fd0f0;}
.green-bg {background:#8dc640;}

.red {color:#DB395D;}
.lt-red {color:#F04E37;}
.blue {color:#001446;}
.green {color:#8dc640;}
.black {color:#000000;}
.white {color:#ffffff;}
.uppercase {text-transform: uppercase;}


/* Typography
=====================================================================*/
a.anchor {
  display: block;
  position: relative;
  top: -155px;
  visibility: hidden;
}
a, a:hover {color:#1e396a;text-decoration: none;}
p {
  font-weight: 300;
  margin: 2em 0;
  line-height: 1.8em;
}
p:first-of-type {margin-top: 0;}
@media screen and (max-width: 63.9375em) {
  p:first-of-type {margin-top: .5em;}
}
h1, h2, h3, h4 {
  font-family: cantarell, sans-serif;
  font-weight: 500;
  font-style: normal;
  margin:0;
  padding:0;
}
h1 {
  font-size: 2em;
  line-height: 1.5em;
  font-weight: 700;
  color: #211919;
  text-transform: uppercase;
}
h2 {
  font-size: 2.75em;
  color: #000;
  line-height: 1em;
  padding: 1em 0;
  color: #211919;
  letter-spacing: -.01em;
}
h3 {
  font-weight: 700;
  font-size: 1.2em;
  line-height: 1.4em;
  text-transform: uppercase;
  color:#001446;
}
h4 {
  font-weight: 400;
  font-size: 12px;
  letter-spacing: .06em;
  line-height: 1.4em;
  text-transform: uppercase;
}


/* Header
=====================================================================*/
header {
  padding: 2em 2em;
  background: #fff;
  z-index:9999;
  border-bottom: 4px solid #215e9e;
}
#header-mobile {
  padding:0 0 1em 0;
  border-bottom: 4px solid #215e9e;
}
header .logo img,
#header-mobile .logo {
  width: 18vw;
}
@media screen and (max-width: 39.9375em) {
  header .logo img,
  #header-mobile .logo {
    width:35vw;
  }
}
@supports (-webkit-touch-callout: none) {
  #header-mobile .logo {
    width:45vw;
  }
}
@media screen and (min-width: 39.9376em) and (max-width: 63.9375em) {
  #header-mobile .logo {
    width:20vw;
    min-width:200px;
  }
  #header-mobile {
    padding:0 0 1.75em 0;
  }
}

/* Show and hide the navgation based on size */

@media screen and (min-width: 0px) and (max-width: 1024px) {
  #header-mobile { display: block; }  /* show it on small screens */
  header {display: none;}
}
@media screen and (min-width: 1025px) {
  #header-mobile { display: none; }  /* show it on small screens */
  header {display: block;}
}

/* Footer
=====================================================================*/
.footer-box {
  background: #1e396a;
  color: #fff;
  font-family: baskerville-poster-pt,serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.5em;
  line-height: 1.25em;
  padding:1em 0;
}
@media screen and (max-width: 63.9375em) {
  .footer-box  {padding:1em 1em;}
}
footer {
  background: #fff;
  color: #000;
  padding: 0em 2em;
  line-height: 1.5em;
}

/* Top Banner
=====================================================================*/
.top-banner {
  padding: 2em 2em 1em 2em;
}
@media screen and (max-width: 63.9375em) {
  .top-banner {
    padding: 2em 1.5em 0em 1.5em;
  }
}

/* Interior Pages
=====================================================================*/
section,
.section .special-end-section {
  padding:2em 4em;
}
section:last-of-type:not(:first-of-type) { padding-bottom: 5em;}

.interior-page ul {
  padding: 0 0 1em 0;
}


/* Large Navigation
=====================================================================*/
header .header-tagline {
  color:#1e396a;
  font-family: baskerville-poster-pt,serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.4em;
}
.right-nav ul .menu-end {
  color:#211919;
  background: #cbdfe0;
  white-space:nowrap;
}
.right-nav ul .menu-end:hover {
  color:#211919;
}
.right-nav ul  {
  /* padding-bottom: 1em; */
}
.right-nav ul li {
  display: inline-block;
  padding-left: .5em;
}
.right-nav ul li a {
  font-family: baskerville-display-pt,serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.1em;
  /* font-size: calc((100% + 0.25vw) * 1); */
  color: #1e396a;
  margin:0;
  padding: 2em 0 0 3em;
  cursor: pointer;
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
  .right-nav ul li a {
    /* font-size: .85em; */
  }
}
@media screen and (min-width: 1201px) {
  .right-nav ul li a {
    /* font-size: 1.4em; */
  }
}
.right-nav ul li a:hover {
  text-decoration: none;
  cursor: pointer;
  color: #1abfd5;
}
.right-nav ul li a.active {
  color: #1abfd5;
}


/* Media Queries
=====================================================================*/

@media only screen
and (min-device-width : 375px)
and (max-device-width : 667px) {
  /* body {font-size:.75em;} */

}

/* Small only */
@media screen and (max-width: 39.9375em) {
  /* globals */
  .wrapper { margin: 0; }
  section, footer { padding:1em 1em; }
}

/* Medium only */
@media screen and (min-width: 40em) and (max-width: 63.9375em) {


}


/* Overlay Navigation & Top Bar
=====================================================================*/
#trigger-overlay {
   width: 100%;
   height: 125px;
   text-align: center;
   cursor: pointer;
   position: relative;
   top: 0;
   left: 0;
   border: 0;
   outline: 0;
   z-index: 9999;
   color: #211919;
   /*background: rgba(0,0,0,0.7);*/
   background: rgba(255,255,255,0.95);
   transition: all 0.2s cubic-bezier(0.7, 0.01, 0.3, 1);
   font: 50px Heiti, 'Lucida Grande', Arial;
   font-weight: bold;
}
#trigger-overlay.active {
  background: rgba(0,0,0,0.85);
}
#logo {
  position: absolute;
  top:25px;
  left:15px;
  z-index:9999;
  padding:0 0 0 10px;
  color:#;
  font-size:1em;
}
#nav-icon4 {
  width: 50px;
  height: 45px;
  position: absolute;
  top:60px;
  right:10px;
  transform: rotate(0deg);
  transition: .5s ease-in-out;
  cursor: pointer;
}
#nav-icon4 span {
  display: block;
  position: absolute;
  height: 5px;
  width: 80%;
  background: #1e396a;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: .25s ease-in-out;
}
#nav-icon4.active span, #nav-icon4.home span {
  background: #1e396a;
}
 #nav-icon4.open span {
   background: #1e396a;
}
#nav-icon4 {
}
#nav-icon4 span:nth-child(1) {
  top: 0px;
  transform-origin: left center;
}
#nav-icon4 span:nth-child(2) {
  top: 10px;
  transform-origin: left center;
}
#nav-icon4 span:nth-child(3) {
  top: 20px;
  transform-origin: left center;
}
#nav-icon4.open span:nth-child(1) {
  transform: rotate(45deg);
  top: -1px;
  left: 8px;
}
#nav-icon4.open span:nth-child(2) {
  width: 0%;
  opacity: 0;
}
#nav-icon4.open span:nth-child(3) {
  transform: rotate(-45deg);
  top: 27px;
  left: 8px;
}

/* Overlay style */
.overlay {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 50px;
	left: 0;
  /* background: rgba(30,57,106,0.95); */
  background: rgba(255,255,255,0.98);
	z-index: 5999;
}

/* Overlay closing cross */
.overlay .overlay-close {
	width: 80px;
	height: 80px;
	position: absolute;
	right: 20px;
	top: 25px;
	overflow: hidden;
	border: none;
	background: url(../img/global/cross.png) no-repeat center center;
	text-indent: 200%;
	color: transparent;
	outline: none;
	z-index: 100;
}
/* Menu style */
.overlay nav {
	text-align: center;
	position: relative;
	top: 50%;
	height: 60%;
	font-size: 2em;
	transform: translateY(-50%);
}
.overlay ul {
	list-style: none;
	padding: 0;
	margin: 0 auto;
	display: inline-block;
	height: 100%;
  width:100%;
	position: relative;
}
.overlay ul li {
	display: block;
	height: 12%;
	height: calc(100% / 5);
	min-height: 54px;
}
.overlay ul li a {
	font-weight: 300;
	display: block;
  color:#1e396a;
	-webkit-transition: color 0.2s;
  text-decoration: none !important;
	transition: color 0.2s;
}
.overlay ul li a:hover,
.overlay ul li a:focus {
  color: #1abfd5;  
  background:#;
  text-decoration: none;
}
/* Effects */
.overlay-hugeinc {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.5s, visibility 0s 0.5s;
}
.overlay-hugeinc.open {
	opacity: 1;
	visibility: visible;
	transition: opacity 0.5s;
}
.overlay-hugeinc nav {
	perspective: 1200px;
}
.overlay-hugeinc nav ul {
	opacity: 0.4;
	transform: translateY(-25%) rotateX(35deg);
	transition: transform 0.5s, opacity 0.5s;
}
.overlay-hugeinc.open nav ul {
	opacity: 1;
	transform: rotateX(0deg);
}
.overlay-hugeinc.close nav ul {
	transform: translateY(25%) rotateX(-35deg);
}