@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600&display=swap');

:root {
    --cube-size: 40vmin;
    --side-size: calc(var(--cube-size) / 2);
    --perspective: calc(var(--cube-size) * 3);
    --gap: 0.5vmin;


    --color-bg: #222;
    --color-text: #fff;
    --page-padding: 1rem;
    --columns: 15;
    --cursor-blend-mode: difference;
    --cursor-radius: 0;
    --d: 2500ms;
    --angle: 90deg;
    --gradX: 100%;
    --gradY: 50%;
    --c1: rgb(45 72 161);
    --c2: rgb(82 181 203 / 84%);
}

@property --angle {
    syntax: '<angle>';
    initial-value: 90deg;
    inherits: true;
}

@property --gradX {
    syntax: '<percentage>';
    initial-value: 50%;
    inherits: true;
}

@property --gradY {
    syntax: '<percentage>';
    initial-value: 0%;
    inherits: true;
}

@font-face {
    font-family: 'General Sans';
    font-style: normal;
    font-weight: normal;
    src: local('General Sans Regular'), url('GeneralSans-Regular.woff') format('woff');
}


@font-face {
    font-family: 'General Sans Italic';
    font-style: italic;
    font-weight: normal;
    src: local('General Sans Italic'), url('GeneralSans-Italic.woff') format('woff');
}




@font-face {
    font-family: 'General Sans';
    font-style: normal;
    font-weight: 400;
    src: local('General Sans Medium'), url('GeneralSans-Medium.woff') format('woff');
}


@font-face {
    font-family: 'General Sans';
    font-style: italic;
    font-weight: 400;
    src: local('General Sans Medium Italic'), url('GeneralSans-MediumItalic.woff') format('woff');
}


@font-face {
    font-family: 'General Sans';
    font-style: normal;
    font-weight: 500;
    src: local('General Sans Semibold'), url('GeneralSans-Semibold.woff') format('woff');
}


@font-face {
    font-family: 'General Sans';
    font-style: italic;
    font-weight: 500;
    src: local('General Sans Semibold Italic'), url('GeneralSans-SemiboldItalic.woff') format('woff');
}


@font-face {
    font-family: 'General Sans';
    font-style: normal;
    font-weight: 600;
    src: local('General Sans Bold'), url('GeneralSans-Bold.woff') format('woff');
}


@font-face {
    font-family: 'General Sans';
    font-style: italic;
    font-weight: 600;
    src: local('General Sans Bold Italic'), url('GeneralSans-BoldItalic.woff') format('woff');
}

html,
body,
div,
span,
p,
a,
del,
em,
img,
ol,
ul,
li,
fieldset,
form,
label {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

html,
body {
    min-height: 100%;
    font-family: 'General Sans', sans-serif;
    font-weight: 500;
    overflow-x: hidden;
    width: 100%;
    padding: 0 0 40px 0;
    margin: 0;
}


* {
    font-family: 'General Sans', sans-serif;

}

.col-center {
    margin: 0 auto;
}

section {
    width: 100%;
}

p {
    color: #6d727e;
    font-family: 'General Sans', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: normal;
    line-height: 160%;
}

p.p-big {
    font-size: 20px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Space Grotesk', sans-serif;
    font-weight: 600;
}

h2 {
    color: #222;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 48px;
    font-style: normal;
    font-weight: 600;
    /* line-height: 0.7; */
    /* 38.4px */
    letter-spacing: -0.7px;
}

h5 {
    font-size: 24px;
}

h6 {
    font-size: 22px;
}

img {
    max-width: 100%
}

.container {
    max-width: 1500px;
    padding: 0 50px;
}

.container-fluid.not-full {
    padding: 0 50px;
    max-width: 1500px
}

.font-20 {
    font-size: 20px
}

.font-22 {
    font-size: 22px
}

[text-split] {
    opacity: 1;
}

html.w-editor [text-split] {
    opacity: 1;
}

.word {
    overflow: hidden;
     padding-bottom: 0.1em; 
    margin-bottom: -0.1em;
    transform-origin: bottom;
    overflow-x: visible;
    line-height: normal;
}

.btn-outline {
    border: 1px solid #222;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    border-radius: 50px;
    padding: 10px 20px;
    background: #fff;
    display: inline-flex;
    width: auto;
    gap: 10px;
    color: #222;
}

.btn-outline.lg {
    padding: 20px 40px;
}

.btn-black {
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    border-radius: 50px;
    padding: 10px 20px;
    background: #222;
    display: inline-flex;
    width: auto;
    gap: 10px;
    color: #fff;
    margin-left: 30px;
}

header {
    padding: 10px;
    background: none;
    position: absolute;
    z-index: 99;
    width: 100%;
    top: 0;
}

header ul {
    border: 1px solid #222;
    padding: 2px 20px !important;
    border-radius: 100px;
    align-items: center;
    align-self: auto;
}

header .btn-contact {
    font-size: 14px;
}

.head-white .nav {
    background: #fff;
}


.logo-brand img {
    height: 56px;
    max-width: none;
}

#nav-icon {
    display: none
}

