  /*==============+
| GLOBAL STYLES |
+==============*/
html,
body {
  width: 100%;
  height: 100%;
  font-family: 'Open Sans', sans-serif;
}

img {
  width: auto;
  max-width: 100%;
}

a {
  color: #003594;
}

/*========================+
| BOOTSTRAP CUSTOM STYLES |
+========================*/
.navbar {
  padding: .3rem 1rem;
  display: block;
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, .5);
  border: none;
  z-index: 999;
  padding: .25rem;
}

.navbar .top-nav .navbar-nav .nav-link {
  color: #FFFFFF;
}

@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}

.navbar-main .navbar-nav-expanded {
  padding: 30px;
  background: #FFFFFF;
}

@media (min-width: 768px) {
  .navbar-main .navbar-nav-expanded {
    float: right;
  }
}

.btn {
  font-family: 'Oswald', sans-serif;
  text-transform: uppercase;
  padding: 0.75rem 2.2em 0.75em 1rem;
  border: 2px solid;
}

.btn-outline-secondary {
  color: #444444;
  border-color: #444444;
}

.dropdown-divider {
  border-top: 1px solid #001A70;
}

#main-nav {
  position: absolute;
  top: 66px;
  left: 0;
  width: 100%;
}

@media (min-width: 576px) {
  #main-nav {
    width: 300px;
    top: 80px;
    left: auto;
    right: 15px;
  }
}

#main-nav .navbar-nav .nav-link {
  -webkit-transition: all .3s;
  transition: all .3s;
}

#main-nav .navbar-nav .nav-link:hover {
  background: #CCCCCC;
  padding-left: 12px;
}

#main-nav-list {
  position: relative;
  width: 100%;
}

@media (min-width: 576px) {
  .card-columns {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
  }
}

@media (min-width: 768px) {
  .card-columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
  }
}

/*======================+
| BOOTSTRAP CARD STYLES |
+======================*/
.container-2-col {
  padding-left: 0;
  padding-right: 0;
}

@media only screen and (min-width: 576px) {
  .container-2-col {
    padding-left: 0;
    padding-right: 15px;
  }
}

.card-image-col,
.card-text-col {
  margin-left: 0;
  margin-right: 0;
  border: 0;
}

.card-image-col .card-body {
  padding-top: 50px;
}

@media only screen and (min-width: 576px) {
  .card-image-col .card-body {
    padding-top: 4rem;
  }
}

@media only screen and (min-width: 576px) {
  .card-text-col .card-body {
    padding: 4.125rem;
  }
}

@media only screen and (min-width: 768px) {
  .card-text-col-content {
    width: 300px;
  }
}

