

/* ### General CSS ### */


img.image.wp-image-1336.attachment-medium.size-medium {
    max-width: 110px !important;
}


.large, .large p {
    font-family: 'Karla Regular', sans-serif;
    font-size: 20px;
    line-height: 30px;
}
.row-spacing {
    padding: 80px 0;
}
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #143056;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #143056;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #143056;
}
:-moz-placeholder { /* Firefox 18- */
  color: #143056;
}
.qbutton {
   padding: 3px 23px;
}

.header_bottom .q_logo a {
    height: 53px !important;
}
.qode_icon_font_awesome {
    font-size: 2em !important;
    color: #143056;
}
.header-btn {
    font-size: 14px;
    line-height: 17px;
    font-weight: bold;
    color: #fff;
    background: #143056;
    border: 1px solid #143056;
    padding: 5px 10px;
    transition: all 0.3s ease;
}
.header-btn:hover {
    color: #143056;
    background: #fff;
    border: 1px solid #143056;
    transition: all 0.3s ease;
}

.video-row {
    padding: 80px 0 0;
}
.bg-stripe, .bg-dots {
    width: 60%;
}

.call_to_action .call_to_action_text {
    line-height: 34px;
}

.shadow {
    box-shadow: 0 0 14px 1px #0000000d;
    transition: all 0.5s ease;
}
.shadow:hover {
    box-shadow: 0 0 24px 8px #0000000d;
    transition: all 0.5s ease;
}
.hover-anim {
    transition: all 0.5s ease;
    z-index: 300;
}
.hover-anim:hover {
    transform: scale(1.05);
    transition: all 0.5s ease;
    z-index: 400;
}

.cards-box {
    position: relative;
    box-shadow: 0 0 14px 1px #0000000d;
    background-color: #fff;
    margin: 15px;
    transition: all 0.3s ease;
    z-index: 300;
}
.cards-box:hover {
    transform: scale(1.1);
    transition: all 0.3s ease;
    box-shadow: 0 0 24px 8px #0000000d;
    z-index: 400;
} 
.box-1 {
    padding: 30px 15px;
    min-height: 440px;
    width: calc(100% - 30px);
    float: left;
}
.box-2 {
    width: calc(100% - 30px);
    float: left;
}
.box-2 .vc_column-inner {
    padding: 0;
}
.holder-1, .holder-2 {
    position: relative;
}
.bg-stripe, .bg-dots {
    position: absolute;
    z-index: -1;
}


.service-icons img, .service-icons svg {
    width: auto;
    height: 80px;
    padding-bottom: 30px;
}
.service-icons svg {
    margin-top: 15px;
}
.car img {
    height: 70px;
    padding: 20px;
}
.position-bottom {
    position: absolute;
    bottom: 35px;
    left: 50%;
    transform: translateX(-50%);
}

@media only screen and (min-width: 600px) and (max-width: 800px) {
    .responsive-col {
        width: 50% !important;
    }
}
@media only screen and (min-width: 800px) {
    .responsive-col {
        width: 33.333% !important;
    }
}

.process-row {
    padding: 320px 0 165px;
    margin-top: -250px;
}
.processes {
    padding: 0 0 80px 50px;
    position: relative;
}
.processes h5 {
    padding-top: 10px;
    padding-bottom: 15px;
}
.processes:before {
    content: '';
    width: 18px;
    height: 18px;
    border: 1px solid #143056;
    border-radius: 50%;
    background: #143056;
    margin: 0 0 0 -9px;
    position: absolute;
    top: 0;
    left: 20px;
}
.processes .number {
    position: relative;
    top: -10px;
    left: 0;
    font-size: 60px;
    font-weight: bold;
    text-align: left;
    width: auto;
}
.processes .number:before {
    content: '';
    border: 1px dashed #143056;
    position: absolute;
    height: 394px;
    top: -5px;
    left: -31px;
}


.testimonial-row {
    padding: 180px 0 0;
    z-index: 10;
    margin-top: -180px;
}


.nf-field-container {
    margin-bottom: 0 !important;
}
.nf-multi-cell .nf-cell {
    padding: 0 5px 0 0 !important;
}


.page-id-84 .nf-error .ninja-forms-field {
    border: 1px solid #143056 !important;
}
.contact-list {
    list-style-type: none;
    padding-left: 32px;
}
.contact-list li {
    font-size: 18px;
}
.contact-list li i {
    margin: 0 0.5em 0 -2em;
}