.nav-link {
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    font-family: 'General Sans', sans-serif;
    color: #222;
    position: relative;
    display: flex;
    align-items: center;
    margin-right: 20px;
}

.nav-link.nav-dropdown:after {
    content: '';
    width: 20px;
    height: 20px;
    background: url(../img/ic-arrow-down.svg) no-repeat;
    display: inline-block;
    margin-left: 10px;
}

#nav-fixed {
    position: fixed;
    width: 46%;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -210px;
    background: #fff;
    padding: 10px 0 !important;
    transition: 0.5s all;
    border: 1px solid #222;
    border-radius: 100px;
    z-index: 9999;
    align-items: center;
}

#nav-fixed .logo-brand {
    margin-right: 20px;
}

#nav-fixed.show {
    top: 10px
}

#nav-fixed .logo-brand img {
    height: 36px;
}

.dropdown-nav {
    position: absolute;
    left: 0;
    width: 100%;
    background: #fff;
    border: 1px solid #000;
    padding: 0;
    opacity: 0;
    height: 0;
    transition: 0.5s all;
    overflow: hidden;
}

.dropdown-nav .col-md-6 a,
.dropdown-nav .col-md-12 a {
    display: block;
    color: #000;
    text-decoration: none;
    font-size: 16px;
    padding: 15px 0;
    font-weight: 500;
    border-bottom: 1px solid #ccc;
    position: relative;
}

.dropdown-nav .col-md-12 {
    margin-top: 20px
}

.dropdown-nav .col-md-12 a {
    width: 50%
}

.dropdown-nav .col-md-6 a small,
.dropdown-nav .col-md-12 a small {
    font-size: 12px;
    display: block;
    font-weight: normal;
    margin-bottom: 10px;
    color: #999;
}

.dropdown-nav .col-md-6 a img,
.dropdown-nav .col-md-12 a img {
    width: 1vw;
    position: absolute;
    right: 10px;
}

.nav li:nth-child(4):hover .dropdown-nav {
    opacity: 1;
    height: auto;
    padding: 1vw;
}

.dropdown-nav h6 {
    font-size: 15px;
    font-weight: bold;
}

.dropdown-nav li {
    list-style: none;
    display: inline-block;
    width: 32%;
    margin-bottom: 30px;
}

.dropdown-nav li a {
    display: block;
    font-size: 15px;
    padding: 10px 0;
}

.dropdown-nav ul {
    padding: 30px;
    display: block;
}

li.dropdown-box:hover .dropdown-nav {
    opacity: 1;
    height: auto;
    width: 600px;
    padding: 30px;
}

li.dropdown-box {
    position: relative;
}

#top-home-banner {
    background: #fff;
    background-size: auto 95%;
    padding: 215px 0 0px;
    margin-top: -90px;
    overflow: hidden;
    margin-bottom: 100px;
    min-height: 100vh;
}

.bg-video-banner {
    position: absolute;
    top: 0;
    right: 0;
    /* height: 100%; */
}

.bg-video-banner video {
    position: absolute;
    top: 0;
    left: 36%;
    height: 98%;
    z-index: 1
}

.bg-video-banner img {
    /* height: 100vh; */
    position: relative;
    z-index: 9;
    right: -6%;
    top: 0;
}

#top-home-banner h2 {
    /* font-family: 'General Sans', sans-serif; */
    font-size: 90px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: -2px;
    margin: 30px 0;
}

#top-home-banner h2 .word {
    line-height: 100px
}

#top-home-banner p {
    font-family: 'General Sans', sans-serif;
    font-size: 18px;
    font-style: normal;
    line-height: 150%;
    width: 70%;
}

#top-home-banner.service-banner h2 {
    font-size: 70px;
}

.client-slide-mini ul {
    list-style: none;
    padding: 0;
    display: inline-flex;
    align-items: center;
    gap: 40px;
    margin-top: 30px;
}

.client-slide-mini ul li img {
    height: 32px;
    filter: grayscale(1);
}


.about-kdi {
    padding: 100px 0 50px;
}

.about-kdi p {
    max-width: 90%
}

.counter-box {
    width: 30%;
    border-bottom: 1px solid #222;
    padding-bottom: 50px;
    margin-right: 15px;
    position: relative;
}

.counter-box h2 {
    font-size: 60px;
    font-style: normal;
    font-weight: 500;
    line-height: 58px;
}

.counter-box small {
    font-size: 18px;
    position: absolute;
    right: 0;
    bottom: 20px;
}

.why-partnership {
    position: relative;
    z-index: 9;
}

.why-partnership .box-reason {
    padding: 20px;
    padding-bottom: 20px;
    padding-top: 20px;
    border: 2px solid #222;
    min-height: 370px;
    border-radius: 20px;
    border: 1px solid #222;
    /*     border-image: conic-gradient(from var(--angle), var(--c2), var(--c1) 0.1turn, var(--c1) 0.15turn, var(--c2) 0.25turn) 30;
    animation: borderRotate var(--d) linear infinite forwards; */
}

