.ft-contact .ft-contact-bx:after {
    background-image: url(../images/right.png);
}

.site-footer.style1 .list-2 li {
    width: 100%;
    list-style-type: disc;
}

.site-footer.style1 .dlab-newsletter:after {
    background: #003366;
}

.site-footer.style1 .footer-top {
    background: #003366;
}

.ft-contact {
    background: #0086c5;
}

.site-footer.style1
.widget_subscribe
.input-group
.input-group-addon
.site-button {
    height: 60px;
    border-radius: 0 4px 4px 0;
    font-size: 18px;
    padding: 15px 25px;
    background: #eaaa00;
}

.ft-contact .ft-contact-bx .title {
    font-weight: 700;
}

.site-footer.style1 .list-2 li a {
    text-decoration: none;
    color: white;
}

.site-footer.style1 .footer-title {
    font-weight: 600;
}

.site-footer .contact-style-1 .site-button {
    width: 40px;
    height: 40px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .site-footer .contact-style-1 .site-button img {
        /*        width: 24px;
        height: 24px;*/
        object-fit: contain;
    }

.site-footer .ft-contact-bx > img {
    width: 55px;
    height: 55px;
    object-fit: contain;
}

.ft-contact .ft-contact-bx {
    padding: 25px 0px 25px 120px;
}

    .ft-contact .ft-contact-bx p {
        font-size: 16px;
    }

.site-footer.style1 .widget_about p {
    margin-bottom: 0px;
}

.middle-bar .logo-header,
.middle-bar .logo-header img {
    width: 300px;
    max-width: 300px;
}

.extra-nav {
    padding: 18px 0 18px 0px;
}

.header-nav .nav > li > a {
    padding: 16px 20px 18px 20px;
    line-height: 26px;
}

.header-curve.ext-header .extra-nav:after,
.header-curve.ext-header .extra-nav:before,
.header-curve.ext-header .logo-header:after,
.header-curve.ext-header .logo-header:before,
.social-curve:after,
.social-curve:before {
    background-color: #eaaa00;
}

.header.dark,
.header.dark .main-bar {
    background: #233b76;
}

.header-curve.ext-header .extra-nav:before,
.social-curve:before {
    -webkit-transform: skew(0deg);
    -moz-transform: skew(30deg);
    -o-transform: skew(30deg);
    -ms-transform: skew(30deg);
    /* transform: skew(
30deg
); */
    border-radius: 30px;
}

.header-curve.ext-header .logo-header:before {
    -webkit-transform: skew(-30deg);
    -moz-transform: skew(-30deg);
    -o-transform: skew(-30deg);
    -ms-transform: skew(-30deg);
    transform: skew(0deg);
    right: -45px;
    width: 100%;
    border-radius: 60px;
}

.header-curve.ext-header .middle-bar .logo-header {
    padding: 11px 0;
}

.middle-bar {
    background: #0086c5 !important;
}

.middle-area .service-list ul li i {
    color: white;
    left: 14px;
    font-size: 24px;
    line-height: 43px;
}

.header-curve.ext-header .extra-nav {
    top: 0px;
}

.header-curve.ext-header .middle-bar.bg-dark .service-list ul li .title {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
}

.header-nav .nav > li {
    font-family: "Montserrat";
}

.service-list ul li {
    margin-left: 15px;
    padding: 0 0 0 24px;
}

    .service-list ul li span {
        font-size: 18px;
        color: #ded847;
        font-weight: 500;
    }

.header-curve.ext-header .header-nav .nav > li.active > a,
.header-curve.ext-header .header-nav .nav > li.current-menu-item > a {
    background-color: transparent;
    color: white;
}

.icon-bx-sm {
    width: 70px;
    height: 70px;
    line-height: 70px;
}

.counter-style-1 .counter,
.counter-style-2 .counter,
.counter-style-3 .counter {
    font-size: 39px;
    font-weight: 700;
}

.counter-style-1 .counter-text,
.counter-style-2 .counter-text {
    font-size: 19px;
    font-weight: 600;
}

/* Local icon fonts: the legacy declarations are malformed in the downloaded template. */
@font-face {
    font-family: "themify";
    src: url("../images/themify9f249f24.woff") format("woff"), url("../images/themify9f249f24.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "FontAwesome";
    src: url("../images/fontawesome-webfont3e6e3e6e.woff2") format("woff2"), url("../images/fontawesome-webfont3e6e3e6e.woff") format("woff"), url("../images/fontawesome-webfont3e6e3e6e.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

[class^="ti-"],
[class*=" ti-"] {
    font-family: "themify" !important;
}

.fa {
    font-family: "FontAwesome" !important;
}

/* Use the current ThiÃªn Minh crest as the small separator mark in section titles. */
.dlab-separator.style-icon img,
.dlab-separator img {
    width: 34px !important;
    height: 34px !important;
    object-fit: contain;
    display: inline-block;
}
/* Keep the crest compact wherever it is used as a title or branch marker. */
.dlab-separator.style-icon img {
    width: 34px !important;
    height: 34px !important;
}

.icon-bx-sm > a > img[src*="logo.png"] {
    width: 56px !important;
    height: 56px !important;
    object-fit: contain;
}
/* Header: a compact brand panel followed by the existing contact details. */
.header-curve.ext-header .middle-bar .container-fluid {
    padding: 0 30px 0 0;
}

.header-curve.ext-header .middle-bar .middle-area {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 0;
    min-height: 120px;
}

.middle-bar .header-brand {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 14px;
    padding: 12px 32px 12px 45px;
    min-height: 120px;
    background: #eaaa00;
    border-radius: 0 65px 65px 0;
}

.header-curve.ext-header .middle-bar .header-brand .logo-header {
    display: block;
    position: static;
    float: none;
    width: 80px;
    max-width: 80px;
    height: auto;
    padding: 0;
    margin: 0;
    flex: 0 0 80px;
}

    .header-curve.ext-header .middle-bar .header-brand .logo-header::before,
    .header-curve.ext-header .middle-bar .header-brand .logo-header::after {
        content: none !important;
        display: none !important;
    }

.middle-bar .header-brand .logo-header img {
    width: 80px !important;
    max-width: 80px !important;
    height: 96px !important;
    object-fit: contain;
    padding: 0;
    margin: 0;
}

.middle-bar .header-slogan p {
    margin: 0;
    max-width: 355px;
    font-family: "Montserrat", sans-serif;
    font-size: 21px;
    line-height: 1.5;
    font-weight: 700;
    color: #fff;
    background: transparent;
}

.site-header .header-slogan p {
    display: block;
}

.header-curve.ext-header .middle-bar .service-list {
    display: block;
    position: static;
    float: none;
    margin: 0 0 0 auto;
    min-width: 0;
}

.middle-bar .service-list ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 28px;
    margin: 0;
    padding: 0;
}

    .middle-bar .service-list ul li {
        margin: 0;
        padding: 0;
    }

.middle-bar .service-list .icon-bx-wraper {
    display: flex;
    align-items: center;
}

.middle-bar .service-list .icon-bx-sm {
    flex: 0 0 50px;
}

.middle-bar .service-list .icon-content {
    overflow: visible;
    min-width: 0;
}

    .middle-bar .service-list .icon-content .title {
        white-space: normal;
        margin: 0;
    }

.middle-bar .service-list li:last-child {
    max-width: 440px;
}

.main-bar .logo-header img {
    width: 74px !important;
    height: 74px !important;
    object-fit: contain;
}

@media (max-width: 1399px) {
    .middle-bar .header-brand {
        padding-left: 20px;
        padding-right: 22px;
    }

    .middle-bar .header-slogan p {
        max-width: 190px;
        font-size: 18px;
    }

    .middle-bar .service-list ul {
        gap: 16px;
    }

    .header-curve.ext-header .middle-bar .service-list ul li .title {
        font-size: 14px;
    }
}

@media (max-width: 991px) {
    .header-curve.ext-header .middle-bar .container-fluid {
        padding: 0;
    }

    .header-curve.ext-header .middle-bar .middle-area {
        flex-wrap: wrap;
        gap: 0;
    }

    .middle-bar .header-brand {
        min-height: 96px;
        padding: 10px 24px 10px 16px;
    }

        .middle-bar .header-brand .logo-header img {
            height: 76px !important;
        }

    .header-curve.ext-header .middle-bar .service-list {
        width: 100%;
        margin: 0;
        padding: 16px;
    }

    .middle-bar .service-list ul {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 16px 24px;
    }

        .middle-bar .service-list ul li {
            display: block;
        }
}

/* Floating contact buttons from the reference homepage. */
#button-contact-vr {
    position: fixed;
    bottom: 18px;
    left: 18px;
    z-index: 99999;
}

    #button-contact-vr .button-contact {
        position: relative;
        width: 64px;
        height: 64px;
    }

    #button-contact-vr .phone-vr {
        position: relative;
        width: 64px;
        height: 64px;
    }

    #button-contact-vr .phone-vr-circle-fill {
        position: absolute;
        inset: 2px;
        border-radius: 50%;
        background: rgba(33,150,243,.28);
        animation: phone-vr-pulse 2s infinite;
    }

    #button-contact-vr .phone-vr-img-circle {
        position: absolute;
        inset: 11px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #2196f3;
        box-shadow: 0 2px 7px rgba(0,0,0,.25);
    }

    #button-contact-vr #phone-vr .phone-vr-img-circle {
        background: #d71920;
    }

    #button-contact-vr .phone-vr-img-circle a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
    }

    #button-contact-vr .phone-vr-img-circle img {
        width: 30px;
        height: 30px;
        object-fit: contain;
    }

