/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: 
*/

* { box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; }

.suspension-contain {max-height: 980px;overflow:hidden;position: relative;}
html.suspended {background: rgba(0,0,0,0.6);}
body {max-width: 100%;margin: 0 auto;text-align: center;font-family: 'Figtree', sans-serif;}
a {color:inherit;text-decoration: none}
a:hover {text-decoration: none;color:inherit;}
h1,h2,h3,h4,h5,h6 { font-family: 'Domine', serif; font-weight: 700; line-height: 1.2em; letter-spacing: -0.01em; padding:0; margin:0; }
p { font-family: 'Figtree', sans-serif; font-weight: 400; font-size: 20px; line-height: 1.4em; }
p:last-of-type { margin: 0; }
.row {max-width: 1200px;margin: 0 auto}

/*display-inline*/
.inbM { display: inline-block; vertical-align: middle; box-sizing: border-box; }
.inbT { display: inline-block; vertical-align: top; box-sizing: border-box; }
.db { display: block; }

/*flex*/

.flexs { display: flex; justify-content: space-between; align-items: flex-start; }
.flexc { display: flex; justify-content: space-between; align-items: center; }
.flexe { display: flex; justify-content: space-between; align-items: flex-end; }
.flexstr { display: flex; justify-content: space-between; align-items: stretch; }