/* 
 .why-partnership .col-md-3:nth-child(2) .box-reason,
 .why-partnership .col-md-3:nth-child(4) .box-reason {
	border-image: radial-gradient(ellipse at var(--gradX) var(--gradY), var(--c1), var(--c1) 10%, var(--c2) 40%) 30;
	animation: borderRadial var(--d) linear infinite forwards;
} */

@keyframes borderRotate {
    100% {
        --angle: 420deg;
    }
}

@keyframes borderRadial {
    20% {
        --gradX: 100%;
        --gradY: 50%;
    }

    40% {
        --gradX: 100%;
        --gradY: 100%;
    }

    60% {
        --gradX: 50%;
        --gradY: 100%;
    }

    80% {
        --gradX: 0%;
        --gradY: 50%;
    }

    100% {
        --gradX: 50%;
        --gradY: 0%;
    }
}

.why-partnership .box-reason img {
    width: 80px;
}

.why-partnership h5 {
    font-size: 28px;
    margin-top: 20px;
    font-weight: 500;
    font-family: 'Space Grotesk', sans-serif;
}

.why-partnership p {
    margin-top: 20px;
}

#expertise-360 {
    margin-top: 100px;
}

.bg-orbit {
    background: radial-gradient(263.95% 414.36% at 67.92% -136.26%, #1B1E3F 35.65%, #2D47A0 43.22%, #05A8DB 55.47%, #05DBCE 65.11%, #219E95 82.99%, #1188AD 99.21%);
    width: 100%;
    height: 500px;
    position: relative;
    overflow: hidden;
    border-radius: 30px;
}




#step-by-step {
    margin-top: 100px;
}

.accordion-hov:hover .accordion-hov-item:hover .accordion-hov-item-content,
.accordion-hov .accordion-hov-item--default .accordion-hov-item-content {
    height: 6em;
}

.accordion-hov-item-content,
.accordion-hov:hover .accordion-hov-item-content {
    height: 0;
    overflow: hidden;
    transition: height .25s;
}

.accordion-hov {
    padding: 0;
    margin: 0 auto;
}

.accordion-hov .accordion-hov-item {
    border-bottom: 1px solid #222;
    padding: 20px 30px 20px 40px;
    color: #222;
    position: relative;
}

.accordion-hov-item-content {
    display: flex;
    justify-content: flex-end
}

.accordion-hov-item h2,
.step-kdi h2 {
    font-size: 36px;
    text-decoration: none;
    color: #222;
    transition: 0.5s all;
}

.accordion-hov-item:hover h2 {
    margin-left: 30px
}

.accordion-hov h2 .num,
.step-kdi .num {
    font-size: 18px;
    left: 10px;
    position: absolute;
    display: block
}

.accordion-hov p,
.step-kdi p {
    color: #6d727e;
    width: 60%;
    line-height: 160%;
    margin-top: 40px;
}

.accordion-hov img {
    width: 33px;
    margin-left: 20px;
    transform: rotate(90deg);
}

.globe-particle {
    position: absolute;
    top: 257px;
    left: 59%;
    transform: scale(1.5);
}

.ideate-box {
    position: relative
}

.vid-ideate {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

.vid-ideate video {
    height: 600px;
    position: absolute;
    right: -19%;
    top: 0;
}

.service-box {
    width: 20%;
    padding: 20px;
    background: radial-gradient(263.95% 414.36% at 67.92% -136.26%, #1B1E3F 35.65%, #2D47A0 43.22%, #05A8DB 55.47%, #05DBCE 65.11%, #219E95 82.99%, #1188AD 99.21%);
    border-radius: 20px;
    min-height: 500px;
    position: relative;
    transition: 0.2s all;
    color: #fff;
    overflow: hidden;
}

.service-box > img:first-child {
    position: absolute;
    top: 20px;
    left: 20px;
}

.service-box > img.accent-img {
    position: absolute;
    top: 0;
    right: -16%;
    left: auto;
    mix-blend-mode: color-burn;
    opacity: 0.1;
}

.service-box img + div {
    position: absolute;
    bottom: 20px;
    padding-right: 20px;
}

.service-box h4 {
    font-size: 42px;
    line-height: 44px;
    margin-bottom: 30px;
    font-family: 'Space Grotesk', sans-serif;
}

.service-box * {

    transition: 0.5s all;
}

.service-box .btn {
    background: none;
    color: #fff;
    border: 1px solid #fff;
}

.service-box.active .btn {
    color: #000;
    background: #fff;
}

.service-box p {
    margin-top: 30px;
    margin-bottom: 30px;
    color: #fff;
    opacity: 0;
    font-size: 18px;
    height: 0
}

.service-box.active {
    width: 40%
}

.service-box.active p {
    opacity: 1;
    height: auto
}

.service-box.active .btn img,
.service-box .btn img.ic-active {
    display: none;
}

.service-box.active .btn img.ic-active {
    display: block;
}

.service-accordion {
    display: flex;
    margin-top: 50px;
    column-gap: 10px
}


#portfolio-list {
    margin: 50px 0 100px;
}


#portfolio-list .col-md-6.mt-5 {
    margin-top: 120px !Important;
}