.card-image-col-gradient {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 100px;
  z-index: 0;
  background: none;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#cc7a02+0,ffffff+100&0.85+0,0+100 */
  background: -moz-linear-gradient(top, rgba(204, 122, 2, 0.85) 0%, rgba(255, 255, 255, 0) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(204, 122, 2, 0.85) 0%, rgba(255, 255, 255, 0) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(204, 122, 2, 0.85) 0%, rgba(255, 255, 255, 0) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d9cc7a02', endColorstr='#00ffffff', GradientType=0);
  /* IE6-9 */
}

.card.hvr-shrink {
  display: none;
}

.card.hvr-shrink.display {
  display: inline-block;
}

/*================+
| MAIN NAVIGATION |
+================*/
.navbar-main {
  height: 66px;
}

@media only screen and (min-width: 576px) {
  .navbar-main {
    height: 86px;
    -webkit-transition: all .5s;
    transition: all .5s;
  }
}

.navbar-main.scrolled-nav {
  /* Update main navbar height on scroll */
  height: 66px;
  background: #001A70;
  border-bottom: 1px solid #FFFFFF;
}

.navbar-brand {
  width: 168px;
  z-index: 2;
}

@media only screen and (min-width: 576px) {
  .navbar-brand {
    width: 252px;
    -webkit-transition: width .5s;
    transition: width .5s;
  }
}

.scrolled-nav .navbar-brand {
  /* Update logo width on scroll */
  width: 168px;
}

.top-nav-container {
  position: absolute;
  top: 15px;
  left: 0;
  width: 100%;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.scrolled-nav .top-nav-container {
  /* Update top nav positioning on scroll */
  top: 5px;
}

.top-nav {
  position: relative;
  max-width: 700px;
  width: auto;
  margin: 0 auto;
  font-family: 'Oswald', sans-serif;
  font-weight: bold;
  font-size: 14px;
  text-transform: uppercase;
}

@media (min-width: 1200px) {
  .top-nav {
    font-size: 18px;
  }
}

.icon-bar {
  transition: all 0.2s;
  display: block;
  width: 33px;
  height: 3px;
  border-radius: 1px;
  margin-left: 2px;
  background-color: #FFFFFF;
}

.top-bar {
  transform: rotate(45deg);
  transform-origin: 10% 10%;
}

.middle-bar {
  opacity: 0;
  margin-top: 6px;
}

.bottom-bar {
  transform: rotate(-45deg);
  transform-origin: 10% 90%;
  margin-top: 6px;
}

.navbar-toggler.collapsed .top-bar {
  transform: rotate(0);
}

.navbar-toggler.collapsed .middle-bar {
  opacity: 1;
}

.navbar-toggler.collapsed .bottom-bar {
  transform: rotate(0);
}

.navbar-nav {
  margin: 0 auto;
}

/*==============+
| SUBNAVIGATION |
+==============*/
@media (min-width: 768px) {
  .subnav-container {
    padding: 10px 0;
    line-height: 1;
  }
}

.subnav-col {
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 768px) {
  .subnav-col {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.subnav-section {
  -webkit-transition: all .5s;
  transition: all .5s;
  border-bottom: 1px solid #FFFFFF;
}

.subnav-section.is-fixed {
  position: fixed;
  left: 0;
  top: 66px;
  width: 100%;
  z-index: 3;
  border-bottom: 1px solid #CCCCCC;
}

#subnav {
  font-size: 12pt;
  font-weight: bold;
  z-index: 3;
  width: 100%;
}

@media (min-width: 768px) {
  #subnav {
    position: absolute;
    padding-right: 30px;
  }
}

#subnav .nav-link {
  color: #001A70;
  -webkit-transition: all .3s;
  transition: all .3s;
}

#subnav .nav-link:focus,
#subnav .nav-link:hover,
#subnav .nav-link.active {
  color: #001A70;
  background: #CCCCCC;
}

#subnav .navbar-nav .nav-link:hover {
  background: #CCCCCC;
  padding-left: 12px;
}

#subnav .navbar-nav-expanded {
  padding: 30px;
  background: #F0F0F0;
}

.subnav-toggler {
  font-family: 'Oswald', sans-serif;
  font-size: 12pt;
  text-transform: uppercase;
  width: 100%;
  padding: 15px 0;
  border-radius: 0;
}

