/*--------------------------------------------------------------------*\
    #RESPONSIVE
\*--------------------------------------------------------------------*/


@media (min-width: 768px) {

    .container.lg > .row{
        margin-left: -30px;
        margin-right: -30px;
    }

    .container.lg,
    .container.lg > .row > div{
        padding-left: 30px;
        padding-right: 30px;
    }

    .row,
    .team-sec .container.lg > .row{
        margin-left: -10px;
        margin-right: -10px;
    }

    .container,
    .container-fluid,
    .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9,
    .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9,
    .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9,
    .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9,
    .team-sec .container.lg > .row > div{
        padding-left: 10px;
        padding-right: 10px;
    }

    .mobile-banner {
        display: none;
    }

}


@media (min-width: 992px) {
    .team-sec .row .col-md-3{
        width: 33%;
    }
}

/* Large Devices, Wide Screens */
@media (min-width: 1200px) {

    .container{
        width: 1200px;
    }

    .site-branding{
        float: left;
        padding: 0 20px;
        width: 20%;
    }

    #site-navigation-left,
    #site-navigation-right{
        float: left;
        width: 40%;
    }

    #site-navigation-left ul{
        float: right;
    }

    .menu .sub-menu{
        box-shadow: none;
        left: 0;
        min-width: 200px;
        opacity: 0;
        padding: 10px 0;
        top: 150%;
        visibility: hidden;

        -webkit-transition: all 0.3s ease-in-out 0s;
        -o-transition: all 0.3s ease-in-out 0s;
        transition: all 0.3s ease-in-out 0s;
    }

    .menu > li:hover > .sub-menu{
        left: 0;
        opacity: 1;
        top: 100%;
        visibility: visible;
    }

    .menu .sub-menu:before {
        content: '';
        border-bottom: 10px solid #2475b0;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        position: absolute;
        left: 20px;
        top: 0;
    }

    .menu .sub-menu li{
        background: #2475b0;
        display: block;
        float: none;
        margin: 0;
        padding: 5px 10px;
    }

    .menu .sub-menu li:hover{
        background: #1b679e;
    }

    .menu .sub-menu li.current-menu-item{
        background: #0d5990;
    }

    .menu .sub-menu a:before{
        display: none;
    }

    .services-row{
        margin-left: -30px;
        margin-right: -30px;
    }

    .services-row > div{
        padding-left: 30px;
        padding-right: 30px;
    }

}

@media (min-width: 1500px) {

    .site-branding{
        width: 25%;
    }

    #site-navigation-left,
    #site-navigation-right{
        width: 37.5%;
    }

}

/********************************************************************************************************/

@media (min-width: 1650px) {

    .container.lg{
        width: 1644px;
    }

    .site-header > .container-fluid{
        padding-left: 73px;
        padding-right: 63px;
    }

    .single-post .banner-sec .left-col{
        padding: 0 94px 0 116px;
    }

}

/********************************************************************************************************/

@media (max-width: 1649px) {

    .single-post .banner-sec .opac.img-wrap {
        left: 100px;
        top: -90px;
        width: 600px;
    }

    .post-sub-content .opac.img-wrap{
        width: 600px;
    }

    .post-sub-content .col-img.pull-left+.caption {
        padding-left: 50px;
    }

}


/********************************************************************************************************/

@media (max-width: 1500px) {

    .main-navigation .menu li{
        margin: 0 16px;
    }

    .banner-sec .caption .title{
        font-size: 80px;
    }

    .home .banner-sec .caption .title{
        font-size: 48px;
    }

    .location-block .wrap{
        max-width: 90%;
    }

}

/********************************************************************************************************/

@media (min-width: 1200px) and (max-width: 1500px) {

    .site-header{
        padding: 35px 0;
    }

    .site-title a{
        width: 196px;
    }

    .main-navigation{
        margin-top: 5px;
    }

    .menu li a{
        font-size: 18px;
    }

    .main-navigation .primary-btn{
        font-size: 18px;
        margin-top: 3px;
    }

}

/********************************************************************************************************/