#portfolio-list .porto-caption h2 {
    font-size: 32px;
    margin: 20px 0 10px;
}


#portfolio-list .porto-caption h6 {
    font-size: 14px;
    color: #9a9a9a;
    font-weight: normal;
}


.testimonial-box p {
    font-size: 28px;
    font-style: normal;
    line-height: 150%;
    margin: 50px 0
}

.client-info p {
    font-size: 14px;
    margin: 10px 0;
}


.client-testimonial {
    margin: 100px 0px 0;
    position: relative;
}

.client-testimonial h3 {
    font-family: 'Space Grotesk', sans-serif;
    font-size: 36px;
}

.client-testimonial hr,
hr {
    background-color: #222;
    opacity: 1;
    margin: 30px 0 30px;
}

.client-ava-1,
.client-ava-2,
.client-ava-3,
.client-ava-4 {
    width: 120px;
    height: 120px;
    border-radius: 100px;
    overflow: hidden;
    position: absolute;
    top: 5%;
    left: 5%;
}

.client-ava-1 img,
.client-ava-2 img,
.client-ava-3 img,
.client-ava-4 img {
    object-fit: cover;
    width: 120px;
    height: 120px;
}

.client-ava-2 {
    position: absolute;
    top: auto;
    left: auto;
    bottom: 0;
    right: 5%;
}

.client-ava-3 {
    position: absolute;
    top: auto;
    left: auto;
    bottom: 72%;
    right: 5%;
}

.client-ava-2 {
    position: absolute;
    top: auto;
    left: auto;
    bottom: 30px;
    right: 15%;
}

.call-action-box {
    /*     border: 1px solid #222; */
    padding: 30px;
    margin-top: 100px;
    border-radius: 30px;
    background: radial-gradient(263.95% 414.36% at 67.92% -136.26%, #1B1E3F 35.65%, #2D47A0 41.12%, #05A8DB 49.33%, #05DBCE 56.58%, #219E95 82.99%, #1188AD 99.21%);
}

.call-action-box h2,
.call-action-box p {
    color: #fff;
}

.call-action-box a.btn.btn-outline {
    border: none;
}

.floating-cookies {
    background: #fff;
    color: #222;
    position: fixed;
    bottom: 10px;
    padding: 10px 20px 10px;
    right: 0;
    left: 0;
    display: inline-block;
    border: 1px solid #222;
    border-radius: 30px;
    z-index: 9999;
    background: #fff;
    margin: 0 50px;

    text-align: center;
}

.floating-cookies p {
    font-size: 11px;
}

.floating-cookies a {
    color: #222;
    padding: 0 0 0 10px;
    font-weight: bold;
    font-size: 12px;
}

footer h2 {
    font-size: 60px;
    /* line-height: 0.8; */
}

.footer-menu {
    padding: 30px 0;
}

.footer-menu a {
    display: block;
    text-decoration: none;
    color: #222;
}

.footer-menu small {
    font-size: 12px;
    margin-bottom: 20px;
    display: block;
}

.copyright p,
.copyright a {
    font-size: 12px;
    padding: 0;
}

.copyright {
    border-top: 1px solid #222;
    padding: 20px 0;
    margin-top: 20px;
}

.copyright a {
    padding: 0 10px;
}

.service-box.active,
.service-box.active p {}

/* .service-managed {
    background: #a5e2ff;
}

.service-project {
    background: #c4ecff;
}
.service-product {
    background: #b7d4ff;
}

.service-integration {
    background: #90b4ff;
}
 */

#top-about-banner {
    padding: 0;
    /* min-height: 100vh; */
    overflow: hidden;
}

#top-about-banner .bg-orbit {
    height: 650px;
    border-radius: 0;
    padding-top: 110px;
}

#top-about-banner h2 {
    /* font-family: 'General Sans', sans-serif; */
    font-size: 84px;
    font-style: normal;
    font-weight: 500;
    /* line-height: 70%; */
    letter-spacing: -2px;
    margin: 0 40px 40px;
    color: #fff;
    position: relative;
    z-index: 2;
    width: 70%;
    padding-top: 30px;
}

#top-about-banner p {
    font-size: 20px;
    margin-bottom: 30px;
    color: #fff;
    width: 40%;
    float: right;
    margin-right: 20%;
}

#top-about-banner .globe-particle {
    transform: scale(2.5)
}

.mask-02 {
    position: absolute;
    bottom: 0;
    right: -29.6vw;
    height: 100%;
}

.animation-loader {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    display: flex;
    align-items: end;
    white-space: nowrap;
    background-color: #fff;
    color: #222;
    overflow: hidden;
    justify-content: center;
    z-index: 99999999;
    width: 100%;
}

.animate-loader {
    font-size: 5vw;
    text-transform: uppercase;
    color: #222;
    -webkit-animation: animate 40s linear infinite;
    animation: animate 40s linear infinite;
    width: auto;
    display: flex;
    align-content: center;
    z-index: 99;
    position: relative;
}

.animate-loader img {
    margin: 0 2vw
}


