@charset "utf-8";
/* CSS Document */

/* CSS Style Explanations */
/* -row is used to specify site width
   -wrap is used to specify full browser width

*/

/* ====================
   Body
==================== */
body, html {  font-family: 'Raleway', sans-serif; font-size: 17px; line-height: 1.1em; color: #666666; margin: 0 !important; background-color: #ffffff; font-weight:400; letter-spacing:.5px}
.grid-container {max-width: 1600px; margin:0 auto;}
a {color:#283eac}
a:hover {color:#ff040e}
p {font-size:16px;}

/* ====================
   Headings
==================== */
h1, h2, h3, h4, h5, h6 {font-family: 'Raleway', serif; color:#181818; line-height:1.05; margin:0 0 18px 0; font-weight:bold}
h1 {font-size:3rem;}
h2 {font-size:2.5rem;}
.home h2 {line-height:1.2; font-size:1.65rem;}
.default h2 {font-size:1.7rem; color:#666666}
.default h3 {font-size:1.3rem; color:#666666; font-weight:normal; text-transform:uppercase}
.default h4 
.home h3 {font-size:18px; text-transform:uppercase; letter-spacing:3px; font-weight:normal; line-height:1.2}
.subtitle {font-size:.8em}
.lineunder {position:relative; margin-bottom:40px }
.lineunder:after {content:' '; position: absolute; display:block; width: 100px; border:2px solid #283eac; left: 50%; transform: translateX(-50%); bottom:-18px}

/** Homepage Headings **/
.home h1 {font-size:87px !important; font-weight:300 !important; color:#ff040e !important;}
.landing .button {background-color:#ff040e; background-image:none;}
.landing .button:hover {background-color:#ff040e; background-image:none;}
.learn-more-info h2 {text-transform:initial; letter-spacing:0px; color:#283eac;}
.learn-more-info .button {background-color:#283eac; background-image:none;}
.learn-more-info .button:hover {background-color:#283eac; background-image:none;}
.programs-list h3 {color:#ff040e; font-weight:600; font-size:36px;}
.programs-list .button {background-color:#283eac; background-image:none; padding: 10px 17px 10px;}
.programs-list .button:hover {background-color:#ff040e; background-image:none;}
.home .programs-list img {display:none !important;}
.events-row h2 {letter-spacing:0px; color:#e5bc16;}
.schedule-tours-container h2 {letter-spacing:0px; color:#ffffff; font-family:Umbrella, Raleway, Arial; font-weight:lighter !important; letter-spacing:0px; text-transform:capitalize; font-size:45px; position:absolute; bottom:150px; left:calc(50% - 700px); margin:15px; width:262px;}
.schedule-info h3 {letter-spacing:0px; font-size:27px;}
.schedule-info .button {background-color:#ff040e; background-image:none;}
.schedule-info .button:hover {background-color:#283eac; background-image:none;}

/* ====================
   Buttons
==================== */
button, .button, .button a, button a, a.button {font-family:Umbrella, Raleway, Arial; font-weight:lighter; font-size:28px; background-color:#283eac; text-transform:capitalize; line-height:1; padding:18px 35px 18px; color:#ffffff; margin-top:15px; letter-spacing:1px; border-radius:100px;}
.button:focus, .button:hover, .button:focus a {background-color: #ff040e;}

.medium.button {padding: 10px 17px 10px;}
form .button {font-size:23px; padding:8px 13px 8px;}

/* ===================
Header
==================== */
header {border-top:9px solid #ff040e; padding-top:20px}
.utility-menu-div {padding:25px 0 7px 0;} 
.primary-menu-div {padding:7px 0 25px;} 
.home .header-photo {background-position: center center ; background-repeat: no-repeat; min-height:600px; }
.default .header-photo {background-position: center center ; background-repeat: no-repeat; min-height:300px; }
.header-content {position:absolute; top:230px; min-width:40%; max-width:900px; background:rgba(255,255,255,.7); padding:30px 50px }
.default .header-content h1 {font-family:Raleway; letter-spacing:3px; text-transform:uppercase}
.script-header {font-family:Umbrella !important; font-weight:normal; color:#f7941d;}
.subheader-intro hr {margin: auto; width:50%; border-style:dotted; border-color:#f7941d;}

/* ====================
   HOME
==================== */
.landing {margin-top:30px; text-align:center; font-family:'Raleway', serif; font-size:30px; background:url('/_assets/img/hero-image.jpg') no-repeat center center; background-size:cover; font-weight:bold; color:#181818; padding:30px 22%; text-transform:uppercase; line-height:1.1; height: calc(90vh - 155px); min-height:500px; background-color:#f7941d;}
.landing p {line-height:1.1; }
.landing .cell {background:url('/_assets/img/hero-image.jpg') no-repeat center center; }
.landing ul {margin:30px 0}
.landing .quote-author {font-family:Raleway; font-weight:normal; letter-spacing:3px; font-size:18px;  }
.home-banner-row .grid-x {height: calc(90vh - 190px); min-height:380px; justify-content:center;}

/* Learn More */
.learn-more-container img {position:absolute; bottom:-72px;}

/* Our Programs */
.our-programs-container {background-color:#2fc9c7; color:#ffffff;}
.our-programs-container h2 {color:#ffffff; font-size:48px; text-transform:uppercase;}
.programs-list .cell:not(:last-child) {border-right:1px solid #ffffff;}

/* Events Row */
.events-row {background-color:#283eac;}
.events-row .cell:nth-child(2) {background-color:#4959cc;}
.events-row p {color:#ffffff;}

/* Schedule a Tour with Us */
.schedule-tours-container {background-color:#f7941d; height:660px; background-image:url("/_assets/img/bubble-bg.png"); background-repeat:no-repeat; background-position:center; background-size:contain;}
/*.schedule-tours-container img {left:0; right:0; top:0; bottom:0; position:absolute; margin-left:auto; margin-right:auto;} --- 1st option for image */
/* background-image:url("/_assets/img/bubble-bg.png"); background-repeat:no-repeat; background-position:center; background-size:contain; --- 2nd option for image */

.schedule-info { position: absolute; top: 50%; left: 50%; text-align: left; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width:380px;}

.background-cover {background-size:cover; background-position:center}
.overlay {position: absolute;top: 0;left: 0;right: 0;bottom: 0;}
.relative {position: relative;}

/* ===================
Pages
==================== */
.default.main-section .content-wrap {margin:20px 20px 40px}
.default.main-section .right-col form {background:#efefef; padding:45px; margin:0 0 40px}
/* =======================
Menus
======================= */
/* Main Menu */
.main-menu a {width:100%}
/*.main-menu .submenu a:hover {background:rgba(0,0,0,.03)}*/

/* DROPDOWN */
/* Arrow after menu item */
.dropdown.menu > li.is-dropdown-submenu-parent > a::after {height: .5em; width: .5em; border-top-width:.15em; border-top-style:solid; border-left-style:solid; border-left-width:.15em; border-left-color:#283eac; border-top-color:#283eac; border-right-style:solid; border-right-width:0;transform: rotate(-135deg); top:.5em; right: 0.55em;}
.dropdown.menu>li.is-dropdown-submenu-parent>a:hover {color:#ff040e; border-left-color:#ff040e; border-top-color:#ff040e;}
.dropdown.menu>li.is-dropdown-submenu-parent>a:hover::after {color:#ff040e; border-left-color:#ff040e; border-top-color:#ff040e;}

/* Menu - Dropdown slide up */
.dropdown.menu > li > ul.is-dropdown-submenu { margin-top:10px;  transform: translateY(30px); display:block; visibility: hidden; opacity:0; transition: all 0.2s ease 0s; }
.dropdown.menu > li > ul.is-dropdown-submenu.js-dropdown-active {transform: translateY(0); opacity:100; visibility: visible;}

/* Padding & Spacing & Width */
.dropdown.menu.align-right .is-dropdown-submenu.first-sub {right:auto; left:-12px;}
.dropdown.menu > li.opens-right > .is-dropdown-submenu {padding:8px}
.dropdown.menu a {padding:4px 10px; font-family:'Raleway'; color:#283eac; font-weight:bold; text-transform: uppercase}
.dropdown.menu a:hover {color:#ff040e; }
.main-menu .dropdown.menu ul a {padding: .4rem 1rem; text-transform:capitalize}
.utility-menu .dropdown.menu a {font-size: 22px; font-weight: normal; font-family:Umbrella, Raleway, Arial; text-transform:capitalize; padding:6px 11px}
.utility-menu .dropdown.menu li {border:2px solid #283eac; margin:0 3px; border-radius:3px}
.utility-menu .dropdown.menu li:hover {border-color:#ff040e}
.is-dropdown-submenu {min-width: 230px;}

/* DEFAULT - Pagetop Subnav */
.pagetop-subnav {padding:40px 0 40px 0}
.pagetop-subnav .main-menu {position:relative; z-index:0}
.pagetop-subnav .main-menu::after {
	content: ' ';
	width: 100%;
	height: 1px;
	background-color: #ddd;
	position: absolute;
	top: 50%;
	z-index: -1;
}
.pagetop-subnav div ul li {background:#283eac; padding:8px 14px; margin:0 3px 3px 3px}
.pagetop-subnav div ul li a {color:#ffffff; padding:0; text-transform:uppercase; font-size:14px; letter-spacing:2px; font-weight:bold}
.pagetop-subnav div ul li a:hover {color:#bad3f1}

/* Menu small 
.small-menu {padding:30px 0 0 20px;}
.small-menu li {border-bottom:1px solid #dddddd}
.small-menu li a {text-transform:uppercase; font-weight:bold;}
*/

/* SMALL MENU */
.off-canvas {background: var(--shade-color);}
.small_menu a {color:var(--lt-color);}
.small_menu button {background-color:transparent; padding: 0 33px 25px;}
.small_menu .submenu-toggle:after {border-color: #283eac transparent transparent;}
.small_menu .is-accordion-submenu .is-submenu-item {margin-left:0; background: #dedede;}
.small_menu .is-accordion-submenu li:last-of-type {border-bottom:0px solid transparent !important;}
.small_menu .accordion-menu .nested.is-accordion-submenu {margin-left:0 !important;}

/* =======================
Preventing FUOC
======================== */
.hide-on-load{
  display:none;
}
/* =======================
Small Screens
======================== */
@media only screen and (max-width: 1024px) {
    .application-button {background-color:#ff040e; color:#ffffff !important;}
    .schedule-info p {font-weight:bold; color:black;}
    .schedule-tours-container {background-image: none;}
    .schedule-tours-container.relative {position:unset !important;}
    .schedule-tours-container {padding:30px !important;}
    .schedule-tours-container h2, .schedule-info {position:unset !important; margin: 0 !important; margin-bottom:20px !important; transform: unset !important; width:100%;}
    .border-right, .programs-list .cell {border-right: 0 solid transparent !important;}
    .home h1 {font-size: 56px !important;}
	.header-content {position:relative; top:auto; text-align:center}
	.header-photo {width:100vw}
	.pagetop-subnav .main-menu::after {	background-color: transparent;}
	.pagetop-subnav {padding: 20px 0 30px 0;}
}
