/*----------------------------------- 
        Titles
------------------------------------*/
.section-title{
    font-weight:300;
    font-size:2em;
    line-height:1;
    letter-spacing:-0.0105em;
}

.sub-msg{
    font-weight:100;
    line-height:1.45;
}

.small-sub .sub-msg{
    max-width:650px;
    margin-left:auto;
    margin-right:auto;
}

@media (min-width: 1106px) {
    .section-title{
        font-size:3em;
        margin-bottom:0.5em;
        line-height:1.1;
    }

    .sub-msg{
        font-size:1.15em;
        opacity:0.8;
    }
}


/*----------------------------------- 
        Setting Title And Color Effects
------------------------------------*/
.text-regular{
    color: #91a3ad !important;
}

.text-regular .section-title{
    text-shadow:none !important;
    color:#243137 !important;
    font-weight:100;
}

.heading-white .section-title
{ 
    color:#fff;
}

/*----------------------------------- 
        Generic Page / Blocks
------------------------------------*/
.page-content{
    padding-top:3em;
    padding-bottom:3em;
    margin:0 auto;
 }

@media screen and (min-width: 763px){
    .page-content{
        padding-top:6em;
        padding-bottom:6em;

    }
}

 .page-content img{
    max-width:100%;
    height:auto;
}

.page-content hr{
    background-color: #e7e7e7;
    border: 0 none;
    clear: both;
    height: 1px;
    margin-bottom:24px;
}

figure.pic{
    margin:2em 0;
}

.pic img{
    border-radius:3px;
}

@media only screen and (min-width: 763px) {
    figure.pic{
        width:110%;
        margin-left:-5%;
        text-align:center;
    }

    .page-content hr{
        margin-bottom:68px;
    }
}


/*----------------------------------- 
        Intros
------------------------------------*/
.intro{
    max-width:720px;
    padding-bottom:25px;
    margin:0 auto 35px;
    text-align:center;
    position:relative;
}

.intro.tleft{
    text-align:left;
}

.intro.intro-lrg{
    max-width:800px;
}

.intro h4{
    color:#b0bec5;
    text-transform:uppercase;
    margin-bottom:1em;
    font-size:0.9em;
}

.intro h2{
    margin-bottom:0.5em;
}

.intro.heading-white h2{
    color:#fff;
}

.intro p:last-of-type{
    margin-bottom:0;
}

.intro-icon{
    margin-bottom:2em !important;
}

@media screen and (min-width: 763px){
    .intro p{
        font-size:1.25em;
    }

    .intro.intro-reg-txt p{
        font-size:1em;
    }
}


/*----------------------------------- 
        Layout - Cards
------------------------------------*/
.card-row{
    position:relative;
}

.card-row > div{
    margin-bottom:4em;
}

.card-item{
    background: #fff;
    text-align:center;
    padding-bottom:20px !important;
    border-radius:9px;
    box-shadow:8px 8px 45px 5px rgba(0,0,0,.08);
}



a.card-item, .card-item, .bg-dark .card-item{
    display:block;
    color:#676767;
}

a.card-item:hover{
 box-shadow:8px 8px 45px 5px rgba(0,0,0,.18);
 text-decoration: none;
}

.card-item h4{
    font-weight:600;
    color:#1a1a1a;
}

a.card-item:hover h4{
    color:#0078bd;
}

.card-img{
    display:block;
    position:relative;
    height:200px;
    height:25vh;
    height:20vh;
    width:100%;
    overflow:hidden;
    background:#222;
    border-top-left-radius:9px;
    border-top-right-radius:9px;
}

.card-img div{
    background-position:center top;
    background-repeat:no-repeat;
    background-size:cover;
    height:100%;
    width:100%;
    position:absolute;
    top:0;
    left:0;
    z-index:0;
    -webkit-transition:transform 0.8s cubic-bezier(0, 1, 0.5, 1), opacity 0.3s cubic-bezier(0, 1, 0.5, 1);
    -webkit-transition:opacity 0.3s cubic-bezier(0, 1, 0.5, 1), -webkit-transform 0.8s cubic-bezier(0, 1, 0.5, 1);
    transition:opacity 0.3s cubic-bezier(0, 1, 0.5, 1), -webkit-transform 0.8s cubic-bezier(0, 1, 0.5, 1);
    transition:transform 0.8s cubic-bezier(0, 1, 0.5, 1), opacity 0.3s cubic-bezier(0, 1, 0.5, 1);
    transition:transform 0.8s cubic-bezier(0, 1, 0.5, 1), opacity 0.3s cubic-bezier(0, 1, 0.5, 1), -webkit-transform 0.8s cubic-bezier(0, 1, 0.5, 1);
    -webkit-transform:scale(1.2);
    -ms-transform:scale(1.2);
    transform:scale(1.2);
    opacity:0.9;
}