.loading-page {
    width: 100vw;
    height: 100vh;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center;
    position: fixed;
    top: 0;
    z-index: -2;
    left: 0;
}

.loading-page .counter {
    text-align: center;
    width: 100vw;
}

.loading-page .counter h1 {
    color: #222;
    font-size: 9vw;
    /* margin-top: -10px; */
    position: fixed;
    top: 2vw;
    right: 20px;
}

.loading-page .counter h1 + span {
    color: #222;
    font-size: 2vw;
    /* margin-top: -10px; */
    position: fixed;
    top: 12vw;
    right: 20px;
}

.loading-page .counter {
    position: relative;
}

.counter hr {
    height: 5vh;
    position: fixed;
    top: -20px;
    left: 0;
    z-index: 99;
    opacity: 1;
    background: radial-gradient(263.95% 414.36% at 67.92% -136.26%, #1B1E3F 35.65%, #2D47A0 43.22%, #05A8DB 55.47%, #05DBCE 65.11%, #219E95 82.99%, #1188AD 99.21%);
    z-index: -1;
    margin: 0
}

.about-kdi {}

.about-kdi h4 {
    font-size: 36px;
    font-weight: normal;
    margin-top: 40px;
}

span.no-big {
    position: absolute;
    font-size: 100px;
    color: #09addb;
    z-index: -2;
    top: -20px;
    left: 0
}

.about-kdi h2 {
    /* line-height: 80%; */
}

.core-kdi {
    padding: 50px 0;
    background: #f4f6fb;
    margin: 0 50px 100px;
    width: calc(100% - 100px);
    border-radius: 20px;
}

.core-kdi .box-reason {
    padding: 30px;
    margin-bottom: 20px;
    min-height: 350px;
    background: #fff;
    border-radius: 20px;
}

.core-kdi .box-reason h5 {
    font-size: 24px;
}

.core-kdi .col-md-5 {
    text-align: center
}

.core-kdi .col-md-5 img {
    width: 90%;
}

.step-kdi .col {
    position: relative;
    padding: 30px 20px;
    /* padding-left: 50px; */
    background: #f4f6fc;
    margin: 0 10px;
    border-radius: 20px;
}

.step-kdi p {
    width: 100%
}

.step-kdi .col h2 {
    margin-bottom: 20px;
    font-size: 24px;
    padding-left: 40px;
}

.step-kdi .col img {
    margin: 0 auto;
    display: block;
    margin-bottom: 30px;
    width: 50%;
}

.step-kdi .num {
    left: 20px;
}

.team-kdi {
    padding: 80px 0 150px;
}

.box-team {
    height: 340px;
    overflow: hidden;
    background: #f4f6fc;
    padding-top: 30px;
    border-radius: 20px;
    margin: 30px;
    position: relative;
}

.box-team img {
    width: 100%;
}

.team-kdi .col-md-3:before {
    display: block;
    content: '';
    position: absolute;
    width: 80%;
    height: 70%;
    border: 1px solid #000;
    border-radius: 20px;
    left: 6%;
    z-index: 0;
    top: 2%;
}

.team-kdi .col-md-3 {
    position: relative;
}

.service-overview {
    padding-top: 0;
}

.service-banner h6 {
    margin-top: 40px;
}

.service-why {
    background: #f4f6fb;
    padding: 30px 30px 60px;
    border-radius: 20px;
    margin: 100px 0;
}

.service-why .col {
    padding: 20px 30px;
    background: #fff;
    margin: 0 10px;
    border-radius: 20px;
    /* border-right: 1px solid #000; */
}

.service-why .col:last-child {
    border: none
}
.service-why img {
    height: 64px;
}
.service-advantages {
    margin: 100px 0;
    /* background: #f4f6fb; */
    padding: 40px 30px;
    border-radius: 20px;
    border: 1px solid #000;
}

.service-advantages .col-md-4 {
    padding: 20px;
    text-align: left;
}

.service-advantages .col-md-4 {
    will-change: min-height;
}


.partner-kdi {
    padding: 50px 0 50px;
}

.logo-partner {
    display: flex;
    justify-content: center;
    column-gap: 50px;
    margin: 50px auto 50px;
    flex-wrap: wrap;
    max-width: 1000px;
}

.logo-partner img {
    height: 80px;
    width: 105px;
    max-width: none;
    object-fit: contain;
    filter: grayscale(1);
}

section.join-kdi .col-md-6 h5 {
    font-size: 24px;
    margin: 10px 0 15px;
}


#top-work-banner {
    padding: 100px 0 0;
    /* min-height: 100vh; */
    overflow: hidden;
}

#top-work-banner h2 {
    /* font-family: 'General Sans', sans-serif; */
    font-size: 84px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: -2px;
    margin: 0 0px 0px;
    color: #222;
    position: relative;
    z-index: 2;
    width: 100%;
    padding-top: 30px;
}

#top-work-banner p {
    font-size: 20px;
    margin-bottom: 30px;
    float: right;
}

.btn-filter .btn {
    padding: 10px 30px;
    border: 1px solid #000;
    color: #000;
    background: none;
    margin: 0 10px 10px 0;
    border-radius: 100px;
    font-size: 22px;
}

