@import url('https://fonts.googleapis.com/css?family=Baloo+Chettan|Montserrat');
a,
b,
body,
div,
footer,
form,
h2,h3,h4,h5,h6,header,html,
i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,
table,tbody,td,th,thead,tr,tt,u,ul {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    font:inherit;
    vertical-align:baseline
}
p {
    padding: 10px 0;
    text-align: justify;
}
h1 {
    margin: 20px;
}
footer,header,hgroup,menu,nav,section{
    display:block
}
body{
    line-height:1
}
ol,ul{
    list-style:none
}

table{
    border-collapse:collapse;
    border-spacing:0
}

html{
    font-size:62.5%
}
body,html{
    margin-top:0!important
}
body{
    background: #fff;
    font-size:18px;
    font-size:1.8rem;
    font-family: 'Montserrat',sans-serif,Arial,serif;
    font-weight:400;
    line-height:2.4rem;
    -webkit-font-smoothing:antialiased;
    position: absolute;
    left: 0;
}
body:before{
    content:"";
    background:url(../images/shapes/background_top.svg) bottom no-repeat;
    background-size:cover;
    width:100%;
    height:498px;
    position:absolute;
    top:0;
    z-index:-1
}
button:hover {
    cursor: pointer;
}
a:hover i {
    transform: scale(1.2);
}

#header-logo {
    width: 40px;
    position: fixed;
    right: 0;
    margin: 6px 20px;
    z-index: 99999;
    /* filter: brightness(20); */
}

body.page-template-default:before,body.page-template-template-contact:before,body.request-a-demo-template:before,body.single-resources:before,body.sitedoctor-template-default:before,body.staff-index:before,body.unindexed-template-default:before{
    background:url(../images/shapes/background_top_white.svg) bottom no-repeat;
    background-size:cover
}
body.page-template-template-contact .content-wrapper--contact{
    padding-bottom:4rem
}
body.page-template-template-contact footer{
    margin-top:0;
    background-image:url(../images/shapes/background_bottom.svg)
}
body.home:before{
    height:698px
}
@media screen and (min-width:768px){
    body.home:before{
        height:690px
    }
}
@media screen and (min-width:992px){
    body.home:before{
        height:818px
    }
}
body.home .lead-content{
    height:634px
}
@media screen and (min-width:768px){
    body.home .lead-content{
        height:532px
    }
}
@media screen and (min-width:992px){
    body.home .lead-content{
        height:660px
    }
}
@media screen and (min-width:1100px){
    body.home .lead-content{
        height:651px
    }
}


a,a:link,a:visited{
    text-decoration:none;
    outline:0;
    font-size:18px;
    font-size:1.8rem
}
#wrapper{
    margin:0 auto;
    max-width:125rem;
    background:transparent;
    overflow-x:hidden;
    border-left:1px solid #000;
    border-right:1px solid #000
}
#wrapper:after{
    display:table;
    clear:both;
    content:""
}

#contact-form {
    max-width: 800px;
    margin: auto;
}
#contact-form label {
    width: 160px;
}
#contact-form input,
#contact-form textarea {
    width: 100%;
    padding: 10px;
    border-radius: 6px;
    border-width: 1px;
    border-style: solid;
    border-color: #aaa;
}
#contact-form input {
    height: 10px;
}
#contact-form textarea {
    height: 100px;
}

#contact-form td {
    padding: 10px;
    text-align: right;
    vertical-align: top;
}

#contact-form button {
    background: linear-gradient(45deg, #3f5586, #784662);
    border: 0;
    border-radius: 20px;
    height: 40px;
    width: 200px;
    color: #fff;
    margin: 20px;
}
.job-title {
    font-family: monospace;
    color: #784662;
    font-weight: bold;
    text-align: center;
}

.job-description {
    font-size: 12px;
}

.content-wrapper{
    margin:0 auto;
    overflow:hidden;
    position:relative;
    max-width:none;
    padding-left:10px;
    padding-right:10px
}
.contact-tile {
    max-width: 320px;
    text-align: center;
    display: inline-block;
    vertical-align: top;
    margin: 10px 40px;
}
.contact-tile h3 {
    font-size: 20px;
}
.contact-tile img {
    text-align: center;
    width: 320px;
    -webkit-transition: transform 0.1s;
    transition: transform 0.1s;
}

.contact-tile:hover img {
    transform: scale(1.1);
    -webkit-transition: transform 0.3s;
    transition: transform 0.3s;
}

.sub-title {
    color: #fff;
}

.contact-image-container {
    height: 360px;
    overflow: hidden;
}

.service-tile {
    display: inline-block;
    width: 300px;
    margin: 20px 40px 0 40px;
    vertical-align: top;
}
.service-tile h1 {
    color: #4c6a86;
}