/*button*/
.btn { max-width: 200px; width: 100%; box-sizing: border-box; position: relative; z-index: 1; display: inline-block; background: transparent; font-weight: 400; font-size: 18px; text-align: center; letter-spacing: 0.5px; color: #333333; padding: 15px; box-sizing: border-box; font-family: 'Domine', serif; border: 1px solid #4166B2; border-radius: 50px; line-height: 1.2em; }
.btn a { color: #FFFFFF!important; }
.btn:hover {color: #FFF !important; box-shadow: 0px 10px 20px -10px #000;  }
.btn::after {content: ""; background: #4166B2; transition: all .3s linear; transform: scaleX(0); position: absolute;  height: 100%; width: 100%;z-index: -1;left: 0; top: 0; border-radius: 50px; }
.btn:hover::after {transform: scaleX(1);}
.btn.alt { border: 1px solid #FFFFFF; color: #FFFFFF; }

/*floats*/
.fl {float:left;}
.fr {float:right;}

/*socials*/
.socials a { font-family: 'socialico'; font-size: 40px; color: #4066B2; display: inline-block; line-height: 0; }
.socials a:last-of-type { margin-bottom: 0; }

/*typography*/
.tl { text-align: left; }
.tc { text-align: center; }
.tr { text-align: right; }

/*color*/
.white { color: #FFFFFF }

/*clearings*/
.clear{ clear:both;}
.clearfix:after {content:"."; display:block; height:0; clear:both;visibility:hidden;font-size: 0;}
.clearfix {display:block;}

/*cookie*/
.cc-animate.cc-revoke.cc-bottom{font-size: 14px; padding: 5px 10px; position: fixed; display: block!important; transform: none!important; bottom: 0!important; left: 20px!important;}

/*call to action*/
.destroy-on-load, .cta {display: none;}

/*contact form messages*/
form .messages p {display: none;font-family: Arial !important;font-weight: 400 !important;letter-spacing: 0 !important;font-size: 16px !important;}
form .loading {display: none;}
form .alert {padding: 15px;margin-bottom: 20px;border: 1px solid transparent;border-radius: 4px;}
form .alert-success {color: #3c763d;background-color: #dff0d8;border-color: #d6e9c6;}
form .alert-danger {color: #a94442;background-color: #f2dede;border-color: #ebccd1;}
form [type="submit"] {margin:20px auto}

/*contact form*/
.ctc-form {margin: 0 auto;text-align: center;}
.ctc-form input[type="text"],.ctc-form textarea {font-family:'Figtree', sans-serif;font-size: 16px;color:#000;height:50px;display: block;width: 100%;border:1px solid #ddd;border-radius: 3px;padding: 5px 10px;box-sizing: border-box;margin: 0 auto 8px}
.ctc-form textarea {height: 180px;padding-top:10px;}
/*.ctc-form input[type="text"] {font-family:'Montserrat', sans-serif; font-size: 16px;color:#333333;height:63px;display: inline-block;width: 32%;border: none!important;border-radius: none!important;padding: 15px 20px;box-sizing: border-box;margin: 0 6px 16px;; background: #EEEEEE; font-weight: 500; }
.ctc-form textarea {font-family:'Montserrat', sans-serif; font-size: 16px;color:#333333;height:134px;display: inline-block;width: 98.5%;border: none!important;border-radius: none!important;padding: 15px 20px;box-sizing: border-box;margin: 0 auto 10px; background: #EEEEEE; font-weight: 500; }*/
.ctc-form button {display: block;}
.ctc-form .recap {display: inline-block;}
.ctc-form .g-recaptcha div {margin: 0 auto 10px;}
.ctc-form .ctc-hide {display: none;}
::placeholder { color: #111111; }
/*gallery*/
#content .gallery-container {text-align: center;}
#content .gallery {list-style-type: none;margin: 0;padding: 0;}
#content .gallery li {display: inline-block;}
#content .gallery li img { width: 200px; height: 200px; object-fit: cover; }
#content .thumbnail {background-color: #fff;border: 1px solid #ddd;border-radius: 4px;display: block;line-height: .42857; margin-bottom: 20px;padding: 4px;transition: border 0.5s ease-in-out 0s;}
#content .thumbnail:hover {transform: scale(1.02);}
#content .page_navigation {display: inline-block;}
#content .page_link,#content .previous_link,#content .next_link,#content  .first_link,#content  .last_link, #content .ellipse {background-color: #fff;border: 1px solid #ddd;color:  #0275d8;display: inline-block;line-height: 1.25;margin-left: -1px;padding: 0.5rem 0.75rem;position: relative;}
#content .page_navigation > a:hover , .page_navigation > a.active_page {background-color: #eceeef;border-color: #ddd;color: #014c8c;text-decoration: none;}

h1 {font-size: 100px;font-weight: 100;color:#000;}

/*header*/
#header { position: absolute; width: 100%; left: 0; right: 0; padding: 20px 15px; z-index: 999; }
#header .row { max-width: 1820px; width: 100%; margin: 0 auto; }
#header nav a#pull {display: none}
#header nav ul {margin: 0;padding: 0}
#header nav ul li {display: inline-block;vertical-align: middle;}
#header nav ul li a { position: relative; font-family: 'Domine', serif; font-weight: 400; font-size: 18px; color: #FFFFFF; line-height: 120%; display: inline-block; padding: 0; }
/*#header nav ul li a::before { content: ""; background: #2A755E; width: 100%; max-width: 100%; height: 100%; border-radius: 50px; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; transition: all .3s linear; transform: scaleX(0); z-index: -1;}
#header nav ul li a:hover::before,
#header nav ul li.active-menu a::before {transform: scaleX(1);}*/
#header nav ul li.active-menu a, #header nav ul li a:hover {color:#fff;}
.header-left { width: 14%; }
.header-logo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.header-right { width: 86%; }
.header-right .header-wrap { max-width: 775px; width: 100%; margin-left: auto; }
.header-right .header-nav { width: 65%; }
.header-right .header-cta { width: 26%; }
.header-right .header-cta .tel a { position: relative; font-family: 'Domine', serif; border: 1px solid #FFFFFF; border-radius: 50px; display: block; padding: 17px; }
.header-right .header-cta .tel a::before { content: '\f095'; font-family: 'FontAwesome'; font-size: 12px; color: #FFFFFF; display: inline-block; vertical-align: middle; margin: 0 10px 0 0; }

/*banner*/
#banner { position: relative; padding: 0; }
.banner-slide .content-img img { width: 100%; height: 100vh; object-fit: cover; display: block; filter: brightness(0.8); border-bottom-left-radius: 30px; border-bottom-right-radius: 30px; }
.banner-box { max-width: 720px; width: 100%; margin: 0 auto; position: absolute; top: 170px; left: 0; right: 0; z-index: 2; }
.banner-content .content-text h2 { font-size: 50px; }
.banner-content .content-text p { margin: 20px 0 40px; }

/*content*/
#content { position: relative; }
.content-text h1, .content-text h2 { font-size: 40px; }
.content-text h5 { font-size: 20px; }
.content-text h6 { font-size: 18px; }
.content-text p {}
.content-img img { width: 100%; height: 100%; object-fit: cover; display: block; }

    /*info*/
    .info-section { position: relative; }
    .info-section .row { max-width: 1280px; width: 100%; margin: 0 auto; }
    .info-wrap { position: relative; padding: 50px 0; border-bottom: 1px solid rgb( 51 51 51 / 20% ); }
    .info-wrap .info-col { width: 25%; padding: 20px 0; border-right: 1px solid rgb( 51 51 51 / 20% ); display: flex;
    align-items: center; justify-content: space-around; }
    .info-wrap .info-col.last { border-right: 0; }
    .info-wrap .info-col .tel a, .info-wrap .info-col .mail a, .info-wrap .info-col .loc a { position: relative; font-family: 'Domine', serif; font-weight: 700; font-size: 18px; }
    .info-wrap .info-col .tel a::before, .info-wrap .info-col .mail a::before, .info-wrap .info-col .loc a::before { content: ''; font-family: 'FontAwesome'; font-size: 12px; color: #3F66B2; display: inline-block; vertical-align: middle; margin: 0 10px 0 0; }
    .info-wrap .info-col .tel a::before { content: '\f095'; }
    .info-wrap .info-col .mail a::before { content: '\f0e0'; }
    .info-wrap .info-col .loc a::before { content: '\f3c5'; }
    .info-wrap .info-col .socials a { margin: 0 30px 0 0; }
    .info-wrap .info-col .socials a:last-of-type { margin: 0; }

    /*about*/
    .about-section { position: relative; padding: 110px 0 0; }
    .about-section::after { content: ''; background: url('../images/content/gray-arc.png')no-repeat center bottom; width: 100%; height: 80px; position: absolute; left: 0; right: 0; bottom: 0; }
    .about-section .row { position: relative; max-width: 100%; width: 100%; z-index: 2; }
    .about-left, .about-right { width: 50%; }
    .about-left .about-box { max-width: 650px; width: 100%; margin-left: auto; }
    .about-box .about-content { max-width: 505px; width: 100%; }
    .about-content .content-text p { margin: 30px 0 40px; }
    .about-right .content-img img { border-top-left-radius: 30px; border-bottom-left-radius: 30px; }

    /*services*/
    .services-section { position: relative; background: #F5F7FB; padding: 100px 15px 0; }
    .services-section .row { max-width: 1280px; width: 100%; margin: 0 auto; }
    .services-wrap .services-content, .services-wrap .button { width: 50%; }
    .services-wrap.bot { margin: 40px 0 0; padding: 0 0 100px; border-bottom: 1px solid rgb( 51 51 51 / 20% ); }
    .services-wrap .services-col { width: 24.37%; }
    .services-wrap .content-img img { border-radius: 15px; margin: 0 0 10px; }

    /*why*/
    .why-section { position: relative; background: #F5F7FB; padding: 100px 15px 80px; }
    .why-section .row { max-width: 1280px; width: 100%; margin: 0 auto; }
    .why-left { width: 50%; }
    .why-left .content-img img { border-radius: 30px; }
    .why-right { width: 40%; }
    .why-right .why-content .content-text p { margin: 30px 0 40px; }
    .why-icon { margin: 80px 0 0; }
    .why-col { width: 25%; padding: 0 20px; border-left: 1px solid rgb( 51 51 51 / 20% ); }
    .why-col .content-img { max-width: 40px; width: 100%; margin: 0 0 20px; }

    /*gallery*/
    .gallery-section { position: relative; padding: 10px 5px; }
    .gallery-section .row { max-width: 100%; width: 100%; }
    .gallery-col { width: 20%; padding: 0 5px; }

    /*experience*/
    .experience-section { position: relative; padding: 130px 15px 540px; }
    .experience-section .row { max-width: 1280px; width: 100%; margin: 0 auto; }
    .experience-left, .experience-right { width: 50%; }

    /*testimonials*/
    .testimonials-section, .testimonials-wrap { position: relative; }
    .testimonials-section .row { position: relative; max-width: 100%; width: 100%; margin: -440px 0 -360px; z-index: 2; }
    .testimonials-left { width: 67%; }
    .testimonials-left .content-img img { height: 800px; border-top-right-radius: 30px; border-bottom-right-radius: 30px; }
    .testimonials-right { max-width: 1310px; width: 100%; margin: 0 auto; position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; padding: 0 15px;}
    .testimonials-right .testimonials-content { max-width: 50%; width: 100%; margin-left: auto; background: #FFFFFF; padding: 60px 75px 50px; border-radius: 15px; box-shadow: 2px 2px 10px rgb( 0 0 0 / 50% ); }
    .testimonials-content .stars { font-size: 40px; color: #00022B; margin: 0 0 30px; }
    .testimonials-content .content-text p { margin: 0 0 25px; }

    /*tag*/
    .tag-section { position: relative; background: #4166B2; padding: 505px 15px 150px; }
    .tag-section::before { content: ''; background: url('../images/content/blue-arc.png')no-repeat center top; width: 100%; height: 80px; position: absolute; left: 0; right: 0; top: -79px; }
    .tag-section .row { max-width: 1280px; width: 100%; margin: 0 auto; }
    .tag-left { width: 40%; }
    .tag-left .tag-content .content-text p { margin: 30px 0 40px; }
    .tag-right { width: 50%; }
    .tag-right .content-img img { border-radius: 30px; }

    /*project*/
    .project-section, .project-wrap { position: relative; }
    .project-section .row { max-width: 100%; width: 100%; }
    .project-wrap .content-img img { filter: brightness(80%); }
    .project-content { max-width: 720px; width: 100%; margin: 0 auto; position: absolute; left: 0; right: 0; bottom: 80px; }
    .project-content .content-text p { margin: 30px 0 40px; }

/*footer*/

#footer { background: #00022B; padding: 0 15px; }
#footer .info-wrap .info-col { border-right: 1px solid rgb( 255 255 255 / 20% ); }
#footer .info-wrap .info-col.last { border-right: 0; }

.footer-section .footer-wrap { padding: 40px 0; border-top: 1px solid rgb( 255 255 255 / 20% );  }
.footer-section .footer-logo { width: 17%; padding: 0 15px; }
.footer-section .footer-logo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.footer-section .footer-nav, .footer-section .footer-content { width: 41.5%; }
.footer-section .footer-nav ul { max-width: 435px; width: 100%; margin: 0;padding: 0}
.footer-section .footer-nav ul li {display: inline-block;vertical-align: middle;}
.footer-section .footer-nav ul li a { position: relative; font-family: 'Figtree', sans-serif; font-weight: 400; font-size: 16px; color: #FFFFFF; line-height: 120%; display: inline-block; padding: 0; }
.footer-section .footer-content .content-text p { font-size: 16px; }

/*inner pages*/
.inner #header { position: relative; background: #00022B; }
.inner #header .header-logo img { max-width: 150px; }
.inner #content { min-height: 600px; padding: 60px 15px; }
.inner #content .row { max-width: 1280px; width: 100%; margin: 0 auto; }

.inner .page-title .content-text h1 { font-weight: 700; font-size: 45px; padding: 0 0 20px; margin: 0 0 20px; border-bottom: 1px solid #E7E1DA; }
.inner .page-content .content-text p { margin: 15px 0; }

/*about*/
.inner .about-content { margin: 30px 0; }
.inner .about-wrap { max-width: 100%; width: 100%; gap: 30px; }
.inner .about-image, .inner .about-desc { width: 50%; }
.inner .about-desc .content-text p { margin: 0 0 30px; }
.inner .about-desc .content-text p:last-of-type { margin: 0; }

/*services*/
.inner .services-desc { margin: 0 0 30px; }

/*gallery*/
.inner.gallery-page #content .row { max-width: 1200px!important; width: 100%!important; }

/*privacy policy*/
.inPrivacyBox {max-width: 850px; margin: 0 auto;}
.inPrivacyBox p {text-align: justify!important;}



/** Responsive
-------------------------------------------------------*/


@media screen and (max-width: 1775px){
    
    /*TESTIMONIALS*/

    .testimonials-right .testimonials-content { padding: 30px; }
    .testimonials-content .stars { margin: 0 0 15px; }

}

@media screen and (max-width: 1600px){
    
    /*TESTIMONIALS*/

    .testimonials-content .content-text p { margin: 0 0 15px; }

}

@media screen and (max-width: 1240px){

    /*ABOUT*/

    .about-left .about-box { padding: 0 60px 0 15px; }
    
    /*PROJECT*/

    .project-wrap .content-img img { height: 600px; }
    .project-content { bottom: 30px; }


}

@media screen and (max-width: 1024px){

    /*HEADER*/

    .header-wrap { gap: 30px; }
    .header-right .header-nav { width: 70%; }

    /*INFO*/

    .info-wrap .info-col .tel a, .info-wrap .info-col .mail a, .info-wrap .info-col .loc a { font-size: 16px; }

    /*ABOUT*/

    .about-left .about-box { padding: 0 60px 0 15px; }
    
    /*PROJECT*/

    .project-wrap .content-img img { height: 600px; }
    .project-content { bottom: 30px; }


}

@media screen and (max-width: 800px){

    body {min-width: 320px}
    p { font-size: 16px; }

    /*TEXT ALIGN*/

    .tl, .tr { text-align: center; }

    /*LAYOUT*/

    .flexs, .flexc, .flexe, .flexstr { flex-wrap: wrap; }

    /*HEADER*/

    #header {padding: 0}
    #header, #header * { box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; }
    #header .row {width: 100%}
    #header nav {display:block; height: auto; width: 100%;}
    #header nav ul { width: 100%; display: none; height: auto; padding: 0;}
    #header nav ul li { width: 100%;position: relative; margin: 0; }
    #header nav ul li a { display: block; float:none; padding: 10px 0;}
    #header nav a {text-align: left; width: 100%;}
    #header nav a strong {position: absolute; top: 50%; transform: translateY(-50%); left: 15px;}
    #header nav a#pull {display: block; color: #fff; background-color: #00022B; height: 60px;padding: 10px 0; width: 100%; position: relative;}
    #header nav a#pull:after { content:""; background: url('../images/nav-icon.png') no-repeat; width: 20px; height: 20px; display: inline-block; position: absolute; right: 15px; top: 50%; transform: translateY(-50%);}
    #pull img { width: 100px; padding: 0 0 0 15px; }
    #header nav ul li.active-menu { padding: 0; width: 100%; }
    #header nav ul li.active-menu a, #header nav ul li a:hover { width: 100%; background: #4166B2; padding: 10px 15px; }
    #header nav ul li { background: #000126; padding: 0; }
    #header nav ul li a { padding: 10px 15px; max-width: 100%; }
    .header-left, .header-right .header-cta { display: none; }
    .header-right, .header-right .header-nav { width: 100%; }

    /*BANNER*/

    .banner-slide .content-img img { height: 400px; }
    .banner-box { top: 50%; transform: translateY(-50%); padding: 0 15px; }
    .banner-content .content-text p { margin: 15px 0; }

    /*CONTENT*/

    .content-text h1, .content-text h2 { font-size: 40px!important; }

        /*INFO*/

        .info-section { display: none; }

        /*ABOUT*/

        .about-section { padding: 30px 15px; }
        .about-left, .about-right { width: 100%; }
        .about-left .about-box, .about-box .about-content { max-width: 100%; width: 100%; padding: 0; }
        .about-content .content-text p { margin: 15px 0; }
        .about-right { margin: 20px 0 0; }
        .about-right .content-img img { border-radius: 30px; }

        /*SERVICES*/

        .services-section { padding: 0 15px; }
        .services-wrap .services-content, .services-wrap .button { width: 100%; }
        .services-wrap .button { margin: 15px 0 0; }
        .services-wrap.bot { margin: 20px 0 0; row-gap: 15px; padding: 0 0 30px; }
        .services-wrap .services-col { width: 49%; }

        /*WHY*/

        .why-section { padding: 30px 15px; }
        .why-wrap { row-gap: 20px; }
        .why-right, .why-left { width: 100%; }
        .why-right { order: -1; }
        .why-right .why-content .content-text p { margin: 15px 0; }
        .why-icon { margin: 20px 0 0; row-gap: 30px; }
        .why-col .content-img { margin: 0 auto 20px; }
        .why-col { width: 50%; border-left: 0; }

        /*EXPERIECE*/

        .experience-section { padding: 30px 15px; }
        .experience-left, .experience-right { width: 100%; }
        .experience-left .content-text p { margin: 15px 0; }

        /*TESTIMONIALS*/

        .testimonials-section { padding: 0 15px; }
        .testimonials-section .row { margin: 0; }
        .testimonials-wrap { flex-direction: column-reverse; row-gap: 20px; }
        .testimonials-left { width: 100%; }
        .testimonials-left .content-img img { height: 100%; border-radius: 30px; }
        .testimonials-right { position: relative; top: unset; transform: unset; padding: 0; }
        .testimonials-right .testimonials-content { max-width: 100%; }

        /*TAG*/

        .tag-section { padding: 30px 15px; }
        .tag-wrap { row-gap: 20px; }
        .tag-left, .tag-right { width: 100%; }
        .tag-left .tag-content .content-text p { margin: 15px 0; }

        /*PROJECT*/

        .project-wrap .content-img img { height: 400px; }
        .project-content .content-text p { margin: 15px 0; }

    #footer { padding: 0 15px; margin: 0 auto; text-align: center;}
    #footer .info-section { display: block; }
    #footer .info-wrap { padding: 30px 0 15px; }
    #footer .info-wrap .info-col { width: 100%; border-right: 0; }
    .footer-section .footer-nav { display: none; }
    .footer-section .footer-nav, .footer-section .footer-content { width: 100%; }
    .footer-section .footer-wrap { padding: 30px 0; }
    .footer-section .footer-logo {  max-width: 200px; width: 100%; padding: 0 15px; margin: 0 auto 30px; }
    /*INNER*/
    .inner #content { padding: 30px 15px; }

    /*about*/
    .inner .about-image, .inner .about-desc { width: 100%; }
    .inner .about-desc .content-text p { margin: 15px 0; }
    .inner .about-wrap { gap: 20px; }

    /*services*/
    .inner .services-desc { margin: 0 0 20px; }


}

@media screen and (max-width: 460px){

    .services-wrap .services-col, .gallery-col, .why-col { width: 100%; }

    .gallery-wrap { row-gap: 15px; }

}