.btn-filter .btn.active {
    background: radial-gradient(263.95% 414.36% at 67.92% -136.26%, #1B1E3F 35.65%, #2D47A0 43.22%, #05A8DB 55.47%, #05DBCE 65.11%, #219E95 82.99%, #1188AD 99.21%);
    color: #fff;
    border: 1px solid #fff;
}

.join-kdi .col-md-6 img {
    width: 50px;
}

.row.service-advantages h5 {
    font-size: 22px;
}

.row.service-advantages .col-md-4 img {
    height: 60px
}

#contact-form {
    position: fixed;
    top: 150vh;
    background: #fff;
    width: 100vw;
    z-index: 99999999999;
    height: 100vh;
    overflow: hidden;
    overflow-y: scroll;
    transition: 0.5s all;
}

#contact-form.open {
    top: -8px;
}

a.close-contact {
    position: absolute;
    top: 3vw;
    right: 1vw;
}

.col-md-5.contact-bg {
    background: #fff;
    min-height: 100vh;
    padding: 3vw;
    /* display: flex; */
    /* align-items: center; */
    /* flex-wrap: wrap; */
    background-position: bottom;
    background-size: auto 80vh;
}

.col-md-5.contact-bg {}

div#contact-form .container-fluid {
    padding: 0;
}

.col-md-5.contact-bg .logo-brand {
    /* background: #fff; */
    /* width: 6vw; */
    /* height: 6vw; */
    /* border-radius: 100vw; */
    /* text-align: center; */
}

.col-md-5.contact-bg img {
    height: auto;
    max-width: none;
    display: block;
    margin: 0 auto;
}

.col-md-5.contact-bg h2 {
    font-size: 4.5vw;
    color: #000;
    margin: 3vw 0;
    font-weight: 600;
    line-height: 100%;
}

.col-md-5.contact-bg h3 {}


.col-md-5.contact-bg p,
.col-md-5.contact-bg p a {
    font-size: 20px;
    color: #000;
    margin-bottom: 20px;
}

.contact-input {
    padding: 5vw;
    /* background: #eee; */
    border-left: 1px solid #000;
}

.contact-input .form-group {
    margin-bottom: 3vw;
}

.contact-input .form-group label {
    color: #000;
    font-size: 1vw;
    margin-bottom: 10px
}

.contact-input .form-group .form-control {
    border-radius: 0;
    border: none;
    border-bottom: 1px solid #666;
    background: none;
    font-size: 1.6vw;
    color: #000;
    padding-left: 0;
    outline: none !important;
    box-shadow: none !important
}

#contact-form .btn-arrow-box a.btn.btn-outline {
    background: #000;
    color: #fff;
    border: none;
}

#contact-form .btn-arrow-box a {
    background: #000;
    border: none;
    color: #fff;
}

#contact-form .btn-arrow .arrow:before {
    border-color: #fff;
}

#contact-form .btn-arrow .arrow {
    background: #fff
}

marquee {
    /*   overflow: hidden; */
    margin: 100px 0
}

.marquee-content {
    display: flex;
    animation: scrolling 20s linear infinite;
    align-items: center;
}

.marquee-item {
    flex: 0 0 16vw;
    margin: 0 0.6vw;
    /*   flex: 0 0 20vw; */
    /*   margin: 0 2vw; */
    justify-content: center;
    text-align: center;
}

.marquee-item img {
    height: 40px;
    filter: grayscale(1);
    opacity: 1;
    display: block;
    margin: 0 auto;
}

@keyframes scrolling {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translatex(-144vw);
    }
}


.center-slider .slick-dots {
    bottom: 0;
    left: 33px;
}


#nav-icon {
    width: 32px;
    height: 32px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
    display: none;
    position: absolute;
    top: 23px;
}

#nav-icon span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    background: #212529;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

#nav-icon span:nth-child(1) {
    top: 2px;
}

#nav-icon span:nth-child(2) {
    top: 11px;
}

#nav-icon span:nth-child(3) {
    top: 20px;
}

#nav-icon.open span:nth-child(1) {
    top: 18px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}

#nav-icon.open span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

#nav-icon.open span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.logo-black {
    display: none
}

#top-banner-career {
    background: radial-gradient(263.95% 414.36% at 67.92% -136.26%, #1B1E3F 35.65%, #2D47A0 43.22%, #05A8DB 55.47%, #05DBCE 65.11%, #219E95 82.99%, #1188AD 99.21%);
    padding: 100px 0;
    min-height: 80vh;
    margin-bottom: 50px;
    color: #fff;
    position: relative;
    overflow: hidden;
    border-radius: 0 0 20px 20px;
}

#top-banner-career img {
    position: absolute;
    bottom: -16px;
    right: 0;
}

#top-banner-career h2 {
    font-size: 84px;
    color: #fff;
    /* width: 70%; */
    line-height: normal
}

#top-banner-career h6 {
    margin-top: 100px;
}

#top-banner-career p {
    color: #fff;
}