.what-we-do {
    background-image:url(../images/shapes/curvy_top.svg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position-x: -40px;
}

.what-we-do-bottom {
    background-image:url(../images/shapes/curvy_bottom.svg);
    background-size:cover;
    background-repeat:no-repeat;
}

@media screen and (min-width:767px){
    .content-wrapper--spaced{
        padding-top:90px
    }
}
@media screen and (max-width:767px){
    .content-wrapper--benefits .container{
        padding-left:0;
        padding-right:0
    }
}

.content-wrapper--header{
    overflow:visible
}
@media screen and (max-width:992px){
    .content-wrapper--header{
        z-index:99998;
        max-width:50%;
        margin-left:0
    }
}
@media screen and (min-width:800px){
    .content-wrapper{
        padding-left:30px;
        padding-right:30px
    }
}
@media screen and (min-width:1140px){
    .content-wrapper{
        padding-left:calc(50% - 512px);
        padding-right:calc(50% - 512px)
    }
    .content-wrapper--header{
        padding-left:calc(50% - 62.5rem);
        padding-right:calc(50% - 62.5rem)
    }
}
@media screen and (min-width:1360px){
    .content-wrapper{
        padding-left:calc(50% - 62.5rem);
        padding-right:calc(50% - 62.5rem)
    }
}
.content-wrapper--spills{
    overflow:visible;
    z-index:9999
}
@media screen and (min-width:992px){
    .content-wrapper--pullup{
        margin-top:-9rem
    }
}
@media screen and (min-width:800px){
    .content-wrapper--contact.background-curvy{
        padding-bottom:15rem
    }
}
@media screen and (min-width:1024px){
    .content-wrapper--contact.background-curvy{
        padding-bottom:25rem
    }
}
@media screen and (min-width:1400px){
    .content-wrapper--contact.background-curvy{
        padding-bottom:30rem
    }
}
.container{
    padding:0 2.2rem;
    position:relative;
    width:auto;
    text-align: center;
}
.container:after{
    display:table;
    clear:both;
    content:""
}
@media screen and (max-width:400px){
    .container--pricing-table{
        padding-left:0;
        padding-right:0
    }
}
.content{
    text-align:center;
    padding:6rem 0
}
@media screen and (min-width:992px){
    .content{
        padding:12rem 0
    }
}
img{
    max-width:100%
}
#main-title{
    padding:3rem 0
}
@media screen and (min-width:992px){
    #main-title{
        padding:70px 0 20px
    }
}
#main-title h1{
    max-width:30rem;
    margin:auto;
    text-align:center
}
@media screen and (min-width:768px){
    #main-title h1{
        max-width:65rem
    }
}
@media screen and (min-width:992px){
    body.page #main-title{
        padding:3.5rem 0 10%
    }
}


h1, h2, h3 {
    font-family: 'Baloo Chettan', sans-serif;
}
h3 {
    color: #4c6a86;
}

h1{
    font-size:3rem;
    color:#fff;
    text-shadow:0 1px 3px rgba(37,37,37,.2),0 0 5px rgba(0,0,0,.3);
    font-weight:600;
    line-height:4.3rem
}
@media screen and (min-width:992px){
    h1{
        line-height:6.8rem;
        font-size:5.6rem
    }
}
h2{
    font-size:2.8rem;
    color:#293c4d;
    line-height:3.2rem;
    font-weight:600
}
@media screen and (min-width:768px){
    h2{
        font-size:3.6rem;
        line-height:4.9rem
    }
}
.the-post blockquote p,h3{
    font-size:2rem;
    font-weight:600;
    line-height:3.5rem
}
@media screen and (min-width:768px){
    .the-post blockquote p,h3{
        font-size:2.6rem
    }
}
strong{
    font-weight:600
}









.text-center{
    text-align:center
}
#header-section{
    background-color:#006ea1
}
.top-bar{
    z-index:99999;
    width:100%;
    position:absolute
}
.top-bar:after{
    display:table;
    clear:both;
    content:""
}


.top-bar__inner{
    overflow:visible
}

