/*
************
*************************
Template Name: Nosei - It Solution And Business HTML5 Template
Description: Template description
Author: themephi
Version: 1.0

-----------------------------------------------------------------------------------

CSS INDEX
=================== 
01. common
02. header
03. banner
04. sidebar
05. button
06. feature
07. about
08. service
09. choose
10. project
11. project details
12. cta
13. brand
14. counter
15. testimonial
16. contact
17. blog
18. blog details
19. newsletter
20. management
21. team
22. team details
23. recent
24. breadcrumb
25. error
26. footer
******************************************************* 
*************************************************************** */
/*
************
*************************
01. common
******************************************************* 
*************************************************************** */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&amp;family=Rubik:wght@300;400;500;600;700&amp;display=swap");
body {
  font-family: "Rubik", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: var(--clr-body-text);
  font-size: 17px;
}
@media (max-width: 767px) {
  body {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  body {
    font-size: 17px;
  }
}

.img,
img {
  max-width: 100%;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

a,
.button,
button {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

a:focus,
.button:focus {
  text-decoration: none;
  outline: none;
}

a:focus,
a:hover {
  color: inherit;
  text-decoration: none;
}

a,
button {
  color: inherit;
  outline: medium none;
  text-decoration: none;
}

button:focus,
input:focus,
input:focus,
textarea,
textarea:focus {
  outline: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Inter", sans-serif;
  color: var(--clr-body-heading);
  margin-top: 0px;
  line-height: 1.2;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 15px;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  color: inherit;
}

h1 {
  font-size: 80px;
}

h2 {
  font-size: 40px;
}

h3 {
  font-size: 32px;
}

h4 {
  font-size: 22px;
}

h5 {
  font-size: 22px;
}

h6 {
  font-size: 17px;
}

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

p {
  font-family: "Rubik", sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 28px;
  color: var(--clr-body-text);
}
@media (max-width: 767px) {
  p {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  p {
    font-size: 17px;
  }
}

hr {
  border-bottom: 1px solid var(--clr-bg-gray-3);
  border-top: 0 none;
  padding: 0;
  opacity: 1;
}

label {
  color: var(--clr-common-black);
  cursor: pointer;
  font-size: 14px;
  font-weight: 400;
}

*::-moz-selection {
  background-color: var(--clr-theme-primary);
  color: var(--clr-common-white);
  text-shadow: none;
}

::-moz-selection {
  background-color: var(--clr-theme-primary);
  color: var(--clr-common-white);
  text-shadow: none;
}

::selection {
  background-color: var(--clr-theme-primary);
  color: var(--clr-common-white);
  text-shadow: none;
}

/* <<<<<<<    Input Placeholder   >>>>>>>>> */
input::-webkit-input-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
input:-moz-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
input::-moz-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
input:-ms-input-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

textarea::-webkit-input-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
textarea:-moz-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
textarea::-moz-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
textarea:-ms-input-placeholder {
  color: var(--clr-body-text);
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

input:focus::placeholder,
textarea:focus::placeholder {
  opacity: 0;
}

/* <<<<<<<    Common Classes   >>>>>>>>> */
.w_img img {
  width: 100%;
}

.img_w {
  width: 100%;
}

/* <<<<<<<    Overlay   >>>>>>>>> */
[data-overlay] {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
[data-overlay]::before {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  content: "";
}

/* <<<<<<<    Margin & Padding     >>>>>>>>> */
.mt-5 {
  margin-top: 5px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-25 {
  margin-top: 25px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-35 {
  margin-top: 35px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-45 {
  margin-top: 45px;
}

.mt-50 {
  margin-top: 50px;
}

.mt-55 {
  margin-top: 55px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-65 {
  margin-top: 65px;
}

.mt-70 {
  margin-top: 70px;
}

.mt-75 {
  margin-top: 75px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-85 {
  margin-top: 85px;
}

.mt-90 {
  margin-top: 90px;
}

.mt-95 {
  margin-top: 95px;
}

.mt-100 {
  margin-top: 100px;
}

.mt-105 {
  margin-top: 105px;
}

.mt-110 {
  margin-top: 110px;
}

.mt-115 {
  margin-top: 115px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-125 {
  margin-top: 125px;
}

.mt-130 {
  margin-top: 130px;
}

.mt-135 {
  margin-top: 135px;
}

.mt-140 {
  margin-top: 140px;
}

.mt-145 {
  margin-top: 145px;
}

.mt-150 {
  margin-top: 150px;
}

.mt-155 {
  margin-top: 155px;
}

.mt-160 {
  margin-top: 160px;
}

.mt-165 {
  margin-top: 165px;
}

.mt-170 {
  margin-top: 170px;
}

.mt-175 {
  margin-top: 175px;
}

.mt-180 {
  margin-top: 180px;
}

.mt-185 {
  margin-top: 185px;
}

.mt-190 {
  margin-top: 190px;
}

.mt-195 {
  margin-top: 195px;
}

.mt-200 {
  margin-top: 200px;
}

.mb-5 {
  margin-bottom: 5px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-25 {
  margin-bottom: 25px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-35 {
  margin-bottom: 35px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-45 {
  margin-bottom: 45px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mb-55 {
  margin-bottom: 55px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-65 {
  margin-bottom: 65px;
}

.mb-70 {
  margin-bottom: 70px;
}

.mb-75 {
  margin-bottom: 75px;
}

.mb-80 {
  margin-bottom: 80px;
}

.mb-85 {
  margin-bottom: 85px;
}

.mb-90 {
  margin-bottom: 90px;
}

.mb-95 {
  margin-bottom: 95px;
}

.mb-100 {
  margin-bottom: 100px;
}

.mb-105 {
  margin-bottom: 105px;
}

.mb-110 {
  margin-bottom: 110px;
}

.mb-115 {
  margin-bottom: 115px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-125 {
  margin-bottom: 125px;
}

.mb-130 {
  margin-bottom: 130px;
}

.mb-135 {
  margin-bottom: 135px;
}

.mb-140 {
  margin-bottom: 140px;
}

.mb-145 {
  margin-bottom: 145px;
}

.mb-150 {
  margin-bottom: 150px;
}

.mb-155 {
  margin-bottom: 155px;
}

.mb-160 {
  margin-bottom: 160px;
}

.mb-165 {
  margin-bottom: 165px;
}

.mb-170 {
  margin-bottom: 170px;
}

.mb-175 {
  margin-bottom: 175px;
}

.mb-180 {
  margin-bottom: 180px;
}

.mb-185 {
  margin-bottom: 185px;
}

.mb-190 {
  margin-bottom: 190px;
}

.mb-195 {
  margin-bottom: 195px;
}

.mb-200 {
  margin-bottom: 200px;
}

.ml-5 {
  margin-left: 5px;
}

.ml-10 {
  margin-left: 10px;
}

.ml-15 {
  margin-left: 15px;
}

.ml-20 {
  margin-left: 20px;
}

.ml-25 {
  margin-left: 25px;
}

.ml-30 {
  margin-left: 30px;
}

.ml-35 {
  margin-left: 35px;
}

.ml-40 {
  margin-left: 40px;
}

.ml-45 {
  margin-left: 45px;
}

.ml-50 {
  margin-left: 50px;
}

.ml-55 {
  margin-left: 55px;
}

.ml-60 {
  margin-left: 60px;
}

.ml-65 {
  margin-left: 65px;
}

.ml-70 {
  margin-left: 70px;
}

.ml-75 {
  margin-left: 75px;
}

.ml-80 {
  margin-left: 80px;
}

.ml-85 {
  margin-left: 85px;
}

.ml-90 {
  margin-left: 90px;
}

.ml-95 {
  margin-left: 95px;
}

.ml-100 {
  margin-left: 100px;
}

.ml-105 {
  margin-left: 105px;
}

.ml-110 {
  margin-left: 110px;
}

.ml-115 {
  margin-left: 115px;
}

.ml-120 {
  margin-left: 120px;
}

.ml-125 {
  margin-left: 125px;
}

.ml-130 {
  margin-left: 130px;
}

.ml-135 {
  margin-left: 135px;
}

.ml-140 {
  margin-left: 140px;
}

.ml-145 {
  margin-left: 145px;
}

.ml-150 {
  margin-left: 150px;
}

.ml-155 {
  margin-left: 155px;
}

.ml-160 {
  margin-left: 160px;
}

.ml-165 {
  margin-left: 165px;
}

.ml-170 {
  margin-left: 170px;
}

.ml-175 {
  margin-left: 175px;
}

.ml-180 {
  margin-left: 180px;
}

.ml-185 {
  margin-left: 185px;
}

.ml-190 {
  margin-left: 190px;
}

.ml-195 {
  margin-left: 195px;
}

.ml-200 {
  margin-left: 200px;
}

.mr-5 {
  margin-right: 5px;
}

.mr-10 {
  margin-right: 10px;
}

.mr-15 {
  margin-right: 15px;
}

.mr-20 {
  margin-right: 20px;
}

.mr-25 {
  margin-right: 25px;
}

.mr-30 {
  margin-right: 30px;
}

.mr-35 {
  margin-right: 35px;
}

.mr-40 {
  margin-right: 40px;
}

.mr-45 {
  margin-right: 45px;
}

.mr-50 {
  margin-right: 50px;
}

.mr-55 {
  margin-right: 55px;
}

.mr-60 {
  margin-right: 60px;
}

.mr-65 {
  margin-right: 65px;
}

.mr-70 {
  margin-right: 70px;
}

.mr-75 {
  margin-right: 75px;
}

.mr-80 {
  margin-right: 80px;
}

.mr-85 {
  margin-right: 85px;
}

.mr-90 {
  margin-right: 90px;
}

.mr-95 {
  margin-right: 95px;
}

.mr-100 {
  margin-right: 100px;
}

.mr-105 {
  margin-right: 105px;
}

.mr-110 {
  margin-right: 110px;
}

.mr-115 {
  margin-right: 115px;
}

.mr-120 {
  margin-right: 120px;
}

.mr-125 {
  margin-right: 125px;
}

.mr-130 {
  margin-right: 130px;
}

.mr-135 {
  margin-right: 135px;
}

.mr-140 {
  margin-right: 140px;
}

.mr-145 {
  margin-right: 145px;
}

.mr-150 {
  margin-right: 150px;
}

.mr-155 {
  margin-right: 155px;
}

.mr-160 {
  margin-right: 160px;
}

.mr-165 {
  margin-right: 165px;
}

.mr-170 {
  margin-right: 170px;
}

.mr-175 {
  margin-right: 175px;
}

.mr-180 {
  margin-right: 180px;
}

.mr-185 {
  margin-right: 185px;
}

.mr-190 {
  margin-right: 190px;
}

.mr-195 {
  margin-right: 195px;
}

.mr-200 {
  margin-right: 200px;
}

.pt-5 {
  padding-top: 5px;
}

.pt-10 {
  padding-top: 10px;
}

.pt-15 {
  padding-top: 15px;
}

.pt-20 {
  padding-top: 20px;
}

.pt-25 {
  padding-top: 25px;
}

.pt-30 {
  padding-top: 30px;
}

.pt-35 {
  padding-top: 35px;
}

.pt-40 {
  padding-top: 40px;
}

.pt-45 {
  padding-top: 45px;
}

.pt-50 {
  padding-top: 50px;
}

.pt-55 {
  padding-top: 55px;
}

.pt-60 {
  padding-top: 60px;
}

.pt-65 {
  padding-top: 65px;
}

.pt-70 {
  padding-top: 70px;
}

.pt-75 {
  padding-top: 75px;
}

.pt-80 {
  padding-top: 80px;
}

.pt-85 {
  padding-top: 85px;
}

.pt-90 {
  padding-top: 90px;
}

.pt-95 {
  padding-top: 95px;
}

.pt-100 {
  padding-top: 100px;
}

.pt-105 {
  padding-top: 105px;
}

.pt-110 {
  padding-top: 110px;
}

.pt-115 {
  padding-top: 115px;
}

.pt-120 {
  padding-top: 120px;
}

.pt-125 {
  padding-top: 125px;
}

.pt-130 {
  padding-top: 130px;
}

.pt-135 {
  padding-top: 135px;
}

.pt-140 {
  padding-top: 140px;
}

.pt-145 {
  padding-top: 145px;
}

.pt-150 {
  padding-top: 150px;
}

.pt-155 {
  padding-top: 155px;
}

.pt-160 {
  padding-top: 160px;
}

.pt-165 {
  padding-top: 165px;
}

.pt-170 {
  padding-top: 170px;
}

.pt-175 {
  padding-top: 175px;
}

.pt-180 {
  padding-top: 180px;
}

.pt-185 {
  padding-top: 185px;
}

.pt-190 {
  padding-top: 190px;
}

.pt-195 {
  padding-top: 195px;
}

.pt-200 {
  padding-top: 200px;
}

.pb-5 {
  padding-bottom: 5px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-15 {
  padding-bottom: 15px;
}

.pb-20 {
  padding-bottom: 20px;
}

.pb-25 {
  padding-bottom: 25px;
}

.pb-30 {
  padding-bottom: 30px;
}

.pb-35 {
  padding-bottom: 35px;
}

.pb-40 {
  padding-bottom: 40px;
}

.pb-45 {
  padding-bottom: 45px;
}

.pb-50 {
  padding-bottom: 50px;
}

.pb-55 {
  padding-bottom: 55px;
}

.pb-60 {
  padding-bottom: 60px;
}

.pb-65 {
  padding-bottom: 65px;
}

.pb-70 {
  padding-bottom: 70px;
}

.pb-75 {
  padding-bottom: 75px;
}

.pb-80 {
  padding-bottom: 80px;
}

.pb-85 {
  padding-bottom: 85px;
}

.pb-90 {
  padding-bottom: 90px;
}

.pb-95 {
  padding-bottom: 95px;
}

.pb-100 {
  padding-bottom: 100px;
}

.pb-105 {
  padding-bottom: 105px;
}

.pb-110 {
  padding-bottom: 110px;
}

.pb-115 {
  padding-bottom: 115px;
}

.pb-120 {
  padding-bottom: 120px;
}

.pb-125 {
  padding-bottom: 125px;
}

.pb-130 {
  padding-bottom: 130px;
}

.pb-135 {
  padding-bottom: 135px;
}

.pb-140 {
  padding-bottom: 140px;
}

.pb-145 {
  padding-bottom: 145px;
}

.pb-150 {
  padding-bottom: 150px;
}

.pb-155 {
  padding-bottom: 155px;
}

.pb-160 {
  padding-bottom: 160px;
}

.pb-165 {
  padding-bottom: 165px;
}

.pb-170 {
  padding-bottom: 170px;
}

.pb-175 {
  padding-bottom: 175px;
}

.pb-180 {
  padding-bottom: 180px;
}

.pb-185 {
  padding-bottom: 185px;
}

.pb-190 {
  padding-bottom: 190px;
}

.pb-195 {
  padding-bottom: 195px;
}

.pb-200 {
  padding-bottom: 200px;
}

.pb-205 {
  padding-bottom: 205px;
}

.pb-210 {
  padding-bottom: 210px;
}

.pb-215 {
  padding-bottom: 215px;
}

.pb-220 {
  padding-bottom: 220px;
}

.pb-225 {
  padding-bottom: 225px;
}

.pb-230 {
  padding-bottom: 230px;
}

.pb-235 {
  padding-bottom: 235px;
}

.pb-240 {
  padding-bottom: 240px;
}

.pb-245 {
  padding-bottom: 245px;
}

.pb-250 {
  padding-bottom: 250px;
}

.pb-255 {
  padding-bottom: 255px;
}

.pb-260 {
  padding-bottom: 260px;
}

.pb-265 {
  padding-bottom: 265px;
}

.pb-270 {
  padding-bottom: 270px;
}

.pb-275 {
  padding-bottom: 275px;
}

.pb-280 {
  padding-bottom: 280px;
}

.pb-285 {
  padding-bottom: 285px;
}

.pb-290 {
  padding-bottom: 290px;
}

.pb-295 {
  padding-bottom: 295px;
}

.pb-300 {
  padding-bottom: 300px;
}

.pl-5 {
  padding-left: 5px;
}

.pl-10 {
  padding-left: 10px;
}

.pl-15 {
  padding-left: 15px;
}

.pl-20 {
  padding-left: 20px;
}

.pl-25 {
  padding-left: 25px;
}

.pl-30 {
  padding-left: 30px;
}

.pl-35 {
  padding-left: 35px;
}

.pl-40 {
  padding-left: 40px;
}

.pl-45 {
  padding-left: 45px;
}

.pl-50 {
  padding-left: 50px;
}

.pl-55 {
  padding-left: 55px;
}

.pl-60 {
  padding-left: 60px;
}

.pl-65 {
  padding-left: 65px;
}

.pl-70 {
  padding-left: 70px;
}

.pl-75 {
  padding-left: 75px;
}

.pl-80 {
  padding-left: 80px;
}

.pl-85 {
  padding-left: 85px;
}

.pl-90 {
  padding-left: 90px;
}

.pl-95 {
  padding-left: 95px;
}

.pl-100 {
  padding-left: 100px;
}

.pl-105 {
  padding-left: 105px;
}

.pl-110 {
  padding-left: 110px;
}

.pl-115 {
  padding-left: 115px;
}

.pl-120 {
  padding-left: 120px;
}

.pl-125 {
  padding-left: 125px;
}

.pl-130 {
  padding-left: 130px;
}

.pl-135 {
  padding-left: 135px;
}

.pl-140 {
  padding-left: 140px;
}

.pl-145 {
  padding-left: 145px;
}

.pl-150 {
  padding-left: 150px;
}

.pl-155 {
  padding-left: 155px;
}

.pl-160 {
  padding-left: 160px;
}

.pl-165 {
  padding-left: 165px;
}

.pl-170 {
  padding-left: 170px;
}

.pl-175 {
  padding-left: 175px;
}

.pl-180 {
  padding-left: 180px;
}

.pl-185 {
  padding-left: 185px;
}

.pl-190 {
  padding-left: 190px;
}

.pl-195 {
  padding-left: 195px;
}

.pl-200 {
  padding-left: 200px;
}

.pr-5 {
  padding-right: 5px;
}

.pr-10 {
  padding-right: 10px;
}

.pr-15 {
  padding-right: 15px;
}

.pr-20 {
  padding-right: 20px;
}

.pr-25 {
  padding-right: 25px;
}

.pr-30 {
  padding-right: 30px;
}

.pr-35 {
  padding-right: 35px;
}

.pr-40 {
  padding-right: 40px;
}

.pr-45 {
  padding-right: 45px;
}

.pr-50 {
  padding-right: 50px;
}

.pr-55 {
  padding-right: 55px;
}

.pr-60 {
  padding-right: 60px;
}

.pr-65 {
  padding-right: 65px;
}

.pr-70 {
  padding-right: 70px;
}

.pr-75 {
  padding-right: 75px;
}

.pr-80 {
  padding-right: 80px;
}

.pr-85 {
  padding-right: 85px;
}

.pr-90 {
  padding-right: 90px;
}

.pr-95 {
  padding-right: 95px;
}

.pr-100 {
  padding-right: 100px;
}

.pr-105 {
  padding-right: 105px;
}

.pr-110 {
  padding-right: 110px;
}

.pr-115 {
  padding-right: 115px;
}

.pr-120 {
  padding-right: 120px;
}

.pr-125 {
  padding-right: 125px;
}

.pr-130 {
  padding-right: 130px;
}

.pr-135 {
  padding-right: 135px;
}

.pr-140 {
  padding-right: 140px;
}

.pr-145 {
  padding-right: 145px;
}

.pr-150 {
  padding-right: 150px;
}

.pr-155 {
  padding-right: 155px;
}

.pr-160 {
  padding-right: 160px;
}

.pr-165 {
  padding-right: 165px;
}

.pr-170 {
  padding-right: 170px;
}

.pr-175 {
  padding-right: 175px;
}

.pr-180 {
  padding-right: 180px;
}

.pr-185 {
  padding-right: 185px;
}

.pr-190 {
  padding-right: 190px;
}

.pr-195 {
  padding-right: 195px;
}

.pr-200 {
  padding-right: 200px;
}

.container {
  padding-right: 15px;
  padding-left: 15px;
}

.row {
  --bs-gutter-x: 30px;
}
.row.g-0 {
  --bs-gutter-x: 0;
}
.row.g-10 {
  --bs-gutter-x: 10px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .row.row-20 {
    --bs-gutter-x: 20px;
  }
}

@media (min-width: 1400px) {
  .container {
    max-width: 1200px;
  }
  .container.container-custom-1 {
    max-width: 1710px;
  }
  .container.container-custom-2 {
    max-width: 1370px;
  }
  .container.container-custom-3 {
    max-width: 1715px;
  }
  .container.ns-header-navbar-2 {
    max-width: 1330px;
  }
  .container.ns-header-topbar-wrap-2 {
    max-width: 1330px;
  }
}
@media (min-width: 1600px) {
  .container.ns-header-navbar-2 {
    max-width: 1370px;
  }
  .container.ns-header-topbar-wrap-2 {
    max-width: 1370px;
  }
  .container.container-custom-2 {
    max-width: 1600px;
  }
}
/* <<<<<<<    Declaration   >>>>>>>>> */
:root {
  /**
  @color declaration
  */
  --clr-common-white: #fff;
  --clr-common-black: #242424;
  --clr-common-black-soft: #333333;
  --clr-common-black-deep: #000000;
  --clr-body-heading: #1f2126;
  --clr-body-text: #7d7f85;
  --clr-color-blue: #000a30;
  --clr-theme-primary: #0e84e1;
  --clr-theme-primary-dark: #6551b3;
  --clr-theme-primary-soft: #4285f4;

  --clr-theme-1: #0e84e1;
  --clr-theme-2: #0a0a09;
  --clr-theme-3: #6551b3;
  --clr-theme-4: #9747ff;
  --clr-theme-5: #4285f4;
  --clr-bg-gray: #f6f6f6;
  --clr-bg-gray-2: #f1f1f1;
  --clr-bg-gray-3: #ececec;
  --clr-bg-gray-4: #b2b2b2;
  --clr-bg-gray-5: #bcbcbc;
  --clr-bg-gray-6: #828282;
  --clr-bg-gray-7: #eeeeee;
  --clr-bg-gray-8: #d5d5d5;
  --clr-bg-gray-9: #b8b8b8;
  --clr-bg-gray-10: #a2a2a2;
  --clr-bg-gray-11: #c1c1c1;
  --clr-bg-gray-12: #f5f5f5;
  --clr-bg-gray-13: #dbdbdb;
  --clr-bg-gray-14: #cecece;
  --clr-bg-gray-15: #f8f2f2;
  --clr-bg-gray-16: #f8f8f8;
}

.bg-default {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.dark-bg {
  background-color: #242424;
}

.p-relative {
  position: relative;
  z-index: 1;
}

.img-w-100 {
  width: 100%;
}

.mb-m-115 {
  margin-bottom: -115px;
}

.w-60 {
  width: 60%;
}

.w-80 {
  width: 80%;
}

.w-85 {
  width: 85%;
}

.w-75 {
  width: 75%;
}

.w-90 {
  width: 90%;
}

.w-94 {
  width: 94%;
}

.gap-30 {
  gap: 30px;
}

.pt-275 {
  padding-top: 275px;
}

.pt-210 {
  padding-top: 210px;
}

.pt-220 {
  padding-top: 220px;
}

.ml-310 {
  margin-left: 310px;
}

/*
************
*************************
02. header
******************************************************* 
*************************************************************** */

/* ============================================
   SMOOTH SCROLL ANIMATIONS - ALL SECTIONS
   ============================================ */

/* Base smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Fade-in animation for all major sections */
.scroll-fade-in {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.scroll-fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Slide from left */
.scroll-slide-left {
  opacity: 0;
  transform: translateX(-60px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.scroll-slide-left.visible {
  opacity: 1;
  transform: translateX(0);
}

/* Slide from right */
.scroll-slide-right {
  opacity: 0;
  transform: translateX(60px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.scroll-slide-right.visible {
  opacity: 1;
  transform: translateX(0);
}

/* Scale up animation */
.scroll-scale-up {
  opacity: 0;
  transform: scale(0.9);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.scroll-scale-up.visible {
  opacity: 1;
  transform: scale(1);
}

/* Stagger delays for multiple items */
.scroll-fade-in:nth-child(1) {
  transition-delay: 0.1s;
}
.scroll-fade-in:nth-child(2) {
  transition-delay: 0.2s;
}
.scroll-fade-in:nth-child(3) {
  transition-delay: 0.3s;
}
.scroll-fade-in:nth-child(4) {
  transition-delay: 0.4s;
}
.scroll-fade-in:nth-child(5) {
  transition-delay: 0.5s;
}
.scroll-fade-in:nth-child(6) {
  transition-delay: 0.6s;
}

/* Mobile optimization - reduce animation intensity */
@media (max-width: 767px) {
  .scroll-fade-in,
  .scroll-slide-left,
  .scroll-slide-right {
    transform: translateY(20px) !important;
  }

  .scroll-fade-in.visible,
  .scroll-slide-left.visible,
  .scroll-slide-right.visible {
    transform: translateY(0) !important;
  }
}

/* Disable animations on low-end devices */
@media (prefers-reduced-motion: reduce) {
  .scroll-fade-in,
  .scroll-slide-left,
  .scroll-slide-right,
  .scroll-scale-up {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/*  */

/* preloader */

/* =========================
   PRELOADER WRAPPER
========================= */
.preloader {
  position: fixed;
  inset: 0;
  background: #ffffff;
  z-index: 99999;

  opacity: 1;
  transition: opacity 0.7s ease, filter 0.7s ease, transform 0.7s ease;
}

.preloader.loaded {
  opacity: 0;
  filter: blur(6px);
  transform: scale(1.05);
  pointer-events: none;
}

/* =========================
   RUBIX CUBE
========================= */
.rubix-cube {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 54px;
  height: 54px;
}

.rubix-cube .layer {
  position: absolute;
  width: 14px;
  height: 14px;
  background: #0e84e1;
}

.layer-3 {
  background: #6551b3;
}

/* grid positions */
.layer-1 {
  top: 0;
  left: 0;
  animation: rc4 2.4s infinite linear;
}
.layer-2 {
  top: 0;
  left: 20px;
  animation: rc3 2.4s infinite linear;
}
.layer-3 {
  top: 0;
  left: 40px;
}

.layer-4 {
  top: 20px;
  left: 0;
  animation: rc5 2.4s infinite linear;
}
.layer-5 {
  top: 20px;
  left: 20px;
  animation: rc2 2.4s infinite linear;
}
.layer-6 {
  top: 20px;
  left: 40px;
  animation: rc1 2.4s infinite linear;
}

.layer-7 {
  top: 40px;
  left: 0;
  animation: rc6 2.4s infinite linear;
}
.layer-8 {
  top: 40px;
  left: 20px;
  animation: rc7 2.4s infinite linear;
}

/* =========================
   ANIMATIONS (movement engine)
========================= */

@keyframes rc1 {
  0% {
    top: 20px;
    left: 40px;
  }
  50% {
    top: 40px;
    left: 40px;
  }
  100% {
    top: 40px;
    left: 20px;
  }
}

@keyframes rc2 {
  0% {
    left: 20px;
  }
  50% {
    left: 40px;
  }
  100% {
    left: 40px;
  }
}

@keyframes rc3 {
  0% {
    top: 0;
  }
  50% {
    top: 20px;
  }
  100% {
    top: 20px;
  }
}

@keyframes rc4 {
  0% {
    left: 0;
  }
  50% {
    left: 20px;
  }
  100% {
    left: 20px;
  }
}

@keyframes rc5 {
  0% {
    top: 20px;
  }
  50% {
    top: 0;
  }
  100% {
    top: 0;
  }
}

@keyframes rc6 {
  0% {
    top: 40px;
  }
  50% {
    top: 20px;
  }
  100% {
    top: 20px;
  }
}

@keyframes rc7 {
  0% {
    left: 20px;
  }
  50% {
    left: 0;
  }
  100% {
    left: 0;
  }
}
/*  */
.ns-header-wrap {
  display: flex;
  background: #1f242c;
}
.ns-header-right {
  width: calc(100% - 320px);
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-right {
    width: calc(100% - 240px);
  }
}
@media (max-width: 767px) {
  .ns-header-right {
    width: calc(100% - 150px);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-header-right {
    width: calc(100% - 200px);
  }
}
@media (min-width: 380px) and (max-width: 575px) {
  .ns-header-right {
    width: calc(100% - 180px);
  }
}
.ns-header-logo {
  position: relative;
  width: 320px;
  flex: 0 0 320px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-logo {
    width: 240px;
    flex: 0 0 240px;
  }
  .ns-header-logo img {
    height: 100%;
  }
}
@media (max-width: 767px) {
  .ns-header-logo {
    flex: 0 0 170px;
    width: 170px;
  }
  .ns-header-logo img {
    height: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-header-logo {
    flex: 0 0 220px;
    width: 220px;
  }
  .ns-header-logo img {
    width: 100%;
  }
}
.ns-header-logo img {
  height: 100%;
}
.ns-header-logo-img {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 40px);
  height: 100%;
  display: grid;
  place-items: center;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-logo-img {
    width: calc(100% - 45px);
    padding-left: 20px;
  }
}
@media (max-width: 767px) {
  .ns-header-logo-img {
    width: calc(100% - 40px);
    padding-left: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-header-logo-img {
    width: calc(100% - 40px);
    padding-left: 30px;
  }
}
@media (min-width: 380px) and (max-width: 575px) {
  .ns-header-logo-img {
    padding-left: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-logo::after {
    right: 8px;
  }
}
@media (max-width: 767px) {
  .ns-header-logo::after {
    right: -1px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-header-logo::after {
    right: -3px;
  }
}
@media (min-width: 380px) and (max-width: 575px) {
  .ns-header-logo::after {
    right: 0;
  }
}
.ns-header-topbar {
  background-color: #f1f2f7;
  position: relative;
  z-index: 6;
}
.ns-header-topbar::before {
  position: absolute;
  left: -9px;
  top: 0;
  height: 100%;
  width: 20px;
  background-color: inherit;
  content: "";
  transform: skewX(-15deg);
}
.ns-header-topbar-wrap {
  display: flex;
  justify-content: space-between;
  min-height: 50px;
  margin-left: 50px;
  margin-right: 175px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-header-topbar-wrap {
    margin-right: 120px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-header-topbar-wrap {
    margin-right: 80px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-topbar-wrap {
    margin-right: 60px;
    margin-left: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-header-topbar-wrap {
    margin-right: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-topbar-wrap {
    margin-right: 50px;
    margin-left: 20px;
  }
}
.ns-header-topbar-left {
  display: flex;
  gap: 15px;
  align-items: center;
}
.ns-header-topbar-left span {
  font-size: 16px;
  display: inline-block;
}
.ns-header-topbar-social a {
  display: inline-block;
  font-size: 16px;
  color: var(--clr-common-black);
  margin-right: 10px;
}
.ns-header-topbar-social a:last-child {
  margin-right: 0;
}
.ns-header-topbar-social a:hover {
  color: var(--clr-theme-primary);
}
.ns-header-topbar-right {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ns-header-topbar-lan .nice-select {
  background: transparent;
  border: none;
  font-size: 16px;
  color: var(--clr-body-text);
  padding-left: 0;
  padding-right: 20px;
}
.ns-header-topbar-lan .nice-select:after {
  width: 7px;
  height: 7px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  right: 5px;
}
.ns-header-topbar-lan .nice-select span {
  color: var(--clr-common-white);
  font-size: 17px;
  display: inline-block;
}
.ns-header-topbar-lan .nice-select .list {
  right: 0;
  left: auto;
}
.ns-header-topbar-lan .nice-select .list li {
  color: var(--clr-body-text);
  font-size: 16px;
}
.ns-header-topbar-lan .nice-select .list li.selected {
  font-weight: 400;
}
.ns-header-topbar-lan.ns-topbar-lan-1 .nice-select {
  padding-right: 20px;
}
.ns-header-topbar-lan.ns-topbar-lan-1 .nice-select span {
  color: var(--clr-body-text);
}
.ns-header-topbar-lan.ns-topbar-lan-1 .nice-select:after {
  border-color: var(--clr-body-text);
  right: 5px;
}
.ns-header-main-menu ul .menu-has-child {
  position: relative;
  z-index: 5;
  text-align: start;
}
.ns-header-main-menu ul li {
  display: inline-block;
  margin-right: 40px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-header-main-menu ul li {
    margin-right: 30px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-main-menu ul li {
    margin-right: 25px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-header-main-menu ul li {
    margin-right: 35px;
  }
}
.ns-header-main-menu ul li:last-child {
  margin-right: 0;
}
.ns-header-main-menu ul li:is(.menu-has-child) > a::after {
  font-family: "Font Awesome 5 Pro";
  content: "\f107";
  font-size: 20px;
  font-weight: 300;
  display: inline-block;
  margin-left: 5px;
  transform: translateY(2px);
}
.ns-header-main-menu ul li a {
  font-size: 17px;
  font-weight: 500;
  padding: 34px 0;
  color: #ffffff;
  position: relative;
  display: block;
}
.ns-header-main-menu ul li .submenu {
  position: absolute;
  left: 0;
  top: 90%;
  background: #fff;
  width: 240px;
  opacity: 0;
  z-index: 9;
  visibility: hidden;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  box-shadow: 0 9px 19px rgba(0, 0, 0, 0.1);
}
.ns-header-main-menu ul li .submenu li {
  display: block;
  margin-right: 0;
  position: relative;
  z-index: 5;
}
.ns-header-main-menu ul li .submenu li a {
  padding: 15px 25px;
  color: var(--clr-body-heading);
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-header-main-menu ul li .submenu li .submenu {
  left: 100%;
  top: 0;
}
.ns-header-main-menu ul li .submenu li:hover > a {
  background-color: var(--clr-theme-primary);
  color: #fff;
}
.ns-header-main-menu ul li .submenu li:not(:last-child) {
  border-bottom: 1px solid #f2f2f2;
}
.ns-header-main-menu ul li:hover > .submenu {
  opacity: 1;
  visibility: visible;
  top: 100%;
}
.ns-header-main-menu ul li:hover > a {
  color: var(--clr-theme-primary);
}
.ns-header-menu {
  display: flex;
  justify-content: space-between;
  margin-left: 50px;
  margin-right: 175px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-header-menu {
    margin-right: 120px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-header-menu {
    margin-right: 80px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-menu {
    margin-right: 60px;
    margin-left: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-header-menu {
    margin-right: 50px;
  }
}
@media only screen and (max-width: 1050px) {
  .desktop-menu ul li a {
    font-size: 15px !important;
  }
}
@media only screen and (max-width: 1020px) {
  .desktop-menu ul li a {
    font-size: 13px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-menu {
    margin-right: 50px;
    margin-left: 20px;
  }
}
@media (max-width: 767px) {
  .ns-header-menu {
    margin-right: 20px;
    margin-left: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-header-menu {
    margin-right: 30px;
  }
}
@media (min-width: 380px) and (max-width: 575px) {
  .ns-header-menu {
    margin-right: 30px;
  }
}
.ns-header-menu-right {
  display: flex;
  align-items: center;
  padding: 22px 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-menu-right {
    padding: 12px 0;
  }
}
@media (max-width: 767px) {
  .ns-header-menu-right {
    padding: 18px 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-header-menu-right {
    padding: 22px 0;
  }
}
@media (min-width: 380px) and (max-width: 575px) {
  .ns-header-menu-right {
    padding: 22px 0;
  }
}
.ns-header-menu-action {
  display: flex;
  align-items: center;
}
.ns-header-menu-btn {
  margin-left: 25px;
}

@media (max-width: 767px) {
  .ns-header-action-search {
    width: 50px;
    height: 50px;
    line-height: 50px;
  }
}
.ns-header-action-cart {
  font-size: 22px;
  margin-left: 25px;
  position: relative;
  display: block;
  color: #8d8d8d;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-header-action-cart {
    margin-left: 25px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-action-cart {
    margin-left: 20px;
  }
}
@media (max-width: 767px) {
  .ns-header-action-cart {
    margin-left: 20px;
  }
}
.ns-header-action-cart span {
  position: absolute;
  right: -12px;
  top: -7px;
  font-size: 9px;
  width: 18px;
  height: 18px;
  background-color: var(--clr-theme-primary);
  border-radius: 50%;
  color: #fff;
  text-align: center;
  line-height: 18px;
}
.ns-header-action-cart:hover {
  color: var(--clr-theme-primary);
}

.ns-header-main-menu > ul > li > a::before {
  position: absolute;
  right: 0;
  bottom: 32px;
  width: 0;
  height: 2px;
  background-color: var(--clr-theme-primary);
  content: "";
  width: 0;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-header-main-menu > ul > li:hover > a::before {
  left: 0;
  right: auto;
  width: 100%;
}

.menu-bar {
  display: flex;
  justify-content: end;
  align-items: center;
}
@media (max-width: 767px) {
  .menu-bar.ml-25 {
    margin-left: 12px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .menu-bar.ml-25 {
    margin-left: 20px;
  }
}

.navbar-sign {
  height: 50px;
  line-height: 50px;
  width: 50px;
  border-radius: 50%;
  border: 1px solid #8d8d8d;
  display: inline-block;
  text-align: center;
  font-size: 16px;
  cursor: pointer;
  color: #8d8d8d;
  transition: all 0.3s linear 0s;
}
@media (max-width: 767px) {
  .navbar-sign:is(.ml-20) {
    margin-left: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .navbar-sign:is(.ml-20) {
    margin-left: 20px;
  }
}
.navbar-sign:hover {
  border-color: transparent;
  background-color: var(--clr-theme-primary);
  color: var(--clr-common-white);
}

.ns-header-topbar.ns-header-topbar-2 {
  background-color: #232429;
}

.ns-header-menu-2 {
  display: flex;
  justify-content: flex-end;
  gap: 40px;
}

.ns-header-topbar-wrap-2 {
  display: flex;
  justify-content: space-between;
  min-height: 50px;
}

.ns-header-topbar-left.ns-header-topbar-left-2 {
  background-color: #ffab17;
  position: relative;
  z-index: 1;
  margin-left: -15px;
}

.ns-header-topbar-left.ns-header-topbar-left-2::before {
  position: absolute;
  left: -1000px;
  top: 0;
  height: 100%;
  content: "";
  width: 1370px;
  background-color: #ffab17;
  z-index: -1;
  right: 0;
  transform: skew(-30deg);
}

.ns-header-topbar-left.ns-header-topbar-left-2 span {
  color: #fff;
}

.ns-header-topbar-left.ns-header-topbar-left-2 .ns-header-topbar-social a {
  color: #fff;
}
.ns-header-topbar-left.ns-header-topbar-left-2
  .ns-header-topbar-social
  a:hover {
  color: var(--clr-body-heading);
}

.ns-header-topbar.ns-header-topbar-2::before {
  display: none;
}

.ns-header-topbar-shape::before {
  position: absolute;
  top: 0;
  right: -86px;
  content: "";
  height: 100%;
  width: 60px;
  transform: skew(-15deg);
  background-color: rgb(255, 171, 23);
  opacity: 0.341;
  z-index: -1;
}

.ns-header-topbar-shape::after {
  position: absolute;
  content: "";
  top: 0;
  right: -93px;
  height: 100%;
  width: 50px;
  background-color: rgb(255, 171, 23);
  opacity: 0.341;
  z-index: -2;
}

.ns-header-logo-3 {
  max-width: 165px;
}

.transparent-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 5;
}

.ns-header-navbar-3 {
  padding-top: 20px;
  padding-bottom: 20px;
}

.ns-header-area-3 .ns-header-main-menu ul li a {
  color: #fff;
}
.ns-header-area-3 .ns-header-action-search {
  border-color: #8d8d8d;
  color: #fff;
}
.ns-header-area-3 .ns-header-action-search:hover {
  border-color: transparent;
}
.ns-header-area-3 .navbar-sign i {
  color: #fff;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-menu-2 .ns-header-main-menu ul li {
    margin-right: 30px;
  }
  .ns-header-menu-2 .ns-header-main-menu ul li:last-child {
    margin-right: 0;
  }
}

/* Search  */
.ba-search-popup {
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: 100%;
  z-index: 99999;
  margin-top: -540px;
  transform: translateY(-110%);
  -webkit-transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
  -moz-transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
  -o-transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
  transition: all 1500ms cubic-bezier(0.86, 0, 0.07, 1);
  -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
  -moz-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
  -o-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
  transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
}
.ba-search-popup::after {
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  height: 560px;
  background-image: url(../img/bg/waves-shape.html);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-top: 0px;
  content: "";
}
.ba-search-popup .ba-color-layer {
  position: fixed;
  content: "";
  left: 0;
  top: 0;
  height: 100vh;
  width: 100%;
  z-index: 999;
  background-color: rgba(0, 0, 0, 0.9);
  -webkit-transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
  -moz-transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
  -o-transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
  transition: all 1500ms cubic-bezier(0.86, 0, 0.07, 1);
  -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
  -moz-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
  -o-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
  transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
}

.ba-search-popup-inner {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 9999;
  transform: translate(-50%, -50%);
  width: 50%;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ba-search-popup-inner {
    width: 70%;
  }
}
@media (max-width: 767px) {
  .ba-search-popup-inner {
    width: 85%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ba-search-popup-inner {
    width: 70%;
  }
}
.ba-search-popup-inner form {
  position: relative;
}
.ba-search-popup-inner form input {
  width: 100%;
  height: 70px;
  border: 0;
  border-radius: 4px;
  padding: 0 20px;
  padding-right: 90px;
}
.ba-search-popup-inner form button {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 70px;
  border: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  background: var(--clr-theme-primary);
  color: #fff;
  font-size: 20px;
}

.search-active .ba-search-popup {
  transform: translateY(0%);
  margin-top: var(--margin-zero);
}

.ns-header-area-4 {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  z-index: 99;
}

.ns-header-wrap-4 {
  background-color: transparent;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-header-wrap-4.ml-310 {
    margin-left: 150px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-header-wrap-4.ml-310 {
    margin-left: 70px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-wrap-4.ml-310 {
    margin-left: 45px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-header-wrap-4.ml-310 {
    margin-left: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-wrap-4.ml-310 {
    margin-left: 30px;
  }
}
@media (max-width: 767px) {
  .ns-header-wrap-4.ml-310 {
    margin-left: 0px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-header-wrap-4.ml-310 {
    margin-left: 20px;
  }
}

.ns-header-logo-4 {
  z-index: 9;
}
.ns-header-logo-4.ns-header-logo::after {
  display: none;
}
.ns-header-logo-4 img {
  height: 100%;
}

.ns-header-topbar-4 {
  background-color: var(--clr-theme-primary);
}
.ns-header-topbar-4 span {
  color: #fff;
}
.ns-header-topbar-4 .ns-header-topbar-social a:hover {
  color: #fff;
}
.ns-header-topbar-4.ns-header-topbar::before {
  left: -15px;
  width: 35px;
}

@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-header-topbar-wrap-4 {
    margin-right: 130px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-header-topbar-wrap-4 {
    margin-right: 70px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-topbar-wrap-4 {
    margin-right: 45px;
  }
}

.ns-header-navbar-4 {
  background-color: #f3f7fd;
  border-bottom: 1px solid #dde1e7;
  position: relative;
}
.ns-header-navbar-4::before {
  position: absolute;
  left: -55px;
  top: 0;
  height: calc(100% + 1px);
  width: 70px;
  background-color: #f3f7fd;
  content: "";
  border-bottom: 1px solid #dde1e7;
}

.ns-header-menu-4 {
  justify-content: end;
  gap: 50px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-header-menu-4 {
    margin-right: 130px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-header-menu-4 {
    margin-right: 70px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-header-menu-4 {
    margin-right: 45px;
  }
}

.ns-header-menu-right-4 {
  gap: 30px;
}

.ns-header-menu-action-4 {
  display: flex;
  gap: 15px;
  align-items: center;
}
.ns-header-menu-action-4 .ns-header-action-icon {
  width: 45px;
  flex-shrink: 0;
  height: 45px;
}
.ns-header-menu-action-4 .ns-header-action-icon i {
  font-size: 45px;
  color: var(--clr-theme-primary);
}
.ns-header-menu-action-4 .ns-header-action-info span {
  color: var(--clr-theme-primary);
  font-size: 14px;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 5px;
}
.ns-header-menu-action-4 .ns-header-action-info h4 {
  color: #0e2b3d;
  font-size: 18px;
  font-weight: 600;
  margin: 0;
}

@media (max-width: 575.98px) {
  .ns-header-menu-right.ns-header-menu-right-4 {
    padding: 15px 0;
  }
}
.ns-header-navbar-5 {
  padding: 17px 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-header-navbar-5 {
    padding: 10px 0;
  }
}
@media (max-width: 767px) {
  .ns-header-navbar-5 {
    padding: 0;
  }
}
.ns-header-navbar-5.ns-header-navbar-4 {
  background-color: transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
  position: relative;
}
.ns-header-navbar-5.ns-header-navbar-4::before {
  position: absolute;
  left: -70px;
  top: 0;
  height: calc(100% + 1px);
  width: 70px;
  background-color: transparent;
  content: "";
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}
.ns-header-navbar-5 .ns-header-main-menu ul li a {
  color: #fff;
}
.ns-header-navbar-5 .ns-header-action-search {
  border: 1px solid #fff;
  color: #fff;
}
.ns-header-navbar-5 .ns-header-action-search:hover {
  border-color: var(--clr-theme-primary);
}

.navbar-sign-white {
  color: #fff;
  border-color: #fff;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-header-area-6 .ns-header-navbar-5 {
    padding: 10px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-header-area-6 {
    overflow: hidden;
  }
  .ns-header-area-6 .ns-header-navbar-5 {
    padding: 5px 0;
  }
}

@media (max-width: 575.98px) {
  .ns-header-area-6 .ns-header-logo-2 {
    margin-left: 15px;
  }
  .ns-header-area-6 .ns-header-menu-2 {
    margin-right: 15px;
  }
}
/*
************
*************************
03. banner
******************************************************* 
*************************************************************** */
.ns-banner-single {
  position: relative;
  z-index: 1;
  min-height: 800px;
  display: flex;
  align-items: center;
}
.ns-banner-single::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #1f2126;
  opacity: 0.4;
  z-index: -1;
}
@media (max-width: 767px) {
  .ns-banner-single {
    min-height: 620px;
  }
}

.ns-banner-single .ns-shape-img {
  position: absolute;
  z-index: -2;
}
.ns-banner-content {
  margin-top: -80px;
}

.ns-banner-content-subtitle {
  display: inline-block;
  background: #fff;
  font-size: 17px;
  font-weight: 500;
  color: #000000;
  padding-left: 39px;
  height: 40px;
  line-height: 40px;
  position: relative;
  padding-right: 12px;
  margin-bottom: 30px;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .ns-banner-content-subtitle {
    font-size: 15px;
    height: 35px;
    line-height: 35px;
    margin-bottom: 20px;
  }
}

.ns-banner-content-subtitle::after {
  position: absolute;
  content: "";
  top: 0;
  right: -20px;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  width: 20px;
  height: 40px;
  background-color: #fff;
}
@media (max-width: 767px) {
  .ns-banner-content-subtitle::after {
    height: 35px;
  }
}

.ns-banner-content-subtitle::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color: var(--clr-theme-primary-dark);
  border-radius: 50%;
}

.ns-banner-content-title {
  font-size: 50px;
  color: #fff;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-content-title {
    font-size: 65px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-content-title {
    font-size: 70px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-content-title {
    font-size: 60px;
  }
}
@media (max-width: 767px) {
  .ns-banner-content-title {
    font-size: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-content-title {
    font-size: 45px;
  }
}

.ns-banner-content p {
  font-size: 17px;
  color: #fff;
  margin-bottom: 42px;
}
@media (max-width: 767px) {
  .ns-banner-content p {
    font-size: 15px;
    margin-bottom: 35px;
  }
  .ns-banner-content p br {
    display: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-content p {
    font-size: 16px;
    margin-bottom: 35px;
  }
}

.ns-banner-action-btn {
  display: flex;
  gap: 30px;
  align-items: center;
}
@media (max-width: 767px) {
  .ns-banner-action-btn {
    gap: 25x;
  }
}

.ns-banner-shape-1.ns-shape-img {
  top: 80px;
  left: 310px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-shape-1.ns-shape-img {
    left: 250px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-shape-1.ns-shape-img {
    left: 200px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-shape-1.ns-shape-img {
    left: 160px;
  }
}

.ns-banner-shape-3.ns-shape-img {
  top: 0;
  right: 0;
}
@media (max-width: 767px) {
  .ns-banner-shape-3.ns-shape-img {
    width: 35%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-shape-3.ns-shape-img {
    width: initial;
  }
}

.ns-banner-shape-2.ns-shape-img {
  bottom: -65px;
  left: 25px;
}

.ns-banner-shape-4.ns-shape-img {
  bottom: -660px;
  right: 0;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-shape-4.ns-shape-img {
    bottom: -730px;
    right: -45px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-shape-4.ns-shape-img {
    bottom: -750px;
    right: -60px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-shape-4.ns-shape-img {
    bottom: -450px;
    right: 0;
  }
}

.ns-banner-shape-5.ns-shape-img {
  top: 0;
  left: -190px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-shape-5.ns-shape-img {
    left: -210px;
  }
}
@media (max-width: 767px) {
  .ns-banner-shape-5.ns-shape-img {
    left: -150px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-shape-5.ns-shape-img {
    left: -240px;
  }
}

.ns-banner-single.bg-default {
  overflow: hidden;
}

.ns-banner-area-2 {
  overflow: hidden;
}

.ns-banner-single-2 {
  min-height: 890px;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .ns-banner-single-2 {
    min-height: 640px;
  }
}

.ns-banner-single-2 {
  display: flex;
  align-items: center;
}

.ns-banner-shape-2 {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: max-content;
  z-index: -1;
}

.ns-banner-content-2 {
  background-color: #ffab17;
  padding: 65px 65px;
  padding-right: 45px;
  border-radius: 5px;
  outline: 5px solid #fff;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .ns-banner-content-2 {
    padding: 40px 20px;
    border-radius: 5px;
    outline: 5px solid #fff;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-content-2 {
    padding: 65px 65px;
    padding-right: 45px;
    outline: 5px solid #fff;
  }
}

.ns-banner-content-2 p {
  font-size: 17px;
  color: #fff;
  margin-bottom: 42px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-banner-content-2 p br {
    display: none;
  }
}

.ns-header-btn.ns-theme-btn.ns-home-2 {
  background: #fff;
  color: #ffab17;
}

.ns-banner-content-shape-2::before {
  position: absolute;
  top: 50%;
  right: -75px;
  content: "";
  width: 70px;
  height: 85px;
  background: #fff;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  transform: translateY(-50%);
  z-index: -2;
}

.ns-banner-content-shape-2::after {
  position: absolute;
  top: 50%;
  right: -65px;
  width: 65px;
  content: "";
  height: 75px;
  background: #ffab17;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  transform: translateY(-50%);
  z-index: -1;
}

.ns-banner-content-2 {
  margin-left: -65px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-banner-content-2 {
    margin-left: 0;
  }
}

.ns-banner-content-map-2 {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: max-content;
  z-index: -1;
}

.ns-banner-content-img-2 {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
}

.ns-header-btn.ns-theme-btn.ns-home-2 {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-header-btn.ns-theme-btn.ns-home-2:hover {
  background-color: var(--clr-common-black);
  color: #fff;
}

.ns-play-btn.popup-video.ns-home-2:hover {
  background-color: var(--clr-common-black);
}

.ns-banner-area-3 {
  overflow: hidden;
}

.ns-banner-single-3 {
  min-height: 925px;
  position: relative;
  z-index: 1;
  align-items: center;
  display: flex;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-single-3 {
    min-height: 800px;
  }
}
@media (max-width: 767px) {
  .ns-banner-single-3 {
    min-height: 620px;
  }
}

.ns-banner-single-3::before {
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgb(58, 59, 64);
  opacity: 0.871;
  width: 100%;
  height: 100%;
  content: "";
  z-index: -1;
}

.ns-banner-3-img-1 {
  position: relative;
  z-index: 1;
  margin-left: 66px;
  width: 608px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-banner-3-img-1 {
    margin-left: 46px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-3-img-1 {
    margin-left: 26px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-3-img-1 {
    margin-left: 0;
    width: 540px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-3-img-1 {
    margin-left: 0;
    width: 100%;
  }
}

.ns-banner-inner-3 {
  display: flex;
  height: 100%;
  align-items: center;
}

.ns-banner-wrap-3 {
  margin-top: 140px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-wrap-3 {
    margin-top: 80px;
  }
}
@media (max-width: 767px) {
  .ns-banner-wrap-3 {
    margin-top: 75px;
  }
}

.ns-banner-3-shape-1 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

.ns-banner-3-shape-2 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-inner-3 .ns-banner-content-title {
    font-size: 65px;
  }
  .ns-banner-inner-3 .ns-banner-content p br {
    display: none;
  }
}

.ns-banner-area-4 {
  overflow: hidden;
}

.ns-banner-single-4 {
  min-height: 1035px;
  background-color: #f3f7fd;
  display: flex;
  align-items: end;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-banner-single-4 {
    align-items: center;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-single-4 {
    min-height: 900px;
  }
}
@media (max-width: 767px) {
  .ns-banner-single-4 {
    min-height: 700px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-single-4 {
    min-height: 760px;
  }
}
.ns-banner-single-4 .ns-banner-4-shape-1 {
  position: absolute;
  left: 40px;
  top: 215px;
}
@media (max-width: 767px) {
  .ns-banner-single-4 .ns-banner-4-shape-1 {
    left: -20px;
    top: 70px;
    width: 55%;
  }
}
.ns-banner-single-4 .ns-banner-4-shape-2 {
  position: absolute;
  bottom: 0;
  right: 40px;
}
@media (max-width: 767px) {
  .ns-banner-single-4 .ns-banner-4-shape-2 {
    right: -20px;
    bottom: 0;
    width: 55%;
  }
}
.ns-banner-single-4 .ns-banner-4-shape-3 {
  position: absolute;
  top: 255px;
  right: 130px;
}
.ns-banner-single-4 .ns-banner-4-shape-4 {
  position: absolute;
  left: 50px;
  bottom: 50px;
}
.ns-banner-single-4 .ns-banner-wrap-4 {
  max-width: 1385px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  width: 100%;
  align-items: center;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-single-4 .ns-banner-wrap-4 {
    flex-direction: column;
  }
}
.ns-banner-single-4 .ns-banner-img-4 {
  width: 675px;
  flex-shrink: 0;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-single-4 .ns-banner-img-4 {
    width: 640px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-single-4 .ns-banner-img-4 {
    width: 500px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-single-4 .ns-banner-img-4 {
    width: 100%;
    order: 2;
    margin-top: 50px;
  }
}

.ns-banner-content-4 {
  width: calc(100% - 675px);
  flex-shrink: 0;
  margin-top: 220px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-content-4 {
    width: calc(100% - 640px);
    margin-top: 80px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-content-4 {
    width: calc(100% - 500px);
    margin-top: 0;
    margin-left: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-content-4 {
    width: 75%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 300px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-content-4 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 150px;
  }
}
@media (max-width: 767px) {
  .ns-banner-content-4 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 100px;
  }
}
.ns-banner-content-4 .ns-banner-content-subtitle {
  background-color: #232429;
  color: var(--clr-theme-primary);
}
.ns-banner-content-4 .ns-banner-content-subtitle::after {
  background-color: #232429;
}
.ns-banner-content-4 .ns-banner-content-title {
  font-size: 70px;
  color: #0e2b3d;
}
.ns-banner-content-4 .ns-banner-content-title span {
  color: var(--clr-theme-primary);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-content-4 .ns-banner-content-title {
    font-size: 60px;
  }
}
@media (max-width: 767px) {
  .ns-banner-content-4 .ns-banner-content-title {
    font-size: 33px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-content-4 .ns-banner-content-title {
    font-size: 44px;
  }
}
.ns-banner-content-4 p {
  color: #636363;
}
.ns-banner-content-4 .ns-play-btn {
  background-color: #0e2b3d;
  color: #fff;
}
.ns-banner-content-4 .ns-play-btn::after {
  display: none;
}

.ns-banner-4-shape-5 {
  position: absolute;
  top: 200px;
  right: 210px;
}

.ns-banner-single-5 {
  position: relative;
  z-index: 1;
  min-height: 1040px;
  display: flex;
  align-items: center;
}
.ns-banner-single-5 .ns-banner-action-btn {
  justify-content: center;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-single-5 {
    min-height: 900px;
  }
}
@media (max-width: 767px) {
  .ns-banner-single-5 {
    min-height: 700px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-single-5 {
    min-height: 760px;
  }
}

.ns-banner-area-6 {
  background-color: #242424;
}
.ns-banner-area-6 .ns-banner-content-title {
  font-size: 70px;
  color: #fff;
}
.ns-banner-area-6 .ns-banner-content-title span {
  color: var(--clr-theme-primary);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-area-6 .ns-banner-content-title {
    font-size: 65px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-area-6 .ns-banner-content-title {
    font-size: 60px;
  }
}
@media (max-width: 767px) {
  .ns-banner-area-6 .ns-banner-content-title {
    font-size: 35px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-area-6 .ns-banner-content-title {
    font-size: 45px;
  }
}

.ns-banner-single-6 {
  position: relative;
  z-index: 1;
  min-height: 955px;
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-single-6 {
    min-height: 850px;
  }
}
@media (max-width: 767px) {
  .ns-banner-single-6 {
    min-height: 700px;
  }
}

.ns-banner-btn-6 {
  display: inline-block;
  color: #fff;
  background-color: var(--clr-theme-primary);
  height: 84px;
  line-height: 84px;
  padding: 0 50px;
  border-radius: 25px;
  font-size: 25px;
  font-weight: 500;
  opacity: 0.9;
  position: absolute;
  bottom: 4px;
  left: 0;
}
.ns-banner-btn-6:hover {
  background-color: #fff;
  color: var(--clr-theme-primary);
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-banner-btn-6 {
    height: 72px;
    line-height: 72px;
    padding: 0px 38px;
    border-radius: 26px;
    font-size: 22px;
    bottom: 3px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-btn-6 {
    height: 62px;
    line-height: 62px;
    padding: 0px 30px;
    border-radius: 20px;
    font-size: 20px;
    bottom: 3px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-btn-6 {
    height: 53px;
    line-height: 53px;
    padding: 0 23px;
    border-radius: 15px;
    font-size: 17px;
    bottom: 2px;
    left: -1px;
  }
}

.ns-banner-img-6 {
  margin-right: -300px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-banner-img-6 {
    margin-right: -180px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-img-6 {
    margin-right: -100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-img-6 {
    margin-right: -30px;
  }
}

.ns-banner-img-6 {
  position: relative;
}

.ns-banner-shape-61 {
  position: absolute;
  left: 180px;
  bottom: 215px;
  z-index: -1;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-banner-shape-61 {
    left: 40px;
    bottom: 270px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-shape-61 {
    left: 10px;
    bottom: 270px;
  }
}

.ns-banner-shape-62 {
  position: absolute;
  bottom: 125px;
  left: 40px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-banner-shape-62 {
    bottom: 50px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-shape-62 {
    bottom: 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-shape-62 {
    bottom: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-shape-62 {
    bottom: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-shape-62 {
    bottom: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-shape-62 {
    bottom: 50px;
  }
}

.ns-banner-shape-63 {
  position: absolute;
  right: 150px;
  top: 220px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-banner-shape-63 {
    right: 80px;
    top: 250px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-banner-shape-63 {
    right: 80px;
    top: 250px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-banner-shape-63 {
    right: 50px;
    top: 300px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-banner-shape-63 {
    right: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-banner-shape-63 {
    right: 50px;
    top: 150px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-banner-shape-63 {
    right: 50px;
    top: 150px;
  }
}

.ns-header-btn-6:hover {
  background-color: #fff !important;
  color: var(--clr-theme-primary) !important;
}

/*
************
*************************
04. sidebar
******************************************************* 
*************************************************************** */
.side-info {
  width: 100%;
  max-width: 350px;
  background-color: #222429;
  box-shadow: 0 13px 29px rgba(4, 0, 23, 0.1);
  height: 100%;
  position: fixed;
  z-index: 9999;
  top: 0;
  right: -350px;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}

.side-info:is(.info-open) {
  right: 0;
  overflow-y: scroll;
  scrollbar-width: thin;
}

.sidebar-logo-wrapper {
  padding: 20px;
  padding-bottom: 0;
}

.offcanvas-overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(4, 0, 23, 0.5);
  z-index: 9;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  cursor: url(../img/bg/close.html), auto;
}

.offcanvas-overlay:is(.overlay-open) {
  left: 0;
  opacity: 1;
  visibility: visible;
}

.mean-container .mean-nav {
  background: transparent;
  margin-top: 0;
  margin-bottom: 45px;
}

.mean-container .mean-nav ul li:first-child {
  border-top: 1px solid hsla(0, 0%, 100%, 0.1);
}

.mean-container .mean-nav ul li {
  border-bottom: 1px solid hsla(0, 0%, 100%, 0.1);
  overflow: hidden;
}

.mean-container .mean-nav ul li a {
  border: none;
  font-size: 16px;
  color: #fff;
  padding-left: 20px;
  padding-right: 10px;
  padding-top: 15px;
  padding-bottom: 15px;
}
.mean-container .mean-nav ul li a:hover {
  color: var(--clr-theme-primary);
  background-color: transparent;
}

.mean-container .mean-nav ul li li a {
  padding-top: 15px;
  padding-bottom: 15px;
}

.pl-sidebar-close.side-info-close {
  background: transparent;
  border: none;
  font-size: 25px;
  color: #fff;
}

.mean-container .mean-nav ul li a.mean-expand {
  padding: 0px 20px;
  border: none;
  border-left-color: currentcolor;
  border-left-style: none;
  border-left-width: medium;
  border-left: 1px solid hsla(0, 0%, 100%, 0.1);
  background: transparent;
  height: 56px;
  line-height: 1;
  margin: 0;
  font-weight: 400;
  top: 0;
  line-height: 50px;
}
.mean-container .mean-nav ul li a.mean-expand.mean-clicked {
  color: var(--clr-theme-primary);
}

.mean-container .mean-nav ul li a.mean-expand:hover {
  background: transparent;
}

/* sidebar contact info */
.sidebar-contact {
  padding: 20px;
}
.sidebar-contact-title {
  font-size: 24px;
  color: #fff;
}

.sidebar-contact > a {
  display: block;
  margin-bottom: 12px;
  color: #fff;
}

.sidebar-contact > a:hover i {
  background-color: var(--clr-theme-primary);
}

.sidebar-contact > a i {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background-color: #2c2c2c;
  display: inline-block;
  margin-right: 15px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.sidebar-address {
  display: flex;
  margin-bottom: 6px;
  color: #fff;
}
.sidebar-address:hover i {
  background-color: var(--clr-theme-primary);
}

.sidebar-address i {
  max-width: 40px;
  height: 40px;
  background-color: #2c2c2c;
  line-height: 40px;
  text-align: center;
  margin-right: 15px;
  flex: 0 0 40px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.sidebar-social a {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  background-color: #2c2c2c;
  text-align: center;
}

.sidebar-social a:not(:last-child) {
  margin-right: 7px;
}

.sidebar-social a:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
}

.sidebar-logo {
  max-width: 130px;
}

/* Search */
.body-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  display: block;
  background: #253a1a;
  z-index: 999;
  content: "";
  left: 0;
  top: 0;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  cursor: url(../img/bg/close.html), auto;
}

.body-overlay.active {
  visibility: visible;
  opacity: 0.97;
}

.td-search-popup .search-form {
  width: 35%;
  position: absolute;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  visibility: hidden;
  opacity: 0;
  transform: translate(-50%, -50%);
  z-index: 999;
}

.td-search-popup.active .search-form {
  visibility: visible;
  opacity: 1;
  width: 40%;
}

@media (max-width: 767px) {
  .td-search-popup.active .search-form {
    width: calc(100% - 50px);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .td-search-popup.active .search-form {
    width: 70%;
  }
}
.td-search-popup.active .search-form {
  visibility: visible;
}

.td-search-popup .search-form .form-group .form-control {
  border: none;
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
  height: 60px;
  padding: 0 75px 0 25px;
  background: #f7f9fb;
  line-height: 60px;
}

.td-search-popup .search-form .submit-btn {
  position: absolute;
  right: 0;
  top: 0;
  width: 60px;
  height: 60px;
  border: 0;
  border-top-right-radius: 5px;
  border-bottom-right-radius: 5px;
  color: #ffffff;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  padding: 0;
  text-align: center;
  cursor: pointer;
  background: #ff9400;
}

.sidebar-close {
  border: 0;
  background-color: transparent;
  font-size: 25px;
  color: #fff;
}

.sidebar-close:hover {
  opacity: 0.6;
}

/*
************
*************************
05. button
******************************************************* 
*************************************************************** */
.ns-theme-btn {
  line-height: 50px;
  height: 50px;
  font-size: 17px;
  padding: 0 35px;
  font-weight: 500;
  display: inline-block;
  color: var(--clr-common-white);
  border-radius: 4px;
  background: var(--clr-theme-primary);
  cursor: pointer;
  margin-bottom: 0;
  text-align: center;
  text-transform: capitalize;
  touch-action: manipulation;
  transition: all 0.3s ease 0s;
  white-space: nowrap;
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .ns-theme-btn {
    font-size: 12px;
    padding: 0 22px;
  }
}
/* .ns-theme-btn:hover {
  color: var(--clr-common-white);
  background: linear-gradient(
    90deg,
    var(--clr-theme-1) -1.84%,
    var(--clr-theme-4) 100%
  );
  border: 1px solid white;
  transition: all 0.3s ease-in-out;
} */

.ns-theme-btn {
  position: relative;
  overflow: hidden;
  background: var(--clr-theme-primary);
  z-index: 1;
}

/* Animated overlay */
.ns-theme-btn::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  /* background: linear-gradient(
    90deg,
    var(--clr-theme-1),
    var(--clr-theme-4)
  ); */
  background: white;
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform 0.4s ease;
  z-index: -1;
  border: 2px solid #0e84e1;
}

/* Hover animation */
.ns-theme-btn:hover::before {
  transform: scaleY(1);
}

.ns-theme-btn:hover {
  color: #0e84e1;
}

.ns-theme-btn i {
  font-size: 14px;
  margin-left: 10px;
  font-weight: 600;
}

.ns-play-btn {
  display: inline-block;
  width: 50px;
  height: 50px;
  background: #fff;
  text-align: center;
  line-height: 50px;
  border-radius: 50%;
  color: var(--clr-theme-primary);
  font-size: 16px;
  position: relative;
  z-index: 1;
}
.ns-play-btn::after {
  position: absolute;
  left: 50%;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  top: 50%;
  transform: translate(-50%, -50%);
  content: "";
  background-color: var(--clr-theme-primary);
  opacity: 0.3;
  animation-name: playAnimation;
  z-index: -1;
  animation-duration: 1.8s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-delay: 0s;
  background-color: rgb(255, 255, 255);
  opacity: 0.4;
}
.ns-play-btn:hover {
  background-color: var(--clr-theme-primary);
  color: #fff;
}

.ns-play-btn-2 {
  background-color: var(--clr-theme-primary);
  color: #fff;
}
.ns-play-btn-2::after {
  background-color: rgb(255, 170, 23);
  opacity: 0.5;
}
.ns-play-btn-2:hover {
  background-color: #fff;
  color: var(--clr-theme-primary);
}
.ns-play-btn-2:hover::after {
  background-color: rgb(255, 255, 255);
  opacity: 0.4;
}

@keyframes playAnimation {
  0% {
    transform: translate(-50%, -50%) scale(1);
  }
  100% {
    transform: translate(-50%, -50%) scale(1.6);
    opacity: 0;
  }
}
.ns-btn-white:hover {
  background-color: #fff;
  color: var(--clr-theme-primary);
}

/*
************
*************************
06. feature
******************************************************* 
*************************************************************** */
/* .ns-section-subtitle {
  display: inline-block;
  font-size: 19px;
  font-weight: 500;
  color: var(--clr-theme-primary-dark);
  padding-left: 27px;
  position: relative;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.ns-section-subtitle::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color: var(--clr-theme-primary-dark);
  border-radius: 50%;
} */

.ns-section-subtitle {
  display: inline-block;
  font-size: 19px;
  font-weight: 500;
  background: linear-gradient(
    90deg,
    var(--clr-theme-1) -1.84%,
    var(--clr-theme-4) 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent; /* Fallback */
  padding-left: 27px;
  position: relative;
  margin-bottom: 8px;
  text-transform: uppercase;
}

/* The dot stays SOLID color - NOT gradient */
.ns-section-subtitle::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color: var(--clr-theme-primary-dark); /* Solid color */
  border-radius: 50%;
  /* Important: Reset any inherited gradient properties */
  -webkit-background-clip: unset;
  background-clip: unset;
  -webkit-text-fill-color: unset;
  color: unset;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-section-subtitle {
    font-size: 18px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-section-subtitle {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .ns-section-subtitle {
    font-size: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-section-subtitle {
    font-size: 16px;
  }
}
.ns-section-title {
  font-size: 40px;
  font-weight: 700;
  color: var(--clr-body-heading);
  text-transform: capitalize;
}
.ns-section-title-white {
  color: #fff;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-section-title {
    font-size: 37px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-section-title {
    font-size: 34px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-section-title {
    font-size: 36px;
  }
}
@media (max-width: 767px) {
  .ns-section-title {
    font-size: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-section-title {
    font-size: 30px;
  }
}
.ns-section-text-white {
  color: #fff;
}

.ns-feature-item-title {
  font-size: 22px;
  margin-bottom: 15px;
}

.ns-feature-item p {
  margin-bottom: 0;
  line-height: 25px;
}

.ns-feature-item-icon {
  position: absolute;
  left: 0;
  bottom: -37px;
  right: 0;
  width: 86px;
  height: 86px;
  background-color: var(--clr-common-black);
  text-align: center;
  border-radius: 50%;
  border: 6px solid #fff;
  margin: 0 auto;
  display: grid;
  place-items: center;
  font-size: 38px;
  color: #fff;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  z-index: 5;
}

.ns-feature-wrap {
  margin-top: -100px;
  position: relative;
  z-index: 9;
}

.ns-feature-item {
  background-color: #f4f5f9;
  padding: 30px 35px 75px;
  border-radius: 5px;
  text-align: center;
  position: relative;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  z-index: 2;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-feature-item {
    padding: 30px 30px 75px;
  }
}

.ns-feature-item::before {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 5px;
  background-color: var(--clr-theme-primary);
  border-radius: 0 0 5px 5px;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  z-index: -1;
}
.ns-feature-item:hover::before {
  opacity: 0.871;
  background-color: var(--clr-theme-primary-dark);
  height: 100%;
  border-radius: 5px;
}
.ns-feature-item:hover .ns-feature-item-img {
  opacity: 1;
  visibility: visible;
  height: 100%;
  transform: scale(1);
}
.ns-feature-item:hover p {
  color: #fff;
}
.ns-feature-item:hover h4 {
  color: #fff;
}
.ns-feature-item:hover .ns-feature-item-icon {
  background-color: var(--clr-theme-primary);
}

.ns-feature-item-img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  border-radius: 5px;
  z-index: -2;
  visibility: hidden;
  opacity: 0;
  transform: scale(0.8);
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
  only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-feature-wrap .col-xl-3.col-lg-4.col-md-6:nth-child(3) .ns-feature-item {
    margin-bottom: 0;
  }
}

@media (min-width: 576px) and (max-width: 767px) {
  .ns-feature-item {
    padding: 25px 25px 70px;
  }
  .ns-feature-item .ns-feature-item-title {
    font-size: 20px;
  }
}
.ns-feature-area-3 {
  background-color: #232429;
}

/*
************
*************************
07. about
******************************************************* 
*************************************************************** */
.ns-about-area {
  overflow: hidden;
}

.ns-about-img-1 {
  display: flex;
}

.ns-about-img-inner {
  width: 55%;
  flex: 0 0 55%;
}
@media (max-width: 767px) {
  .ns-about-img-inner {
    width: 50%;
    flex: 0 0 50%;
  }
}

.ns-about-img-content {
  width: 45%;
  flex: 0 0 45%;
}
@media (max-width: 767px) {
  .ns-about-img-content {
    width: 50%;
    flex: 0 0 50%;
  }
}

.ns-about-inner-title {
  font-size: 26px;
  color: var(--clr-theme-primary);
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-about-inner-title {
    font-size: 22px;
  }
}

.ns-about-img-content .ns-about-count {
  font-size: 37px;
  background-color: var(--clr-theme-primary);
  color: #fff;
  font-weight: 700;
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 20px;
  display: inline-block;
  position: relative;
  z-index: 1;
  transform: rotate(-90deg);
  top: 54px;
  left: -10px;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-about-img-content .ns-about-count {
    font-size: 25px;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 16px;
    top: 40px;
    left: 0;
  }
}

.ns-about-img-content .ns-about-count::after {
  position: absolute;
  content: "";
  top: 0;
  right: -30px;
  -webkit-clip-path: polygon(0 0, 0 100%, 100% 50%);
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  width: 30px;
  height: 66px;
  background-color: var(--clr-theme-primary);
  z-index: 1;
}
@media (max-width: 767px) {
  .ns-about-img-content .ns-about-count::after {
    height: 45px;
  }
}

.ns-about-img-content {
  margin-left: 90px;
  margin-top: 65px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-img-content {
    margin-left: 65px;
    margin-top: 35px;
  }
}
@media (max-width: 767px) {
  .ns-about-img-content {
    margin-left: 0;
    margin-top: 8px;
    text-align: center;
  }
}

.inner-img-1 {
  width: 100%;
}

.ns-about-img-inner {
  position: relative;
}

.ns-about-play-btn {
  position: absolute;
  top: 50%;
  right: -48px;
  width: 95px;
  height: 95px;
  background-color: var(--clr-common-black);
  border-radius: 50%;
  border: 5px solid #fff;
  text-align: center;
  display: grid;
  place-items: center;
  transform: translateY(-50%);
}
.ns-about-play-btn:hover {
  background-color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-about-play-btn {
    width: 70px;
    height: 70px;
    right: -35px;
  }
}

.inner-img-2 {
  width: 100%;
}

.ns-about-img-inner-2 {
  margin-right: 35px;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .ns-about-img-inner-2 {
    margin-right: 0;
  }
}

.ns-about-shape {
  position: absolute;
  bottom: -220px;
  right: -130px;
}

.ns-about-content-list {
  margin-bottom: 30px;
}

.ns-about-content-list ul li {
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 20px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
}
.ns-about-content-list ul li:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-about-content-list ul li {
    font-size: 15px;
  }
}

.ns-about-content-list ul li i {
  color: var(--clr-theme-primary);
}

.ns-about-content-info {
  display: flex;
  gap: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-info {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-info {
    gap: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-info {
    gap: 30px;
  }
}

.ns-about-content-tab {
  background: #f4f5f9;
  padding: 15px 25px 40px;
  position: relative;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-about-content-tab {
    padding: 15px 25px 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-tab {
    padding: 15px 15px 40px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-tab {
    padding: 15px 15px 35px;
  }
}

.ns-about-content-tab-title {
  font-size: 17px;
  margin-bottom: 0;
  text-align: center;
}
.ns-about-content-tab-title:hover a {
  color: var(--clr-theme-primary);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-tab-title {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-tab-title {
    font-size: 16px;
  }
}

.ns-about-content-tab-icon {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -25px;
  width: 50px;
  height: 50px;
  font-size: 25px;
  background: var(--clr-common-black);
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin: 0 auto;
  color: #fff;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-about-content-tab-icon:hover {
  color: #fff;
  background-color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-about-content-tab-icon {
    width: 45px;
    height: 45px;
    font-size: 20px;
    bottom: -22.5px;
  }
}

.ns-about-content-info-right .inner-title {
  background-color: var(--clr-theme-primary);
  font-size: 17px;
  padding: 15px 30px;
  text-align: center;
  margin-bottom: 0;
  color: #fff;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-info-right .inner-title {
    padding: 15px 20px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-info-right .inner-title {
    padding: 15px 20px;
  }
}

.ns-about-info-inner {
  padding: 14px 20px 32px;
  background: #f4f5f9;
  position: relative;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-info-inner {
    padding: 14px 15px 32px;
  }
}

.ns-about-info-inner p {
  font-size: 16px;
  margin-bottom: 0;
}

.ns-about-info-inner-btn {
  position: absolute;
  left: 20px;
  bottom: -20px;
  width: 40px;
  height: 40px;
  background: var(--clr-theme-primary);
  text-align: center;
  line-height: 40px;
  color: #fff;
  border-radius: 50%;
}
.ns-about-info-inner-btn:hover {
  background-color: var(--clr-common-black);
  color: #fff;
}

.ns-about-content-bottom {
  display: flex;
  gap: 40px;
  border-top: 1px solid #dddddd;
  padding-top: 20px;
}
@media (max-width: 767px) {
  .ns-about-content-bottom {
    flex-direction: column;
  }
}

.ns-about-content-admin {
  display: flex;
  align-items: center;
  gap: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-admin {
    gap: 20px;
  }
}

.ns-about-content-admin-info .ns-about-admin-title {
  font-size: 22px;
  margin-bottom: 7px;
}
.ns-about-content-admin-info .ns-about-admin-title:hover a {
  color: var(--clr-theme-primary);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-admin-info .ns-about-admin-title {
    font-size: 20px;
  }
}

.ns-about-content-admin-info span {
  font-size: 17px;
  display: inline-block;
}

.ns-about-content-admin-img {
  width: 80px;
  height: 80px;
  flex: 0 0 80px;
  border: 4px solid var(--clr-theme-primary);
}

@media (max-width: 767px) {
  .ns-about-content-admin-signature {
    text-align: start;
    margin-bottom: 10px;
  }
}

.ns-about-img-shape-2 {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}

.ns-about-img-2 {
  position: relative;
  z-index: 1;
  margin-right: 55px;
  padding-bottom: 75px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-about-img-2 {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .ns-about-img-2 {
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-img-2 {
    padding-bottom: 20px;
  }
}

.ns-about-main-img-2 {
  position: relative;
  z-index: 1;
}

.ns-about-play-btn-2 {
  position: absolute;
  left: -7px;
  top: -7px;
  background: black;
  width: 100px;
  height: 95px;
  display: grid;
  place-items: center;
  border: 7px solid #fff;
}

.ns-about-inner-img-21 {
  position: absolute;
  top: 50px;
  right: 0;
  z-index: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-inner-img-21 {
    top: 40px;
  }
}

.ns-about-inner-img-22 {
  position: absolute;
  bottom: 25px;
  right: 65px;
  z-index: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-inner-img-22 {
    right: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-inner-img-22 {
    right: 55px;
  }
}
@media (max-width: 767px) {
  .ns-about-inner-img-22 {
    bottom: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-inner-img-22 {
    bottom: -20px;
  }
}

.ns-about-img-circle-2 {
  position: absolute;
  left: -95px;
  bottom: 0;
  z-index: -1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-img-circle-2 {
    left: -40px;
  }
}

.ns-about-content-top-2 {
  display: flex;
  gap: 30px;
  align-items: center;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-top-2 {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-top-2 {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-top-2 {
    flex-direction: row;
    gap: 20px;
    align-items: center;
  }
}

.ns-about-content-info-2 {
  width: 180px;
  flex-shrink: 0;
  border: 1px solid #ffb432;
  padding: 20px 0 15px;
}

.ns-about-content-list-2 {
  width: calc(100% - 210px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-list-2 {
    width: calc(100% - 200px);
  }
}
@media (max-width: 767px) {
  .ns-about-content-list-2 {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-list-2 {
    width: calc(100% - 200px);
  }
}

.ns-about-content-info-top-2 {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.ns-about-content-info-counter-2 {
  width: 100%;
}

.ns-about-content-info-icon-2 {
  width: 100%;
}

.ns-about-count-2 {
  margin-bottom: 0;
  background-color: #ffb432;
  display: inline-block;
  padding: 7px 0 7px 10px;
  font-size: 26px;
  line-height: 1.2;
  position: relative;
  z-index: 1;
  color: #fff;
}

.ns-about-count-2::after {
  position: absolute;
  top: 0;
  right: -20px;
  content: "";
  width: 20px;
  height: 100%;
  background: #ffb432;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.ns-about-content-info-icon-2 img {
  margin-left: 15px;
}

.ns-about-content-info-text-2 {
  font-size: 21px;
  color: #ffab17;
  margin-bottom: 0;
  line-height: 1.2;
  text-align: center;
}

.ns-about-content-list-2 ul li {
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 20px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
}
.ns-about-content-list-2 ul li:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-list-2 ul li {
    font-size: 16px;
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-list-2 ul li {
    font-size: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-list-2 ul li {
    font-size: 16px;
  }
}

.ns-about-content-list-2 ul li i {
  color: var(--clr-theme-primary);
}

.ns-about-content-top-2 {
  margin-bottom: 50px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 30px;
}
@media (max-width: 767px) {
  .ns-about-content-top-2 {
    margin-bottom: 35px;
  }
}

.ns-about-tab-item-2 {
  width: 170px;
  background-color: #f4f5f9;
  padding: 15px 0;
  display: block;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-tab-item-2 {
    width: 140px;
  }
}
@media (max-width: 767px) {
  .ns-about-tab-item-2 {
    width: 135px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-tab-item-2 {
    width: 160px;
  }
}

.ns-about-tap-item-title-2 {
  margin-bottom: 0;
  display: block;
  color: #333333;
  font-size: 17px;
  font-family: "Inter", sans-serif;
  text-align: center;
  font-weight: 700;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 767px) {
  .ns-about-tap-item-title-2 {
    font-size: 16px;
  }
}

.ns-about-content-tab-2 {
  display: flex;
  gap: 10px;
}

.ns-about-tab-item-2 {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-about-tab-item-2:hover {
  background-color: #ffab17;
}

.ns-about-tab-btn.nav-tabs {
  border: none;
  padding: 0;
}

.ns-about-tab-btn.nav-tabs li {
  display: inline-block;
  border: none;
  padding: 0;
  margin: 0;
  margin-right: 10px;
}
.ns-about-tab-btn.nav-tabs li:last-child {
  margin-right: 0;
}
@media (max-width: 767px) {
  .ns-about-tab-btn.nav-tabs li {
    margin-bottom: 10px;
  }
  .ns-about-tab-btn.nav-tabs li:last-child {
    margin-right: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-tab-btn.nav-tabs li {
    margin-right: 10px;
    margin-bottom: 0;
  }
}

.ns-about-tab-btn.nav-tabs li .nav-link {
  border: none;
  padding: 0;
}
.ns-about-tab-btn.nav-tabs li .nav-link.active .ns-about-tab-item-2 {
  background-color: #ffab17;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-main-img-2 > img {
    width: 85%;
  }
}
@media (max-width: 767px) {
  .ns-about-main-img-2 > img {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-main-img-2 > img {
    width: inherit;
  }
}

.ns-about-area-3 {
  background-color: #232429;
}
@media (max-width: 767px) {
  .ns-about-area-3.pt-180 {
    padding-top: 115px;
  }
}

.ns-about-content-3 .ns-about-content-info-2 {
  border: none;
}
.ns-about-content-3 .ns-about-content-list-2 ul li {
  color: #fff;
}
.ns-about-content-3 .ns-about-content-top-2 {
  border-color: #525256;
}

.ns-about-img-3 {
  margin-right: 35px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-about-img-3 {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .ns-about-img-3 {
    padding-bottom: 0;
  }
}

.ns-about-inner-img-31 {
  top: -70px;
  left: -100px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-about-inner-img-31 {
    left: -40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-inner-img-31 {
    left: -30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-inner-img-31 {
    left: 0;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-about-img-circle-2.ns-circle-3 {
    left: -40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-img-circle-2.ns-circle-3 {
    left: -30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-img-circle-2.ns-circle-3 {
    left: 0;
  }
}

.ns-about-img-3 .ns-about-play-btn-2 {
  width: 105px;
  height: 100px;
  right: 0;
  bottom: 0;
  left: auto;
  top: auto;
}

.ns-about-map-3 {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: -460px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-main-img-3 {
    text-align: end;
  }
}

.ns-about-content-top-4 {
  display: flex;
  margin-bottom: 60px;
}

.ns-about-content-info-4 {
  width: 170px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .ns-about-content-info-4 {
    width: 130px;
  }
}

.ns-about-content-tab-wrap-4 {
  display: flex;
  gap: 30px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-about-content-tab-wrap-4 .ns-about-content-tab {
    padding: 15px 20px 40px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-tab-wrap-4 {
    flex-direction: column;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-tab-wrap-4 {
    flex-direction: row;
  }
}

.ns-about-content-inner-4 .ns-about-inner-title {
  font-size: 26px;
  color: var(--clr-theme-primary);
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-about-content-inner-4 .ns-about-inner-title {
    font-size: 22px;
  }
}
.ns-about-content-inner-4 .ns-about-count {
  font-size: 37px;
  background-color: var(--clr-theme-primary);
  color: #fff;
  font-weight: 700;
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 15px;
  display: inline-block;
  position: relative;
  z-index: 1;
  transform: rotate(-90deg);
  top: 50px;
  left: -8px;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-about-content-inner-4 .ns-about-count {
    font-size: 25px;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 16px;
    top: 40px;
    left: 0;
  }
}
.ns-about-content-inner-4 .ns-about-count::after {
  position: absolute;
  content: "";
  top: 0;
  right: -30px;
  -webkit-clip-path: polygon(0 0, 0 100%, 100% 50%);
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  width: 30px;
  height: 66px;
  background-color: var(--clr-theme-primary);
  z-index: 1;
}
@media (max-width: 767px) {
  .ns-about-content-inner-4 .ns-about-count::after {
    height: 45px;
  }
}

.ns-about-4-img {
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-about-4-img img {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-about-4-img {
    width: calc(100% - 30px);
    margin-left: auto;
  }
}

.ns-about-play-btn-4 {
  position: absolute;
  top: 30px;
  right: 65px;
  width: 75px;
  height: 75px;
  background-color: var(--clr-common-black);
  border-radius: 50%;
  border: 5px solid #fff;
  text-align: center;
  display: grid;
  place-items: center;
}
@media (max-width: 767px) {
  .ns-about-play-btn-4 {
    top: 20px;
    right: 20px;
    width: 60px;
    height: 60px;
  }
}

.ns-about-play-btn-4 img {
  width: 35px;
  height: 35px;
}
@media (max-width: 767px) {
  .ns-about-play-btn-4 img {
    width: 30px;
    height: 30px;
  }
}

.ns-about-4-img::before {
  position: absolute;
  content: "";
  top: 50%;
  left: -35px;
  transform: translateY(-50%);
  width: 37px;
  height: 70px;
  background-color: var(--clr-theme-primary);
  clip-path: polygon(0 50%, 100% 100%, 100% 0);
  z-index: -1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-about-4-img::before {
    left: -30px;
  }
}

.ns-about-5-img {
  position: relative;
}

.ns-about-inner-img-wrap-5 {
  position: relative;
}

.ns-about-inner-img-5 {
  position: absolute;
  left: -85px;
  bottom: 0;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-about-inner-img-5 {
    left: -40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-inner-img-5 {
    left: -25px;
  }
}
@media (max-width: 767px) {
  .ns-about-inner-img-5 {
    left: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-inner-img-5 {
    left: -20px;
  }
}

.ns-about-content-info-5 {
  position: absolute;
  top: -77px;
  right: 50px;
  width: 210px;
  flex-shrink: 0;
  border: 1px solid #ffb432;
  padding: 33px 0 30px;
  border: 15px solid #232429;
  outline: 10px solid #fff;
}

@media (max-width: 575.98px) {
  .ns-about-content-info-5 {
    right: 0;
    width: 160px;
    padding: 20px 0 18px;
    border: 7px solid #232429;
    outline: 5px solid #fff;
  }
}
.ns-about-content-list-5 {
  width: calc(100% - 210px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-list-5 {
    width: calc(100% - 200px);
  }
}
@media (max-width: 767px) {
  .ns-about-content-list-5 {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-list-5 {
    width: calc(100% - 200px);
  }
}

.ns-about-content-info-top-5 {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.ns-about-content-info-counter-5 {
  width: 100%;
}

.ns-about-content-info-icon-5 {
  width: 100%;
}

.ns-about-count-5 {
  margin-bottom: 0;
  background-color: #ffb432;
  display: inline-block;
  padding: 7px 0 7px 10px;
  font-size: 26px;
  line-height: 1.2;
  position: relative;
  z-index: 1;
  color: #fff;
}

.ns-about-count-5::after {
  position: absolute;
  top: 0;
  right: -20px;
  content: "";
  width: 20px;
  height: 100%;
  background: #ffb432;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

.ns-about-content-info-icon-5 img {
  margin-left: 15px;
}

.ns-about-content-info-text-5 {
  font-size: 21px;
  color: #ffab17;
  margin-bottom: 0;
  line-height: 1.2;
  text-align: center;
}

.ns-about-content-list-5 ul li {
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 20px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
}
.ns-about-content-list-5 ul li:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-list-5 ul li {
    font-size: 16px;
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-list-5 ul li {
    font-size: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-list-5 ul li {
    font-size: 16px;
  }
}

.ns-about-content-list-5 ul li {
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 20px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
}
.ns-about-content-list-5 ul li:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-content-list-5 ul li {
    font-size: 16px;
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .ns-about-content-list-5 ul li {
    font-size: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-list-5 ul li {
    font-size: 16px;
  }
}

.ns-about-content-list-5 ul li i {
  color: var(--clr-theme-primary);
}

.ns-about-content-wrap-5 {
  display: flex;
}
@media (max-width: 767px) {
  .ns-about-content-wrap-5 {
    flex-direction: column;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-about-content-wrap-5 {
    flex-direction: row;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-wrap-5 .ns-section-text br {
    display: none;
  }
}
@media (max-width: 767px) {
  .ns-about-wrap-5 .ns-section-text br {
    display: none;
  }
}
.ns-about-wrap-5 p {
  margin-bottom: 42px;
}
.ns-about-wrap-5 p a {
  text-decoration: underline;
  color: var(--clr-theme-primary);
}

.ns-about-shape-52 {
  position: absolute;
  right: 10px;
  top: 200px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-about-shape-52 {
    top: 0;
  }
}

.ns-about-area-5 {
  position: relative;
  z-index: 1;
}

.ns-about-shape-51 {
  position: absolute;
  right: 390px;
  bottom: -10px;
  z-index: 1;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-about-shape-51 {
    right: 100px;
    bottom: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-about-shape-51 {
    right: 0px;
    bottom: 0;
  }
}

.ns-about-area-6 {
  background-color: #242424;
  border-top: 1px solid #4a4a4a;
}
.ns-about-area-6 .ns-about-content-info-5 {
  position: absolute;
  bottom: 60px;
  left: -40px;
  top: auto;
  right: auto;
}
.ns-about-area-6 .ns-about-content-list-5 ul li {
  color: #fff;
}
.ns-about-area-6 .ns-about-wrap-5 p {
  color: #fff;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-area-6 .ns-about-wrap-5 p br {
    display: none;
  }
}
@media (max-width: 767px) {
  .ns-about-area-6 .ns-about-wrap-5 p br {
    display: none;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-about-area-6 .ns-about-content-info-5 {
    left: -30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-about-area-6 .ns-about-content-info-5 {
    left: -15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-about-area-6 .ns-about-content-info-5 {
    left: -10px;
  }
}
@media (max-width: 767px) {
  .ns-about-area-6 .ns-about-content-info-5 {
    left: 0;
  }
}

/*
************
*************************
08. service
******************************************************* 
*************************************************************** */
.ns-service-area {
  background-color: #f4f5f9;
}
.ns-service-item {
  background-color: #fff;
  border-radius: 5px;
  overflow: hidden;
}
.ns-service-content {
  padding: 30px 30px 30px;
  position: relative;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-service-content {
    padding: 30px 20px 30px;
  }
}
@media (max-width: 767px) {
  .ns-service-content {
    padding: 30px 20px 30px;
  }
}
.ns-service-content-title {
  font-size: 22px;
  margin-bottom: 15px;
}
.ns-service-content-title:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-service-content-title {
    font-size: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-content-title {
    font-size: 22px;
  }
}
.ns-service-content p {
  line-height: 25px;
  margin-bottom: 10px;
}
.ns-service-content-icon {
  position: absolute;
  top: -45px;
  right: 15px;
  width: 90px;
  height: 90px;
  background-color: var(--clr-common-black);
  border-radius: 50%;
  border: 5px solid #fff;
  text-align: center;
  display: grid;
  place-items: center;
  font-size: 38px;
  color: #fff;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-service-content-icon {
    width: 80px;
    height: 80px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-service-content-icon {
    width: 75px;
    height: 75px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-service-content-icon {
    width: 70px;
    height: 70px;
    top: -35px;
  }
}
@media (max-width: 767px) {
  .ns-service-content-icon {
    width: 70px;
    height: 70px;
    top: -35px;
  }
}
.ns-service-btn {
  font-size: 17px;
  font-weight: 500;
  color: var(--clr-body-heading);
  display: inline-block;
  margin-top: 10px;
}
.ns-service-btn i {
  margin-left: 5px;
  font-size: 13px;
}
.ns-service-btn:hover {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-service-btn {
    font-size: 16px;
  }
}
.ns-service-img {
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  overflow: hidden;
}
.ns-service-shape-1 {
  position: absolute;
  content: "";
  bottom: -25px;
  right: -20px;
  width: 60px;
  height: 60px;
  border: 5px solid var(--clr-theme-primary);
  border-radius: 50%;
  opacity: 0.12;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-shape-2 {
  position: absolute;
  content: "";
  bottom: 0;
  right: -35px;
  width: 60px;
  height: 60px;
  border: 5px solid var(--clr-common-black);
  border-radius: 50%;
  opacity: 0.12;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-bottom {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .ns-service-bottom {
    flex-direction: column;
    gap: 20px;
  }
  .ns-service-bottom .ns-service-pagination {
    text-align: center;
  }
}
.ns-service-tagline p {
  margin-bottom: 0;
  line-height: 1;
  font-weight: 500;
}
@media (max-width: 767px) {
  .ns-service-tagline p {
    text-align: center;
    line-height: 25px;
  }
}
.ns-service-tagline p span {
  color: var(--clr-theme-primary);
  margin-right: 10px;
}

.ns-service-shape-21,
.ns-service-shape-22 {
  opacity: 0;
}

.ns-service-item:hover .ns-service-shape-1,
.ns-service-item:hover .ns-service-shape-2 {
  opacity: 1;
}
.ns-service-item:hover .ns-service-content-icon {
  background-color: var(--clr-theme-primary);
}

.ns-service-pagination.swiper-pagination-bullets {
  right: 0;
  left: auto;
  text-align: end;
  line-height: 1;
}
@media (max-width: 767px) {
  .ns-service-pagination.swiper-pagination-bullets {
    text-align: center;
  }
}
.ns-service-pagination .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  display: inline-block;
  border-radius: 50%;
  background: transparent;
  opacity: 1;
  border: 3px solid var(--clr-theme-primary);
}
.ns-service-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
  margin-right: 10px;
}
.ns-service-pagination.swiper-pagination-bullets
  .swiper-pagination-bullet:last-child {
  margin-right: 0;
}
.ns-service-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--clr-theme-primary);
}

.ns-service-bg-img-2 {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: -1;
  width: 100%;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-service-bg-img-2 {
    height: 50%;
  }
}
@media (max-width: 767px) {
  .ns-service-bg-img-2 {
    height: 50%;
  }
}

.ns-service-item.ns-service-item-2 {
  border: 1px solid #eeeeee;
}

.ns-service-img.ns-service-img-2 {
  position: relative;
}

.ns-service-content-icon.ns-service-content-icon-2 {
  position: absolute;
  left: 20px;
  top: 20px;
  width: 70px;
  height: 70px;
  font-size: 28px;
}

.ns-service-bottom.ns-service-bottom-2 {
  justify-content: center;
}

.ns-service-area-3 {
  background-color: #232429;
}

.ns-service-item.ns-service-item-2.ns-service-item-3 {
  border: none;
}

.ns-service-shape-41 {
  position: absolute;
  content: "";
  bottom: -30px;
  right: -8px;
  width: 60px;
  height: 60px;
  border: 5px solid var(--clr-common-black);
  border-radius: 50%;
  opacity: 0.12;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-shape-42 {
  position: absolute;
  content: "";
  bottom: 0;
  right: -18px;
  width: 60px;
  height: 60px;
  border: 5px solid var(--clr-theme-primary);
  border-radius: 50%;
  opacity: 0.12;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-4 {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 25px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  overflow: hidden;
  position: relative;
  z-index: 1;
  padding: 50px 35px 50px;
}
.ns-service-item-4::before {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(36, 36, 36, 0.749);
  opacity: 0;
  visibility: hidden;
  border-radius: 25px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  z-index: -1;
}
.ns-service-item-4:hover::before {
  opacity: 1;
  visibility: visible;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-service-item-4 {
    padding: 40px 30px 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-item-4 {
    padding: 50px 35px 50px;
  }
}
.ns-service-item-img-4 {
  position: absolute;
  z-index: -2;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-content-4 p {
  line-height: 25px;
  margin-bottom: 10px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-content-title-4 {
  font-size: 22px;
  margin-bottom: 15px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-content-title-4:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-service-item-content-title-4 {
    font-size: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-item-content-title-4 {
    font-size: 22px;
  }
}
.ns-service-item-icon-4 {
  width: 90px;
  height: 90px;
  background-color: var(--clr-common-black);
  border-radius: 50%;
  border: 5px solid #fff;
  text-align: center;
  display: grid;
  place-items: center;
  font-size: 38px;
  margin-bottom: 15px;
  color: #fff;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-btn-4 {
  font-size: 17px;
  font-weight: 500;
  color: var(--clr-body-heading);
  display: inline-block;
  margin-top: 10px;
}
.ns-service-item-btn-4 i {
  margin-left: 5px;
  font-size: 13px;
}
.ns-service-item-btn-4:hover {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-service-item-btn-4 {
    font-size: 16px;
  }
}

.ns-service-item-4:hover .ns-service-shape-41 {
  border-color: var(--clr-common-white);
}
.ns-service-item-4:hover .ns-service-shape-41,
.ns-service-item-4:hover .ns-service-shape-42 {
  opacity: 1;
}
.ns-service-item-4:hover .ns-service-item-img-4 {
  opacity: 1;
  visibility: visible;
}
.ns-service-item-4:hover .ns-service-item-content-title-4 {
  color: #fff;
}
.ns-service-item-4:hover .ns-service-item-content-4 p {
  color: #fff;
}
.ns-service-item-4:hover .ns-service-item-icon-4 {
  background-color: var(--clr-theme-primary);
}
.ns-service-item-4:hover .ns-service-item-btn-4 {
  color: #fff;
}
.ns-service-item-4:hover .ns-service-item-btn-4:hover {
  color: var(--clr-theme-primary);
}

.ns-service-item-img-5 {
  border-radius: 5px;
  overflow: hidden;
  position: relative;
  z-index: 9;
}
.ns-service-item-content-top-5 {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 13px;
}
.ns-service-item-content-5 {
  padding: 25px 30px 25px;
  border: 1px solid #dddddd;
  border-radius: 0 0 5px 5px;
  border-top: 0;
  margin-top: -5px;
  padding-top: 30px;
  position: relative;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-content-5 p {
  line-height: 25px;
  margin-bottom: 0;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-content-title-5 {
  font-size: 22px;
  margin-bottom: 0;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-item-content-title-5:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-service-item-content-title-5 {
    font-size: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-item-content-title-5 {
    font-size: 22px;
  }
}
.ns-service-item-icon-5 {
  width: 70px;
  height: 70px;
  flex-shrink: 0;
  background-color: var(--clr-common-black);
  border-radius: 50%;
  border: 5px solid #fff;
  text-align: center;
  display: grid;
  place-items: center;
  font-size: 28px;
  color: #fff;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  margin-left: -5px;
}

.ns-service-count-5 {
  position: absolute;
  right: 15px;
  bottom: 15px;
  font-size: 40px;
  font-weight: 700;
  font-family: "Inter", sans-serif;
  line-height: 1;
  color: #565656;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  display: inline-block;
}

.ns-service-item-5:hover .ns-service-item-content-5 {
  background-color: #242424;
  border-color: transparent;
}
.ns-service-item-5:hover .ns-service-item-content-title-5 {
  color: #fff;
}
.ns-service-item-5:hover .ns-service-item-content-5 p {
  color: #fff;
}
.ns-service-item-5:hover .ns-service-item-icon-5 {
  background-color: var(--clr-theme-primary);
}
.ns-service-item-5:hover .ns-service-item-btn-5 {
  color: #fff;
}
.ns-service-item-5:hover .ns-service-item-btn-5:hover {
  color: var(--clr-theme-primary);
}
.ns-service-item-5:hover .ns-service-count-5 {
  opacity: 1;
  visibility: visible;
}

.ns-service-bg-6 {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  width: 100%;
  z-index: -1;
}

.ns-service-area-6 {
  background-color: #242424;
}
.ns-service-area-6 .ns-service-item-icon-5 {
  background-color: var(--clr-theme-primary);
}
.ns-service-area-6 .ns-service-item-6 {
  position: relative;
  z-index: 1;
  background-color: #fff;
}
.ns-service-area-6 .ns-service-item-img-5 {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-area-6 .ns-service-item-5:hover .ns-service-item-img-5 {
  opacity: 0;
  visibility: hidden;
}
.ns-service-area-6 .ns-service-item-5:hover .ns-service-item-content-5 {
  opacity: 0;
  visibility: hidden;
}
.ns-service-area-6 .ns-service-item-5:hover .ns-service-item-icon-5 {
  opacity: 0;
  visibility: hidden;
}
.ns-service-area-6 .ns-service-item-5:hover .ns-service-item-hover-6 {
  opacity: 1;
  visibility: visible;
}

.ns-service-area-6 .ns-service-item-hover-6 {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99;
  padding: 50px 20px 50px 50px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-service-area-6 .ns-service-item-hover-6 {
    padding: 40px 20px 50px 25px;
  }
}
@media (max-width: 767px) {
  .ns-service-area-6 .ns-service-item-hover-6 {
    padding: 50px 20px 50px 25px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-area-6 .ns-service-item-hover-6 {
    padding: 50px 20px 50px 50px;
  }
}
.ns-service-area-6 .ns-service-item-hover-6 .ns-service-item-icon-5 {
  margin-bottom: 20px;
  background-color: var(--clr-common-black);
  opacity: 1 !important;
  visibility: visible !important;
}
.ns-service-area-6 .ns-service-item-hover-6 .ns-service-item-content-title-5 {
  margin-bottom: 18px;
  color: #fff;
}
.ns-service-area-6
  .ns-service-item-hover-6
  .ns-service-item-content-title-5:hover
  a {
  color: var(--clr-common-black);
}
.ns-service-area-6 .ns-service-item-hover-6 p {
  color: #fff;
}
.ns-service-area-6 .ns-service-item-hover-6 .ns-service-count-6 {
  color: #f6b962;
  opacity: 1;
  visibility: visible;
  font-size: 94px;
  right: 30px;
  bottom: 25px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-service-area-6 .ns-service-item-hover-6 .ns-service-count-6 {
    font-size: 60px;
    right: 20px;
    bottom: 25px;
  }
}
@media (max-width: 767px) {
  .ns-service-area-6 .ns-service-item-hover-6 .ns-service-count-6 {
    font-size: 70px;
    right: 20px;
    bottom: 25px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-area-6 .ns-service-item-hover-6 .ns-service-count-6 {
    font-size: 90px;
    right: 30px;
    bottom: 25px;
  }
}

.ns-service-navigation-6 div {
  position: absolute;
  left: -25px;
  top: 41%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-color: #242424;
  z-index: 9;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  color: #fff;
  font-size: 20px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-service-navigation-6 div:hover {
  background-color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-service-navigation-6 div {
    display: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-navigation-6 div {
    left: -25px;
  }
}

.ns-service-navigation-6 .ns-service-swiper-next-6 {
  left: auto;
  right: -25px;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-service-navigation-6 .ns-service-swiper-next-6 {
    right: -25px;
  }
}

.ns-service-wrap-6:hover .ns-service-navigation-6 div {
  opacity: 1;
  visibility: visible;
}

/*
************
*************************
09. choose
******************************************************* 
*************************************************************** */
.ns-choose-area {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.ns-choose-bg {
  position: absolute;
  top: 0;
  right: 0;
  z-index: -2;
  height: 100%;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-choose-bg {
    right: -80px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-choose-bg {
    right: -175px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-choose-bg {
    right: -175px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-choose-bg {
    right: -300px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-choose-bg {
    right: -203px;
    z-index: -2;
    height: 52.8%;
    height: 57.4%;
  }
}

.ns-choose-contain-qoute {
  background-color: #f4f5f9;
  padding: 20px 70px 20px 15px;
  display: flex;
  gap: 20px;
  margin-bottom: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-choose-contain-qoute {
    padding: 20px 25px 20px 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-choose-contain-qoute {
    padding: 20px 50px 20px 15px;
  }
}
@media (max-width: 767px) {
  .ns-choose-contain-qoute {
    padding: 20px 25px 20px 25px;
    gap: 5px;
    flex-direction: column;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-choose-contain-qoute {
    padding: 20px 40px 20px 20px;
    gap: 20px;
    flex-direction: row;
  }
}

.ns-choose-contain-qoute span {
  display: inline-block;
  font-size: 28px;
  color: var(--clr-theme-primary);
}

.ns-choose-contain-qoute p {
  margin-bottom: 0;
  font-style: italic;
  line-height: 26px;
}

.ns-choose-contain-list ul li {
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 20px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
}
.ns-choose-contain-list ul li:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-choose-contain-list ul li {
    font-size: 15px;
  }
}

.ns-choose-contain-list ul li i {
  color: var(--clr-theme-primary);
}

.ns-choose-contain-list {
  margin-bottom: 50px;
}

.ns-choose-img {
  width: 545px;
  height: 545px;
  border-radius: 50%;
  overflow: hidden;
  border: 10px solid #fff;
  background-position: right center;
  margin-left: auto;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-choose-img {
    width: 445px;
    height: 445px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-choose-img {
    margin: 0 auto;
    margin-bottom: 110px;
  }
}
@media (max-width: 767px) {
  .ns-choose-img {
    width: 290px;
    height: 290px;
    margin: 0 auto;
    border-width: 5px;
    margin-bottom: 35px;
  }
}
@media (min-width: 370px) and (max-width: 399px) {
  .ns-choose-img {
    width: 325px;
    height: 325px;
  }
}
@media (min-width: 400px) and (max-width: 479px) {
  .ns-choose-img {
    width: 365px;
    height: 365px;
  }
}
@media (min-width: 480px) and (max-width: 575px) {
  .ns-choose-img {
    width: 445px;
    height: 445px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-choose-img {
    width: 480px;
    height: 480px;
  }
}

.ns-choose-bg img {
  width: 100%;
  height: 100%;
}

.ns-choose-shape {
  position: absolute;
  z-index: -1;
}

.ns-choose-shape.choose-shape-1 {
  top: 50%;
  right: 65px;
  transform: translateY(-50%);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-choose-shape.choose-shape-1 {
    right: 20px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-choose-shape.choose-shape-1 {
    right: 20px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-choose-shape.choose-shape-1 {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-choose-shape.choose-shape-1 {
    display: none;
  }
}

.ns-choose-shape.choose-shape-2 {
  top: 70px;
  right: 315px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-choose-shape.choose-shape-2 {
    top: 50px;
    right: 120px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-choose-shape.choose-shape-2 {
    top: 50px;
    right: 120px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-choose-shape.choose-shape-2 {
    right: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-choose-shape.choose-shape-2 {
    right: 80px;
  }
}

.ns-choose-shape.choose-shape-3 {
  right: 195px;
  bottom: 70px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-choose-shape.choose-shape-3 {
    right: 70px;
    bottom: 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-choose-shape.choose-shape-3 {
    right: 70px;
    bottom: 40px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-choose-shape.choose-shape-3 {
    right: 60px;
    bottom: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-choose-shape.choose-shape-3 {
    right: 40px;
    top: 585px;
    bottom: auto;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-section-text.mr-70,
  .ns-choose-contain.mr-70 {
    margin-right: 120px;
  }
}
@media (max-width: 767px) {
  .ns-section-text.mr-70,
  .ns-choose-contain.mr-70 {
    margin-right: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-section-text.mr-70,
  .ns-choose-contain.mr-70 {
    margin-right: 45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-choose-wrap.pb-115 {
    padding-bottom: 0;
  }
}

/*
************
*************************
10. project
******************************************************* 
*************************************************************** */
.ns-project-area {
  position: relative;
  z-index: 1;
}
.ns-project-item {
  position: relative;
  overflow: hidden;
}
.ns-project-item .ns-project-img img {
  min-height: 350px;
  object-fit: cover;
}
.ns-project-content {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
}
.ns-project-content-info {
  background-color: rgb(36, 36, 36);
  opacity: 0.89;
  padding: 20px 40px 20px 40px;
  border-top: 3px solid #fff;
  position: absolute;
  left: 0;
  bottom: -100px;
  right: 0;
  z-index: 1;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  border-top-right-radius: 100px;
  margin-right: 50px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-project-content-info {
    padding: 20px 40px 20px 25px;
  }
}
@media (max-width: 767px) {
  .ns-project-content-info {
    padding: 21px 20px 21px 20px;
  }
}
.ns-project-content-title {
  color: #fff;
  font-size: 22px;
  margin-bottom: 5px;
}
.ns-project-content-title:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-project-content-title {
    font-size: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-project-content-title {
    font-size: 22px;
  }
}
.ns-project-content-info span {
  color: var(--clr-theme-primary);
  display: inline-block;
  font-size: 17px;
}
.ns-project-content-btn {
  position: absolute;
  right: -210px;
  bottom: -100px;
  width: 200px;
  height: 200px;
  background: var(--clr-theme-primary);
  border-radius: 50%;
  z-index: 2;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-project-content-btn a {
  position: absolute;
  top: 40px;
  left: 45px;
  z-index: 3;
  width: 40px;
  height: 40px;
  background-color: #fff;
  display: inline-block;
  border-radius: 50%;
  line-height: 40px;
  text-align: center;
  font-size: 18px;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  color: var(--clr-theme-primary);
}
.ns-project-content-btn a:hover {
  background-color: var(--clr-common-black);
  color: var(--clr-common-white);
}
@media (max-width: 767px) {
  .ns-project-content-btn a {
    left: 30px;
  }
}
.ns-project-shape {
  position: absolute;
  content: "";
  width: 330px;
  height: 330px;
  border-radius: 50%;
}
.ns-project-shape-1 {
  background-color: var(--clr-theme-primary);
  opacity: 0.922;
  top: -245px;
  top: -350px;
  right: -120px;
  z-index: 2;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-project-shape-2 {
  background-color: var(--clr-common-black);
  opacity: 0.922;
  top: -170px;
  right: -210px;
  right: -350px;
  z-index: 1;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-project-bg {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-project-bg {
    height: 45%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-project-bg {
    height: 45%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-project-bg {
    height: 50%;
  }
}

.ns-project-item:hover .ns-project-content-info {
  bottom: 0;
}
.ns-project-item:hover .ns-project-content-btn {
  right: -95px;
}
.ns-project-item:hover .ns-project-content-btn a {
  transform: scale(1);
}
@media (max-width: 767px) {
  .ns-project-item:hover .ns-project-content-btn {
    right: -115px;
  }
}
.ns-project-item:hover .ns-project-shape-1 {
  top: -245px;
}
.ns-project-item:hover .ns-project-shape-2 {
  right: -210px;
}

.ns-project-pagination.swiper-pagination-bullets {
  right: 0;
  left: auto;
  text-align: center;
  line-height: 1;
}
.ns-project-pagination .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  display: inline-block;
  border-radius: 50%;
  background: transparent;
  opacity: 1;
  border: 3px solid var(--clr-theme-primary);
}
.ns-project-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
  margin-right: 10px;
}
.ns-project-pagination.swiper-pagination-bullets
  .swiper-pagination-bullet:last-child {
  margin-right: 0;
}
.ns-project-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--clr-theme-primary);
}

.ns-project-area-3 {
  background-color: #232429;
}

@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-project-page .ns-project-content-info {
    padding: 15px 20px 15px 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-project-page .ns-project-content-info {
    padding: 15px 25px 15px 25px;
  }
}

.ns-project-area-4 {
  overflow: hidden;
}

.ns-project-item-content-4 {
  border: 1px solid #ddd;
  width: calc(100% - 60px);
  margin-left: auto;
  margin-right: auto;
  margin-top: -90px;
  position: relative;
  background-color: #fff;
  border-radius: 25px;
  padding: 20px 30px 25px;
}
@media (max-width: 767px) {
  .ns-project-item-content-4 {
    width: calc(100% - 30px);
    padding: 20px 20px 25px;
  }
}

.ns-project-item-img-4 img {
  width: 100%;
}

.ns-project-item-content-4 .inner-number {
  font-size: 24px;
  display: inline-block;
  color: var(--clr-theme-primary);
  font-weight: 500;
  margin-bottom: 5px;
}

.ns-project-item-content-4 .inner-title {
  font-size: 22px;
  margin-bottom: 10px;
  line-height: 1.3;
}
.ns-project-item-content-4 .inner-title:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-project-item-content-4 .inner-title {
    font-size: 20px;
  }
}

.ns-project-item-content-4 p {
  margin-bottom: 0;
}

.ns-project-wrap-4 {
  margin-right: -375px;
  margin-left: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-project-wrap-4 {
    margin-right: 0;
  }
}

.ns-project-navigation-4 div {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50px;
  height: 50px;
  background-color: #242424;
  z-index: 1;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  color: #fff;
  font-size: 20px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-project-navigation-4 div:hover {
  background-color: var(--clr-theme-primary);
}

.ns-project-navigation-4 .ns-project-swiper-next-4 {
  left: 70px;
}

.ns-project-item-5 {
  position: relative;
  z-index: 1;
}
.ns-project-item-5::before {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  right: 0;
  width: calc(100% - 50px);
  height: 60px;
  z-index: -1;
  content: "";
  background-color: var(--clr-theme-primary);
  margin-left: auto;
  margin-right: auto;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-project-item-content-5 {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 25px;
  margin-left: 25px;
  margin-right: 25px;
  margin-top: -65px;
  padding: 40px 30px 37px;
  display: flex;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  align-items: center;
  justify-content: space-between;
  position: relative;
  opacity: 0;
  visibility: hidden;
  z-index: auto;
  border-bottom: 10px solid var(--clr-theme-primary);
  gap: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-project-item-content-5 {
    flex-direction: column;
    align-items: flex-start;
  }
}

.ns-project-left-5 h4 {
  font-size: 22px;
  margin-bottom: 7px;
}
.ns-project-left-5 h4 a {
  transition: all 0.3s linear 0s;
}
.ns-project-left-5 h4:hover a {
  color: var(--clr-theme-primary);
}

.ns-project-left-5 p {
  margin-bottom: 0;
}

.ns-project-right-5 a {
  font-size: 20px;
  width: 50px;
  height: 50px;
  display: inline-block;
  background: #242424;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  color: #fff;
}
.ns-project-right-5 a:hover {
  background-color: var(--clr-theme-primary);
}

.swiper-slide.swiper-slide-next .ns-project-item-5::before {
  opacity: 1;
  visibility: visible;
  top: -12px;
}
.swiper-slide.swiper-slide-next .ns-project-item-content-5 {
  opacity: 1;
  visibility: visible;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .swiper-slide.swiper-slide-next .ns-project-item-5::before {
    opacity: 1;
    visibility: visible;
    top: -12px;
    display: none;
  }
  .swiper-slide.swiper-slide-next .ns-project-item-content-5 {
    opacity: 0;
    visibility: hidden;
    display: none;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .swiper-slide.swiper-slide-active .ns-project-item-5::before {
    opacity: 1;
    visibility: visible;
    top: -12px;
  }
  .swiper-slide.swiper-slide-active .ns-project-item-content-5 {
    opacity: 1;
    visibility: visible;
  }
}

.ns-project-tab-wrap .nav-tabs {
  border: none;
}

.ns-project-tab-wrap ul li .nav-link {
  border: none;
  padding: 0;
  font-size: 18px;
  font-weight: 500;
  color: #333;
  background-color: transparent;
  position: relative;
  z-index: 1;
}
.ns-project-tab-wrap ul li .nav-link::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  width: 0%;
  height: 2px;
  background-color: var(--clr-theme-primary);
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-project-tab-wrap ul li .nav-link.active {
  color: var(--clr-theme-primary);
  background-color: transparent;
}
.ns-project-tab-wrap ul li .nav-link.active::after {
  width: 100%;
}

.ns-project-tab-wrap ul .nav-item {
  margin-right: 35px;
}
.ns-project-tab-wrap ul .nav-item:last-child {
  margin-right: 0;
}
@media (max-width: 767px) {
  .ns-project-tab-wrap ul .nav-item {
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-project-tab-wrap ul .nav-item {
    margin-bottom: 0;
  }
}

.ns-project-navigation-5 div {
  position: absolute;
  right: 22%;
  bottom: 50px;
  width: 50px;
  height: 50px;
  background-color: #242424;
  z-index: 1;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  color: #fff;
  font-size: 20px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-project-navigation-5 div:hover {
  background-color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-project-navigation-5 div {
    left: 0;
    bottom: 50%;
    transform: translateY(-50%);
    opacity: 0;
    visibility: hidden;
  }
}

.ns-project-navigation-5 .ns-project-swiper-next-5 {
  right: calc(22% - 70px);
}
@media (max-width: 767px) {
  .ns-project-navigation-5 .ns-project-swiper-next-5 {
    left: auto;
    right: 0;
    bottom: 50%;
    transform: translateY(-50%);
  }
}

@media (max-width: 767px) {
  .project-active-5:hover .ns-project-navigation-5 div {
    opacity: 1;
    visibility: visible;
  }
}

.ns-project-area-6 {
  background-color: #242424;
  border-top: 1px solid #3e3e3e;
}
.ns-project-area-6 .ns-project-tab-wrap ul li .nav-link {
  color: #fff;
}
.ns-project-area-6 .ns-project-tab-wrap ul li .nav-link.active {
  color: var(--clr-theme-primary);
}
.ns-project-area-6 .ns-project-navigation-5 div {
  background-color: #fff;
  color: var(--clr-theme-primary);
}
.ns-project-area-6 .ns-project-navigation-5 div:hover {
  background-color: var(--clr-theme-primary);
  color: #fff;
}

/*
************
*************************
11. project details
******************************************************* 
*************************************************************** */
.ns-project-details-tab ul li {
  margin-bottom: 15px;
  display: block;
}
.ns-project-details-tab ul li a {
  display: block;
  height: 60px;
  background-color: #f4f5f9;
  line-height: 60px;
  padding: 0 20px;
  font-size: 20px;
  font-weight: 600;
  color: var(--clr-body-heading);
  position: relative;
  z-index: 1;
  padding-left: 54px;
}
@media (max-width: 767px) {
  .ns-project-details-tab ul li a {
    font-size: 17px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-project-details-tab ul li a {
    font-size: 20px;
  }
}
.ns-project-details-tab ul li a span {
  position: absolute;
  left: 24px;
  top: 50%;
  content: "";
  z-index: 2;
  width: 7px;
  height: 7px;
  transform: translateY(-50%);
  background-color: var(--clr-theme-primary);
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-project-details-tab ul li a::before {
  position: absolute;
  left: 20px;
  top: 50%;
  content: "";
  z-index: 2;
  width: 15px;
  height: 15px;
  border: 2px solid var(--clr-theme-primary);
  transform: translateY(-50%);
  background-color: #f4f5f9;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-project-details-tab ul li a:hover {
  background-color: var(--clr-theme-primary);
  color: var(--clr-common-white);
}
.ns-project-details-tab ul li a:hover::before {
  background-color: var(--clr-theme-primary);
  border-color: #f4f5f9;
}
.ns-project-details-tab ul li a:hover span {
  background-color: #f4f5f9;
}

.ns-project-details-text {
  font-size: 18px;
  margin-bottom: 40px;
}

.ns-project-details-content-text {
  font-size: 17px;
  margin-bottom: 20px;
}

.ns-project-details-quote {
  padding: 20px 15px 20px;
  background: #f4f5f9;
  display: flex;
  gap: 15px;
  max-width: 470px;
  margin-bottom: 30px;
}
.ns-project-details-quote p {
  display: inline-block;
  font-size: 17px;
  font-style: italic;
  margin-bottom: 0;
}
.ns-project-details-quote i {
  display: inline-block;
  font-size: 28px;
  color: var(--clr-theme-primary);
}

.ns-project-details-list ul li {
  display: flex;
  align-items: center;
  line-height: 1;
  margin-bottom: 20px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
}
.ns-project-details-list ul li:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-project-details-list ul li {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-project-details-list ul li {
    font-size: 16px;
  }
}
.ns-project-details-list ul li i {
  color: var(--clr-theme-primary);
}

/*
************
*************************
12. cta
******************************************************* 
*************************************************************** */
.ns-cta-area {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.ns-cta-area::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--clr-common-black);
  opacity: 0.831;
  z-index: -1;
}

.ns-cta-map {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -200px;
  text-align: center;
  margin: 0 auto;
  z-index: -1;
}

.ns-cta-content-subtitle {
  font-size: 19px;
  color: var(--clr-theme-primary);
  font-weight: 500;
  display: inline-block;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .ns-cta-content-subtitle {
    font-size: 16px;
  }
}

.ns-cta-content-title {
  font-size: 40px;
  color: #fff;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .ns-cta-content-title {
    font-size: 30px;
  }
}

.ns-cta-contact {
  display: block;
  color: #fff;
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 40px;
}
.ns-cta-contact:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-cta-contact {
    font-size: 18px;
  }
}

.ns-cta-content {
  text-align: center;
}

.ns-cta-play-bg {
  opacity: 0.8;
}

.ns-cta-play-btn {
  position: absolute;
  left: 0;
  top: -145px;
  width: 230px;
  height: 363px;
  right: 0;
  margin: 0 auto;
}

.ns-cta-play-btn img {
  width: 100%;
}

.ns-cta-play-btn a .ns-btn-img {
  position: absolute;
  left: 50%;
  bottom: 85px;
  transform: translateX(-50%);
  width: 60px;
  height: 60px;
}

.ns-cta-shape-1::before {
  width: 155px;
  height: 155px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: var(--clr-theme-primary);
  clip-path: polygon(100% 0, 0% 100%, 0 0);
  content: "";
  z-index: 1;
}

.ns-cta-shape-1::after {
  width: 180px;
  height: 180px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #fff;
  clip-path: polygon(100% 0, 0% 100%, 0 0);
  content: "";
  z-index: -1;
}

.ns-cta-shape-2 {
  position: absolute;
  right: 90px;
  bottom: -240px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-shape-2 {
    right: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-cta-shape-2 {
    right: 0;
  }
}

.ns-cta-item-2 {
  background-color: #f4f5f9;
  padding: 10px;
  display: flex;
  gap: 20px;
  align-items: center;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-item-2 {
    flex-direction: column;
    padding: 30px 30px 25px;
  }
}
@media (max-width: 767px) {
  .ns-cta-item-2 {
    flex-direction: column;
    padding: 30px 30px 25px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-cta-item-2 {
    flex-direction: row;
    padding: 10px;
  }
}

.ns-cta-item-img-2 {
  flex-shrink: 0;
  width: 150px;
  position: relative;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-item-img-2 {
    width: 100%;
  }
  .ns-cta-item-img-2 img {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-cta-item-img-2 {
    width: 100%;
  }
  .ns-cta-item-img-2 img {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-cta-item-img-2 {
    width: 150px;
  }
  .ns-cta-item-img-2 img {
    width: inherit;
  }
}

.ns-cta-item-content-2 {
  width: calc(100% - 170px);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-item-content-2 {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-cta-item-content-2 {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-cta-item-content-2 {
    width: calc(100% - 170px);
  }
}

.ns-cta-item-content-2 .ns-cta-title-2 {
  font-size: 22px;
  margin-bottom: 7px;
  line-height: 1.2;
}
.ns-cta-item-content-2 .ns-cta-title-2:hover a {
  color: var(--clr-theme-primary);
}

.ns-cta-item-content-2 p {
  font-size: 17px;
  line-height: 25px;
  margin-bottom: 0;
}

.ns-cta-item-icon-2 {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  width: 62px;
  height: 62px;
  background: #242424;
  border-radius: 50%;
  border: 3px solid #fff;
  display: grid;
  place-items: center;
  font-size: 25px;
  color: #fff;
  cursor: pointer;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-cta-2-shape-2 {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-cta-item-2:hover .ns-cta-item-icon-2 {
  background-color: var(--clr-theme-primary);
}
.ns-cta-item-2:hover .ns-cta-2-shape-2 {
  opacity: 1;
  visibility: visible;
}

.ns-cta-area-4 {
  overflow: hidden;
  padding: 44px 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-cta-area-4 {
    padding: 25px 0;
  }
}
@media (max-width: 767px) {
  .ns-cta-area-4 {
    padding: 0;
  }
}

.ns-cta-shape-41 {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  z-index: 2;
}

.ns-cta-shape-42 {
  position: absolute;
  right: 0;
  bottom: 0;
}

.ns-cta-shape-43 {
  position: absolute;
  width: 430px;
  right: 400px;
  top: 50px;
}

.ns-cta-inner-4::before {
  background-color: #242424;
  position: absolute;
  right: 0;
  top: 0;
  width: 3000px;
  content: "";
  z-index: -1;
  height: 100%;
  border-radius: 0 10px 10px 0;
}
@media (max-width: 767px) {
  .ns-cta-inner-4::before {
    right: -100px;
  }
}

.ns-cta-wrap-4 {
  display: flex;
  align-items: center;
  padding-right: 100px;
  height: 225px;
  justify-content: space-between;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-cta-wrap-4 {
    padding-right: 70px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-cta-wrap-4 {
    padding-right: 50px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-wrap-4 {
    padding-right: 40px;
    height: 170px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-cta-wrap-4 {
    padding-right: 40px;
    height: 220px;
  }
}
@media (max-width: 767px) {
  .ns-cta-wrap-4 {
    padding-right: 0;
    height: auto;
    flex-direction: column;
    padding: 50px 0;
    gap: 30px;
  }
}

.ns-cta-left-4 {
  margin-left: -200px;
  margin-left: -75px;
  width: 310px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-cta-left-4 {
    margin-left: 0;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-left-4 {
    margin-left: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-cta-left-4 {
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  .ns-cta-left-4 {
    width: 100%;
    display: flex;
    justify-content: center;
  }
}

.ns-cta-img-4 {
  width: 310px;
  height: 310px;
  border-radius: 50%;
  flex-shrink: 0;
  border: 10px solid #fff;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-img-4 {
    width: 250px;
    height: 250px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-cta-img-4 {
    width: 270px;
    height: 270px;
  }
}
@media (max-width: 767px) {
  .ns-cta-img-4 {
    width: calc(100% - 20px);
    height: calc(100% - 20px);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-cta-img-4 {
    width: 310px;
    height: 310px;
  }
}

.ns-cta-img-4 img {
  border-radius: 50%;
  width: 100%;
  height: 100%;
}

.ns-cta-btn-4 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc(100% - 310px);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-cta-btn-4 {
    width: calc(100% - 370px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-cta-btn-4 {
    flex-direction: column;
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .ns-cta-btn-4 {
    width: 100%;
    flex-direction: column;
    gap: 10px;
  }
}

.ns-cta-content-title-4 {
  color: #fff;
  font-size: 30px;
  line-height: 1.4;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-cta-content-title-4 {
    font-size: 24px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-cta-content-title-4 {
    font-size: 24px;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .ns-cta-content-title-4 {
    font-size: 20px;
    text-align: center;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-cta-content-title-4 {
    font-size: 24px;
    text-align: center;
  }
}

.ns-cta-bg-4 {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
}

.ns-cta-btn-4 .ns-theme-btn:hover {
  background-color: #fff;
  color: var(--clr-theme-primary);
}

.ns-cta-area-5 {
  overflow: hidden;
}

.ns-cta-left-content-5 {
  position: relative;
  height: 250px;
  z-index: 1;
  display: flex;
  align-items: center;
}
.ns-cta-left-content-5::before {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  background-image: url("../img/cta/cta-51.html");
  height: 100%;
  width: 955px;
  z-index: -1;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-cta-left-content-5 {
    overflow: hidden;
    justify-content: center;
    text-align: center;
  }
}

.ns-cta-inner-title-5 {
  font-size: 30px;
  color: #fff;
  margin-bottom: 0;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 767px) {
  .ns-cta-inner-title-5 br {
    display: none;
  }
}

.ns-cta-right-content-5 {
  position: relative;
  z-index: 1;
  height: 250px;
  line-height: 250px;
}
.ns-cta-right-content-5::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-image: url("../img/cta/cta-52.html");
  height: 100%;
  width: 955px;
  z-index: -1;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-cta-right-content-5 {
    overflow: hidden;
    justify-content: center;
    text-align: center !important;
  }
}

/*
************
*************************
13. brand
******************************************************* 
*************************************************************** */
.ns-brand-area {
  border-bottom: 1px solid #dddddd;
}

.ns-brand-item {
  position: relative;
  text-align: center;
  height: 60px;
  line-height: 52px;
  border: 1px solid transparent;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  width: 100%;
  border: 1px solid #eee;
}
.ns-brand-item img {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-brand-item .ns-brand-item-img-hover {
  position: absolute;
  left: 0;
  top: 16px;
  right: 0;
  margin: 0 auto;
  opacity: 0;
  visibility: hidden;
}
.ns-brand-item:hover {
  border-color: var(--clr-theme-primary);
}
.ns-brand-item:hover .ns-brand-item-img {
  opacity: 0;
  visibility: hidden;
}
.ns-brand-item:hover .ns-brand-item-img-hover {
  opacity: 1;
  visibility: visible;
}

.swiper-slide-active .ns-brand-item {
  border-color: var(--clr-theme-primary);
}
.swiper-slide-active .ns-brand-item .ns-brand-item-img-hover {
  opacity: 1;
  visibility: visible;
}
.swiper-slide-active .ns-brand-item .ns-brand-item-img {
  opacity: 0;
  visibility: hidden;
}

.bg_shape {
  background-color: #dddddd;
  position: absolute;
  left: 2px;
  top: 5803px;
  width: 1920px;
  height: 1px;
  z-index: 391;
}

.ns-brand-area-3 {
  background-color: #232429;
  border-color: #5b5c5f;
}

.ns-brand-area-6 {
  background-color: #242424;
  border-color: #4b4b4b;
}

/*
************
*************************
14. counter
******************************************************* 
*************************************************************** */
.ns-counter-item {
  position: relative;
  z-index: 1;
}

.ns-counter-item-img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.ns-counter-item-content {
  background: #f4f5f9;
  padding: 40px 50px 65px;
  text-align: center;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-counter-item-content {
    padding: 40px 40px 65px;
  }
}

.ns-counter-title {
  font-size: 50px;
  margin-bottom: 0;
  display: flex;
  justify-content: center;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-counter-subtitle {
  font-size: 17px;
  font-weight: 500;
  display: inline-block;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-counter-icon {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -40px;
  width: 80px;
  height: 80px;
  background: var(--clr-common-black);
  border-radius: 50%;
  text-align: center;
  display: grid;
  place-items: center;
  font-size: 38px;
  color: #fff;
  margin: 0 auto;
  border: 5px solid #fff;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-counter-item-img img {
  height: 100%;
  object-fit: cover;
}

.ns-counter-item:hover .ns-counter-item-content {
  background-color: rgba(253, 166, 16, 0.8);
}
.ns-counter-item:hover .ns-counter-title {
  color: #fff;
}
.ns-counter-item:hover .ns-counter-subtitle {
  color: #fff;
}
.ns-counter-item:hover .ns-counter-icon {
  background-color: var(--clr-theme-primary);
}

.ns-counter-area-3 {
  background-color: #232429;
}

.ns-counter-area-5 {
  margin-bottom: -100px;
  position: relative;
  z-index: 9;
}

.ns-counter-item-5 {
  position: relative;
  z-index: 1;
}

.ns-counter-item-img-5 {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.ns-counter-item-content-5 {
  background: #f4f5f9;
  padding: 70px 50px 40px;
  text-align: center;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-counter-item-content-5 {
    padding: 40px 40px 65px;
  }
}

.ns-counter-title-5 {
  font-size: 50px;
  margin-bottom: 0;
  display: flex;
  justify-content: center;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-counter-subtitle-5 {
  font-size: 17px;
  font-weight: 500;
  display: inline-block;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-counter-icon-5 {
  position: absolute;
  left: 0;
  right: 0;
  top: -35px;
  width: 80px;
  height: 80px;
  background: var(--clr-common-black);
  border-radius: 50%;
  text-align: center;
  display: grid;
  place-items: center;
  font-size: 38px;
  color: #fff;
  margin: 0 auto;
  border: 5px solid #fff;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-counter-item-img-5 img {
  height: 100%;
  object-fit: cover;
}

.ns-counter-item-5:hover .ns-counter-item-content-5 {
  background-color: rgba(253, 166, 16, 0.8);
}
.ns-counter-item-5:hover .ns-counter-title-5 {
  color: #fff;
}
.ns-counter-item-5:hover .ns-counter-subtitle-5 {
  color: #fff;
}
.ns-counter-item-5:hover .ns-counter-icon-5 {
  background-color: var(--clr-theme-primary);
}

/*
************
*************************
15. testimonial
******************************************************* 
*************************************************************** */
@media (min-width: 992px) {
  .ns-testimonial-container {
    max-width: 100%;
    padding: 0;
  }
}

.ns-testimonial-space {
  transform: translateX(calc((100% - 1170px) / 2));
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-testimonial-space {
    transform: translateX(calc((100% - 1110px) / 2));
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-space {
    transform: translateX(calc((100% - 930px) / 2));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-space {
    transform: translateX(calc((100% - 690px) / 2));
  }
}
@media (max-width: 767px) {
  .ns-testimonial-space {
    transform: translateX(0);
  }
}

.ns-has-space {
  display: flex;
  align-items: center;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-has-space {
    flex-direction: column;
    gap: 40px;
  }
}
@media (max-width: 767px) {
  .ns-has-space {
    flex-direction: column;
    gap: 40px;
  }
}

.ns-inner-wrap {
  width: 100%;
  overflow: hidden;
  margin-left: auto;
}

.ns-testimonial-area {
  position: relative;
  z-index: 1;
}
.ns-testimonial-bg {
  position: absolute;
  right: 0;
  bottom: 78px;
  z-index: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-bg {
    bottom: 45px;
  }
}
.ns-testimonial-single {
  max-width: 1170px;
  height: max-content;
  background-color: #f4f5f9;
  position: relative;
}
.ns-testimonial-single::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 4500px;
  height: 100%;
  background-color: #f4f5f9;
  z-index: -1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-single::before {
    display: none;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-single {
    max-width: 960px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-single {
    max-width: 720px;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-single {
    max-width: 100%;
    width: 100%;
  }
}
.ns-testimonial-wrap {
  padding: 80px 0;
  padding-left: 45px;
  padding-right: 30px;
  width: calc(100% - 470px);
  height: max-content;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-wrap {
    width: calc(100% - 400px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-wrap {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-wrap {
    width: 100%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-wrap {
    padding: 20px 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-wrap {
    padding: 60px 45px;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-wrap {
    padding: 50px 20px;
  }
}
.ns-testimonial-content img {
  width: 68px;
  display: inline-block;
  margin-bottom: 26px;
}
@media (max-width: 767px) {
  .ns-testimonial-content img {
    width: 55px;
    margin-bottom: 15px;
  }
}
.ns-testimonial-content p {
  font-size: 27px;
  font-style: italic;
  line-height: 35px;
  margin-bottom: 22px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-content p br {
    display: none;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-content p {
    font-size: 18px;
    line-height: 27px;
  }
  .ns-testimonial-content p br {
    display: none;
  }
}
.ns-testimonial-admin-title {
  font-size: 25px;
  line-height: 28px;
  margin-bottom: 4px;
}
@media (max-width: 767px) {
  .ns-testimonial-admin-title {
    font-size: 22px;
  }
}
.ns-testimonial-admin span {
  font-size: 17px;
  display: inline-block;
}
@media (max-width: 767px) {
  .ns-testimonial-admin span {
    font-size: 16px;
  }
}
.ns-testimonial-thumb {
  width: 470px;
  flex: 0 0 470px;
  position: relative;
  z-index: 1;
}
.ns-testimonial-thumb::after {
  position: absolute;
  right: -35px;
  top: 0;
  width: 35px;
  height: 77px;
  background-color: var(--clr-theme-primary);
  content: "";
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
  z-index: -1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-thumb::after {
    right: -30px;
    width: 30px;
    height: 70px;
  }
}
.ns-testimonial-thumb::before {
  position: absolute;
  left: -35px;
  bottom: 0;
  width: 35px;
  content: "";
  height: 77px;
  background-color: var(--clr-theme-primary);
  clip-path: polygon(0 0, 100% 100%, 100% 0);
  z-index: -1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-thumb::before {
    left: -30px;
    width: 30px;
    height: 70px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-thumb {
    width: 400px;
    flex: 0 0 400px;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-thumb {
    width: 100%;
    flex: 0 0 100%;
  }
  .ns-testimonial-thumb::after,
  .ns-testimonial-thumb::before {
    display: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-testimonial-thumb {
    width: calc(100% - 80px);
  }
  .ns-testimonial-thumb::after,
  .ns-testimonial-thumb::before {
    display: block;
  }
}

.ns-testimonial-pagination.swiper-pagination-bullets {
  line-height: 1;
}
.ns-testimonial-pagination .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  display: inline-block;
  border-radius: 50%;
  background: transparent;
  opacity: 1;
  border: 3px solid var(--clr-theme-primary);
}
.ns-testimonial-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
  margin-right: 10px;
}
.ns-testimonial-pagination.swiper-pagination-bullets
  .swiper-pagination-bullet:last-child {
  margin-right: 0;
}
.ns-testimonial-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--clr-theme-primary);
}

.ns-testimonial-area-2 {
  overflow: hidden;
  position: relative;
}
.ns-testimonial-img-2 {
  position: relative;
  z-index: 1;
}
.ns-testimonial-2-shape-1 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  height: 100%;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-testimonial-2-img-2 {
    text-align: center;
  }
}
.ns-testimonial-2-img-2 img {
  width: 346px;
  height: 346px;
  border-radius: 50%;
  border: 13px solid #fff;
  background-color: #dfdfe1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-2-img-2 img {
    width: 100%;
    height: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-2-img-2 img {
    width: 85%;
    height: 85%;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-2-img-2 img {
    width: 100%;
    height: 100%;
    border-width: 8px;
  }
}
.ns-testimonial-2-img-1 {
  padding: 50px 40px 50px 50px;
}
@media (max-width: 767px) {
  .ns-testimonial-2-img-1 {
    padding: 20px 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-testimonial-2-img-1 {
    padding: 40px 40px;
  }
}
.ns-testimonial-2-shape-2 {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-2-shape-2 {
    width: 48%;
  }
}
.ns-testimonial-inner-2 {
  background-color: #f4f5f9;
  padding: 30px 30px;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .ns-testimonial-inner-2 {
    padding: 30px 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-testimonial-inner-2 {
    padding: 30px 30px;
  }
}
.ns-testimonial-inner-2::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 4500px;
  height: 100%;
  background-color: #f4f5f9;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-testimonial-inner-2::before {
    display: none;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-wrap-2 .ns-testimonial-content p {
    font-size: 22px;
  }
}

.ns-testimonial-area-3 {
  background-color: #232429;
}

.ns-testimonial-inner-3 {
  background-color: #3b3e43;
}
.ns-testimonial-inner-3::before {
  background-color: #3b3e43;
}

.ns-testimonial-content-3 p {
  color: #fff;
}
.ns-testimonial-content-3 .ns-testimonial-admin-title {
  color: #fff;
}
.ns-testimonial-content-3 .ns-testimonial-admin span {
  color: #fff;
}

.ns-testimonial-wrap-4 {
  display: flex;
  align-items: center;
  background-color: #f4f5f9;
  overflow: hidden;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-testimonial-wrap-4 {
    flex-direction: column;
  }
}

.ns-testimonial-content-4 {
  width: 930px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: end;
  background-color: #f4f5f9;
}
.ns-testimonial-content-4 .ns-testimonial-admin-4 {
  width: 110px;
  height: 110px;
  border-radius: 50%;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-testimonial-content-4 {
    width: 750px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-testimonial-content-4 {
    width: 50%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-content-4 {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-content-4 {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-content-4 {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-testimonial-content-4 {
    max-width: 540px;
  }
}

.ns-testimonial-content-inner-4 {
  width: 620px;
  margin-right: 80px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-testimonial-content-inner-4 {
    width: 590px;
    margin-right: 45px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-testimonial-content-inner-4 {
    width: 85%;
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-content-inner-4 {
    width: 65%;
    margin-right: auto;
    margin-left: auto;
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-content-inner-4 {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-content-inner-4 {
    width: calc(100% - 30px);
    margin-right: auto;
    margin-left: auto;
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-testimonial-content-inner-4 {
    width: calc(100% - 30px);
    max-width: 540px;
  }
}

.ns-testimonial-map-4 {
  position: absolute;
  top: -125px;
  right: 0;
  left: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: 600px;
  z-index: -1;
}

.ns-testimonial-counter-4 {
  width: calc(100% - 930px);
  display: flex;
  gap: 30px;
  background-color: #242424;
  padding-top: 60px;
  padding-bottom: 35px;
  padding-left: 45px;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .ns-testimonial-counter-4 {
    width: calc(100% - 750px);
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-testimonial-counter-4 {
    width: 50%;
    padding-left: 30px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-counter-4 {
    width: 100%;
    padding-left: 0;
    justify-content: center;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-counter-4 {
    width: 100%;
    padding-left: 0;
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-counter-4 {
    width: 100%;
    justify-content: center;
    padding-left: 0;
    gap: 0;
    flex-direction: column;
    max-width: 540px;
  }
}

.ns-testimonial-counter-inner-4.inner-41 {
  margin-top: 50px;
}
.ns-testimonial-counter-inner-4 .ns-counter-item-content {
  width: 270px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-testimonial-counter-inner-4 .ns-counter-item-content {
    width: 255px;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-counter-inner-4 {
    width: calc(100% - 30px);
    margin-left: auto;
    margin-right: auto;
  }
  .ns-testimonial-counter-inner-4 .ns-counter-item-content {
    width: 100%;
  }
  .ns-testimonial-counter-inner-4.inner-41 {
    margin-top: 0;
  }
}

.ns-testimonial-counter-img-4 {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  z-index: -1;
}

.ns-testimonial-quote-4 {
  position: absolute;
  bottom: 0;
  right: 260px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-testimonial-quote-4 {
    bottom: 50px;
    right: auto;
    left: 50%;
  }
}

.ns-testimonial-wrap-5 {
  background-color: #232429;
  border-radius: 50px;
  position: relative;
  z-index: 1;
}

.ns-testimonial-map-5 {
  position: absolute;
  left: 30px;
  right: 0;
  bottom: -260px;
  margin-left: auto;
  margin-right: auto;
  max-width: 650px;
}

.ns-testimonial-area-5 {
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-testimonial-img-5 {
    text-align: center;
  }
}
.ns-testimonial-img-5 img {
  width: 100%;
  border-radius: 50%;
  background-color: transparent;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-img-5 img {
    width: 100%;
    height: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-img-5 img {
    width: 85%;
    height: 85%;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-img-5 img {
    width: 100%;
    height: 100%;
    border-width: 8px;
  }
}

.testimonial-thumb-5 {
  padding: 35px 0;
}

.ns-testimonial-img-5 {
  width: auto;
  height: auto;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-testimonial-img-5 {
    width: 150px;
    height: 150px;
    margin: auto;
  }
}

.ns-testimonial-top-5 {
  width: 390px;
}

@media (max-width: 575.98px) {
  .ns-testimonial-top-5 {
    width: 200px;
  }
  .ns-testimonial-top-5 .swiper-slide {
    display: flex;
    justify-content: center;
  }
}
.ns-testimonial-top-5 {
  margin-left: auto;
  margin-right: auto;
  position: absolute;
  top: -92px;
  left: 0;
  right: 0;
  z-index: 9999;
}

.ns-testimonial-bottom-5 {
  width: 100%;
  padding-left: 150px;
  padding-right: 150px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-bottom-5 {
    padding-left: 100px;
    padding-right: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-testimonial-bottom-5 {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (max-width: 767px) {
  .ns-testimonial-bottom-5 {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.ns-testimonial-content {
  width: 100%;
}

.ns-testimonial-content-5 {
  text-align: center;
}

.ns-testimonial-content-5 p {
  font-size: 27px;
  color: #fff;
  line-height: 35px;
  font-style: italic;
  margin-bottom: 30px;
}

.ns-testimonial-admin-title-5 {
  font-size: 25px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 0;
}

.ns-testimonial-admin-5 span {
  color: #fff;
}

.ns-testimonial-quote-5 img {
  position: absolute;
  left: 60px;
  bottom: 55px;
  z-index: 9;
}
@media (max-width: 767px) {
  .ns-testimonial-quote-5 img {
    left: 30px;
  }
}

.ns-testimonial-quote-5 .inner-quote-right {
  left: auto;
  right: 60px;
}
@media (max-width: 767px) {
  .ns-testimonial-quote-5 .inner-quote-right {
    right: 30px;
  }
}

.ns-testimonial-area-6 {
  background-color: #242424;
}
.ns-testimonial-area-6 .ns-testimonial-map-6 {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -275px;
  margin: 0 auto;
}

.ns-testimonial-wrap-6 .ns-testimonial-content img {
  width: 190px;
  height: 190px;
  border-radius: 50%;
}
.ns-testimonial-wrap-6 .ns-testimonial-quote-6 {
  position: absolute;
  left: 310px;
  top: 70px;
  z-index: 1;
}
.ns-testimonial-wrap-6 .ns-testimonial-content p {
  color: #fff;
}
.ns-testimonial-wrap-6 .ns-testimonial-admin-title {
  color: #fff;
}
.ns-testimonial-wrap-6 .ns-testimonial-admin span {
  color: #fff;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-wrap-6 {
    padding-bottom: 40px;
  }
}

.ns-testimonial-img-6 {
  margin-left: -65px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-testimonial-img-6 {
    margin-left: -15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-testimonial-img-6 {
    margin-left: 0;
  }
}

/*
************
*************************
16. contact
******************************************************* 
*************************************************************** */
@media (min-width: 1600px) {
  .ns-contact-container {
    max-width: 100%;
    padding: 0;
  }
}

.ns-contact-space {
  transform: translateX(calc((100% - 1170px) / 2));
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-contact-space {
    transform: translateX(calc((100% - 1110px) / 2));
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-contact-space {
    transform: translateX(calc((100% - 930px) / 2));
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-space {
    transform: translateX(calc((100% - 690px) / 2));
  }
}
@media (max-width: 767px) {
  .ns-contact-space {
    transform: translateX(0);
  }
}

.ns-inner-wrap {
  width: 100%;
  overflow: hidden;
  margin-left: auto;
}

.ns-contact-wrap {
  display: flex;
  min-width: 100%;
  gap: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-wrap {
    flex-direction: column;
    gap: 60px;
  }
}
@media (max-width: 767px) {
  .ns-contact-wrap {
    flex-direction: column;
    gap: 60px;
  }
}

.ns-contact-left {
  width: 675px;
  flex: 0 0 675px;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-contact-left {
    width: 600px;
    flex: 0 0 600px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-contact-left {
    width: 500px;
    flex: 0 0 500px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-left {
    flex: 0 0 100%;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-contact-left {
    flex: 0 0 100%;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-contact-left .ns-section-text br {
    display: none;
  }
}

.ns-contact-right {
  max-width: calc(100% - 675px);
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-contact-right {
    max-width: calc(100% - 600px);
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-contact-right {
    max-width: calc(100% - 500px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-right {
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-contact-right {
    max-width: 100%;
  }
}

.ns-contact-form input,
.ns-contact-form textarea {
  width: 100%;
  height: 50px;
  line-height: 50px;
  padding: 0 20px;
  font-size: 17px;
  margin-bottom: 20px;
  border: 1px solid #dddddd;
  border-radius: 5px;
  color: var(--clr-body-text);
}

.ns-contact-form textarea {
  height: 150px;
  margin-bottom: 30px;
}

.ns-theme-btn.ns-contact-btn {
  border-radius: 5px;
}

.ns-contact-right {
  display: flex;
}

.ns-contact-info {
  position: relative;
  z-index: 1;
  padding: 80px 80px 75px;
  width: 470px;
  flex: 0 0 470px;
  overflow: hidden;
  height: max-content;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-contact-info {
    width: 430px;
    flex: 0 0 430px;
    padding: 60px 60px 55px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-contact-info {
    width: 100%;
    flex: none;
    padding: 60px 45px 55px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-contact-info {
    width: 100%;
    flex: none;
    padding: 60px 40px 55px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-info {
    flex: 0 0 100%;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .ns-contact-info {
    flex: 0 0 100%;
    width: 100%;
    padding: 50px 20px 45px;
  }
}

.ns-contact-map {
  width: calc(100% - 470px);
  display: none;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px) {
  .ns-contact-map {
    width: calc(100% - 430px);
  }
}
@media (min-width: 1600px) {
  .ns-contact-map {
    display: block;
  }
}

.ns-contact-map iframe {
  width: 100%;
  height: 100%;
}

.ns-contact-shape {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.ns-contact-item {
  display: flex;
  gap: 30px;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .ns-contact-item {
    gap: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-contact-item {
    gap: 30px;
  }
}

.ns-contact-item-icon {
  width: 75px;
  height: 75px;
  text-align: center;
  display: grid;
  place-items: center;
  background-color: var(--clr-theme-primary);
  border-radius: 50%;
  flex: 0 0 75px;
  color: #fff;
  font-size: 32px;
}
@media (max-width: 767px) {
  .ns-contact-item-icon {
    width: 55px;
    height: 55px;
    flex: 0 0 55px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-contact-item-icon {
    width: 75px;
    height: 75px;
    flex: 0 0 75px;
  }
}

.ns-contact-item-details span {
  font-size: 24px;
  color: #fff;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  display: inline-block;
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .ns-contact-item-details span {
    font-size: 20px;
  }
}

.ns-contact-item-details a {
  font-size: 18px;
  color: #fff;
  display: block;
  line-height: 28px;
}
.ns-contact-item-details a:hover {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-contact-item-details a {
    font-size: 18px;
  }
}

.ns-contact-item-details p {
  font-size: 18px;
  color: #fff;
  line-height: 28px;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ns-contact-item-details p {
    font-size: 20px;
  }
}

.ns-contact-item:last-child {
  margin-bottom: 0;
}

.ns-contact-bg-img {
  position: absolute;
  z-index: -2;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.ns-contact-info {
  position: relative;
}
.ns-contact-info::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgb(45, 46, 51);
  opacity: 0.878;
  z-index: -1;
}

.ns-contact-shape.ns-contact-shape-1 {
  left: -240px;
  bottom: -165px;
  opacity: 1;
  width: 100%;
  height: 100%;
}

.ns-contact-shape.ns-contact-shape-2 {
  opacity: 1;
  width: 100%;
  height: 100%;
  top: -180px;
  right: -230px;
}

.ns-contact-shape.ns-contact-shape-3 {
  opacity: 1;
  width: 100%;
  height: 100%;
  right: -340px;
  bottom: -330px;
}

.ns-contact-circle-1 {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 85px;
  height: 85px;
  background: transparent;
  border: 10px solid #fff;
  border-radius: 50%;
  opacity: 0.388;
}

.ns-contact-circle-2 {
  position: absolute;
  right: -30px;
  bottom: -20px;
  width: 85px;
  height: 85px;
  background: transparent;
  border: 10px solid #fff;
  border-radius: 50%;
  opacity: 0.388;
}

.ns-contact-area-3 {
  background-color: #232429;
  border-bottom: 1px solid #393a3e;
}
.ns-contact-area-3 .ns-contact-form input,
.ns-contact-area-3 .ns-contact-form textarea {
  border-color: #454549;
  background-color: transparent;
}

@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-contact-wrap-3 .ns-section-text br {
    display: none;
  }
}
.ns-contact-wrap-3 .ns-contact-form input,
.ns-contact-wrap-3 .ns-contact-form textarea {
  color: #fff;
}
.ns-contact-wrap-3 .ns-contact-form input::-webkit-input-placeholder,
.ns-contact-wrap-3 .ns-contact-form textarea::-webkit-input-placeholder {
  color: #fff;
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-contact-wrap-3 .ns-contact-form input:-moz-placeholder,
.ns-contact-wrap-3 .ns-contact-form textarea:-moz-placeholder {
  color: #fff;
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-contact-wrap-3 .ns-contact-form input::-moz-placeholder,
.ns-contact-wrap-3 .ns-contact-form textarea::-moz-placeholder {
  color: #fff;
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-contact-wrap-3 .ns-contact-form input:-ms-input-placeholder,
.ns-contact-wrap-3 .ns-contact-form textarea:-ms-input-placeholder {
  color: #fff;
  font-size: 17px;
  opacity: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-info-3 .ns-contact-item {
    gap: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-info-3 .ns-contact-item-icon {
    width: 65px;
    height: 65px;
    flex: 0 0 65px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-info-3 .ns-contact-item-details span {
    font-size: 22px;
  }
  .ns-contact-info-3 .ns-contact-item-details a {
    font-size: 20px;
  }
  .ns-contact-info-3 .ns-contact-item-details p {
    font-size: 20px;
  }
}

.ns-contact-list-3 a {
  display: block;
}

.ns-contact-info-3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-contact-info-3 {
    align-items: center;
  }
}

.ns-contact-page {
  width: 100%;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-contact-page .ns-section-text br {
    display: none;
  }
}

/*
************
*************************
17. blog
******************************************************* 
*************************************************************** */
.ns-blog-img {
  position: relative;
  z-index: 5;
}

.ns-blog-img {
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  overflow: hidden;
}

.ns-blog-tag {
  position: absolute;
  left: 30px;
  top: 0;
  height: 35px;
  padding: 0 20px;
  background-color: var(--clr-theme-primary);
  color: #fff;
  line-height: 35px;
  font-weight: 500;
  border-radius: 0 0 5px 5px;
  display: inline-block;
}

.ns-blog-item {
  background-color: #fff;
  border-radius: 5px;
  overflow: hidden;
}

.ns-blog-area {
  background-color: #f4f5f9;
}

.ns-blog-content {
  padding: 34px 30px 34px;
  position: relative;
  z-index: 5;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-blog-content {
    padding: 34px 25px 34px;
  }
}

.ns-blog-content-meta {
  margin-bottom: 8px;
}

.ns-blog-content-title {
  font-size: 24px;
  margin-bottom: 15px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-blog-content-title {
    font-size: 22px;
  }
}

.ns-blog-content p {
  font-size: 17px;
  line-height: 29px;
  margin-bottom: 15px;
}

.ns-blog-btn {
  font-size: 17px;
  font-weight: 500;
  color: var(--clr-body-heading);
}
.ns-blog-btn i {
  margin-left: 5px;
  font-size: 13px;
}
.ns-blog-btn:hover {
  color: var(--clr-theme-primary);
}

.ns-blog-content-meta span {
  display: inline-block;
  font-size: 17px;
}

.ns-blog-admin {
  margin-right: 10px;
}

.ns-blog-admin a:hover {
  color: var(--clr-theme-primary);
}

.ns-blog-content-title:hover a {
  color: var(--clr-theme-primary);
}

.ns-blog-pagination.swiper-pagination-bullets {
  right: 0;
  left: auto;
  text-align: center;
  line-height: 1;
}
.ns-blog-pagination .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  display: inline-block;
  border-radius: 50%;
  background: transparent;
  opacity: 1;
  border: 3px solid var(--clr-theme-primary);
}
.ns-blog-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
  margin-right: 10px;
}
.ns-blog-pagination.swiper-pagination-bullets
  .swiper-pagination-bullet:last-child {
  margin-right: 0;
}
.ns-blog-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--clr-theme-primary);
}

.ns-blog-img-shape-1 {
  position: absolute;
  right: -140px;
  bottom: -110px;
  right: -250px;
  width: 240px;
  height: 240px;
  background: var(--clr-theme-primary);
  border-radius: 50%;
  content: "";
  z-index: 2;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  opacity: 0;
  visibility: hidden;
}

.ns-blog-img-shape-2 {
  position: absolute;
  right: -70px;
  bottom: -155px;
  bottom: -250px;
  width: 240px;
  height: 240px;
  background: var(--clr-common-black);
  border-radius: 50%;
  content: "";
  z-index: 1;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  opacity: 0;
  visibility: hidden;
}

.ns-blog-shape-1 {
  position: absolute;
  right: 5px;
  bottom: -35px;
  bottom: -80px;
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  width: 70px;
  height: 70px;
  background-color: var(--clr-theme-primary);
  z-index: -1;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  opacity: 0;
  visibility: hidden;
}

.ns-blog-shape-2 {
  position: absolute;
  right: -25px;
  bottom: -40px;
  right: -50px;
  width: 50px;
  height: 100px;
  background: var(--clr-common-black);
  transform: rotate(45deg);
  z-index: -2;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
  opacity: 0;
  visibility: hidden;
}

.ns-blog-item:hover .ns-blog-img-shape-1 {
  opacity: 1;
  visibility: visible;
  right: -140px;
}
.ns-blog-item:hover .ns-blog-img-shape-2 {
  opacity: 1;
  visibility: visible;
  bottom: -155px;
}
.ns-blog-item:hover .ns-blog-shape-1 {
  opacity: 1;
  visibility: visible;
  bottom: -35px;
}
.ns-blog-item:hover .ns-blog-shape-2 {
  opacity: 1;
  visibility: visible;
  right: -25px;
}

.ns-blog-shape-bg {
  position: absolute;
  z-index: -1;
}

.ns-blog-area {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.ns-blog-bg-shape-1.ns-blog-shape-bg {
  left: 0;
  bottom: 0;
}

.ns-blog-bg-shape-2.ns-blog-shape-bg {
  bottom: 0;
  right: 0;
}

.ns-blog-bg-shape-3.ns-blog-shape-bg {
  top: -420px;
  left: 0;
}

.ns-blog-bg-shape-4.ns-blog-shape-bg {
  top: 100px;
  right: 0;
}

.ns-blog-area-3 {
  background-color: #232429;
}

.ns-blog-area.ns-blog-page {
  background-color: #fff;
}
.ns-blog-area.ns-blog-page .ns-blog-item {
  border-radius: 8px;
  border: 1px solid #ddd;
}

.ns-blog-area.ns-blog-area-5 {
  background-color: #fff;
}
.ns-blog-area.ns-blog-area-5 .ns-blog-item {
  border: 1px solid #ddd;
}

.ns-blog-area-6 {
  background-color: #242424;
}
.ns-blog-area-6 .ns-blog-img {
  z-index: 9;
}
.ns-blog-area-6 .ns-blog-content {
  background-color: #242424;
  border: 1px solid #3c3c3c;
  margin-top: -5px;
  padding-top: 38px;
  border-radius: 8px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-blog-area-6 .ns-blog-content-meta span {
  color: #fff;
}
.ns-blog-area-6 .ns-blog-content-title {
  color: #fff;
}
.ns-blog-area-6 .ns-blog-content p {
  color: #fff;
}
.ns-blog-area-6 .ns-blog-btn {
  color: #fff;
}
.ns-blog-area-6 .ns-blog-btn:hover {
  color: var(--clr-theme-primary);
}
.ns-blog-area-6 .ns-blog-tag-6 {
  position: absolute;
  right: 40px;
  bottom: -20px;
  height: 40px;
  padding: 0 20px;
  background-color: var(--clr-theme-primary);
  color: #fff;
  line-height: 40px;
  font-weight: 500;
  border-radius: 0 0 5px 5px;
  display: inline-block;
  z-index: 9;
}
.ns-blog-area-6 .ns-blog-img {
  overflow: unset;
}
.ns-blog-area-6 .ns-blog-item:hover .ns-blog-content {
  border-color: #7c5e16;
}

.single-blog-list-item {
  box-shadow: inset 0px 0px 0px 1px #ddd;
}

.ns-blog-list-img {
  position: relative;
  z-index: 99;
}

.ns-blog-list-content {
  padding: 35px 40px 40px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-blog-list-content {
    padding: 35px 30px 40px;
  }
}
@media (max-width: 767px) {
  .ns-blog-list-content {
    padding: 35px 25px 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-list-content {
    padding: 35px 30px 40px;
  }
}

.ns-blog-list-admin:hover a {
  color: var(--clr-theme-primary);
}

.ns-blog-list-meta {
  margin-bottom: 5px;
  display: flex;
  gap: 25px;
}
.ns-blog-list-meta span {
  display: inline-block;
  font-size: 14px;
}
.ns-blog-list-meta span i {
  margin-right: 10px;
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-blog-list-meta {
    flex-direction: column;
    gap: 5px;
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-list-meta {
    flex-direction: row;
    gap: 25px;
    margin-bottom: 5px;
  }
}

.ns-blog-list-title {
  font-size: 22px;
  line-height: 1.3;
  margin-bottom: 10px;
}
.ns-blog-list-title:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-blog-list-title {
    font-size: 18px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-list-title {
    font-size: 20px;
  }
}

.ns-blog-list-content p {
  margin-bottom: 25px;
}

.ns-blog-list-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .ns-blog-list-bottom {
    flex-direction: column;
    gap: 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-list-bottom {
    flex-direction: row;
    gap: 0;
  }
}

.ns-blog-list-social {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-blog-list-social {
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .ns-blog-list-social {
    gap: 10px;
    flex-direction: column;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-list-social {
    flex-direction: row;
    gap: 10px;
  }
}

.ns-blog-list-social span {
  font-size: 18px;
  color: #222222;
  font-weight: 500;
  display: inline-block;
}

.ns-blog-list-social-icon a {
  width: 30px;
  height: 30px;
  border: 1px solid #92918f;
  border-radius: 50%;
  font-size: 12px;
  text-align: center;
  display: inline-grid;
  place-items: center;
  margin-right: 5px;
}

.ns-blog-list-social-icon a:last-child {
  margin-right: 0;
}

.ns-blog-list-social-icon a:hover {
  background: var(--clr-theme-primary);
  border-color: var(--clr-theme-primary);
  color: #fff;
}

.ns-blog-list-quote {
  background-color: #f4f9fc;
  padding: 25px 35px 20px;
  display: flex;
  gap: 25px;
}
@media (max-width: 767px) {
  .ns-blog-list-quote {
    flex-direction: column;
    gap: 10px;
    padding: 25px 25px 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-list-quote {
    padding: 25px 35px 20px;
    flex-direction: row;
    gap: 25px;
  }
}

.ns-blog-list-quote span {
  display: inline-block;
  font-size: 32px;
  color: var(--clr-theme-primary);
  line-height: 40px;
}

.ns-blog-list-quote p {
  font-size: 16px;
  font-style: italic;
  line-height: 25px;
  margin-bottom: 0;
}

.ns-blog-list-img {
  position: relative;
  z-index: 1;
}

.ns-play-btn-2 {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.ns-blog-list-img .ns-audio-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  width: 75px;
  height: 75px;
  background-color: var(--clr-theme-primary);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 30px;
  color: #fff;
}
@media (max-width: 767px) {
  .ns-blog-list-img .ns-audio-btn {
    width: 60px;
    height: 60px;
    font-size: 25px;
  }
}

.ns-blog-list-navigation div {
  position: absolute;
  left: 30px;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-color: var(--clr-theme-primary);
  z-index: 1;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  color: #fff;
  font-size: 20px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  opacity: 0;
  visibility: hidden;
}
@media (max-width: 767px) {
  .ns-blog-list-navigation div {
    width: 40px;
    height: 40px;
    line-height: 40px;
    left: 20px;
  }
}

.ns-blog-list-navigation .ns-blog-list-swiper-next {
  left: auto;
  right: 30px;
}
@media (max-width: 767px) {
  .ns-blog-list-navigation .ns-blog-list-swiper-next {
    right: 20px;
  }
}

.ns-blog-list-img-slide:hover .ns-blog-list-navigation div {
  opacity: 1;
  visibility: visible;
}

.ns-blog-list-pagination .ns-pagination-btn {
  display: inline-block;
  width: 35px;
  height: 35px;
  border: 1px solid #ddd;
  margin-right: 10px;
  text-align: center;
  line-height: 35px;
  font-size: 16px;
  color: #333;
  border-radius: 4px;
}
.ns-blog-list-pagination .ns-pagination-btn:last-child {
  margin-right: 0;
}
.ns-blog-list-pagination .ns-pagination-btn:hover {
  background-color: var(--clr-theme-primary);
  border-color: var(--clr-theme-primary);
  color: var(--clr-common-white);
}
.ns-blog-list-pagination .ns-pagination-btn.active {
  background-color: var(--clr-theme-primary);
  border-color: var(--clr-theme-primary);
  color: var(--clr-common-white);
}

/*
************
*************************
18. blog details
******************************************************* 
*************************************************************** */
.ns-blog-details-title {
  font-size: 36px;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .ns-blog-details-title {
    font-size: 28px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-details-title {
    font-size: 32px;
  }
}

.ns-blog-details-meta li {
  display: inline-block;
  position: relative;
  z-index: 1;
  font-size: 15px;
  margin-right: 15px;
  padding-right: 10px;
}
.ns-blog-details-meta li::after {
  position: absolute;
  top: 4px;
  right: -5px;
  z-index: 1;
  content: "";
  width: 1px;
  height: 12px;
  background-color: #ddd;
}
.ns-blog-details-meta li:last-child {
  margin-right: 0;
  padding-right: 0;
}
.ns-blog-details-meta li:last-child::after {
  display: none;
}

.ns-blog-details-meta li i {
  font-size: 15px;
  color: var(--clr-theme-primary);
  margin-right: 10px;
}

.ns-blog-details-meta {
  margin-bottom: 10px;
}

.ns-blog-details-banner-img {
  width: 100%;
  margin-bottom: 25px;
}

.ns-blog-details-content {
  border-bottom: 1px solid #ddd;
  margin-bottom: 45px;
  padding-bottom: 27px;
}

.ns-blog-details-content p {
  font-size: 17px;
  margin-bottom: 15px;
}

.ns-client-review-title {
  font-size: 22px;
  margin-bottom: 25px;
}

.ns-blog-detials-quote {
  background-color: #f4f5f9;
  padding: 25px 30px 25px;
  position: relative;
  margin-bottom: 35px;
}
@media (max-width: 767px) {
  .ns-blog-detials-quote {
    padding: 25px 20px 25px;
  }
}

.ns-blog-detials-quote p {
  font-size: 17px;
  font-style: italic;
  margin-bottom: 13px;
}

.ns-quote-admin h5 {
  font-size: 22px;
  margin-bottom: 2px;
}

.ns-quote-icon {
  position: absolute;
  display: inline-block;
  font-size: 54px;
  color: var(--clr-theme-primary);
  right: 30px;
  bottom: 0;
}

.ns-blog-details-client-review-text {
  font-size: 17px;
  margin-bottom: 97px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 40px;
}

.ns-blog-details-comment-title {
  font-size: 22px;
  margin-bottom: 45px;
}

.ns-blog-details-comment-item {
  display: flex;
  gap: 20px;
}
@media (max-width: 767px) {
  .ns-blog-details-comment-item {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-details-comment-item {
    flex-direction: row;
  }
}

.ns-comment-border {
  border-bottom: 1px solid #ddd;
  padding-bottom: 50px;
  margin-bottom: 40px;
}

.ns-blog-details-comment-item-img {
  width: 90px;
  flex: 0 0 90px;
  height: 90px;
  border-radius: 50%;
}

.ns-blog-details-comment-item-img img {
  width: 100%;
}

.ns-comment-title {
  font-size: 22px;
  margin-bottom: 5px;
}

.ns-blog-details-comment-item-content p {
  margin-bottom: 10px;
}

.ns-blog-details-comment-meta span {
  display: inline-block;
  font-size: 17px;
  margin-right: 50px;
}
@media (max-width: 767px) {
  .ns-blog-details-comment-meta span {
    display: block;
    margin-right: 0;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-details-comment-meta span {
    display: inline-block;
    margin-bottom: 0;
    margin-right: 50px;
  }
}

.ns-blog-details-comment-meta a {
  font-size: 17px;
  font-weight: 500;
  display: inline-block;
  color: var(--clr-theme-primary);
}

.ns-blog-details-comment {
  margin-bottom: 90px;
}

.ns-blog-details-contact-title {
  font-size: 35px;
  margin-bottom: 15px;
}

.ns-blog-details-contact p {
  font-size: 17px;
  margin-bottom: 27px;
}

.ns-blog-details-contact form input,
.ns-blog-details-contact form textarea {
  height: 50px;
  line-height: 50px;
  font-size: 17px;
  color: var(--clr-body-text);
  margin-bottom: 20px;
  width: 100%;
  border-radius: 5px;
  border: 1px solid #ddd;
  padding: 0 25px;
}

.ns-blog-details-contact form textarea {
  height: 150px;
  margin-bottom: 30px;
}

.ns-theme-btn.ns-blog-details-btn {
  border-radius: 5px;
}

.ns-blog-details-widget-search form {
  position: relative;
  z-index: 1;
}

.ns-blog-details-widget-search form input {
  width: 100%;
  height: 50px;
  border: 1px solid #ddd;
  border-radius: 0;
  padding: 0 20px;
  font-size: 17px;
  color: var(--clr-body-text);
}

.ns-blog-details-widget-search form button {
  position: absolute;
  right: 4px;
  top: 4px;
  border: none;
  background: var(--clr-theme-primary);
  font-size: 17px;
  color: #fff;
  width: 42px;
  height: 42px;
}
.ns-blog-details-widget-search form button:hover {
  background-color: var(--clr-common-black);
}

.ns-blog-details-widget {
  padding: 25px 30px 30px;
  border: 1px solid #ddd;
}

.ns-blog-details-widget-title {
  font-size: 22px;
  margin-bottom: 25px;
}

.ns-blog-details-widget-post {
  display: flex;
  gap: 15px;
}

.ns-blog-details-post-img {
  width: 95px;
  flex: 0 0 95px;
}
@media (max-width: 767px) {
  .ns-blog-details-post-img {
    flex: 0 0 65px;
    width: 65px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-details-post-img {
    flex: 0 0 95px;
    width: 95px;
  }
}

.ns-blog-details-post-content span {
  font-size: 14px;
  display: inline-block;
  margin-bottom: 5px;
}

.ns-blog-details-post-content span i {
  font-size: 13px;
  color: var(--clr-theme-primary);
  margin-right: 10px;
}

.ns-blog-details-post-content-title {
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 0;
}
.ns-blog-details-post-content-title:hover a {
  color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-blog-details-post-content-title {
    font-size: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-details-post-content-title {
    font-size: 16px;
  }
}

.ns-blog-details-widget-post {
  margin-bottom: 30px;
}
.ns-blog-details-widget-post:last-child {
  margin-bottom: 0;
}

.ns-blog-details-category-list li {
  display: block;
  margin-bottom: 10px;
}
.ns-blog-details-category-list li:last-child {
  margin-bottom: 0;
}

.ns-blog-details-category-list li a {
  font-size: 17px;
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  padding-left: 30px;
}
.ns-blog-details-category-list li a:hover {
  color: var(--clr-theme-primary);
}

.ns-blog-details-category-list li a span {
  display: inline-block;
}

.ns-blog-details-category-list li a::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "\f30b";
  font-family: "Font Awesome 5 Pro";
  font-size: 17px;
  font-weight: 500;
}

.ns-blog-details-tag a {
  font-size: 17px;
  display: inline-grid;
  place-items: center;
  border: 1px solid #ddd;
  border-radius: 4px;
  height: 30px;
  padding: 0 20px;
  margin-bottom: 10px;
  margin-right: 5px;
}
.ns-blog-details-tag a:hover {
  background-color: var(--clr-theme-primary);
  color: #fff;
  border-color: transparent;
}
@media (max-width: 767px) {
  .ns-blog-details-tag a {
    padding: 0 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-details-tag a {
    padding: 0 20px;
  }
}

.ns-blog-details-widget.ns-tag {
  padding-bottom: 15px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-blog-details-comment-item.ml-130 {
    margin-left: 80px;
  }
}
@media (max-width: 767px) {
  .ns-blog-details-comment-item.ml-130 {
    margin-left: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-blog-details-comment-item.ml-130 {
    margin-left: 50px;
  }
}

/*
************
*************************
19. newsletter
******************************************************* 
*************************************************************** */
.ns-newsletter-wrap {
  position: relative;
  z-index: 1;
}

.ns-newsletter-inner {
  padding: 75px 60px 45px;
  background: var(--clr-common-black);
  border-radius: 10px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
@media (max-width: 767px) {
  .ns-newsletter-inner {
    padding: 75px 25px 45px;
  }
}
.ns-newsletter-inner img {
  position: absolute;
}

.ns-newsletter-title {
  color: #fff;
  font-size: 30px;
  line-height: 1.3;
  margin-bottom: 0;
  z-index: 9;
  position: relative;
}
@media (max-width: 767px) {
  .ns-newsletter-title {
    font-size: 20px;
  }
}

.ns-newsletter-input {
  display: flex;
  width: 100%;
  z-index: 9;
  position: relative;
}
@media (max-width: 767px) {
  .ns-newsletter-input {
    flex-direction: column;
    gap: 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-newsletter-input {
    flex-direction: row;
    gap: 0;
  }
}
.ns-newsletter-input input {
  width: calc(100% - 150px);
  border: none;
  padding: 0 30px;
  height: 50px;
  display: grid;
  place-items: center;
  font-size: 17px;
  color: var(--clr-body-text);
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
@media (max-width: 767px) {
  .ns-newsletter-input input {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-newsletter-input input {
    width: calc(100% - 120px);
  }
}
.ns-newsletter-input button {
  width: 150px;
  height: 50px;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  display: grid;
  place-items: center;
  background-color: var(--clr-theme-primary);
  border: none;
  color: #fff;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
.ns-newsletter-input button:hover {
  color: var(--clr-theme-primary);
  background-color: #f1f1f1;
}
@media (max-width: 767px) {
  .ns-newsletter-input button {
    width: 100%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-newsletter-input button {
    width: 120px;
  }
}

.ns-newsletter-shape-1 {
  left: -190px;
  bottom: -60px;
  z-index: 1;
}

.ns-newsletter-shape-2 {
  bottom: -45px;
  right: -100px;
  z-index: 1;
}

.ns-newsletter-shape-3 {
  left: 0;
  right: 0;
  top: 45px;
  margin: 0 auto;
}

.ns-newsletter-icon {
  position: absolute;
  left: 50%;
  top: -50px;
  display: grid;
  place-items: center;
  z-index: 9;
  width: 100px;
  height: 100px;
  background: var(--clr-theme-primary);
  border-radius: 50%;
  border: 10px solid #fff;
  transform: translateX(-50%);
}

.ns-newsletter-area-2 .ns-newsletter-wrap {
  margin-bottom: -115px;
  z-index: 9;
}
.ns-newsletter-area-2 .ns-newsletter-inner {
  outline: 5px solid #fff;
}

/*
************
*************************
20. management
******************************************************* 
*************************************************************** */
.ns-management-area {
  overflow: hidden;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px),
  only screen and (min-width: 1400px) and (max-width: 1599px),
  only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-management-area.pb-80 {
    padding-bottom: 15px;
  }
}

.ns-management-bg {
  position: absolute;
  right: 390px;
  top: 0;
  z-index: -1;
  height: 100%;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-management-bg {
    right: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-management-bg {
    right: 0;
  }
}

.ns-management-head-icon {
  position: absolute;
  top: 0;
  right: 188px;
  background: #ffab17;
  width: 190px;
  height: 180px;
  display: grid;
  place-items: center;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-management-head-icon {
    display: none;
  }
}

.ns-management-img {
  position: absolute;
  right: 0;
  top: 180px;
  border: 10px solid #fff;
  border-right: 0;
}
@media only screen and (min-width: 1600px) and (max-width: 1799px),
  only screen and (min-width: 1400px) and (max-width: 1599px),
  only screen and (min-width: 1200px) and (max-width: 1399px) {
  .ns-management-img {
    width: 44.8%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-management-img {
    display: none;
  }
}
.ns-management-img-icon {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 160px;
  height: 160px;
  display: grid;
  place-items: center;
  background: #ffab17;
}

.ns-management-content-info h5 {
  font-size: 22px;
  color: #fff;
  margin-bottom: 10px;
}
.ns-management-content-info p {
  margin-bottom: 0;
  color: #fff;
}

.ns-management-content ul li {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 20px;
  padding-bottom: 25px;
}
.ns-management-content ul li:last-child {
  padding-bottom: 0;
}
.ns-management-content ul li:last-child::after {
  position: absolute;
  left: 5px;
  bottom: -5px;
  content: "";
  background-image: url("../img/management/arrow.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 14px;
  height: 18px;
  z-index: 9;
}
.ns-management-content ul li::before {
  position: absolute;
  content: "";
  left: 11px;
  top: 0;
  width: 2px;
  height: 100%;
  background: #848484;
  z-index: -1;
}

.ns-management-content-icon {
  display: inline-block;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  background-color: #ffab17;
  border-radius: 50%;
  line-height: 25px;
  text-align: center;
  font-size: 25px;
  color: #fff;
}

.ns-management-list {
  display: flex;
  gap: 30px;
}
@media (max-width: 767px) {
  .ns-management-list {
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-management-list {
    flex-wrap: nowrap;
    justify-content: center;
  }
}

.ns-management-list-item {
  min-width: 160px;
  background-color: #fefefe;
  padding: 25px 20px;
  text-align: center;
  border-radius: 5px;
  border: 1px solid #dddddd;
}

.ns-management-list-item span {
  width: 70px;
  height: 70px;
  background-color: #242424;
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin: 0 auto;
  margin-bottom: 10px;
  font-size: 29px;
  color: #fff;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-management-list-item h5 {
  font-size: 22px;
  margin-bottom: 0;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-management-list-item {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-management-list-item:hover {
  background-color: #ffab17;
  border-color: #ffab17;
}
.ns-management-list-item:hover span {
  color: #ffab17;
  background-color: #fff;
}
.ns-management-list-item:hover h5 {
  color: #fff;
}

.ns-management-area-6 {
  background-color: #2d2d36;
  overflow: hidden;
}

.ns-management-bg-6 {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  z-index: -1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-management-bg-6 {
    right: -200px;
  }
}

.ns-management-img-6 {
  position: relative;
  margin-right: -75px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px),
  only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-management-img-6 {
    margin-right: 0;
  }
}

.ns-management-img-6 .ns-management-main-img {
  border: 8px solid #fff;
}

.ns-management-head-icon-6 {
  position: absolute;
  top: 0;
  left: 0;
  background: #ffab17;
  width: 140px;
  height: 135px;
  display: grid;
  place-items: center;
}
.ns-management-head-icon-6 img {
  width: 50px;
}
@media (max-width: 767px) {
  .ns-management-head-icon-6 {
    width: 30%;
    height: 30%;
  }
  .ns-management-head-icon-6 img {
    width: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-management-head-icon-6 {
    width: 140px;
    height: 135px;
  }
}

.ns-management-img-icon-6 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 120px;
  height: 120px;
  display: grid;
  place-items: center;
  background: #292724;
}
.ns-management-img-icon-6 img {
  width: 50px;
}
@media (max-width: 767px) {
  .ns-management-img-icon-6 {
    width: 30%;
    height: 30%;
  }
  .ns-management-img-icon-6 img {
    width: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-management-img-icon-6 {
    width: 120px;
    height: 120px;
  }
}

/*
************
*************************
21. team
******************************************************* 
*************************************************************** */
.ns-team-item {
  position: relative;
  overflow: hidden;
}
.ns-team-item-content {
  position: relative;
  background: #fafafa;
  margin-left: 10px;
  margin-right: 10px;
  margin-top: -30px;
  z-index: 1;
}
.ns-team-item-info {
  border-bottom: 1px solid #ddd;
  text-align: center;
  padding: 35px 0 14px;
}
.ns-team-item-contact {
  padding: 20px 20px;
  display: flex;
  justify-content: space-between;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-team-item-contact {
    flex-direction: column;
    gap: 10px;
    text-align: center;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-item-contact {
    flex-direction: row;
    gap: 0;
    text-align: left;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-item-contact {
    padding: 20px 30px;
  }
}
.ns-team-item-contact a {
  color: var(--clr-body-text);
  font-size: 17px;
  display: inline-block;
  line-height: 1;
}
.ns-team-item-contact a:hover {
  color: var(--clr-theme-primary);
}
.ns-team-item-contact a i {
  font-size: 17px;
  color: var(--clr-theme-primary);
  margin-right: 10px;
}
.ns-team-item-info span {
  font-size: 17px;
  display: inline-block;
  line-height: 1;
}
.ns-team-info-title {
  font-size: 22px;
  margin-bottom: 3px;
}
.ns-team-info-title:hover a {
  color: var(--clr-theme-primary);
}
.ns-team-social-btn-icon {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 40px;
  display: inline-block;
  background-color: var(--clr-common-black);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 14px;
  color: #fff;
  cursor: pointer;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  opacity: 1;
  visibility: visible;
}
.ns-team-social-minus {
  opacity: 0;
  visibility: hidden;
}
.ns-team-social-icon {
  position: absolute;
  left: 50%;
  bottom: 165px;
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  padding-bottom: 30px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-team-social-icon {
    bottom: 190px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-team-social-icon {
    bottom: 192px;
  }
}
@media (max-width: 767px) {
  .ns-team-social-icon {
    bottom: 187px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-social-icon {
    bottom: 167px;
  }
}
.ns-team-social-icon ul li {
  display: block;
  margin-bottom: 10px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  transform: scale(0);
}
.ns-team-social-icon ul li:last-child {
  margin-bottom: 0;
}
.ns-team-social-icon ul li:first-child {
  -webkit-transition: all 0.6s linear 0s;
  -moz-transition: all 0.6s linear 0s;
  -ms-transition: all 0.6s linear 0s;
  -o-transition: all 0.6s linear 0s;
  transition: all 0.6s linear 0s;
}
.ns-team-social-icon ul li:nth-child(2) {
  -webkit-transition: all 0.5s linear 0s;
  -moz-transition: all 0.5s linear 0s;
  -ms-transition: all 0.5s linear 0s;
  -o-transition: all 0.5s linear 0s;
  transition: all 0.5s linear 0s;
}
.ns-team-social-icon ul li:nth-child(3) {
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-team-social-icon ul li:nth-child(4) {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-team-social-icon ul li a {
  display: block;
  width: 38px;
  height: 38px;
  background-color: #fff;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 15px;
  color: #666666;
}
.ns-team-social-icon ul li a:hover {
  background-color: var(--clr-theme-primary);
  color: #fff;
}
.ns-team-shape {
  position: absolute;
  content: "";
  width: 330px;
  height: 330px;
  border-radius: 50%;
}
.ns-team-shape-1 {
  background-color: var(--clr-theme-primary);
  opacity: 0.922;
  top: -350px;
  right: -140px;
  z-index: 2;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-team-shape-2 {
  background-color: var(--clr-common-black);
  opacity: 0.922;
  top: -175px;
  right: -350px;
  z-index: 1;
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-team-bottom {
  display: flex;
  justify-content: center;
}

.ns-team-social-btn:hover .ns-team-social-minus {
  opacity: 1;
  visibility: visible;
  background-color: var(--clr-theme-primary);
}
.ns-team-social-btn:hover .ns-team-social-plus {
  opacity: 0;
  visibility: hidden;
}

.ns-team-social:hover .ns-team-social-icon {
  opacity: 1;
  visibility: visible;
}
.ns-team-social:hover .ns-team-social-icon ul li {
  transform: scale(1);
}

.ns-team-item:hover .ns-team-shape-1 {
  top: -250px;
}
.ns-team-item:hover .ns-team-shape-2 {
  right: -230px;
}

.ns-team-pagination.swiper-pagination-bullets {
  right: 0;
  left: auto;
  text-align: end;
  line-height: 1;
}
.ns-team-pagination .swiper-pagination-bullet {
  width: 18px;
  height: 18px;
  display: inline-block;
  border-radius: 50%;
  background: transparent;
  opacity: 1;
  border: 3px solid var(--clr-theme-primary);
}
.ns-team-pagination.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
  margin-right: 10px;
}
.ns-team-pagination.swiper-pagination-bullets
  .swiper-pagination-bullet:last-child {
  margin-right: 0;
}
.ns-team-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--clr-theme-primary);
}

.ns-team-area-3 {
  background-color: #232429;
}

.ns-team-item-4 {
  overflow: hidden;
}
.ns-team-item-4 .ns-team-item-info {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-team-item-4 .ns-team-item-img {
  position: relative;
}
.ns-team-item-4 .ns-team-item-img img {
  min-height: 320px;
  object-fit: cover;
}
.ns-team-item-4 .ns-team-social-icon {
  left: auto;
  right: 0;
  transform: unset;
  bottom: 190px;
  padding-bottom: 0;
}
.ns-team-item-4 .ns-team-social-icon ul li {
  transform: translateX(50px);
}
.ns-team-item-4:hover .ns-team-social-plus {
  opacity: 1;
  visibility: visible;
  background-color: var(--clr-theme-primary);
  color: #fff;
}
.ns-team-item-4:hover .ns-team-item-info {
  border-color: var(--clr-theme-primary);
}
.ns-team-item-4:hover .ns-team-social-icon {
  opacity: 1;
  visibility: visible;
}
.ns-team-item-4:hover .ns-team-social-icon ul li {
  transform: translateX(0);
}

.ns-team-bg-5 {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-team-bg-5 {
    height: 60%;
  }
}
@media (max-width: 767px) {
  .ns-team-bg-5 {
    height: 70%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-bg-5 {
    height: 60%;
  }
}

.ns-team-item-img-5 {
  position: relative;
  z-index: 1;
}
.ns-team-item-5 {
  position: relative;
  overflow: hidden;
}
.ns-team-item-content-5 {
  position: relative;
  background: #fafafa;
  margin-left: 10px;
  margin-right: 10px;
  margin-top: -30px;
  z-index: 1;
}
.ns-team-item-info-5 {
  text-align: center;
  padding: 30px 0 30px;
}
.ns-team-item-info-5 span {
  font-size: 17px;
  display: inline-block;
  line-height: 1;
}
.ns-team-info-title-5 {
  font-size: 22px;
  margin-bottom: 3px;
}
.ns-team-info-title-5:hover a {
  color: var(--clr-theme-primary);
}
.ns-team-social-btn-icon-5 {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  display: inline-block;
  background-color: #fff;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 14px;
  color: var(--clr-theme-primary);
  cursor: pointer;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  opacity: 1;
  visibility: visible;
}
.ns-team-social-minus-5 {
  opacity: 0;
  visibility: hidden;
}
.ns-team-social-icon-5 {
  position: absolute;
  right: 20px;
  top: 75px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-team-social-icon-5 {
    bottom: 190px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-team-social-icon-5 {
    bottom: 192px;
  }
}
@media (max-width: 767px) {
  .ns-team-social-icon-5 {
    bottom: 187px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-social-icon-5 {
    bottom: 167px;
  }
}
.ns-team-social-icon-5 ul li {
  display: block;
  margin-bottom: 10px;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  transform: scale(0);
}
.ns-team-social-icon-5 ul li:last-child {
  margin-bottom: 0;
}
.ns-team-social-icon-5 ul li:first-child {
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-team-social-icon-5 ul li:nth-child(2) {
  -webkit-transition: all 0.4s linear 0s;
  -moz-transition: all 0.4s linear 0s;
  -ms-transition: all 0.4s linear 0s;
  -o-transition: all 0.4s linear 0s;
  transition: all 0.4s linear 0s;
}
.ns-team-social-icon-5 ul li:nth-child(3) {
  -webkit-transition: all 0.5s linear 0s;
  -moz-transition: all 0.5s linear 0s;
  -ms-transition: all 0.5s linear 0s;
  -o-transition: all 0.5s linear 0s;
  transition: all 0.5s linear 0s;
}
.ns-team-social-icon-5 ul li:nth-child(4) {
  -webkit-transition: all 0.6s linear 0s;
  -moz-transition: all 0.6s linear 0s;
  -ms-transition: all 0.6s linear 0s;
  -o-transition: all 0.6s linear 0s;
  transition: all 0.6s linear 0s;
}
.ns-team-social-icon-5 ul li a {
  display: block;
  width: 38px;
  height: 38px;
  background-color: #fff;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 15px;
  color: #666666;
}
.ns-team-social-icon-5 ul li a:hover {
  background-color: var(--clr-theme-primary);
  color: #fff;
}

.ns-team-social-btn-5:hover .ns-team-social-minus-5 {
  opacity: 1;
  visibility: visible;
  background-color: var(--clr-theme-primary);
  color: #fff;
}
.ns-team-social-btn-5:hover .ns-team-social-plus-5 {
  opacity: 0;
  visibility: hidden;
}

.ns-team-social-5:hover .ns-team-social-icon-5 {
  opacity: 1;
  visibility: visible;
}
.ns-team-social-5:hover .ns-team-social-icon-5 ul li {
  transform: scale(1);
}

.ns-team-navigation div {
  position: absolute;
  left: -25px;
  top: 41%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-color: #242424;
  z-index: 1;
  border-radius: 50%;
  text-align: center;
  line-height: 50px;
  color: #fff;
  font-size: 20px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-team-navigation div:hover {
  background-color: var(--clr-theme-primary);
}
@media (max-width: 767px) {
  .ns-team-navigation div {
    display: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-navigation div {
    left: -25px;
  }
}

.ns-team-navigation .ns-team-swiper-next {
  left: auto;
  right: -25px;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-navigation .ns-team-swiper-next {
    right: -25px;
  }
}

.ns-team-wrap-5:hover .ns-team-navigation div {
  opacity: 1;
  visibility: visible;
}

/*
************
*************************
22. team details
******************************************************* 
*************************************************************** */
.ns-team-details-area {
  border-bottom: 1px solid #ddd;
}
.ns-team-details-text p {
  font-size: 17px;
  margin-bottom: 0;
}
.ns-team-details-item .ns-team-shape-1 {
  top: -250px;
}
.ns-team-details-item .ns-team-shape-2 {
  right: -230px;
}
.ns-team-details-item .ns-team-social-icon {
  bottom: 115px;
}
.ns-team-details-item .ns-team-social-btn .ns-team-social-btn-icon {
  background-color: var(--clr-theme-primary);
}
.ns-team-details-item-content .ns-team-item-info {
  padding-bottom: 20px;
  border-bottom: none;
}
.ns-team-details-content {
  margin-bottom: 40px;
}
.ns-team-details-content p {
  font-size: 18px;
  margin-bottom: 0;
}
.ns-team-details-contact-item span {
  width: 35px;
  height: 35px;
  display: inline-grid;
  place-items: center;
  border: 1px solid var(--clr-theme-primary);
  color: var(--clr-theme-primary);
  border-radius: 50%;
  margin-right: 15px;
}
.ns-team-details-contact-item a {
  display: inline-block;
  color: var(--clr-body-text);
}
.ns-team-details-contact-item a:hover {
  color: var(--clr-theme-primary);
}
.ns-team-details-contact-item p {
  display: inline-block;
  margin-bottom: 0;
  font-size: 17px;
}

.ns-team-details-progressbar {
  background-color: #f4f5f9;
  padding: 25px 30px 30px;
  border-radius: 3px;
  margin-bottom: 45px;
}
@media (max-width: 767px) {
  .ns-team-details-progressbar {
    padding: 25px 20px 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-details-progressbar {
    padding: 25px 30px 30px;
  }
}
.ns-team-details-progressbar-label {
  display: flex;
  justify-content: space-between;
}
.ns-team-details-progressbar-label-title {
  font-size: 17px;
  line-height: 1.2;
  margin-bottom: 0;
  font-weight: 600;
}
@media (max-width: 767px) {
  .ns-team-details-progressbar-label-title {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-details-progressbar-label-title {
    font-size: 17px;
  }
}
.ns-team-details-progressbar-label span {
  color: var(--clr-body-heading);
  font-size: 17px;
  line-height: 1.2;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  display: inline-block;
}
@media (max-width: 767px) {
  .ns-team-details-progressbar-label span {
    font-size: 16px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-team-details-progressbar-label span {
    font-size: 17px;
  }
}
.ns-team-details-progressbar .progress {
  height: 4px;
  border-radius: 2px;
  background-color: #ddd;
}
.ns-team-details-progressbar .progress-bar {
  background: var(--clr-theme-primary);
  border-radius: 2px;
}

.ns-team-details-progressbar,
.ns-team-details-contact {
  max-width: 520px;
}

/*
************
*************************
23. recent
******************************************************* 
*************************************************************** */
.ns-recent-item {
  text-align: center;
  position: relative;
  z-index: 1;
}
.ns-recent-item-img {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin-bottom: 20px;
}
.ns-recent-item-img img {
  width: 206px;
  height: 206px;
  border-radius: 50%;
  border: 10px solid #fff;
  box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.07);
}
.ns-recent-item-img span {
  position: absolute;
  left: -25px;
  top: 50%;
  transform: translateY(-50%);
  width: 55px;
  height: 55px;
  background: var(--clr-common-black);
  color: #fff;
  font-size: 17px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  z-index: 1;
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}
.ns-recent-item-shape-1 {
  position: absolute;
  top: 55px;
  right: -70px;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-recent-item-shape-1 {
    display: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-recent-item-shape-1 {
    display: block;
  }
}
.ns-recent-item-shape-2 {
  position: absolute;
  top: 100px;
  right: -70px;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-recent-item-shape-2 {
    display: none;
  }
}
.ns-recent-item-shape-3 {
  position: absolute;
  top: 15px;
  right: -100px;
  z-index: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-recent-item-shape-3 {
    display: none;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-recent-item-shape-3 {
    display: block;
  }
}

.ns-recent-item-content {
  padding: 0 25px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-recent-item-content {
    padding: 0 10px;
  }
}
.ns-recent-item-content .ns-recent-title {
  font-size: 25px;
  margin-bottom: 10px;
}
.ns-recent-item-content .ns-recent-title:hover a {
  color: var(--clr-theme-primary);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-recent-item-content .ns-recent-title {
    font-size: 22px;
  }
}
@media (max-width: 767px) {
  .ns-recent-item-content .ns-recent-title {
    font-size: 22px;
  }
}
.ns-recent-item-content p {
  font-size: 17px;
  line-height: 25px;
  margin-bottom: 3px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px),
  (max-width: 767px) {
  .ns-recent-item-content p {
    font-size: 16px;
  }
}

.ns-recent-item-img .ns-recent-count-2 {
  top: 15px;
  transform: none;
  left: 10px;
}

.ns-recent-item:hover .ns-recent-item-img span {
  background-color: var(--clr-theme-primary);
}

/*
************
*************************
24. breadcrumb
******************************************************* 
*************************************************************** */
.breadcrumb-height {
  min-height: 550px;
  display: flex;
  align-items: center;
  padding-top: 82px;
}
@media (max-width: 767px) {
  .breadcrumb-height {
    min-height: 450px;
  }
}

.ns-breadcrumb-area {
  position: relative;
  z-index: 1;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
}
.ns-breadcrumb-area::before {
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgb(58, 59, 64);
  opacity: 0.871;
  width: 100%;
  height: 100%;
  content: "";
  z-index: -1;
}
.ns-breadcrumb-area .ns-breadcrumb-wrap {
  position: relative;
  z-index: 5;
}
.ns-breadcrumb-area .ns-breadcrumb-title {
  color: var(--clr-common-white);
  font-size: 60px;
  font-weight: 700;
  margin-bottom: 15px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-breadcrumb-area .ns-breadcrumb-title {
    font-size: 46px;
  }
}
@media (max-width: 767px) {
  .ns-breadcrumb-area .ns-breadcrumb-title {
    font-size: 35px;
    line-height: 1.3;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-breadcrumb-area .ns-breadcrumb-title {
    font-size: 40px;
  }
}
.ns-breadcrumb-area .ns-breadcrumb-list a {
  color: var(--clr-common-white);
  display: inline-block;
  position: relative;
  z-index: 1;
}
.ns-breadcrumb-area .ns-breadcrumb-list a::after {
  display: inline-block;
  content: "/";
  font-size: 14px;
  font-weight: 500;
  margin-left: 5px;
}
.ns-breadcrumb-area .ns-breadcrumb-list a:hover {
  color: var(--clr-common-white);
}
.ns-breadcrumb-area .ns-breadcrumb-list span {
  color: var(--clr-theme-primary);
  display: inline-block;
}

.ns-breadcrumb-shape-1 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

.ns-breadcrumb-shape-2 {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-breadcrumb-shape-2 {
    width: 25%;
  }
}
@media (max-width: 767px) {
  .ns-breadcrumb-shape-2 {
    width: 40%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-breadcrumb-shape-2 {
    width: 30%;
  }
}

.ns-breadcrumb-map {
  position: absolute;
  top: -3px;
  right: 365px;
  z-index: -1;
}

.ns-breadcrumb-wrap {
  z-index: 1;
  position: relative;
}

/*
************
*************************
25. error
******************************************************* 
*************************************************************** */
.ns-error-content p {
  font-size: 17px;
  color: #7d7f85;
  margin-bottom: 20px;
}

.ns-error-img {
  margin-bottom: 20px;
}

/*
************
*************************
10. project
******************************************************* 
*************************************************************** */
.ns-custom-area {
  background-color: #f4f5f9;
}

.ns-custom-inner {
  display: flex;
  background-color: #fff;
  border-radius: 20px;
  padding: 10px;
  gap: 45px;
  align-items: center;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-custom-inner {
    gap: 0;
    padding: 10px 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px),
  (max-width: 767px) {
  .ns-custom-inner {
    flex-direction: column;
    padding-bottom: 50px;
  }
}

.ns-custom-content {
  width: 565px;
  flex-shrink: 0;
  padding: 0 45px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-custom-content {
    width: 520px;
    padding: 30px 35px 30px 10px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-custom-content {
    width: 100%;
    order: 2;
  }
}
@media (max-width: 767px) {
  .ns-custom-content {
    width: 100%;
    order: 2;
    padding: 0 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-custom-content {
    padding: 0 30px;
  }
}

.ns-custom-img {
  width: calc(100% - 565px);
  position: relative;
  z-index: 1;
}
.ns-custom-img::before {
  position: absolute;
  content: "";
  top: 50%;
  left: -45px;
  transform: translateY(-50%);
  width: 47px;
  height: 90px;
  background-color: var(--clr-theme-primary);
  clip-path: polygon(0 50%, 100% 100%, 100% 0);
  z-index: -1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .ns-custom-img {
    width: calc(100% - 520px);
  }
  .ns-custom-img::before {
    left: -35px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-custom-img {
    width: calc(100% - 90px);
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 767px) {
  .ns-custom-img {
    width: 100%;
  }
  .ns-custom-img::before {
    display: none;
  }
}
@media (max-width: 767px) {
  .ns-custom-img {
    width: calc(100% - 60px);
    margin-left: auto;
    margin-right: auto;
  }
  .ns-custom-img::before {
    display: block;
    left: -30px;
  }
}

.ns-custom-img img {
  width: 100%;
}

.ns-custom-content-title {
  font-size: 19px;
  color: var(--clr-theme-primary);
  margin-bottom: 8px;
}

.ns-custom-content-top {
  margin-bottom: 25px;
}
.ns-custom-content-top p {
  margin-bottom: 0;
}

.ns-custom-content-bottom-info h5 {
  font-size: 22px;
  color: var(--clr-body-heading);
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .ns-custom-content-bottom-info h5 {
    font-size: 18px;
  }
}
.ns-custom-content-bottom-info p {
  margin-bottom: 0;
  color: var(--clr-body-text);
}

.ns-custom-content-bottom ul li {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 20px;
  padding-bottom: 25px;
}
.ns-custom-content-bottom ul li:last-child {
  padding-bottom: 0;
}
.ns-custom-content-bottom ul li:last-child::after {
  position: absolute;
  left: 5px;
  bottom: -5px;
  content: "";
  background-image: url("../img/custom/arrow-2.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 14px;
  height: 18px;
  z-index: 9;
}
.ns-custom-content-bottom ul li::before {
  position: absolute;
  content: "";
  left: 11px;
  top: 0;
  width: 2px;
  height: 100%;
  background: #949393;
  z-index: -1;
}
@media (max-width: 767px) {
  .ns-custom-content-bottom ul li {
    gap: 15px;
  }
}

.ns-custom-content-bottom-icon {
  display: inline-block;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  background-color: #ffab17;
  border-radius: 50%;
  line-height: 25px;
  text-align: center;
  font-size: 25px;
  color: #fff;
}

.ns-custom-navbar {
  display: flex;
  justify-content: center;
  margin-bottom: 45px;
}
.ns-custom-navbar ul {
  background-color: #fff;
  padding: 7px 55px;
  border-radius: 50px;
  display: flex;
}
.ns-custom-navbar ul .nav-item {
  padding-right: 30px;
  margin-right: 30px;
  padding-top: 7px;
  padding-bottom: 7px;
  position: relative;
}
.ns-custom-navbar ul .nav-item::after {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 3px;
  height: 40px;
  background: #ddd;
}
.ns-custom-navbar ul .nav-item:last-child {
  margin-right: 0;
  padding-right: 0;
}
.ns-custom-navbar ul .nav-item:last-child::after {
  display: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .ns-custom-navbar ul .nav-item {
    margin-right: 25px;
    padding-right: 25px;
  }
}
.ns-custom-navbar ul .nav-link {
  padding: 0;
  font-size: 20px;
  font-weight: 500;
  color: #1f2126;
}
.ns-custom-navbar .nav-pills .nav-link.active,
.ns-custom-navbar .nav-pills .show > .nav-link {
  color: var(--clr-theme-primary);
  background-color: transparent;
}
@media (max-width: 767px) {
  .ns-custom-navbar ul {
    flex-direction: column;
    padding-top: 22px;
    padding-bottom: 22px;
  }
  .ns-custom-navbar ul .nav-item {
    font-size: 15px;
    margin-right: 0;
    padding-right: 0;
    margin-bottom: 10px;
    padding-bottom: 10px;
    text-align: center;
    padding-top: 0;
  }
  .ns-custom-navbar ul .nav-item::after {
    width: 100%;
    height: 2px;
    top: 100%;
  }
  .ns-custom-navbar ul .nav-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-custom-navbar ul {
    flex-direction: row;
    padding: 8px 30px;
  }
  .ns-custom-navbar ul .nav-item {
    margin-right: 15px;
    padding-right: 15px;
    margin-bottom: 0;
    padding-bottom: 0;
    text-align: center;
    padding-top: 0;
  }
  .ns-custom-navbar ul .nav-item::after {
    width: 2px;
    height: 30px;
    top: 0;
  }
  .ns-custom-navbar ul .nav-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  .ns-custom-navbar ul .nav-item .nav-link {
    font-size: 16px;
    padding-top: 3px;
    padding-bottom: 4px;
  }
}

/*
************
*************************
15. testimonial
******************************************************* 
*************************************************************** */
.ns-price-item-4 {
  border: 1px solid #eaeaea;
  text-align: center;
}
.ns-price-item-4.ns-fetured {
  border-color: var(--clr-theme-primary);
}

.ns-price-item-heading-4 {
  display: inline-block;
  height: 50px;
  background-color: #242424;
  line-height: 50px;
  padding: 0 45px;
  font-size: 22px;
  color: #fff;
  font-weight: 500;
  position: relative;
  z-index: 1;
  font-family: "Inter", sans-serif;
  margin-bottom: 42px;
}
.ns-price-item-heading-4::after {
  position: absolute;
  content: "";
  bottom: -20px;
  right: 0;
  left: 0;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  background-color: #040a0b;
  width: 40px;
  height: 20px;
  margin-left: auto;
  margin-right: auto;
}
.ns-price-item-heading-4.ns-price-featured {
  background-color: var(--clr-theme-primary);
}
.ns-price-item-heading-4.ns-price-featured::after {
  background-color: var(--clr-theme-primary);
}

.ns-price-item-heading-4 .ns-price-item-price-4 {
  font-size: 50px;
  font-weight: 600;
  margin-bottom: 16px;
}

.ns-price-item-price-4 span {
  font-size: 20px;
  display: inline-block;
}

.ns-price-item-plan-4 {
  height: 50px;
  line-height: 50px;
  background-color: var(--clr-theme-primary);
}

.ns-price-item-plan-4 span {
  color: #fff;
  font-size: 22px;
  font-weight: 600;
}

.ns-price-item-content-4 {
  padding: 30px 30px 10px;
}
@media (max-width: 767px) {
  .ns-price-item-content-4 {
    padding: 30px 15px 10px;
  }
}

.ns-price-item-content-4 ul li {
  color: var(--clr-body-text);
  background-color: #f2f3f3;
  height: 40px;
  line-height: 40px;
  margin-bottom: 15px;
}
.ns-price-item-content-4 ul li i {
  margin-right: 5px;
}
@media (max-width: 767px) {
  .ns-price-item-content-4 ul li {
    font-size: 15px;
  }
}

.ns-price-item-content-4 ul li.inner-item-4 {
  background-color: transparent;
}

.ns-price-item-btn-4 {
  margin-bottom: 50px;
}

.ns-theme-btn.ns-price-btn-4 {
  background-color: #242424;
}

/*
************
*************************
28. skills
******************************************************* 
*************************************************************** */
.ns-skills-area {
  background-color: #f4f5f9;
}

.ns-skills-img {
  position: relative;
  z-index: 1;
}

.ns-skills-inner-img {
  position: absolute;
  top: -25px;
  right: 80px;
  z-index: 1;
}
@media (max-width: 767px) {
  .ns-skills-inner-img {
    right: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-skills-inner-img {
    right: 50px;
  }
}

.ns-skills-progress .progress-heading {
  display: flex;
  justify-content: space-between;
}
.ns-skills-progress .progress-heading-title {
  margin-bottom: 3px;
  color: #242424;
  font-size: 18px;
  font-weight: 500;
}
.ns-skills-progress .progress-heading span {
  color: var(--clr-theme-primary);
  font-size: 16px;
  font-weight: 700;
  display: inline-block;
}
.ns-skills-progress .progress-item .progress {
  height: 6px;
  outline: 1px solid var(--clr-theme-primary);
  border-radius: 5px;
  background-color: #fff;
  padding: 1px 0;
  padding-left: 1px;
}
.ns-skills-progress .progress-item .progress-bar {
  background: var(--clr-theme-primary);
  height: 4px;
  border-radius: 5px;
}

.ns-skills-area-6 {
  background-color: #242424;
}
.ns-skills-area-6 .ns-skills-progress .progress-heading-title {
  color: #fff;
}

/*
************
*************************
29. video
******************************************************* 
*************************************************************** */
.ns-video-area {
  position: relative;
}

.ns-video-shape-1 {
  position: absolute;
  top: 230px;
  right: 30px;
  z-index: 1;
}

.ns-video-content {
  text-align: center;
}

.ns-video-play-btn {
  margin-bottom: 45px;
}

.ns-video-content-title {
  color: #fff;
  font-size: 40px;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .ns-video-content-title {
    font-size: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-video-content-title {
    font-size: 34px;
    list-style: 1.3;
  }
}

.ns-video-content p {
  color: #fff;
  margin-bottom: 33px;
}

/*
************
*************************
26. footer
******************************************************* 
*************************************************************** */
.ns-footer-area {
  z-index: 1;
  position: relative;
  overflow: hidden;
  background-position: right bottom;
}
.ns-footer-area::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(36, 36, 36, 0.941);
  z-index: 2;
}

.ns-footer-shape {
  position: absolute;
}

.ns-footer-widget {
  position: relative;
  z-index: 5;
}
.ns-footer-widget-text {
  font-size: 17px;
  line-height: 26px;
  color: #fff;
  margin-bottom: 35px;
}

.ns-footer-logo {
  margin-bottom: 45px;
  max-width: 160px;
}

.ns-footer-social a {
  width: 40px;
  height: 40px;
  border: 1px solid #92918f;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  margin-right: 5px;
  color: #aaa;
  font-size: 14px;
}
.ns-footer-social a:hover {
  background-color: var(--clr-theme-primary);
  border-color: var(--clr-theme-primary);
  color: #fff;
}

.ns-footer-social a:last-child {
  margin-right: 0;
}

.ns-footer-widget-title {
  color: #fff;
  font-size: 22px;
  font-weight: 600;
  position: relative;
  padding-bottom: 25px;
  margin-bottom: 35px;
}

.ns-footer-widget-title::before {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 200px;
  height: 2px;
  background: #525252;
  content: "";
}

.ns-footer-widget-title::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: "";
  height: 2px;
  width: 35px;
  background: var(--clr-theme-primary);
}

.ns-footer-widget-list ul li {
  display: block;
  margin-bottom: 10px;
}
.ns-footer-widget-list ul li:last-child {
  margin-bottom: 0;
}

.ns-footer-widget-list ul li a {
  font-size: 16px;
  color: #fff;
  display: block;
  position: relative;
  z-index: 1;
  padding-left: 10px;
}
.ns-footer-widget-list ul li a:hover {
  color: var(--clr-theme-primary);
}
.ns-footer-widget-list ul li a:hover::before {
  background-color: var(--clr-theme-primary);
}

.ns-footer-widget-list ul li a::before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 5px;
  height: 2px;
  z-index: 1;
  content: "";
  background: #fff;
  transform: translateY(-50%);
  -webkit-transition: all 0.3s linear 0s;
  -moz-transition: all 0.3s linear 0s;
  -ms-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
}

.ns-footer-widget-contact p {
  font-size: 16px;
  color: #fff;
  margin-bottom: 10px;
}

.ns-footer-widget-contact-info span {
  font-size: 16px;
  color: #fff;
  font-weight: 500;
  display: block;
}

.ns-footer-widget-contact-info span a {
  font-weight: 400;
  display: inline-block;
  margin-left: 5px;
}
.ns-footer-widget-contact-info span a:hover {
  color: var(--clr-theme-primary);
}

.ns-footer-widget-post {
  display: flex;
  gap: 20px;
  align-items: center;
}

.ns-footer-widget-post-img {
  width: 85px;
  flex: 0 0 85px;
  height: 85px;
  border-radius: 50%;
  overflow: hidden;
}

.ns-footer-widget-post-content span {
  display: block;
  font-size: 14px;
  color: #fff;
  margin-bottom: 5px;
}

.ns-footer-widget-post-title {
  font-size: 17px;
  color: #fff;
  font-weight: 600;
  line-height: 1.5;
}
.ns-footer-widget-post-title:hover a {
  color: var(--clr-theme-primary);
}

.ns-footer-copyright-text p {
  font-size: 16px;
  color: #fff;
  margin-bottom: 0;
}
.ns-footer-copyright-text p span {
  font-weight: 500;
}
@media (max-width: 767px) {
  .ns-footer-copyright-text {
    text-align: center;
    margin-bottom: 10px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-footer-copyright-text {
    text-align: start;
    margin-bottom: 0;
  }
}

.ns-footer-copyright {
  border-top: 1px solid #3e3e3e;
  padding: 30px 0;
  z-index: 5;
  position: relative;
}

@media (max-width: 767px) {
  .ns-footer-copyright-menu {
    text-align: center !important;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .ns-footer-copyright-menu {
    text-align: end !important;
  }
}
.ns-footer-copyright-menu ul li {
  display: inline-block;
  margin-right: 20px;
}

.ns-footer-copyright-menu ul li a {
  font-size: 16px;
  color: #fff;
}
.ns-footer-copyright-menu ul li a:hover {
  color: var(--clr-theme-primary);
}

.ns-footer-copyright-menu ul li:last-child {
  margin-right: 0;
}

.ns-footer-shape-1.ns-footer-shape {
  left: 0;
  bottom: 0;
  z-index: 4;
}

.ns-footer-shape-2.ns-footer-shape {
  top: -295px;
  left: 215px;
  z-index: 4;
  height: 100%;
}

.ns-footer-shape-3.ns-footer-shape {
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.ns-footer-area.ns-footer-area-2 .ns-footer-shape-2.ns-footer-shape {
  height: auto;
  left: -140px;
  top: -120px;
}

.ns-footer-shape-2.ns-footer-shape.ns-footer-3-shape-3 {
  left: 225px;
  height: 90%;
}

.ns-footer-area-6::before {
  background-color: #2c2c35;
}

.ns-footer-6-shape-3.ns-footer-shape {
  bottom: 0;
  right: 0;
  z-index: 9;
}

/*# sourceMappingURL=main.css.map */

/* 

*/
/* ===== HEADER ===== */

.nexiva-header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #1f242c;
  z-index: 1000;
  transition: all 0.3s ease;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* Sticky Class */
.nexiva-header.sticky {
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
  background-color: #1f242c;
}

.header-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 0;
}

/* ===== LOGO ===== */
.logo-area {
  display: flex;
  align-items: center;
}

.header-logo img {
  max-height: 65px;
  width: auto;
  display: block;
}

/* ===== DESKTOP MENU (Visible only on desktop) ===== */
.desktop-menu {
  display: none;
}

@media (min-width: 992px) {
  .desktop-menu {
    display: block;
  }

  .desktop-menu ul {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .desktop-menu ul li {
    margin: 0 18px;
  }

  .desktop-menu ul li a {
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    padding: 10px 0;
    position: relative;
    transition: color 0.3s ease;
  }

  .desktop-menu ul li a:hover {
    color: #0e84e1;
  }

  .desktop-menu ul li a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #0e84e1;
    transition: width 0.3s ease;
  }

  .desktop-menu ul li a:hover::after {
    width: 100%;
  }
}

/* ===== HEADER ACTIONS (Right Side) ===== */
.header-actions {
  display: flex;
  align-items: center;
  gap: 20px;
}

/* ===== DESKTOP CTA BUTTON - Visible only on desktop ===== */
.desktop-cta {
  display: none;
}

@media (min-width: 992px) {
  .desktop-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #0e84e1;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    padding: 12px 28px;
    border-radius: 6px;
    text-decoration: none;
    white-space: nowrap;
    border: 2px solid #0e84e1;
    transition: all 0.3s ease;
    gap: 8px;
  }

  .desktop-cta:hover {
    background-color: transparent;
    color: #0e84e1;
  }

  .desktop-cta i {
    font-size: 14px;
    transition: transform 0.3s ease;
  }

  .desktop-cta:hover i {
    transform: translateX(5px);
  }
}

/* ===== MOBILE MENU TOGGLE - RIGHT SIDE (Visible on mobile) ===== */
.mobile-menu-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  color: #ffffff;
  font-size: 20px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.mobile-menu-toggle:hover {
  background-color: #0e84e1;
  border-color: #0e84e1;
}

@media (min-width: 992px) {
  .mobile-menu-toggle {
    display: none;
  }
}

/* ===== MOBILE SIDEBAR MENU ===== */
.mobile-sidebar {
  position: fixed;
  top: 0;
  right: -350px;
  width: 320px;
  height: 100%;
  background-color: #1f242c;
  z-index: 9999;
  transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  overflow-y: auto;
  box-shadow: -5px 0 30px rgba(0, 0, 0, 0.3);
}

@media (max-width: 575px) {
  .mobile-sidebar {
    width: 280px;
  }
}

.mobile-sidebar.active {
  right: 0;
}

.sidebar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 25px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar-logo img {
  max-height: 45px;
  width: auto;
}

.sidebar-close {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.1);
  border: none;
  border-radius: 6px;
  color: #ffffff;
  font-size: 18px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.sidebar-close:hover {
  background-color: #0e84e1;
}

/* Sidebar Menu */
.sidebar-menu {
  padding: 30px 20px;
}

.sidebar-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-menu ul li {
  margin-bottom: 15px;
}

.sidebar-menu ul li a {
  color: #ffffff;
  font-size: 17px;
  font-weight: 500;
  text-decoration: none;
  display: block;
  padding: 12px 15px;
  border-radius: 6px;
  transition: all 0.3s ease;
  background-color: rgba(255, 255, 255, 0.03);
}

.sidebar-menu ul li a:hover {
  background-color: #0e84e1;
  color: #ffffff;
  padding-left: 25px;
}

/* Sidebar CTA Button - INSIDE SIDEBAR */
.sidebar-cta {
  padding: 0 20px 30px;
}

.sidebar-cta-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #0e84e1;
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  padding: 14px 20px;
  border-radius: 6px;
  text-decoration: none;
  width: 100%;
  border: 2px solid #0e84e1;
  transition: all 0.3s ease;
  gap: 10px;
}

.sidebar-cta-btn:hover {
  background-color: transparent;
  color: #0e84e1;
}

.sidebar-cta-btn i {
  transition: transform 0.3s ease;
}

.sidebar-cta-btn:hover i {
  transform: translateX(5px);
}

/* Sidebar Contact Info */
.sidebar-contact {
  padding: 30px 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar-contact h4 {
  color: #ffffff;
  font-size: 18px;
  margin-bottom: 20px;
  font-weight: 600;
}

.contact-item {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 15px;
}

.contact-item i {
  width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 6px;
  color: #0e84e1;
  font-size: 16px;
}

.contact-item a {
  color: #ffffff;
  text-decoration: none;
  font-size: 15px;
  transition: color 0.3s ease;
}

.contact-item a:hover {
  color: #0e84e1;
}

/* Sidebar Overlay */
.sidebar-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 9998;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}

.sidebar-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* ===== RESPONSIVE BREAKPOINTS ===== */
@media (max-width: 991px) {
  .header-wrapper {
    padding: 12px 0;
  }

  .header-logo img {
    max-height: 50px;
  }
}

@media (max-width: 767px) {
  .header-logo img {
    max-height: 45px;
  }
}

@media (max-width: 575px) {
  .header-logo img {
    max-height: 40px;
  }

  .mobile-menu-toggle {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }
}

/* ===== CONTAINER ===== */
.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

@media (min-width: 1400px) {
  .container {
    max-width: 1320px;
  }
}

.busi {
  color: white;
  font-size: 20px;
  padding-top: 20px;
}

@media (max-width: 987px) and (min-width: 250px) {
  .busi {
    font-size: 12px;
  }
}

/* 
 */
#typewriter::after {
  content: "";
  margin-left: 5px;
  animation: blink 1s infinite;
}

@keyframes blink {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}

.ns-about-content-list ul li {
  display: flex;
  align-items: baseline;
  margin-bottom: 18px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
  line-height: 1.5;
}

.ns-about-content-list ul li i {
  color: var(--clr-theme-primary);
  font-size: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}

.ns-about-content-list ul li strong {
  color: var(--clr-body-heading);
  font-weight: 600;
}

/* Hover effect on bullets */
.ns-about-content-list ul li:hover i {
  color: var(--clr-theme-4);
  transform: scale(1.1);
  transition: all 0.3s ease;
}

.ns-about-content-list ul li:hover strong {
  color: var(--clr-theme-primary);
  transition: all 0.3s ease;
}

/* Responsive adjustments */
@media (max-width: 991px) {
  .ns-about-content-list ul li {
    font-size: 16px;
  }
}

@media (max-width: 767px) {
  .ns-about-content-list ul li {
    font-size: 15px;
    margin-bottom: 15px;
  }

  .ns-about-content-bottom {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start !important;
  }
}

/* Base transition for all interactive elements */
.ns-about-img-inner img,
.ns-about-play-btn,
.ns-about-count,
.ns-section-subtitle,
.ns-section-title,
.ns-section-text,
.ns-about-content-list ul li,
.ns-about-content-list ul li i,
.ns-about-content-list ul li strong,
.ns-about-content-admin-img,
.ns-about-admin-title a,
.ns-about-content-admin-info span,
.trusted-badge,
.ns-about-img-content,
.ns-about-inner-title,
.inner-img-1,
.inner-img-2,
.ns-about-shape {
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* ===== 1. IMAGE & PLAY BUTTON TRANSITIONS ===== */
.ns-about-img-inner {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
}

.inner-img-1,
.inner-img-2 {
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    filter 0.5s ease;
}

.ns-about-img-inner:hover .inner-img-1,
.ns-about-img-inner-2:hover .inner-img-2 {
  transform: scale(1.08);
  filter: brightness(1.1);
}

/* Play button smooth pulse */
.ns-about-play-btn {
  transition: all 0.4s ease, transform 0.3s ease, background-color 0.3s ease;
  animation: smooth-pulse 2.5s infinite;
}

.ns-about-play-btn:hover {
  transform: scale(1.15) rotate(90deg);
  background-color: var(--clr-theme-primary);
}

@keyframes smooth-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(14, 132, 225, 0.4);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(14, 132, 225, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(14, 132, 225, 0);
  }
}

/* ===== 2. COUNTER TRANSITION ===== */
.ns-about-count {
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
}

.ns-about-img-content:hover .ns-about-count {
  transform: scale(1.05);
  background-color: var(--clr-theme-4);
  letter-spacing: 2px;
}

.ns-about-count::after {
  transition: background-color 0.4s ease;
}

.ns-about-img-content:hover .ns-about-count::after {
  background-color: var(--clr-theme-4);
}

/* ===== 3. BULLET POINTS SMOOTH TRANSITIONS ===== */
.ns-about-content-list ul li {
  display: flex;
  align-items: baseline;
  margin-bottom: 18px;
  gap: 12px;
  font-size: 17px;
  color: var(--clr-body-text);
  line-height: 1.5;
  transition: all 0.3s ease;
  padding: 8px 12px;
  border-radius: 8px;
}

.ns-about-content-list ul li:hover {
  background: linear-gradient(
    90deg,
    rgba(14, 132, 225, 0.05) 0%,
    rgba(151, 71, 255, 0.02) 100%
  );
  transform: translateX(8px);
  padding-left: 20px;
}

.ns-about-content-list ul li i {
  color: var(--clr-theme-primary);
  font-size: 20px;
  flex-shrink: 0;
  margin-top: 2px;
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ns-about-content-list ul li:hover i {
  color: var(--clr-theme-4);
  transform: scale(1.2) rotate(2deg);
}

.ns-about-content-list ul li strong {
  color: var(--clr-body-heading);
  font-weight: 600;
  transition: color 0.3s ease, transform 0.3s ease;
}

.ns-about-content-list ul li:hover strong {
  color: var(--clr-theme-primary);
  transform: translateX(3px);
}

/* Sequential fade-in animation for bullets */
.ns-about-content-list ul li {
  opacity: 0;
  animation: slideInRight 0.5s ease forwards;
}

.ns-about-content-list ul li:nth-child(1) {
  animation-delay: 0.1s;
}
.ns-about-content-list ul li:nth-child(2) {
  animation-delay: 0.2s;
}
.ns-about-content-list ul li:nth-child(3) {
  animation-delay: 0.3s;
}
.ns-about-content-list ul li:nth-child(4) {
  animation-delay: 0.4s;
}
.ns-about-content-list ul li:nth-child(5) {
  animation-delay: 0.5s;
}

@keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* ===== 4. ADMIN CARD SMOOTH TRANSITIONS ===== */
.ns-about-content-bottom {
  border-top: 1px solid #dddddd;
  padding-top: 25px;
  margin-top: 10px;
  transition: border-color 0.3s ease;
}

.ns-about-content-bottom:hover {
  border-top-color: var(--clr-theme-primary);
}

.ns-about-content-admin {
  transition: all 0.3s ease;
}

.ns-about-content-admin:hover {
  transform: translateY(-3px);
}

.ns-about-content-admin-img {
  border: 3px solid transparent;
  border-radius: 50%;
  transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  overflow: hidden;
}

.ns-about-content-admin:hover .ns-about-content-admin-img {
  border-color: var(--clr-theme-primary);
  transform: rotate(5deg) scale(1.05);
  box-shadow: 0 10px 25px rgba(14, 132, 225, 0.2);
}

.ns-about-content-admin-img img {
  transition: transform 0.5s ease;
}

.ns-about-content-admin:hover .ns-about-content-admin-img img {
  transform: scale(1.1);
}

.ns-about-admin-title a {
  transition: color 0.3s ease, letter-spacing 0.3s ease;
}

.ns-about-admin-title a:hover {
  color: var(--clr-theme-primary);
  letter-spacing: 0.5px;
}

/* ===== 5. TRUSTED BADGE SMOOTH GRADIENT ===== */
.trusted-badge {
  display: inline-block;
  background: linear-gradient(90deg, var(--clr-theme-1), var(--clr-theme-4));
  background-size: 200% 200%;
  padding: 10px 25px;
  border-radius: 30px;
  color: white;
  font-weight: 500;
  transition: all 0.4s ease, background-position 0.6s ease, transform 0.3s ease,
    box-shadow 0.4s ease;
  box-shadow: 0 5px 15px rgba(14, 132, 225, 0.2);
}

.trusted-badge:hover {
  background-position: 100% 100%;
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 15px 30px rgba(151, 71, 255, 0.3);
  letter-spacing: 1px;
}

/* ===== 6. SECTION TITLE & SUBTITLE TRANSITIONS ===== */
.ns-section-subtitle {
  transition: all 0.3s ease;
  display: inline-block;
}

.ns-section-subtitle:hover {
  transform: translateX(5px);
}

.ns-section-subtitle::before {
  transition: background-color 0.3s ease, transform 0.3s ease;
}

.ns-section-subtitle:hover::before {
  background-color: var(--clr-theme-4);
  transform: translateY(-50%) scale(1.3);
}

.ns-section-title {
  transition: all 0.4s ease;
  position: relative;
  display: inline-block;
}

.ns-section-title::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--clr-theme-1), var(--clr-theme-4));
  transition: width 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 3px;
}

.ns-section-title:hover::after {
  width: 80px;
}

/* ===== 7. SHAPE ANIMATIONS ===== */
.ns-about-shape {
  transition: transform 0.6s ease, opacity 0.4s ease;
}

.ns-about-img-inner-2:hover .ns-about-shape {
  transform: rotate(15deg) scale(1.1);
  opacity: 0.8;
}

/* ===== 8. RESPONSIVE ADJUSTMENTS ===== */
@media (max-width: 991px) {
  .ns-about-content-list ul li {
    font-size: 16px;
  }

  .ns-about-content-list ul li:hover {
    transform: translateX(5px);
  }
}

@media (max-width: 767px) {
  .ns-about-content-list ul li {
    font-size: 15px;
    margin-bottom: 15px;
  }

  .ns-about-content-bottom {
    flex-direction: column;
    gap: 20px;
    align-items: flex-start !important;
  }

  .ns-about-content-list ul li:hover {
    transform: translateX(3px);
  }

  /* Disable heavy animations on mobile */
  .ns-about-play-btn {
    animation: none;
  }

  .ns-about-content-list ul li {
    opacity: 1;
    animation: none;
  }
}

/* ===== 9. ADDITIONAL SMOOTH SCROLL BEHAVIOR ===== */

/* ===== 10. CUSTOM CURSOR TRANSITION ===== */
.ns-theme-btn,
.ns-about-play-btn,
.ns-about-content-list ul li,
.trusted-badge {
  cursor: pointer;
  transition: all 0.3s ease;
}

.ns-theme-btn:hover,
.trusted-badge:hover {
  cursor: pointer;
}

/*  */
:root {
  --nexiva-blue: #0e84e1;
  --nexiva-purple: #9747ff;
  --nexiva-dark: #1f2126;
  --nexiva-gray: #7d7f85;
  --nexiva-light-bg: #f8f9fc;
  --gradient-primary: linear-gradient(90deg, #0e84e1 -1.84%, #9747ff 100%);
  --gradient-hover: linear-gradient(90deg, #9747ff -1.84%, #0e84e1 100%);
  --shadow-sm: 0 10px 30px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 20px 40px rgba(14, 132, 225, 0.08);
  --shadow-hover: 0 30px 50px rgba(14, 132, 225, 0.15);
}

/* ----- Section Background ----- */
.ns-service-area {
  background: linear-gradient(135deg, #ffffff 0%, #f9fbff 100%);
  position: relative;
  overflow: hidden;
}

/* ----- Animated Background Shapes ----- */
.ns-service-area::before {
  content: "";
  position: absolute;
  top: -100px;
  right: -100px;
  width: 300px;
  height: 300px;
  background: radial-gradient(
    circle,
    rgba(14, 132, 225, 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: floatShape 20s infinite alternate ease-in-out;
}

.ns-service-area::after {
  content: "";
  position: absolute;
  bottom: -50px;
  left: -50px;
  width: 250px;
  height: 250px;
  background: radial-gradient(
    circle,
    rgba(151, 71, 255, 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: floatShape 25s infinite alternate-reverse ease-in-out;
}

@keyframes floatShape {
  0% {
    transform: translate(0, 0) scale(1);
  }
  100% {
    transform: translate(50px, 30px) scale(1.1);
  }
}

/* ----- Section Header Animations ----- */
.animate-fade-in {
  opacity: 0;
  animation: fadeIn 0.8s ease forwards;
}

.animate-slide-up {
  opacity: 0;
  transform: translateY(30px);
  animation: slideUp 0.8s ease forwards;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes slideUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ----- USP Cards Grid ----- */
.g-4 {
  --bs-gutter-x: 25px;
  --bs-gutter-y: 25px;
}

.nexiva-usp-card {
  height: 100%;
  animation: cardFadeIn 0.8s ease forwards;
  opacity: 0;
}

.animate-card {
  opacity: 0;
  animation: cardSlideUp 0.8s ease forwards;
  animation-delay: attr(data-delay);
}

@keyframes cardSlideUp {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.usp-card-inner {
  background: white;
  padding: 40px 30px 45px;
  border-radius: 20px;
  position: relative;
  z-index: 2;
  height: 100%;
  transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-shadow: var(--shadow-sm);
  border: 1px solid rgba(221, 221, 221, 0.3);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.usp-card-inner:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-hover);
  border-color: transparent;
  background: white;
}

/* ----- Icon Wrapper with Gradient Background ----- */
.usp-icon-wrapper {
  position: relative;
  width: 90px;
  height: 90px;
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.usp-icon {
  width: 80px;
  height: 80px;
  background: var(--gradient-primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 38px;
  color: white;
  position: relative;
  z-index: 3;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: 0 10px 20px rgba(14, 132, 225, 0.2);
}

.usp-card-inner:hover .usp-icon {
  transform: scale(1.1) rotate(5deg);
  background: var(--gradient-hover);
  box-shadow: 0 15px 30px rgba(151, 71, 255, 0.3);
}

/* Icon shape animations */
.usp-shape-1,
.usp-shape-2 {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: transparent;
  border: 2px dashed rgba(14, 132, 225, 0.2);
  top: 0;
  left: 0;
  animation: rotateSlow 20s linear infinite;
}

.usp-shape-2 {
  width: 110%;
  height: 110%;
  top: -5%;
  left: -5%;
  border-color: rgba(151, 71, 255, 0.15);
  animation: rotateSlow 25s linear infinite reverse;
}

.usp-card-inner:hover .usp-shape-1 {
  border-color: rgba(14, 132, 225, 0.4);
  animation-duration: 15s;
}

.usp-card-inner:hover .usp-shape-2 {
  border-color: rgba(151, 71, 255, 0.3);
  animation-duration: 20s;
}

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

/* ----- Card Content ----- */
.usp-content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.usp-title {
  font-size: 22px;
  font-weight: 700;
  color: var(--nexiva-dark);
  margin-bottom: 15px;
  line-height: 1.3;
  transition: color 0.3s ease;
  position: relative;
  display: inline-block;
}

.usp-card-inner:hover .usp-title {
  color: var(--nexiva-blue);
}

.usp-title::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 3px;
  background: var(--gradient-primary);
  transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 3px;
}

.usp-card-inner:hover .usp-title::after {
  width: 50px;
}

.usp-text {
  font-size: 16px;
  line-height: 1.6;
  color: var(--nexiva-gray);
  margin-bottom: 20px;
  flex: 1;
  transition: color 0.3s ease;
}

.usp-card-inner:hover .usp-text {
  color: #555;
}

.usp-link {
  font-size: 16px;
  font-weight: 500;
  color: var(--nexiva-dark);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
  text-decoration: none;
  margin-top: auto;
  position: relative;
  z-index: 5;
}

.usp-link i {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  font-size: 14px;
}

.usp-link:hover {
  color: var(--nexiva-blue);
}

.usp-link:hover i {
  transform: translateX(8px);
}

/* ----- CTA Section ----- */
.nexiva-partner-cta {
  background: var(--gradient-primary);
  border-radius: 30px;
  padding: 50px 60px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(14, 132, 225, 0.2);
  animation: scaleIn 0.8s ease forwards;
  animation-delay: 0.8s;
  opacity: 0;
}

@keyframes scaleIn {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.cta-content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 5;
}

.cta-text h3 {
  color: white;
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 10px;
  line-height: 1.2;
}

.cta-text p {
  color: rgba(255, 255, 255, 0.9);
  font-size: 18px;
  margin-bottom: 0;
}

.nexiva-theme-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: white;
  color: var(--nexiva-blue);
  font-size: 17px;
  font-weight: 600;
  padding: 16px 38px;
  border-radius: 50px;
  text-decoration: none;
  transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  border: 2px solid white;
  gap: 10px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.nexiva-theme-btn i {
  transition: transform 0.3s ease;
  font-size: 16px;
}

.nexiva-theme-btn:hover {
  background: transparent;
  color: white;
  transform: translateY(-3px);
  box-shadow: 0 20px 30px rgba(0, 0, 0, 0.2);
}

.nexiva-theme-btn:hover i {
  transform: translateX(8px);
}

/* CTA Shapes */
.cta-shape-1,
.cta-shape-2 {
  position: absolute;
  width: 200px;
  height: 200px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 50%;
  bottom: -80px;
  right: -50px;
  animation: floatSlow 15s infinite alternate;
}

.cta-shape-2 {
  width: 150px;
  height: 150px;
  top: -60px;
  left: -40px;
  bottom: auto;
  right: auto;
  background: rgba(255, 255, 255, 0.03);
  animation: floatSlow 18s infinite alternate-reverse;
}

@keyframes floatSlow {
  0% {
    transform: translate(0, 0) scale(1);
  }
  100% {
    transform: translate(30px, 20px) scale(1.1);
  }
}

/* ============================================
 RESPONSIVE DESIGN (Mobile & Tablet)
============================================ */

/* Tablet: 768px - 991px */
@media (max-width: 991px) {
  .ns-service-area {
    padding: 80px 0;
  }

  .ns-section-title {
    font-size: 34px;
  }

  .ns-section-text {
    font-size: 16px;
    padding: 0 20px;
  }

  .usp-card-inner {
    padding: 35px 25px 40px;
  }

  .usp-title {
    font-size: 20px;
  }

  .usp-text {
    font-size: 15px;
  }

  .cta-content-wrapper {
    flex-direction: column;
    text-align: center;
    gap: 30px;
  }

  .nexiva-partner-cta {
    padding: 40px 30px;
  }

  .cta-text h3 {
    font-size: 24px;
  }

  .cta-text p {
    font-size: 16px;
  }

  .nexiva-theme-btn {
    padding: 14px 30px;
    font-size: 16px;
  }
}

/* Mobile Landscape: 576px - 767px */
@media (max-width: 767px) {
  .ns-service-area {
    padding: 60px 0;
  }

  .ns-section-title {
    font-size: 28px;
  }

  .ns-section-subtitle {
    font-size: 16px;
  }

  .ns-section-text {
    font-size: 15px;
    padding: 0 15px;
  }

  .usp-card-inner {
    padding: 30px 20px 35px;
  }

  .usp-icon-wrapper {
    width: 80px;
    height: 80px;
    margin-bottom: 20px;
  }

  .usp-icon {
    width: 70px;
    height: 70px;
    font-size: 32px;
  }

  .usp-title {
    font-size: 20px;
    margin-bottom: 12px;
  }

  .usp-text {
    font-size: 15px;
    margin-bottom: 15px;
  }

  .usp-link {
    font-size: 15px;
  }

  .nexiva-partner-cta {
    padding: 35px 25px;
    border-radius: 20px;
  }

  .cta-text h3 {
    font-size: 22px;
  }

  .cta-text p {
    font-size: 15px;
  }

  .nexiva-theme-btn {
    padding: 12px 25px;
    font-size: 15px;
  }

  /* Disable heavy animations on mobile for performance */
  .ns-service-area::before,
  .ns-service-area::after,
  .usp-shape-1,
  .usp-shape-2,
  .cta-shape-1,
  .cta-shape-2 {
    animation: none;
    display: none;
  }

  .usp-card-inner:hover {
    transform: translateY(-5px);
  }

  .usp-card-inner:hover .usp-icon {
    transform: scale(1.05) rotate(3deg);
  }
}

/* Mobile Portrait: 375px - 575px */
@media (max-width: 575px) {
  .ns-section-title {
    font-size: 24px;
  }

  .ns-section-subtitle {
    font-size: 15px;
  }

  .ns-section-text {
    font-size: 14px;
    line-height: 1.6;
  }

  .usp-card-inner {
    padding: 25px 18px 30px;
  }

  .usp-icon-wrapper {
    width: 70px;
    height: 70px;
    margin-bottom: 15px;
  }

  .usp-icon {
    width: 60px;
    height: 60px;
    font-size: 28px;
  }

  .usp-title {
    font-size: 18px;
    margin-bottom: 10px;
  }

  .usp-text {
    font-size: 14px;
    line-height: 1.5;
  }

  .nexiva-partner-cta {
    padding: 30px 20px;
  }

  .cta-text h3 {
    font-size: 20px;
  }

  .cta-text p {
    font-size: 14px;
  }

  .nexiva-theme-btn {
    padding: 10px 22px;
    font-size: 14px;
  }

  /* Adjust animations for small devices */
  .animate-card {
    animation: none;
    opacity: 1;
    transform: none;
  }
}

/* Extra Small Devices: 250px - 374px */
@media (max-width: 374px) {
  .ns-section-title {
    font-size: 22px;
  }

  .usp-title {
    font-size: 17px;
  }

  .usp-text {
    font-size: 13px;
  }

  .nexiva-theme-btn {
    padding: 10px 18px;
    font-size: 13px;
    white-space: nowrap;
  }

  .cta-text h3 {
    font-size: 18px;
  }

  .cta-text p {
    font-size: 13px;
  }
}

/* Touch device optimizations */
@media (hover: none) and (pointer: coarse) {
  .usp-card-inner:hover {
    transform: none;
    box-shadow: var(--shadow-sm);
  }

  .usp-card-inner:hover .usp-icon {
    transform: none;
  }

  .usp-card-inner:hover .usp-title {
    color: var(--nexiva-dark);
  }

  .usp-card-inner:hover .usp-title::after {
    width: 0;
  }

  .nexiva-theme-btn:hover {
    background: white;
    color: var(--nexiva-blue);
    transform: none;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  }
}

/* Smooth scrolling for the whole page */
html {
  scroll-behavior: smooth;
}

/* Container gutter fix for mobile */
@media (max-width: 767px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.ns-service-area {
  background: linear-gradient(135deg, #ffffff 0%, #f9fbff 100%);
  position: relative;
  overflow: hidden;
}

/* ----- TYPEWRITER STYLES ----- */
#nexiva-typewriter-heading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 120px;
  position: relative;
  margin-bottom: 20px;
}

.typewriter-text {
  display: inline-block;
  font-size: inherit;
  font-weight: inherit;
  color: var(--nexiva-dark);
  line-height: 1.2;
  white-space: pre-wrap;
  word-break: break-word;
  text-align: center;
}

.typewriter-cursor {
  display: inline-block;
  width: 4px;
  margin-left: 5px;
  font-size: 50px;
  font-weight: 300;
  color: var(--nexiva-blue);
  animation: blinkCursor 1s infinite;
  line-height: 1;
  transform: translateY(-5px);
}

@keyframes blinkCursor {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}

/* Typewriter gradient text */
.typewriter-text.gradient-text {
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ----- Animated Background Shapes ----- */
.ns-service-area::before {
  content: "";
  position: absolute;
  top: -100px;
  right: -100px;
  width: 300px;
  height: 300px;
  background: radial-gradient(
    circle,
    rgba(14, 132, 225, 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: floatShape 20s infinite alternate ease-in-out;
}

.ns-service-area::after {
  content: "";
  position: absolute;
  bottom: -50px;
  left: -50px;
  width: 250px;
  height: 250px;
  background: radial-gradient(
    circle,
    rgba(151, 71, 255, 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: floatShape 25s infinite alternate-reverse ease-in-out;
}

@keyframes floatShape {
  0% {
    transform: translate(0, 0) scale(1);
  }
  100% {
    transform: translate(50px, 30px) scale(1.1);
  }
}

/* ----- Section Header Animations ----- */
.animate-fade-in {
  opacity: 0;
  animation: fadeIn 0.8s ease forwards;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* ----- USP Cards Grid ----- */
.g-4 {
  --bs-gutter-x: 25px;
  --bs-gutter-y: 25px;
}

.nexiva-usp-card {
  height: 100%;
  opacity: 0;
  animation: cardSlideUp 0.8s ease forwards;
  animation-delay: attr(data-delay);
}

@keyframes cardSlideUp {
  0% {
    opacity: 0;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.usp-card-inner {
  background: white;
  padding: 40px 30px 45px;
  border-radius: 20px;
  position: relative;
  z-index: 2;
  height: 100%;
  transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-shadow: var(--shadow-sm);
  border: 1px solid rgba(221, 221, 221, 0.3);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.usp-card-inner:hover {
  transform: translateY(-10px);
  box-shadow: var(--shadow-hover);
  border-color: transparent;
  background: white;
}

/* ----- Icon Wrapper with Gradient Background ----- */
.usp-icon-wrapper {
  position: relative;
  width: 90px;
  height: 90px;
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.usp-icon {
  width: 80px;
  height: 80px;
  background: var(--gradient-primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 38px;
  color: white;
  position: relative;
  z-index: 3;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: 0 10px 20px rgba(14, 132, 225, 0.2);
}

.usp-card-inner:hover .usp-icon {
  transform: scale(1.1) rotate(5deg);
  background: var(--gradient-hover);
  box-shadow: 0 15px 30px rgba(151, 71, 255, 0.3);
}

/* Icon shape animations */
.usp-shape-1,
.usp-shape-2 {
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: transparent;
  border: 2px dashed rgba(14, 132, 225, 0.2);
  top: 0;
  left: 0;
  animation: rotateSlow 20s linear infinite;
}

.usp-shape-2 {
  width: 110%;
  height: 110%;
  top: -5%;
  left: -5%;
  border-color: rgba(151, 71, 255, 0.15);
  animation: rotateSlow 25s linear infinite reverse;
}

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

/* ----- Card Content ----- */
.usp-content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.usp-title {
  font-size: 22px;
  font-weight: 700;
  color: var(--nexiva-dark);
  margin-bottom: 15px;
  line-height: 1.3;
  transition: color 0.3s ease;
  position: relative;
  display: inline-block;
}

.usp-card-inner:hover .usp-title {
  color: var(--nexiva-blue);
}

.usp-title::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 3px;
  background: var(--gradient-primary);
  transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 3px;
}

.usp-card-inner:hover .usp-title::after {
  width: 50px;
}

.usp-text {
  font-size: 16px;
  line-height: 1.6;
  color: var(--nexiva-gray);
  margin-bottom: 20px;
  flex: 1;
  transition: color 0.3s ease;
}

.usp-link {
  font-size: 16px;
  font-weight: 500;
  color: var(--nexiva-dark);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
  text-decoration: none;
  margin-top: auto;
  position: relative;
  z-index: 5;
}

.usp-link i {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  font-size: 14px;
}

.usp-link:hover {
  color: var(--nexiva-blue);
}

.usp-link:hover i {
  transform: translateX(8px);
}

/* ----- CTA Section ----- */
.nexiva-partner-cta {
  background: var(--gradient-primary);
  border-radius: 30px;
  padding: 50px 60px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(14, 132, 225, 0.2);
  opacity: 0;
  animation: scaleIn 0.8s ease forwards;
  animation-delay: 0.8s;
}

@keyframes scaleIn {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.cta-content-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 5;
}

.cta-text h3 {
  color: white;
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 10px;
  line-height: 1.2;
}

.cta-text p {
  color: rgba(255, 255, 255, 0.9);
  font-size: 18px;
  margin-bottom: 0;
}

.nexiva-theme-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: white;
  color: var(--nexiva-blue);
  font-size: 17px;
  font-weight: 600;
  padding: 16px 38px;
  border-radius: 50px;
  text-decoration: none;
  transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  border: 2px solid white;
  gap: 10px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.nexiva-theme-btn i {
  transition: transform 0.3s ease;
  font-size: 16px;
}

.nexiva-theme-btn:hover {
  background: transparent;
  color: white;
  transform: translateY(-3px);
  box-shadow: 0 20px 30px rgba(0, 0, 0, 0.2);
}

.nexiva-theme-btn:hover i {
  transform: translateX(8px);
}

/* ============================================
 RESPONSIVE DESIGN
============================================ */

/* Tablet: 768px - 991px */
@media (max-width: 991px) {
  .ns-service-area {
    padding: 80px 0;
  }

  .ns-section-title {
    font-size: 34px;
  }

  #nexiva-typewriter-heading {
    min-height: 100px;
  }

  .typewriter-cursor {
    font-size: 40px;
  }

  .cta-content-wrapper {
    flex-direction: column;
    text-align: center;
    gap: 30px;
  }

  .nexiva-partner-cta {
    padding: 40px 30px;
  }

  .cta-text h3 {
    font-size: 24px;
  }
}

/* Mobile Landscape: 576px - 767px */
@media (max-width: 767px) {
  .ns-service-area {
    padding: 60px 0;
  }

  .ns-section-title {
    font-size: 28px;
  }

  #nexiva-typewriter-heading {
    min-height: 80px;
  }

  .typewriter-cursor {
    font-size: 35px;
  }

  .usp-card-inner {
    padding: 30px 20px 35px;
  }

  .nexiva-partner-cta {
    padding: 35px 25px;
  }

  /* Disable heavy animations on mobile */
  .ns-service-area::before,
  .ns-service-area::after,
  .usp-shape-1,
  .usp-shape-2 {
    animation: none;
    display: none;
  }
}

/* Mobile Portrait: 375px - 575px */
@media (max-width: 575px) {
  .ns-section-title {
    font-size: 24px;
  }

  #nexiva-typewriter-heading {
    min-height: 70px;
  }

  .typewriter-cursor {
    font-size: 30px;
  }

  .usp-icon-wrapper {
    width: 70px;
    height: 70px;
  }

  .usp-icon {
    width: 60px;
    height: 60px;
    font-size: 28px;
  }

  .usp-title {
    font-size: 18px;
  }

  .nexiva-partner-cta {
    padding: 30px 20px;
  }

  .cta-text h3 {
    font-size: 20px;
  }
}

/* Extra Small Devices: 250px - 374px */
@media (max-width: 374px) {
  .ns-section-title {
    font-size: 22px;
  }

  #nexiva-typewriter-heading {
    min-height: 60px;
  }

  .typewriter-cursor {
    font-size: 26px;
  }

  .usp-title {
    font-size: 17px;
  }
}

/* Touch device optimizations */
@media (hover: none) and (pointer: coarse) {
  .usp-card-inner:hover {
    transform: none;
  }

  .usp-card-inner:hover .usp-icon {
    transform: none;
  }

  .nexiva-theme-btn:hover {
    background: white;
    color: var(--nexiva-blue);
    transform: none;
  }
}
#nexiva-typewriter-heading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 120px;
  position: relative;
  margin-bottom: 20px;
}

.typewriter-text {
  display: inline-block;
  font-size: inherit;
  font-weight: inherit;
  background: linear-gradient(90deg, #0e84e1 -1.84%, #9747ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.2;
  white-space: pre-wrap;
  word-break: break-word;
  text-align: center;
}

.typewriter-cursor {
  display: inline-block;
  width: 4px;
  margin-left: 5px;
  font-size: 50px;
  font-weight: 300;
  color: #0e84e1;
  animation: blinkCursor 1s infinite;
  line-height: 1;
  transform: translateY(-5px);
}

@keyframes blinkCursor {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}

/* Responsive typewriter */
@media (max-width: 991px) {
  #nexiva-typewriter-heading {
    min-height: 100px;
  }
  .typewriter-cursor {
    font-size: 40px;
  }
}
@media (max-width: 767px) {
  #nexiva-typewriter-heading {
    min-height: 80px;
  }
  .typewriter-cursor {
    font-size: 35px;
  }
}
@media (max-width: 575px) {
  #nexiva-typewriter-heading {
    min-height: 70px;
  }
  .typewriter-cursor {
    font-size: 30px;
  }
}
@media (max-width: 374px) {
  #nexiva-typewriter-heading {
    min-height: 60px;
  }
  .typewriter-cursor {
    font-size: 26px;
  }
}

#nexiva-typewriter-heading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 120px;
  position: relative;
  margin-bottom: 20px;
}

.typewriter-text {
  display: inline-block;
  font-size: inherit;
  font-weight: inherit;
  background: linear-gradient(90deg, #0e84e1 -1.84%, #9747ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.2;
  white-space: pre-wrap;
  word-break: break-word;
  text-align: center;
}

.typewriter-cursor {
  display: inline-block;
  width: 4px;
  margin-left: 5px;
  font-size: 50px;
  font-weight: 300;
  color: #0e84e1;
  animation: blinkCursor 1s infinite;
  line-height: 1;
  transform: translateY(-5px);
}

@keyframes blinkCursor {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}

/* ✅ NORMAL SUBTITLE STYLES - NO TYPEWRITER */
.ns-section-subtitle {
  display: inline-block;
  font-size: 19px;
  font-weight: 500;
  background: linear-gradient(90deg, #0e84e1 -1.84%, #9747ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  padding-left: 27px;
  position: relative;
  margin-bottom: 8px;
  text-transform: uppercase;
  opacity: 1 !important; /* Ensure it's visible */
  animation: fadeIn 0.8s ease forwards; /* Only fade-in, no typewriter */
}

.ns-section-subtitle::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color: #6551b3;
  border-radius: 50%;
}

/* Responsive typewriter */
@media (max-width: 991px) {
  #nexiva-typewriter-heading {
    min-height: 100px;
  }
  .typewriter-cursor {
    font-size: 40px;
  }
  .ns-section-subtitle {
    font-size: 17px;
  }
}
@media (max-width: 767px) {
  #nexiva-typewriter-heading {
    min-height: 80px;
  }
  .typewriter-cursor {
    font-size: 35px;
  }
  .ns-section-subtitle {
    font-size: 16px;
  }
}
@media (max-width: 575px) {
  #nexiva-typewriter-heading {
    min-height: 70px;
  }
  .typewriter-cursor {
    font-size: 30px;
  }
  .ns-section-subtitle {
    font-size: 15px;
  }
}

#nexiva-typewriter-heading {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 120px;
  position: relative;
  margin-bottom: 20px;
  width: 100%;
}

/* Typewriter text - hidden on mobile by default */
.typewriter-text {
  display: inline-block;
  font-size: inherit;
  font-weight: inherit;
  background: linear-gradient(90deg, #0e84e1 -1.84%, #9747ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.2;
  white-space: pre-wrap;
  word-break: break-word;
  text-align: center;
}

/* Fallback text - visible on mobile, hidden on desktop */
.typewriter-fallback {
  display: none;
  font-size: inherit;
  font-weight: inherit;
  background: linear-gradient(90deg, #0e84e1 -1.84%, #9747ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1.2;
  white-space: pre-wrap;
  word-break: break-word;
  text-align: center;
  width: 100%;
}

.typewriter-cursor {
  display: inline-block;
  width: 4px;
  margin-left: 5px;
  font-size: 50px;
  font-weight: 300;
  color: #0e84e1;
  animation: blinkCursor 1s infinite;
  line-height: 1;
  transform: translateY(-5px);
}

@keyframes blinkCursor {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}

/* ===== MOBILE RESPONSIVE FIXES ===== */
@media (max-width: 991px) {
  #nexiva-typewriter-heading {
    min-height: 100px;
  }
  .typewriter-cursor {
    font-size: 40px;
  }
}

@media (max-width: 767px) {
  #nexiva-typewriter-heading {
    min-height: auto;
    display: block; /* Stack on mobile */
  }

  /* On mobile, hide typewriter text and show fallback */
  .typewriter-text {
    display: none !important;
  }

  .typewriter-fallback {
    display: block !important;
    font-size: 28px;
    margin-bottom: 10px;
  }

  .typewriter-cursor {
    display: none !important; /* Hide cursor on mobile */
  }
}

@media (max-width: 575px) {
  .typewriter-fallback {
    font-size: 24px;
    line-height: 1.3;
  }
}

@media (max-width: 374px) {
  .typewriter-fallback {
    font-size: 22px;
  }
}

/* Subtitle styles - unchanged */
.ns-section-subtitle {
  display: inline-block;
  font-size: 19px;
  font-weight: 500;
  background: linear-gradient(90deg, #0e84e1 -1.84%, #9747ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  padding-left: 27px;
  position: relative;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.ns-section-subtitle::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color: #6551b3;
  border-radius: 50%;
}

/* Mobile subtitle fix */
@media (max-width: 767px) {
  .ns-section-subtitle {
    font-size: 16px;
    margin-bottom: 15px;
  }

  .ns-section-title {
    margin-bottom: 20px;
  }
}

/*  */

/* =========================
   GLOBAL SERVICES SECTION
========================= */

.global-services-section {
  padding: 50px 20px;
  background: linear-gradient(135deg, #f7f9ff, #eef3ff);
  overflow: hidden;
}

.gs-container {
  max-width: 1200px;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}

/* IMAGE */

.gs-image img {
  width: 100%;
  border-radius: 16px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
  transform: scale(0.95);
  transition: transform 0.6s ease;
}

.gs-image img:hover {
  transform: scale(1);
}

/* CONTENT */

/* .gs-title {
  font-size: 36px;
  line-height: 1.3;
  margin-bottom: 30px;
  background: linear-gradient(90deg, #1f2126);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center !important;
  width: 100%;
} */
.gs-content {
  text-align: center !important;
}
.gs-content {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 992px) {
  .gs-content {
    max-width: 100%;
    text-align: center;
  }

  .gs-title {
    font-size: 28px;
    line-height: 1.35;
  }
}
@media (max-width: 600px) {
  .gs-title {
    font-size: 22px;
    line-height: 1.4;
    margin-bottom: 22px;
    padding: 0 6px;
  }
}

/* SERVICE LIST */

.gs-services {
  display: grid;
  gap: 14px;
}

.gs-item {
  background: white;
  padding: 16px 20px;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
  transition: all 0.3s ease;
  border-left: 4px solid #0e84e1;
}

.gs-item:hover {
  border: 1px solid #0e84e1;
  box-shadow: 14px #0e84e1;
}
.gs-item h3 {
  font-size: 18px;
  margin: 0;
}

.gs-item:hover {
  transform: translateX(8px);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12);
}

/* =========================
   SCROLL ANIMATION STATES
========================= */

.reveal-left,
.reveal-right {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.8s ease;
}

.reveal-left.active {
  opacity: 1;
  transform: translateX(0);
}

.reveal-right.active {
  opacity: 1;
  transform: translateX(0);
}

/* =========================
   TABLET
========================= */

@media (max-width: 992px) {
  .gs-container {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .gs-title {
    font-size: 30px;
  }
}

/* =========================
   MOBILE
========================= */

@media (max-width: 600px) {
  .global-services-section {
    padding: 70px 16px;
  }

  .gs-title {
    font-size: 24px;
  }

  .gs-item h3 {
    font-size: 16px;
  }
}

/* =========================
   IMAGE COLLAGE LAYOUT
========================= */

.gs-image-collage {
  position: relative;
  width: 100%;
  min-height: 520px;
}

/* individual cards */

.img-card {
  position: absolute;
  overflow: hidden;
  border-radius: 14px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
  transform: translateY(40px) scale(0.95);
  opacity: 0;
  transition: all 0.8s ease;
}

.img-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* positions — desktop */

.img-1 {
  width: 58%;
  height: 260px;
  top: 0;
  left: 0;
  z-index: 3;
}

.img-2 {
  width: 48%;
  height: 220px;
  top: 160px;
  right: 0;
  z-index: 2;
}

.img-3 {
  width: 46%;
  height: 200px;
  bottom: 0;
  left: 8%;
  z-index: 1;
}

.img-4 {
  width: 160px;
  height: 160px;
  top: 40px;
  right: 8%;
  z-index: 4;
  border-radius: 50%;
}

/* reveal active */

.gs-image-collage.active .img-card {
  transform: translateY(0) scale(1);
  opacity: 1;
}

.gs-image-collage.active .img-1 {
  transition-delay: 0.1s;
}
.gs-image-collage.active .img-2 {
  transition-delay: 0.25s;
}
.gs-image-collage.active .img-3 {
  transition-delay: 0.4s;
}
.gs-image-collage.active .img-4 {
  transition-delay: 0.55s;
}

/* =========================
   TABLET — reduce overlap
========================= */

@media (max-width: 992px) {
  .gs-image-collage {
    min-height: 420px;
  }

  .img-1 {
    width: 60%;
    height: 220px;
  }
  .img-2 {
    width: 55%;
    height: 200px;
  }
  .img-3 {
    width: 50%;
    height: 180px;
  }
  .img-4 {
    width: 120px;
    height: 120px;
  }
}

/* =========================
   MOBILE — switch to grid
========================= */

@media (max-width: 600px) {
  .gs-image-collage {
    position: static;
    min-height: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .img-card {
    position: relative;
    width: 100% !important;
    height: 160px !important;
    border-radius: 12px;
  }

  .img-4 {
    border-radius: 12px;
  }
}
/* ensure parent allows zoom without clipping */
.gs-image-collage {
  overflow: visible;
}

/* smooth zoom effect */
.img-card img {
  transition: transform 0.5s ease;
}

/* hover enlarge */
.img-card:hover {
  z-index: 10;
}

.img-card:hover img {
  transform: scale(1.12);
}
.reveal-left {
  opacity: 0;
  transform: translateX(-60px);
  transition: all 0.9s ease;
}

.reveal-right {
  opacity: 0;
  transform: translateX(60px);
  transition: all 0.9s ease;
}

.reveal-left.active,
.reveal-right.active {
  opacity: 1;
  transform: translateX(0);
}

/*  */
@media (max-width: 480px) {
  .gs-image-collage .img-card {
    height: 200px !important;
  }

  .gs-title {
    font-size: 22px;
    line-height: 1.35;
    padding: 0 8px;
  }
}
/* =========================
   <= 994px — single image only
========================= */

@media (max-width: 994px) {
  .gs-container {
    grid-template-columns: 1fr;
  }

  .gs-image-collage {
    position: static;
    min-height: auto;
    display: block;
  }

  /* reset all cards */
  .gs-image-collage .img-card {
    position: relative;
    width: 100% !important;
    height: 260px !important;
  }

  /* show only first image */
  .gs-image-collage .img-card:not(.img-1) {
    display: none;
  }
}
/* center the grid right column itself */
.gs-content {
  justify-self: center;
  align-self: center;
  width: 100%;
  max-width: 680px;

  display: flex;
  flex-direction: column;
  align-items: center;
}

/* make heading full-width + centered */
.gs-title {
  width: 100%;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.gs-title ::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--clr-theme-1), var(--clr-theme-4));
  transition: width 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 3px;
}

.gs-title :hover::after {
  width: 80px;
}

/* CONTENT - FULL CENTER ALIGNMENT */
.gs-content {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
  text-align: center; /* Center all content */
  display: flex;
  flex-direction: column;
  align-items: center; /* Center children horizontally */
}

.gs-title {
  font-size: 36px;
  line-height: 1.3;
  margin-bottom: 30px;
  background: linear-gradient(90deg, #1f2126);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
  width: 100%;
}

/* SERVICE LIST - Centered */
.gs-services {
  display: grid;
  gap: 14px;
  text-align: center; /* Center the text inside */
  width: 100%; /* Take full width of parent */
}

.gs-item {
  background: white;
  padding: 16px 20px;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
  transition: all 0.3s ease;
  border-left: 4px solid #0e84e1;
  text-align: center; /* Center text in each item */
  width: 100%; /* Take full width */
}

.gs-item h3 {
  font-size: 18px;
  margin: 0;
  text-align: center; /* Ensure h3 is centered */
}

/* Tablet */
@media (max-width: 992px) and (min-width: 601px) {
  .gs-content {
    max-width: 100%;
    text-align: center;
    align-items: center;
  }

  .gs-title {
    font-size: 32px;
    text-align: center;
  }

  .gs-services {
    text-align: center;
  }

  .gs-item {
    text-align: center;
  }

  .gs-item h3 {
    text-align: center;
  }
}

/* Mobile */
@media (max-width: 600px) {
  .gs-content {
    max-width: 100%;
    text-align: center;
    align-items: center;
    padding: 0;
  }

  .gs-title {
    font-size: 24px;
    text-align: center;
  }

  .gs-services {
    text-align: center;
  }

  .gs-item {
    text-align: center;
    padding: 14px 16px;
  }

  .gs-item h3 {
    font-size: 16px;
    text-align: center;
  }
}

/* Small Mobile */
@media (max-width: 400px) {
  .gs-title {
    font-size: 20px;
  }

  .gs-item {
    padding: 12px 14px;
  }

  .gs-item h3 {
    font-size: 15px;
  }
}

/*  */

/* Industries Section */
.industries-section {
  max-width: 1400px;
  margin: 0 auto;
  padding: 80px 40px;
  background: transparent;
  /* border-radius: 30px;
          box-shadow: 0 30px 80px rgba(0, 0, 0, 0.2); */
  position: relative;
  overflow: hidden;
}

/* Animated Background Shapes */
.industries-section::before,
.industries-section::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  background: linear-gradient(
    135deg,
    rgba(102, 126, 234, 0.1),
    rgba(118, 75, 162, 0.1)
  );
  animation: float 6s ease-in-out infinite;
}

.industries-section::before {
  width: 400px;
  height: 400px;
  top: -100px;
  right: -100px;
  animation-delay: 0s;
}

.industries-section::after {
  width: 300px;
  height: 300px;
  bottom: -80px;
  left: -80px;
  animation-delay: 3s;
}

@keyframes float {
  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-30px) rotate(180deg);
  }
}

/* Section Header */
.section-header {
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  z-index: 2;
}

.section-subtitle {
  display: inline-block;
  color: #667eea;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 15px;
  padding: 8px 20px;
  background: rgba(102, 126, 234, 0.1);
  border-radius: 30px;
  animation: slideDown 0.6s ease-out;
}

.section-title {
  font-size: 42px;
  font-weight: 700;
  color: #1a1a2e;
  margin-bottom: 20px;
  line-height: 1.3;
  animation: slideUp 0.8s ease-out;
}

.section-description {
  font-size: 16px;
  color: #666;
  max-width: 700px;
  margin: 0 auto 10px;
  line-height: 1.8;
  animation: fadeIn 1s ease-out;
}

/* Industry Grid */
.industries-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  position: relative;
  z-index: 2;
}

/* Industry Card */
.industry-card {
  background: white;
  border-radius: 20px;
  padding: 40px 30px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  position: relative;
  overflow: hidden;
  cursor: pointer;
  opacity: 0;
  transform: translateY(30px);
  animation: cardFadeIn 0.6s ease-out forwards;
}

.industry-card:nth-child(1) {
  animation-delay: 0.1s;
}
.industry-card:nth-child(2) {
  animation-delay: 0.2s;
}
.industry-card:nth-child(3) {
  animation-delay: 0.3s;
}
.industry-card:nth-child(4) {
  animation-delay: 0.4s;
}
.industry-card:nth-child(5) {
  animation-delay: 0.5s;
}

@keyframes cardFadeIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.industry-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 0;
}

.industry-card:hover::before {
  opacity: 1;
}

.industry-card:hover {
  transform: translateY(-15px) scale(1.02);
  box-shadow: 0 25px 60px rgba(102, 126, 234, 0.3);
}

/* Icon Container */
.icon-container {
  width: 80px;
  height: 80px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 25px;
  transition: all 0.4s ease;
  position: relative;
  z-index: 1;
}

.industry-card:hover .icon-container {
  background: white;
  transform: rotate(10deg) scale(1.1);
}

.icon-container i {
  font-size: 36px;
  color: white;
  transition: all 0.4s ease;
}

.industry-card:hover .icon-container i {
  color: #667eea;
  animation: iconBounce 0.6s ease;
}

@keyframes iconBounce {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
}

/* Card Content */
.card-content {
  position: relative;
  z-index: 1;
}

.industry-title {
  font-size: 22px;
  font-weight: 700;
  color: #1a1a2e;
  margin-bottom: 15px;
  transition: all 0.4s ease;
}

.industry-card:hover .industry-title {
  color: white;
}

.industry-description {
  font-size: 15px;
  color: #666;
  line-height: 1.7;
  transition: all 0.4s ease;
  margin-bottom: 20px;
}

.industry-card:hover .industry-description {
  color: rgba(255, 255, 255, 0.9);
}

/* Learn More Link */
.learn-more {
  display: inline-flex;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
  color: #667eea;
  text-decoration: none;
  transition: all 0.3s ease;
  position: relative;
  z-index: 1;
}

.learn-more i {
  margin-left: 8px;
  transition: transform 0.3s ease;
}

.industry-card:hover .learn-more {
  color: white;
}

.learn-more:hover i {
  transform: translateX(5px);
}

/* Animations */
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Responsive Design */
@media (max-width: 1200px) {
  .section-title {
    font-size: 36px;
  }

  .industries-grid {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
  }
}

@media (max-width: 768px) {
  .industries-section {
    padding: 50px 20px;
    border-radius: 20px;
  }

  .section-title {
    font-size: 28px !important
    ;
  }

  .section-description {
    font-size: 15px;
  }

  .industries-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .industry-card {
    padding: 30px 25px;
  }

  .icon-container {
    width: 70px;
    height: 70px;
  }

  .icon-container i {
    font-size: 30px;
  }

  .industry-title {
    font-size: 20px;
  }

  .industry-description {
    font-size: 14px;
  }
}

.industries-section {
  padding: 40px 15px;
}

.section-title {
  font-size: 42px;
}

.section-header {
  margin-bottom: 40px;
}

.industry-card {
  padding: 25px 20px;
}

/* Tablet Landscape */
@media (min-width: 769px) and (max-width: 1024px) {
  .industries-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Center icon on mobile devices (767px and below) */
@media (max-width: 767px) {
  .icon-container {
    margin-left: auto;
    margin-right: auto;
  }

  .industry-card {
    text-align: center;
  }

  .card-content {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .industry-title,
  .industry-description,
  .learn-more {
    text-align: center;
  }
}

/* Large Tablets and Small Laptops */
@media (min-width: 1025px) and (max-width: 1366px) {
  .industries-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* SEO Keywords (Hidden) */
.seo-keywords {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

/*  */

/* ===== FIX FOR INDUSTRIES AND PROCESS SECTIONS - PROPER SIDE SPACING ===== */

/* Industries Section - Fix spacing */
.industries-section {
  max-width: 1400px;
  margin: 0 auto;
  padding: 80px 40px; /* Increased horizontal padding */
  position: relative;
  overflow: hidden;
}

/* Process Section - Fix spacing */
.process-chain-section {
  padding: 110px 40px; /* Increased horizontal padding */
  background: linear-gradient(135deg, #f6f7fb 0%, #f0f2f8 100%);
  position: relative;
  overflow: hidden;
}

/* Ensure container inside uses full width with proper max-width */
.industries-section .container,
.process-chain-section .container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 20px; /* Consistent inner padding */
  width: 100%;
}

/* For the grid inside industries section */
.industries-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  position: relative;
  z-index: 2;
  margin: 0 auto; /* Center the grid */
  max-width: 1200px; /* Control maximum width */
}

/* For process chain row */
.chain-row {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  flex-wrap: nowrap;
  max-width: 1400px; /* Control maximum width */
  margin: 0 auto; /* Center the row */
}

/* Responsive fixes for mobile */
@media (max-width: 1200px) {
  .industries-section,
  .process-chain-section {
    padding: 80px 30px;
  }
}

@media (max-width: 991px) {
  .industries-section,
  .process-chain-section {
    padding: 70px 25px;
  }

  .industries-grid {
    gap: 25px;
  }
}

@media (max-width: 767px) {
  .industries-section,
  .process-chain-section {
    padding: 60px 20px;
  }

  .industries-section .container,
  .process-chain-section .container {
    padding: 0 15px;
  }

  .chain-row {
    gap: 30px;
    width: 100%;
  }

  .chain-card {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
}

@media (max-width: 575px) {
  .industries-section,
  .process-chain-section {
    padding: 50px 15px;
  }

  .industries-grid {
    gap: 20px;
  }
}

/* Fix for very small screens */
@media (max-width: 374px) {
  .industries-section,
  .process-chain-section {
    padding: 40px 12px;
  }
}

/* ===== PROCESS CHAIN ===== */

.process-chain-section {
  padding: 110px 40px;
  background: #f6f7fb;
}

.process-head {
  max-width: 760px;
  margin: auto;
  margin-bottom: 70px;
}

.process-head h2 {
  font-size: 38px;
  margin-bottom: 15px;
}

.process-head p {
  color: #666;
  line-height: 1.7;
}

/* row */
.chain-row {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  flex-wrap: nowrap;
}

/* card */
.chain-card {
  width: 260px;
  background: #fff;
  border-radius: 18px;
  padding: 22px;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08);
  position: relative;
  transition: 0.35s;
}

.chain-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.14);
}

/* badge */
.step-badge {
  position: absolute;
  top: -14px;
  left: 18px;
  background: #0e84e1;
  color: #fff;
  font-weight: 700;
  border-radius: 50px;
  padding: 6px 10px;
  font-size: 14px;
}

/* image */
.chain-card img {
  width: 100%;
  height: 140px;
  object-fit: cover;
  border-radius: 10%;
  margin-bottom: 15px;
}

/* text */
.chain-card h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

.chain-card p {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 16px;
}

/* button */
.chain-btn {
  display: inline-block;
  padding: 9px 16px;
  border-radius: 30px;
  background: linear-gradient(135deg, #9747ff, #0e84e1);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: 0.3s;
}

.chain-btn:hover {
  transform: translateY(-2px);
  opacity: 0.9;
}

/* connector line */
.chain-link {
  width: 70px;
  position: relative;
}

.chain-link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(to right, #9747ff, #0e84e1);
  opacity: 0.35;
}

.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: 0.7s ease;
}

.reveal.show {
  opacity: 1;
  transform: translateY(0);
}
/* tablet */
@media (max-width: 1100px) {
  .chain-row {
    flex-wrap: wrap;
    gap: 30px;
  }

  .chain-link {
    display: none;
  }
}

/* mobile */
@media (max-width: 600px) {
  .chain-card {
    width: 100%;
  }

  .process-head h2 {
    font-size: 26px;
  }
}

/*  */
/* ----- GLOBAL MARKETS SECTION (refined) ----- */
.global-markets-section {
  padding: 40px 24px;
  background: var(--nexiva-light-bg);
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

/* soft glowing shapes – smoother animation */
.global-markets-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
      600px circle at 90% 10%,
      rgba(14, 132, 225, 0.03) 0%,
      transparent 60%
    ),
    radial-gradient(
      500px circle at 10% 80%,
      rgba(151, 71, 255, 0.03) 0%,
      transparent 70%
    );
  pointer-events: none;
  z-index: 0;
  animation: softDrift 22s infinite alternate ease-in-out;
}

@keyframes softDrift {
  0% {
    transform: scale(1) translate(0, 0);
    opacity: 0.7;
  }
  100% {
    transform: scale(1.15) translate(-1%, 1%);
    opacity: 1;
  }
}

.gm-container {
  max-width: 1320px;
  margin: 0 auto;
  position: relative;
  z-index: 3;
}

/* ----- HEADER (refined animation) ----- */
.gm-header {
  text-align: center;
  margin-bottom: 70px;
  opacity: 0;
  animation: fadeUp 0.8s ease forwards;
}

@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(28px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.gm-subtitle {
  display: inline-block;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  padding: 8px 22px;
  border: 1.5px solid rgba(14, 132, 225, 0.25);
  border-radius: 50px;
  margin-bottom: 20px;
  position: relative;
  box-shadow: 0 4px 12px rgba(14, 132, 225, 0.1);
}

.ns-section-subtitle::before,
.ns-section-subtitle::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 28px;
  height: 2px;
  background: var(--gradient-primary);
  transform: translateY(-50%);
  border-radius: 4px;
}
.ns-section-subtitle::before {
  left: -7px;
}
.ns-section-subtitle::after {
  right: -34px;
}

.gm-title {
  /* font-family: "Inter", sans-serif; */
  font-size: 42px;
  font-weight: 800;
  line-height: 1.25;
  color: #191c22;
  margin-bottom: 18px;
}

.gradient-text {
  background: linear-gradient(125deg, #0e84e1, #9747ff);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.gm-description {
  font-size: 18px;
  color: #4b505e;
  max-width: 780px;
  margin: 0 auto;
  line-height: 1.7;
  font-weight: 400;
}

/* ----- GRID (elevated cards with refined box-shadow) ----- */
.countries-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin: 60px 0 40px;
}

/* card base */
.country-card {
  background: #ffffff;
  border-radius: 26px;
  padding: 32px 28px;
  border: 1px solid #0e84e1;
  box-shadow: var(--shadow-sm);
  transition: var(--transition-bounce);
  position: relative;
  opacity: 0;
  transform: translateY(36px);
  animation: cardRise 0.7s forwards;
  will-change: transform, box-shadow;
}

@keyframes cardRise {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.country-card:nth-child(1) {
  animation-delay: 0.08s;
}
.country-card:nth-child(2) {
  animation-delay: 0.16s;
}
.country-card:nth-child(3) {
  animation-delay: 0.24s;
}
.country-card:nth-child(4) {
  animation-delay: 0.32s;
}
.country-card:nth-child(5) {
  animation-delay: 0.4s;
}
.country-card:nth-child(6) {
  animation-delay: 0.48s;
}

/* gradient overlay (elegant) */
.country-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 26px;
  background: var(--gradient-primary);
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 0;
  pointer-events: none;
}

.country-card:hover {
  transform: translateY(-12px) scale(1.02);
  border-color: transparent;
  /* box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15); */
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.75), 0 12px 30px rgba(0, 0, 0, 0.75);
}

.country-card:hover::before {
  opacity: 1;
}

.card-content-wrapper {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 22px;
}

/* flag icon */
.flag-icon-wrapper {
  width: 72px;
  height: 72px;
  background: linear-gradient(
    135deg,
    rgba(14, 132, 225, 0.1),
    rgba(151, 71, 255, 0.08)
  );
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  box-shadow: 0 10px 18px -8px rgba(0, 0, 0, 0.08);
  transition: all 0.5s cubic-bezier(0.2, 0.9, 0.3, 1.2);
  flex-shrink: 0;
  border: 1px solid black !important;
  color: black !important;
}

.country-card:hover .flag-icon-wrapper {
  background: white;
  transform: rotate(360deg) scale(1.08);
  box-shadow: 0 16px 28px -8px rgba(14, 132, 225, 0.4);
}

.country-name {
  font-family: "Inter", sans-serif;
  font-size: 23px;
  font-weight: 700;
  color: #1e222b;
  margin-bottom: 6px;
  transition: color 0.2s;
}

.country-card:hover .country-name {
  color: white;
}

.country-tagline {
  font-size: 15px;
  color: #6a6f7c;
  margin-bottom: 14px;
  font-weight: 400;
  transition: color 0.2s;
}

.country-card:hover .country-tagline {
  color: rgba(255, 255, 255, 0.85);
}

/* explore link */
.explore-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  color: var(--nexiva-blue);
  text-decoration: none;
  transition: all 0.3s;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
}

.explore-link i {
  font-size: 13px;
  transition: transform 0.3s cubic-bezier(0.3, 1.2, 0.4, 1);
}

.country-card:hover .explore-link {
  color: white;
  border-bottom-color: rgba(255, 255, 255, 0.5);
}

.explore-link:hover i {
  transform: translateX(8px);
}

/* ----- CTA BANNER (elevated shadow + animation) ----- */
.gm-cta-banner {
  background: var(--gradient-primary);
  border-radius: 30px;
  padding: 52px 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 32px;
  box-shadow: var(--shadow-cta);
  margin-top: 30px;
  opacity: 0;
  transform: scale(0.96);
  animation: scaleReveal 0.8s forwards;
  animation-delay: 0.6s;
  position: relative;
  overflow: hidden;
}

@keyframes scaleReveal {
  to {
    opacity: 1;
    transform: scale(1);
  }
}

.cta-shape-1,
.cta-shape-2 {
  position: absolute;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.06);
  z-index: 0;
}
.cta-shape-1 {
  width: 260px;
  height: 260px;
  top: -80px;
  left: -70px;
  animation: floatSoft 18s infinite alternate;
}
.cta-shape-2 {
  width: 200px;
  height: 200px;
  bottom: -70px;
  right: -40px;
  animation: floatSoft 20s infinite alternate-reverse;
}

@keyframes floatSoft {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  100% {
    transform: translate(26px, -18px) rotate(6deg);
  }
}

.cta-content {
  position: relative;
  z-index: 5;
  flex: 1 1 300px;
}

.cta-content h3 {
  font-family: "Inter", sans-serif;
  font-size: 30px;
  font-weight: 700;
  color: white;
  margin-bottom: 8px;
  line-height: 1.3;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.cta-content p {
  font-size: 17px;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 400;
}

.cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  background: white;
  color: var(--nexiva-blue);
  font-size: 18px;
  font-weight: 600;
  padding: 18px 46px;
  border-radius: 60px;
  text-decoration: none;
  border: 2px solid white;
  transition: var(--transition-bounce);
  box-shadow: 0 14px 28px -8px rgba(0, 0, 0, 0.25);
  position: relative;
  z-index: 5;
  white-space: nowrap;
}

.cta-button i {
  transition: transform 0.3s ease;
}

.cta-button:hover {
  background: transparent;
  color: white;
  transform: translateY(-5px);
  box-shadow: 0 28px 42px -10px rgba(0, 0, 0, 0.35);
}

.cta-button:hover i {
  transform: translateX(9px);
}

/* seo hidden */
.seo-keywords {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

/* ----- FULL RESPONSIVENESS (fine-tuned) ----- */
@media (max-width: 1199px) {
  .gm-title {
    font-size: 38px;
  }
  .countries-grid {
    gap: 24px;
  }
  .country-card {
    padding: 28px 22px;
  }
  .cta-content h3 {
    font-size: 28px;
  }
  .cta-button {
    padding: 16px 38px;
    font-size: 17px;
  }
}

@media (max-width: 991px) {
  .global-markets-section {
    padding: 80px 24px;
  }
  .gm-title {
    font-size: 34px;
  }
  .countries-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
  .gm-cta-banner {
    padding: 44px 40px;
  }
  .cta-content h3 {
    font-size: 26px;
  }
}

@media (max-width: 767px) {
  .global-markets-section {
    padding: 64px 20px;
  }
  .gm-header {
    margin-bottom: 48px;
  }
  .gm-subtitle::before,
  .gm-subtitle::after {
    display: none;
  }
  .gm-title {
    font-size: 30px;
  }
  .gm-description {
    font-size: 16px;
  }

  .countries-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .flag-icon-wrapper {
    width: 64px;
    height: 64px;
    font-size: 30px;
  }
  .country-name {
    font-size: 21px;
  }

  .gm-cta-banner {
    flex-direction: column;
    text-align: center;
    padding: 42px 28px;
  }
  .cta-content h3 {
    font-size: 24px;
  }
  .cta-button {
    white-space: normal;
    padding: 15px 34px;
  }

  /* reduce heavy shapes on mobile */
  .cta-shape-1,
  .cta-shape-2 {
    display: none;
  }
}

@media (max-width: 480px) {
  .global-markets-section {
    padding: 56px 16px;
  }
  .gm-title {
    font-size: 26px;
  }
  .gm-description {
    font-size: 15px;
  }
  .country-card {
    padding: 24px 18px;
  }
  .card-content-wrapper {
    gap: 16px;
  }
  .flag-icon-wrapper {
    width: 56px;
    height: 56px;
    font-size: 26px;
  }
  .country-name {
    font-size: 19px;
  }
  .cta-content h3 {
    font-size: 22px;
  }
  .cta-button {
    font-size: 16px;
    padding: 14px 28px;
  }
  .gm-cta-banner {
    padding: 36px 20px;
  }
}

@media (max-width: 360px) {
  .gm-title {
    font-size: 24px;
  }
  .flag-icon-wrapper {
    width: 50px;
    height: 50px;
    font-size: 24px;
  }
  .country-name {
    font-size: 18px;
  }
  .explore-link {
    font-size: 14px;
  }
}

/* touch devices (no sticky hover) */
@media (hover: none) and (pointer: coarse) {
  .country-card:hover {
    transform: none;
    box-shadow: var(--shadow-sm);
  }
  .country-card:hover::before {
    opacity: 0;
  }
  .country-card:hover .flag-icon-wrapper {
    background: linear-gradient(
      135deg,
      rgba(14, 132, 225, 0.1),
      rgba(151, 71, 255, 0.08)
    );
    transform: none;
    box-shadow: none;
  }
  .country-card:hover .country-name,
  .country-card:hover .country-tagline,
  .country-card:hover .explore-link {
    color: inherit;
  }
  .country-card:hover .country-name {
    color: #1e222b;
  }
  .country-card:hover .country-tagline {
    color: #6a6f7c;
  }
  .country-card:hover .explore-link {
    color: var(--nexiva-blue);
    border-bottom-color: transparent;
  }
  .cta-button:hover {
    background: white;
    color: var(--nexiva-blue);
    transform: none;
    box-shadow: 0 14px 28px -8px rgba(0, 0, 0, 0.25);
  }
}

/* smooth html */
html {
  scroll-behavior: smooth;
}

/* footer */
/* Footer */
.footer {
  background: var(--clr-theme-2);
  color: var(--clr-white);
  padding: 80px 0 30px;
}

.footer .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  margin-bottom: 40px;
}

/* Headings */
.footer-col h3 {
  font-size: 20px;
  margin-bottom: 20px;
  position: relative;
  padding-bottom: 10px;
  font-weight: 600;
  color: white !important;
}

.footer-col h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 45px;
  height: 2px;
  background: var(--clr-theme-1);
}

/* Links */
.footer-col ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.footer-col ul li {
  margin-bottom: 12px;
}

.footer-col ul li a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: 0.3s ease;
}

.footer-col ul li a:hover {
  color: var(--clr-theme-1);
  padding-left: 4px;
}

/* Button */
.btn-primary1 {
  display: inline-block;
  margin-top: 15px;
  padding: 10px 20px;
  background: var(--clr-theme-1);
  color: var(--clr-white);
  border-radius: 5px;
  text-decoration: none;
  font-size: 14px;
  transition: 0.3s ease;
}

.btn-primary1:hover {
  background: var(--clr-theme-4);
}

/* Contact */
.contact-info p {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
}

.contact-info i {
  color: var(--clr-theme-1);
  min-width: 18px;
  margin-top: 3px;
}

/* Social */
.social-links {
  display: flex;
  gap: 12px;
  margin-top: 10px;
  color: white !important;
}

.social-links a {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  color: var(--clr-white);
  transition: 0.3s ease;
}

.social-links a:hover {
  background: var(--clr-theme-1);
  transform: translateY(-4px);
}

/* Bottom */
.footer-bottom {
  text-align: center;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
}

/* Responsive */
@media (max-width: 992px) {
  .footer-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 576px) {
  .footer-grid {
    grid-template-columns: 1fr;
  }
}

.cont {
  color: rgba(255, 255, 255, 0.7);
}
.cont:hover {
  color: var(--clr-theme-1);
  padding-left: 4px;
}

/* cta */
.final-cta-section {
  position: relative;
  text-align: center;
  color: var(--clr-white);
  overflow: hidden;

  padding: 120px 0; /* IMPORTANT */
  margin-bottom: 50px;

  background: url("/assets/img/image.png") center/cover no-repeat;
}

/* Dark overlay for contrast */
.final-cta-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 0;
}

.final-cta-section .container {
  position: relative;
  z-index: 2;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Heading */
.final-cta-section h2 {
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 25px;
  line-height: 1.2;
  color: white;
}

/* Paragraph */
.cta-content {
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 40px;
  color: rgba(255, 255, 255, 0.85);
}

/* Buttons */
.cta-buttons {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
}

/* Primary Button */
.cta-buttons .btn-primary {
  background: var(--clr-theme-1);
  border: none;
  /* color: var(--clr-white); */
  padding: 14px 30px;
  font-size: 16px;
  border-radius: 6px;
  transition: 0.3s ease;
}

.cta-buttons .btn-primary:hover {
  /* background: var(--clr-theme-3); */
  background: var(--gradient-primary);
  border: 2px solid white;
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(14, 132, 225, 0.4);
}

/* Secondary Button */
.cta-buttons .btn-secondary {
  background: transparent;
  border: 2px solid white;
  /* color: var(--clr-white); */
  padding: 14px 30px;
  font-size: 16px;
  border-radius: 6px;
  transition: 0.3s ease;
}

.cta-buttons .btn-secondary:hover {
  /* background: var(--clr-white); */
  background: var(--gradient-primary);
  box-shadow: 0 10px 25px rgba(14, 132, 225, 0.4);
  /* color: var(--clr-theme-1); */
}

/* Responsive */
@media (max-width: 992px) {
  .final-cta-section {
    padding: 90px 0;
  }

  .final-cta-section h2 {
    font-size: 32px;
  }

  .cta-content {
    font-size: 16px;
  }
}

@media (max-width: 576px) {
  .final-cta-section {
    padding: 70px 0;
  }

  .final-cta-section h2 {
    font-size: 24px;
  }

  .cta-buttons {
    flex-direction: column;
  }

  .cta-buttons .btn-primary,
  .cta-buttons .btn-secondary {
    width: 100%;
  }
}

/*  */
/* ===== PROCESS CHAIN SECTION ===== */

.process-chain-section {
  padding: 40px 20px;
  background: linear-gradient(135deg, #f6f7fb 0%, #f0f2f8 100%);
  position: relative;
  overflow: hidden;
}

/* Animated background shapes */
.process-chain-section::before {
  content: "";
  position: absolute;
  top: -150px;
  right: -150px;
  width: 400px;
  height: 400px;
  background: radial-gradient(
    circle,
    rgba(14, 132, 225, 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: floatShape 25s infinite alternate ease-in-out;
}

.process-chain-section::after {
  content: "";
  position: absolute;
  bottom: -100px;
  left: -100px;
  width: 300px;
  height: 300px;
  background: radial-gradient(
    circle,
    rgba(151, 71, 255, 0.03) 0%,
    transparent 70%
  );
  border-radius: 50%;
  animation: floatShape 30s infinite alternate-reverse ease-in-out;
}

@keyframes floatShape {
  0% {
    transform: translate(0, 0) scale(1);
  }
  100% {
    transform: translate(40px, 30px) scale(1.1);
  }
}

/* Container */
.container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 15px;
  position: relative;
  z-index: 5;
}

/* Section Header */
.process-head {
  max-width: 760px;
  margin: 0 auto 70px;
  text-align: center;
  opacity: 0;
  animation: fadeUp 0.8s ease forwards;
}

@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.process-head h2 {
  font-size: 42px;
  font-weight: 700;
  color: #1f2126;
  margin-bottom: 20px;
  line-height: 1.2;
  position: relative;
  display: inline-block;
}

.process-head h2::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 80px;
  height: 4px;
  background: linear-gradient(90deg, #0e84e1, #9747ff);
  border-radius: 4px;
}

.process-head p {
  color: #666;
  font-size: 18px;
  line-height: 1.7;
  max-width: 600px;
  margin: 0 auto;
}

/* Row - Flex container */
.chain-row {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  flex-wrap: nowrap;
}

/* Card Base Styles */
.chain-card {
  width: 260px;
  background: #fff;
  border-radius: 24px;
  padding: 28px 22px 32px;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
  position: relative;
  transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  overflow: hidden;
  z-index: 2;
  border: 1px solid rgba(221, 221, 221, 0.5);
}

/* Gradient Overlay Effect on Hover */
.chain-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #0e84e1 0%, #9747ff 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 0;
  pointer-events: none;
}

.chain-card:hover {
  transform: translateY(-12px) scale(1.02);
  box-shadow: 0 30px 60px rgba(14, 132, 225, 0.25);
  border-color: transparent;
}

.chain-card:hover::before {
  opacity: 1;
}

/* All content inside card - ensure it's above overlay */
.chain-card > * {
  position: relative;
  z-index: 3;
  transition: all 0.4s ease;
}

/* Step Badge */
.step-badge {
  position: absolute;
  top: -1px;
  left: 20px;
  background: #0e84e1;
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  padding: 8px 16px;
  border-radius: 40px;
  box-shadow: 0 5px 15px rgba(14, 132, 225, 0.3);
  transition: all 0.3s ease;
  z-index: 10;
  border: 2px solid #fff;
  margin-top: 10px;
}

.chain-card:hover .step-badge {
  background: #fff;
  color: #0e84e1;
  transform: scale(1.05);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

/* Image */
.chain-card img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  border-radius: 16px;
  margin-bottom: 20px;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.chain-card:hover img {
  transform: scale(1.05);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.2);
}

/* Title */
.chain-card h3 {
  font-size: 20px;
  font-weight: 700;
  color: #1f2126;
  margin-bottom: 12px;
  line-height: 1.3;
  transition: color 0.3s ease;
}

.chain-card:hover h3 {
  color: #fff;
}

/* Description */
.chain-card p {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
  margin-bottom: 20px;
  transition: color 0.3s ease;
}

.chain-card:hover p {
  color: rgba(255, 255, 255, 0.9);
}

/* Button */
.chain-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  border-radius: 40px;
  background: linear-gradient(135deg, #0e84e1, #9747ff);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  border: 2px solid transparent;
  opacity: 0;
  transform: translateY(10px);
}

.chain-card:hover .chain-btn {
  opacity: 1;
  transform: translateY(0);
  background: #fff;
  color: #0e84e1;
  border-color: #fff;
}

.chain-btn i {
  transition: transform 0.3s ease;
  font-size: 12px;
}

.chain-btn:hover i {
  transform: translateX(6px);
}

/* Connector Line */
.chain-link {
  width: 70px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.chain-link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(to right, #9747ff, #0e84e1);
  opacity: 0.35;
  transform: translateY(-50%);
}

/* Connector Dot */
.chain-link::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  background: #fff;
  border: 3px solid #0e84e1;
  border-radius: 50%;
  z-index: 3;
  transition: all 0.3s ease;
  animation: pulseDot 2s infinite;
}

@keyframes pulseDot {
  0% {
    box-shadow: 0 0 0 0 rgba(14, 132, 225, 0.4);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(14, 132, 225, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(14, 132, 225, 0);
  }
}

/* Reveal Animation */
.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.7s cubic-bezier(0.5, 0, 0, 1);
}

.reveal.show {
  opacity: 1;
  transform: translateY(0);
}

/* Staggered delays */
.chain-card:nth-child(1) {
  transition-delay: 0.1s;
}
.chain-card:nth-child(3) {
  transition-delay: 0.2s;
}
.chain-card:nth-child(5) {
  transition-delay: 0.3s;
}
.chain-card:nth-child(7) {
  transition-delay: 0.4s;
}
.chain-card:nth-child(9) {
  transition-delay: 0.5s;
}

/* ===== RESPONSIVE DESIGN ===== */

/* Tablet Landscape (992px - 1199px) */
@media (max-width: 1199px) {
  .chain-card {
    width: 220px;
    padding: 25px 18px 28px;
  }

  .chain-card h3 {
    font-size: 18px;
  }

  .process-head h2 {
    font-size: 36px;
  }
}

/* Tablet (768px - 991px) */
@media (max-width: 991px) {
  .chain-row {
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
  }

  .chain-card {
    width: 300px;
    margin-bottom: 10px;
  }

  .chain-link {
    display: none;
  }

  .process-head h2 {
    font-size: 32px;
  }

  .process-head p {
    font-size: 16px;
  }
}

/* Mobile Landscape (576px - 767px) */
@media (max-width: 767px) {
  .process-chain-section {
    padding: 70px 15px;
  }

  .process-head {
    margin-bottom: 50px;
  }

  .process-head h2 {
    font-size: 28px;
  }

  .process-head h2::after {
    width: 60px;
    height: 3px;
  }

  .process-head p {
    font-size: 15px;
    padding: 0 10px;
  }

  .chain-row {
    gap: 30px;
  }

  .chain-card {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    padding: 25px 20px 30px;
  }

  .chain-card img {
    height: 180px;
  }

  .chain-card h3 {
    font-size: 19px;
  }

  .chain-btn {
    opacity: 1;
    transform: translateY(0);
    background: linear-gradient(135deg, #0e84e1, #9747ff);
    color: #fff;
  }

  /* Disable heavy animations on mobile */
  .process-chain-section::before,
  .process-chain-section::after,
  .chain-link::after {
    animation: none;
  }

  .chain-card:hover {
    transform: translateY(-8px);
  }

  .chain-card:hover img {
    transform: scale(1.03);
  }
}

/* Mobile Portrait (375px - 575px) */
@media (max-width: 575px) {
  .process-head h2 {
    font-size: 24px;
  }

  .process-head p {
    font-size: 14px;
  }

  .chain-card {
    padding: 22px 18px 25px;
  }

  .chain-card img {
    height: 160px;
    margin-bottom: 15px;
  }

  .chain-card h3 {
    font-size: 18px;
    margin-bottom: 10px;
  }

  .chain-card p {
    font-size: 13px;
    margin-bottom: 15px;
  }

  .step-badge {
    font-size: 13px;
    padding: 6px 14px;
    top: -10px;
  }
}

/* Extra Small Devices (250px - 374px) */
@media (max-width: 374px) {
  .process-head h2 {
    font-size: 20px;
  }

  .process-head p {
    font-size: 13px;
  }

  .chain-card {
    padding: 20px 15px 22px;
  }

  .chain-card img {
    height: 140px;
  }

  .chain-card h3 {
    font-size: 17px;
  }

  .chain-card p {
    font-size: 12px;
    line-height: 1.5;
  }

  .chain-btn {
    padding: 8px 16px;
    font-size: 13px;
  }

  .step-badge {
    font-size: 12px;
    padding: 5px 12px;
  }
}

/* Touch Device Optimizations */
@media (hover: none) and (pointer: coarse) {
  .chain-card:hover {
    transform: none;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
  }

  .chain-card:hover::before {
    opacity: 0;
  }

  .chain-card:hover h3,
  .chain-card:hover p {
    color: inherit;
  }

  .chain-card:hover h3 {
    color: #1f2126;
  }

  .chain-card:hover p {
    color: #666;
  }

  .chain-card:hover .step-badge {
    background: #0e84e1;
    color: #fff;
    transform: none;
  }

  .chain-card:hover img {
    transform: none;
  }

  .chain-btn {
    opacity: 1;
    transform: translateY(0);
  }
}

/*  */
#glow-dot {
  position: fixed;
  top: 0;
  left: 0;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  background: radial-gradient(
    circle,
    rgba(14, 132, 225, 0.25) 0%,
    rgba(151, 71, 255, 0.25) 40%,
    transparent 70%
  );
  transition: opacity 0.3s ease;
  z-index: 9999;
  will-change: transform;
}

/* Small sharp dot in the center */
#cursor-dot {
  position: fixed;
  top: 0;
  left: 0;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  background: rgba(14, 132, 225, 0.9);
  box-shadow: 0 0 8px rgba(14, 132, 225, 0.8), 0 0 16px rgba(151, 71, 255, 0.5);
  pointer-events: none;
  transform: translate(-50%, -50%);
  z-index: 10000;
  transition: transform 0.1s ease, opacity 0.3s ease;
  will-change: transform;
}

/* 
 */

.desktop-menu ul li a.active {
  position: relative;
  color: #0e84e1;
  font-weight: 600;
}

.desktop-menu ul li a.active::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #0e84e1;
}

/* 

*/
/* ===== DISABLE GLOW EFFECT ON MOBILE/TOUCH DEVICES ===== */

/* Hide glow elements on touch devices */
@media (max-width: 991px), (pointer: coarse) {
  #glow-dot,
  #cursor-dot {
    display: none !important;
  }
}

/* Alternative: Make them transparent but keep functionality */
@media (hover: none) and (pointer: coarse) {
  #glow-dot,
  #cursor-dot {
    opacity: 0 !important;
    visibility: hidden !important;
  }
}

/* 
 */
.ns-banner-content-subtitle {
  display: inline-block;
  animation: floatY 3s ease-in-out infinite;
}

@keyframes floatY {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-8px);
  }
  100% {
    transform: translateY(0px);
  }
}

/* 
 */

@media (max-width: 767px) {
  /* Center whole section content */
  .ns-about-wrap,
  .ns-choose-area .ns-section {
    text-align: center;
  }

  /* Remove right margins that break centering */
  .ns-section-text,
  .ns-choose-area .ns-section-text {
    margin-right: 0 !important;
  }

  /* Center the subtitle underline properly */
  .ns-section-subtitle {
    display: inline-block;
  }

  /* Center list items nicely */
  .ns-about-content-list ul {
    padding-left: 0;
    list-style-position: inside;
  }
}
