/* ----------------IMPORT GOOGLE FONTS ------------------- */
@import url("https://fonts.googleapis.com/css?family=Montserrat:400,500,700,900");
@import url('https://fonts.googleapis.com/css?family=Playfair+Display:400,500,600,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:300,400,700&display=swap');
/* ----------------Text Fonts ------------------- */
body {
    font-size: 14px;
    line-height: 25px;
    font-weight: 400;
    font-family: "Montserrat", sans-serif;
    color: #838383;
    font-style: normal;
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    color: #18181c;
    line-height: 1.3;
}

h1, .h1 {
    font-size: 48px;
    margin-bottom: 25px;
}

h2, .h2 {
    font-size: 42px;
    margin-bottom: 25px;
}

h3, .h3 {
    font-size: 36px;
    margin-bottom: 25px;
}

h4, .h4 {
    font-size: 24px;
    margin-bottom: 15px;
}

h5, .h5 {
    font-size: 18px;
    margin-bottom: 15px;
}

h6, .h6 {
    font-size: 14px;
    margin-bottom: 10px;
}

p {
    font-size: 14px;
    font-family: "Montserrat", sans-serif;
    margin: 0 0 15px;
    line-height: 24px;
    font-weight: 400;
    color: #838383;
}
p:last-child {
    margin-bottom: 0;
}

a {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    font-weight: 400;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

a:hover,
a:focus,
a:active {
    text-decoration: none;
    outline: none;
    color: #838383;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}

ul.nosyely_list {
    padding: 0;
    margin: 0;
    list-style: none;
}

.section_title {
    position: relative;
    margin-bottom: 25px;
    font-family: "Playfair Display", serif;
    font-weight:200;
}
.section_title .title {
    text-transform: none;
    padding: 10px 0;
    font-weight:200;
    font-size: 36px;
    color:#212121;
}
.section_title .sub-title{
    font-family: "Roboto Condensed",Helvetica, Arial, sans-serif;
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: 1px;
    font-size: 19px;
    color:#4f8398;
}
section .s-div {
    width: 1px;
    height:70px;
    position: absolute;
    background: #84ceeb;
    left: 49.8%;
    top: 0;
}
section .s-div:before{
    content:"";
    width: 14px;
    height:14px;
    border-radius:50%;

    position: absolute;
    background: #fff;
    border:2px solid #84ceeb;
    left: -7px;
    bottom:0;
}
section { position:relative; }

.slide-title {
    font-size:3rem;
    position: relative;
    font-family: "Playfair Display", serif;
    font-weight:200;
    color:#32677c;
    margin-bottom:0;
}
.slick-slide{outline:none;}
#questions-slide {list-style-type:none; margin:0;padding:0;}
#questions-slide li {font-size:2rem; font-weight:200; font-family: "Roboto Condensed", sans-serif; line-height:2.2rem; display:block; color:#2b5363; outline:none; width:100%; padding:50px;}
#questions-slide .slick-prev, #questions-slide .slick-next{ top:-18%;}
#questions-slide .slick-slide { opacity:0.2; max-width:600px; width:auto; text-align:center; padding:50px 50px 20px;  -webkit-transition: all ease-in-out 0.4s;  transition: all ease-in-out 0.4s; }
#questions-slide .slick-active { opacity:1;}
#questions-slide .slick-prev{left: 7%; width:50px; height:50px; z-index:1;}
#questions-slide .slick-next{right: 7%;width:50px; height:50px; z-index:1;}
#questions-slide li a{font-weight:200;}


.slick-prev:before {
    border: solid #a9d2e2;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    content:" ";
    font-size:50px;
    height:100%;
    width:100%;
}

.slick-next:before {
    border: solid #a9d2e2;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    content:" ";
    font-size:50px;
    height:100%;
    width:100%;
}

.section-title {
    font-size:2.4rem;
    position: relative;
    font-family: "Playfair Display", serif;
    font-weight:200;
    color:#fff;
    margin-bottom:0;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #fff;
    opacity: 0.8; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #fff;
    opacity: 0.8; /* Firefox */

}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #fff;
    opacity: 0.8; /* Firefox */

}
input.stylized-input { border:none; background:none; padding:20px 20px 5px; color:#fff; outline:none; border-bottom:1px solid #a4d6f1; text-align:center; width:100%; font-size:16px;}

.p-lead{ font-size:22px; font-weight:200; font-family:Montserrat, Helvetica, Arial, sans-serif;}
body:not(#index) .slider-content .banner-lead { font-size:0.8rem;}
.banner-title { font-size:4.5rem; font-family:"Playfair Display", serif; font-weight:200; color:#465156;}
.banner-lead { font-size:0.9rem;}
header { padding:15px 0;}
section { padding:50px 0;}
#nav {
    list-style-type:none; margin:0; padding:0;
}
#nav li { display:inline-block; }
#nav li a { padding:10px; font-size:13px; text-transform:uppercase; position:relative; display:inline-block; }
#nav li a:hover { color:#f87433; }
#nav li.active a {color:#f87433; font-weight:600; border-bottom:2px solid #f87433; }


.loader {
    position: fixed;
    top: 0;
    bottom: 0;
    width: 100%;
    background-color: #e9fbff;
    z-index: 999999;
}
.loader .loader-inner {
    position: absolute;
    background: transparent url('../../img/loader_inner.png') no-repeat center center;
    background-size:contain;
    width: 70px;
    height: 70px;
    left: calc(50% - 35px);
    top: calc(50% - 35px);
    border-right: 0;
    border-top-color: transparent;
    -webkit-animation: loader-inner 2s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
    animation: loader-inner 2s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
}
.loader .loader-outer {
    position: absolute;
    background: transparent url('../../img/loader_outer.png') no-repeat center center;
    background-size:contain;
    width: 80px;
    height: 80px;
    left: calc(50% - 40px);
    top: calc(50% - 40px);
    border-right: 0;
    border-top-color: transparent;
    -webkit-animation: loader-outer 5s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
    animation: loader-outer 5s cubic-bezier(0.42, 0.61, 0.58, 0.41) infinite;
}

@-webkit-keyframes loader-outer {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes loader-outer {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@-webkit-keyframes loader-inner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(-360deg);
        transform: rotate(-360deg);
    }
}
@keyframes loader-inner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(-360deg);
        transform: rotate(-360deg);
    }
}
#footer-nav {
    list-style-type:none; margin:0; padding:0;
}
#footer-nav li { display:inline-block; }
#footer-nav li a { padding:10px; font-size:13px; text-transform:uppercase; }
.row.key-elements{}
.row.key-elements .key-item{
    background-color: #fff;
    border: 3px solid #4597d2 !important;
    margin: 4px;
    padding:0;
    height:300px;
}
.row.key-elements .key-item span{
    padding: 21px 21px 0;
    display: block;
    text-align: left;
    font-size:22px;
    font-family: "Roboto Condensed", sans-serif;
    font-weight:200;
    color:#4597d2;
}
.row.key-elements .key-item img{
    width: 100%;
    display: block;
    height: 160px;
    bottom:0;
    position:absolute;
}

