@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

:root {
    --font-DMSerif: "DM Serif Display", serif;
    --font-Montserrat: "Montserrat", sans-serif;
    --primary-color: #082140;
    --primary-light: #16355C;
    --primary-dark: #061931;
    /* Google Blue */
    --secondary-color: #CD4D09;
    /* Google Yellow */
    --white-color: #ffffff;
    --black: #000000;
    /* White */
    --text-color: #082140;
    /* Slightly darker blue for active states */
    --font-size: 16px;
    /* Base font size */
    --border-radius: 4px;
    /* Standard border radius */
    --transition-duration: 0.4s;
}

/* --=============================custom scrollbar 
====================================================*/
::-webkit-scrollbar {
    width: 6px;
    border-radius: 0px;
    height: 4px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: var(--secondary-color);
    border-radius: 0px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--primary-color);
}

/****** Not showing up & down for number textbox */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

input.form-control:focus, textarea.form-control:focus, input.form-control:active, button:focus, button:active, input.form-control:focus-visible, button:focus-visible {
    outline: none;
    box-shadow: none;
    border: 1px solid var(--white-color);
}

/* --=============================Global
====================================================*/
html {
    scroll-behavior: smooth;
    margin: 0 !important;
}

* {
    padding: 0;
    margin: 0;
    list-style-type: none;
    outline: none;
}

img {
    max-width: 100%;
    height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    padding: 0;
    margin: 0;
    line-height: 100%;
    font-family: var(--font-DMSerif)
}

body {
    color: var(--text-content-color);
    line-height: 32px;
    font-size: 20px;
    font-family: var(--font-Montserrat)
}

a,
button {
    text-decoration: none;
    transition: 0.5s;
}
button:focus, button:focus-visible, button:focus-within {
    box-shadow: none !important;
    outline: none !important;
    border: none !important;
}

ul {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.container {
    max-width: 87%;
}

/* =================================== Header Area CSS 
======================================================*/
.header {
    position: fixed;
    top: 40px;
    z-index: 99;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
}
.header-inner {
    background-color: rgba(255, 255, 255, 0.50);
    border: 3px solid var(--white-color);
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.10);
    border-radius: 50px;
    padding: 10px 15px;
    backdrop-filter: blur(15px);
}
.header-inner .logo {
    width: 135px;
}
.header-right {gap: 10px;}
.header-right ul li a {
    font-size: 14px;
    color: var(--primary-color);
    text-transform: uppercase;
    font-weight: 500;
    padding: 26px 0px;
    transition: 0.3s ease-in-out;
}
.header-right ul li a:hover {
    color: var(--secondary-color);
}
.btn-qbent {
    border-radius: 25px;
    background: var(--secondary-color);
    color: var(--white-color);
    border: none;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 600;
}
.btn-qbent:hover {
    background: var(--primary-color);
    color: var(--white-color);
}
.nav-menu {gap: 25px;}
.nav-menu li {
    position: relative;
    list-style: none;
}

.nav-menu li a {
    text-decoration: none;
    color: #000;
    font-weight: 500;
}

.nav-menu .arrow {
    transition: 0.3s ease;
    font-size: 12px;
    color: var(--secondary-color);
}

.dropdown-menu {
    position: absolute;
    top: 50px;
    left: 0;
    background: rgba(255, 255, 255, 0.70);
    padding: 0;
    border-radius: 6px;
    min-width: max-content;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    display: none;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s ease;
    z-index: 999;
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 255, 255, 0.30);
}

.dropdown-menu li a {
    display: block;
    padding: 5px 15px !important;
    border-bottom: 1px dashed #d1d1d1;
}
.dropdown-menu li:last-child a {border: 0;}

.dropdown.open .dropdown-menu {
    display: block;
    opacity: 1;
    visibility: visible;
}

.dropdown.open > a .arrow {
    transform: rotate(180deg);
}

.canvas-btn {display: none;}
/* Mobile Menu */
.mobile-menu li a {
    color: var(--menu-text-color);
    font-size: 19px;
    padding: 5px 0;
    border-radius: var(--border-radius);
    transition: background-color var(--transition-duration);
    font-weight: 500;
    position: relative;
    display: block;
}
.mobile-menu li a i {
    transition: var(--transition-duration);
    padding-right: 5px;
    color: var(--secondary-color);
}
.im-mbile-copy {display: none;}