@keyframes phone-vr-pulse {
    0%,100% {
        transform: scale(.92);
        opacity: .65;
    }

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

@media(max-width:575px) {
    #button-contact-vr {
        left: 8px;
        bottom: 8px
    }

    .site-header .header-slogan {
        display: none
    }
}

/* Homepage template styles following the slider. */
.head1 {
    margin-bottom: 70px;
    margin-top: -30px
}

.title-home {
    margin-bottom: 0;
    font-weight: 700;
    font-family: Montserrat,sans-serif;
    color: #003366
}

h1, h2, h3, h4, h5, h6 {
    font-family: Montserrat,sans-serif
}

.intro-title {
    font-weight: 500;
    color: #393939;
    max-width: 735px;
    margin-left: auto;
    margin-right: auto
}

.service-box-5 .dlab-info .title a {
    font-weight: 700;
    color: #171039
}

.icon-bx-sm i {
    font-size: inherit
}

.bg-blue, .bg-secondry, .bg-1 {
    background-color: #0086c5
}

.service-box-5 .dlab-info p {
    line-height: 21px;
    color: #696969;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden
}

.icon-bx-lg, .icon-bx-md, .icon-bx-sm, .icon-bx-xl, .icon-bx-xs {
    border-radius: 9px
}

.counter-style-5:hover, .counter-style-5:after, .bg-2 {
    background: #eaaa00
}