.subnav-toggler.collapsed:after {
  font-family: FontAwesome;
  content: "\f13a";
  margin: 0 5px;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.subnav-toggler:after {
  font-family: FontAwesome;
  content: "\f139";
  margin: 0 5px;
}

.subnav {
  font-size: 12pt;
  font-weight: bold;
  display: block;
  text-align: center;
}

@media only screen and (min-width: 576px) {
  .subnav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.subnav .nav-link {
  color: #001A70;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.subnav .nav-link:focus,
.subnav .nav-link:hover,
.subnav .nav-link.active {
  color: #001A70;
  background: #CCCCCC;
}

.has-top-padding {
  -webkit-animation: animate-margin-top 0.3s;
  -moz-animation: animate-margin-top 0.3s;
  animation: animate-margin-top 0.3s;
}

/*======+
| LINKS |
+=======*/
.text-decoration-underline {
  text-decoration: underline;
}

.text-decoration-underline:hover {
  text-decoration: none;
}

.text-decoration-none,
.text-decoration-none:hover {
  text-decoration: none;
}

.cursor-pointer:hover {
  cursor: pointer;
}

.link-text {
  font-family: 'Oswald', sans-serif;
  font-size: 12pt;
  font-weight: bold;
  color: #003594;
  text-transform: uppercase;
}

/*=======+
| FOOTER |
+========*/
footer a,
footer a:active,
footer a:visited {
  color: #ffffff;
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
  color: inherit;
}

footer h5 {
  font-family: 'Oswald', sans-serif;
  font-size: 10pt;
  font-weight: bold;
  color: #FFFFFF;
  text-transform: uppercase;
}

.footer-nav li {
  margin-bottom: 5px;
  line-height: 1.25;
}

@media (max-width: 575px) {
	.footer-logo {
		max-width: 160px;
	}
}

/*====================+
| BACKGROUND ELEMENTS |
+====================*/
/* For hero image/video backgrounds, image backgrounds with text overlays, etc. */
.bg-element-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
  line-height: 1;
  width: 100%;
  z-index: 2;
  padding: 5px 15px;
}

.bg-element-text-container {
  width: 90%;
  height: 90%;
  border: 3px solid #FFFFFF;
}

.bg-element-text-tagline {
  font-size: 20pt;
}

.bg-element-top-gradient {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 150px;
  z-index: 0;
  background: none;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,ffffff+100&0.75+0,0+100 */
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.75) 0%, rgba(255, 255, 255, 0) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.75) 0%, rgba(255, 255, 255, 0) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.75) 0%, rgba(255, 255, 255, 0) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#bf000000', endColorstr='#00ffffff', GradientType=0);
  /* IE6-9 */
}

.image-link-overlay:after {
  content: "";
  background: rgba(12, 25, 117, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.image-link-overlay:hover:after {
  background: rgba(12, 25, 117, 0.7);
}

.image-bg-overlay:after {
  content: "";
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.75) 0%, rgba(255, 255, 255, 0) 100%);
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.75) 0%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.75) 0%, rgba(255, 255, 255, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#bf000000', endColorstr='#00ffffff', GradientType=0);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /*z-index: 1;*/
  -webkit-transition: all .5s;
  transition: all .5s;
}

.video-play-button {
  font-size: 60px;
  color: #FFFFFF;
}

@media only screen and (min-width: 768px) {
  .video-play-button {
    font-size: 80pt;
  }
}

/*=====================+
| MISCELLANEOUS STYLES |
+=====================*/
#skip {
  z-index: 99999;
  position: absolute;
}

#skip a,
#skip a:hover,
#skip a:visited {
  position: absolute;
  left: 0px;
  top: -500px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  color: #ffffff;
}

#skip a:active,
#skip a:focus {
  position: static;
  width: auto;
  height: auto;
  color: #ffffff;
  background: #001A70;
  padding: 15px 30px;
}

.rounded-corners {
  border-radius: .25rem;
}

.border-none {
  border: none;
}

.width-auto {
  width: auto;
}

.width-100-percent {
  width: 100%;
}

.overlay {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background-color: rgba(0, 0, 0, 0.8);
}

.overlay.enabled {
  display: initial;
}

.scroll-to-top {
  /*width: 50px; 
	height: 50px;
    padding: 10px;*/
  line-height: 1;
  text-align: center;
  font-weight: bold;
  font-size: 48px;
  color: #A0A0A0;
  text-decoration: none;
  position: fixed;
  bottom: 50px;
  right: 40px;
  opacity: 0;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.scroll-to-top:hover {
  color: #989898;
}

.scroll-to-top.enabled {
  opacity: 1;
  z-index: 3;
}

.text-shadow {
  text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
}

.text-shadow-white {
  text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.5);
}

.box-shadow {
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5);
}

.z-index-1 {
  z-index: 1;
}

.blockquote-border {
  border-left: 4px solid #cc7a02;
}

.text-large {
  font-size: 20pt;
}

/*=======+
| COLORS |
+=======*/
.white {
  color: #ffffff;
}

.black {
  color: #000000;
}

.dark-blue {
  color: #001A70;
}

/*============+
| BACKGROUNDS |
+============*/
.bg-black {
  background: #000000;
}

.bg-white {
  background: #ffffff;
}

.bg-white-semi-transparent {
  background: rgba(255, 255, 255, 0.6);
}

.bg-csub-blue {
  background: #003594;
}

.bg-csub-gold {
  background: #cc7a02;
}