.offcanvas-header {border-bottom: 1px solid #d1d1d1;}
.offcanvas-footer {border-top: 1px solid #d1d1d1;padding: 10px 15px;}
.offcanvas-footer p {font-size: 15px;margin: 0;}
.offcanvas-footer p a {color: var(--secondary-color);}

.nav-menu li.active > a {
    color: var(--secondary-color);
    font-weight: 600;
}

/* =================================== Hero Area CSS 
======================================================*/
.banner-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding-left: 5rem;
}
.banner-content h2 {
    color: var(--secondary-color);
    font-size: 3.5rem;
    font-weight: 300;
}
.banner-content h3 {
    color: var(--primary-color);
    font-size: 3.5rem;
    font-weight: 300;
    font-style: italic;
    margin: 15px 0;
}
.banner-content p {font-size: 17px;}
.hero-desc p {
    margin: 0 !important;
}
.tag-area {
    background: linear-gradient(to right, rgba(246, 250, 253, 0.40),  rgba(239, 240, 241, 0));
    padding: 10px;
    border-radius: 50px;
    border-left: 1px solid rgba(0, 0, 0, 0.20);
    margin-top: 20px;
}
.tag-area p {font-style: italic;font-size: 18px;font-weight: 500;margin: 0;line-height: 1;font-size: 17px;color: var(--primary-color);}
.slick-dots {
    position: absolute;
    top: 50%;
    left: 5%;
    transform: translateY(-50%);
}
.slick-dots li button {display: none;}
.slick-dots li {
    width: 7px;
    height: 7px;
    background: rgba(0, 0, 0, 0.30);
    margin: 20px;
    border-radius: 25px;
    position: relative;
    cursor: pointer;
}
.slick-dots li.slick-active {background: var(--secondary-color);}
.slick-dots li.slick-active::after {
    content: '';
    width: 20px;
    height: 20px;
    border: 1px solid rgba(0, 0, 0, 0.20);
    background: #ffffff;
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}
.hero-content .slick-slide img {width: 100%;object-fit: cover;width: 100%;}
/* =================================== Trusted Area CSS 
======================================================*/
.trusted-area h4, .partners-area h4 {
    letter-spacing: 3px;
    text-align: center;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
    align-content: center;
    justify-content: center;
    margin-bottom: 3rem;
}
.sep:before,
.sep:after {
  display: block;
  content: "";
  text-shadow: none;
  width: 25%;
  height: 1px;
  background: linear-gradient(to right, rgba(205, 77, 9, 0), #CD4D09, rgba(205, 77, 9, 1));
}
.sep:after {
    background: linear-gradient(to right, rgba(205, 77, 9, 1), #CD4D09, rgba(205, 77, 9, 0));
}
X.sep:before {
  margin-right: 1em;
}
X.sep:after {
  margin-left: 1em;
}

/* Slick slide center fix */
.trusted-slider .slick-slide {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

/* Image wrapper */
.tru-img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;        /* আপনি slider height অনুযায়ী change করতে পারেন */
}

/* Image control */
.tru-img img {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
}


/* =================================== Our Services Area CSS 
======================================================*/
.our-services {
    padding: 50px 0;
    position: relative;
}
.title-area h3 {
    font-size: 2.6rem;
    color: var(--primary-color);
    font-weight: 400;
}
.title-area h3 span {
    color: var(--secondary-color);
    font-style:italic;
}
.service-content {
    margin-top: 40px;
}
.service-box {
    padding: 10px;
    transition: 0.5s ease-in-out;
}
.service-box .service-text {
    padding: 20px 20px 0;
}
.service-box .service-text h3 {
    color: var(--primary-color);
    font-size: 1.6rem;
    line-height: 30px;
    flex: 1;
}
.service-box .service-text p {
    font-size: 15px;
    line-height: 23px;
    padding-top: 15px;
    font-weight: 300;
}
.service-box .service-text .link-bx {
    width: 35px;
    height: 35px;
    background: #fff;
    border-radius: 25px;
    border: 1px solid #cccc;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
}
.service-box:hover {
    background: var(--secondary-color);
}
.service-box:hover .service-text h3, .service-box:hover .service-text p {
    color: var(--white-color);
}
.service-box:hover .service-text .link-bx {
    opacity: 1;
    color: var(--secondary-color);
}
.custom-prev, .custom-next {
    width: 35px;
    height: 35px;
    /* border: 1px solid #d1d1d1; */
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    font-size: 2rem;
    cursor: pointer;
    z-index: 2;
}
.custom-next,.custom-prev {
    top: -15%;
    right: 20px;
}
.custom-prev {
    right: 55px;
}

/* =================================== Testimonial Area CSS 
======================================================*/
.testimonial {
    padding-bottom: 50px;
    background: url("../images/vector-bg.png");
    background-position: center;
    background-size: contain;
}
.happy-customer {
    margin-top: 40px;
}
.test-user-box {
    background-color: var(--white-color);
    border-radius: 4px;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.10);
    padding: 20px;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
}
.test-user-box::before {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    width: 70px;
    height: 70px;
    background-image: url("../images/quote.png"); /* adjust the path if needed */
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none; /* prevent it from interfering with text clicks */
}
/* .test-user-box:last-child {
    margin: 0;
} */
.tst-user-dtls {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
}
.user-title ul {
    display: flex;
    justify-content: start;
    align-items: center;
    font-size: 14px;
    gap: 5px;
}
.user-avtar {
    width: 75px;
    height: 75px;
    border-radius: 50%;
    overflow: hidden;
}
.user-title ul li i {
    color: #D4AF37;
}
.user-title p {font-size: 16px;margin: 0;}
.test-message p {
    font-size: 15px;
    line-height: 23px;
    font-style: italic;
    padding: 15px 0;
    margin: 0;
}
/* .test-message p span {
    color: var(--secondary-color);
    font-weight: 500;
    font-style: normal;
    cursor: pointer;
} */
.test-message p.month {
    color: #C08B95;
    margin: 0;
    padding: 0;
    font-style: normal;
    font-size: 13px;
}
.video-area {
    padding-left: 20px;
}
.video-frame {position: relative;}
.video-play {
    width: 100px;
    height: 100px;
    background: rgba(255, 255, 255, 0.30);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: 1;
}
.video-play-inner {
    width: 70px;
    height: 70px;
    background: rgba(255, 255, 255, 0.50);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
}
.video-play-main {
    width: 50px;
    height: 50px;
    background: var(--secondary-color);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.video-play-main i {color: var(--white-color);}
.video-thumb-area { 
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
}
.video-thumb {
    flex: 1;
    max-height: 110px;
    overflow: hidden;
    cursor: pointer;
}

.video-thumb{
    cursor:pointer;
    opacity:0.6;
}
.video-thumb-active{
    opacity:1;
    border:2px solid #D22028;
}

.button-area {
    margin: 50px 0 0;
    text-align: center;
}
.button-area a:hover {
    color: var(--white-color);
}
.view-all {
    padding: 10px 20px;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 12px;
}

/* =================================== Career Area CSS 
======================================================*/
.job-opening {
    padding: 70px 0;
}

.career-box {
    min-height: auto;
    max-height: fit-content;
}
.job-area h2 {
    color: var(--white-color);
    margin-bottom: 35px;
    font-weight: 700;
}
.career-box .box-content p {font-weight: normal;}
.job-area .accordion-item {
    margin-bottom: 15px;
    border-radius: 20px;
    padding: 5px;
    border: 1px solid #CECECE;
    box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.20);
}
.job-area .accordion-button {border-radius: 0.375rem;}
.job-area .accordion-header {
    font-weight: 600;
    padding: 12px 25px;
    position: relative;
    cursor: pointer;
    border-radius: 12px;
    background: #EEF7FF;
}
.job-area .accordion-header.collapsed {border-bottom: none !important;}
.item-boxx {position: relative;flex: 1;}
.job-area .accordion-header .item-boxx::after {
    content: '';
    width: 1px;
    height: 100%;
    background: rgba(0, 0, 0, 0.20);
    position: absolute;
    top: 0;
    left: -50px;
}
.job-area .accordion-header .item-boxx:first-child::after {
    display: none;
}
.job-area .accordion-button {gap: 10px;padding: 7px 15px;background-color: var(--button-background-color) !important;color: var(--white-color) !important;}
.job-area .accordion-button::after {display: none;}
.job-area .accordion-header h3 {font-size: 20px;}
.job-area .accordion-header h4 {font-size: 16px;}
.job-area .accordion-header p {margin: 0;font-size: 15px;font-weight: 400;line-height: 23px;}
.job-info p {font-size: 14px;line-height: 22px;}
.job-info h4 {font-size: 17px;font-weight: 600;}
.job-info ul {padding-left: 15px;}
.job-info ul li {
    font-size: 14px;
    line-height: 22px;
    margin-top: 5px;
    list-style: disc;
}

.upload-box {
    background: var(--white-color);
    border: 1px solid rgba(0, 0, 0, 0.20);
    padding: 5px 5px;
    border-radius: 20px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
    padding-left: 15px;
}
.upload-box p {
    font-size: 14px;
}
.file {
    flex: 1;
}

.file > input[type='file'] {
  display: none
}

.file > label {
    font-size: 1rem;
    font-weight: 300;
    cursor: pointer;
    outline: 0;
    user-select: none;
    border: 1px dashed rgba(0, 0, 0, 0.20);
    border-radius: 12px;
    border-width: 1px;
    background-color: #F3F9FF;
    color: #6B6B6B;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 7px 10px;
}

.file > label:hover {
  border-color: hsl(0, 0%, 21%);
}

.file > label:active {
  background-color: hsl(0, 0%, 96%);
}

.file > label > i {
    color: var(--secondary-color);
    font-weight: 600;
    font-size: 23px;
}

.file--upload > label:hover {
  border-color: hsl(204, 86%, 53%);
  background-color: hsl(204, 86%, 96%);
}

.file--upload > label:active {
  background-color: hsl(204, 86%, 91%);
}
.file--upload > label p {line-height: 20px !important;}
.file--upload > label p span {color: var(--secondary-color);font-weight: 500;}
/* =================================== Partners Area CSS 
======================================================*/
.partners-area {
    padding: 70px 0 50px;
    background: linear-gradient(to bottom,rgba(243, 249, 255, 1) 0%,rgba(255, 255, 255, 1) 100%);
}

.logo-slider {
  display: flex;
  align-items: center;
}

.logo-item {
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 100px;
  padding: 10px;
  margin: 20px 40px;
}

.logo-item img {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  filter: grayscale(1);
  transition: transform 0.3s ease, filter 0.3s ease;
}

.logo-item img:hover {
  transform: scale(1.05);
  filter: grayscale(0);
}

.logo-item.slick-current.slick-active {
    box-shadow: -3px -1px 10px rgba(0, 0, 0, 0.1);
    border-radius: 7px;
    background: var(--white-color);
}
.logo-item.slick-current.slick-active img {
    filter: grayscale(0);
}

/* =================================== Industry Area CSS 
======================================================*/
.industry-area {
    padding: 50px 0 70px;
    background: url("../images/industry.png");
    background-size: cover;
}
.tabs-area {
    margin-top: 30px;
}
.tabs-area .nav-tabs {
    border-top: 1px solid rgba(0, 0, 0, 0.20);
    border-bottom: 1px solid rgba(0, 0, 0, 0.20);
    padding: 0;
    justify-content: space-between;
}
.tabs-area .nav-tabs .nav-link {
    font-size: 14px;
    font-family: var(--font-Montserrat) !important;
    border-radius: 0;
    text-transform: uppercase;
    font-weight: 500;
    color: var(--primary-color);
    text-align: center;
    transition: 0.4s ease-in-out;
}
.tabs-area .nav-tabs .nav-link:hover {
    background: rgba(205, 77, 9, 0.85);
    color: var(--white-color);
}
.tabs-area .nav-tabs .nav-link, .tabs-area .nav-tabs .nav-link.active {
    border: 0;
}
.tabs-area .nav-tabs .nav-link.active {
    background: var(--secondary-color);
    color: var(--white-color);
    position: relative;
}
.tabs-area .nav-tabs .nav-link.active::before {
    content: '';
    border-top: 10px solid var(--secondary-color);
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    position: absolute;
    bottom: -9px;
    left: 50%;
    transform: translateX(-50%);
}
.content-area {
    padding: 50px  0;
}
.banking-content {
    padding-right: 50px;
}
.banking-content h4 {font-size: 1.7rem;}
.banking-content p {
    font-size: 15px;
    line-height: 25px;
    margin: 20px 0;
}
.type-box {
    margin-bottom: 10px;
}
.type {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
}
.type img {
    width: 40px;
}
.type p {
    font-weight: 500;
    color: var(--primary-color);
}
.type-img {
    position: relative;
    z-index: 1;
}
.type-img::after {
    content: '';
    width: 90%;
    height: 90%;
    background: var(--secondary-color);
    position: absolute;
    top: 58%;
    left: 58%;
    transform: translate(-50%, -50%);
    z-index: -1;
    clip-path: polygon(100% 0, 0 100%, 100% 100%);
}

/* =================================== Case Study CSS 
======================================================*/ 
.case-study {
    padding: 80px 0;
}
.study-content {
    padding: 50px 0 20px;
}
.study-item {
    padding: 10px;
}
.item-img {position: relative;}
.item-img::after {
    content: '';
    width: 100%;
    height: 100%;
    background: rgba(205, 77, 9, 0.8);
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: 0.5s ease-in-out;
}
.item-content {
    padding: 20px 20px 20px 0;
}
.item-content h4 {
    font-size: 1.5rem;
    line-height: 32px;
    margin: 7px 0 15px 0;
    color: var(--primary-color);
}
.item-content p {
    font-size: 15px;
    line-height: 25px;
    margin: 0;
}
.item-content p.item-tag {
    color: var(--secondary-color);
    text-transform: uppercase;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 2px;
}
.icon-link-bx {
    width: 40px;
    height: 40px;
    background: var(--white-color);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    opacity: 0;
}
.icon-link-bx i {color: var(--secondary-color);}
.study-item:hover .item-img::after, .study-item:hover .icon-link-bx {
    opacity: 1;
} 
.btn-view-area {text-align: center;}
.study-c-prev, .study-c-next {
    top: -5%;
}

/* =================================== Technology Area CSS 
======================================================*/ 
.tech-tabs {
    padding: 50px 0;
}
.tab-box {padding-right: 30px;}
.tab-box .nav {
    flex-direction: column;
    border: 0;
}
.tab-box .nav-tabs .nav-link {
    font-size: 13.5px;
    background: var(--white-color);
    margin-bottom: 4px;
    text-transform: uppercase;
    border-radius: 0;
    color: var(--primary-color);
    font-weight: 500;
    cursor: pointer;
}
.tab-box .nav-tabs .nav-link.active {
    border: 1px solid var(--secondary-color);
    background: var(--secondary-color);
    color: var(--white-color);
}
.tech-content h5 {text-align: left;font-size: 1.7rem;}
.tech-content p {font-size: 15px;margin: 25px 0;line-height: 25px;}
.tech-logo-bx {display: flex;justify-content: flex-start;align-items: center;flex-wrap: wrap;gap: 15px;}
.tech-item {
    position: relative;
    width: 120px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: #efefef;
    clip-path: polygon(50% 0, 90% 27%, 90% 71%, 50% 100%, 11% 71%, 10% 27%);
    overflow: visible;
}

.tech-item::before {
    content: "";
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 100%;
    height: 40%;
    background: rgba(0, 0, 0, 0.05);
    filter: blur(10px);
    clip-path: polygon(50% 0, 90% 71%, 50% 100%, 11% 71%);
    z-index: -1;
}
.tech-item:empty {
    display: none;
}

/* =================================== About Us area css 
======================================================*/ 
.breadcumb-area {
    position: relative;
}
.breadcumb-area img {width: 100%;}
.breadcumb-area h3 {color: var(--secondary-color);}
.breadcumb-area h3 span {color: var(--primary-color);}
.breadcumb-area .title-area {position: absolute;top: 60%;transform: translateY(-50%);}
.about-industry {background: #ffffff;}
.tabs-area .nav-tabs .nav-link {flex: 1;border-left: 1px solid #d1d1d1;cursor: pointer;}
.tabs-area .nav-tabs .nav-link:last-child {border-right: 1px solid #d1d1d1;}
.in-about-imgbx {width: 95%;margin: 0 0 0 auto;}
.in-about-imgbx::after {
    content: '';
    width: 90%;
    height: 90%;
    background: var(--secondary-color);
    position: absolute;
    top: 60%;
    left: 41%;
    transform: translate(-50%, -50%);
    z-index: -1;
    clip-path: polygon(0 0, 0 100%, 100% 100%);
}
.shadow-box {
    background-color: #ffffff;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.10);
    padding: 50px 10px;
    border-radius: 10px;
}
.shadow-box .col-12 {position: relative;}
.shadow-box .col-12::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;              /* border width */
  height: 100%;
  background: linear-gradient(to bottom, transparent, #D22028, transparent);
}
.shadow-box .col-12:last-child::after {display: none;}
.c-item {display: flex;justify-content: center;align-items: baseline;gap: 15px;}
.c-item .c-icon img {width: 60px;}
.c-item .item .count::after {content: "+";display: inline-block;}
.c-item .item h3 {font-size: 2.3rem;color: #D22028;}
.c-item .item p {margin: 0;font-size: 14px;}
.why-choose {padding: 100px 0 0;}
.can-help {
    padding: 100px 0;
    background: url("../images/industry.png");
    background-size: cover;
    background-position: bottom;
}
.can-help .title-area p {font-size: 15px;}
.help-box {
    background-color: #F3F9FF;
    box-shadow: 0px 15px 50px rgba(0, 0, 0, 0.10);
    padding: 3rem;
    border-radius: 15px;
    margin-top: 2rem;
}
.help-box input, .help-box select, .quote-frm input, .quote-frm select {
    max-height: 42px;
    min-height: 42px;
    border-radius: 10px;
    font-size: 14px;
}
.help-box input.form-control:focus, .help-box textarea.form-control:focus, .help-box input.form-control:active,
.help-box select.form-control:focus, .quote-frm input.form-control:focus, .quote-frm textarea.form-control:focus, .quote-frm input.form-control:active,
.quote-frm select.form-control:focus  {
    border: 1px solid var(--secondary-color);
    outline: none;
    box-shadow: none;
}
.help-box textarea, .quote-frm textarea {border-radius: 10px;resize: none;}
.help-box .btn, .quote-frm .btn {text-transform: uppercase;font-weight: 600;font-size: 14px;}

/* =================================== Director's Area CSS 
======================================================*/ 
.designation-box {
    border-top: 1px solid rgba(0, 0, 0, 0.20);
    border-bottom: 1px solid rgba(0, 0, 0, 0.20);
    padding: 10px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
    margin-top: 25px;
    max-width: 200px;
}
.designation-box p {margin: 0;color: #6B6B6B;font-size: 17px;border-right: 1px solid rgba(0, 0, 0, 0.20);padding-right: 15px; }
.designation-box i {color: #007AB9;}
.designation-box a {
    display: flex;
    align-items: center;
    font-size: 20px;
}
.message {padding-left: 40px;}
.short-box {
    background-color: #ffffff;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.10);
    padding: 10px;
    border-radius: 20px;
}
.short-img, .short-img img {border-radius: 15px;width: 100%;}
.short-sntn p {font-size: 16px;line-height: 29px;margin: 15px 0 0;}


/* =================================== Life Qbent Area CSS 
======================================================*/ 
.team-box {
    padding-top: 50px;
}
.team-box p {line-height: 26px;font-size: 15px;}
.work-box {
    padding: 10px;
    background-color: #ffffff;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.10);
    margin-bottom: 25px;
}
.work-img img {width: 100%;}
.work-sntn h3 {font-size: 1.4rem;}
.work-sntn p {font-size: 15px;line-height: 25px;margin: 15px 0 0;}

/* =================================== Growing Area CSS 
======================================================*/ 
.growing-area {
    padding: 50px 0;
}
.circle-img {
    border-radius: 50%;
    border: 7px solid var(--white-color);
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.10);
    width: 350px;
    height: 350px;
    margin: auto;
}
.circle-img img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.growing-cntn p {font-size: 15px;line-height: 23px;margin: 15px 0;}
.growing-cntn ul li {
    font-size: 16px;
    padding-bottom: 7px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
    font-weight: 500;
}
.growing-cntn ul li i {
    font-size: 1.6rem;
    color: var(--secondary-color);
}

.qbentor-area {
    padding: 50px 0 100px;
    position: relative;
}
.qbentor-content {
    max-width: 30%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin-left: 5rem;
}
.qbentor-content p {
    font-size: 14px;
    line-height: 25px;
    margin: 25px 0;
}
.qbentor-content a {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 13px;
    padding: 10px 20px;
}
.req-btn {
    padding: 11px 25px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 12px;
}

.video-area-main {
    padding: 70px 0 30px;
    background: linear-gradient(to bottom,rgba(243, 249, 255, 1) 0%,rgba(255, 255, 255, 1) 100%);
}
.short-ttl {
    color: var(--secondary-color);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
}
.video-frame-box {
    background: var(--white-color);
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.20);
    border-radius: 20px;
    padding: 10px 10px 0;
    margin-bottom: 25px;
}
.video-img-bx, .video-img-bx img {border-radius: 12px;position: relative;}
.video-img-bx::after {
    content: '';
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.30);
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 12px;
}
.video-content {
    padding: 15px 10px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
}
.video-user {
    width: 55px;
    height: 55px;
    background: #d1d1d1;
    border-radius: 50%;
}
.video-desc p {font-size: 14px;}

.text-review {
    background: url("../images/testimonials/review.png");
    background-size: cover;
    background-position: center;
    padding: 100px 0;
}
/* =================================== Contact Us Area CSS 
======================================================*/ 
.contact-area {padding: 70px 0;}
.logo-area {width: 30%;}
.cn-iconx {
    width: 50px;
    height: 50px;
    background: var(--secondary-color);
    border-radius: 50%;
    padding: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cn-iconx img {width: 65%;height: auto;display: block;filter: brightness(0) invert(1);}
.cn-cntnt {flex: 1;}
.cn-cntnt p {font-size: 16px;}
.cn-cntnt p.text-t {font-size: 15px;color: var(--black);}
.cn-cntnt p.text-t a {color: var(--black);}
.map-box {
    padding: 5px;
    background: var(--white-color);
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.10);
    height: 300px;
}
.shedule-box {
    /* min-height: 450px;
    background: #efefef; */
    border: 2px dashed #CECECE;
    background: linear-gradient(to bottom,rgba(243, 249, 255, 1) 0%,rgba(255, 255, 255, 1) 100%);
    /* display: flex;
    justify-content: center;
    align-items: center; */
}
/* =================================== Thank you Area CSS 
======================================================*/ 
.thankyou {position: relative;}
.thankyou img {width: 100%;height: auto;}
.thankyou-cntn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin-left: 4rem;
}
.thankyou-cntn h3 {
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 400;
    line-height: 3.6rem;
}
.thankyou-cntn h3 span {
    color: var(--primary-color);
}
.thankyou-cntn p {font-size: 16px;margin: 20px 0;}
/* =================================== Privacy Policy CSS 
======================================================*/
.privacy-policy {padding: 30px 0 70px;}
.prav-tabs .nav {
    flex-direction: column;
    border: 0;
} 
.prav-tabs .nav-tabs .nav-link {
    font-size: 12px;
    margin-bottom: 4px;
    text-transform: uppercase;
    border-radius: 0;
    color: var(--primary-color);
    font-weight: 500;
    cursor: pointer;
    border: 0;
    border-bottom: 1px solid #727272;
    padding: 20px 0;
    line-height: 21px;
    transition: 0.4s ease-in-out;
}
.prav-tabs .nav-tabs .nav-link:hover {
    color: var(--secondary-color);
    border-bottom: 1px solid var(--secondary-color);
}
.prav-tabs .nav-tabs .nav-link.active {
    border-bottom: 1px solid var(--secondary-color);
    color: var(--secondary-color);
}
.content-prav-tabs {padding: 20px 0 0 25px;}
.content-prav-tabs h3 {    
    font-size: 2.5rem;
    color: var(--primary-color);
    line-height: 3rem;
    font-style: italic;
    text-transform: capitalize;
}
.content-prav-tabs p {margin: 25px 0;font-size: 15px;line-height: 24px;}
.content-prav-tabs h4 {color: var(--primary-color);font-style: italic;}
.content-prav-tabs ul {margin-left: 25px;}
.content-prav-tabs ul li {
    list-style-type: disc;
    font-size: 14px;
    font-weight: 500;
}
/* =================================== Blog Area CSS 
======================================================*/ 
.blog-area {padding: 40px 0 70px;}
.blog-item {
    padding: 7px;
    border-radius: 20px;
    background: var(--white-color);
    box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.20);
    transition: 0.4s ease-in-out;
    margin-bottom: 20px;
}
.blog-item-img {
    border-radius: 12px;
    overflow: hidden;
}
.blog-item-contn {padding: 15px 20px;}
.blog-item-contn p.blog-date, .blog-time {
    color: var(--secondary-color);
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin: 0;
}
.blog-item-contn h3 {padding: 10px 0;line-height: normal;font-size: 1.4rem;flex: 1;color: #082140;}
.blog-item-contn h3 a {color: #082140;}
.blog-item-contn p {font-size: 15px;line-height: 26px;margin: 0;}
.blog-item-contn .link-bx {
    width: 35px;
    height: 35px;
    background: #fff;
    border-radius: 25px;
    border: 1px solid #cccc;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
}
.blog-item:hover {
    background: var(--secondary-color);
    color: var(--white-color);
}
.blog-item:hover .blog-item-contn .link-bx {opacity: 1;color: var(--secondary-color);}
.blog-item:hover .blog-item-contn p.blog-date, .blog-item:hover .blog-item-contn h3 a, .blog-item:hover .blog-item-contn h3 {color: var(--white-color);}

.latest-blog-area {
    background: linear-gradient(to bottom,rgba(243, 249, 255, 1) 0%,rgba(255, 255, 255, 1) 100%);
    padding: 70px 0 30px;
}

.dev-choose-area {padding: 70px 0 0;}
.choose-dev-cntn p {font-size: 15px;line-height: 23px;margin: 20px 0;}
.choose-dev-cntn ul li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
}
.choose-dev-cntn ul li p {margin: 0;}
.sm-icn {width: 45px;height: 45px;}
.tool-uses-main p.t-short-de {font-size: 14px;margin-top: 20px;} 
#testimonial .slick-track {display: flex;gap: 2rem;}
/* =================================== Blog Detail CSS 
======================================================*/ 
.blog-d-ttl {
    color: var(--primary-color) !important;
    max-width: 60%;
    margin: 15px 0 25px 0;
}
.author {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
}
.author .auth-img {
    width: 40px;
    height: 40px;
    background: #efefef;
    border-radius: 50%;
    overflow: hidden;
}
.author .auth-txt p {
    color: var(--black);
    font-size: 14px;
    margin: 0;
}
.author .auth-txt p span {color: var(--primary-color);font-weight: 600;}
.blog-area p {font-size: 15px;line-height: 26px;}
.blog-area h4 {margin-bottom: 20px;font-size: 2.2rem;}
.blog-area ul {padding-left: 35px;margin-bottom: 20px;}
.blog-area ul li {list-style-type: disc;font-size: 15px;}
.detils-img {min-height: 300px;border-radius: 12px;overflow: hidden;background: #efefef;}
/* =================================== Digital Market Area CSS 
======================================================*/ 
.quote-box {
    padding: 20px 40px;
    background: rgba(255, 255, 255, 0.70);
    background: blur(10px);
    min-height: 400px;
    border: 3px solid var(--white-color);
    position: absolute;
    bottom: 0;
    right: 7%;
    max-width: 35%;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}
.quote-frm {margin-top: 2rem;}

.business-content {padding-top: 70px;}
.bus-cntn-bx p {font-size: 15px;line-height: 24px;margin-top: 25px;}
.bus-cntn-bx ul {margin-bottom: 25px;}
.bus-cntn-bx ul li {font-size: 15px;font-weight: 500;display: flex;justify-content: flex-start;align-items: center;gap: 10px;}
.bus-cntn-bx ul li i {color: var(--secondary-color);font-weight: 700;font-size: 25px;}

.capabilites {
    padding: 70px 0;
    background: linear-gradient(to bottom,rgba(243, 249, 255, 1) 0%,rgba(255, 255, 255, 1) 100%);
}
.cap-cntn p {font-size: 15px;line-height: 24px;margin-top: 25px;}
.accordion-box .accordion-item {margin-bottom: 10px;}
.accordion-box .accordion-item:first-of-type {border-radius: 0;}
.accordion-box .accordion-item:not(:first-of-type) {border: 1px solid #dee2e6;}
.accordion-box .accordion-item:first-of-type .accordion-button {border-radius: 0;}
.accordion-box .accordion-button {cursor: pointer;}
.accordion-box .accordion-button:focus {box-shadow: none;border-color: var(--secondary-color);}
.accordion-box .accordion-button:not(.collapsed) {background: var(--white-color);color: var(--primary-color);box-shadow: none;}
.accordion-box .ac-imgbx {
    width: 40px;
    height: 40px;
}
.accordion-box .ac-imgbx img {width: 100%;}
.accordion-box .accordion-header .accordion-button {gap: 15px;padding: 10px 1.2rem;}
.accordion-box .accordion-header .accordion-button p {
    margin: 0;
    text-transform: uppercase;
    font-weight: 700;
}
.accordion-box .accordion-body {padding: 0 4.8rem}
.accordion-box .accordion-body p {font-size: 15px;line-height: 25px;}
.whyChoose-area {
    padding: 70px 0;
    background: url("../images/industry.png");
    background-position: bottom;
    background-size: cover;
}
.whyChoose-area ul {margin-bottom: 25px;}
.whyChoose-area ul li {
    font-size: 14px;
    color: var(--primary-color);
    font-weight: 600;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px
}
.whyChoose-area ul li i {color: var(--secondary-color);font-size: 22px;font-weight: 600;}
.tool-uses-main {padding: 70px 0 30px;}
 .tool-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border: 1px solid #dcdcdc;
}

.tool-item {
    min-height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    transition: all 0.3s ease;
    background: #fff;
}

/* remove right border from last column */
.tool-item:nth-child(4n) {
    border-right: none;
}

/* remove bottom border from last row */
.tool-item:nth-last-child(1) {
    border-right: 0;
}

/* image styling */
.tool-item img {
    width: 60%;
    filter: grayscale(100%);
    transition: all 0.3s ease;
}

/* hover only on item */
.tool-item:hover {
    background: #f8f9fa;
}

.tool-item:hover img {
    filter: grayscale(0);
    transform: scale(1.08);
}

/* =================================== Mobile Application Area CSS 
======================================================*/ 
.list-content ul li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: var(--primary-color);
    font-weight: 600;
    line-height: 23px;
    padding-bottom: 10px;
}
.list-content ul li i {
    color: var(--secondary-color);
    font-size: 23px;
    font-weight: 700;
}
/* .user-content {margin-top: 20px;} */
.user-content h4 {
    line-height: 2.3rem;
}
.sm-review-box {
    padding: 10px 35px;
    border-radius: 10px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.20);
    position: relative;
    transition: 0.4s ease-in-out;
}
.sm-rv-img {
    width: 50px;
    height: 50px;
    border: 3px solid var(--secondary-color);
    border-radius: 50%;
    overflow: hidden;
    background: #efefef;
    margin: auto;
}
.c-name {
    text-transform: uppercase;
    color: var(--primary-color);
    font-weight: 600;
    margin: 20px 0 10px !important;
    font-size: 17px;
}
.c-short {
    margin: 0 !important;
    font-size: 16px;
    line-height: 25px;
}
.short-link {
    width: 30px;
    height: 30px;
    background: #ffffff;
    color: var(--secondary-color);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 10px;
    right: 10px;
    transition: 0.4s ease-in-out;
    opacity: 0;
}
.sm-review-box:hover {background: var(--secondary-color);}
.sm-review-box:hover .short-link {
    opacity: 1;
}
.sm-review-box:hover p {color: var(--white-color);}
.sm-review-box:hover .sm-rv-img {border: 3px solid var(--white-color);}
.types-card {
    background: var(--white-color);
    padding: 20px;
    border-radius: 20px;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.05);
    min-height: 525px;
}
.types-card h4 {
    text-align: center;
    border-bottom: 1px solid rgba(0, 0, 0, 0.30);
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.types-card p {
    font-size: 15px;
    line-height: 23px;
}
.hire-area {padding: 70px 0;}
.hire-img-area {margin: 25px 0;}
.hire-img {margin-bottom: 20px;}
.hire-img img {width: 85%;margin: auto;}
.hire-cntn .title-area h3 {line-height: normal;}
.app-type {
    border-radius: 20px;
    padding: 20px;
    background: var(--white-color);
    box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.25);
    position: relative;
    border: 1px solid #e5e5e5;
    border-top-width: 2px;
    border-top-color: #CD4D09;
    overflow: hidden;
    margin-bottom: 25px;
}

.app-type::before {
    /* content: ""; */
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    height: 2px;
    border-radius: 16px 16px 0 0;
    /* background: linear-gradient(90deg, #CD4D09 0%, #FFFFFF 100%); */
    background: #CD4D09;
}

/* LEFT + RIGHT GRADIENT */
.app-type::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0px;
    right: 0px;
    border-radius: 16px;
    pointer-events: none; 

    background:
        linear-gradient(#CD4D09, #FFFFFF) left / 2px 100% no-repeat,
        linear-gradient(#CD4D09, #FFFFFF) right / 2px 100% no-repeat;
}

.app-type p {
    text-transform: uppercase;
    font-weight: 600;
    border-bottom: 1px solid rgba(0, 0, 0, 0.30);
    padding-bottom: 15px;
    font-size: 17px;
}
.app-type ul {padding-left: 25px;}
.app-type ul li {
    list-style-type: circle;
    font-size: 15px;
    font-weight: 400;
}
.industries-area {
    padding: 70px 0;
    background: linear-gradient(to bottom,rgba(243, 249, 255, 1) 0%,rgba(255, 255, 255, 1) 100%);
}
.shrt-text {
    font-size: 14px;
    line-height: 24px;
    margin: 25px 0;
}
.indus-app {
    display: grid;
    grid-template-columns: repeat(5, 1fr); 
    gap: 25px; 
    margin: 3rem 0;
}
.indus-app-item {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 10px;
}
.ins-icon-bx {
    width: 70px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    border-radius: 50%;
    border: 1px solid #D0E8FF;
}
.ins-icon-bx img {width: 70%;}
.indus-name {flex: 1;}
.indus-name p {font-size: 16px;font-weight: 600;line-height: 22px;}
.wp-link-msg {
    text-align: center;
}
.wp-link-msg a {color: var(--secondary-color);font-style: italic;}

.development-area {
    padding: 70px 0;
    background: url("../images/industry.png");
    background-position: bottom;
    background-size: cover;
}
.dev-pro-img {margin: 3.5rem 0 3rem;}
/* =================================== User Client CSS 
======================================================*/ 
.client-area {
    padding: 30px 0 70px;
}
.client-review {
    display: grid;
    grid-template-columns: repeat(5, 1fr); 
    gap: 25px;
}
.stck-area {
    padding: 70px 0 30px;
    background: linear-gradient(to bottom,rgba(243, 249, 255, 1) 0%,rgba(255, 255, 255, 1) 100%);
}
.backend-box {
    display: grid;
    grid-template-columns: repeat(9, 1fr); 
    gap: 3rem;
}
.back-img-bx {display: flex;justify-content: center;align-items: center;}
.back-img-bx img {width: 70%;}
.diffrent-area {padding: 30px 0 px;}
.diff-cntn {margin: 25px 0;}
.diff-cntn p {font-size: 15px;line-height: 27px;}
.diff-cntn h4 a {color: var(--secondary-color);font-style: italic;}
/* =================================== Ecommerce Area CSS 
======================================================*/ 
.barnds-log {
    display: grid;
    grid-template-columns: repeat(3, 1fr); 
    align-items: center;
    gap: 2rem;
    margin-top: 2rem;
}
.b-log-box img {width: 70%;}
.platfrom-area {
    padding: 70px 0 30px;
}
.platfrm-cntn {margin: 30px 0;}
.platfrm-cntn p {font-size: 15px;text-align: center;;line-height: 24px;}
.platfrom-area .title-area h3 {font-size: 2.2rem;}
.title-area h3.e-why-ttl {
    font-size: 2.3rem ;
}
/* =================================== Footer Area CSS 
======================================================*/ 
.footer {
    background: var(--primary-light);
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.footer-left {
    width: 60%;
    background: var(--primary-light);
    padding: 3rem 3rem 0;
}
.footer-right {
    width: 40%;
    background: var(--primary-dark);
    padding: 4rem 3rem 0;
    height: 100%;
}
/* .footer::after {
    content: '';
    width: 40%;
    height: 100%;
    background: var(--primary-dark);
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
} */
.footer-logo {
    margin-bottom: 30px;
}
.footer-logo img {width: 160px;}
.footer-icon {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 3rem;
}
.footer-menu {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
    margin: 25px 0;
}
.footer-menu li {color: var(--white-color);font-size: 14px;}
.footer-menu li a {color: var(--white-color);font-size: 14px;}

.ftr-item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
    margin: 15px 0;
}
.ftr-item p, .ftr-item a {color: var(--white-color);font-size: 13px;line-height: 23px;margin: 0;}
.copy-box {padding: 1.1rem 0;}
.social-icon {padding: 1rem 0;}
.copy-box ul {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 6rem;
}
.copy-box ul li {font-size: 14px;color: var(--white-color);}
.copy-box ul li a {color: var(--white-color);}
.contnet-type {padding-bottom: 2rem;}
.social-icon ul {display: flex;justify-content: flex-start;align-items: center;gap: 10px;}
.social-icon ul li a {
    width: 40px;
    height: 40px;
    background: var(--primary-light);
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    transition: 0.4s ease-in-out;
}
.social-icon ul li a:hover {
    background: var(--secondary-color);
}
.line {
    width: 94%;
    height: 1px;
    background: rgba(255, 255, 255, 0.20);
    position: absolute;
    bottom: 20%;
    left: 3%;
}

/* =============================Scroll to Top
============================================== */
.scroll-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    z-index: 100;
    text-align: center;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: var(--secondary-color);
    color: #fff;
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
    transition: 0.5s ease-in-out;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}

.show {
    opacity: 1;
    visibility: visible;
}

.scroll-top i {
    font-size: 20px;
    padding: 9px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Overlay styles */
   .overlay {
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    position: fixed;
    background: rgba(255, 255, 255, 0.50);
    backdrop-filter: blur(15px);
    z-index: 1001;
}

.overlay__inner {
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    position: absolute;
}

.overlay__content {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    align-items: center;   
}
.overlay__content img {
    width: 60px;
    height: auto;
    position: absolute;
}

 .overlay.hidden {
    opacity: 0;
    visibility: hidden;
}

.spinner {
    width: 100px;
    height: 100px;
    display: inline-block;
    border-width: 3px;
    border-color: var(--white-color);
    border-top-color: var(--secondary-color);
    animation: spin 1s infinite linear;
    border-radius: 100%;
    border-style: solid;
}

@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}

/* Conculation btn */
.fixed-box {
    position: fixed;
    top: 45%;
    right: -104px;
    z-index: 1;
}
.conculation-btn {
    display: table;
    transform: rotate(-90deg);
}
.conculation-btn a {
    background: var(--secondary-color);
    color: var(--white-color);
    text-transform: uppercase;
    padding: 17px 30px;
    font-size: 13px;
    line-height: 1;
    font-weight: 600;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    transition: 0.4s ease-in-out;
}
.conculation-btn a:hover {background: var(--primary-color);}
.whatsapp-btn {
    transform: inherit;
    right: 0;
    position: relative;
    right: -110px;
    top: 130px;
}

.whatsapp-btn a.whatsapp {
    padding: 0;
    background: transparent;
}

.whatsapp-btn a.whatsapp img {
    width: 47px;
    border: 1px solid var(--white-color);
    border-radius: 50%;
    background: var(--white-color);
    padding: 2px;
}

/* Contact from 7 Error design  */

.wpcf7 form .wpcf7-form-control.wpcf7-not-valid {
  border-color: #e63946;
  box-shadow: 0 0 0 1px rgba(230,57,70,0.15);
}

.wpcf7 form .wpcf7-not-valid-tip {
  color: #e63946;
  font-size: 14px;
  /* margin-top: 4px; */
  display: block;
}

.wpcf7 form .wpcf7-response-output {
  margin-top: 0 !important;
  padding: 12px 16px;
  border-radius: 6px;
  font-size: 14px;
}

.wpcf7-mail-sent-ok,
.wpcf7 form.sent .wpcf7-response-output {
  border-color: #2a9d8f;
  background: #e8f7f4;
  color: #11645a;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output {
  border-color: #e63946;
  background: #fdecec;
  color: #9b1c31;
}

.pagination {font-size: 14px;}
.pagination .page-numbers {
    width: 30px;
    height: 30px;
    border: 1px solid #d1d1d1;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    background: #eeeeee;
    color: #6B6B6B;
}
.pagination span.page-numbers.current {
    background: var(--secondary-color);
    color: var(--white-color);
}
.pagination .next.page-numbers, .pagination .prev.page-numbers {
    border: 0;
    width: auto;
    height: auto;
}

.file--upload .cf7-file-input {
    position: absolute;
    opacity: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.file--upload {
    position: relative;
    display: inline-block;
}
.file--upload label {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}

body.error404, 
.error404 body,
html.error404,
.error404 html {
    margin: 0 !important;
    padding: 0 !important;
}
.qbent-pagination span.page-link.current {
    background: var(--secondary-color);
    background: var(--white-color);
}

/* For Booking Calender */
.wpbc_container_booking_form {width: 100% !important;}
.booking_form_div hr {
    background: var(--white-color) !important;
    border: 0;
    border-top: 2px dashed #CECECE !important;
    opacity: 1 !important;
}
.wpbc_button_light {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 14px !important;
    max-height: 42px;
    min-height: 42px;
    border-radius: 25px !important;
    background: var(--secondary-color) !important;
    color: var(--white-color) !important;
    border: none !important;
    line-height: normal !important;
}
.wpbc_no_custom_width.cal_month_num_1 {max-width: 70% !important;}
.wpbc_container_booking_form .wpbc__field:last-child {padding-right: 15px !important;}
.wpbc_container_booking_form {margin: 0px !important;}
.wpbc_booking_form_simple {padding: 15px 15px 0;}
.wpbc_container_booking_form .wpbc_booking_form_simple .wpbc__field label {font-size: 14px !important;font-weight: 500 !important;}
.wpbc_container_booking_form .wpbc__field select, .wpbc_container_booking_form .wpbc__field input[type="text"], .wpbc_container_booking_form .wpbc__field input[type="email"], .wpbc_container_booking_form .wpbc__field textarea {
    max-width: 100%;
    max-height: 42px;
    min-height: 42px;
    border-radius: 25px !important;
    border: 1px solid #dee2e6 !important;
    background: #ffff !important;
}
.wpbc_container_booking_form .wpbc__field textarea {min-height: auto;max-height: inherit;border-radius: 10px !important;}
.wpbc_container_booking_form .wpbc__field:not(.wpbc__cal) {margin-top: 0 !important;}

/* Brochure Modal PopUp */
.brochure-modal .modal-header {background: var(--primary-dark);color: var(--white-color);}
.brochure-modal .modal-header h2 {font-family: var(--font-Montserrat);}
.brochure-modal .modal-header h2 span {color: var(--secondary-color);font-style: italic;}
.brochure-modal .modal-header .btn-close {filter: brightness(0) invert(1);}
.brochure-modal .modal-body {background: #F3F9FF;position: relative;}
/* .brochure-modal .modal-body .wpcf7-spinner {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.20);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    border-radius: 0;
    margin: 0;
}
.brochure-modal .modal-body .wpcf7-spinner::before {
    top: 50%;
    left: 50%;
} */