.content-bx1 h2 {
    font-weight: 700;
    color: #003366;
    text-transform: uppercase
}

.content-about p {
    color: #696969
}

.content-about ul li {
    margin-left: 25px
}

.testimonial-4, .testimonial-4:after, .bg-3 {
    background-color: #003366
}

    .testimonial-4 .testimonial-pic {
        border-color: #efbb20;
        border-radius: 50%;
        overflow: hidden
    }

.dlab-media, .dlab-post-media {
    background-color: #d5d5d5;
    position: relative;
    margin: 10px;
    /* margin-bottom: -53px; */
}

    .dlab-media img, .dlab-post-media img {
        /* border: 4px solid white; */
    }

.service-box-5 .dlab-info {
    background: #d8eeff;
    padding: 20px 5px 20px 10px;
    position: initial;
    border-radius: 13px 13px 10px 10px;
    border-bottom: 2px solid #003366
}

.dlab-box, .dlab-info, .dlab-tilte-inner {
    background: #d5d5d5;
    border-radius: 0 0 10px 10px
}

.service-box-5 .icon-bx {
    border-radius: 50%
}

.service-box-5 .dlab-info .title {
    font-size: 18px;
    margin-bottom: 5px;
    line-height: 21px
}

.counter-style-5 .counter {
    background: transparent
}

.service-box.style2 .title {
    font-size: 33px;
    line-height: 45px;
    font-weight: 700;
    font-family: Montserrat,sans-serif;
    text-transform: uppercase
}

.latest-project-info {
    padding: 60px 100px
}

.text-consulting p {
    margin-bottom: 5px;
    font-size: 14px;
    line-height: 17px
}

