@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
:root {
   --primary:#045BC4;
   --primary-dark:#061c8f;
   --white:#ffffff;
   --black:#000000;
   --font-family: "Inter", sans-serif;
    --font-bebas:"Bebas Neue", sans-serif;
   --container:1400px;
   --transition:.3s ease; 
    --speed: 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94); 
}
/* Reset */
 * {
   margin:0;
   padding:0;
   box-sizing:border-box;
}
html{
  scroll-behavior: smooth;
}
 body {
   font-family:var(--font-family);
   margin: 0 !important;
}
 a {
   text-decoration:none;
}
h1,h2,h3,h4,h5,h6,p{
  margin: 0;
  color: var(--black);
}
/* Common */
 .container {
   width:100%;
   max-width:var(--container);
   margin:0 auto;
   padding:0 25px;
}
.container-full{
   width:100%; 
   margin:0 auto;
   padding:0 25px;
}

 .bg-cover {
   background-size:cover;
   background-position:center right;
   background-repeat:no-repeat;
}
.d-grid{
  display: grid;
}
 .d-flex {
   display:flex;
}
 .align-center {
   align-items:center;
}
 .justify-center {
   justify-content:center;
}
 .justify-between {
   justify-content:space-between;
}
.text-center{
  text-align: center;
}
 .gap20 {
   gap:20px;
}
 .text-white {
   color:var(--white);
}
h1,
.f75{
  font:400 75px/1.2 var(--font-family); 
}
h2,.f55{
  font:400 55px/1.2 var(--font-family); 
}
h3,.f34{
  font:400 34px/1.17 var(--font-family); 
} 
h4,.f24{
  font:400 24px/1.5 var(--font-family); 
}
h5,.f20{
  font:700 20px/1.2 var(--font-family); 
}
p,li{
  font:400 16px/2 var(--font-family);
}


.mt-0{
  margin-top: 0;
}
 .mb5 {
   margin-bottom:5px;
}
 .mb10 {
   margin-bottom:10px;
}
 .mb15 {
   margin-bottom:15px;
}
 .mb20 {
   margin-bottom:20px;
}
 .mb25 {
   margin-bottom:25px;
}
 .mb30 {
   margin-bottom:30px;
}
.mb35 {
   margin-bottom:35px;
}
 .mb40 {
   margin-bottom:40px;
}
 .mb60 {
   margin-bottom:60px;
}
.gap15{
  gap:15px;
}
.gap20{
  gap:20px;
}
.gap40{
  gap: 40px;
}
/* Button */
 .btn {
   display:inline-flex;
   align-items:center;
   justify-content:center;
   min-height:33px;
   padding:15px 29px;
   transition:var(--transition);
   font: 700 16px/19px var(--font-family);
}
 .btn-primary {
   background:var(--primary);
   color:var(--white) !important;
}
 .btn-white {
   background:var(--white);
   color:var(--primary) !important;
}
 .btn:hover {
   opacity:.85;
}