.top-bar__right{
    float: right;
    padding-right: 70px;
    border-bottom-left-radius: 50px;
    background: linear-gradient(90deg, #784662, #3f5586);
    position: relative;
    z-index: 2;
}
.top-bar__right:before{
    content:"";
    position:absolute;
    top:0;
    right:calc(100% - 95px);
    z-index:-1;
    height:60px;
    width:200px;
    background-image:url(../images/shapes/login_curve.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:50%
}

.top-bar__right:before{
    right:calc(100% - 65px)
}

.top-bar__right:before{
    height:65px
}


.top-bar .mobile-nav__item{
    display:inline-block;
    vertical-align:top
}
.top-bar .mobile-nav__link{
    display:block;
    height:40px;
    width:30px;
    padding:10px 15px
}

.top-bar .mobile-nav__link .icon-menu{
    display:block
}
.nav-active .top-bar .mobile-nav__link .icon-menu,.top-bar .mobile-nav__link .icon-close{
    display:none
}
.nav-active .top-bar .mobile-nav__link .icon-close{
    display:block
}
.top-bar #contact-area{
    display:none;
    margin-left:2rem
}

.top-bar #contact-area span{
    font-weight:600
}
.top-bar #contact-area a,.top-bar #contact-area a:link,.top-bar #contact-area a:visited{
    color:#f6f9fc
}
.top-bar #login-area{
    display:none;
    margin-right:2rem
}

.top-bar #login-area{
    display:block
}

.top-bar #login-area a,.top-bar #login-area a:link,.top-bar #login-area a:visited{
    color:#f6f9fc;
    font-size:1.6rem
}
.top-bar #login-area ul{
    display:inline-block;
    vertical-align:top
}
.top-bar #login-area ul li{
    padding:2rem 1rem
}
li {
    display:inline-block;
    vertical-align:top;
}
ul.secondary-header-links{
    padding-right:2rem;
    position:relative
}
ul.secondary-header-links:after{
    content:"";
    display:block;
    height:23px;
    position:absolute;
    right:0;
    top:18px;
    border-right:1px solid #fff
}

.footer-social-links li {
    margin: 10px 20px;
}

.top-bar #login-area li.client-login{
    position:relative
}

.top-bar #login-area li.client-login.active{
    border-radius:10px 10px 0 0;
    background:#fff
}
.top-bar #login-area li.client-login.active a{
    color:#293c4d
}
.top-bar #login-area li.client-login #client-form-container{
    position:absolute;
    border-radius:20px 0 20px 20px;
    top:48px;
    right:0;
    background:#fff;
    z-index:12
}
.top-bar #login-area li.client-login #client-form-container iframe{
    height:266px;
    border:0;
    outline:none
}
.top-bar #login-area a.chevron-down{
    float:right;
    background:url(../images/chevron-down.svg) right 2px no-repeat;
    height:25px;
    width:25px;
    background-size:25px;
    margin-left:4px;
    position:relative;
    top:-1px
}




/* FOOTER */

footer {
    padding:8rem 0 7rem;
    color:#fff;
    clear:both;
    background:url(../images/shapes/background_bottom_white.svg) top no-repeat;
    background-size:cover;
    margin-top:5rem
}

#footer-logo {
    width: 100px;
}

@media screen and (min-width:992px) {
    footer{
        padding:17rem 0 10rem
    }
}
footer:after{
    display:table;
    clear:both;
    content:""
}
body.blog footer{
    background-image:url(../images/shapes/background_bottom.svg);
    border-top:5rem solid #f9fafd;
    margin-top:0
}

footer a,footer a:link,footer a:visited{
    color: #cac3ff
}
.the-post blockquote footer p,footer .the-post blockquote p,footer h3{
    font-size:2rem;
    text-shadow:0 1px 3px rgba(37,37,37,.2),0 0 5px rgba(0,0,0,.3)
}
footer p{
    font-size:1.6rem;
    padding: 20px;
    margin: auto;
}
footer .container{
    padding:0 2.8rem
}
footer .section{
    margin-top:4rem;
    float:left;
    width:100%
}
footer h3 {
    color: #cac3ff;
    margin-top: 80px;
}

@media screen and (min-width:600px){
    footer .section--address,footer .section--contact{
        width:50%
    }
    footer .section--social{
        width:20%
    }
}
@media screen and (min-width:991px){
    footer .section--main{
        width:60%
    }
    footer .section--address,footer .section--contact,footer .section--social{
        width:20%
    }
}
@media screen and (min-width:991px){
    footer .section--main{
        width:50%
    }
    footer .section--address,footer .section--contact,footer .section--social{
        width:25%
    }
}
footer .segment{
    margin-top:2rem
}
footer .terms li{
    display:inline;
    vertical-align:top;
    padding:0 12px;
    font-size:14px;
    position:relative
}
footer .terms li:first-of-type{
    padding-left:0
}
footer .terms li:first-of-type:before{
    display:none
}
footer .terms li:before{
    content:"";
    display:block;
    font-size:1rem;
    border-right:1px solid #fff;
    height:12px;
    position:absolute;
    left:-1px;
    top:5px
}
footer .social-links a {
    float:left;
    display:block;
    height:25px;
    width:25px;
    opacity:.8
}