.text-consulting .dlab-tilte {
    margin-top: 0;
    margin-bottom: 2px;
    font-size: 16px;
    font-weight: 700
}

.ow-entry-title, .ow-entry-title a {
    color: white;
    font-size: 16px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden
}

.ow-entry-content {
    background-color: #003366;
    border-color: #003366
}

.testimonial-4 .testimonial-name {
    font-weight: 600
}

.widget-title.style-1 {
    font-weight: 700
}

.dlab-blog-related .dlab-info .dlab-post-title .post-title {
    font-size: 17px;
    font-weight: 700;
    line-height: 21px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden
}

.dlab-blog-related .dlab-info .dlab-post-text p {
    font-size: 14px;
    line-height: 19px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden
}

.dlab-blog-related .dlab-post-media {
    margin: 0
}

    .dlab-blog-related .dlab-post-media img {
        border: none
    }

.image-cate-new { /* height:230px!important; */
    object-fit: cover
}

.header-nav .nav > li .sub-menu {
    width: 310px
}

button.scroltop {
    background-color: #233b76
}

.middle-bar .service-list .icon-bx-sm {
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: center
}

.middle-bar .service-list ul li .icon-bx-sm i {
    position: static;
    inset: auto;
    transform: none;
    margin: 0;
    padding: 0;
    line-height: 1;
    font-size: 24px
}

.middle-bar .icon-content {
    color: white;
    overflow-wrap: anywhere;
}

    .middle-bar .icon-content h5 {
        margin-bottom: 4px
    }

.mobile-header-slogan {
    display: none
}

@media(max-width:991px) {
    .header.dark .header-nav .nav > li > a, .header-nav .nav > li .sub-menu li a {
        color: white
    }

    .site-header .main-bar > .container-fluid {
        position: relative;
        min-height: 74px;
        padding: 0 12px 0 0
    }

    .site-header .main-bar .logo-header.mostion {
        display: flex;
        align-items: center;
        gap: 8px;
        float: left;
        width: calc(100% - 64px);
        max-width: calc(100% - 64px);
        height: 74px;
        margin: 0;
        padding: 0 14px 0 8px;
        background: #eaaa00;
        border-radius: 0 38px 38px 0;
        box-sizing: border-box
    }

    .header-curve.ext-header .main-bar .logo-header.mostion:before, .header-curve.ext-header .main-bar .logo-header.mostion:after {
        content: none
    }

    .main-bar .logo-header.mostion > a {
        display: block;
        flex: 0 0 54px
    }

    .main-bar .logo-header.mostion img {
        width: 54px !important;
        height: 58px !important;
        margin: 0;
        padding: 0;
        object-fit: contain
    }

    .main-bar .logo-header .mobile-header-slogan {
        display: block;
        min-width: 0;
        margin: 0;
        color: white;
        font: 700 13px/1.45 Montserrat,sans-serif;
        white-space: normal;
        letter-spacing: 0;
    }
	.mobile-header-slogan span {
		font: 700 13px/1.45 Montserrat,sans-serif;
        letter-spacing: 0;
	}
	.mobile-header-slogan p {
		margin:0;
	}
    .site-header .main-bar .navbar-toggler {
        position: absolute;
        right: 12px;
        top: 15px;
        float: none;
        width: 44px;
        height: 44px;
        margin: 0;
        padding: 0;
        transform: none;
        z-index: 101
    }

        .site-header .main-bar .navbar-toggler.navicon span {
            width: 22px;
            left: 11px
        }

            .site-header .main-bar .navbar-toggler.navicon span:nth-child(1) {
                top: 14px
            }

            .site-header .main-bar .navbar-toggler.navicon span:nth-child(2) {
                top: 21px
            }

            .site-header .main-bar .navbar-toggler.navicon span:nth-child(3) {
                top: 28px
            }

        .site-header .main-bar .navbar-toggler.navicon.open span:nth-child(1), .site-header .main-bar .navbar-toggler.navicon.open span:nth-child(3) {
            top: 21px
        }

    .mo-left .main-bar .header-nav {
        height: 100vh !important;
        height: 100dvh !important;
        overflow-y: auto;
        overflow-x: hidden;
        padding-bottom: 24px;
        box-sizing: border-box;
        z-index: 101
    }

        .mo-left .main-bar .header-nav.show {
            width: min(320px,calc(100vw - 64px))
        }

        .mo-left .main-bar .header-nav .nav {
            width: 100%;
            float: none
        }

            .mo-left .main-bar .header-nav .nav > li {
                width: 100%
            }

                .mo-left .main-bar .header-nav .nav > li > a {
                    white-space: normal;
                    overflow-wrap: anywhere;
                    background: unset !important;
                }

                .mo-left .main-bar .header-nav .nav > li .sub-menu {
                    position: static;
                    width: 100%;
                    max-width: 100%;
                    box-sizing: border-box
                }

                    .mo-left .main-bar .header-nav .nav > li .sub-menu li a {
                        white-space: normal;
                        overflow-wrap: anywhere;
                        line-height: 1.5;
                        padding: 7px 12px 7px 18px;
                        height: auto
                    }
}

