body { background: #ebeff3; font: normal 16px/1.2 'OpenSans_Regular'; color: #4D4D4D; }
h1, h2, h3 {  font-family: 'OpenSans_SemiBold'; color: #31465c; font-weight: normal; line-height: 1.15; }
a { color: #333640; cursor: pointer; text-decoration: none; }

ul { margin: 0; padding: 0; list-style: none; }
p { margin: 2.25em 0; line-height: 2.05; }
main:after { content: ''; display: block; clear: both; }
input, textarea, select { background: #fff; font-family: 'OpenSans_Regular'; color: #005189; }
abbr[title] {border: none;}

button:focus,
a:focus,
input:focus,
select:focus,
textarea:focus { outline: none !important; }
textarea { resize: vertical; }

img { height: auto; display: inherit; }

.wrap { margin: 0 auto; padding: 0 3em; max-width: 1440px; }
#dl-menu { display: none; }
.alignleft { margin-right: 2.5em; margin-bottom: 2em; max-width: 45%; }
.alignright { margin-left: 2.5em; margin-bottom: 2em; max-width: 45%; }
.site-header .wrap-in { display: flex; justify-content: space-between; align-items: center; }
.input,
.orderby { -webkit-appearance: none; -moz-appearance: none; appearance: none; box-shadow: none; border: 1px solid #1e5dab; padding: .5em 1em .5em; border-radius: 0; letter-spacing: .01em; background: #fff; font-size: .8em; display: inline-block; width: 100%; }
.input:focus { border: 1px solid rgba(0,81,137,.45); }

.button { font-size: 0.9375em; display: inline-block; padding: .6em 1em; border: 2px solid #31465c; color: #31465c; border-radius: 4px; text-align: center; transition: all 300ms ease; font-family: 'OpenSans_SemiBold'; cursor: pointer; }
.button:hover { background-color: #31465c; color: #fff; }

.input-rows { display: flex; margin-left: -1.2em; }
.input-row {  padding-left: 1.2em; margin-bottom: 1.1em; }
.input-row.in-row-2 { width: 50%; }
.input-row.in-row-1 { width: 100%; }

.site-header { background-color: #fff; position: fixed; top: 0; left: 0; right: 0; z-index: 1000; }
.site-header .wrap { max-width: 792px; }
.site-header .menu { display: flex; justify-content: center; }
.site-header .menu a { color: #5d758c; font-family: 'OpenSans_SemiBold'; padding: 1em 1em; display: inline-block; transition: all 300ms ease; }
.site-header .menu a:hover { background-color: #f2f2f2; }
.site-header .menu .home-nav { position: relative; }
.site-header .menu .home-nav a { padding: 1em .8em 1em 2em; display: inline-block;}
.site-header .menu .home-nav:before { font-family: 'FontAwesome'; content: "\f015"; position: absolute; left: .7em; top: .97em; }
.site-header .home-nav:before a.active { color: #fff; }
.site-header a.active { background-color: #5d758c; color: #fff; }

/* MOBILE NAVIGATION */
#navToggle { display: none; }
#navToggle { position: fixed; z-index: 100; top: .7em; right: 1.5em; width: 62px;/* height: 62px; */height: 58px; padding: 10px; border-radius: 50%; cursor: pointer; transition: all ease 0.3s; }
#navToggle.expanded:hover { border-color: #fff; }
#navToggle.expanded { border-color: #aaa; }
#navToggle span { position: absolute; top: 13px; display: block; width: 37px; height: 4px; border: 0px solid #606162; background-color: #606162; border-radius: 1px; transition:  top 0.2s 0.2s, transform 0.2s, background 0.2s, opacity 0s 0.2s; }
#navToggle:hover span { background-color: #d89642; }
#navToggle.expanded:hover span { transform: scale(0.9); background-color: #d89642; }
#navToggle.expanded span { background-color: #fff; }
#navToggle:hover span:nth-of-type(1) { transform: translateY(-2px); }
#navToggle.expanded span:nth-of-type(1) { top: 29px; transform: rotate(45deg); transition: top 0.2s, transform 0.2s 0.2s, background 0.2s; }
#navToggle span:nth-of-type(2) { /* top: 29px; */ top: 27px; }
#navToggle.expanded span:nth-of-type(2) { opacity: 0; transition: opacity 0.2s; }
#navToggle span:nth-of-type(3) { top: auto; bottom: 13px; transition: bottom 0.2s 0.2s, transform 0.2s, background 0.2s; }
#navToggle:hover span:nth-of-type(3) { transform: translateY(2px); }
#navToggle.expanded span:nth-of-type(3) {/* bottom: 29px;*/bottom: 25px; transform: rotate(-45deg); transition: bottom 0.2s, transform 0.2s 0.2s, background 0.2s; }
#mobileNav { position: fixed; top: -100%; display: block; width: 100%; height: 100%; background-color: #373737; margin: 0; transition: all ease-in-out 300ms; max-width: 16em; right: 0; z-index: 10; }
#mobileNav.expanded { display: block; top: 0; bottom: 0; }
.site-header #mobileNav .menu { display: block; margin-top: 4em; } 
.site-header #mobileNav .menu a { display: block; color: #fff; } 
.site-header #mobileNav .menu a:hover { color: #31465c; }
.site-header #mobileNav .menu .home-nav::before { color: #fff; } 

/* Banner */
.block-banner { margin-top: 3.2em; padding: 14em 0 16em; }
.block-banner .wrap { max-width: 1000px; }
.block-banner .banner-flex { display: flex; margin-left: 8.5em; }
.block-banner .banner-flex .img { width: 38%; }
.block-banner .banner-title { font-family: 'OpenSans_Light'; font-size: 4.875em; margin: 0 0 .3em; line-height: 1; }
.block-banner .buttons { margin: 1em 0 2em; }
.block-banner .buttons ul { margin-left: -1em; display: flex; }
.block-banner .buttons li { padding-left: 1em; }
.block-banner .banner-title b { color: #E96467; }
.block-banner .content-text { padding-left: 2em; }
.block-banner .resource { display: flex; }
.block-banner .resource .box { display: flex; align-items: center; } 
.block-banner .resource .box:first-child { margin-right: 2em; }
.block-banner .resource span { margin-right: 1em; color: #8E9AA7; }

/* Testimonials */
.block-testimonials { position: relative; }
.block-testimonials .slick-slide { padding: 10em 0 17em; }
.block-testimonials .img img { display: inline-block;}
.block-testimonials .img { text-align: center; margin-bottom: 2em; }
.block-testimonials blockquote { margin: 0; text-align: center; font-size: 1.6875em; font-family: 'OpenSans_Light'; line-height: 1.259em; }
.block-testimonials .buttons { text-align: center; position: absolute; bottom: 5em; left: 0; right: 0; }
.block-testimonials .button { border: 2px solid #fff; color: #fff; padding: .6em 1.5em; }
.slick-dots { display: flex; justify-content: center; margin: 0; padding: 1em 0; list-style-type: none; position: absolute; bottom: 1.5em; left: 0; right: 0; } 
.slick-dots li { margin: 0 0.25rem; }
.slick-dots button { display: block; width: 1.2em; height: 1.2em; padding: 0; border: 1px solid #fff; border-radius: 100%; background-color: transparent; text-indent: -9999px; cursor: pointer; }
.slick-dots li.slick-active button { background-color: #fff; }

.block-testimonials .slick-arrow { position: absolute; z-index: 100; top: 40%; background: transparent; border: none; cursor: pointer; padding: 2em; }
.block-testimonials .slick-arrow .fa { color: #fff; opacity: .6; font-size: 5em; transition: all 300ms ease; }
.block-testimonials .slick-arrow:hover .fa { opacity: 1; }
.block-testimonials .prev-arrow { left: 7em; }
.block-testimonials .next-arrow { right: 7em; }

/* About List */
.block-about-list { padding: 9em 0 6.5em; }
.block-about-list .wrap { max-width: 1156px; }
.block-about-list .intro { text-align: center; padding-bottom: 3em; max-width: 50em; margin: 0 auto; }
.block-about-list .intro h2 { margin: 0 0 .4em; color: #3a4b54; font-size: 1.75em; }
.block-about-list .intro p { margin: 0; color: #5c8187; font-size: 1.3125em; line-height: 1.2em; }
.block-about-list .list { display: flex; flex-wrap: wrap; margin-left: -3em; }
.block-about-list .list li { width: 20%; text-align: center; padding-left: 3em; margin-bottom: 2.5em; }
.block-about-list .list .img { padding-bottom: 1em; }
.block-about-list .list li img { display: inline-block; }
.block-about-list .list h3 { margin: 0; }

/* List */
.block-list { background-color: #dde3e8; padding: 8em 0 6em; }
.block-list .wrap { max-width: 1251px; }
.block-list .list { display: flex; justify-content: space-between; flex-wrap: wrap; }
.block-list .list li { width: 48%; text-align: center; margin-bottom: 2em; }
.block-list .list li h3 { margin: 0 0 .4em; font-size: 1.75em; color: #3a4b54; }
.block-list .list li p { margin: 0; font-size: 1.05em; color: #8e9aa7; line-height: 1.375; }
.block-list .list .text { margin-bottom: 1.8em; }
.block-list .list li .img { margin-bottom: .2em; }
.block-list .list li img { display: inline-block; max-width: 15em; }

/* Resources */
.block-resources { padding: 8em 0; background-color: #bac8ce; }
.block-resources .wrap { text-align: center; max-width: 840px; }
.block-resources h2 { font-size: 1.75em; color: #3a4b54; margin: 0 0 .3em; }
.block-resources .text { margin-bottom: 2em; }
.block-resources .text p { margin: 0; font-size: 1.3125em; line-height: 1.381em; color: #5c8187; }

/* Footer */
.site-footer { background-color: #263440; padding: 20em 0 18em; text-align: center; }
.site-footer .block-footer-copy { color: #798f94; font-family: 'OpenSans_SemiBold'; margin-bottom: 1em; }
.site-footer .footer-intro h2 { margin: 0 0 .5em; color: #81becc; font-size: 1.75em; }
.site-footer .footer-intro .text {text-align: center; margin-bottom: 2em; }
.site-footer .footer-intro p { margin: 0; color: #cfe1e5; font-size: 1.3125em; line-height: 1.2em; font-family: 'OpenSans_Light'; }
.site-footer .text a { color: #fff; font-family: 'OpenSans_Regular'; }
.site-footer .footer-logo img { display: inline-block; }
.site-footer .buttons { margin: 1em 0 2em; }
.site-footer .button { color: #fff; border: 2px solid #fff; transition: all 300ms ease; }
.site-footer .button:hover {  }
.site-footer .privacy-policy { color: #fff; margin: 1em 0 1em; }
.site-footer .privacy-policy a { color: #fff; transition: all 300ms ease; }
.site-footer .privacy-policy a:hover { color: #798f94; }

/* Popup */
.mfp-container { padding: 0 5em; }
.white-popup { position: relative; background: #ebeff3; padding: 3em 3em 4em; width: auto; max-width: 900px; margin: 4em auto; box-shadow: 0 0px 0px 8px #0003; border-radius: 10px; }
.white-popup .button { padding: .7em 3.5em; }

.about-list-popup { padding: 1.875em; max-width: 300px; }
.about-list-popup img { max-width: 180px; margin: 0 auto; }
.about-list-popup .text-wrap { text-align: center; }
.about-list-popup .text-wrap h3 { margin: 1.2em 0 1em; }
.about-list-popup .text-wrap p { margin: 0; color: #4d4d4d; line-height: 1.375; }
.about-list-popup #close-popup { margin-top: 2em; }

/* popup global */
.popup-global { padding: 1.875em; }
.popup-global h2 { font-size: 1.4em; color: #222; }
.popup-global h5 { color: #4d4d4d; font-size: 1.02em; margin: 1em 0; }
.popup-global p { margin: 0.625em 0; color: #4D4D4D; line-height: 1.375em; }
.popup-global .buttons { margin-top: 2em; padding-top: 2em; border-top: 1px solid #ccc; text-align: right; }
.popup-global a { color: #8E9AA7; text-decoration: underline; }
.popup-global ul li { list-style-type: disc !important; margin-left: 20px; margin-top: 5px; margin-bottom: 10px; font-size: 0.875em; }
.contact-form-footer { max-width: 600px; padding: 1.875em; }
.contact-form-footer h2 { margin: 0 0 1.5em; }
.contact-form-footer .input { background-color: #fff; border: none; padding: 1em 1em; color: #222; border: 1px solid #fff; position: relative; }
.contact-form-footer .input-row { position: relative; }
.contact-form-footer .input-row:after { font-family: 'FontAwesome'; position: absolute;right: 1em; top: .7em; color: #b2b2b2; }
.contact-form-footer .input-row-name:after { content: "\f007"; }
.contact-form-footer .input-row-email:after { content: "\f0e0"; }
.contact-form-footer .input-row-message:after { content: "\f040"; }
.contact-form-footer textarea { height: 110px; }
.contact-form-footer .buttons { margin-top: 1em; padding-top: 2em; border-top: 1px solid #ccc; display: flex; flex-direction: row-reverse; }
.contact-form-footer .button { margin-left: 1em; background-color: transparent; }
.contact-form-footer .button:hover { background-color: #31465c; }
.contact-form-footer .form p { margin: 0; }

.popup-global #table-caffeine-content td { padding: 10px; border: 2px solid #4D4D4D; border-collapse: collapse; }
.popup-global .table-heading { background: #4D4D4D; color: #fff; }
.popup-global #table-caffeine-content { width: 100%; border: 2px solid #4D4D4D; color: #4D4D4D; margin: 30px 0; border-collapse: collapse; }

.popup-resource a { position: relative; }
.popup-resource a:after { font-family: 'FontAwesome'; content: "\f14c"; display: inline-block; }

/* CONTACT FORM 7 */
.wpcf7-not-valid-tip { display: none; }
.wpcf7-form.invalid .wpcf7-not-valid { border: 1px solid #ff0000; }
.wpcf7-response-output.wpcf7-display-none.wpcf7-validation-errors { display: none !important; }
.wpcf7-response-output.wpcf7-display-none.wpcf7-mail-sent-ok { margin-top: 1em; color: #70cde2; } 
.screen-reader-response { display: none; }
.ajax-loader { display: none; }
.ajax-loader.is-active { display: block; }
.ajax-loader::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: url('images/loader.gif') no-repeat center center #0008; z-index: 999888; }

@media all and (max-width: 1800px){
    .block-testimonials .prev-arrow { left: 3em; }
    .block-testimonials .next-arrow { right: 3em; }
}

@media all and (max-width: 1000px){
    .block-testimonials .prev-arrow { left: 1em; }
    .block-testimonials .next-arrow { right: 1em; }
    .block-banner .banner-title { font-size: 4.5em; }
    .block-banner .banner-flex { margin-left: 0; }
    .block-banner .wrap { max-width: 749px; }
    .block-banner .banner-flex .img { width: 53%; }
    .block-banner { padding: 8em 0 8em; }
    .block-banner .buttons ul { flex-wrap: wrap; }
    .block-banner .buttons ul li { margin-bottom: 1em; }
    .block-banner .buttons { margin: 1em 0 1em; }
    .block-banner .resource { flex-direction: column; }
    .block-banner .resource .box:first-child { margin-right: 0; margin-bottom: 1.5em; }

}

@media all and (max-width: 900px){
    .block-about-list .list li { width: 33.33%; }
}

@media all and (max-width: 800px){
    .block-testimonials .slick-slide { padding: 10em 0 12em; }
    .block-list .list li { width: 46%; }
    .block-list .list li { width: 100%; }
    .site-footer { padding: 6em 0 4em; }
    .mfp-container { padding: 0 2em; }
    .block-banner .banner-title { font-size: 3.6em; }
    .block-banner .banner-flex .img { width: 43%; }
    .block-list .wrap { max-width: 550px; }
    
    .nav-holder { display: none; }
    #navToggle { display: block; }
    .site-header { min-height: 5em; }
}

@media all and (max-width: 700px){
    .block-testimonials blockquote { font-size: 1.3em; }
    .block-about-list .list { margin-left: -2em; }
    .block-about-list .list li { padding-left: 2em; }
    .block-about-list .list h3 { font-size: .98em; }
    .block-banner .banner-title { font-size: 3.2em; }
    .block-banner .banner-flex .img { width: 59%; }
    .block-banner .wrap { max-width: 618px; }
}

@media all and (max-width: 600px){
    .wrap { padding: 0 1.5em; }
    .block-testimonials .img img { max-width: 14em; }
    .block-testimonials .slick-arrow { top: 31%; }
    .block-about-list .list li { width: 50%; }
    .block-banner .banner-title { font-size: 2.8em; }
    .block-banner .banner-flex .img { width: 65%; }
    .block-banner .wrap { max-width: 519px; }
    .block-banner .resource img { max-width: 7em; }
}

@media all and (max-width: 500px){
    .block-testimonials blockquote { font-size: 1.2em; }
    .block-testimonials .prev-arrow { left: 0em; }
    .block-testimonials .next-arrow { right: 0em; }
    .mfp-container { padding: 0 1em; }
    .contact-form-footer .buttons { flex-direction: column-reverse; }
    .contact-form-footer .button { margin: 0 0 1em; }
}

@media all and (max-width: 480px){
    .block-banner .content-text { font-size: 86%; }
}
