/*

Lantum Stylesheet - Created by Crucible Creative
https://cruciblecreative.co.uk

Designed for compatibility with IE11

*/

/*


Blue - #1F3678
light blue - #DCF8FF

*/

html {
    font-family: proxima-nova, sans-serif;
    font-size: 10px;
}

body {
    font-family: proxima-nova, sans-serif;
    font-size: 1.6rem;
    color: #03254E;
    line-height: 1.5em; /* 24px */
}
p span { line-height: 1.5em;}
.type-page {
    margin-top: 64px;
}
/* body .site {
    background: #f3f3f3;
} */

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    color: #03254E;
    line-height: 1.25;
}

h1, .h1 { 
    font-size: 4rem;
    font-weight: 800;
    font-family: proxima-nova, sans-serif;
    line-height: 1.25;
}

h2, .h2 {
    font-size: 36px;
    font-family: proxima-nova, sans-serif; 
    font-weight: 800;
    margin: 0.67em 0;
}

h3, .h3 {
    font-family: proxima-nova;
    font-size: 22px;	font-weight: 800;
}

h4, .h4 { font-size: 1.6rem; line-height: 2.4rem; }

a:focus, a:visited { color: #03254E; }

.bg-blue { background-color: #03254E; }
.bg-light-blue { background-color: #DCF8FF; }
.bg-sea-blue { background-color: #00A0D0; }
.bg-grey { background-color: #d8d8d8; }
.bg-pale-red { background-color: #FF5B64; }
.bg-white { background-color: white;}
.blue { color: #03254E; }
.light-blue { color: #DCF8FF;}
.faded-blue { color: #8192A6; }
.sea-blue { color: #00A0D0; }
.white { color: white; }
.pale-red { color: #FF5B64; }

.bold { font-weight: 600; }

.box-shadow{ box-shadow: 2px 2px 10px 1px rgba(187,193,197,0.3);}

.lantum-button, .lantum-button-red {
    display: block; text-decoration: none; font-family: proxima-nova, sans-serif; font-weight: 600; cursor: pointer;
}
.lantum-button, .lantum-button:visited {  transition: 0.2s ease; color: white; background-color:#00A0D0; min-width: 163px; max-width: 280px; text-align: center; height: 43px; padding: 10px 19px 12px 19px; border-radius: 4px; }
.lantum-button:hover {text-decoration: none; color: white;}
.lantum-button.button-center, .lantum-button-red.button-center { margin-left: auto; margin-right: auto; }

.lantum-button-red, .lantum-button-red:visited {
    color: #FF5B64;
    background-color: transparent;
}
.lantum-button-red:after {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f30b"; margin-left: 8px;
}

.lantum-button-wrapper {
    margin: 3rem 0;
}

.margin-center {margin-left: auto;
    margin-right: auto; }

.outer-container, .inner-container {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}
.outer-container { max-width: 1440px; }
.inner-container { max-width: 1230px; padding-left: 15px; padding-right: 15px; }

/* header styles */

.lantum-desktop-header {  height: 64px; }
.hamburger-menu i { font-size: 24px; }
.hamburger-menu-inner { display: none; position: absolute;
}

/* header menu */
.page-template-page-of-modules header#masthead {
    position: fixed;
    width: 100%; z-index: 999;
}
.lantum-desktop-navigation ul {
    display: flex;
    align-items: center;
}
.lantum-desktop-navigation ul li {
    margin-right: 35px;
}
.lantum-desktop-navigation ul li a {
    font-weight: bold;
    text-align: center;
    color: #ffffff;
    text-transform: uppercase; font-size: 1.4rem;     text-decoration: none;
}
.lantum-desktop-navigation ul li.menu-sign-up a {
    color: #03254E;
    background: white;
    padding: 8px 26px;
    border-radius: 4px;
}

.sign-up-org { display: none; }

/* professionals/clinicians */
/* .page-id-535 .sign-up-clinicians, .home .sign-up-clinicians, .page-id-597 .sign-up-clinicians, .page-id-815 .sign-up-clinicians  { display: block;}
*/
/* hide clinicians on certain pages */
.page-id-531 .sign-up-clinicians, .page-id-553 .sign-up-clinicians { display: none;}
 .page-id-531 .sign-up-org, .page-id-553 .sign-up-org  { display: block;}


/* mobile menu */

.hamburger.hamburger-trigger {
     color: white; 
}
.hamburger-trigger {
    cursor: pointer;
}

.hamburger-trigger i {
    font-size: 2.6rem;
}


.lantum-mobile-menu {
    position: fixed;
    width: 100%;
    background: white;
    z-index: 99999;
    height: 100%;
    top: 0;
    left: 100%;
    padding: 0 15px;
    transition: all 0.3s ease;
}
.admin-bar .lantum-mobile-menu {
    top: 46px;
}

.lantum-mobile-menu.active {
    left: 0;
}

.mobile-menu-top {
    height: 64px;
}
.mobile-menu-inner {  padding-top: 24px; }
.mobile-menu-inner .menu li { text-align: right;}
.mobile-menu-inner .menu a {
    font-weight: bold;
    text-align: right;
    color: #03254e;
    text-transform: uppercase;
    font-size: 2rem;
    text-decoration: none;
    line-height: 3;
}

/* 404 shenanigans */

.error404 div#primary {
    background: #03254e;
}

.row.fourohfour_row {
    padding-top: 50px;
    padding-bottom: 50px;
    color: white;
}
.row.fourohfour_row > div > * { color: white !important; }
.error404 .module-contact {
    background: white;
}



/* footer styles */

footer#colophon {  color: white; padding: 40px 0; }

ul.menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

#footer-menu {
    columns: 2;
}
#footer-menu li a {
    color: white;
}


/* home styles */

.home-header {
    min-height: 712px;
    display: flex;
}

.home-hero-container {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    flex-direction: column;
}

.home-header-image {
    z-index: 2;
    position: absolute;
    height: 100%;
    width: calc(100% - 240px);
    right: 0;
    background-position: top right;
    background-repeat: no-repeat;
    background-size: cover;
    max-height: 712px;
}

.home-hero-header-block {
    padding: 43px 53px 43px 120px;
    max-width: 60%;
    margin-top: 73px;
    z-index: 5;
}

.home-header h1 { margin-bottom: 24px;}
.home-header h4 { margin-bottom: 32px; max-width: 475px; }

.header-logo-gallery {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    max-width: 668px;
    background: white;
    padding: 64px 102px 32px 94px;
    position: absolute;
    left: 18%;
    margin-top: -30px;
    z-index: 3;
}

/* general page styles */

.page-template-page-general { background-color: #03254E; }
.general-wrapper {
    margin-top: 356px;
    background: #F0F5F5;
}
.general-content {
    margin-top: -178px;
    background: #fff;
    padding: 80px;
    display: inline-block; /* for some reason, this allows the margin-top to work */
    width: 100%;
}

.page-template-page-general h2 {
    font-size: 3rem;
}


/* end of general page styles */

.header-logo-gallery img {
    max-height: 95px;
    margin-right: 48px;
}

@media (max-width: 1440px) {
    .home-hero-header-block {
        padding-left: 30px;
    }
}

@media (max-width: 993px) {
    .lantum-desktop-navigation ul li {
        margin-right: 20px;
    }
    .home-header {
        min-height: 300px;
        flex-wrap: wrap;
        position: relative;
    }
    .home-header-image {
        width: 100%;
        height: calc(56.25vw);
        position: relative;
        min-height: 250px;
    }
    .home-hero-container {
        max-width: 767px;
        margin-left: auto;
        margin-right: auto;
    }
   /* .home-hero-header-block, .logo-gallery {margin-left: 15px; margin-right: 15px;} */
    .home-hero-header-block {
        max-width: 100%;
        margin-top: -120px;
    }
    .header-logo-gallery {
        margin-top: 0;
        max-width: 100%;
        left: 0;
        width: 100%;
        position: relative;
    }
}

@media (max-width: 550px) {
    .home-hero-header-block {
        margin-top: -30px;
    }
    .home-hero-header-block, .header-logo-gallery { 
        padding: 24px 20px 32px;
    }
    .header-logo-gallery img { margin-bottom: 20px; margin-right: 0;}
}



/* general media queries */

@media (max-width: 768px) {
    .module-wrapper {
        padding: 50px 0;
    }
    .footer-column:first-child {
        margin-bottom: 35px;
    }
    ul#footer-menu li {
        padding-top: 12px;
    }
    footer#colophon {
        padding: 40px 0 75px;
    }
}

@media (max-width: 767px) {
   h1, .h1 { font-size: 2.8rem; }
    h2, .h2 {  font-size: 3rem; }

}