@media (max-width: 1199px){

    .site-header{
        padding: 25px 0;
    }

    .site-header #site-navigation-left,
    .site-header #site-navigation-right .menu{
        display: none;
    }

    .site-header #site-navigation-right{
        margin: 0;
    }

    .site-header .primary-btn {
        position: absolute;
        top: 40px;
        right: 40px;
    }

    .toggle-menu {
        display: block !important;
    }

    .pre-footer h1{
        display: block;
        margin-right: 0;
    }

    .banner-sec .caption .title {
        font-size: 60px;
    }

    .home .banner-sec .caption .title {
        font-size: 36px;
    }

    .single-post .banner-sec {
        padding: 250px 0 200px;
    }

    .single-post .banner-sec .opac.img-wrap,
    .post-sub-content .opac.img-wrap {
        left: 100px;
        width: 485px;
    }

    .single-post .banner-sec .caption {
        padding-top: 50px;
    }

    .post-sub-content .caption {
        padding-top: 0;
    }

    .location-block{
        padding-top: 50px;
    }

    .members-block .info{
        padding: 15px;
    }

    .footer-brand-logos img {
        max-width: 80%;
    }

}

/********************************************************************************************************/

@media (min-width: 768px) and ( max-width: 1199px){

    section.video-content-wrap .caption .title,
    section.vimeo-link-wrap .caption .title {
        font-size: 28px;
        margin-top: 10%;
    }

    section.video-content-wrap .caption .primary-btn,
    section.vimeo-link-wrap .caption .primary-btn{
        font-size: 24px;
        margin-top: 20px;
    }

}

/********************************************************************************************************/

@media (max-width: 991px){

    .single-post .banner-sec .opac.img-wrap,
    .post-sub-content .opac.img-wrap {
        left: 80px;
        width: 400px;
    }

    .single-post .banner-sec .caption {
        padding-top: 0;
    }

    .contact-form,
    .about-carousel{
        padding: 30px 10px 0 !important;
    }

    .border-title{
        font-size: 65px;
    }

    .services-row > div:nth-of-type(2n+1){
        clear: left;
    }

}

/********************************************************************************************************/

@media (max-width: 782px){

    body.admin-bar #toggle-menu-wrap {
        top: 46px;
    }
}

/********************************************************************************************************/

@media (max-width: 767px){

    .primary-btn,
    .primary-btn:focus,
    .primary-btn.lg {
        font-size: 18px;
        padding: 8px 20px;
    }

    h1{
        font-size: 30px;
    }

    h2{
        font-size: 24px;
    }

    .site-header .primary-btn {
        font-size: 16px;
        top: 22px;
    }

    .inner-content,
    .post-section,
    .post-sub-content,
    .team-sec,
    .pre-footer{
        padding: 50px 0;
    }

    body,
    .sec-header .sec-desc,
    .post-sub-content .caption .sub-title {
        font-size: 18px;
        line-height: 30px;
    }

    .sec-header{
        margin-bottom: 35px;
    }

    .sec-header .sec-desc {
        margin-top: 25px;
        width: 100%;
    }

    .border-title{
        font-size: 40px;
        padding-bottom: 20px;
    }

    .border-title:before{
        width: 100px;
    }

    .toggle-menu{
        height: 16px;
        width: 26px;
    }

    .toggle-menu span, .toggle-menu span:before, .toggle-menu span:after{
        height: 2px;
    }

    .toggle-menu span:before {
        top: 7px;
    }

    .toggle-menu span:after {
        top: 14px;
    }

    .toggle-menu.active span {
        -webkit-transform: translate3d(0,7px,0) rotate(45deg);
        transform: translate3d(0,7px,0) rotate(45deg);
    }

    .toggle-menu.active span:after {
        -webkit-transform: translate3d(0,-14px,0) rotate(-90deg);
        transform: translate3d(0,-14px,0) rotate(-90deg);
    }

    body:not(.home) .site-header{
        position: relative;
    }

    .site-header {
        padding: 20px 0;
    }

    .site-header .site-branding{
        float: none !important;
        margin: 0 auto;
        width: 150px;
    }

    .home .banner-sec{
        background-position: 25% center !important;
    }

    /*.home .banner-sec img{
        display: none !important;
    }*/

    .home .banner-sec .caption .title{
        font-size: 30px;
    }

    body:not(.home) .banner-sec {
        background: none !important;
        height: auto;
    }

    .banner-sec .caption {
        bottom: 0;
        height: 100%;
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
    }

    .banner-sec .caption .title,
    .banner-sec.not-found .caption .title,
    .single-ns_services .banner-sec .caption .title {
        font-size: 50px;
        padding-top: 0;
        padding-bottom: 15px;
    }

    .single-post .banner-sec .caption .title:before,
    .banner-sec .caption .title:before {
        left: 50%;
        margin-left: -50px;
        width: 100px;
    }

    .banner-sec .caption .sub-title {
        font-size: 18px;
        line-height: 26px;
        margin-top: 15px;
    }

    .banner-sec .caption .primary-btn,
    .home .banner-sec .caption .primary-btn {
        margin-top: 10px;
    }

    .menu li a{
        font-size: 20px;
    }

    .bottom-footer{
        padding: 50px 0 30px;
    }

    .bottom-footer .info li {
        display: block;
        margin-left: 0;
    }

    .bottom-footer .social-links li{
        display: inline-block;
        margin: 5px 10px 0;
    }

    .bottom-footer .footer-logo {
        margin-bottom: 30px;
        max-width: 180px;
    }

    .single-post .banner-sec{
        padding: 0;
        text-align: center;
    }

    .single-post .banner-sec .container,
    .single-post .banner-sec .container > div{
        padding: 0;
    }

    .single-post .banner-sec .featured.img-wrap:before{
        background: rgba(0, 0, 0, 0.75);
        bottom: 0;
        content: '';
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
    }

    .single-post .banner-sec .opac.img-wrap, .post-sub-content .opac.img-wrap{
        display: none;
    }

    .post-sub-content .col-img{
        float: none !important;
        padding-left: 15px;
        padding-right: 15px;
    }

    .post-sub-content .caption{
        clear: both;
        padding: 30px 15px 0 !important;
    }

    .post-block .title {
        font-size: 24px;
        top: 30px;
    }

    .qe-faq-toggle .qe-toggle-title,
    .qe-faq-toggle .qe-toggle-content{
        padding: 12px 15px;
    }

    .qe-faq-toggle .qe-toggle-title i.fa{
        margin-top: 14px;
    }

    .location-block {
        background: #333333;
        padding: 50px 15px;
        position: relative;
        overflow: hidden;
    }

    .location-block .wrap {
        max-width: 100%;
        padding: 0;
    }

    .contact-form,
    .about-carousel{
        padding: 30px 15px 0 !important;
    }

    .about-carousel .item .cpm-desc{
        font-size: 28px;
        line-height: 30px;
    }

    .toggle-menu{
        top: 35px;
    }

    .members-block .info{
        padding: 30px;
    }

    #isotope-filter li{
        display: block;
    }

    section.video-content-wrap,
    section.vimeo-link-wrap{
        margin-top: 97px;
    }

    section.video-content-wrap .caption .title,
    section.vimeo-link-wrap .caption .title {
        margin-top: 0;
    }

    .cpm-site-by {
        bottom: 0;
        display: inline-block;
        margin-top: 10px;
        position: relative;
        right: 0;
        text-align: center;
    }

    section.vimeo-link-wrap .iframe-wrap,
    section.video-content-wrap  video.video {
        display: none !important;
    }

}