/*==========================
Header
===========================*/
.site-header{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    z-index:999;
    padding:22px 0;
}
.header-wrapper{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.header-logo{
  display: none;
}

.custom-logo-link img{
    width:190px;
    display:block;
}

/* Navigation */
.header-nav{
    margin-left:50px;
    flex:1;
}
.header-nav ul{
    display:flex;
    align-items:center;
    gap:35px;
    margin:0;
    padding:0;
    list-style:none;
}
.header-nav a{
    color:#fff;
    font-size:16px;
    font-weight:400;
    transition:.3s;
}
.header-nav a:hover{
  opacity: 0.8;
} 
.header-btns{
    display:flex;
    align-items:center;
    gap:15px;
}
.header-btns .btn{
    min-width:170px;
    height:46px;
    padding:0 25px;
    font-size:14px;
    font-weight:600;

}
.header-btns .btn-primary{
    min-width:220px;
}
/* Mobile */
.mobile-toggle{
    width:45px;
    height:45px;
    border:none;
    background:none;
    display:none;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    cursor:pointer;
}
.mobile-toggle span{
    width:24px;
    height:2px;
    background:#fff;
} 

/*============================== Hero Section ==============================*/
 .hero-slider-section, .hero-slider, .hero-slide {
   width:100%;
   min-height:530px;
}
 .hero-slide {
   position:relative;
   display:flex;
   align-items:center;
}
 .hero-overlay {
   position:absolute;
   inset:0;
   background:linear-gradient( 90deg, rgba(5, 24, 140, .98) 0%, rgba(5, 24, 140, .82) 28%, rgba(5, 24, 140, .45) 55%, rgba(5, 24, 140, .12) 100% );
   z-index:1;
}
 .hero-slide  .container-full {
   position:relative;
   z-index:2;
}
 .hero-content {
   max-width:826px;
   min-height: 100vh;
   padding-top: 100px;
   padding-bottom: 60px;
   display: flex;
   flex-direction: column;
   justify-content: flex-end;
}
 .hero-content p {
   max-width:752px;
}
/* Swiper Pagination */
 .hero-pagination {
   position:absolute;
   right:20px !important;
   bottom:14px !important;
   left:auto !important;
   width:auto !important;
   display:flex;
   gap:7px;
}
 .hero-pagination .swiper-pagination-bullet {
   width:28px;
   height:3px;
   border-radius:0;
   background:var(--white);
   opacity:.45;
}
 .hero-pagination .swiper-pagination-bullet-active {
   opacity:1;
}
/*============================== Brand Section ==============================*/
 .brand-strip-section {
   padding: 70px 0;
   background: var(--white);
}
 .brand-strip-title {
   color: var(--black);
   line-height: 1.4;
}
 .brand-strip {
   width: 100%;
}
 .brand-logo {
   display: flex;
   align-items: center;
   justify-content: center;
}
 .brand-logo img {
   max-width:115px;
   max-height: 70px;
   object-fit: contain;
   filter: grayscale(100%);
   opacity: 0.45;
   transition: var(--transition);
}
 .brand-logo:hover img {
   opacity: 0.8;
   transform: scale(1.05);
}
/*============================== About Section ==============================*/
 .about-section{
   padding: 0 0 100px;
}
 .section-header{
   max-width:900px;
   margin:0 auto 70px;
}
 .section-header p{
   max-width:858px; 
}
 .about-wrapper{
   display:flex;
   justify-content:space-between;
   gap:60px;
}
 .about-image{
   width:36%;
   position:relative;
}
 .about-image img{
   width:100%;
   display:block;
   height: 100%;
   object-fit: cover;
}
 .about-badge{
   position:absolute;
   right:-36px;
   bottom:20px;
   width:150px; 
}
 .about-badge img{
   width:100%;
   height: 100%;
   object-fit: cover;
}
 .about-content{
   width:58%;
}
 .solution-box{
   border:1px solid #ececec;
   padding:25px;
   margin-bottom:15px;
}
 .solution-item{
   display:flex;
   gap:20px;
}
.solution-item p{
  margin-bottom: 0;
  line-height: 1.75;
}
 .solution-item:not(:last-child){
   margin-bottom:35px;
}
 .solution-icon{
   width:52px;
   min-width:52px;
}
 .solution-icon img{
   width:52px;
}
 .solution-item h4{
   margin-bottom:5px;
}
 .counter-wrapper{
   display:flex;
   justify-content:space-between;
   margin-bottom:35px;
}
 .counter-item h2{
   margin-bottom:5px;
}
 .counter-item p{
   color:#666;
   margin-bottom: 0;
}
/*============================== Advantage Section ==============================*/
 .advantage-section {
   padding: 70px 0px;
   background: linear-gradient( 90deg, #f3f7fb 0%, #f3f7fb 67%, #ffffff 67%, #ffffff 100% );
   position: relative;
   overflow: hidden;
}
 .advantage-wrapper {
   gap: 40px;
}
 .advantage-content {
   width: 55%;
}
.advantage-image {
    width: 52%;
    position: absolute;
    left: calc(50% + 150px);
    right: 0;
    top: 60px;
    bottom: 60px;
}
 .advantage-image img { 
   height: 100%;
   object-fit: cover;
}
 .advantage-box {
   grid-template-columns: repeat(2, 1fr);
   background: var(--white);
   padding: 25px 18px 14px; 
}
 .advantage-col {
   padding: 0 18px;
}
 .advantage-col:first-child {
   border-right: 1px solid var(--border, #d9d9d9);
}
 .advantage-icon img {
   width: 62px;
   height: 62px;
   object-fit: contain;
}
 .advantage-logo img {
   width: 78px;
   height: 56px;
   object-fit: contain;
}
 .advantage-list ul{
   list-style: none;
   padding: 0;
   margin: 0;
}
 .advantage-list li {
   font-size: 12px;
   line-height: 1.8;
   padding: 10px 0;
   color: var(--black);
   border-bottom: 1px solid var(--border, #d9d9d9);
}
 .advantage-list li:last-child {
   border-bottom: none;
}
/*============================== Partner Section ==============================*/
 .partner-section {
   padding: 70px 0 0;
   background: var(--white);
}
 .partner-header {
   gap: 40px;
}
 .partner-header h2 {
   width: 45%;
}
 .partner-intro {
   width: 49%;
   color: var(--black);
}
 .partner-grid {
   grid-template-columns: repeat(3, 1fr);
   padding-bottom: 80px;
   border-bottom: 1px solid #efefef;
}
 .partner-card {
   position: relative;
   background: #f4f8fc;
   padding: 32px;
   min-height: 210px;
   overflow: hidden;
}
 .partner-icon {
   width: 42px;
   height: 42px;
   object-fit: contain;
}
 .partner-card p {
   color: var(--black);
}
 .partner-number {
  font:400 125px/155px var(--font-bebas);
   position: absolute;
   right: 20px;
   bottom: 22px;
   color: rgba(0, 0, 0, 0.05);
}
/* --------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------*/ 
 .productivity-section{
  padding-bottom: 80px;
 }
 .productivity-section .head{
  max-width: 670px;
  margin-inline:auto;
 } 
.productivity-section  .slider { 
   overflow: hidden;
}
.productivity-section .controls {
   display: none;
}
.productivity-section .track {
   display: flex;
   gap: 7px;
   align-items: flex-start;
   justify-content: center;
   scroll-behavior: smooth;
   scroll-snap-type: x mandatory; 
}
.productivity-section .track::-webkit-scrollbar {
   display: none;
}
.productivity-section .project-card {
   position: relative;
   flex: 0 0 var(--closed);
   height: 487px; 
   overflow: hidden;
   cursor: pointer;
   transition: flex-basis var(--speed), transform var(--speed);
   background-color: #F2F2F2;
   min-width: 185px;
}
.productivity-section  .project-card[active] {
   flex-basis: 33.33%; 
}
.productivity-section .project-card__bg { 
    aspect-ratio: 390 / 216;
    object-position: center;
    object-fit: cover;
    width: 100%;
} 
.productivity-section  .project-card__content {
   position: absolute;
   inset: 0;
   display: flex;
   flex-direction: column; 
   padding: 8px; 
   z-index: 2;
} 
.productivity-section  .project-card__content  p{
   display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;  
  overflow: hidden;
}
.productivity-section  .project-card__desc,
.productivity-section  .project-card__btn ,
.productivity-section .dots {
   display: none; 
}  
.productivity-section .inactive-card {
    position: absolute;
    z-index: 3;
    inset: 0;
} 
.productivity-section .inactive-card h3.project-card__title {
    font: 400 14px/17px Inter;
    text-align: center;
    position: absolute;
    bottom: 20px;
    left: 0;
    right: 0;
    padding-inline: 5px;
} 
.productivity-section .inactive-card img.project-card__thumb {
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    max-width: 100%;
    height: 169px;
    object-fit: contain;
    object-position: left;
}
.productivity-section .inactive-card  .project-card__btn{
  position: absolute;
  top: 10px;
  right: 10px;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: #E0E0E0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.project-card[active] .inactive-card, 
.project-card .project-card__content{
  opacity: 0;
}
.project-card[active] .project-card__content,
.inactive-card {
  opacity: 1;
}
/* --------------------------------------------------------------------------------------*/ 
/*============================== Case Study Section ==============================*/
 .case-study-section {
   padding: 80px 0 60px;
   background: var(--primary);
   overflow: hidden;
}
 .case-title {
   font-size: 107px;
   margin-bottom: 35px;
   font-weight: 400;
}
 .case-title span {
   display: block;
} 
 .case-small {
   margin-left: 0;
}
 .case-large {
  font-size: 157px;
   margin-left: 245px;
   margin-top: -68px;
}
 .case-study-slider {
   overflow: visible !important;
}
 .case-card {
   background: rgba(255,255,255,0.18);
   padding: 20px;
   gap: 25px;
   min-height: 278px;
}
 .case-image {
   width: 44%;
   min-width: 44%;
}
 .case-image img {
   width: 100%;
   aspect-ratio: 400/383;
   object-fit: cover;
}
 .case-content {
   width: 56%;
}
 .case-list ul {
   margin: 0;
   padding-left: 16px;
}
 .case-list li { 
   color: var(--white);
}
 .case-nav {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-top: 22px;
}
 .case-prev, .case-next {
   background: transparent;
   border: 0;
   color: var(--white);
   font: 700 16px/1 var(--font-family);
   display: inline-flex;
   align-items: center;
   gap: 14px;
   cursor: pointer;
   opacity: 0.7;
}
 .case-prev span, .case-next span {
   width: 22px;
   height: 22px;
   border-top: 2px solid var(--white);
   border-left: 2px solid var(--white);
   display: inline-block;
}
 .case-prev span {
   transform: rotate(-45deg);
}
 .case-next span {
   transform: rotate(135deg);
}
 .case-prev:hover, .case-next:hover {
   opacity: 1;
}
/*============================== Integration Section ==============================*/
 .integration-section {
   padding: 80px 0;
   background: var(--white);
}
 .integration-header {
   gap: 60px;
}
 .integration-header h2 {
   width: 48%;
}
 .integration-intro {
   width: 42%;
   color: var(--black);
}
 .integration-steps {
  margin-top: 60px;
   grid-template-columns: repeat(4, 1fr);
   gap: 50px;
   position: relative; 
}
.integration-steps::before {
    content: "";
    position: absolute;
    top: 38px;
    left: 130px;
    right: 310px;
    height: 50px;
    background: url(../img/layer.png) center / 100% 100% no-repeat;
    pointer-events: none;
}
 .integration-step {
   position: relative;
   z-index: 2;
}
.step-number {
    color: var(--primary);
    font: 400 125px / 1 var(--font-bebas);
    text-align: center;
    margin-bottom: 25px;
    padding-left: 34px;
    position: relative;
    display: flex;
    z-index: 1;
}
 .step-number::before{
  content: "";
  position: absolute;
  left:0;
  top:0;
   width: 117px;
   height: 117px;
   border-radius: 50%;
   background: #eaf1fb;
z-index: -1;
 }
 .integration-step p {
   color: var(--black);
}
/*============================== Testimonial Section ==============================*/
 .testimonial-section{
   padding:90px 0 60px;
   background:#F7F6F9;
}
.testimonial-heading {
    margin-bottom: 55px;
    max-width: 660px;
    margin-inline: auto;
}
 .testimonial-heading h2{
   margin-top:10px;
   font:400 105px/0.8 var(--font-family);
}
.testimonial-heading h2 span {
    display: block;
    color: #045BC4;
    font-weight: 600;
    text-align: right;
}
 .testimonial-slider{
   overflow:visible;
}
 .testimonial-card{
   position:relative;
   background:#fff;
   border-radius:14px;
   padding:35px;
   min-height:320px;
   z-index: 1;
}
 .quote-mark{
   position:absolute;
   top:20px;
   right:25px;
   font:400 144px/1 var(--font-family);
   color:#d8d8d8;
   z-index: -1;
}
 .testimonial-card p{
   color:#444;
}
 .testimonial-user{
   gap:15px;
   margin-top:auto;
}
 .testimonial-user img{
   width:62px;
   height:62px;
   border-radius:50%;
   object-fit:cover;
}
 .rating{
   color:#FDB913;
   font-size:15px;
   margin-top:3px;
}
 .testimonial-navigation{
   margin-top:35px;
   display:flex;
   justify-content:space-between;
}
 .testimonial-prev, .testimonial-next{
    background: transparent;
    border: 0;
    color: var(--white);
    font: 700 16px / 1 var(--font-family);
    display: inline-flex;
    align-items: center;
    gap: 14px;
    cursor: pointer;
    opacity: 0.7;
}
 .testimonial-prev{
   color:#bdbdbd;
}
 .testimonial-next{
   color:var(--primary);
}
 .testimonial-prev span, .testimonial-next span{
   width:20px;
   height:20px;
   display:block;
   border-top:2px solid currentColor;
   border-left:2px solid currentColor;
}
 .testimonial-prev span{
   transform:rotate(-45deg);
}
 .testimonial-next span{
   transform:rotate(135deg);
}
/*============================== Contact Section ==============================*/
 .contact-section {
   padding: 70px 0 75px;
   background: var(--white);
}
 .contact-header {
   gap: 60px;
}
 .contact-title-area {
   width: 58%;
}
 .contact-title-area p {
   max-width: 645px;
   color: var(--black);
}
 .contact-info {
   width: 30%;
   padding-top: 25px;
}
 .contact-icon {
   width: 55px;
   min-width: 55px;
   height: 55px;
   background: var(--white);
   border-radius: 10px;
   box-shadow: 0 5px 8px rgba(0,0,0,0.18);
   display: flex;
   align-items: center;
   justify-content: center;
}
 .contact-icon img {
   width: 24px;
   height: 24px;
   object-fit: contain;
}
 .contact-info-item p {
   color: var(--black);
}
 .form-grid {
   grid-template-columns: 1fr 1fr 1fr;
   align-items: start;
}


.form-wrap {
    display: flex;
    gap: 40px;
}

.form-wrap .left-col {
    width: calc(66.66% - 40px);
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.form-wrap .right-col {
    width: 33.33%;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.form-wrap .left-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 30px 40px;
}
.form-wrap input, .form-wrap textarea {
    width: 100%;
    height: 60px;
    border: 1px solid var(--border, #d9d9d9);
    padding: 0 16px;
    font-size: 16px;
    font-family: var(--font-family);
    color: var(--black);
    outline: none;
    line-height: 32px;
    border-radius: 0;
}
.form-wrap textarea {
    padding-top: 14px;
    resize: none;
    height: 150px;
}
 .form-wrap input::placeholder, .form-wrap textarea::placeholder {
   color: #b8b8b8;
} 
 .form-wrap input.wpcf7-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 33px;
    padding: 15px 29px;
    transition: var(--transition);
    font: 700 16px / 19px var(--font-family);
    background: var(--primary);
    color: var(--white) !important;
    width: 100%;
    border: none;
}
 .form-wrap .wpcf7-form-control-wrap {
    position: relative;
    display: flex;
}
/*========================= Footer ==========================*/
 .footer{
   background:#000 url('../img/footer-bg.png') center center  no-repeat;
   background-size: auto;
   color:#fff;
   background-blend-mode: luminosity;
   padding:80px 0 30px;
}
 .footer a{
   color:#fff;
   text-decoration:none;
   transition:.3s;
}
 .footer a:hover{
   opacity:.7;
}
 .footer-top{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
   gap:10px;
} 
 .footer-title{
  font:700 105px/1 var(--font-family); 
   margin-bottom:70px;
}
 .footer-links{
   display:flex;
   gap:110px;
}
 .footer-links ul{
   list-style:none;
   margin:0;
   padding:0;
}
 .footer-links li{
   margin-bottom:14px;
}
 .footer-links a{
   font-size:14px;
} 
.footer-right {
    padding-top: 40px;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}
 .footer-email{
   display:inline-block;
   font-size:18px;
   margin-bottom:20px;
   border-bottom:1px solid rgba(255,255,255,.4);
   padding-bottom:6px;
}
 .footer-image{
   overflow:hidden;
}
 .footer-image img{
   width:100%;
   display:block;
}
 .footer-bottom{
   display:flex;
   justify-content:space-between;
   align-items:flex-end;
   margin-top:70px;
   gap:50px;
}
 .footer-logo{
   width:770px;
}
 .footer-logo img{
   width:100%;
}
 .footer-bottom-right{
   text-align:right;
   margin-bottom: 60px;
}
 .back-top{
   display:inline-flex;
   align-items:center;
   gap:10px;
   margin-bottom:35px;
   font-size:14px;
   margin-bottom: 60px;
}
 .footer-policy{ 
   margin-bottom:15px;
}
 .footer-policy ul{
   display:flex;
   justify-content:flex-end;
   gap:20px; 
   list-style: none;
   flex-wrap: wrap;
   margin: 0;
}
 .footer-policy a{
   font-size:13px;
}
 .footer-bottom-right p{
   font-size:13px;
   color:#cfcfcf;
}
 