@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
:root {
    --primary-color: #0C0840;
    --text: #212529;
    --white: #FFFFFF;
    --light-bg: #CBCFFF;
    --light: #F6F6F6;
    --black: #000000;
    scroll-behavior: auto;
}
body {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: var(--text);
}
ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.image img {max-width: 100%;}
.theme-btn {
    display: inline-block;
    background: linear-gradient(270deg, #3D4392 0%, #0C0840 100%);
    color: var(--white);
    border-radius: 50px;
    font-size: 17px;
    line-height: 24px;
    font-weight: 500;
    text-decoration: none;
    padding: 12px 32px;
    transition: all 0.4s ease-in-out;
}
.theme-btn:hover {
    background: var(--light-bg);
    color: var(--primary-color);
}
/*-- Header CSS ---*/
.header {
    background: linear-gradient(270deg, #3D4392 0%, #0C0840 100%);
    padding: 7px 0;
    position: fixed;
    top: 0;
    z-index: 9;
    left: 0;
    width: 100%;
}
.navbar>.container {
    justify-content: flex-start;
}
.header .offcanvas {
    padding-left: 120px;
    width: 100% !important;
}
.header .offcanvas .offcanvas-body {
    width: 100%;
    justify-content: space-between;
    align-items: center;
}   
.header .navbar-nav .nav-link {
    font-size: 18px;
    line-height: 20px;
    font-weight: 700;
    color: var(--white);
    padding: 0 15px;
}
.header .header-actions a,
.hero-section a {
    font-size: 17px;
    line-height: 24px;
    font-weight: 500;
    border-radius: 50px;
    padding: 12px 32px;
    text-decoration: none;
    background: var(--white);
    color: var(--black);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in-out;
}
.header .header-actions a:hover,
.header .header-actions a:last-child:hover {
    background: var(--light-bg);
    color: var(--primary-color);
}
.header .header-actions a:last-child {
    background: var(--primary-color);
    color: var(--white);
    min-width: 148px;
    margin-left: 10px;
}
/*--- Slider Section ---*/
.hero-section .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.hero-section .content-wrap {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
}
.hero-section .mySwiper {
    height: 100vh;
}
.hero-section h1 {
    font-size: 62px;
    line-height: 72px;
    color: var(--white);
    font-weight: 700;
    max-width: 628px;
    margin: 0 0 20px;
}
.hero-section p {
    font-size: 20px;
    line-height: 1.4;
    color: var(--white);
    max-width: 628px;
    margin: 0 0 40px;
}
.hero-section .swiper-button-container {
    position: relative;
    bottom: 180px;
    right: 0;
    z-index: 9;
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    gap: 12px;
    max-width: 1296px;
    margin: 0 auto;
}
.hero-section .swiper-button-next, .hero-section .swiper-button-prev {
    width: 48px;
    height: 48px;
    border: 2px solid var(--white);
    border-radius: 100%;
    position: static;
    left: inherit;
    right: inherit;
}
.hero-section .swiper-button-next:after, .hero-section .swiper-button-prev:after {
   font-size:20px;
    color: #FFFFFF;
}
.hero-section .swiper-pagination {width: auto;}
.hero-section .swiper-pagination .swiper-pagination-bullet {
    width: 20px;
    height: 20px;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 100px;
    opacity: 1;
    position: relative;
}
.hero-section .swiper-pagination .swiper-pagination-bullet:after {
    content: "";
    width: 3.5px;
    height: 3.5px;
    border-radius: 100%;
    background: var(--white);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.hero-section .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border-color: var(--white);
}
.hero-section .scroll-text {
    background: rgb(35 30 96 / 60%);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    display: flex;
    align-items: center;
    gap: 43px;
    padding: 40px 0;
    overflow: hidden;
}
.hero-section .text-col {
    display: inline-flex;
    max-width: 300px;
    min-width: 300px;
    align-items: center;
    gap: 20px;
}
.hero-section .text-col p {
    font-size: 14px;
    line-height: 22px;
    margin: 0;
    font-weight: bold;
    color: var(--white);
}
/*--- Services sec ---*/
.sec-heading {
    font-size: 48px;
    line-height: 56px;
    font-weight: bold;
    letter-spacing: 0.5px;
    color: var(--primary-color);
    margin: 0 0 8px;
}
.sec-header {
    max-width: 1090px;
    margin: 0 auto 40px;
    text-align: center;
}
.sec-header p {
    font-size: 20px;
    line-height: 28px;
    margin: 0;
}
.services {
    padding: 80px 0;
    border-bottom: 10px solid var(--light-bg);
    background: url('../images/services-bg-left.webp') no-repeat left top, url('../images/services-bg-right.webp') no-repeat right top;
}
.services .row {
    row-gap: 24px;
}
.services .ser-card {
    background: var(--light);
    padding: 24px;
    border-radius: 20px;
    color: var(--primary-color);
    height: 100%;
    transition: all 0.5s ease-in;
}
.services .ser-card:hover {
    transform: translateY(-7px);
}
.services .ser-card h3 {
    font-size: 24px;
    line-height: 30px;
    font-weight: bold;
    margin: 24px 0 12px;
}
.services .ser-card p {
    font-size: 16px;
    line-height: 24px;
    margin: 0;
}
/*--- About us ---*/
.about-us {
    padding: 80px 0;
    overflow: hidden;
}
.about-us .row {
    align-items: center;
    row-gap: 24px;
}
.about-us .row:last-child {
    margin-top: 80px;
}
.about-us .image-wrap img {
    max-width: 100%;
}
.about-us .row:first-child .image-wrap {
    margin-left: calc((100vw - 1296px) / -2);
}
.about-us .row:last-child .image-wrap {
    margin-right: calc((100vw - 1296px) / -2);
    text-align: right;
}
.about-us .sec-heading {
    margin-bottom: 20px;
}
.about-us p {
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 24px;
}
.about-us ul li {
    padding: 10px 0 10px 34px;
    position: relative;
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
    color: var(--primary-color);
}
.about-us ul li:before {
    content: '';
    width: 24px;
    height: 24px;
    background: url('../images/icon-check.svg') no-repeat center;
    position: absolute;
    left: 0;
    top: 14px;
}
/*-- Services ---*/
.customization-services {
    padding-bottom: 80px;
}
.customization-services .inner-wrap h3 {
    font-size: 32px;
    line-height: 40px;
    font-weight: bold;
    color: var(--primary-color);
    margin: 0 0 24px;
}
.customization-services .inner-wrap p {
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 24px;
}
.customization-services .inner-wrap span {
    font-size: 20px;
    line-height: 28px;
    display: block
}
.customization-services .inner-wrap ul li,
.performance-wrap ul li, .management-sol ul li {
    padding: 10px 0 10px 34px;
    position: relative;
    font-size: 20px;
    line-height: 24px;
    font-weight: 500;
    color: var(--primary-color);
}
.customization-services .inner-wrap ul li:before,
.performance-wrap ul li:before, .management-sol ul li:before {
    content: '';
    width: 24px;
    height: 24px;
    background: url(../images/icon-check.svg) no-repeat center;
    position: absolute;
    left: 0;
    top: 11px;
}
.customization-services .inner-wrap>.row {
    align-items: center;
}
.customization-services .image, .performance-wrap .image {text-align: center;}
.customization-services .inner-wrap:not(:last-of-type) {
    margin-bottom: 38px;
    padding-bottom: 38px;
    border-bottom: 1px solid #d9d9d9;
}
/*-- Why Us--*/
.why-us {
    padding: 80px 0;
    background: var(--light-bg);
}
.why-us .sec-heading {
    margin: 0 0 40px;
    text-align: center;
}
.why-us ul {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
.why-us ul li {
    position: relative;
    width: calc(50% - 12px);
    background: var(--white);
    padding: 16px 16px 16px 50px;
    border-radius: 12px;
    font-size: 17px;
    line-height: 24px;
    color: var(--primary-color);
}
.why-us ul li:before {
    content: "";
    width: 24px;
    height: 24px;
    background: url('../images/round-list.svg') no-repeat center;
    position: absolute;
    left: 16px;
}
/*--- Data Exchange ---*/
.data-exchange {
    padding: 80px 0;
}
.data-exchange .row {row-gap: 24px;}
.sec-header span {
    display: block;
    text-align: center;
    font-size: 24px;
    line-height: 30px;
    font-weight: 500;
    margin: 12px 0 0;
}
.data-exchange .item {
    padding: 24px 32px;
    border-radius: 20px;
    background: var(--light);
    height: 100%;
    transition: all 0.4s ease-in;
}
.data-exchange .item:hover {
    transform: translateY(-6px);
}
.data-exchange .item h3 {
    font-size: 24px;
    line-height: 30px;
    color: var(--primary-color);
    font-weight: 700;
    margin-bottom: 12px;
}
.data-exchange .item p {
    margin: 0;
}
.data-exchange .theme-btn {
    margin-top: 40px;
}
/*--- performance-wrap ---*/
.performance-wrap {
    padding-bottom: 80px;
}
.performance-wrap .row {align-items: center;}
.performance-wrap .sec-heading {margin-bottom: 24px;}
.performance-wrap span {
    display: block;
    font-size: 24px;
    line-height: 30px;
    font-weight: bold;
    margin: 0 0 24px;
}
.performance-wrap p {
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 24px;
}
.performance-wrap ul {
    margin-bottom: 24px;
}
/*--- workflows-sec ---*/
.workflows-sec {
    padding: 80px 0;
    background: var(--light);
    text-align: center;
}
.workflows-sec .row {
    row-gap: 24px;
}
.workflows-sec .sec-heading {
    margin-bottom: 40px;
}
.workflows-sec .inner {
    background: var(--white);
    padding: 34px;
    border-radius: 20px;
    height: 100%;
}
.workflows-sec .inner img {
    max-width: 100%;
}
.workflows-sec .inner h3 {
    font-size: 24px;
    line-height: 30px;
    color: var(--primary-color);
    font-weight: bold;
    margin: 0 0 12px;
}
.workflows-sec .inner p {
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 24px;
}
.workflows-sec .inner span {
    display: block;
    font-size: 20px;
    line-height: 21px;
    font-weight: bold;
    margin: 36px 0;
}
/*--- Management Sol ---*/
.management-sol {
    padding: 80px 0;
    border-bottom: 10px solid var(--light-bg);
}
.management-sol .row {align-items: center; row-gap: 24px;}
.management-sol .sec-heading {
    margin: 0 0 24px;
}
.management-sol p {
    font-size: 20px;
    line-height: 28px;
    margin: 0 0 24px;
}
.management-sol ul {
    column-count: 2;
    margin: 0 0 24px;
}
/*--- Footer CSS ---*/
.footer {
    padding: 80px 0 0;
}
.footer .footer-logo {
    display: block;
}
.footer .footer-logo span {
    display: block;
    font-size: 192px;
    line-height: 1;
    font-weight: 900;
    background: linear-gradient(90deg, #3D4392 0%, #0C0840 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.footer-cols {
    padding: 60px 0 80px;
    margin: 0 -10px;
    display: flex;
    flex-wrap: wrap;
}
.footer-cols .footer-col {
    width: 20%;
    padding: 0 10px;
}
.footer h3 {
    font-size: 20px;
    line-height: 22px;
    font-weight: bold;
    color: var(--primary-color);
    margin: 0 0 25px;
}
.footer ul li:not(:last-child) {
    margin-bottom: 15px;
}
.footer ul li a {
    display: block;
    text-decoration: none;
    font-size: 18px;
    line-height: 20px;
    color: var(--text);
    transition: all 0.4s ease-in;
}
.footer ul li a:hover {
    color: var(--primary-color);
    transform: translateX(4px);
}    
.footer .footer-copyright {
    background: linear-gradient(270deg, #3D4392 0%, #0C0840 100%);
    padding: 34px 0;
    text-align: center;
}   
.footer .footer-copyright p{
    color: var(--white);
    margin: 0;
    letter-spacing: 0.5px;
}
/*--- Modal CSS ---*/
.requestQuoteModal .modal-dialog {
    max-width: 865px;
    border-radius: 16px;
}
.requestQuoteModal .modal-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 34px 34px 17px 34px;
}
.requestQuoteModal .btn-close {
    position: absolute;
    background: linear-gradient(270deg, #3D4392 0%, #0C0840 100%);
    width: 33px;
    height: 33px;
    border-radius: 100%;
    padding: 0;
    right: 0;
    top: 0px;
    opacity: 1;
}
.requestQuoteModal .btn-close:after {
    content: "";
    width: 18px;
    height: 18px;
    background: url('../images/icon-close.svg') no-repeat center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.requestQuoteModal .btn-close:focus {
    outline: none;
    box-shadow: none;
}
.requestQuoteModal .modal-header .modal-title {
    font-size: 28px;
    line-height: 32px;
    color: var(--primary-color);
    font-weight: 700;
    margin: 0 0 8px;
}
.requestQuoteModal .modal-header p {
    font-size: 16px;
    line-height: 24px;
    margin: 0;
}
.requestQuoteModal .modal-content {
    border-radius: 16px;
}
.requestQuoteModal .modal-body {
    padding: 0 34px 34px 34px;
}
.requestQuoteModal form .field-label{
    display: block;
    font-size: 15px;
    line-height: 20px;
    font-weight: 600;
    margin: 24px 0 8px;
}
.requestQuoteModal form input, .requestQuoteModal form textarea {
    width: 100%;
    border: 1px solid #4F68E633;
    padding: 8px 16px;
    border-radius: 16px;
    font-size: 16px;
    line-height: 24px;
    color:#646B8D;
    height: 56px;
}
.requestQuoteModal form input:focus, .requestQuoteModal form textarea:focus {
    outline: none;
}
.requestQuoteModal form textarea {height: 112px;}
.requestQuoteModal .theme-btn {
    border: 0;
    margin-top: 36px;
    min-width: 144px;
}
/*-- Responsive CSS ---*/ 
@media (max-width: 1399px) {
    .about-us .row:first-child .image-wrap {
        margin-left: calc((100vw - 1140px) / -2);
    }
    .about-us .row:last-child .image-wrap {
        margin-right: calc((100vw - 1140px) / -2);
    }
    .footer .footer-logo span {font-size: 160px;}
    .hero-section .swiper-button-container {
        max-width: 1140px;
    }
    .hero-section .swiper-button-container {bottom: 155px;}
}
@media (max-width: 1199px) {
    .header .offcanvas {padding-left: 40px;}
    .header .header-actions a:last-child {min-width: inherit;}
    .hero-section h1 {font-size: 52px; line-height: 62px;}
    .hero-section .swiper-button-container {max-width: 960px;}
    .footer .footer-logo span {font-size: 140px;}
    .sec-heading {font-size: 42px; line-height: 48px;}
}
@media (max-width: 991px) {
    .header {padding: 0;}
    .header .navbar-toggler {margin-left: auto; border-color: var(--white); padding: 4px;}
    .header .navbar-toggler:focus {outline: none; box-shadow: none;}
    .header .navbar-toggler-icon {background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23FFFFFF' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");}
    .header .offcanvas {width: 400px !important; padding: 0;}
    .header .offcanvas-header {background: linear-gradient(270deg, #3D4392 0%, #0C0840 100%);}
    .header .navbar-nav .nav-link {color: var(--text); padding: 16px 0; font-weight: 600; border-bottom: 1px solid var(--light-bg);}
    .header .header-actions {
        display: flex;
        flex-direction: column;
        margin-top: auto;
        width: 100%;
    }
    .header .offcanvas .offcanvas-body {height: 100%; display: flex; flex-direction: column;}
    .header .navbar-nav {width: 100%;}
    .header .offcanvas-header .btn-close {
        background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FFF'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414'/%3e%3c/svg%3e");
        padding: 4px;
        opacity: 1;
    }
    .footer .footer-logo span {font-size: 100px;}
    .hero-section .swiper-button-container {max-width: 720px;}
    .hero-section h1 {font-size: 42px; line-height: 52px;}
    .hero-section p {font-size: 18px;}
    .hero-section .scroll-text{padding: 30px 0;}
    .customization-services, .performance-wrap {padding-bottom: 40px;}
    .services, .about-us, .why-us, .data-exchange, .workflows-sec, .management-sol {padding: 40px 0;}
    .sec-header p {font-size: 18px; line-height: 24px;}
    .sec-header {margin: 0 auto 20px ;}
    .sec-heading {font-size: 34px; line-height: 40px;}
    .services .ser-card h3 {font-size: 22px;}
    .services .row {justify-content: center;}
    .about-us .row:first-child .image-wrap {
        margin-left: calc((100vw - 690px) / -2);
    }
    .about-us .row:last-child .image-wrap {
        margin-right: calc((100vw - 690px) / -2);
    }
    .customization-services .inner-wrap>.row, .performance-wrap .row {
        row-gap: 24px;
    }
    .customization-services .inner-wrap:nth-of-type(3) .row {flex-direction: column-reverse;}
    .sec-header span {font-size: 20px;}
    .data-exchange .item h3 {font-size: 22px; line-height: 26px;}
    .management-sol .row {flex-direction: column-reverse;}
    .management-sol .image {text-align: center;}
    .footer-cols .footer-col {width: 33.33%;}
    .footer-cols {row-gap: 24px;}
    .footer {padding: 40px 0 0;}
    .footer-cols {padding: 30px 0 40px;}
    .footer .footer-copyright {padding: 20px 0;}
    .requestQuoteModal .modal-body {padding: 0 24px 24px 24px;}
    .requestQuoteModal .modal-header {padding: 24px 24px 17px 24px;}
    .requestQuoteModal form .field-label {margin: 16px 0 8px;}
}
@media (max-width: 767px) {
    .container {max-width: 100%;}
    .hero-section h1 {font-size: 34px; line-height: 44px;}
    .hero-section p {font-size: 16px; margin: 0 0 20px;}
    .hero-section .swiper-button-next, .hero-section .swiper-button-prev {width: 40px; height: 40px;}
    .sec-heading {font-size: 28px; line-height: 38px;}
    .sec-header p, .sec-header span {font-size: 16px; line-height: 24px};
    .services .ser-card h3 {font-size: 20px; margin: 12px 0;}
    .about-us .row:first-child .image-wrap, .about-us .row:last-child .image-wrap {margin: 0;}
    .about-us .row:last-child {margin-top: 40px; flex-direction: column-reverse;}
    .about-us p, .customization-services .inner-wrap p, .management-sol p, .performance-wrap p {font-size: 16px; line-height: 24px;}
    .customization-services .inner-wrap h3 {font-size: 26px; line-height: 30px;}
    .customization-services .inner-wrap ul li, .performance-wrap ul li, .management-sol ul li, .about-us ul li {font-size: 16px; line-height: 22px; padding: 6px 0 6px 34px;}
    .why-us .sec-heading {margin: 0 0 20px;}
    .data-exchange .item h3, .performance-wrap span {font-size: 20px; line-height: 24px;}
    .data-exchange .theme-btn {margin-top: 20px;}
    .footer ul li a {font-size: 16px; line-height: 18px;}
    .footer h3 {margin: 0 0 15px;}
    .footer .footer-logo span {font-size: 80px;}
    .why-us ul li {width: 100%;}
    .customization-services .inner-wrap:not(:last-of-type) {margin-bottom: 24px; padding-bottom: 24px;}
    .performance-wrap p, .customization-services .inner-wrap p {margin: 0 0 16px;}
    .workflows-sec .inner {font-size: 24px;}
    .theme-btn {padding: 10px 15px; font-size: 16px;}
    .why-us ul li {font-size: 16px;}
    .hero-section .swiper-button-container {bottom: 40px; padding: 0 16px;}
    .hero-section .mySwiper {height: 80vh;}
    .hero-section .scroll-text {position: static; background: rgb(35 30 96 / 100%);}
}
@media (max-width: 575px) {
    .header .navbar {padding: 0;}
    .hero-section .mySwiper {height: 65vh;}
    .sec-heading {font-size: 22px; line-height: 30px;}
    .customization-services .inner-wrap h3 {font-size: 22px; margin-bottom: 16px;}
    .footer .footer-logo span {font-size: 40px;}
    .footer-cols .footer-col {width: 100%;}
    .services .row, .why-us ul, .data-exchange .row, .management-sol .row {row-gap: 16px;}
    .performance-wrap .sec-heading, .performance-wrap span {margin-bottom: 16px;}
    .workflows-sec .sec-heading, .management-sol .sec-heading {margin-bottom: 20px;}
    .workflows-sec .inner h3 {font-size: 19px; line-height: 24px;}
    .workflows-sec .inner p, .workflows-sec .inner span, .data-exchange .item h3, .performance-wrap span {font-size: 17px; line-height: 24px;}
    .workflows-sec .inner span {margin: 16px 0;}
    .management-sol p, .about-us .sec-heading, .about-us p {margin-bottom: 16px;}
    .management-sol ul {column-count: 1; margin: 0 0 20px;}
    .workflows-sec .inner {padding: 24px;}
    .hero-section h1 {font-size: 30px; line-height: 38px;}
    .navbar-brand img {max-width: 131px;}
    .header .navbar-toggler-icon {
        background-size: 24px;
        background-repeat: no-repeat;
        background-position: center;
    }
    .hero-section p {font-size: 14px;}
    .header .navbar-toggler {padding: 2px;}
    .hero-section a {
        font-size: 15px;
        padding: 8px 16px;
    }
    .hero-section .swiper-pagination {margin-top: auto; display: flex;}
}