@media(max-width:767px) {
    .service-box.style2 .title {
        font-size: 29px
    }

    .image-cate-new {
        height: auto !important
    }

    .site-footer .ft-contact-bx > img {
        width: 40px;
        height: 40px
    }

    .site-footer .ft-contact .ft-contact-bx {
        padding: 25px 15px 25px 75px
    }
}

@media(prefers-reduced-motion:reduce) {
    #button-contact-vr .phone-vr-circle-fill {
        animation: none
    }
}

/* Footer layout overrides: match the reference contact band and preserve dynamic CMS content. */
.site-footer.style1 .dlab-newsletter {
    /* background: #fff; */
    /* overflow: visible; */
}

    .site-footer.style1 .dlab-newsletter:after {
        /* background: #ffffff; */
        height: 70px;
        z-index: -1;
    }

.site-footer.style1 .ft-contact {
    min-height: 144px;
    border-radius: 10px;
    align-items: stretch;
    margin-bottom: -60px;
}

    .site-footer.style1 .ft-contact .ft-contact-bx {
        min-height: 144px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 25px 30px 25px 120px;
    }

        .site-footer.style1 .ft-contact .ft-contact-bx > img {
            left: 45px;
            top: 50%;
            transform: translateY(-50%);
        }

        .site-footer.style1 .ft-contact .ft-contact-bx:hover > img {
            transform: translateY(-50%) scale(1.1);
        }

.site-footer.style1 .footer-top {
    padding: 120px 0 30px;
}

.site-footer.style1 .footer-title {
    color: #fff;
    font-size: 24px;
    line-height: 1.3;
    padding-bottom: 14px;
    margin-bottom: 24px;
}

    .site-footer.style1 .footer-title:after {
        background: #eaaa00;
        width: 40px;
        height: 3px;
    }

.site-footer.style1 .footer-top .widget p,
.site-footer.style1 .footer-top .widget li,
.site-footer.style1 .footer-top .widget a {
    color: #fff;
    font-size: 16px;
    line-height: 28px;
}

.site-footer.style1 .footer-top .widget ul:not(.list-inline) {
    padding-left: 18px;
}

    .site-footer.style1 .footer-top .widget ul:not(.list-inline) li {
        list-style: disc;
        width: 100%;
        float: none;
        padding-bottom: 8px;
    }

        .site-footer.style1 .footer-top .widget ul:not(.list-inline) li::marker {
            color: #eaaa00;
        }

.site-footer.style1 .contact-style-1 .list-inline {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

    .site-footer.style1 .contact-style-1 .list-inline > li {
        padding: 0;
        list-style: none;
    }

@media (max-width: 767px) {
    .site-footer.style1 .dlab-newsletter:after {
        height: 0;
    }

    .site-footer.style1 .ft-contact {
        flex-direction: column;
        border-radius: 10px;
        margin-bottom: -120px;
    }

        .site-footer.style1 .ft-contact .ft-contact-bx {
            flex: 0 0 auto;
            max-width: none;
            min-height: 92px;
            padding: 20px 20px 20px 75px;
        }

            .site-footer.style1 .ft-contact .ft-contact-bx > img {
                width: 40px;
                height: 40px;
                left: 20px;
            }

            .site-footer.style1 .ft-contact .ft-contact-bx:after {
                content: none;
            }

    .site-footer.style1 .footer-top {
        padding-top: 180px;
    }
}