.card-img:hover>div, a.card-item:hover .card-img>div{
    -webkit-transform:scale(1);
    -ms-transform:scale(1);
    transform:scale(1);
    opacity:1;
}

.card-item .card-img-icon{
    margin-bottom:0;
    padding-top:35px;
    padding-bottom:0;
}

.card-item h4{
    padding:20px 20px 7px;
    font-size:1.45em;
    font-size:1.1em;
}

.card-item .card-lrg-heading h4{
    font-size:1.45em;
}

.card-item p{
    padding:0 20px 20px;
}

.card-item p:last-of-type{
    padding-bottom:0;
    margin-bottom:0;
}

.card-item ul{
    padding:0 20px 20px;
}

@media (min-width: 763px) {
    .card-item{
        font-size:0.8em;
        font-size:1em;
    }
}

@media (min-width: 1105px) {
    .card-item{
        font-size:0.8;
        font-size:1em;
    }
}

.card-wrap .card-item{
    height:100%;
}


/*----------------------------------- 
        Layout - Two Cards
------------------------------------*/
.twocards-wrap .card-item{
    border-radius:9px;
    box-shadow:0 6px 16px 0 rgba(0,0,0,0.6);
}

.twocards-wrap .card-label{
    display:block;
    padding:36px 20px 0;
    text-transform:uppercase;
    font-size:12px;
    font-weight:300;
    letter-spacing:4px;
    opacity:0.5;
    color:#222328;
}

.twocards-wrap .bg-dark{
    color:#8c8f94;
}

.twocards-wrap .bg-dark .card-label{
    color:#fff;
}

.twocards-wrap .card-item h2{
    padding:20px 20px 7px;
    font-size:1.85em;
    margin-top:0.175em;
    margin-bottom:1em;
}

.twocards-wrap .card-item h2{
    padding-top:36px;
}

.twocards-wrap .card-item h2.has-label{
    padding-top:7px;
}


/*----------------------------------- 
        Layout - Columned
------------------------------------*/
.columned-wrap .col-item{
    margin-bottom:2em;
}

.columned-wrap .flex-row{
    font-size:0.9em;
}

.columned-wrap h4{
    text-transform:uppercase;
    font-size:1em;
    margin-bottom:1em;
    letter-spacing:0.01325em;
    font-weight:400;
}

.columned-wrap .col-lrg-txt .flex-row{
    font-size:1em;
}


/*----------------------------------- 
        Layout - FAQ/Accordion
------------------------------------*/
.accordion-list{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
}

.accordion-list li{
    border-bottom:2px solid #e9edf5;
    padding:1.365em 0 0.875em;
    margin-bottom:0 !important;
}

.accordion-list li:hover{
    background:#fbfcfd;
}

.accordion-list li h4{
    margin-bottom:1em;
    font-size:1.25em;
    font-weight:300;
    line-height:1.5;
}

.accordion-list li h4 a{
    color:#101820;
    display:block;
    position:relative;
    padding-right:5em;
    font-weight:600;
}

.accordion-list li:hover a{
    color:#00bcd5;
}

.accordion-list li h4 a i{
    color:#101820;
    display:block;
    font-size:1.175em;
    position:absolute;
    right:1em;
    top:0;
}

.accordion-list li .accordion-answer{
    padding-right:5em;
    display:none;
}

.accordion-list li.expanded .accordion-answer{
    display:block;
}

.accordion-list li.expanded:hover h4 a{
    color:#101820;
}




/*----------------------------------- 
        Span Breaks
------------------------------------*/
.span-breaks span{
    display: block;
}

/*----------------------------------- 
        Json Data
------------------------------------*/
.jsondata{
    font-size: 12px;
}