.bg-dark-blue {
  background: #001A70;
}

.bg-transparent {
  background: transparent;
}

.radial-gray-gradient {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f0f0f0+50,ffffff+100&1+0,0.75+50,1+100 */
  background: -moz-radial-gradient(center, ellipse cover, rgba(240, 240, 240, 1) 0%, rgba(240, 240, 240, 0.75) 50%, rgba(255, 255, 255, 1) 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover, rgba(240, 240, 240, 1) 0%, rgba(240, 240, 240, 0.75) 50%, rgba(255, 255, 255, 1) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center, rgba(240, 240, 240, 1) 0%, rgba(240, 240, 240, 0.75) 50%, rgba(255, 255, 255, 1) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#ffffff', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

/*========+
| MARGINS |
+========*/
.margin-top-15 {
  margin-top: 15px;
}

.margin-top-30 {
  margin-top: 30px;
}

.margin-bottom-0 {
  margin-bottom: 0;
}

.margin-bottom-5 {
  margin-bottom: 5px;
}

.margin-bottom-15 {
  margin-bottom: 15px;
}

.margin-bottom-30 {
  margin-bottom: 30px;
}

.margin-top-50 {
  margin-top: 50px;
}

.margin-bottom-50 {
  margin-bottom: 50px;
}

.margin-left-15 {
  margin-left: 15px;
}

.margin-right-15 {
  margin-right: 15px;
}

/*========+
| PADDING |
+========*/
.padding-15 {
  padding: 15px;
}

.padding-30 {
  padding: 30px;
}

.padding-top-5 {
  padding-top: 5px;
}

.padding-top-15 {
  padding-top: 15px;
}

.padding-top-20 {
  padding-top: 20px;
}

.padding-bottom-15 {
  padding-bottom: 15px;
}

.padding-top-bottom-15 {
  padding: 15px 0;
}

.padding-left-0 {
  padding-left: 0;
}

.padding-left-15 {
  padding-left: 15px;
}

.padding-left-1em {
  padding-left: 1em;
}

.padding-right-15 {
  padding-right: 15px;
}

.padding-top-30 {
  padding-top: 30px;
}

.padding-top-50 {
  padding-top: 50px;
}

.padding-bottom-30 {
  padding-bottom: 30px;
}

.padding-bottom-50 {
  padding-bottom: 50px;
}

/*=======+
| SEARCH |
+=======*/
.advance-links {
  visibility: hidden;
}

@media (max-width: 575px) {
  .advance-links {
    height: 100px;
  }
}

@media (min-width: 576px) {
  .advance-links {
    height: 60px;
  }
}

#searchButtonMain {
  color: #444444;
  border-color: #444444;
  background-color: transparent;
  background-image: none;
  font-family: 'Oswald', sans-serif;
  text-transform: uppercase;
  padding: 0.75rem 2.2em 0.75em 1rem;
  margin-left: 0;
  border: 2px solid;
  text-decoration: none;
  height: auto;
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: .1s;
  transition-duration: .1s;
}

#searchButtonMain:not(:disabled):not(.disabled).active,
#searchButtonMain:not(:disabled):not(.disabled):active,
.show>#searchButtonMain.dropdown-toggle,
#searchButtonMain:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

#searchButtonMain:before {
  content: "\f138";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: .1s;
  transition-duration: .1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out
}

#searchButtonMain:active:before,
#searchButtonMain:focus:before,
#searchButtonMain:hover:before {
  -webkit-transform: translateX(4px);
  transform: translateX(4px);
}

@media screen and (max-width: 500px) and (min-width: 320px) {
  .search-btn {
    margin-left: 0;
  }
}

.input-group>.custom-file,
.input-group>.custom-select,
.input-group>.form-control {
  margin: 5px 0;
}

.inputField,
.searchResultsDiv {
  margin-left: 0;
}

.inputField {
  padding-left: 0;
}

.search-results-for h2 {
  float: none;
}

.search-results-for span {
  float: none;
}

@media (min-width: 576px) {
  .main-section {
    -ms-flex: 0 0 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

.row-fluid,
.alert {
  width: 100%;
}