#what-kdi {
    padding-top: 75px;
}

.card-benefit {
    padding: 20px;
    /* background: #eaeaea; */
    border-radius: 20px;
    display: block;
    align-items: center;
    border: 1px solid #222;
    width: 25%;
    margin: 10px;
}

.card-benefit h5 {
    font-size: 22px;
    margin-bottom: 0;
}

.card-benefit img {
    width: 50px;
    margin-right: 20px;
}

.vid-career video {
    width: 100%;
    position: absolute;
    top: 0;
}

.vid-career {
    mix-blend-mode: overlay;
    opacity: 0.3;
}

.career-core {
    margin-top: 70px;
    margin-bottom: 100px;
    /* padding: 30px; */
    /* border: 1px solid #222; */
    border-radius: 20px;
}


.service-integrator .bg-video-banner video{
    left: 24%;
}
.animation-loader .infinite-text {
    font-size: 60px;
}
.animation-loader .infinite-text img {
    height: 60px;
    width: auto
}
@media(max-width:800px) {
    #portfolio-list {
        margin: 0;
    }

    header .btn-contact {
        font-size: 12px;
    }

    .bg-video-banner > img {
        right: 18px;
    }

    .bg-video-banner video {
        left: 0;
        height: 100%;
        opacity: 0.5;
    }

    .why-partnership .box-reason {
        margin-bottom: 30px;
    }

    .bg-video-banner img {
        opacity: 0;
    }

    #top-home-banner h2,
    #top-home-banner h2 + p,
    #top-home-banner h6 {
        color: #fff;
        width: 100%;
    }

    #top-home-banner h2 {
        font-size: 48px;
    }

    .container {
        padding: 0 20px !important;
    }

    #expertise-360 .col-md-6.px-5 {
        padding: 30px 20px !important;
    }

    .service-box {
        width: 100% !important;
        margin-bottom: 30px;
    }

    .service-accordion {
        display: block;
    }

    .container-fluid.not-full {
        padding: 0 20px;
    }

    .center-slider .row.d-flex {
        flex-wrap: wrap !important;
    }

    .center-slider .row.d-flex .col {
        flex: 100%;
    }

    .center-slider .row.d-flex .col.mt-5 {
        padding: 0 !important;
    }

    .col {}

    .testimonial-box p {
        font-size: 18px;
        margin: 20px 0;
    }

    .client-info h6 {}

    .client-testimonial h3 {
        font-size: 22px;
    }

    .infinite-text {
        font-size: 60px !important;
        margin-top: 30px !important;
    }

    .infinite-text img {
        height: 40px;
    }

    p.text-end.mt-5 {
        text-align: left !important;
        margin-top: 20px !Important
    }

    h2 {
        font-size: 36px;
        line-height: normal;
    }

    .bg-video-banner {
        background: #000;
        height: 100%;
        overflow: hidden;
    }

    .client-slide-mini.mt-5 {
        margin-top: 80px !important;
        background: #fff;
        padding: 20px;
        margin: 80px 0 0 !important;
        width: calc(100% + 20px);
    }

    header {
        background: #fff;
        position: fixed;
        left: 0;
        top: 0;
        width: 100%
    }

    header ul.nav {
        display: none;
    }

    .head-white img:first-child {
        display: none
    }

    .head-white img.logo-black {
        display: block
    }

    #nav-fixed {
        top: 67px !important;
        border-radius: 0;
        right: auto;
        left: -100%;
        height: 100%;
        display: block;
        border: none;
        padding: 20px !important;
        transition: 0.5s all;
        border-right: 1px solid #000;
        width: 280px;
    }

    #nav-fixed li:first-child {
        display: none
    }

    #nav-fixed.open {
        left: 0
    }

    .dropdown-nav {
        position: static !important;
        width: 100% !important;
        border: none;
        padding: 0 10px !important;
        margin: 0;
        margin: 2;
    }

    .nav-link {
        padding: 9px 20px;
        font-size: 20px;
    }

    #nav-icon {
        display: block;
    }

    .logo-brand img {
        position: relative;
        left: 50px;
        height: 40px;
        top: 5px;
    }

    #top-about-banner h2 {
        font-size: 50px;
        width: 100%;
        margin: 0;
        padding: 30px;
    }

    #top-about-banner h2 br {
        display: none;
    }

    .mask-02 {
        display: none;
    }

    #top-about-banner .globe-particle {
        top: 56%;
    }

    #top-about-banner p {
        width: 100%;
        position: relative;
        z-index: 999;
        margin-right: 0;
        padding: 10px 30px;
    }

    section.about-kdi .d-flex {
        flex-wrap: wrap;
    }

    section.about-kdi .d-flex img {
        margin-bottom: 30px;
    }

    section.about-kdi .d-flex .col-md-6 {
        padding: 0 !important;
    }

    .core-kdi {
        margin: 0 20px 100px;
        width: 100%;
        margin: 0 0 100px;
    }

    .core-kdi .d-flex {
        flex-wrap: wrap;
    }

    .core-kdi p.p-big,
    section.step-kdi .d-flex p.p-big {
        padding: 0 !important;
        margin-top: 20px;
        margin-bottom: 30px;
    }

    section.step-kdi .d-flex {
        flex-wrap: wrap;
    }

    .step-kdi h2 {
        margin-bottom: 20px !important;
    }

    .step-kdi .col {
        flex: 100%;
        margin-bottom: 30px;
    }

    .step-kdi .col img {
        width: 80px;
    }

    #top-work-banner h2 {
        font-size: 68px;
    }

    #top-work-banner h2 br {
        display: none;
    }

    .btn-filter {}

    .btn-filter .btn {
        font-size: 16px;
    }

    .col-md-5.contact-bg {
        min-height: auto;
        padding: 100px 30px 0;
        background-size: 100%;
        background-position: center 140%;
    }

    .col-md-5.contact-bg h2 {
        font-size: 10vw;
    }

    .col-md-5.contact-bg p,
    .col-md-5.contact-bg p a {
        font-size: 3vw;
        color: #000;
    }

    .col-md-5.contact-bg .logo-brand {
        width: 10vw;
        height: 10vw;
        position: absolute;
        left: 10px;
        top: 15px;
        margin-left: 0;
    }

    a.close-contact {
        right: 10px;
        left: auto;
        top: 10px;
    }

    .col-md-5.contact-bg img {
        left: 0;
        top: 10px;
    }

    .contact-input .form-group label {
        font-size: 3vw;
    }

    .contact-input .form-group .form-control {
        font-size: 6vw;
    }

    .box-team img {
        height: 340px;
        object-fit: contain;
        object-position: center;
    }

    .team-info {
        padding: 30px;
    }

    .partner-kdi .w-50 {
        width: 100% !important;
    }

    footer .logo-brand img {
        left: 0;
        margin-bottom: 30px;
    }

    .copyright ul {
        justify-content: center !important;
        display: flex;
        margin: 30px 0;
    }

    .copyright .col-md-6 {
        text-align: center;
    }

    .box-team img {
        height: 340px;
        object-fit: contain;
        object-position: center;
    }

    .team-info {
        padding: 30px;
    }

    .partner-kdi .w-50 {
        width: 100% !important;
    }

    footer .logo-brand img {
        left: 0;
        margin-bottom: 30px;
    }

    .copyright ul {
        justify-content: center !important;
        display: flex;
        margin: 30px 0;
    }

    .copyright .col-md-6 {
        text-align: center;
    }

    .floating-cookies {
        margin: 0 10px;
        border-radius: 10px;
    }

    #top-home-banner.service-banner {
        margin-bottom: 0;
        padding: 50px 0;
        margin-top: 0;
        display: flex;
        align-items: center;
    }

    #top-home-banner.service-banner h2 {
        font-size: 40px;
    }

    .service-overview {
        padding-top: 30px;
    }

    .service-overview .w-50 {
        width: 100% !important;
    }

    .row.service-why .row .col {
        flex: 100%;
        margin: 0;
        margin-bottom: 30px;
    }

    .service-advantages {
        padding: 40px 10px;
        margin-bottom: 30px;
    }

    section#portfolio-list .w-50 {
        width: 100% !important;
    }

    .client-slide-mini ul li img {
        height: auto;
        max-width: 100%;
    }

    #top-home-banner p {
        font-size: 14px;
    }

    .cubes {
        position: relative !important;
        top: 100px !important;
    }

    #what-kdi .col-md-6.pt-3 {
        padding-top: 250px !important;
    }

    .join-kdi .col-md-12.pe-5.d-flex {
        display: block !important;
    }

    .card-benefit {
        width: 100%
    }

    #top-banner-career h2 {
        font-size: 40px;
    }

    .vid-career video {
        width: auto;
        height: 100%;
    }

    #top-banner-career img {
        width: 20%;
    }

    .accordion-hov-item h2,
    .step-kdi h2 {
        font-size: 24px;
        line-height: normal;
    }

    .loading-page .counter h1 {
        font-size: 16vw;
        top: 10vw;
    }
    .btn-outline.lg {
    padding: 10px 20px;
    font-size: 14px;
}
    .bg-video-banner video{
        left: -55% !important;
       
    }
    #top-home-banner {
    display: flex;
    align-items: center;
}
}


@media(max-width:480px) {

    .client-slide-mini ul {
        flex-wrap: wrap;
        justify-content: center;
    }

    .client-slide-mini ul li {
        width: 20%;
    }

    #top-home-banner {
        margin-bottom: 0px;
    }

    #what-kdi .font-22 {
        font-size: 16px !important;
    }

    .counter-box {
        flex-basis: 100%;
    }

    .font-20 {
        font-size: 16px;
    }

    .testimonial-box p {
        font-size: 14px;
    }

    .call-action-box h2 {
        font-size: 32px;
    }

    .call-action-box {
        padding: 20px;
    }

    .call-action-box a.btn.btn-outline {
        padding: 20px;
    }

    .counter-box h2 {
        font-size: 32px;
        line-height: normal;
    }
    h2 {
    font-size: 28px;
}

}