/********************************************************************************************************/

@media (max-width: 600px){

    #cpm-video-lists .isotope-item {
        width: 100%;
    }

    html.no-js{
        margin-top: 0 !important;
    }

    body.logged-in.admin-bar{
        padding-top: 46px;
    }

    #wpadminbar {
        position: absolute;
        top: 0;
    }

    body.admin-bar #toggle-menu-wrap {
        padding-top: 146px;
        top: 0;
    }

    body.admin-bar .toggle-menu {
        top: 86px;
    }

    .home .banner-sec .caption .title{
        font-size: 24px;
    }

    .banner-sec .caption .title {
        font-size: 35px;
    }

    .banner-sec.not-found .caption .title,
    .single-ns_services .banner-sec .caption .title{
        font-size: 24px;
    }

    .banner-sec.not-found .caption .sub-title,
    .single-ns_services .banner-sec .caption .sub-title{
        font-size: 16px;
        line-height: 20px;
        margin-top: 12px;
    }

    #content .search-form {
        margin-top: 12px;
    }

    #content .not-found .search-form .search-field,
    #content .not-found .search-form .search-field:focus{
        font-size: 16px;
        padding: 10px;
    }

    #content .search-form input[type="submit"] {
        font-size: 18px;
    }

    .post-block .title {
        left: 0;
        margin: 0;
        padding: 0 5%;
        width: 100%;
    }

    section.video-content-wrap .caption .title,
    section.vimeo-link-wrap .caption .title {
        font-size: 18px;
    }

    .primary-btn,
    .primary-btn:focus,
    section.video-content-wrap .primary-btn,
    section.vimeo-link-wrap .primary-btn{
        font-size: 16px;
    }
}


/********************************************************************************************************/

@media (max-width: 420px){

    .site-header .site-branding{
        width: 130px;
    }

    .site-header .primary-btn {
        font-size: 14px;
        padding: 5px 8px;
        top: 30px;
        right: 15px;
    }
    .toggle-menu {
        left: 18px;
    }
}

/********************************************************************************************************/