/*TABLE OF CONTENTS*/
/*=====================
01. RESET CSS
02. BASE TYPOGRAPHY
03. PRE DEFINE CLASS CSS
04. HEADER CSS
05. HERO SECTION CSS
06. PROMO SECTION CSS
07. FEATURE SECTION CSS
08. FOOTER CSS
09. BACK TO TOP CSS
=======================*/


/* -----------------------------------------
                01. RESET CSS
-------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
* {
    scrollbar-width: thin;
    scrollbar-color: #623a96 #999999;
}
  
/* Width and color for webkit-based browsers */
*::-webkit-scrollbar {
    width: 8px;
}

*::-webkit-scrollbar-track {
    background: #999999;
}

*::-webkit-scrollbar-thumb {
    background: #623a96;
    border-radius: 5px;
}

*::-webkit-scrollbar-thumb:hover {
    background: #555;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}
html{
    overflow-y: scroll;
    font-size: 15px;
}
.res-padding-2, .res-padding {
    padding: 30px 0;
}
.hero-equal-height p {
    font-size: 1.2em;
}
.hero-equal-height.mobile-view p {
    font-size: 1em;
    margin-left: 10px;
}
.hero-equal-height.mobile-view h5 {
    margin-left: 10px;
}

/* -----------------------------------------
                02. BASE TYPOGRAPHY
-------------------------------------------- */

body, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, p, .navbar, .brand, .btn, .btn-simple, a, .td-name, td {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
}

body {
    background-color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    color: #707070;
    font-weight: 400;
    line-height: 1.75;
}

p:not(:last-child) {
    margin-bottom: 1.25em;
}

h1, h2, h3, h4, h5 {
    margin: 0 0 1rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    line-height: 1.21;
    color: initial;
}

h1 {
    margin-top: 0;
    font-size: 3.052em;
    font-weight: 700;
}

h2 {
    font-size: 2.441em;
    font-weight: 700;
}

h3 {
    font-size: 1.953em;
}

h4 {
    font-size: 1.563em;
}

h5 {
    font-size: 1.25em;
}
.fs-3 {
    margin: 0;
    font-size: 1.15em;
    font-weight: 700 !important;
}
.fs-1{
    font-size: 1em;
}
small, .text_small {
    font-size: 0.8em;
}

strong, b{
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
}
.badge {
    display: inline;
    padding: .25rem .5rem;
    font-size: 80%;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .375rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.badge-pill {
    padding-right: .875em;
    padding-left: .875em;
    border-radius: 50rem;
}
.fw-600 {
    font-weight: 600 !important;
}
/*========================================
        03. PRE DEFINE CLASS CSS
==========================================*/
.rounded {
    border-radius: 1rem!important;
}
.ptb-50{
    padding: 50px 0;
}
.ptb-100{
    padding: 100px 0;
}
.pt-100{
    padding-top: 100px;
}
.pt-150{
    padding-top: 150px;
}
.pb-100{
    padding-bottom: 100px;
}
.mt--120{
    margin-top: -150px !important;
}
.mb--120{
    margin-bottom: -100px !important;
}
.gray-light-bg{
    background: #FAF8FF;
}
.primary-bg{
    background: #21174D;
}
.secondary-bg{
    background: #623A96;
}
.color-primary{
    color: #21174D;
}
.color-secondary{
    color: #623A96;
}
.gradient-bg{
    background-image: linear-gradient(to bottom, rgba(31, 15, 53), rgba(124, 75, 187)) !important;
}

.white-bg{
    background: #ffffff;
}

a{
    color: #21174D;
}
a:hover{
    color: #623A96;
    text-decoration: none;
}

.color-1{
    color: #fff;
}
.color-1-bg{
    background: #21174D;
}

.color-2{
    color: #fff;
}
.color-2-bg{
    background: #623A96;
}

.color-3{
    color: #1F164C;
}
.color-3-bg{
    background: #BBB6C6;
}
.color-4, .ratting-color{
    color: #ff7c3f;
}
.color-4-bg{
    background: rgba(255, 124, 63, 0.15);
}

.color-5, .success-color{
    color: #2ebf6d;
}
.color-5-bg{
    background: rgba(46, 191, 109, 0.15);
}
.color-6{
    color: #1F164C;
}
.color-6-bg{
    background: #D3CAE5;
}
.is-invalid {
    color: #dc3545;
}
.is-valid {
    color: #2ebf6d;
}
.form-group label {
    font-weight: 600;
    color: #623A96;
}
.animated-btn{
    transition: all .25s ease-in-out;
}
.animated-btn:hover{
    transform: scale(1) translateY(-4px) translateZ(20px);
}
.outline-btn, .solid-btn, .primary-solid-btn{
    padding: 10px 25px;
    font-family: 'Montserrat', sans-serif
}

.primary-solid-btn{
    border-color: #3264f5;
    background: #3264f5;
    color: #ffffff;
}
.primary-solid-btn:hover{
    background: transparent;
    color: #202877;
    border-color: #202877;
}
.solid-btn{
    color: #fff;
    -webkit-box-shadow: 0 20px 30px 0 rgba(67,37,204,.2);
    box-shadow: 0 20px 30px 0 rgba(67,37,204,.2);
    background: #21174D;
    border-radius: 30px;
    font-weight: 600;
}

.solid-btn:hover{
    background: #623A96;
    color: #fff;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.saas-section .saas-title {
    font-weight: 600;
}
.outline-btn {
    border-radius: 30px;
    color: #21174D;
    display: inline-block;
    border: 2px solid #21174D;
}
.outline-btn:hover{
    color: #fff;
    background: #21174D;
    -webkit-box-shadow: 0 10px 30px 0 rgba(67,37,204,.12);
    box-shadow: 0 10px 30px 0 rgba(67,37,204,.12);
}
.footer-title {
    font-size: 1rem;
    font-weight: 500 !important;
}
.primary-bg h1, .primary-bg p{
    color: #fff;
}
.solid-white-btn, .outline-white-btn{
    padding: 12px 30px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}
.solid-white-btn{
    background: #ffffff;
    border-color: #ffffff;
    color: #623A96;
    border-radius: 30px;
}
.solid-white-btn:hover{
    background: transparent;
    color: #ffffff;
}
.outline-white-btn{
    border-radius: 30px;
    color: #ffffff;
    border-color: #ffffff;
}
.outline-white-btn:hover{
    background: #ffffff;
    color: #623A96;
}

/*icon size*/
.icon-sm {
    font-size: 25px;
    line-height: 25px;
}

.icon-md {
    font-size: 40px;
    line-height: 40px;
}

.icon-lg {
    font-size: 50px;
    line-height: 50px;
}

/*form field css*/
.g-recaptcha {
    width: 100%; /* Adjust the width as needed */
    margin: 0 auto; /* Center the reCAPTCHA widget */
}
.form-control {
    border-color: #ebebeb;
    padding: 0.75rem 0.85rem;
    height: calc(2.56em + 0.75rem + 2px);
}
.form-control.is-invalid, .was-validated .form-control:invalid {
    background-size: 1.25rem;
}
.form-control:focus{
    outline: none;
    box-shadow: none;
}

.navbar {
    background-color: #21174D !important;
}
.header nav.navbar:before {
    display: none;
}
.navbar-toggler {
    padding: 0;
    font-size: 2.5rem;
}

input[type]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
select::-webkit-input-placeholder,
select.form-control.has-value{
    color: #b1b1b1 !important;
    font-size: 13px;
}

input[type]:-moz-placeholder,
textarea:-moz-placeholder,
select:-moz-placeholder,
select.form-control.has-value{
    /* Firefox 18- */
    color: #b1b1b1;
    font-size: 13px;
}

input[type]::-moz-placeholder,
textarea::-moz-placeholder,
select::-moz-placeholder,
select.form-control.has-value{
    /* Firefox 19+ */
    color: #b1b1b1;
    font-size: 13px;
}

input[type]:-ms-input-placeholder,
textarea:-ms-input-placeholder,
select:-ms-input-placeholder,
select.form-control.has-value{
    color: #b1b1b1;
    font-size: 13px;
}

.section-heading h2 span{
    font-weight: 400;
    font-size: 2rem;
}

.z-index{
    z-index: 9;
}

/*=========================================
            04. HEADER CSS
============================================*/
.affix {
    background-color: #202877;
    -webkit-transition: padding 0.2s ease-out;
    -moz-transition: padding 0.2s ease-out;
    -o-transition: padding 0.2s ease-out;
    transition: padding 0.2s ease-out;
}

.white-bg.affix, .custom-nav.affix {
    background: #ffffff;
    border-bottom: 1px solid #ebebeb;
}

.white-bg.affix ul li a {
    color: #081d43 !important;
    opacity: 0.8;
}

.white-bg.custom-nav ul li a:hover {
    opacity: 1;
}

.bg-transparent ul li a:hover, .white-bg.affix ul li a:hover {
    opacity: 1;
}

.bg-transparent.affix {
    background-image: linear-gradient(to left, #3264f5, #4a54e8, #5b42db, #682ccb, #623A96) !important;
}

.navbar-toggler{
    color: #ffffff;
}

/*main menu new style*/
.header nav.navbar {
    padding: 0 1rem;
    transition: all .3s ease-in-out;
}
.header nav.navbar:before {
    content: "";
    background: url(../img/header-nav-bg.png)no-repeat right top;
    height: 84px;
    width: 100%;
    position: absolute;
    right: 5px;
    top: 0;
}
.navbar-brand {
    font-size: inherit;
    height: auto;
    margin-bottom: -8px;
}
.navbar.fixed-top {
    box-shadow: 2px 2px 10px rgb(0 0 0 / 7%);
}

.menu {
    display: block;
}

.menu li {
    display: inline-block;
    position: relative;
}

.menu li:first-child {
    margin-left: 0;
}

.menu li a {
    font-size: 1rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-decoration: none;
    padding: 10px 40px;
    display: block;
    transition: all 0.3s ease-in-out 0s;
    color: #21174D;
}
.menu li a.solid-btn {
    color: #fff;
    box-shadow: none;
    padding: 10px 20px;
}

.menu li a:hover, .menu li:hover>a {
    opacity: 1;
}
.menu li a.active{
    color: #9747FF;
}

.menu ul {
    visibility: hidden;
    opacity: 0;
    margin: 0;
    padding: 0;
    width: 200px;
    position: absolute;
    left: 0;
    background: #fff;
    z-index: 9;
    border-radius: 4px;
    transform: translate(0,20px);
    transition: all 0.3s ease-out;
    -webkit-box-shadow: 0 4px 10px rgba(0,0,0,.15);
    box-shadow: 0 4px 10px rgba(0,0,0,.15);
}

.menu ul.sub-menu li{
    border-bottom: 1px solid #ebebeb;
}
.menu ul.sub-menu li:last-child{
    border-bottom: 0;
}
.menu ul:after {
    bottom: 100%;
    left: 35px;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(255, 255, 255, 0);
    border: solid transparent;
    border-bottom-color: #fff;
    border-width: 8px;
    margin-left: -8px;
}
.menu li a.dropdown-toggle::after {
    position: relative;
    left: 2px;
    vertical-align: middle;
}
.menu ul li {
    display: block;
    float: none;
    background: none;
    margin: 0;
    padding: 0;
}
.navbar-brand {
    padding: 0;
    margin: 0;
}
.menu ul li a {
    text-transform: inherit;
    font-size: 13px;
    display: block;
    color: #424141;
    padding: 8px 15px;
    font-family: 'Montserrat', sans-serif;
}
.menu ul li a:hover, .menu ul li:hover>a {
    color: #ffffff;
    background: #623A96;
}

.menu ul.sub-menu li:first-child a:hover,
.menu ul.sub-menu li:last-child ul li:first-child a:hover{
    border-radius: 4px 4px 0 0;
}
.menu ul.sub-menu li:last-child a:hover,
.menu ul.sub-menu li:last-child ul li:last-child a:hover{
    border-radius: 0 0 4px 4px;
}
.menu ul.sub-menu li:last-child ul li a:hover{
    border-radius: 0;
}

.menu li:hover>ul {
    visibility: visible;
    opacity: 1;
    transform: translate(0,0);
}

.menu ul ul {
    left: 200px;
    top: 0;
    visibility: hidden;
    opacity: 0;
    transform: translate(20px,20px);
    transition: all 0.2s ease-out;
}

.menu ul.sub-menu ul:after {
    left: -8px;
    top: 10px;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(255, 255, 255, 0);
    border: solid transparent;
    border-right-color: #fff;
    border-width: 8px;
}

.menu li>ul ul:hover {
    visibility: visible;
    opacity: 1;
    transform: translate(0,0);
}
.responsive-menu {
    display: none;
    width: 100%;
    padding: 20px 15px;
    background: #374147;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
}

.responsive-menu:hover {
    background: #374147;
    color: #fff;
    text-decoration: none;
}

@media (min-width: 320px) and (max-width: 992px) {
    .menu li{
        display: block;
    }

    .white-bg.affix, .custom-nav.affix, .navbar.white-bg {
        background: #ffffff !important;
        border-bottom: 1px solid #ebebeb;
    }

    .white-bg.custom-nav ul li a, .custom-nav ul li a {
        color: #081d43 !important;
    }

    .white-bg.navbar .navbar-toggler span {
        color: #202877;
    }
}

@media (min-width: 992px) {
    .navbar {
        border-bottom: 1px solid rgba(0, 0, 0, 0);
        background: transparent;
        -o-transition: border-bottom .3s ease-in-out, background .3s ease-in-out, padding .3s ease-in-out;
        -webkit-transition: border-bottom .3s ease-in-out, background .3s ease-in-out, padding .3s ease-in-out;
        -moz-transition: border-bottom .3s ease-in-out, background .3s ease-in-out, padding .3s ease-in-out;
        transition: border-bottom .3s ease-in-out, background .3s ease-in-out, padding .3s ease-in-out;
        -webkit-backface-visibility: hidden;
    }
}

@media (min-width: 768px) and (max-width: 979px) {
    .mainWrap {
        width: 768px;
    }
    .careerPage .table-job-data tr th {
        width: 30%;
    }
    .careerPage .solid-btn.btn-apply {
        float: none;
        margin-left: auto;
        margin-right: auto !important;
        max-width: 340px;
        display: block;
        margin-top: 30px;
    }
    .menu ul {
        top: 37px;
    }

    .menu li a {
        padding: 8px 15px;
    }

    a.homer {
        background: #374147;
    }
}

@media (max-width: 767px) {
    .careerPage .table-job-data tr th {
        width: 50%;
    }
    .careerPage .solid-btn.btn-apply {
        float: none;
        margin-left: auto;
        margin-right: auto !important;
        max-width: 340px;
        display: block;
        margin-top: 30px;
    }
    .responsive-menu{
        display: block;
    }
    .header nav.navbar{
        padding: 0.5rem 1rem;
    }
    .mainWrap {
        width: auto;
        padding: 50px 20px;
    }

    nav {
        margin: 0;
        background: none;
    }

    .menu li {
        display: block;
        margin: 0;
    }

    .menu li a {
        padding: 8px 15px;
    }

    .menu li a:hover,.menu li:hover>a {
        background: #3264f5;
        color: #fff;
    }

    .menu ul {
        visibility: hidden;
        opacity: 0;
        top: 0;
        left: 0;
        width: 100%;
        transform: initial;
    }

    .menu li:hover>ul {
        visibility: visible;
        opacity: 1;
        position: relative;
        transform: initial;
    }

    .menu ul ul {
        left: 0;
        transform: initial;
    }

    .menu li>ul ul:hover {
        transform: initial;
    }
}

.custom-badge{
    position: absolute;
    right: 10px;
}

/*==================================
        05. HERO SECTION CSS
========================================*/
.hero-equal-height {
    position: relative;
    -js-display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    padding-top: 65px;
    padding-bottom: 65px;
}
.gradient-overlay {
    position: relative;
    width: 100%;
}
.gradient-overlay .title {
    font-size: 4em;
    font-weight: 700;
    margin-bottom: 10px;
}
.gradient-overlay .lead {
    font-size: 1.5em;
    font-weight: 600;
}
.hide-sm {
    display: none;
}
.action-btns.download-btn {
    margin-top: 6rem !important;
    display: flex;
    justify-content: center;
}
.action-btns.download-btn a {
    display: block;
}
.action-btns.download-btn a img {
    max-height: 70px;
}
.gradient-overlay:before{
    position: absolute;
    content: '';
    /*background-image: linear-gradient(to bottom, rgba(31, 15, 53), rgba(124, 75, 187));*/
    background-color: #21174D;
    opacity: 1;
    width: 55%;
    height: 100%;
    top: 0;
    left: 0;
}
.btn-sm {
    font-size: 0.75rem;
    padding: 5px 10px;
}
.solid-bg {
    background-color: #21174D;
}
.solid-bg-light {
    background-color: #623A96;
}
.solid-bg-light .solid-btn,
.careerPage .solid-btn {
    background-color: #9747FF;
}
.solid-bg-light .solid-btn:hover {
    background-color: #21174D;
}
.section-heading h3 {
    color: #21174D;
    font-weight: 600;
}
.section-heading h2 {
    color: #623A96;
    font-weight: 700;
}
.section-heading p.lead {
    color: #623A96;
    font-weight: 700;
}
.para-desc {
    color: #21174D;
    font-weight: 600;
}
.hero-content {
    font-weight: 500;
    font-size: 1.3em;
}
/*======================================
        06. PROMO SECTION CSS
==================================*/
.promo-new .promo-mobile {
    max-width: 400px;
}
.promo-new-section .container {
    max-width: 1340px;
}

/*==========================================
        07. FEATURES CSS
=======================================*/
.screen-slider-content {
    position: relative
}
.screen-slider-content .features-container {
    margin: 0 20px;
    background-color: #fff;
}
.owl-theme .owl-nav {
    margin-top: -10px;
}
.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {
    display: block;
}
.owl-stage-outer {
    position: relative;
}
.client-section .owl-carousel .owl-dots.disabled, 
.client-section .owl-carousel .owl-nav.disabled {
    display: none !important;
}
.client-section .client-item {
    text-align: center;
}
.owl-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.owl-carousel .owl-nav {
    display: grid !important;
    justify-content: space-between;
    align-items: center;
}
.owl-carousel .owl-nav .owl-prev {
    grid-column: 1;
    justify-self: left;
    margin-left: -80px;
}
.owl-carousel .owl-nav .owl-next {
    grid-column: 2;
    justify-self: right;
    margin-right: -80px;
}
.owl-carousel .owl-nav .owl-next:focus-visible,
.owl-carousel .owl-nav .owl-next:focus,
.owl-carousel .owl-nav .owl-prev:focus-visible,
.owl-carousel .owl-nav .owl-prev:focus {
    box-shadow: none;
    border: none;
    outline: none;
}
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-prev {
    line-height: 1 !important;
    font-size: 4em !important;
    background-color: #ffffff !important;
    border-radius: 50%;
    height: 50px;
    width: 50px;
    box-shadow: -1px 1px 10px #e3e3e3;
}
.owl-carousel .owl-nav .owl-next:hover,
.owl-carousel .owl-nav .owl-prev:hover {
    background-color: #623A96 !important;
    color: #fff !important;
}
.owl-carousel .owl-prev span, 
.owl-carousel .owl-next span {
    position: relative;
    top: -10px;
    font-weight: 300;
    color: #623A96;
} 
.owl-carousel .owl-next span {
    left: 2px;
}
.owl-carousel .owl-prev span {
    left: -2px;
}
.owl-carousel .owl-nav .owl-next:hover span,
.owl-carousel .owl-nav .owl-prev:hover span {
    color: #fff !important;
}
.slider-title {
    color: #623A96;
    min-height: 45px;
}
.screen-carousel p {
    color: #747474;
    font-weight: 500;
}

@media (min-width: 320px) and (max-width: 1200px){
    .screenshot-frame{
        display: none;
    }
}
.screen-carousel .owl-item img {
    -webkit-transform: scale(.85);
    transform: scale(.85);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    border: 1px solid #ebebeb;
    border-radius: 30px
}

.screen-carousel .owl-item.active.center img {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.dot-indicator.owl-theme button.owl-dot span{
    display: inline-block;
    width: 12px;
    height: 12px;
    box-sizing: border-box;
    background: #d8d8d8;
    border-radius: 50%;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
    transition: 0.3s;
}
.dot-indicator.owl-theme button.owl-dot:focus{
    border: none;
    outline: none;
}
.dot-indicator.owl-theme button.owl-dot.active span{
    background: #623A96;
    border: 2px solid transparent;
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
}
.screen-carousel.dot-indicator.owl-theme .owl-nav.disabled+.owl-dots{
    margin-top: 20px;
}

/*=========================================
            08. BACK TO TOP CSS
============================================*/

.scroll-top.open {
    bottom: 30px;
}
button.scroll-top:focus{
    outline: none;
}
.scroll-top {
    width: 40px;
    height: 40px;
    line-height: 40px;
    position: fixed;
    bottom: 105%;
    right: 50px;
    font-size: 16px;
    border-radius: 4px;
    z-index: 999;
    color: #ffffff;
    text-align: center;
    cursor: pointer;
    background: #623A96;
    transition: 1s ease;
    border: none;
}
.scroll-top span {
    color: #fff;
}

.scroll-top:after {
    position: absolute;
    z-index: -1;
    content: '';
    top: 100%;
    left: 5%;
    height: 10px;
    width: 90%;
    opacity: 1;
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
}

/*404 page*/
.error-content .notfound-404 {
    position: relative;
    height: 280px;
    z-index: 2;
    margin-bottom: 30px;
}
.error-content .notfound-404 h1 {
    font-size: 230px;
    font-weight: 700;
    margin: 0;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-size: cover;
    background-position: center;
}


@media (min-width: 320px) and (max-width: 767px){
    .error-content .notfound-404{
        height: auto;
        display: block;
        position: relative;
    }
    .error-content .notfound-404 h1{
        font-size: 80px;
        position: relative;
    }

}

/*=========================================
           09. FOOTER CSS
============================================*/
.social-list li img {
    max-width: 25px;
}
.copyright-text a:hover {
    opacity: 1;
    text-decoration: none;
}
.footer-seperator {
    display: block;
    width: 100%;
    height: 2px;
    background-color: #623A96;
}
.copyright-text {
    font-size: 12px;
    color: #fff;
    font-weight: 400;
}
.footer-top{
    padding: 65px 0;
}
.social-icon {
    text-align: right;
}
.footer-logo {
    max-width: 150px;
}
@media (min-width: 320px) and (max-width: 567px){
    .footer-top{
        padding: 50px 0;
    }
}

/* Modal Pop Up */
.modal-title {
    color: #623A96;
    font-weight: 700;
    text-transform: uppercase;
}
.modal-header, .modal-footer {
    border-color: #f0f0f0;
}

/*404 page*/
.full-screen{
    min-height: 100vh;
    position: relative;
    width: 100%;
    z-index: 1;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}
.error-content .notfound-404 {
    position: relative;
    height: 280px;
    z-index: 2;
    margin-bottom: 30px;
}
.error-content .notfound-404 h1 {
    font-size: 230px;
    font-weight: 700;
    margin: 0;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-size: cover;
    background-position: center;
}

/*=========================================
            10. BACK TO TOP CSS
============================================*/
.scroll-top.open {
    bottom: 30px;
}
button.scroll-top:focus{
    outline: none;
}
.scroll-top {
    width: 40px;
    height: 40px;
    line-height: 40px;
    position: fixed;
    bottom: 105%;
    right: 50px;
    font-size: 16px;
    border-radius: 4px;
    z-index: 999;
    color: #ffffff;
    text-align: center;
    cursor: pointer;
    background: #9747FF;
    transition: 1s ease;
    border: none;
}
.scroll-top span {
    color: #fff;
}

.scroll-top:after {
    position: absolute;
    z-index: -1;
    content: '';
    top: 100%;
    left: 5%;
    height: 10px;
    width: 90%;
    opacity: 1;
    background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
}

/*=========================================
        11. PARTNER SECTION CSS
============================================*/

.card-bottom-line {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    transition: background 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.card-bottom-line:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background: #0073ec;
    transition: width 0.3s ease-in-out;
}

.partner-logo img {
    max-width: 125px;
}

.card-bottom-line:hover:after {
    width: 100%;
}

a.view-details-link {
    font-size: 14px;
    font-weight: 600;
}

a.view-details-link span {
    padding-left: 2px;
    font-size: 11px;
    vertical-align: middle;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
}

a.view-details-link:hover span {
    transform: translateX(3px);
    margin-left: 6px;
}


.big-text {
    position: relative;
    font-size: 120px;
    line-height: 130px;
    font-weight: 700;
}

.big-text span {
    position: absolute;
    font-size: 16px;
    top: -65px;
}

@media (min-width: 320px) and (max-width: 575px) {
    .big-text {
        font-size: 60px !important;
        line-height: 80px !important;
    }

    .big-text span {
        top: -35px;
    }
}

.full-image[data-mask="1"] {
    opacity: 0.1;
}

.full-image[data-mask="2"] {
    opacity: 0.2;
}

.full-image[data-mask="3"] {
    opacity: 0.3;
}

.full-image[data-mask="4"] {
    opacity: 0.4;
}

.full-image[data-mask="5"] {
    opacity: 0.5;
}

.full-image[data-mask="6"] {
    opacity: 0.6;
}

.full-image[data-mask="7"] {
    opacity: 0.7;
}

.full-image[data-mask="8"] {
    opacity: 0.8;
}

.full-image[data-mask="9"] {
    opacity: 0.9;
}

.full-image[data-mask="0"] {
    opacity: 1;
}

.full-image {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

.full-image.to-bottom {
    object-position: bottom;
}
.full-image.to-center{
    object-position: center;
}
.full-image.to-top{
    object-position: top;
}

/*==================================
       09. TESTIMONIAL CSS
=======================================*/
.testimonial-single {
    display: flex;
    position: relative;
    font-weight: 500;
    color: #21174D;
    line-height: 1.5;
    font-size: 1rem;
    min-height: 750px;
    flex-direction: column;
    justify-content: space-between;
}
.testimonial-section.mobile-testimonials .client-info-wrap {
    margin-top: 10px;
}
.testimonial-frame .client-info,
.testimonial-frame .client-info h3 {
    color: #21174D;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 500;
}

/*owl carousel slider*/
.testimonial-frame .client-img img{
    width: 60px;
    display: initial;
}

@media (min-width: 320px) and (max-width: 767px){
    .error-content .notfound-404{
        height: auto;
        display: block;
        position: relative;
    }
    .error-content .notfound-404 h1{
        font-size: 80px;
        position: relative;
    }

}

/*=========================================
            15. BLOG SECTION CSS
============================================*/
.single-blog-card{
    margin-bottom: 25px;
}
.single-blog-card span.category {
    z-index: 2;
    top: 10px;
    right: 10px;
}
.single-blog-card .card-body{
    padding: 1.75rem;
}

.meta-list {
    opacity: 0.8;
    font-size: 90%;
}

.meta-list li.list-inline-item:not(:last-child) {
    margin-right: 0.7rem;
}
.single-blog-card a{
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
}
.single-blog-card a, .single-blog-card a:hover {
    text-decoration: none;
}

a.detail-link {
    display: inline-block;
    text-decoration: none;
    color: #495057;
    font-weight: 600;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
}


a.detail-link span {
    font-size: 12px;
    vertical-align: middle;
    -webkit-transition-duration: .3s;
    transition-duration: .3s;
    color: #3264f5;
}


a.detail-link:hover {
    color: #7202bb;
}
a.detail-link:hover span{
    transform: translateX(3px);
    margin-left: 8px;
}

/*blog page and single css*/
.row-post-thumbnail .post {
    border: 0;
    padding-bottom: 25px;
    margin-bottom: 25px;
}
.post {
    border-bottom: 1px solid #f0f0f0;
    padding: 0 0 35px;
    margin: 0 0 45px;
}

.post-preview {
    padding-bottom: 5px;
    border-radius: .1875rem;
    transition: all .3s ease-in-out;
}

.post-preview img {
    border-radius: .1875rem;
    width: 100%;
    display: block;
}

.post-header {
    margin: 15px 0 20px;
}
.post-header .post-title {
    font-size: 1.5625rem;
    margin-bottom: 0;
    color: #333333;
}
.post-header .post-title a{
    color: #5d5d5d;
}
.post-header .post-title a:hover{
    color: #7202bb;
}
.post-meta {
    list-style: none;
    font-size: .8125rem;
    padding: 0;
    margin: 0;
}
.post-meta a, .post-meta li{
    color: #495057;
    opacity: 0.8;
}
.post-meta a:hover{
    color: #7202bb;
    opacity: 1;
}
.post-meta > li {
    position: relative;
    display: inline-block;
    padding: 0 14px 0 0;
    margin: 0 14px 0 0;
}

.post-meta > li:not(:last-child):after {
    position: absolute;
    content: '/';
    right: -5px;
    top: 0;
}

.post-content p{
    margin-bottom: 5px;
}
.post-more a span{
    vertical-align: middle;
}

.post-footer{
    margin-top: 15px;
}

/*blog single css*/
.post-content blockquote {
    border-left: 2px solid #eaeaea;
    padding: 10px 0 10px 40px;
    margin: 40px 0;
    transition: all .3s ease-in-out;
}
.post-content blockquote:hover {
    border-color: #7202bb;
}
.blockquote {
    font-weight: 500;
    color: #222;
}
.post-content ol {
    list-style-type: decimal;
}
.post-content ul, .post-content ol {
    margin: 15px 0 15px 40px;
}

/*comments css*/
.comment, .comment-shop {
    border-bottom: 1px solid #f0f0f0;
    padding: 30px 0 0;
}
.comment-author, .comment-author-shop {
    margin: 5px 0 0;
    height: 64px;
    width: 64px;
    float: left;
}

.comment-body, .comment-body-shop {
    position: relative;
    padding: 0 0 30px;
    margin: 0 0 0 85px;
}
.comment-meta, .comment-meta-shop {
    margin: 0 0 15px;
}
.comment-meta-date{
    font-size: 13px;
}
.children > .comment, .children > .comment-shop {
    border: 0;
    border-top: 1px solid #f0f0f0;
    margin-left: 85px;
}
.comment-meta-author a, .comment-meta-author-shop a {
    font-weight: 500;
    color: #222;
}
.comment-meta-date a, .comment-meta-date-shop a {
    color: #788487;
    opacity: .6;
}
.comment-meta-date a:hover, .comment-meta-date a:focus, .comment-meta-date-shop a:hover, .comment-meta-date-shop a:focus {
    color: #3264f5;
    opacity: 1;
}

.comment-reply, .comment-reply-shop {
    position: absolute;
    right: 0;
    top: 0;
    font-size: 13px;
}

.comment-reply > a, .comment-reply-shop > a {
    background: #f4f4f4;
    border-radius: .1875rem;
    padding: 5px 15px;
    display: block;
    color: #222;
}
.comment-reply > a:hover, .comment-reply > a:focus, .comment-reply-shop > a:hover, .comment-reply-shop > a:focus {
    background: #7202bb;;
    color: #fff;
}

.comment-list + .comment-respond, .comment-list-shop + .comment-respond {
    margin-top: 30px;
}


/*pagination*/
.custom-pagination-nav ul li{
    text-align: center;
    margin-right: 10px;
}
.custom-pagination-nav ul li:focus, .custom-pagination-nav ul li a:focus{
    outline: none;
    box-shadow: none;
}
.custom-pagination-nav ul li a.page-link{
    width: 35px;
    height: 35px;
    line-height: 33px;
    border-radius: 100%;
    padding: inherit;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    color: #3264f5;
}
.custom-pagination-nav ul li a.page-link:hover{
    background: #7202bb;
    color: #FFFFFF;
}
.custom-pagination-nav ul li.page-item:first-child .page-link,
.custom-pagination-nav ul li.page-item:last-child .page-link{
    border: none;
    background: transparent;

}
.custom-pagination-nav ul li.page-item:first-child .page-link:hover,
.custom-pagination-nav ul li.page-item:last-child .page-link:hover{
    color: #7202bb;
}
.custom-pagination-nav ul li.page-item.active .page-link{
    background-color: #7202bb;
    border-color: #7202bb;
}
/*blog sidebar*/

.widget-search {
    padding: 0;
    border: 0;
}
.widget {
    margin-bottom:50px;
}
.widget-search form {
    position: relative;
}

.widget-search .search-button {
    background-color: transparent;
    border: none;
    position: absolute;
    top: 50%;
    height: 100%;
    right: .875rem;
    transform: translateY(-50%);
    transition: all .3s ease-out;
    color: #ddd;
}
.widget-search .search-button span{
    font-size: 20px;
    line-height: 32px;
}
button, [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button;
}
.widget .widget-title {
    margin-bottom: 24px;
}

.widget .widget-title > h6 {
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    font-weight: 600;
    font-size: 12px;
    margin: 0;
    color: #788487;
}
.widget ul {
    margin-bottom: 0;
}
.widget-categories ul li:first-child, .widget-recent-entries ul li:first-child, .widget-recent-entries-custom ul li:first-child {
    padding-top: 0;
}
.widget-categories ul li, .widget-recent-entries ul li, .widget-recent-entries-custom ul li {
    border-bottom: 1px solid #f0f0f0;
    padding: 10px 0;
    margin: 0;
}
.widget a {
    color: #788487;
    display: block;
    font-size: 14px;
}
.widget a:hover{
    color: #7202bb;
}
.widget-recent-entries-custom .wi {
    float: left;
    width: 80px;
}
.widget-recent-entries-custom .wb {
    padding-left: 16px;
    width: 100%;
}
.widget-recent-entries-custom .wi, .widget-recent-entries-custom .wb {
    vertical-align: middle;
    display: table-cell;
}
.post-date {
    font-size: 13px;
    color: #a3a6a8;
    display: block;
    margin: 0;
}
.tag-cloud > a, .post-tags > a {
    background: #f4f4f4;
    border-radius: .1875rem;
    position: relative;
    display: inline-block;
    padding: 6px 15px;
    margin: 5px 8px 5px 0;
    text-transform: uppercase;
    font-size: 10px !important;
    color: #222;
    font-weight: 500;
    font-family: 'Montserrat', sans-serif;
}
.tag-cloud > a:hover, .post-tags > a:hover {
    background: #3264f5;
    color: #fff;
    opacity: 1;
}

/*========================
    08. HOW IT WORK
===============================*/
.work-process-wrap{
    display: block;
    width: 100%;
}
.single-work-process{
    position: relative;
    float: left;
    margin: 0 15px;
    width: calc(25% - 30px);
}
.work-process-icon-wrap{
    position: relative;
    display: inline-block;
    width: 70px;
    height: 70px;
}
@media screen and (max-width: 991px){
    .single-work-process {
        width: calc(50% - 30px);
    }
    .work-process-divider {
        width: calc(100% - 145px);
    }
    .single-work-process:nth-child(2n) .work-process-divider {
        display: none;
    }
}

@media screen and (max-width: 767px){
    .single-work-process {
        width: 100%;
        text-align: center;
        margin-left: 0;
        margin-right: 0;
    }
    .work-process-divider {
        display: none;
    }
}
.work-process-divider {
    background-image: linear-gradient(90deg, #73778c, #73778c 40%, transparent 40%, transparent 100%);
}
.single-work-process .work-process-divider{
    position: absolute;
    top: 40px;
    width: calc(100% - 130px);
    height: 1px;
    background-image: linear-gradient(90deg, #73778C, #73778C 40%, transparent 40%, transparent 100%);
    background-size: 12px 1px;
}
.single-work-process .work-process-divider:after {
    content: '\e628';
    font-family: 'themify';
    position: absolute;
    right: -30px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 20px;
}
.work-process-icon-wrap i{
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.work-process-icon-wrap .process-step{
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    position: absolute;
    right: -20px;
    top: -20px;
    font-size: 20px;
    font-weight: 700;
    font-family: 'Work Sans', sans-serif;
}
.single-work-process:last-child .work-process-divider {
    display: none !important;
}

/*=========================================
          07. FEATURE SECTION CSS
==========================================*/*
.about-img {
    border-radius: 40px;
}
.feature-section {
    position: relative;
}
.feature-content-wrap .tab-pane img {
    border-radius: 40px;
    border: 1px solid #f2f2f2;
}
.feature-section:before {
    content: "";
    background-color: #FAF8FF;
    height: 100%;
    width: 60%;
    top: 0;
    right: 0;
    position: absolute;
    z-index: -999;
    border-bottom-left-radius: 1rem;
}
* .feature-tab li a.nav-link {
    margin: 0 24px;
    border: 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    color: #B8B8B8;
    box-shadow: -1px 7px 10px rgb(0 0 0 / 21%);
    background-color: #fff;
    text-align: center;
    padding: 4px 10px;
    border-radius: 50%;
}
.feature-tab li a.nav-link img{
    width: 30px;
    height: 30px;
}
* .feature-tab li {
    position: relative;
}
* .feature-tab li a.nav-link:after {
    content: "";
    height: 2px;
    background-color: #f1f1f1;
    width: 80%;
    position: absolute;
    z-index: -2;
    right: -30px;
}
* .feature-tab li a.nav-link.active:after {
    background-color: #623A96;
}
* .feature-tab li:last-child a.nav-link:after {
    height: 0px;
    width: 0;
}
.feature-tab li a.nav-link.active {
    color: #fff;
    background-color: #623A96;
}
.tab-content-wrap a{
    text-decoration: none;
}

/*======================================
    06. PROMO SECTION CSS
==================================*/
.promo-content-wrap span{
    font-size: 10px;
    letter-spacing: 0.5px;
}

/*new promo box*/
.single-promo p {
    font-weight: 600;
}
.single-promo span {
    font-size: 3.5rem;
    font-weight: 700;
}
.single-promo .digit-box {
    border-radius: 1rem;
    background-color: #623A96;
    padding: 20px 0;
}

/*===============================
    CLIENT SECTION CSS
==================================*/
.clients-border-box {
    padding: 40px 50px 30px;
    border: 1px solid #623A96;
    position: relative;
    z-index: 1;
    border-radius: 10px;
}
.clients-border-box .client-img {
    max-height: 60px;
}
.client-section .client-item .saperator {
    content: "";
    height: 80px;
    width: 1px;
    background-color: #623A96;
    display: inline-block;
    position: absolute;
    left: 0px;
    top: -10px;
}
.client-section .client-box {
    margin-right: -15px;
    margin-left: -15px;
}
.clients-border-box .client-item p {
    font-weight: 600;
    font-size: 1rem;
    position: relative;
    line-height: 1;
    color: #000;
}
.client-section .client-item.logo-lla .saperator,
.client-section .client-item.logo-beg .saperator,
.client-section .client-item.london-gatewick .saperator,
.client-section .client-item.logo-santiago .saperator {
    top: -25px;
}
.client-section .client-item.pba .saperator {
    top: -24px
}
.client-section .client-item.pba .client-img {
    position: relative;
    top: 7px;
}
.clients-border-box .client-item:first-child {
    text-align: left;
}
.clients-border-box .client-item:last-child {
    text-align: right;
}
.clients-border-box .client-item:nth-child(2),
.clients-border-box .client-item:nth-child(3) {
    text-align: center;
}

.saas-section .table-job-data tr th,
.saas-section .table-job-data tr td {
    padding: 0;
    vertical-align: middle;
}

.saas-section .saas-title {
    font-size: 50px;
    color: #21174d;
}

.saas-section .saas-title:after {
    content: "";
    display: block;
    background-color: #21174d;
    height: 100%;
    width: 2px;
    position: absolute;
    right: 2px;
    top: 0;
}

.saas-section p, .careerPage ul li {
    font-size: 13px;
    line-height: 1.5;
    text-align: left;
    color:black;
    font-weight: 600;
}
.bdr-rounded {
    border-radius: 10px;
    overflow: hidden;
}
.table .thead-dark th {
    background-color: #623995;
    border-color: #ffffff;
    border-bottom-color: #623995;
    border-top-color: #623995;
    border-left-color: #623995;
}
.table .thead-dark tr th:last-child {
    border-right-color: #623995;
}
.font-weight-bold, .table thead th {
    font-weight: 600 !important;
}
.careerPage table.job-list tbody p {
    font-size: 12px;
    color: #87878d;
}
.saas-section .over1 {
    font-weight:500;
}
.saas-section .heading-box {
    display: flex;
    align-items: center;
    
}
.careerPage .page-title, .careerPage h5, .careerPage h6 {
    color: #623995;
}
.careerPage p {
    text-align: justify;
}
.careerPage thead, .careerPage tbody, .careerPage tr {
  display: table;
  width: 100%;
  table-layout: fixed; /* ensures proper column alignment */
}
.careerPage tbody {
  display: block;
  max-height: 400px; /* Same as .table-wrapper */
  overflow-y: auto;
}
.careerPage .saas-section p span {
    color: #51248C;
    font-weight: 700;
}
.careerPage ul {
    margin-left: 20px;
}
.careerPage ul li {
    list-style-type: disc;
}
.subfooter .btn.solid-btn:first-child {
    margin-right: 20px;
}
.careerPage .subfooter .btn.solid-btn:first-child {
    margin-right: 0px;
}
#applyForm .modal-title {
    text-transform: none;
}
.home-section .saas-secion-box {
    padding: 3rem;
}
.home-section.saas-section p {
    font-size: 15px;
    line-height: 1.5;
    text-align: left;
    color: #21174d;
    font-weight: 500;
}
.careerPage .job-full-description p span {
    color: #000000;
}
.table-job-data tr th {
    width: 12%;
}
.solid-btn.btn-apply {
    float: right;
}

.language-switcher {
    display: inline-block;    
}
.language-switcher .btn {
    background: transparent;
    border: 1px solid #ccc;
    color: #fff;
    font-size: 20px;
    padding: 5px 10px;
    min-width: 250px;
    justify-content: center;
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0;
}
.language-switcher img {
    border-radius: 3px;
}
.language-switcher .dropdown-menu {
    min-width: 250px;
    padding: 0;
    border: none;
}
.language-switcher .dropdown-item {
    font-size: 18px;
    padding: 5px 10px;
    justify-content: center;
    border-bottom: 1px solid #ccc;
}
.language-switcher .dropdown-item:last-child {
    border-bottom: none;
}
.btn-outline-light:not(:disabled):not(.disabled).active:focus, 
.btn-outline-light:not(:disabled):not(.disabled):active:focus, 
.show>.btn-outline-light.dropdown-toggle:focus {
    box-shadow: none;
    outline: none;
}
.btn-outline-light.focus, 
.btn-outline-light:focus {
    box-shadow: none;
    outline: none;
}
.cookie-conscent {
    display: none; position: fixed; bottom: 0; left: 0; right: 0; background-color: #f9f9f9; box-shadow: 2px 2px 10px #21174d; padding: 15px; font-size: 14px; z-index: 9999;
}
.testimonial-section .testimonial-row .testimonial-frame:nth-child(2) .client-info-wrap {
    margin-bottom: 23px;
}
.testimonial-section .testimonial-row .testimonial-frame:last-child .client-info-wrap {
    margin-bottom: 45px;
}