.footer_top .nf-error .ninja-forms-field {
    border: 1px solid #e80000 !important;
}
.footer_top p, .footer_top img {
    margin-bottom: 22px;
}
.footer_top img {
    width: 200px;
}
.widget_recent_entries a {
    font-weight: bold;
}
.widget_recent_entries .post-date {
    color: #bcbdc0 !important;
}
.footer-social {
    list-type: none;
}
.footer-social li {
    display: inline-block;
}


/* ### Portfolio CSS ### */
.portfolio_detail, .portfolio_gallery a .gallery_text_inner h6 {
    display: none;
}
.portfolio_gallery a {
    transition: all 0.3s ease;
    z-index: 200;
    box-shadow: 0 0 14px 8px #0000000d;
}
.portfolio_gallery a:hover {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 400;
    transform: scale(1.1);
}
.portfolio_gallery a .gallery_text_holder {
    background-color: #143056;
    background-color: rgba(20,48,86,.6);
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: inline-block;
    z-index: 200;
    opacity: 1;
    filter: alpha(opacity=1);
    visibility: visible;
    -webkit-transition: all 0.4s ease;
    transition: all .04s ease;
}
.portfolio_gallery a:hover .gallery_text_holder {
    opacity: 0;
    filter: alpha(opacity=0);
    visibility: hidden;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
.projects_holder article .text_holder {
    background-color: rgba(20,48,86,.8) !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
.projects_holder article .text_holder:active {
    background-color: rgba(20,48,86,.8) !important;
    opacity: 1 !important;
    visibility: visible !important;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
.projects_holder .hover_feature_holder_title {
    padding: 0 20px;
}


/* ### Responsive CSS ### */

@media only screen and (min-width: 480px) {
    .processes {
        padding: 0 0 80px 150px;
     }
    .processes h5 {
        padding-top: 0;
    }
    .processes:before {
        left: 120px;
    }
    .processes .number {
        position: absolute;
        top: 18px;
        left: -30px;
        font-size: 80px;
        font-weight: bold;
        text-align: right;
        width: 100px;
    }
    .processes .number:before {
        content: '';
        border: none;
     }
    .processes .number:after {
        content: '';
        border: 1px dashed #143056;
        position: absolute;
        height: 291px;
        top: -40px;
        right: -52px;
    }
    .box-1 {
        margin: 15px 75px;
        width: calc(100% - 150px);
    }
    .box-2 {
        width: calc(33.33333333% - 30px);
    }
   .testimonial-row {
       padding: 130px 0 0;
       margin-top: -130px;
    }

}

@media only screen and (min-width: 600px) {
    .box-1 {
        width: calc(50% - 30px);
        margin: 15px;
        min-height: 530px;
    }
    .box-2 {
        width: calc(33.33333333% - 30px);
    }
    .responsive-tablet {
        position: absolute;
        top: -560px;
        right: -15px;
        width: calc(50% - 15px);
    }
    .process-row {
        padding: 320px 0 120px;
    }
    .processes {
        padding: 0 0 80px 250px;
     }
    .processes h5 {
        padding-top: 0;
    }
    .processes:before {
        left: 200px;
    }
    .processes .number {
        position: absolute;
        top: 20px;
        left: 0;
        font-size: 114px;
        font-weight: bold;
        text-align: right;
        width: 150px;
    }
    .processes .number:after {
        content: '';
        border: 1px dashed #143056;
        position: absolute;
        height: 278px;
        top: -40px;
        right: -52px;
    }
    .testimonial-row {
       padding: 180px 0 0;
       margin-top: -180px;
    }
}

@media only screen and (min-width: 768px) {
    .processes .number:after {
        height: 373px;
    }
}

@media only screen and (min-width: 800px) {
    .process-row {
        padding: 350px 0 165px;
    }
    .large p {
        font-size: 28px;
        line-height: 35px;
    }
    .row-spacing {
        padding: 100px 0;
    }

    .parallax-image-1 {
        top: -40px;
    }
    .parallax-image-2 {
        top: 40px;
    }
}

@media only screen and (min-width: 1000px) {
    .box-1 {
        width: calc(33.33333333% - 30px);
        min-height: 550px;
    }
    .responsive-tablet {
        position: relative;
        top: 0;
        left: 0;
        right: unset;
    }
    .processes .number:after {
        height: 238px;
    }

    .bg-stripe, .bg-dots {
        width: auto;
    }
}

@media only screen and (min-width: 1200px) {
    .row-spacing {
        padding: 120px 0;
    }
    .box-1 {
        min-height: 480px;
    }
}

@media only screen and (min-width: 1400px) {
    .processes .number:after {
        height: 223px;
    }
}

.icon img { 
    width: auto;
    margin: 0 auto;
}

@media only screen and (max-width: 420px) {
    footer .container_inner {
        padding: 0 30px;
    }
}