/*
 Theme Name:     Project name
 Theme URI:      https://www.Project name.com
 Description:    Divi Child Theme
 Author:         Project name
 Author URI:     https://www.Project name.com
 Template:       Divi
 Version:        1.0.0
*/

@import url('https://fonts.googleapis.com/css?family=Muli:300,400,500,700|Playfair+Display');

body {
    font-family: 'Muli', sans-serif;
    font-size: 16px;
    line-height: 1.2;
}

.pd0 {
    padding: 0 !important;
}

.mb0 {
    margin-bottom: 0 !important;
}

.pd100 {
    padding: 100px 0 !important;
}

.site_row {
    width: 100% !important;
    max-width: 1170px !important;
}

.site_row_1140 {
    width: 100% !important;
    max-width: 1140px !important;
}

.full_row {
    width: 100% !important;
    max-width: 100% !important;
}

.df {
    display: flex;
    flex-wrap: wrap;
}

.dfa {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.dfj {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.jc {
    justify-content: center;
}

.tc {
    text-align: center;
}

.et_pb_image_wrap {
    width: 100% !important;
}

.fs14 {
    font-size: 14px;
}


.fs16 {
    font-size: 16px;
    line-height: 1.7;
    color: #7e7d82;
}

.fs18 {
    font-size: 18px;
}


.fs20 {
    font-size: 20px;
    line-height: 1.4;
    color: #7e7d82;
    font-weight: 400;
}

.wt {
    color: #fff !important;
}


.site_btn_con {
    display: flex;
    flex-wrap: wrap;
}

.site_ttl {
    font-size: 40px;
    font-family: 'Playfair Display', serif;
    line-height: 1.3;
    color: #323232;
}

.site_ttl_pad.site_ttl_line {
    padding-bottom: 50px;
    position: relative;
}

.site_ttl_pad {
    padding-bottom: 25px;
}

.site_ttl_line:after {
    content: '';
    position: absolute;
    width: 30px;
    height: 2px;
    background: #129DC4;
    bottom: 25px;
    left: 0;
}

.site_ttl_line.tc:after {
    left: 0;
    right: 0;
    margin: auto;
}

/*---------- Banner Section start ----------- */
.bnr_sec .et_pb_slide {
    height: 992px;
}

.bnr_txt_ttl {
    font-size: 60px;
    font-family: 'Playfair Display', serif;
}

.bnr_txt_ttl_con {
    padding-bottom: 35px;
}

.bnr_txt_desc_con {
    font-size: 20px;
    padding-bottom: 50px;
    position: relative;
}

.bnr_txt_btn_con {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding-top: 20px;
}

.bnr_txt_desc_con:before {
    content: '';
    position: absolute;
    width: 60px;
    height: 2px;
    background: #129DC4;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.bnr_txt_main_con {
    padding-top: 60px;
}

.et-pb-controllers {
    height: 100%;
    display: flex;
    bottom: 0;
    top: 30px;
    margin: auto;
    flex-direction: column;
    width: auto;
    justify-content: center;
    left: 8%;
}

.et-pb-controllers a {
    width: 9px;
    height: 9px;
    margin: 7px 0;
    border: 2px solid #fff;
    opacity: 1;
    background: transparent;
}

/*---------- Banner Section end ----------- */
/*---------- about Section start ----------- */

.about_col1 {
    width: 49% !important;
}

.about_col2 {
    width: 51% !important;
    padding-left: 30px;
}

.about_img img {
    width: 100% !important;
    height: 370px;
    object-fit: cover;
}

/*---------- about Section end ----------- */

/*------------- Are you looking for section start -------- */

.looking_for_desc_con {
    padding-bottom: 50px;
}

.looking_for_ttl_con_inr {
    padding-bottom: 5px;
}

.looking_for_desc_mn_con {
    padding: 10px 0;
}

.blue_overlay_sec .looking_for_desc_con_inr {
    color: rgba(255, 255, 255, 0.75) !important;
}

/*------------- Are you looking for section end -------- */

/*------------- Service Image section start -------- */

.srvc_img_each_con {
    width: 25%;
    line-height: 0;
}

.srvc_img_each_con img {
    width: 100%;
    height: 357px;
    object-fit: cover;
}

/*------------- Service Image section end -------- */


/*------- Our Services section start -------------- */
.our_services_each_con {
    width: 33.33%;
    padding: 10px 15px 50px 15px;
}

.our_services_each_con_inr {
    display: flex;
    flex-wrap: wrap;
}

.our_services_img_con {
    width: 60px;
    height: 60px;
    background: #129DC4;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.our_services_img_con img {
    width: 100%;
    height: 40px;
    object-fit: contain;
}

.our_services_rgt_main_con {
    width: calc(100% - 60px);
    padding-left: 30px;
}

.our_services_rgt_nm {
    font-size: 24px;
    color: #323232;
}

.our_services_rgt_nm_con {
    padding-bottom: 10px;
}

.our_services_each_con_inr:hover .our_services_img_con {
    animation: scaleDisappear 0.5s;
}

.our_services_desc_con {
    padding-bottom: 40px;
}

@keyframes scaleDisappear {
    0% {
        opacity: 1;
        transform: scale(1);
    }

    60% {
        opacity: 0;
        transform: scale(1.3);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

/*------- Our Services section end -------------- */


/* ----------- get in touch section start ----------- */

.get_in_row {
    width: 100% !important;
    max-width: 780px !important;
}

.get_in_touch_row {
    display: flex;
    flex-wrap: wrap;
}

.get_in_touch_col_3 {
    width: 33.33%;
}

.get_in_touch_col_6 {
    width: 50%;
}

.get_in_touch_col_3,
.get_in_touch_col_6,
.get_in_touch_col_12 {
    padding: 15px;
}

.get_in_touch_col_12 {
    width: 100%;
}

.get_in_touch_box input,
.get_in_touch_box textarea,
.get_in_touch_box select {
    width: 100%;
    padding: 13px 28px;
    color: #323232 !important;
    border: none !important;
    border-radius: 10px !important;
    height: 50px;
}

.get_in_touch_box input::placeholder,
.get_in_touch_box textarea::placeholder,
.get_in_touch_box select {
    color: #7e7d82 !important;
    font-size: 16px;
    font-weight: 400;
}

.get_in_touch_box textarea {
    height: 160px;
    resize: none !important;
}

span.wpcf7-spinner {
    position: absolute;
    right: 0;
}

.hover_button_class {
    padding-top: 20px;
}

.get_in_ttl_con {
    padding-bottom: 20px;
}

@media all and (min-width: 320px) and (max-width: 767px) {
    .pd100 {
        padding: 30px 0 !important;
    }

    .fs14 {
        font-size: 13px;
    }

    .fs16 {
        font-size: 14px;
    }

    .fs18 {
        font-size: 14px;
    }

    .site_row_1140,
    .site_row {
        max-width: 90% !important;
    }

    .fs20 {
        font-size: 15px;
    }

    .site_ttl {
        font-size: 25px;
    }

    .site_ttl_pad.site_ttl_line {
        padding-bottom: 20px;
    }

    .site_ttl_pad {
        padding-bottom: 10px;
    }

    .site_ttl_line:after {
        bottom: 10px;
    }

    /* ---------------Baner section start -------------- */
    .bnr_sec .et_pb_slide {
        height: 500px;
    }

    .et-pb-controllers {
        left: 3%;
        top: 0px;
    }

    .bnr_txt_main_con {
        padding-top: 30px;
    }

    .bnr_txt_btn_con {
        padding-top: 10px;
    }

    .bnr_sec .et_pb_slide_description {
        padding: 0 !important;
    }

    .bnr_txt_ttl {
        font-size: 28px;
    }

    .bnr_txt_desc_con {
        font-size: 16px;
    }

    .bnr_txt_ttl_con {
        padding-bottom: 15px;
    }

    .bnr_txt_desc_con {
        padding-bottom: 15px;
    }

    /* ---------------Baner section end -------------- */
    /*------------- About Section start ---------- */

    .about_col {
        width: 100% !important;
        padding-left: 0;
    }

    .about_img {
        padding-bottom: 10px;
    }

    .about_img img {
        height: 300px;
    }

    /*------------- About Section end ---------- */
    .srvc_img_each_con img {
        height: 230px;
    }

    .srvc_img_each_con {
        width: 100%;
    }

    /*--------------- Our Services section start ------------- */
    .our_services_each_con {
        width: 100%;
        padding: 5px 5px 20px 5px;
    }

    .our_services_img_con {
        width: 40px;
        height: 40px;
    }

    .our_services_img_con img {
        height: 25px;
    }

    .our_services_rgt_main_con {
        width: calc(100% - 40px);
        padding-left: 10px;
    }

    .our_services_rgt_nm {
        font-size: 16px;
    }

    .our_services_rgt_nm_con {
        padding-bottom: 5px;
    }

    /*--------------- Our Services section end ------------- */
    /*---------------- Get in Touch section start ----------- */
    .get_in_touch_col_3,
    .get_in_touch_col_6,
    .get_in_touch_col_12 {
        padding: 5px;
        width: 100%;
    }

    .get_in_row {
        max-width: 90% !important;
    }

    .get_in_touch_box input,
    .get_in_touch_box textarea,
    .get_in_touch_box select {
        padding: 8px 10px;
        font-size: 15px;
        height: 40px;
    }

    .get_in_touch_box textarea {
        height: 120px;
    }

    .hover_button_class {
        padding-top: 10px;
    }

    .get_in_touch_box input::placeholder,
    .get_in_touch_box textarea::placeholder,
    .get_in_touch_box select {
        font-size: 15px;
    }

    .get_in_ttl_con {
        padding-bottom: 10px;
    }

    /*---------------- Get in Touch section end ----------- */
}

@media all and (min-width: 481px) and (max-width: 767px) {
    .srvc_img_each_con img {
        height: 230px;
    }

    .srvc_img_each_con {
        width: 50%;
    }
}


@media all and (min-width: 768px) and (max-width: 980px) {
    .pd100 {
        padding: 40px 0 !important;
    }

    .fs14 {
        font-size: 13px;
    }

    .fs16 {
        font-size: 15px;
    }

    .fs18 {
        font-size: 16px;
    }

    .site_row_1140,
    .site_row {
        max-width: 740px !important;
    }

    .fs20 {
        font-size: 16px;
    }

    .site_ttl {
        font-size: 30px;
    }

    .site_ttl_pad.site_ttl_line {
        padding-bottom: 20px;
    }

    .site_ttl_pad {
        padding-bottom: 10px;
    }

    .site_ttl_line:after {
        bottom: 10px;
    }

    /* ---------------Baner section start -------------- */
    .bnr_sec .et_pb_slide {
        height: 570px;
    }

    .et-pb-controllers {
        left: 3%;
        top: 0px;
    }

    .bnr_txt_main_con {
        padding-top: 30px;
    }

    .bnr_txt_btn_con {
        padding-top: 10px;
    }

    .bnr_txt_ttl {
        font-size: 40px;
    }

    .bnr_txt_desc_con {
        font-size: 16px;
    }

    .bnr_txt_ttl_con {
        padding-bottom: 15px;
    }

    .bnr_txt_desc_con {
        padding-bottom: 20px;
    }

    /* ---------------Baner section end -------------- */
    /*------------- About Section start ---------- */

    .about_col {
        width: 100% !important;
        padding-left: 0;
    }

    .about_img {
        padding-bottom: 15px;
    }

    .about_img img {
        height: 350px;
    }

    /*------------- About Section end ---------- */
    .srvc_img_each_con img {
        height: 250px;
    }

    .srvc_img_each_con {
        width: 50%;
    }

    /*--------------- Our Services section start ------------- */
    .our_services_each_con {
        width: 50%;
        padding: 10px 10px 30px 10px;
    }

    .our_services_img_con {
        width: 45px;
        height: 45px;
    }

    .our_services_img_con img {
        height: 30px;
    }

    .our_services_rgt_main_con {
        width: calc(100% - 45px);
        padding-left: 15px;
    }

    .our_services_rgt_nm {
        font-size: 18px;
    }

    .our_services_rgt_nm_con {
        padding-bottom: 5px;
    }

    /*--------------- Our Services section end ------------- */
    /*---------------- Get in Touch section start ----------- */
    .get_in_touch_col_3,
    .get_in_touch_col_6,
    .get_in_touch_col_12 {
        padding: 8px;
    }

    .get_in_row {
        max-width: 740px !important;
    }

    .get_in_touch_box input,
    .get_in_touch_box textarea,
    .get_in_touch_box select {
        padding: 13px 18px;
        font-size: 15px;
    }

    .get_in_touch_box input::placeholder,
    .get_in_touch_box textarea::placeholder,
    .get_in_touch_box select {
        font-size: 15px;
    }

    .get_in_ttl_con {
        padding-bottom: 10px;
    }

    .hover_button_class {
        padding-top: 10px;
    }

    /*---------------- Get in Touch section end ----------- */
}

@media only screen and (min-width: 981px) and (max-width: 1024px) {
    .pd100 {
        padding: 50px 0 !important;
    }

    .fs18 {
        font-size: 16px;
    }

    .fs16 {
        font-size: 15px;
    }

    .site_row_1140,
    .site_row {
        max-width: 940px !important;
    }

    .fs20 {
        font-size: 17px;
    }

    .site_ttl {
        font-size: 32px;
    }

    .site_ttl_pad.site_ttl_line {
        padding-bottom: 30px;
    }

    .site_ttl_pad {
        padding-bottom: 15px;
    }

    .site_ttl_line:after {
        bottom: 15px;
    }

    /* ---------------Baner section start -------------- */
    .bnr_sec .et_pb_slide {
        height: 600px;
    }

    .et-pb-controllers {
        left: 3%;
        top: 0px;
    }

    .bnr_txt_main_con {
        padding-top: 50px;
    }

    .bnr_txt_ttl {
        font-size: 42px;
    }

    .bnr_txt_desc_con {
        font-size: 16px;
    }

    .bnr_txt_ttl_con {
        padding-bottom: 15px;
    }

    .bnr_txt_desc_con {
        padding-bottom: 20px;
    }

    /* ---------------Baner section end -------------- */
    /*------------- About Section start ---------- */
    .about_col2 {
        padding-left: 20px;
    }

    .about_img img {
        height: 350px;
    }

    /*------------- About Section end ---------- */
    .srvc_img_each_con img {
        height: 230px;
    }

    /*--------------- Our Services section start ------------- */
    .our_services_each_con {
        padding: 10px 10px 40px 10px;
    }

    .our_services_img_con {
        width: 45px;
        height: 45px;
    }

    .our_services_img_con img {
        height: 30px;
    }

    .our_services_rgt_main_con {
        width: calc(100% - 45px);
        padding-left: 15px;
    }

    .our_services_rgt_nm {
        font-size: 20px;
    }

    .our_services_rgt_nm_con {
        padding-bottom: 5px;
    }

    /*--------------- Our Services section end ------------- */
    /*---------------- Get in Touch section start ----------- */
    .get_in_touch_col_3,
    .get_in_touch_col_6,
    .get_in_touch_col_12 {
        padding: 8px;
    }

    .get_in_touch_box input,
    .get_in_touch_box textarea,
    .get_in_touch_box select {
        padding: 13px 18px;
        font-size: 15px;
    }

    .get_in_touch_box input::placeholder,
    .get_in_touch_box textarea::placeholder,
    .get_in_touch_box select {
        font-size: 15px;
    }

    .get_in_ttl_con {
        padding-bottom: 10px;
    }

    /*---------------- Get in Touch section end ----------- */
}

@media all and (min-width: 1025px) and (max-width: 1140px) {
    .pd100 {
        padding: 60px 0 !important;
    }

    .fs18 {
        font-size: 16px;
    }

    .site_row_1140,
    .site_row {
        max-width: 1000px !important;
    }

    .fs20 {
        font-size: 17px;
    }

    .site_ttl {
        font-size: 35px;
    }

    .site_ttl_pad.site_ttl_line {
        padding-bottom: 30px;
    }

    .site_ttl_pad {
        padding-bottom: 15px;
    }

    .site_ttl_line:after {
        bottom: 15px;
    }

    /* ---------------Baner section start -------------- */

    .bnr_sec .et_pb_slide {
        height: 650px;
    }

    .et-pb-controllers {
        left: 3%;
        top: 0px;
    }

    .bnr_txt_main_con {
        padding-top: 50px;
    }

    .bnr_txt_ttl {
        font-size: 45px;
    }

    .bnr_txt_desc_con {
        font-size: 18px;
    }

    .bnr_txt_ttl_con {
        padding-bottom: 15px;
    }

    .bnr_txt_desc_con {
        padding-bottom: 20px;
    }

    /* ---------------Baner section end -------------- */
    /*------------- About Section start ---------- */
    .about_col2 {
        padding-left: 20px;
    }

    .about_img img {
        height: 350px;
    }

    /*------------- About Section end ---------- */
    .srvc_img_each_con img {
        height: 240px;
    }

    /*--------------- Our Services section start ------------- */
    .our_services_each_con {
        padding: 10px 10px 40px 10px;
    }

    .our_services_img_con {
        width: 50px;
        height: 50px;
    }

    .our_services_img_con img {
        height: 30px;
    }

    .our_services_rgt_main_con {
        width: calc(100% - 50px);
        padding-left: 15px;
    }

    .our_services_rgt_nm {
        font-size: 22px;
    }

    .our_services_rgt_nm_con {
        padding-bottom: 5px;
    }

    /*--------------- Our Services section end ------------- */
    /*---------------- Get in Touch section start ----------- */
    .get_in_touch_col_3,
    .get_in_touch_col_6,
    .get_in_touch_col_12 {
        padding: 10px;
    }

    .get_in_touch_box input,
    .get_in_touch_box textarea,
    .get_in_touch_box select {
        padding: 13px 18px;
    }

    .get_in_ttl_con {
        padding-bottom: 10px;
    }

    /*---------------- Get in Touch section end ----------- */
}

@media all and (min-width: 1141px) and (max-width: 1280px) {
    .pd100 {
        padding: 70px 0 !important;
    }

    .site_row_1140,
    .site_row {
        max-width: 1100px !important;
    }

    .fs20 {
        font-size: 18px;
    }

    .site_ttl {
        font-size: 38px;
    }

    .site_ttl_pad.site_ttl_line {
        padding-bottom: 40px;
    }

    .site_ttl_pad {
        padding-bottom: 20px;
    }

    .site_ttl_line:after {
        bottom: 20px;
    }

    /* ---------------Baner section start -------------- */
    .bnr_sec .et_pb_slide {
        height: 700px;
    }

    .et-pb-controllers {
        left: 5%;
        top: 10px;
    }

    .bnr_txt_main_con {
        padding-top: 50px;
    }

    .bnr_txt_ttl {
        font-size: 50px;
    }

    .bnr_txt_desc_con {
        font-size: 18px;
    }

    .bnr_txt_ttl_con {
        padding-bottom: 20px;
    }

    .bnr_txt_desc_con {
        padding-bottom: 30px;
    }

    /* ---------------Baner section end -------------- */

    /*------------- About Section start ---------- */
    .about_col2 {
        padding-left: 20px;
    }

    .about_img img {
        height: 350px;
    }

    /*------------- About Section end ---------- */
    .srvc_img_each_con img {
        height: 250px;
    }

    /*--------------- Our Services section start ------------- */

    .our_services_img_con {
        width: 55px;
        height: 55px;
    }

    .our_services_img_con img {
        height: 35px;
    }

    .our_services_rgt_main_con {
        width: calc(100% - 55px);
        padding-left: 20px;
    }

    .our_services_rgt_nm {
        font-size: 22px;
    }

    .our_services_rgt_nm_con {
        padding-bottom: 5px;
    }

    /*--------------- Our Services section end ------------- */

    /*---------------- Get in Touch section start ----------- */
    .get_in_touch_col_3,
    .get_in_touch_col_6,
    .get_in_touch_col_12 {
        padding: 10px;
    }

    .get_in_touch_box input,
    .get_in_touch_box textarea,
    .get_in_touch_box select {
        padding: 13px 18px;
    }

    .get_in_ttl_con {
        padding-bottom: 10px;
    }

    /*---------------- Get in Touch section end ----------- */

}

@media all and (min-width: 1281px) and (max-width: 1440px) {
    .pd100 {
        padding: 80px 0 !important;
    }

    .fs20 {
        font-size: 18px;
    }

    /*-------- Banner section start ----------- */
    .bnr_sec .et_pb_slide {
        height: 750px;
    }

    .et-pb-controllers {
        left: 5%;
        top: 10px;
    }

    .bnr_txt_main_con {
        padding-top: 50px;
    }

    .bnr_txt_ttl {
        font-size: 55px;
    }

    .bnr_txt_ttl_con {
        padding-bottom: 20px;
    }

    .bnr_txt_desc_con {
        padding-bottom: 30px;
    }

    /*-------- Banner section end ----------- */
    .srvc_img_each_con img {
        height: 270px;
    }
}

@media all and (min-width: 1441px) and (max-width: 1680px) {

    .pd100 {
        padding: 90px 0 !important;
    }

    /*-------- Banner section start ----------- */
    .bnr_sec .et_pb_slide {
        height: 850px;
    }

    .et-pb-controllers {
        left: 5%;
    }

    .bnr_txt_main_con {
        padding-top: 50px;
    }

    .bnr_txt_ttl_con {
        padding-bottom: 25px;
    }

    .bnr_txt_desc_con {
        padding-bottom: 40px;
    }

    /*-------- Banner section end ----------- */
    .srvc_img_each_con img {
        height: 320px;
    }
}

@media all and (min-width: 1681px) and (max-width: 1880px) {
    .srvc_img_each_con img {
        height: 330px;
    }
}