.zoe-headshot{ border-radius:50%;overflow:hidden;display:block; width:200px; height:200px;margin:20px auto 50px;  }
.zoe-headshot img{ max-width:100%;}

blockquote.testimonial {
    padding:40px;
}
blockquote.testimonial .blockquote-footer{font-size:13px;font-weight:600;padding-top:20px;}
blockquote.testimonial > p{ font-family:Roboto, Helvetica,Arial,sans-serif; font-weight:200;font-size:1.1rem; line-height:1.6rem;}
#contactForm #error{display:none;}
#contactForm #success{display:none;}
#newsletterForm #error{display:none;}
#newsletterForm #success{display:none;}
.form-control:not(.stylized-input){
    border:none;
    padding:30px;
    border-bottom:1px dashed #b7c6cc;
    background:none;
    border-radius:0;
    outline:none;
}
select.form-control:not(.stylized-input){padding:15px 25px; height:70px;}
input:focus, textarea:focus, select:focus{
    outline: none;
}
label.error{
    display: block;
    margin-bottom: .5rem;
    text-align: left;
    padding-left: 30px;
    font-size: 10px;
    text-transform: uppercase;
    color: #f87433;
}
#newsletterForm label.error{
    color: #fff;
    text-align: center;
    padding-left: 0;
}


#social ul { list-style-type:none; margin:0; padding:0;}
#social ul li { display:inline-block; padding:5px 10px; font-size:21px; color:#fff;}
#social ul li a:hover { color:#0f6674;}


.blog-post-container{padding:20px; }
.blog-img { border:3px solid #eee;}
.blog-post .blog-title a { display:block;font-size:1.3rem; font-family:"Playfair Display", serif; font-weight:200; color:#465156; line-height:1.6rem;}
.blog-post .blog-blurb a p { font-size:0.8rem; line-height:1.3rem;}
.blog-post .blog-title  { display:block; padding:20px 0; font-size:1.3rem; font-family:"Playfair Display", serif; font-weight:200; color:#465156; line-height:1.6rem;}
.blog-post .blog-blurb p { font-size:0.8rem; line-height:1.3rem;}
.blog-content p.lead{font-family:"Playfair Display", serif; font-size:1.8rem; font-weight:200; line-height:2.2rem;padding-bottom:20px;color:#4d9bc5;}
.blog-content p {font-size:1rem;font-family:Roboto, Helvetica, Arial, sans-serif; font-weight:200;  }
/* ---------------- MEDIA QUERIES ------------------- */

@media (max-width: 767px) {
    img { width:auto; max-width:100%;}
}
@media (max-width: 575px) {
    .slider-content { background: rgba(255,255,255,0.9)!important;  }
    .banner-title{color:#465156 !important;}
    .banner-lead{color:#838383 !important;}
}
@media (max-width: 991px) {
    #nav li { text-align:right;}
    #nav li a { padding:5px;}

}
@media (min-width: 992px) {

    #nav li.active a {color:#f87433; font-weight:600; border-bottom:none!important; }
    #nav li.active a:after{
        content:"";position:absolute; height:10px; width:20px; top:0; left:35%;; background: transparent url('../../img/icon_flake.png') no-repeat center center; background-size:contain;   -webkit-transition: all 0.5s ease-in-out; opacity:0;
        transition-property: all;
        transition-duration: .5s;
        transition-timing-function: cubic-bezier(0, 1, 0.5, 1); animation: flake-pop 300ms forwards;
    }
    #nav li a:hover:after { content:"";position:absolute; height:10px; width:20px; top:0; left:35%;; background: transparent url('../../img/icon_flake.png') no-repeat center center; background-size:contain;   -webkit-transition: all 0.5s ease-in-out; opacity:0;
        transition-property: all;
        transition-duration: .5s;
        transition-timing-function: cubic-bezier(0, 1, 0.5, 1); animation: flake-pop 300ms forwards;
    }
    @keyframes flake-pop {
        100% {
            top:-20px;
            opacity:1;
            height:20px;
        }
    }}

