/*============================================================

Template Name   : Solarox

Description     : Solar And Renewable Energy HTML5 Template

Author          : Themesland

Version         : 1.1

==============================================================*/





/*=====================================================
.form-group
Table of contents

=======================================================



1. Google fonts

2. Theme variables

3. General css

4. Theme default css

5. Margin & padding

6. Preloader

7. Bs custom css

8. Container

9. Nice select css

10. Play btn

11. Site title css

12. Theme button

13. Header top css

14. Navbar css

15. Navbar multi level dropdown

16. Navbar mega menu

17. Search popup

18. Sidebar popup css 

19. Main section css 

20. Hero css 

21. Breadcrumb css

22. About css 

23. Feature css 

24. Service css 

25. Service single

26. Step/process css 

27. Skill css 

28. Portfolio css 

29. Portfolio single

30. Pricing css 

31. Counter css 

32. Team css 

33. Video css 

34. Quote css 

35. Location css 

36. Cta css 

37. Partner css 

38. Choose css 

39. Shop css 

40. Price range css 

41. Testimonial css 

42. Gallery css

43. Blog css 

44. Blog single css

45. Blog sidebar widget css

46. Pagination css 

47. Faq css 

48. Contact us css 

49. Auth css 

50. Coming soon css

51. Error css 

52. Terms/privacy css 

53. Scroll top css

54. Footer css

55. Home-2 css 

56. Home-3 css 



=======================================================*/





/*====================

1. Google fonts

======================*/



@import url('../../../css2');





/*====================

2. Theme variables

======================*/



:root {

  --body-font: 'Roboto', sans-serif;

  --heading-font: "Exo 2", sans-serif;

  --theme-color: #0fc08c;

  --theme-color2: #064E5A;

  --theme-bg-light: #F6F6F6;

  --theme-color-light: rgba(99, 193, 83, .2);

  --body-text-color: #757F95;

  --color-white: #ffffff;

  --color-dark: #064E5A;

  --color-green: #15D4C9;

  --color-blue: #0049D0;

  --color-skyblue: #00BFFF;

  --color-yellow: #FBA707;

  --color-gray: #ECECEC;

  --color-red: #F05454;

  --box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);

  --box-shadow2: 0 0 15px rgba(0, 0, 0, 0.17);

  --transition: all .5s ease-in-out;

  --transition2: all .3s ease-in-out;

  --border-info-color: rgba(0, 0, 0, 0.08);

  --border-info-color2: rgba(0, 0, 0, 0.05);

  --border-white-color: rgba(255, 255, 255, 0.08);

  --border-white-color2: rgba(255, 255, 255, 0.05);

  --footer-bg: #023B45;

  --footer-text-color: #F5FAFF;

}







/*====================

3. General css

======================*/



*,

*:before,

*:after {

  box-sizing: inherit;

}



* {

  scroll-behavior: inherit !important;

}



html,

body {

  height: auto;

  width: 100%;

  margin: 0;

  padding: 0;

  box-sizing: border-box;

}



body {

  font-family: var(--body-font);

  font-style: normal;

  font-size: 16px;

  font-weight: normal;

  color: var(--body-text-color);

  line-height: 1.8;

}



a {

  color:  var(--color-dark);

  display: inline-block;

}



a,

a:active,

a:focus,

a:hover {

  outline: none;

  -webkit-transition: all 0.3s ease-out 0s;

  -moz-transition: all 0.3s ease-out 0s;

  -o-transition: all 0.3s ease-out 0s;

  -ms-transition: all 0.3s ease-out 0s;

  transition: all 0.3s ease-out 0s;

  text-decoration: none;

}



a:hover {

  color: var(--color-blue);

}



ul {

  margin: 0;

  padding: 0;

}



li {

  list-style: none;

}



h1,

h2,

h3,

h4,

h5,

h6 {

  color:  var(--color-dark);

  margin: 0px;

  font-weight: 700;

  font-family: var(--heading-font);

  line-height: 1.2;

}



h1 {

  font-size: 40px;

}



h2 {

  font-size: 35px;

}



h3 {

  font-size: 28px;

}



h4 {

  font-size: 22px;

}



h5 {

  font-size: 18px;

}



h6 {

  font-size: 16px;

}



p {

  margin: 0px;
  color: #000;

}



.img,

img {

  max-width: 100%;

  -webkit-transition: all 0.3s ease-out 0s;

  -moz-transition: all 0.3s ease-out 0s;

  -ms-transition: all 0.3s ease-out 0s;

  -o-transition: all 0.3s ease-out 0s;

  transition: all 0.3s ease-out 0s;

  height: auto;

}



label {

  color: #999;

  cursor: pointer;

  font-weight: 400;

}



*::-moz-selection {

  background: #d6b161;

  color: var(--color-white);

  text-shadow: none;

}



::-moz-selection {

  background: #555;

  color: var(--color-white);

  text-shadow: none;

}



::selection {

  background: #555;

  color: var(--color-white);

  text-shadow: none;

}



*::-moz-placeholder {

  color: #999;

  font-size: 16px;

  opacity: 1;

}



*::placeholder {

  color: #999;

  font-size: 16px;

  opacity: 1;

}









/*===================

4. Theme default css

======================*/



.bg {

  background: var(--theme-bg-light);

}







/*====================

5. Margin & padding

======================*/



.pt-0 {

  padding-top: 0px;

}



.pt-10 {

  padding-top: 10px;

}



.pt-20 {

  padding-top: 20px;

}



.pt-30 {

  padding-top: 30px;

}



.pt-40 {

  padding-top: 40px;

}



.pt-50 {

  padding-top: 50px;

}



.pt-60 {

  padding-top: 60px;

}



.pt-70 {

  padding-top: 70px;

}



.pt-80 {

  padding-top: 80px;

}



.pt-90 {

  padding-top: 90px;

}



.pt-100 {

  padding-top: 100px;

}



.pt-110 {

  padding-top: 110px;

}



.pt-120 {

  padding-top: 120px;

}



.pb-0 {

  padding-bottom: 0px;

}



.pb-10 {

  padding-bottom: 10px;

}



.pb-20 {

  padding-bottom: 20px;

}



.pb-30 {

  padding-bottom: 30px;

}



.pb-40 {

  padding-bottom: 40px;

}



.pb-50 {

  padding-bottom: 50px;

}



.pb-60 {

  padding-bottom: 60px;

}



.pb-70 {

  padding-bottom: 70px;

}



.pb-80 {

  padding-bottom: 80px;

}



.pb-90 {

  padding-bottom: 90px;

}



.pb-100 {

  padding-bottom: 100px;

}



.pb-110 {

  padding-bottom: 110px;

}



.pb-120 {

  padding-bottom: 120px;

}



.py-80 {

  padding: 80px 0;

}



.py-90 {

  padding: 90px 0;

}



.py-100 {

  padding: 100px 0;

}



.py-110 {

  padding: 110px 0;

}



.py-120 {

  padding: 120px 0;

}



.mt-0 {

  margin-top: 0px;

}



.mt-10 {

  margin-top: 10px;

}



.mt-20 {

  margin-top: 20px;

}



.mt-30 {

  margin-top: 30px;

}



.mt-40 {

  margin-top: 40px;

}



.mt-50 {

  margin-top: 50px;

}



.mt-60 {

  margin-top: 60px;

}



.mt-70 {

  margin-top: 70px;

}



.mt-80 {

  margin-top: 80px;

}



.mt-90 {

  margin-top: 90px;

}



.mt-100 {

  margin-top: 100px;

}



.mt-110 {

  margin-top: 110px;

}



.mt-120 {

  margin-top: 120px;

}



.mb-0 {

  margin-bottom: 0px;

}



.mb-10 {

  margin-bottom: 10px;

}



.mb-20 {

  margin-bottom: 20px;

}



.mb-30 {

  margin-bottom: 30px;

}



.mb-40 {

  margin-bottom: 40px;

}



.mb-50 {

  margin-bottom: 50px;

}



.mb-60 {

  margin-bottom: 60px;

}



.mb-70 {

  margin-bottom: 70px;

}



.mb-80 {

  margin-bottom: 80px;

}



.mb-90 {

  margin-bottom: 90px;

}



.mb-100 {

  margin-bottom: 100px;

}



.mb-110 {

  margin-bottom: 110px;

}



.mb-120 {

  margin-bottom: 120px;

}



.my-80 {

  margin: 80px 0;

}



.my-90 {

  margin: 90px 0;

}



.my-100 {

  margin: 100px 0;

}



.my-110 {

  margin: 110px 0;

}



.my-120 {

  margin: 120px 0;

}









/*====================

6. Preloader

======================*/



.preloader {

  position: fixed;

  width: 100%;

  height: 100%;

  background: var(--theme-color);

  top: 0;

  left: 0;

  z-index: 9999;

  display: flex;

  align-items: center;

  justify-content: center;

}



.loader-ripple {

  display: inline-block;

  position: relative;

  width: 80px;

  height: 80px;

}



.loader-ripple div {

  position: absolute;

  border: 4px solid var(--color-white);

  opacity: 1;

  border-radius: 50%;

  animation: loader-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;

}



.loader-ripple div:nth-child(2) {

  animation-delay: -0.5s;

}



@keyframes loader-ripple {

  0% {

    top: 36px;

    left: 36px;

    width: 0;

    height: 0;

    opacity: 1;

  }



  100% {

    top: 0px;

    left: 0px;

    width: 72px;

    height: 72px;

    opacity: 0;

  }

}









/*====================

7. Bs custom css

======================*/



/* custom form */

.form-group {

  margin-bottom: 0px;

}



.form-group .form-label{

  color: var(--color-dark);

}



.form-group .form-control,

.form-group .form-select{

  padding: 9px 20px 14px 20px;

  border-radius: 4px;

  background-color: var(--color-white);

  color: var(--color-dark);

  border-color: var(--border-info-color);

}



.form-group .form-control::placeholder{

  color: var(--body-text-color);

}



.form-group .form-control:focus,

.form-group .form-select:focus{

  border-color: var(--theme-color);

  box-shadow: 0 0 0 .25rem var(--theme-color-light);

}



.form-group .form-icon{

  position: relative;

}



.form-group .form-icon i{

  position: absolute;

  top: 19px;

  left: 20px;

  color: var(--theme-color);

  z-index: 1;

}



.form-group .form-icon .form-control,

.form-group .form-icon .form-select{

  padding-left: 50px;

}



.form-check{

  margin-bottom: 20px;

}



.form-check .form-check-input{

  border-radius: 6px;

  margin-top: 6.5px;

  border-color: var(--border-info-color);

}



.form-check .form-check-label{

  color: var(--color-dark);

}



.form-check .form-check-input:checked{

  background-color: var(--theme-color);

  border-color: var(--theme-color)

}



.form-check .form-check-input:focus{

  border-color: var(--theme-color);

  box-shadow: 0 0 0 .25rem var(--theme-color-light);

}







/*====================

8. Container

======================*/



@media (min-width: 1200px) {

  .container,

  .container-sm,

  .container-md,

  .container-lg,

  .container-xl {

    max-width: 1200px;

  }

}







/*====================

9. Nice select css

======================*/



.nice-select{

  width: 100%;

  height: 54px;

  line-height: 54px;

  border-radius: 15px;

  font-size: 16px;

  color: var(--color-dark);

  margin-bottom: 20px;

  border-color: var(--border-info-color);

}



.nice-select::after{

  width: 9px;

  height: 9px;

  right: 20px;

  margin-top: -6.5px

}



.nice-select:focus{

  border-color: var(--theme-color);

  box-shadow: 0 0 0 .25rem var(--theme-color-light);

}



.nice-select .list{

  width: 100%;

  border: none;

  border-radius: 15px;

  padding: 10px;

  box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);

}



.nice-select .option.focus,

.nice-select .option.selected.focus,

.nice-select .option:hover {

  border-radius: 10px;

  background: var(--theme-bg-light);

  color: var(--theme-color);

}



.form-icon .nice-select{

  padding-left: 50px;

}







/*===================

10. Play btn

=====================*/



.play-btn {

  display: inline-block;

  padding: 0;

  height: 75px;

  width: 75px;

  line-height: 75px;

  font-size: 20px;

  text-align: center;

  background: var(--theme-color);

  color: var(--color-white) !important;

  position: absolute;

  border-radius: 50%;

  z-index: 1;

}



.play-btn i::after {

  content: "";

  position: absolute;

  height: 100%;

  width: 100%;

  top: 0;

  left: 0;

  z-index: -1;

  background-color: var(--theme-color);

  border-radius: 50px;

  animation: ripple-wave 1s linear infinite;

  -webkit-transform: scale(1);

  transform: scale(1);

  transition: all 0.5s ease-in-out;

}



@keyframes ripple-wave {

  0% {

    opacity: 0.8;

    -webkit-transform: scale(0.9);

    transform: scale(0.9);

  }



  100% {

    opacity: 0;

    -webkit-transform: scale(2);

    transform: scale(2);

  }

}







/*====================

11. Site title css

======================*/



.site-heading {

  margin-bottom: 50px;

  position: relative;

  z-index: 1;

}



.site-title-tagline {

  display: inline-block;

  color: var(--color-white);

  font-weight: 500;

  text-transform: capitalize;

  font-size: 18px;

  background: var(--theme-color);

  border-radius: 10px;

  padding: 2px 15px 2px 3px;

  margin-bottom: 15px;

}



.site-title-tagline.light{

  background: var(--color-white);

}



.site-title-tagline i{

  font-size: 16px;

  width: 30px;

  height: 30px;

  line-height: 30px;

  background: var(--color-white);

  color: var(--theme-color);

  text-align: center;

  border-radius: 8px;

  margin-right: 5px;

}



.site-title {

  font-weight: 700;

  text-transform: capitalize;

  font-size: 45px;

  color: var(--color-dark);

  margin-bottom: 0;

}



.site-title span{

  color: var(--theme-color);

}



.site-heading p {

  margin-top: 15px;

}



.heading-divider {

  display: inline-block;

  position: relative;

  border-bottom: 4px solid var(--theme-color);

  width: 90px;

  height: 4px;

  border-radius: 50px;

}



.heading-divider:after {

  content: '';

  position: absolute;

  left: 0;

  top: -1px;

  height: 6px;

  width: 15px;

  border-radius: 0px;

  background-color: var(--color-white);

  -webkit-animation: heading-move 5s infinite linear;

  animation: heading-move 5s infinite linear;

}



@-webkit-keyframes heading-move {

  0% {

    transform: translateX(-1px);

  }

  50% {

    transform: translateX(75px);

  }

  100% {

    transform: translateX(-1px);

  }

}



@keyframes heading-move {

  0% {

    transform: translateX(-1px);

  }

  50% {

    transform: translateX(75px);

  }

  100% {

    transform: translateX(-1px);

  }

}







/*====================

12. Theme button

======================*/



.theme-btn,

.theme-btn2 {

  font-size: 16px;

  color: var(--color-white);

  padding: 10px 20px;

  transition: all 0.5s;

  text-transform: capitalize;

  position: relative;

  border-radius: 10px;

  font-weight: 500;

  cursor: pointer;

  text-align: center;

  vertical-align: middle;

  overflow: hidden;

  border: none;

  background: var(--theme-color);

  box-shadow: var(--box-shadow);

  z-index: 1;

}



.theme-btn::before,

.theme-btn2::before {

  content: "";

  height: 300px;

  width: 300px;

  background: var(--color-dark);

  border-radius: 50%;

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translateY(-50%) translateX(-50%) scale(0);

  transition: 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  z-index: -1;

}



.theme-btn:hover{

  color: var(--color-white);

}



.theme-btn:hover::before,

.theme-btn2:hover::before {

  transform: translateY(-50%) translateX(-50%) scale(1);

}



.theme-btn i,

.theme-btn2 i{

  margin-left: 8px;

  transform: rotate(-40deg);

  transition: var(--transition2);

}



.theme-btn:hover i,

.theme-btn2:hover i{

  transform: rotate(0deg);

}



.theme-btn span,

.theme-btn2 span {

  margin-right: 5px;

}



.theme-btn2{

  background: var(--color-yellow);

  color: var(--color-white);

}



.theme-btn2::before {

  background: var(--theme-color2);

}



.theme-btn2:hover{

  color: var(--color-white);

}







/*====================

13. Header top css

======================*/



.header-top {

  padding: 10px 0;

  background: var(--theme-color2);

  position: relative;

}



.header-top .shape{

  position: absolute;

  right: 0;

  top: 0;

  height: 100%;

  width: 100%;

  overflow: hidden;

}



.header-top .shape-1{

  position: absolute;

  top: 0;

  right: -50px;

  width: 50%;

  height: 100%;

  background: var(--theme-color);

  transform: skewX(40deg);

  border-radius: 20px 0 0 0;

  border-left: 5px solid var(--color-white);

}



.header-top .shape-2{

  position: absolute;

  top: 0px;

  left: -30px;

  bottom: 0;

  width: 10%;

  background: var(--theme-color);

  border-radius: 0 0 20px 0;

  transform: skewX(40deg);

  border-right: 5px solid var(--color-white);

}



.header-top-wrap {

  display: flex;

  align-items: center;

  justify-content: space-between;

  flex-wrap: wrap;

  position: relative;

}



.header-top-list ul {

  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 25px;

}



.header-top-list a {

  color: var(--color-white);

  font-weight: 500;

}



.header-top-list a:hover{

  color: var(--theme-color)

}



.header-top-list a i{

  color: #fff;

  margin-right: 5px;

}



.header-top-right {

  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 15px;

}



.header-top-right .header-top-list a:hover{

  color: var(--theme-color2);

}



.header-top-right .header-top-list i{

  color: var(--color-white);

}



.header-top-social span{

  color: var(--color-white);

}



.header-top-social a {

  color: var(--color-white);

  font-size: 16px;

  text-align: center;

  margin-left: 14px;

  transition: var(--transition);

}



.header-top-social a:hover {

  color: var(--theme-color2);

}



.header-top-lang .top-lang{

  color: var(--color-white);

}



.header-top-lang .dropdown-menu{

  min-width: 60px;

  border-radius: 15px;

  padding: 10px;

  border: none;

  box-shadow: var(--box-shadow);

}



.header-top-lang .dropdown-item{

  color: var(--color-dark);

  border-radius: 10px;

}



.header-top-lang .dropdown-item:hover{

  background: var(--theme-color);

  color: var(--color-white);

}



@media all and (max-width: 1199px) {

  .header-top .shape-1{

    width: 48%;

  }



  .header-top .shape-2{

    width: 6%;

  }



  .header-top-list ul {

    gap: 10px;

  }



  .header-top-social a {

    width: 34px;

    height: 34px;

    line-height: 37px;

    margin-left: 0;

  }



  .header-top-left {

    margin-right: 5px;

  }

}



@media all and (max-width: 991px) {

  .header-top .shape-1{

    width: 55%;

  }



  .header-top .shape-2{

    width: 7%;

  }



  .header-top-list ul {

    gap: 0px;

  }



  .header-top-list ul li{

    margin-right: 10px;

  }



  .header-top-list ul li:last-child{

    display: none;

  }



  .header-top-lang .dropdown-toggle::after{

    margin-top: 12px;

  }



  .header-top-social span{

    display: none;

  }

}



@media all and (max-width: 767px) {

  .header-top .shape{

    display: none;

  }



  .header-top-social a:hover{

    color: var(--theme-color);

  }

}









/*====================

14. Navbar css

======================*/



.navbar {

  background: transparent;

  padding-top: 0px;

  padding-bottom: 0px;

  z-index: 4;

}



.navbar.fixed-top {

  position: fixed;

  background: var(--color-white);

  box-shadow: var(--box-shadow2);

  animation: slide-down 0.7s;

}



@keyframes slide-down {

  0% {

    transform: translateY(-100%);

  }



  100% {

    transform: translateY(0);

  }

}



.navbar .navbar-brand .logo-display {

  display: block;

}



.navbar .navbar-brand .logo-scrolled {

  display: none;

}



.navbar.fixed-top .navbar-brand .logo-display {

  display: none;

}



.navbar.fixed-top .navbar-brand .logo-scrolled {

  display: block;

}



.navbar-brand {

  margin-right: 0;

}



.navbar-brand img {

  width: 170px;

}





.navbar .dropdown-toggle::after {

    display: inline-block;

    margin-left: 7px;

    vertical-align: middle;

    content: "";

    width: 7px;

    height: 7px;

    border: solid currentColor;

    border-width: 0 1.5px 1.5px 0;

    transform: rotate(45deg);

    position: relative;

    top: -2px;

}



@media all and (min-width: 992px) {



  .navbar .nav-item .nav-link {

    /* margin-right: 40px; */
    
    margin-right: 15px;

    padding: 30px 0 30px 0;

    font-size: 15px;

    font-weight: 600;

    color: var(--color-dark);

    text-transform: capitalize;

  }



  .navbar.fixed-top .nav-item .nav-link{

    color: var(--color-dark);

  }



  .navbar .nav-item .nav-link.active,

  .navbar .nav-item:hover .nav-link {

    color: var(--theme-color);

  }



  .navbar .nav-item:last-child .nav-link {

    margin-right: 0;

  }



  .navbar .nav-item .dropdown-menu {

    display: block;

    padding: 10px;

    margin-top: 0;

    left: -15px;

    border-radius: 4px;

    border: none;

    background: var(--color-white);

    width: 220px;

    box-shadow: var(--box-shadow);

    opacity: 0;

    visibility: hidden;

    transition: var(--transition2);

  }



  .navbar .nav-item .dropdown-menu .dropdown-item {

    font-size: 16px;

    padding: 6px 15px;

    font-weight: 500;

    color: var(--color-dark);

    position: relative;

    overflow: hidden;

    border-radius: 10px;

    text-transform: capitalize;

    transition: var(--transition2);

    z-index: 1;

  }



  .navbar .nav-item .dropdown-menu .dropdown-item:hover {

    background: var(--theme-color);

    color: var(--color-white);

    padding-left: 25px;

  }



.navbar .nav-item .dropdown-menu .dropdown-item::before {

    content: "\f101";

    position: absolute;

    font-family: "Font Awesome 6 Free";

    font-weight: 900;

    left: -15px;

    top: 6px;

    color: #ffffff;

    opacity: 1;

    visibility: visible;

    transition: all 0.3s ease;

    z-index: 1;

}



  .navbar .nav-item .dropdown-menu .dropdown-item:hover::before {

    left: 0;

    opacity: 1;

    visibility: visible;

  }



  .navbar .nav-item:hover .dropdown-menu {

    transition: .3s;

    opacity: 1;

    visibility: visible;

    top: 100%;

    transform: rotateX(0deg);

  }



  .navbar .dropdown-menu-end {

    right: 0;

    left: auto;

  }



  .navbar .dropdown-menu.fade-down {

    top: 80%;

    transform: rotateX(-75deg);

    transform-origin: 0% 0%;

  }



  .navbar .dropdown-menu.fade-up {

    top: 140%;

  }



  /* nav right */

  .nav-right {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 30px;

    margin-left: 45px;

  }



  .nav-right-link {

    position: relative;

    font-size: 20px;

    color: var(--color-dark);

    border: none;

    padding: 0;

    background: transparent;

    transition: var(--transition);

  }



  .nav-right-link:hover {

    color: var(--theme-color);

  }



  .navbar.fixed-top .nav-right-link{

    color: var(--color-dark);

  }



  .navbar.fixed-top .nav-right-link:hover{

    color: var(--theme-color);

  }



  .nav-right .shop-cart .nav-right-link span{

    position: absolute;

    width: 18px;

    height: 18px;

    line-height: 18px;

    text-align: center;

    color: var(--color-white);

    background: var(--theme-color);

    border-radius: 50px;

    font-size: 12px;

    right: -10px;

    top: -6px;

  }



  .nav-right .call-wrap{

    display: flex;

    align-items: center;

    justify-content: flex-start;

    gap: 7px;

  }



  .nav-right .call-wrap .icon{

    width: 45px;

    height: 45px;

    line-height: 46px;

    border-radius: 50px;

    background: var(--theme-color);

    color: var(--color-white);

    text-align: center;

    font-size: 18px;

    margin-top: 5px;

  }



  .nav-right .call-wrap .content span{

   color: var(--theme-color);

   font-weight: 500;

  }



  .nav-right .call-wrap .content h6 a{

    color: var(--color-dark);

    font-weight: 800;

  }



  .nav-right .sidebar-btn span{

    display: block;

    width: 24px;

    border-bottom: 3px solid var(--color-dark);

    border-radius: 50px;

    margin-top: 6px;

    margin-left: auto;

    transition: var(--transition);

  }



  .nav-right .sidebar-btn span:first-child{

    width: 10px;

    margin-top: 0;

  }



  .nav-right .sidebar-btn span:nth-child(3){

    width: 15px;

  }



  /* navbar light */

  .navbar.light .nav-item .nav-link{

    color: var(--color-white);

  }



  .navbar.light.fixed-top .nav-item .nav-link{

    color: var(--color-dark);

  }



  .navbar.light .nav-item .nav-link.active,

  .navbar.light .nav-item:hover .nav-link {

    color: var(--theme-color);

  }



  .navbar.light .nav-right-link{

    color: var(--color-white);

  }



  .navbar.light.fixed-top .nav-right-link{

    color: var(--color-dark);

  }



  .navbar.light .nav-right-link:hover{

    color: var(--theme-color);

  }



  .navbar.light .nav-right .sidebar-btn span{

    border-color: var(--color-white);

  }



  .navbar.light.fixed-top .nav-right .sidebar-btn span{

    border-color: var(--color-dark);

  }

}



@media all and (max-width: 1199px) {

  .navbar .nav-item .nav-link {

    margin-right: 15px;

  }



  .nav-right {

    gap: 20px;

    margin-left: 25px;

  }



  .nav-right .sidebar-btn,

  .nav-right .call-wrap{

    display: none;

  }

}





/* navbar mobile menu */

.navbar .mobile-menu-right {

  display: none;

}



@media all and (max-width: 991px) {

  .navbar {

    padding-top: 10px;

    padding-bottom: 10px;

  }



  .navbar-brand img {

    width: 130px;

  }



  .navbar .offcanvas{

    width: 300px;

  }



  .navbar .offcanvas-header .btn-close{

    background: var(--color-red);

    width: 20px;

    height: 20px;

    line-height: 20px;

    text-align: center;

    border-radius: 50px;

    color: var(--color-white);

    font-size: 18px;

    box-shadow: none;

    opacity: 1;

  }



  .navbar .offcanvas-brand{

    width: 150px;

  }



  .navbar .nav-item .nav-link {

    color:  var(--color-dark);

    font-weight: 700;

    margin-right: 0px;

    transition: var(--transition);

  }



  .navbar .nav-item .nav-link:hover {

    color: var(--theme-color);

  }



  .navbar .nav-item .dropdown-menu {

    border-radius: 15px;

  }



  .navbar .nav-item .dropdown-toggle::after {

    float: right;

    margin-top: 2.5px;

  }



  .navbar-toggler {

    padding: 0;

    border: none;

  }



  .navbar-toggler:focus {

    outline: none;

    box-shadow: none;

  }



  .navbar-toggler span{

    display: block;

    width: 22px;

    border-bottom: 3px solid var(--color-dark);

    border-radius: 50px;

    margin-top: 5px;

  }



  .navbar-toggler span:first-child{

    margin-top: 0;

  }



  .navbar-toggler span:nth-child(2){

    width: 15px;

  }



  .navbar .mobile-menu-right {

    display: flex;

    align-items: center;

    gap: 20px;

  }



  .navbar .mobile-menu-right .nav-right-link {

    background: transparent;

    border: none;

    font-size: 20px;

    color: var(--color-dark);

  }



  .navbar .mobile-menu-right .nav-right-link:hover{

    color: var(--theme-color);

  }



  .nav-right {

    display: none;

  }



  /* navbar light */

  .navbar.light .navbar-toggler span{

    border-color: var(--color-white);

  }



  .navbar.light.fixed-top .navbar-toggler span{

    border-color: var(--color-dark);

  }



  .navbar.light .mobile-menu-right .nav-right-link {

    color: var(--color-white);

  }



  .navbar.light.fixed-top .mobile-menu-right .nav-right-link {

    color: var(--color-dark);

  }



  .navbar.light .mobile-menu-right .nav-right-link:hover{

    color: var(--theme-color);

  }

}







/*==============================

15. Navbar multi level dropdown

================================*/



.navbar .nav-item .dropdown-submenu {

  position: relative;

}



.navbar .nav-item .dropdown-submenu .dropdown-menu::before {

  display: none;

}



.navbar .nav-item .dropdown-submenu a::after {

  transform: rotate(-90deg);

  position: absolute;

  right: 15px;

  top: 8px;

  font-weight: 600;

}



.navbar .nav-item .dropdown-submenu a:hover {

  background: transparent;

  color: var(--color-white);

}



.navbar .nav-item .dropdown-submenu a:focus{

  background: transparent;

}



.navbar .nav-item .dropdown-submenu .dropdown-menu {

  top: 120%;

  left: 100%;

  opacity: 0;

  visibility: hidden;

}



.navbar .nav-item .dropdown-submenu:hover .dropdown-menu {

  top: 0;

  opacity: 1;

  visibility: visible;

}



@media all and (max-width: 991px) {

  .navbar .nav-item .dropdown-menu .dropdown-item{

    color: var(--color-dark)

  }



  .navbar .nav-item .dropdown-submenu .dropdown-menu {

    margin: 0 17px;

  }



  .navbar .nav-item .dropdown-submenu .dropdown-menu {

    opacity: unset;

    visibility: unset;

  }



  .navbar .nav-item .dropdown-submenu a::after {

    top: 3px;

  }



  .navbar .nav-item .dropdown-submenu a:hover {

    color: var(--theme-color);

  }

}







/*============================

16. Navbar mega menu

==============================*/



@media all and (min-width: 992px){

  .nav-item.mega-menu {

    position: static;

  }

  

  .navbar .nav-item.mega-menu .dropdown-menu{

    width: 98.2%;

    left: 12px;

  } 



  .navbar .mega-menu .mega-content{

    padding: 12px;

  }



  .navbar .mega-menu .mega-menu-title{

    font-size: 17px;

    margin-bottom: 15px;

    color: var(--color-dark);

  }



  .navbar .mega-menu-img img{

    border-radius: 15px;

  }



  .navbar .nav-item.mega-menu .dropdown-menu .dropdown-item{

    padding-left: 0;

  }



  .navbar .nav-item.mega-menu .dropdown-menu .dropdown-item::before{

    left: 0;

  }



  .navbar .nav-item.mega-menu .dropdown-menu .dropdown-item:hover{

    padding-left: 15px;

  }



  /* mega-menu small */

  .navbar .nav-item.mega-menu.small {

    position: relative;

  }



  .navbar .mega-menu.small .dropdown-menu{

    width: 340px;

    left: 50%;

    transform: translateX(-50%);

  } 

}





@media all and (max-width: 991px){

  .navbar .mega-menu-img{

    display: none;

  }



  .navbar .mega-menu .mega-content h5{

    margin: 15px 0;

  }

}









/* ======================

17. Search popup

====================== */



.search-popup {

  position: fixed;

  left: 0;

  top: 0;

  height: 100vh;

  width: 100%;

  z-index: 99999;

  margin-top: -540px;

  transform: translateY(-100%);

  background-color: rgba(0, 0, 0, .95);

  transition: all 1500ms cubic-bezier(0.860, 0.000, 0.070, 1.000);

  transition-timing-function: cubic-bezier(0.860, 0.000, 0.070, 1.000);

}



.search-active .search-popup {

  transform: translateY(0%);

  margin-top: 0;

}



.search-popup .close-search {

  position: absolute;

  left: 0;

  right: 0;

  top: 75%;

  border: none;

  margin: 0 auto;

  margin-top: -200px;

  border-radius: 50px;

  text-align: center;

  background: var(--color-red);

  text-align: center;

  width: 50px;

  height: 50px;

  color: var(--color-white);

  font-size: 20px;

  cursor: pointer;

  box-shadow: var(--box-shadow);

  transition: all 500ms ease;

  opacity: 0;

  visibility: hidden;

}



.search-active .search-popup .close-search {

  visibility: visible;

  opacity: 1;

  top: 50%;

  transition-delay: 1500ms;

}



.search-active .search-popup .close-search span{

  transition: var(--transition);

}



.search-active .search-popup .close-search:hover span{

  transform: rotate(180deg);

}



.search-popup form {

  position: absolute;

  max-width: 700px;

  top: 50%;

  left: 15px;

  right: 15px;

  margin: -35px auto 0;

  transform: scaleX(0);

  transform-origin: center;

  transition: all 300ms ease;

}



.search-active .search-popup form {

  transform: scaleX(1);

  transition-delay: 1200ms;

}



.search-popup .form-group {

  position: relative;

  margin: 0px;

  overflow: hidden;

}



.search-popup .form-control {

  position: relative;

  width: 100%;

  height: 70px;

  outline: none;

  border-radius: 0px;

  border: none;

  border-bottom: 2px solid var(--color-white);

  background-color: transparent;

  color: var(--color-white);

  font-size: 40px;

  padding: 0 70px 0 20px;

  transition: all 500ms ease;

  text-transform: capitalize;

}



.search-popup .form-control::placeholder{

  color: var(--color-white);

  font-size: 40px;

}



.search-popup .form-group button {

  position: absolute;

  right: 5px;

  top: 5px;

  border-radius: 50px;

  background: transparent;

  text-align: center;

  font-size: 30px;

  color: var(--color-white);

  height: 50px;

  width: 50px;

  border: none;

  cursor: pointer;

  transition: all 500ms ease;

}



.search-popup .form-group button:hover{

  color: var(--theme-color);

}







/*====================

18. Sidebar popup css 

======================*/



.sidebar-popup{

  padding: 20px;

}



.sidebar-popup .btn-close{

  background: var(--theme-color);

  width: 25px;

  height: 25px;

  line-height: 25px;

  text-align: center;

  border-radius: 50px;

  color: var(--color-white);

  font-size: 20px;

  transition: var(--transition);

  box-shadow: var(--box-shadow);

  opacity: 1;

}



.sidebar-popup .btn-close:hover{

  background: var(--color-red);

}



.sidebar-popup .btn-close i{

  transition: var(--transition);

}



.sidebar-popup .btn-close:hover i{

  transform: rotate(180deg);

}



.sidebar-popup-logo img{

  width: 180px;

}



.sidebar-popup-about{

  margin-top: 10px;

}



.sidebar-popup-about h4{

  margin-bottom: 10px;

  font-weight: 700;

}



.sidebar-popup-contact{

  margin-top: 20px;

}



.sidebar-popup-contact h4{

  margin-bottom: 15px;

  font-weight: 700;

}



.sidebar-popup-contact li{

  display: flex;

  gap: 12px;

  margin-bottom: 15px;

}



.sidebar-popup-contact li .icon{

  width: 35px;

  height: 35px;

  line-height: 35px;

  color: var(--color-white);

  background: var(--theme-color);

  text-align: center;

  border-radius: 50px;

}



.sidebar-popup-contact li a:hover{

  color: var(--theme-color);

}



.sidebar-popup-social{

  margin-top: 25px;

}



.sidebar-popup-social h4{

  margin-bottom: 20px;

  font-weight: 700;

}



.sidebar-popup-social a{

  width: 40px;

  height: 40px;

  line-height: 40px;

  text-align: center;

  border-radius: 50px;

  margin-right: 8px;

  background: var(--theme-color);

  color: var(--color-white);

  box-shadow: var(--box-shadow);

}



.sidebar-popup-social a:hover{

  background: var(--color-dark);

}









/*====================

19. Main section css 

======================*/



.main {

  margin-top: 0rem;

}







/*====================

20. Hero css 

======================*/



.hero-single {

  padding-top: 120px;

  padding-bottom: 150px;

  background-position: center !important;

  background-size: cover !important;

  background-repeat: no-repeat !important;

  display: flex;

  align-items: center;

  justify-content: center;

  position: relative;

  z-index: 1;

}



.hero-single::before {

  content: "";

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: -0.5px;

  /* background: linear-gradient(to bottom right, rgba(6, 78, 90, 1) 0%, rgba(6, 78, 90, 0) 100%); */

  z-index: -1;

  background: #000;

  opacity: 0.5;

}



.hero-single .hero-content {

  position: relative;

  height: 100%;

  z-index: 9;

}



.hero-single .hero-content .hero-sub-title {

  display: inline-block;

  color: var(--color-white);

  font-size: 18px;

  letter-spacing: 6px;

  font-weight: 700;

  position: relative;

  text-transform: uppercase;

}



.hero-single .hero-content .hero-sub-title::before{

  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  width: 100%;

  height: 15px;

  background: var(--theme-color);

  clip-path: polygon(5% 0%, 95% 0%, 100% 100%, 0% 100%);

  z-index: -1;

}



.hero-single .hero-content .hero-title {

  color: var(--color-white);

  font-size: 60px;

  font-weight: 700;

  margin: 20px 0;

  text-transform: capitalize;

}



.hero-single .hero-content .hero-title span{

  color: transparent;

  -webkit-text-stroke: 2px var(--color-white);

}



.hero-single .hero-content p {

  color: var(--color-white);

  font-size: 18px;

  line-height: 30px;

  font-weight: 400;

  margin-bottom: 20px;

}



.hero-single .hero-content .hero-btn {

  display: flex;

  justify-content: start;

  gap: 1rem;

  margin-top: 35px;

}



@media all and (max-width: 1199px) {

  .hero-single .hero-content .hero-title {

    font-size: 37px;

  }

}



@media all and (max-width: 991px) {

  .hero-single .hero-content .hero-title {

    font-size: 50px;

  }

}



@media all and (max-width: 767px) {

  .hero-single .hero-content .hero-sub-title {

    font-size: 18px;

  }



  .hero-single .hero-content .hero-btn {

    gap: 1rem;

  }

}





/* hero-slider */

.hero-slider .owl-nav {

  margin-top: 0px;

}



.hero-slider .owl-nav button i{

  display: inline-block;

  height: 55px;

  width: 55px;

  line-height: 55px;

  color: var(--theme-color);

  font-size: 25px;

  text-align: center;

  background: var(--color-white);

  border-radius: 50px;

  cursor: pointer;

  transition: var(--transition);

}



.hero-slider .owl-nav button:hover i{

  background: var(--theme-color);

  color: var(--color-white);

}



.hero-slider .owl-nav .owl-prev {

  left: 40px;

}



.hero-slider .owl-nav .owl-next {

  right: 40px;

}



.hero-slider .owl-nav .owl-prev,

.hero-slider .owl-nav .owl-next {

  position: absolute;

  top: 50%;

  transform: translate(0, -50%);

}



.hero-slider .owl-dots {

  position: absolute;

  left: 50%;

  bottom: 40px;

  transform: translateX(-50%);

  display: none;

}



.hero-slider .owl-dots .owl-dot span {

  display: inline-block;

  width: 15px;

  height: 15px;

  background-color: var(--color-white);

  border-radius: 0px;

  border: 3px solid var(--theme-color);

  margin: 5px;

  transition: var(--transition);

}



.hero-slider .owl-dots .owl-dot.active span {

  background-color: var(--theme-color);

}





@media all and (max-width: 1199px) {

  .hero-slider .owl-nav .owl-prev,

  .hero-slider .owl-nav .owl-next {

    top: unset;

    bottom: 45px;

  }



  .hero-slider .owl-nav .owl-prev {

    left: unset;

    right: 120px;

  }



  .hero-slider .owl-nav .owl-next {

    right: 40px;

  }

}







/*====================

21. Breadcrumb css

======================*/



.site-breadcrumb {

  display: flex;

  flex-direction: column;

  align-items: center;

  justify-content: center;

  text-align: center;

  background-repeat: no-repeat !important;

  background-position: center !important;

  background-size: cover !important;

  position: relative;

  padding-top: 120px;

  padding-bottom: 120px;

  z-index: 1;

}



.site-breadcrumb::before {

  content: "";

  position: absolute;

  height: 100%;

  width: 100%;

  top: 0;

  left: 0;

  background: var(--color-dark);

  opacity: 0.85;

  z-index: -1;

}



.site-breadcrumb .breadcrumb-title {

  font-size: 35px;

  color: var(--color-white);

  font-weight: 700;

  margin-bottom: 10px;

  text-transform: capitalize;

}



.site-breadcrumb .breadcrumb-menu {

  position: relative;

  z-index: 1;

}



.site-breadcrumb .breadcrumb-menu li {

  position: relative;

  display: inline-block;

  margin-left: 25px;

  color: var(--color-white);

  font-weight: 500;

  text-transform: capitalize;

}



.site-breadcrumb .breadcrumb-menu li a {

  color: var(--color-white);

  transition: all 0.5s ease-in-out;

}



.site-breadcrumb .breadcrumb-menu li::before {

  position: absolute;

  /* content: '\f101';

  font-family: 'Font Awesome 6 Pro'; */
  content: "\00BB";
  font-family: Arial, sans-serif;

  right: -21px;

  top: 1px;

  text-align: center;

  font-size: 16px;

  color: var(--color-white);

}



.site-breadcrumb .breadcrumb-menu li:first-child {

  margin-left: 0;

}



.site-breadcrumb .breadcrumb-menu li:last-child:before {

  display: none;

}



.site-breadcrumb .breadcrumb-menu li a:hover {

  color: var(--theme-color);

}



.site-breadcrumb .breadcrumb-menu li.active {

  color: var(--theme-color);

}







/* ===================

22. About css 

====================== */





.about-left{

  position: relative;

  margin-right: 40px;

}



.about-left::before{

  content: "";

  position: absolute;

  width: 50%;

  height: 100%;

  border-radius: 200px;

  border: 10px solid var(--theme-color);

  left: 50%;

  transform: translateX(-50%);

  z-index: -1;

}



.about-img img{

  border-radius: 200px;

}



.about-img .img-2{

  margin-top: 70px;

}



.about-right {

  position: relative;

  display: block;

}



.about-experience{

  background: var(--theme-color);

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  width: 150px;

  height: 150px;

  line-height: 1.2;

  border-radius: 100px;

  text-align: center;

  border: 10px solid var(--color-white);

}



.about-experience h5{

  color: var(--color-white);

  font-size: 40px;

  margin-top: 15px;

}



.about-experience p{

  color: var(--color-white);

  font-weight: 600;

}



.about-content {

  margin-top: 25px;

  margin-bottom: 35px;

}



.about-item{

  display: flex;

  gap: 12px;

  border: 1px solid var(--border-info-color);

  border-radius: 20px;

  padding: 15px;

  position: relative;

}



.about-item::before{

  content: "";

  position: absolute;

  left: 0;

  top: 30px;

  bottom: 30px;

  border-left: 2px solid var(--theme-color);

}



.about-item .icon{

  width: 65px;

  height: 65px;

  line-height: 65px;

  text-align: center;

  background: var(--theme-color);

  border-radius: 50px;

}



.about-item .icon img{

  width: 45px;

  filter: brightness(0) invert(1);

}



.about-item .content{

  flex: 1;

}



.about-item .content h6{

  color: var(--color-dark);

  font-size: 18px;

  margin-bottom: 5px;

}



.about-text{

  color: var(--body-text-color);

}





@media all and (max-width: 991px) {

  .about-right {

    margin-top: 80px;

  }

}



@media all and (max-width: 767px) {

  .about-left{

    margin-right: 0;

  }



  .about-title {

    font-size: 30px;

  }



  .about-img .img-2{

    margin-top: 60px;

    margin-left: -10px;

  }



  .about-img .img-3{

    margin-left: -30px;

  }



  .about-experience{

    right: -7px;

    bottom: -60px;

  }

}







/*====================

23. Feature css 

======================*/



.feature-area{

  position: relative;

  z-index: 1;

}



.fa-negative{

  margin-top: -100px;

}



.feature-item{

  display: flex;

  gap: 14px;

  background: var(--color-white);

  border-radius: 40px;

  padding: 20px;

  position: relative;

  box-shadow: var(--box-shadow);

}



.feature-item::before{

  content: "";

  position: absolute;

  left: 80px;

  right: 80px;

  bottom: 0;

  border-bottom: 3px solid var(--theme-color);

  border-radius: 50px;

}



.feature-item .count{

  position: absolute;

  left: 20px;

  bottom: 20px;

  font-size: 50px;

  line-height: 50px;

  font-weight: 700;

  color: transparent;

  -webkit-text-stroke: 1px var(--theme-color);

}



.feature-icon{

  width: 75px;

  height: 75px;

  line-height: 70px;

  text-align: center;

  background: var(--theme-color);

  border-radius: 30px;

}



.feature-icon img{

  width: 52px;

  filter: brightness(0) invert(1);

}



.feature-content{

  flex: 1;

}



.feature-content h4{

  color: var(--color-dark);

}



.feature-content p{

  color: var(--body-text-color);

  margin-top: 10px;

}



/* feature-area 2 */

.feature-area2 .feature-item{

  border-left: 5px solid var(--theme-color);

}



.feature-area2 .feature-item::before{

  display: none;

}



.feature-area2 .feature-icon{

  box-shadow: -5px 5px 0 var(--theme-color-light);

}





@media all and (max-width: 1199px) {

  .fa-negative{

    margin-top: -70px;

  }

}









/* ===================

24. Service css 

====================== */



.sa-bg{

  position: relative;

  background: var(--color-dark);

  z-index: 1;

}



.sa-bg::before{

  content: "";

  position: absolute;

  width: 100%;

  height: 100%;

  left: 0;

  top: 0;

  background-image: url(../img/shape/01.png);

  background-repeat: no-repeat;

  background-size: cover;

  background-position: center;

  opacity: .04;

  z-index: -1;

}



.service-item {

  position: relative;

  padding: 20px;

  background: var(--color-white);

  border-radius: 30px;

  transition: var(--transition);

}



.service-item:hover {

  transform: translateY(-5px);

}



.service-item .count{

  position: absolute;

  right: 30px;

  bottom: 20px;

  font-weight: 800;

  font-size: 70px;

  line-height: 70px;

  color: transparent;

  -webkit-text-stroke: 2px var(--theme-color);

}



.service-img img{

  border-radius: 20px;

}



.service-icon{

  position: absolute;

  width: 100px;

  height: 100px;

  line-height: 76px;

  text-align: center;

  background: var(--theme-color);

  border-radius: 50px 50px 50px 10px;

  border: 10px solid var(--color-white);

  margin-top: -70px;

  margin-left: -10px;

  transition: var(--transition);

}



.service-item:hover .service-icon{

  box-shadow: 0px 0px 0 var(--theme-color-light);

}



.service-icon img{

  width: 50px;

  filter: brightness(0) invert(1);

}



.service-content{

  margin-top: 35px;

}



.service-content h4 a{

  color: var(--color-dark);

}



.service-content h4 a:hover{

  color: var(--theme-color);

}



.service-content p{

  color: var(--body-text-color);

  margin-top: 8px;

  margin-bottom: 20px;

}



/* service-area 2 */

.service-area2 .service-item{

  background: var(--color-white);

}



.service-area2 .count{

  left: unset;

  bottom: unset;

  opacity: .2;

}



.service-area2 .service-icon{

  left: -15px;

  top: -15px;

  border-radius: 50px;

  border: 10px solid var(--theme-bg-light);

  margin: 0;

}



.service-area2 .service-content{

  margin-top: 80px;

}



/* service-slider */

.service-slider .service-item{

  transform: none;

}



.service-slider .service-icon img{

  width: 50px !important;

  display: unset !important;

}



.service-slider .owl-nav {

  margin-top: 0px;

}



.service-slider .owl-nav button{

  position: absolute;

  top: 50%;

  transform: translate(0, -50%);

  transition: var(--transition);

}



.service-slider .owl-nav button i{

  display: inline-block;

  height: 48px;

  width: 48px;

  line-height: 48px;

  color: var(--color-white);

  font-size: 25px;

  text-align: center;

  background: var(--theme-color);

  border-radius: 50px;

  cursor: pointer;

  transition: var(--transition);

}



.service-slider .owl-nav button:hover i{

  background: var(--theme-color);

  color: var(--color-white);

} 



.service-slider .owl-nav .owl-prev {

  left: 0px;

  opacity: 0;

}



.service-slider .owl-nav .owl-next {

  right: 0px;

  opacity: 0;

}



.service-slider:hover .owl-nav .owl-prev {

  left: -20px;

  opacity: 1;

}



.service-slider:hover .owl-nav .owl-next {

  right: -20px;

  opacity: 1;

}



@media all and (max-width: 1199px) {

  .service-slider .owl-nav {

    display: none;

  }

}









/* ======================

25. Service single

====================== */



.service-sidebar .widget{

  background: var(--color-white);

  padding: 30px;

  border-radius: 20px;

  margin-bottom: 30px;

  box-shadow: var(--box-shadow);

}



.service-sidebar .widget .title{

  position: relative;

  padding-bottom: 10px;

  margin-bottom: 30px;

}



.service-sidebar .widget .title::before{

  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  height: 3px;

  width: 50px;

  background: var(--theme-color);

  border-radius: 50px;

}



.service-sidebar .category a{

  display: block;

  font-size: 16px;

  color: var(--color-dark);

  font-weight: 500;

  padding-bottom: 7px;

  margin-bottom: 7px;

  border-bottom: 1px solid var(--border-info-color);

}



.service-sidebar .category a:hover{

  color: var(--theme-color);

  padding-left: 5px;

}



.service-sidebar .category a i{

  margin-right: 5px;

}



.service-sidebar .category a:last-child{

  padding: 0;

  margin: 0;

  border-bottom: none;

}



.service-sidebar .service-download a {

  display: block;

  color: var(--color-dark);

  font-weight: 500;

  border: 2px solid var(--theme-color);

  padding: 10px 20px;

  margin-bottom: 20px;

  border-radius: 50px;

  transition: var(--transition);

}



.service-sidebar .service-download a:last-child{

  margin-bottom: 0;

}



.service-sidebar .service-download a:hover{

  background: var(--theme-color);

  color: var(--color-white);

}



.service-sidebar .service-download a i {

  margin-right: 10px;

}



.service-details img{

  border-radius: 30px;

}



.service-details .content h3{

  color: var(--color-dark);

}



.service-details .content .list li{

  font-weight: 500;

  color: #000;

  margin-top: 5px;

}



.service-details .content .list i {

  color: var(--theme-color);

  margin-right: 10px;

}







/* ===================

26. Step/process css 

====================== */



.process-item {

  position: relative;

  background: var(--color-white);

  padding: 20px;

  border-radius: 30px;

  box-shadow: var(--box-shadow);

}



.process-item .count{

  display: block;

  font-weight: 700;

  color: var(--color-white);

  font-size: 19px;
  /* font-size: 20px;

  text-align: center; */

  background: var(--color-dark);

  padding: 2px 6px;

  border-radius: 50px 0 0 50px;

}



.process-item .icon{

  position: absolute;

  right: 0;

  top: 0;

  width: 65px;

  height: 65px;

  line-height: 58px;

  text-align: center;

  background: var(--theme-color);

  border-radius: 50px;

}



.process-item .icon img{

  width: 40px;

  filter: brightness(0) invert(1);

}



.process-item .content{

  margin-top: 20px;

}



.process-item .content h4{

  color: var(--color-dark);

}



.process-item .content p{

  color: var(--body-text-color);

  margin-top: 10px;

}







/* ===================

27. Skill css 

====================== */



.skill-img{

  position: relative;

}



.skill-img::before{

  content: "";

  position: absolute;

  right: 50px;

  bottom: 0;

  width: 92%;

  height: 100%;

  background: var(--theme-color);

  border-radius: 100px;

  transform: rotate(5deg);

  opacity: .2;

  z-index: -1;

}



.skill-img img{

  width: 85%;

  border-radius: 100px;

}



.skill-text{

  margin-top: 10px;

}



.skill-progress{

  margin-top: 25px;

}



.skill-progress .progress-item {

  margin-bottom: 25px;

}



.skill-progress .progress-item:last-child {

  margin-bottom: 0;

}



.skill-progress .progress-item h5 {

  font-size: 18px;

  text-transform: capitalize;

  font-weight: 700;

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-bottom: 15px;

}



.skill-progress .progress-item .progress {

  height: 8px;

  background-color: var(--theme-bg-light);

  border-radius: 50px;

}



.skill-progress .progress-item .progress .progress-bar {

  background-color: var(--theme-color);

}



@media all and (max-width: 767px) {

  .skill-img::before{

    right: 15px;

  }

}







/*====================

28. Portfolio css 

======================*/



.portfolio-area{

  position: relative;

}



.pa-bg{

  position: absolute;

  top: 0;

  left: 0;

  background-repeat: no-repeat;

  background-position: center;

  background-size: cover;

  width: 100%;

  height: 500px;

}



.pa-bg::before{

  content: "";

  position: absolute;

  top: 0;

  left: 0;

  background: var(--theme-color2);

  opacity: .85;

  width: 100%;

  height: 100%;

}



.portfolio-img {

  position: relative;

}



.portfolio-img img{

  border-radius: 50px;

}



.portfolio-img::before {

  content: '';

  position: absolute;

  top: 0px;

  left: 0px;

  width: 100%;

  height: 100%;

  opacity: 0;

  background: var(--theme-color);

  border-radius: 50px;

  transform: scaleY(0);

  transition: var(--transition);

}



.portfolio-item:hover .portfolio-img::before {

  opacity: .8;

  transform: scaleY(1);

}



.portfolio-link {

  position: absolute;

  width: 60px;

  height: 60px;

  line-height: 60px;

  color: var(--theme-color);

  background: var(--color-white);

  border-radius: 50px;

  text-align: center;

  left: 50%;

  top: 50%;

  font-size: 28px;

  margin-top: 50px;

  opacity: 0;

  box-shadow: var(--box-shadow);

  transform: translate(-50%, -50%);

  transition-delay: 0.3s;

}



.portfolio-link:hover{

  color: var(--theme-color);

}



.portfolio-item:hover .portfolio-link {

  margin-top: 0px;

  opacity: 1;

}



.portfolio-content{

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-top: 15px;

}



.portfolio-content small{

  text-transform: uppercase;

  font-weight: 600;

  color: var(--theme-color);

  letter-spacing: 2px;

}



.portfolio-content h4 a{

  font-size: 20px;

  color: var(--color-dark);

}



.portfolio-content h4 a:hover{

  color: var(--theme-color);

}



.portfolio-arrow{

  width: 45px;

  height: 45px;

  line-height: 45px;

  background: var(--theme-color);

  color: var(--color-white);

  text-align: center;

  border-radius: 50px;

}



.portfolio-arrow i{

  color: var(--color-white);

  transform: rotate(-45deg);

  transition: var(--transition);

}



.portfolio-arrow:hover i{

  transform: rotate(0);

}



/* portfolio-slider */

.portfolio-slider .owl-nav {

  margin-top: 0px;

}



.portfolio-slider .owl-nav button{

  position: absolute;

  top: 50%;

  margin-top: -35px;

  transform: translate(0, -50%);

  transition: var(--transition);

}



.portfolio-slider .owl-nav button i{

  display: inline-block;

  height: 48px;

  width: 48px;

  line-height: 48px;

  color: var(--color-white);

  font-size: 25px;

  text-align: center;

  background: var(--theme-color);

  border-radius: 50px;

  cursor: pointer;

  transition: var(--transition);

}



.portfolio-slider .owl-nav button:hover i{

  background: var(--theme-color);

  color: var(--color-white);

} 



.portfolio-slider .owl-nav .owl-prev {

  left: 0px;

  opacity: 0;

}



.portfolio-slider .owl-nav .owl-next {

  right: 0px;

  opacity: 0;

}



.portfolio-slider:hover .owl-nav .owl-prev {

  left: -10px;

  opacity: 1;

}



.portfolio-slider:hover .owl-nav .owl-next {

  right: -10px;

  opacity: 1;

}



@media all and (max-width: 1199px) {

  .portfolio-slider .owl-nav {

    display: none;

  }

}







/* ======================

29. Portfolio single

====================== */



.portfolio-sidebar .widget{

  background: var(--color-white);

  padding: 30px;

  border-radius: 20px;

  margin-bottom: 30px;

  box-shadow: var(--box-shadow);

}



.portfolio-sidebar .widget .title{

  position: relative;

  padding-bottom: 10px;

  margin-bottom: 30px;

}



.portfolio-sidebar .widget .title::before{

  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  height: 3px;

  width: 50px;

  background: var(--theme-color);

  border-radius: 50px;

}



.portfolio-sidebar .list li {

  border-bottom: 1px solid var(--border-info-color);

  display: block;

  margin-bottom: 10px;

  padding-bottom: 10px;

  text-transform: uppercase;

  font-size: 14px;

  color: var(--color-dark);

  font-weight: 600;

  line-height: 33px;

}



.portfolio-sidebar .list li:last-child {

  border-bottom: none;

  padding: 0;

  margin: 0;

}



.portfolio-sidebar .list li span {

  display: block;

  font-weight: normal;

  font-size: 16px;

  margin: 0;

  text-transform: none;

}



.portfolio-sidebar .project h4{

  color: var(--color-white);

  margin-bottom: 25px;

}



.portfolio-sidebar .rating a {

  color: var(--theme-color);

}



.portfolio-sidebar .project{

  background: var(--theme-color);

}



.portfolio-details img{

  border-radius: 30px;

}



.portfolio-details .content h3{

  color: var(--color-dark);

}



.portfolio-details .content .list li{

  font-weight: 500;

  color: var(--color-dark);

  margin-top: 5px;

}



.portfolio-details .content .list i {

  color: var(--theme-color);

  margin-right: 10px;

}









/* ===================

30. Pricing css 

====================== */



.pricing-area{

  position: relative;

}



.pricing-item {

    background: var(--color-white);

    border-radius: 8px;

    position: relative;

    padding: 40px 15px;

    box-shadow: var(--box-shadow);

    transition: var(--transition);

    z-index: 1;

    /* min-height: 547px; */
  min-height: 100%;

}





.pricing-item:hover{

  transform: translateY(-10px);

}



.pricing-item .shape .img-1{

  position: absolute;

  width: 150px;

  height: 150px;

  left: 50px;

  top: 10px;

  opacity: .1;

  z-index: -1;

}



.pricing-item .shape .img-2{

  position: absolute;

  left: 0;

  bottom: 0;

  opacity: .1;

  border-radius: 0 0 40px 40px;

  z-index: -1;

}



.pricing-header-wrap{

  margin-bottom: 30px;

}



.pricing-header{

  position: absolute;

  right: -10px;

  top: 20px;

  background: var(--theme-color);

  padding: 0 15px;

  box-shadow: var(--box-shadow);

  border-radius: 50px;

  letter-spacing: 4px;

}



.pricing-header h5 {

  font-size: 22px;

  font-weight: 600;

  text-transform: capitalize;

  display: inline-block;

  color: var(--color-white);

}



.pricing-amount{

  margin-top: 20px;

  margin-bottom: 0px;

}



.pricing-amount strong {

  font-size: 50px;

  font-weight: 900;

  color: var(--color-dark);

  line-height: 1;

}



.pricing-amount-type {

  color: var(--color-dark);

  font-size: 16px;

  font-weight: 500;

}



.pricing-text{

  color: var(--color-dark);

  text-transform: uppercase;

  font-size: 15px;

}



.pricing-feature {

  padding: 40px 0 0 0;

}



.pricing-feature li {

  margin-bottom: 15px;

  color: var(--color-dark);

  font-weight: 500;

}



.pricing-feature li:last-child {

  margin-bottom: 0px;

}



.pricing-feature li i {

  color: var(--theme-color);

  margin-right: 10px;

}



.pricing-feature li .not-include{

  color: var(--body-text-color);

} 



.pricing-item .theme-btn{

  width: 100%;

}



.pricing-item.active{

  outline: 3px solid var(--theme-color);

}



@media all and (max-width: 991px) {

  .pricing-amount strong {

    font-size: 50px;

  }

}







/* ===================

31. Counter css 

====================== */



.counter-area {

  position: relative;

  background: var(--color-dark);

  overflow: hidden;

  z-index: 1;

}



.counter-area::before{

  content: "";

  position: absolute;

  left: 0;

  top: 0;

  width: 100%;

  height: 100%;

  background-image: url(../img/shape/04.png);

  background-repeat: no-repeat;

  background-position: center;

  background-size: cover;

  opacity: .07;

}



.counter-box {

  display: flex;

  gap: 12px;

  position: relative;

  padding: 20px 15px 20px 20px;

  border-radius: 15px;

  border: 2px solid var(--border-white-color);

  box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);

  z-index: 1;

}



.counter-box::before{

  content: "";

  position: absolute;

  left: -1px;

  top: 25px;

  bottom: 25px;

  border-left: 3px solid var(--theme-color);

  border-radius: 5px;

  z-index: -1;

}



.counter-box .icon {

  width: 80px;

  height: 80px;

  line-height: 70px;

  font-size: 35px;

  border-radius: 50px;

  text-align: center;

  color: var(--color-white);

  background: var(--color-white);

}



.counter-box .icon img{

  width: 50px;

}



.counter-box .info{

  display: flex;

  gap: 2px;

}



.counter-box .counter {

  display: block;

  line-height: 1;

  color: var(--color-white);

  font-size: 50px;

  font-weight: 900;

}



.counter-box .unit{

  font-size: 25px;

  color: var(--theme-color);

  font-weight: 500;

  line-height: 1;

  margin: 3px 0 0 3px;

}



.counter-box .title {

  color: var(--color-white);

  margin-top: 10px;

  font-size: 18px;

  font-weight: 600;

  text-transform: capitalize;

}







/* ===================

32. Team css 

====================== */



.team-area{

  position: relative;

}



.team-img{

  position: relative;

}



/* .team-img img{

  border-radius: 50%;

} */

.team-img img{

  border-radius: 10px 70px;

}

.team-social-btn{

  position: absolute;

  right: -3px;

  bottom: 0;

  width: 60px;

  height: 60px;

  background: var(--color-white);

  border-top-left-radius: 50%;

  padding: 9.5px;

}



.team-social-btn::before{

  content: "";

  position: absolute;

  left: -18px;

  bottom: 5px;

  width: 18px;

  height: 18px;

  background: transparent;

  box-shadow: 5px 5px 0 5px var(--color-white);

  border-bottom-right-radius: 50px;

}



.team-social-btn::after{

  content: "";

  position: absolute;

  top: -18px;

  right: 6.5px;

  width: 18px;

  height: 18px;

  background: transparent;

  box-shadow: 5px 5px 0 5px var(--color-white);

  border-bottom-right-radius: 50px;

}



.team-social-btn button{

  width: 42px;

  height: 42px;

  line-height: 42px;

  background: var(--theme-color);

  color: var(--color-white);

  border-radius: 50%;

  text-align: center;

  font-size: 18px;

  border: none;

}



.team-social{

  position: absolute;

  right: 9px;

  bottom: 40px;

  text-align: center;

  opacity: 0;

  visibility: hidden;

  transition: var(--transition);

}



.team-social a {

  display: inline-block;

  width: 40px;

  height: 40px;

  line-height: 40px;

  margin-bottom: 10px;

  background: var(--color-white);

  color: var(--theme-color);

  border-radius: 50px;

}



.team-social a:hover {

 background: var(--theme-color);

 color: var(--color-white);

}



.team-social-wrap:hover .team-social{

  opacity: 1;

  visibility: visible;

  bottom: 60px;

}



.team-content{

  text-align: center;

  margin-top: 10px;

}



.team-content h4 a{

  color: var(--color-dark);

  font-size: 20px;

}



.team-content h4 a:hover{

  color: var(--theme-color);

}



.team-content span{

  color: var(--theme-color);

  font-weight: 500;

}



/* team-area 2 */

.team-area2 .team-img img{

  border-radius: 50px 50px 0 50px;

}



.team-area2 .team-social-btn{

  border-radius: 50px;

  padding: 5px;

  width: unset;

  height: unset;

  right: -8px;

  bottom: -8px;

}



.team-area2 .team-social-btn::before,

.team-area2 .team-social-btn::after{

  display: none;

}



.team-area2 .team-content{

  text-align: left;

}



@media all and (max-width: 767px) {

  .team-social-btn::before{

    left: -18px;

    bottom: 0px;

  }



  .team-social-btn::after{

    top: -18px;

    right: 3px;

  }

}







/* ===================

33. Video css 

====================== */



.video-area {

  position: relative;

  background-repeat: no-repeat;

  background-position: center;

  background-size: cover;

  clip-path: polygon(0 15%, 100% 0%, 100% 85%, 0% 100%);

}



.video-area::before {

  content: "";

  position: absolute;

  background: var(--theme-color2);

  width: 100%;

  height: 100%;

  left: 0;

  top: 0;

  opacity: .2;

}



.video-wrap {

  position: relative;

  display: flex;

  justify-content: center;

  border-radius: 5px;

  height: 500px;

}



.video-wrap img {

  border-radius: 12px;

}



.video-wrap .play-btn {

  display: inline-block;

  padding: 0;

  height: 75px;

  width: 75px;

  text-align: center;

  position: absolute;

  border-radius: 50%;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

}



@media all and (max-width: 767px) {

  .video-wrap {

    height: 400px;

  }

}







/*====================

34. Quote css 

======================*/



.quote-area{

  position: relative;

  overflow: hidden;

}



.quote-area .shape{

  position: absolute;

  right: 0;

  bottom: 0;

  width: 26%;

  opacity: .1;

}



.quote-header{

  border-bottom: 1px solid var(--border-info-color);

  padding-bottom: 20px;

  margin-bottom: 30px;

}



.quote-header h4{

  font-size: 24px;

}



.quote-form{

  padding: 45px 0;

}



.quote-img img{

  position: absolute;

  left: 0;

  top: 0;

  width: 48%;

}



.quote-area .play-btn{

  width: 100px;

  height: 100px;

  line-height: 80px;

  top: 50%;

  left: 20%;

  transform: translateY(-50%);

  border: 10px solid var(--theme-bg-light);

}



@media all and (max-width: 991px) {

  .quote-img img{

    position: relative;

    width: 100%;

    border-right: none;

    border-bottom: 5px solid var(--theme-color);

  }



  .quote-area .play-btn{

    left: 45%;

  }

}



@media all and (max-width: 767px) {

  .quote-area .play-btn{

    top: 21%;

    left: 40%;

    transform: unset;

  }

}









/*====================

35. Location css 

======================*/



.location-map {

  position: relative;

}



.location-item {

  position: absolute;

  left: 10%;

  top: 24%;

}



.location-item:nth-child(2){

  left: 36%;

  top: 66%;

}



.location-item:nth-child(3){

  left: 38%;

  top: 10px;

}



.location-item:nth-child(4){

  left: 50%;

  top: 35%;

}



.location-item:nth-child(5){

  left: 80%;

  top: 16%;

}



.location-item:nth-child(6){

  left: 94%;

  top: 88%;

}



.location-item:nth-child(7){

  left: 28%;

  top: 27%;

}



.location-item:nth-child(8){

  left: 57%;

  top: 58%;

}



.location-item:nth-child(9){

  left: 74%;

  top: 47%;

}



.location-item:nth-child(10){

  left: 94%;

  top: 18%;

}



.location-item:nth-child(11){

  left: 63%;

  top: 18%;

}



.location-item:nth-child(12){

  left: 83%;

  top: 75%;

}



.location-item .point{

  position: relative;

  display: inline-block;

  width: 10px;

  height: 10px;

  background: var(--theme-color);

  border-radius: 50%;

  cursor: pointer;

  z-index: 1;

}



.location-item .point::after{

  content: "";

  position: absolute;

  width: 100%;

  height: 100%;

  left: 0;

  top: 0;

  background: var(--theme-color);

  border-radius: 50%;

  transform: scale(1);

  animation: ripple-1 1.5s 0s infinite;

  z-index: -1;

}



.location-item .info{

  padding: 8px 15px;

  position: relative;

  position: absolute;

  width: max-content;

  transform: translateX(-50%);

  left: 5.2px;

  bottom: 20px;

  background: var(--theme-color);

  border-radius: 50px;

  opacity: 0;

  visibility: hidden;

  transition: var(--transition);

  z-index: 1;

}



.location-item .info::after{

  content: "";

  position: absolute;

  width: 0;

  height: 0;

  border-left: 8px solid transparent;

  border-right: 8px solid transparent;

  border-top: 12px solid var(--theme-color);

  bottom: -10px;

  left: 50%;

  transform: translateX(-50%);

}



.location-item .info h5 {

  font-size: 15px;

  color: var(--color-white);

}



.location-item.active .info{

  opacity: 1;

  visibility: visible;

  bottom: 30px;

}



@keyframes ripple-1 {

  0% {

      transform: scale(1);

      opacity: 0.8;

  }

  100% {

      transform: scale(3);

      opacity: 0;

  }

}







/* ===================

36. Cta css 

====================== */



.cta-area{

  position: relative;

  background-repeat: no-repeat;

  background-size: cover;

  background-position: center;

  background-attachment: fixed;

  overflow: hidden;

  z-index: 1;

}



.cta-area::before{

  content: "";

  position: absolute;

  width: 100%;

  height: 100%;

  left: 0;

  top: 0;

  background: var(--theme-color2);

  opacity: .9;

  z-index: -1;

}



.cta-area::after{

  content: "";

  position: absolute;

  width: 550px;

  height: 550px;

  left: 50%;

  top: -50px;

  transform: translateX(-50%);

  background: var(--theme-color);

  border-radius: 50%;

  opacity: .2;

  z-index: -1;

}



.cta-content{

  text-align: center;

}



.cta-content h1{

  color: var(--color-white);

  text-transform: capitalize;

  font-weight: 700;

  margin-bottom: 10px;

}



.cta-content p{

  color: var(--color-white);

  font-size: 16px;

  margin-bottom: 30px;

}



.cta-content .theme-btn{

  background: var(--theme-color);

  color: var(--color-white);

}







/* ===================

37. Partner css 

====================== */



.pa-negative{

  position: relative;

  margin-top: -60px;

  z-index: 1;

}



.partner-wrapper{

  background: var(--color-white);

  box-shadow: var(--box-shadow);

  border-radius: 30px;

  padding: 20px 5px;

}







/* ===================

38. Choose css 

====================== */



.choose-area{

  position: relative;

}



.choose-item{

  display: flex;

  gap: 20px;

  margin: 30px 0;

}



.choose-item-icon{

  position: relative;

  width: 60px;

  height: 60px;

  line-height: 55px;

  background: var(--theme-color);

  text-align: center;

  border-radius: 50px;

}



.choose-item-icon::before{

  content: "";

  position: absolute;

  inset: -5px;

  border: 2px dashed var(--theme-color);

  border-radius: 50px;

}



.choose-item-icon img{

  width: 42px;

  filter: brightness(0) invert(1);

}



.choose-item-info{

  flex: 1;

}



.choose-item-info h4{

  color: var(--color-dark);

  margin-bottom: 8px;

  font-size: 20px;

  font-weight: 700;

}



.choose-item-info p{

  color: var(--body-text-color);

}



.choose-img{

  position: relative;

  text-align: right;

}



.choose-img .img-1{

  width: 70%;

  border-radius: 100px;

}



.choose-img .img-2{

  position: absolute;

  left: 0;

  bottom: -135px;

  width: 80%;

  border-radius: 100px;

  border: 15px solid var(--color-white);

}



.choose-img .shape{

  position: absolute;

  left: 0;

  top: 70px;

  width: 180px;

  z-index: -1;

}



@media all and (max-width: 991px) {

  .choose-img .img-2{

    width: 70%;

    bottom: -50px;

  }

}







/*====================

39. Shop css 

======================*/



/* shop sidebar */

.shop-sidebar{

  position: relative;

}



.shop-sidebar .widget{

  padding: 20px;

  background: var(--color-white);

  border-radius: 20px;

  margin-bottom: 30px;

}



.shop-sidebar .title {

  margin-bottom: 25px;

  padding-bottom: 10px;

  font-size: 20px;

  position: relative;

  color: var(--color-dark);

}



.shop-sidebar .title::before {

  position: absolute;

  content: '';

  width: 30px;

  border-bottom: 3px solid var(--theme-color);

  bottom: 0;

  left: 0;

}



.shop-sidebar .title::after {

  position: absolute;

  content: '';

  width: 5px;

  border-bottom: 3px solid var(--theme-color);

  bottom: 0;

  left: 35px;

}



.shop-sidebar .search-form .form-group {

  position: relative;

  margin-bottom: 0;

}



.shop-sidebar .search-form .form-control {

  padding: 12px 45px 12px 15px;

  color: var(--color-dark);

}



.shop-sidebar .search-form button {

  position: absolute;

  right: 0;

  top: 0;

  padding: 10px 18px 6px 18px;

  background: transparent;

  border: none;

  color: var(--theme-color);

}



.shop-sidebar .widget ul li {

  margin-bottom: 10px;

}



.shop-sidebar .widget ul li:last-child,

.shop-sidebar .widget ul li:last-child .form-check{

  margin-bottom: 0;

}



.shop-sidebar .widget .form-check {

  margin-bottom: 7px;

}



.shop-sidebar .tags a {

  margin: 10px 6px 0 0;

  padding: 4px 15px;

  border-radius: 50px;

  background: var(--theme-bg-light);

  color: var(--color-dark);

  transition: var(--transition);

}



.shop-sidebar .tags a:hover {

  background: var(--theme-color);

  color: var(--color-white);

}



.shop-sidebar .widget-banner{

  background-position: center;

  background-repeat: no-repeat;

  background-size: cover;

  position: relative;

  margin-bottom: 0;

  border-radius: 20px;

  z-index: 1;

}



.shop-sidebar .widget-banner::before {

  content: "";

  position: absolute;

  left: 0;

  top: 0;

  width: 100%;

  height: 100%;

  background: var(--theme-color2);

  border-radius: 20px;

  opacity: .6;

  z-index: -1;

}



.shop-sidebar .widget-banner .content {

  padding: 120px 20px 100px 20px;

}



.shop-sidebar .widget-banner .content h3 {

  color: var(--color-white);

  font-size: 25px;

  font-weight: 700;

}



.shop-sidebar .widget-banner .content h3 span {

  color: var(--theme-color);

}



/* shop sort */

.shop-sort {

  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 10px 10px 10px 20px;

  margin-bottom: 20px;

  background: var(--color-white);

  border-radius: 20px;

}



.shop-sort h5 {

  color: var(--color-dark);

}



.shop-sort-box {

  width: 220px;

}



.shop-sort .nice-select{

  margin-bottom: 0;

}



@media all and (max-width: 767px) {

  .shop-sort{

    gap: 20px;

    flex-direction: column;

  }

}





/* shop item */

.shop-item {

  background: var(--color-white);

  border-radius: 20px;

}



.shop-item-info {

  padding-top: 10px;

  padding-bottom: 20px;

  text-align: center;

}



.shop-item-title {

  font-size: 20px;

  color: var(--color-dark);

  transition: var(--transition);

}



.shop-item-title:hover {

  color: var(--theme-color);

}



.shop-item-price {

  font-size: 18px;

  color: var(--theme-color);

  font-weight: 700;

  margin-top: 5px;

}



.shop-item-price del {

  color: var(--color-dark);

  margin-right: 10px;

  font-weight: 500;

}



.shop-item-img {

  text-align: center;

  position: relative;

  z-index: 1;

}



.shop-item-img::before {

  content: "";

  top: 5px;

  left: 5px;

  right: 5px;

  bottom: 5px;

  position: absolute;

  background: var(--theme-color);

  border-radius: 20px;

  transform: scale(0.9);

  visibility: hidden;

  opacity: 0;

  transition: var(--transition2);

  z-index: 2;

}



.shop-item:hover .shop-item-img::before {

  transform: scale(1);

  visibility: visible;

  opacity: 0.5;

}



.shop-item-sale {

  position: absolute;

  padding: 0px 14px;

  border-radius: 50px;

  text-align: center;

  right: 10px;

  top: 10px;

  font-size: 16px;

  color: var(--color-white);

  background: var(--theme-color);

  z-index: 2;

}



.shop-item-meta {

  position: absolute;

  top: 40px;

  left: 0px;

  visibility: hidden;

  opacity: 0;

  z-index: 3;

  transition: var(--transition);

}



.shop-item-meta a {

  display: block;

  width: 40px;

  height: 40px;

  line-height: 43px;

  border-radius: 50px;

  text-align: center;

  background: var(--color-white);

  color: var(--theme-color);

  margin-bottom: 15px;

  font-size: 18px;

}



.shop-item-meta a:hover {

  background: var(--theme-color);

  color: var(--color-white);

}



.shop-item:hover .shop-item-meta {

  left: 20px;

  visibility: visible;

  opacity: 1;

}



.shop-cart-btn {

  position: absolute;

  bottom: 40px;

  left: 0;

  right: 0;

  text-align: center;

  z-index: 3;

  visibility: hidden;

  opacity: 0;

  transition: var(--transition2);

}



.shop-item-btn {

  background: var(--theme-color);

  color: var(--color-white);

  padding: 10px 25px;

  font-weight: 500;

  text-transform: uppercase;

  transition: all .5s ease-in-out;

}



.shop-item-btn:hover {

  background: var(--color-white);

  color: var(--theme-color);

}



.shop-item-btn i {

  margin-right: 5px;

}



.shop-item:hover .shop-cart-btn {

  bottom: 60px;

  visibility: visible;

  opacity: 1;

}



.shop-item-rate {

  color: var(--theme-color);

  margin-bottom: 5px;

}



/* shop cart */

.shop-cart thead tr {

  background: var(--theme-color);

  color: var(--color-white);

}



.shop-cart thead tr th {

  color: var(--color-dark);

  text-transform: uppercase;

  font-weight: 500;

}



.shop-cart thead tr th,

.shop-cart thead tr td {

  white-space: nowrap;

}



.shop-cart .cart-img {

  width: 80px;

}



.shop-cart .cart-img img {

  width: 100%;

  border: 1px solid var(--border-info-color);

  border-radius: 15px;

}



.shop-cart tr td {

  color: var(--color-dark);

  vertical-align: middle;

  border-bottom: 1px solid var(--border-info-color);

  border-top: none;

  position: relative;

  padding: 20px 10px;

  font-size: 16px;

}



.shop-cart .cart-qty {

  width: 150px;

}



.shop-cart .cart-qty button {

  color: var(--color-dark);

  border: 0;

  padding: 4px 13px;

  background: var(--theme-bg-light);

  border-radius: 8px;

}



.shop-cart .cart-qty button i{

  font-weight: 500;

}



.shop-cart .cart-qty input {

  width: 50px;

  padding: 4px 13px;

  border: none;

  background: var(--theme-bg-light);

  border-radius: 8px;

  color: var(--color-dark);

  text-align: center;

}



.shop-cart .cart-remove:hover {

  color: var(--theme-color);

}



.shop-cart .cart-footer {

  margin-top: 40px;

}



.shop-cart .cart-coupon{

  margin-bottom: 25px;

}



.shop-cart .cart-coupon .form-group{

  position: relative;

}



.shop-cart .cart-coupon .form-control {

  padding: 15px 110px 15px 20px;

  color: var(--color-dark);

}



.shop-cart .cart-coupon .theme-btn {

  position: absolute;

  right: 5px;

  top: 5.5px;

  padding: 8px 18px;

}



.shop-cart .cart-summary {

  float: right;

}



.shop-cart .cart-summary li {

  margin-bottom: 10px;

  width: 200px;

}



.shop-cart .cart-summary li span {

  float: right;

  color: var(--color-dark);

}



.shop-cart .cart-summary li strong {

  color: var(--color-dark);

}



.shop-cart .cart-total {

  padding-top: 10px;

  border-top: 1px solid var(--border-info-color);

}



.shop-cart .cart-total span {

  font-weight: bold;

  color: var(--theme-color);

}



/* shop checkout */

.shop-checkout .widget {

  background: var(--theme-bg-light);

  padding: 30px;

  margin-bottom: 30px;

  border-radius: 20px;

}



.shop-checkout .widget .title {

  font-size: 25px;

  border-bottom: 1px solid var(--border-info-color);

  padding-bottom: 18px;

  margin-bottom: 20px;

}



.shop-checkout .cart-summary {

  float: none;

  background: var(--theme-bg-light);

  border-radius: 20px;

  padding: 30px;

  margin-bottom: 30px;

}



.shop-checkout .cart-summary h4 {

  font-size: 25px;

}



.shop-checkout .cart-summary li {

  width: 100%;

}



/* shop single */

.shop-single{

  position: relative;

}



.shop-single-gallery .flexslider-thumbnails img {

  width: 100%;

  background: var(--color-white);

  border-radius: 20px;

}



.shop-single-gallery .flex-control-thumbs {

  display: flex;

  align-items: center;

  gap: 10px;

  margin-top: 10px;

}



.shop-single-gallery .flex-control-thumbs li {

  width: unset; 

  float: unset;

  margin: 0;

  padding: 0;

}



.shop-single-gallery .flex-control-thumbs img {

  padding: 0;

  border: none;

}



.shop-single-info .title{

  font-size: 28px;

}



.shop-single-info .rating {

  margin: 10px 0;

}



.shop-single-info .rating i {

  color: var(--theme-color);

}



.shop-single-info .rating-count {

  margin-left: 10px;

  display: inline-block;

}



.shop-single-info .price {

  margin-top: 15px;

  margin-bottom: 15px;

}



.shop-single-info .price del {

  margin-right: 10px;

}



.shop-single-info .price span {

  color: var(--theme-color);

}



.shop-single-info .content h5 {

  margin-bottom: 15px;

}



.shop-single-info .content span {

  font-weight: normal;

  margin-left: 20px;

}



.shop-single-info .action-wrap {

  display: flex;

  align-items: center;

  justify-content: start;

  gap: 15px;

  margin-bottom: 20px;

}



.shop-single-info .action-wrap .cart-qty {

  width: 150px;

}



.shop-single-info .action-wrap .cart-qty button {

  color: var(--color-dark);

  border: 0;

  padding: 4px 13px;

  background: var(--color-white);

  border-radius: 8px;

}



.shop-single-info .action-wrap .cart-qty button i{

  font-weight: 500;

}



.shop-single-info .action-wrap .cart-qty input {

  width: 50px;

  padding: 4px 13px;

  border: none;

  background: var(--color-white);

  border-radius: 8px;

  color: var(--color-dark);

  text-align: center;

}



.shop-single-info .action-btns .theme-btn {

  padding: 10px 15px;

  margin-right: 20px;

}



.shop-single-info .action-btns .theme-btn span {

  margin-right: 5px;

}



.shop-single-info .action-btns .action-btn {

  width: 45px;

  height: 45px;

  line-height: 43px;

  margin-right: 5px;

  font-size: 18px;

  border-radius: 50px;

  text-align: center;

  border: 2px solid var(--theme-color);

  color: var(--theme-color);

  transition: all .5s ease-in-out;

}



.shop-single-info .action-btns .action-btn:hover {

  background: var(--theme-color);

  color: var(--color-white);

}



.shop-single-info .share {

  margin-top: 30px;

}



.shop-single-info .share span {

  font-weight: bold;

  text-transform: uppercase;

  color: var(--color-dark);

  display: inline-block;

}



.shop-single-info .share a {

  width: 38px;

  height: 38px;

  line-height: 35px;

  text-align: center;

  border-radius: 50px;

  border: 2px solid var(--theme-color);

  color: var(--theme-color);

  margin-left: 5px;

}



.shop-single-info .share a:hover {

  background: var(--theme-color);

  color: var(--color-white);

}



.shop-single-details {

  margin-top: 30px;

}



.shop-single-desc {

  padding-top: 40px;

}



.shop-single-more-info {

  padding-top: 40px;

}



.shop-single-review {

  padding-top: 40px;

}



.shop-single-details .nav-tabs {

  border-width: 2px;

}



.shop-single-details .nav-tabs .nav-link {

  color: var(--color-dark);

  font-size: 20px;

  padding: 15px 25px;

  font-weight: 500;

  border: none;

  background: transparent;

  border-bottom: 2px solid transparent;

}



.shop-single-details .nav-tabs .nav-link:hover,

.shop-single-details .nav-tabs .nav-link.active {

  border-bottom: 2px solid var(--theme-color);

  color: var(--theme-color);

}



.shop-single-details .blog-comment-form{

  background: var(--color-white) !important;

}



.shop-single .related-item {

  margin-top: 80px;

}



.shop-single .related-item .site-title {

  font-size: 30px;

}



@media all and (max-width: 767px) {

  .shop-single-info .action-wrap {

    flex-direction: column;

    justify-content: flex-start;

    align-items: flex-start;

  }

}









/*===================

40. Price range css 

=====================*/



.price-range-box{

  margin-bottom: 15px;

}



.price-range.ui-widget-content {

  border: none;

  background: #E8E8E8;

  height: 5px;

  border-radius: 3px;

}



.price-range .ui-state-default,

.price-range .ui-widget-content .ui-state-default {

  top: -7px;

  width: 18px;

  height: 18px;

  border: none;

  border-radius: 50%;

  cursor: pointer;

  margin-left: 0px;

  background: var(--theme-color);

}



.price-range .ui-state-focus {

  outline: none;

}



.price-range .ui-widget-header {

  background: var(--theme-color);

  border-radius: 0 !important;

}



.price-range-input input {

  border: none;

  margin-bottom: 20px;

  color: var(--theme-color);

  background: transparent;

  font-weight: 700;

  outline: none;

}









/*====================

41. Testimonial css 

======================*/



.testimonial-area {

  position: relative;

}



.tm-bg{

  position: relative;

  background: var(--theme-color2);

}



.tm-bg::before{

  content: "";

  position: absolute;

  width: 100%;

  height: 100%;

  left: 0;

  top: 0;

  background-image: url(../img/shape/07.png);

  background-repeat: no-repeat;

  background-size: cover;

  background-position: center;

  opacity: .1;

}



.testimonial-item {

  position: relative;

  background: var(--color-white);

  padding: 15px 30px;

  border-bottom: 5px solid var(--theme-color);

  border-radius: 50px;

  margin-bottom: 35px;

  height: 340px;

}



@media (max-width:575px) {



 .testimonial-item {

  height: auto;

}



}



.testimonial-quote p{

  position: relative;

  color: var(--color-dark);

  font-size: 18px;

  font-style: italic;

  font-weight: 500;

  z-index: 1;

}



.testimonial-content{

  display: flex;

  align-items: center;

  gap: 12px;

  margin-top: 15px;

}



.testimonial-author-img img {

  width: 60px !important;

  border-radius: 50px;

}



.testimonial-author-info h4 {

  font-size: 20px;

  color: var(--color-dark);

}



.testimonial-author-info p {

  color: var(--theme-color);

  font-weight: 500;

}



.testimonial-quote-icon{

  position: absolute;

  top: 50%;

  left: 50%;

  transform: translate(-50%, -50%);

  opacity: .15;

}



.testimonial-shadow-icon img{

  width: 200px !important;

}



.testimonial-rate {

  color: #FB9902;

  margin-bottom: 10px;

}



/* testimonial-slider */

.testimonial-slider .owl-dots {

  text-align: center;

  margin-top: 10px;

}



.testimonial-slider .owl-dots .owl-dot span {

  background: var(--theme-color);

  margin: 5px;

  border-radius: 10px;

  width: 15px;

  height: 7px;

  display: inline-block;

  transition: var(--transition);

}



.testimonial-slider .owl-dots .owl-dot.active span {

  background-color: var(--theme-color);

  width: 8px;

  height: 8px;

}







/* ========================

42. Gallery css 

=========================== */



.gallery-item {

  position: relative;

  width: 100%;

}



.gallery-img {

  height: 100%;

}



.gallery-img img {

  width: 100%;

  border-radius: 40px;

}



.gallery-content {

  position: absolute;

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

}



.gallery-content::before {

  content: "";

  position: absolute;

  left: 10px;

  top: 10px;

  right: 10px;

  bottom: 10px;

  background: var(--theme-color);

  border-radius: 40px;

  opacity: 0;

  visibility: hidden;

  transition: 0.3s;

}



.gallery-content:hover::before {

  opacity: 0.9;

  visibility: visible

}



.gallery-link {

  width: 70px;

  height: 70px;

  display: flex;

  align-items: center;

  justify-content: center;

  position: absolute;

  left: 50%;

  top: 50%;

  transform: translate(-50%, -50%) scale(0);

  transition: 0.5s;

  border-radius: 50px;

  opacity: 0;

  visibility: hidden;

  font-size: 50px;

  color: var(--color-white);

}



.gallery-link:hover {

  color: var(--color-white);

}



.gallery-content:hover .gallery-link {

  opacity: 1;

  visibility: visible;

  transform: translate(-50%, -50%) scale(1);

}







/*====================

43. Blog css 

======================*/



.blog-area{

  position: relative;

}



.blog-item{

  position: relative;

  padding: 20px;

  background: var(--color-white);

  border-radius: 20px;

  box-shadow: var(--box-shadow);

  transition: var(--transition);

}



.blog-item-img{

  border-radius: 20px;

  overflow: hidden;

  position: relative;

}



.blog-item-img img {

  border-radius: 12px;

}



.blog-item:hover .blog-item-img img{

  transform: scale(1.1);

} 



.blog-date{

  position: absolute;

  top: 30px;

  right: 30px;

  background: var(--theme-color);

  color: var(--color-white);

  text-align: center;

  padding: 0px 15px;

  border-radius: 50px;

  border: 4px solid var(--color-white);

}



.blog-date strong{

  font-size: 20px;

  font-weight: 800;

  margin-top: 4px;

  line-height: 1;

}



.blog-date span{

  font-weight: 500;

}



.blog-item-info {

  padding: 15px 0 0 0;

}



.blog-item-meta ul {

  margin: 0;

  margin-bottom: 14px;

  padding: 0;

  padding-bottom: 14px;

  border-bottom: 1px solid var(--border-info-color);

}



.blog-item-meta ul li {

  display: inline-block;

  margin-right: 15px;

  font-weight: 500;

  position: relative;

  color: var(--color-dark);

}



.blog-item-meta ul li i {

  margin-right: 5px;

  color: var(--theme-color);

}



.blog-item-meta a{

  color: var(--color-dark);

}



.blog-item-meta a:hover {

  color: var(--theme-color);

}



.blog-title {

  font-size: 22px;

  margin-bottom: 15px;

  text-transform: capitalize;

}



.blog-item-info h4 a {

  color: var(--color-dark);

  font-weight: 700;

}



.blog-item-info h4 a:hover {

  color: var(--theme-color);

}



.blog-item-info p {

  margin-bottom: 16px;

}



.blog-item-info .theme-btn {

  margin-top: 10px;

}









/*========================

44. Blog single css

==========================*/



.blog-single{

  position: relative;

}



/* blog single img */

.blog-single .blog-thumb-img {

  margin-bottom: 20px;

}



.blog-single .blog-single-content img {

  border-radius: 20px;
  width: 100%;

}



/* blog single meta */

.blog-single .blog-meta {

  display: flex;

  justify-content: space-between;

  align-items: center;

  margin-bottom: 20px;

}



.blog-single .blog-meta-left ul {

  display: flex;

  align-items: center;

  gap: 20px;

}



.blog-single .blog-meta-left ul li{

  color: var(--color-dark);

  font-weight: 500;

}



.blog-single .blog-meta i {

  margin-right: 5px;

  color: var(--theme-color);

}



.blog-single .blog-meta a {

  color: var(--color-dark);

  font-weight: 500;

}



.blog-single .blog-meta a:hover {

  color: var(--theme-color);

}



/* blog single details */

.blog-single .blog-details-title {

  font-size: 34px;

  color:  var(--color-dark);

  font-weight: 700;

}



/* blog single blockqoute */

.blog-single .blockqoute {

  background: var(--theme-bg-light);

  border-left: 5px solid var(--theme-color);

  padding: 30px;

  font-size: 17px;

  font-style: italic;

  margin: 20px 0;

  border-radius: 0px;

  position: relative;

}



.blog-single .blockqoute .blockqoute-icon{

  position: absolute;

  right: 20px;

  bottom: 5px;

  color: var(--theme-color);

  font-size: 70px;

}



.blog-single .blockqoute-author {

  margin-top: 20px;

  padding-left: 60px;

  position: relative;

  color: var(--color-dark);

}



.blog-single .blockqoute-author::before {

  content: "";

  position: absolute;

  height: 2px;

  width: 40px;

  background: var(--theme-color);

  left: 0;

  top: 10px;

}



/* blog single details tag */

.blog-single .blog-details-tag {

  display: flex;

  align-items: center;

  gap: 20px;

}



.blog-single .blog-details-tag h5 {

  color:  var(--color-dark);

}



.blog-single .blog-details-tag ul {

  display: flex;

  align-items: center;

  gap: 15px;

}



.blog-single .blog-details-tag ul a {

  background: var(--theme-bg-light);

  color:  var(--color-dark);

  padding: 5px 18px;

  border-radius: 50px;

  transition: var(--transition);

}



.blog-single .blog-details-tag ul a:hover {

  background: var(--theme-color);

  color: var(--color-white);

}



/* blog single author */

.blog-single .blog-author {

  display: flex;

  justify-content: start;

  align-items: center;

  background: var(--color-white);

  box-shadow: var(--box-shadow);

  margin: 50px 0;

  padding: 20px;

  border-radius: 20px;

}



.blog-single .blog-author-img {

  width: 320px;

}



.blog-single .blog-author-img img {

  border-radius: 20px;

}



.blog-single .author-name {

  font-size: 22px;

  color: var(--theme-color);

  margin: 8px 0;

}



.blog-single .author-info {

  padding: 0 20px;

}



.blog-single .author-social {

  margin-top: 10px;

}



.blog-single .author-social a {

  width: 35px;

  height: 35px;

  line-height: 32px;

  text-align: center;

  border: 2px solid var(--theme-color);

  border-radius: 50px;

  margin-right: 5px;

  color: var(--theme-color);

  transition: var(--transition);

}



.blog-single .author-social a:hover {

  color: var(--color-white);

  background: var(--theme-color);

}



/* blog single comment */

.blog-single .blog-comment h3 {

  color: var(--color-dark);

  font-weight: 700;

}



.blog-single .blog-comment-wrap {

  margin: 30px 0;

}



.blog-single .blog-comment-item {

  display: flex;

  justify-content: start;

  align-items: flex-start;

  border: 1px solid var(--border-info-color);

  border-radius: 20px;

  padding: 15px;

  margin-top: 50px;

}



.blog-single .blog-comment-item.reply {

  margin-left: 50px;

}



.blog-single .blog-comment-item img {

  width: 80px;

  border-radius: 50%;

}



.blog-single .blog-comment-content {

  padding: 0 0 0 20px;

}



.blog-single .blog-comment-content span {

  font-size: 14px;

  color: var(--theme-color);

  font-weight: 500;

}



.blog-single .blog-comment-content a {

  font-weight: 500;

  margin-top: 5px;

  color: var(--theme-color);

}



.blog-single .blog-comment-content a:hover {

  color:  var(--theme-color2);

}



.blog-single .blog-comment-content h5 {

  color:  var(--color-dark);

  font-weight: 700;

}



/* blog single comment form */

.blog-single .blog-comment-form {

  padding: 30px;

  margin-top: 50px;

  border-radius: 20px;

  background: var(--theme-bg-light);

}



.blog-single .blog-comment-form h3 {

  margin-bottom: 20px;

}





@media all and (max-width: 767px) {

  .blog-single .blog-meta {

    flex-direction: column;

    font-size: 15px;

  }



  .blog-single .blog-meta-left ul {

    gap: 10px;

  }



  .blog-single .blog-details-tag {

    flex-direction: column;

    align-items: flex-start;

  }



  .blog-single .blog-author {

    flex-direction: column;

    text-align: center;

    padding: 25px;

  }



  .blog-single .author-info{

    margin-top: 25px;

  }



  .blog-single .blog-comment-item {

    flex-direction: column;

    text-align: center;

    padding: 30px 0px;

    background: var(--color-white);

    box-shadow: var(--box-shadow);

    margin-bottom: 30px;

    border-radius: 15px;

  }



  .blog-single .blog-comment-item img{

    margin: 0 auto 20px auto;

  }



  .blog-single .blog-comment-item.reply {

    margin-left: 0px;

  }

}







/*==========================

45. Blog sidebar widget css

============================*/



.blog-sidebar .widget {

  background: var(--theme-bg-light);

  padding: 30px;

  margin-bottom: 30px;

  border-radius: 20px;

}



.blog-sidebar .widget .widget-title {

  padding-bottom: 10px;

  margin-bottom: 30px;

  position: relative;

  font-size: 22px;

  color:  var(--color-dark);

  font-weight: 700;

}



.blog-sidebar .widget .widget-title::before {

  position: absolute;

  content: '';

  width: 15px;

  border-bottom: 3px solid var(--theme-color);

  bottom: 0;

  left: 0;

}



.blog-sidebar .widget .widget-title::after {

  position: absolute;

  content: '';

  width: 30px;

  border-bottom: 3px solid var(--theme-color);

  bottom: 0;

  left: 22px;

}



/* search widget */

.blog-sidebar .widget .search-form .form-control {

  padding-right: 50px;

}



.blog-sidebar .widget .search-form .form-group{

  position: relative;

}



.blog-sidebar .widget .search-form button {

  position: absolute;

  right: 0;

  top: 0;

  font-size: 18px;

  padding: 12px 18px 6px 18px;

  background: transparent;

  border: none;

  color: var(--theme-color);

}



/* category widget */

.blog-sidebar .widget .category-list a {

  display: block;

  padding: 10px 0;

  font-weight: 500;

  color: var(--color-dark);

  border-bottom: 1px solid var(--border-info-color);

  transition: var(--transition);

}



.blog-sidebar .widget .category-list a:last-child {

  margin-bottom: 0px;

  border-bottom: none;

}



.blog-sidebar .widget .category-list a:hover {

  padding-left: 10px;

  color: var(--theme-color);

}



.blog-sidebar .widget .category-list a i {

  margin-right: 5px;

  color: var(--theme-color);

}



.blog-sidebar .widget .category-list a span {

  float: right;

}



/* recent post widget*/

.blog-sidebar .widget .recent-post-item {

  display: flex;

  justify-content: start;

  align-items: center;

  gap: 15px;

  margin-bottom: 20px;

}



.blog-sidebar .widget .recent-post-img img {

  width: 75px;

  border-radius: 15px;

}



.blog-sidebar .widget .recent-post-info {

  flex: 1;

}



.blog-sidebar .widget .recent-post-info h6 {

  font-size: 18px;

  font-weight: 600;

  margin-bottom: 4px;

}



.blog-sidebar .widget .recent-post-info span {

  font-size: 14px;

  color: var(--theme-color);

  font-weight: 500;

}



.blog-sidebar .widget .recent-post-info span i {

  margin-right: 5px;

}



.blog-sidebar .widget .recent-post-info h6 a:hover {

  color: var(--theme-color);

}



/* social widget */

.blog-sidebar .widget .social-link a {

  width: 35px;

  height: 35px;

  line-height: 32px;

  border: 2px solid var(--theme-color);

  color: var(--theme-color);

  text-align: center;

  margin-right: 5px;

  border-radius: 50px;

  transition: var(--transition);

}



.blog-sidebar .widget .social-link a:hover {

  background: var(--theme-color);

  color: var(--color-white);

}



/* tag widget */

.blog-sidebar .widget .tag-list a {

  background: var(--color-white);

  color:  var(--color-dark);

  padding: 5px 18px;

  margin-bottom: 10px;

  margin-right: 10px;

  border-radius: 50px;

  display: inline-block;

  transition: var(--transition);

}



.blog-sidebar .widget .tag-list a:hover {

  background-color: var(--theme-color);

  color: var(--color-white);

}









/*====================

46. Pagination css 

======================*/



.pagination {

  display: flex;

  justify-content: center;

  align-items: center;

  margin-top: 50px;

}



.pagination .page-link {

  border: none;

  background:  var(--theme-bg-light);

  color: var(--color-dark);

  font-weight: 500;

  margin: 0 10px;

  border-radius: 12px !important;

  width: 40px;

  height: 40px;

  line-height: 28px;

  text-align: center;

  transition: var(--transition);

  z-index: 1;

}



.pagination .page-link:hover,

.pagination .page-item.active .page-link {

  background: var(--theme-color);

  color: var(--color-white);

}







/*====================

47. Faq css 

======================*/



.faq-area .accordion-item {

  border: none;

  background: var(--color-white);

  border-radius: 12px;

  margin-bottom: 30px;

  box-shadow: var(--box-shadow);

}



.faq-area .accordion-button {

  border-radius: 0px;

  background: transparent;

  font-weight: 700;

  font-size: 20px;

  color:  var(--color-dark);

  box-shadow: none;

}



/* .faq-area .accordion-button::after{

  content: "\f107";

  background: none;

  color: var(--theme-color);

  font-size: 24px;

  font-weight: 500;

  font-family: 'Font Awesome 6 pro';

  width: unset;

  height: unset;

  margin-right: 3px;

} */



.faq-area .accordion-button:not(.collapsed) {

  color: var(--theme-color);

  background: transparent;

  border-bottom: 1px dashed var(--theme-color);

  box-shadow: none;

}



/* .faq-area .accordion-button:not(.collapsed)::after{

  content: "\f107";

  transform: rotate(-180deg);

} */



.faq-area .accordion-button span {

  width: 45px;

  height: 45px;

  margin-right: 15px;

}



.faq-area .accordion-button span i {

  width: 45px;

  height: 45px;

  line-height: 45px;

  border-radius: 50px;

  background: var(--theme-color);

  text-align: center;

  color: var(--color-white);

}



.faq-area .accordion-body{

  color: var(--color-dark);

  font-weight: 500;

}



@media all and (max-width: 991px) {

  .faq-area .faq-content {

    margin-bottom: 50px;

  }



  .faq-area .accordion-button {

    font-size: 16px;

  }

}









/*===================

48. Contact us css 

=====================*/



.contact-content {

  margin-bottom: 50px;

}



.contact-info {

  display: flex;

  flex-direction: column;

  align-items: center;

  text-align: center;

  gap: 15px;

  padding: 25px 20px;

  position: relative;

  margin-bottom: 25px;

  border-radius: 30px;

  background: var(--color-white);

  border: 2px solid var(--theme-color);

  transition: var(--transition);

}



.contact-info:hover{

  transform: translateY(-8px)

}



.contact-info .icon{

  font-size: 35px;

  color: var(--color-white);

  width: 70px;

  height: 70px;

  line-height: 70px;

  text-align: center;

  border-radius: 50px;

  background: var(--theme-color);

}



.contact-info .content h5 {

  font-size: 20px;

  font-weight: 700;

  margin-bottom: 8px;

  color:  var(--color-dark);

}



.contact-info .content p{

  color:  var(--color-dark);

  font-weight: 500;

  font-size: 16px;

}



.contact-img img{

  width: 100%;

  border-radius: 40px;

}



.contact-form{

  background: var(--theme-bg-light);

  padding: 30px;

  border-radius: 5px;

}



.contact-form-header {

  margin-bottom: 30px;

}



.contact-form-header h2 {

  font-size: 30px;

  font-weight: 700;

  margin-bottom: 10px;

  color: var(--color-dark);

}



.contact-form-header p{

  color: var(--body-text-color);

}



.contact-form .form-message.success,

.contact-form .form-message.error{

  margin-bottom: 20px;

  border-radius: 10px;

  padding: 10px 18px;

}



.contact-form .form-message.success{

  color: #41BE7D;

  background:rgba(65, 190, 125, .1);

}



.contact-form .form-message.error{

  color: #FF7F7F;

  background:rgba(255, 127, 127, .1);

}



.contact-form .form-message.error{

  color: var(--color-red);

}



.contact-map {

  margin-bottom: -9px;

}



.contact-map iframe {

  width: 100%;

  height: 450px;

}







/*====================

49. Auth css 

======================*/



.auth-form {

  padding: 40px;

  background: var(--color-white);

  border-radius: 20px;

  box-shadow: var(--box-shadow);

}



/* auth-header */

.auth-form .auth-header {

  text-align: center;

  margin-bottom: 30px;

}



.auth-form .auth-header img {

  width: 200px;

  margin-bottom: 10px;

}



.auth-form .auth-header h3 {

  color: var(--theme-color);

  margin-bottom: 5px;

  font-weight: 800;

}



.auth-form .auth-header p {

  color: var(--color-dark);

  font-size: 20px;

}



/* auth-group */

.auth-group{

  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 25px;

}



.auth-group .form-check{

  margin-bottom: 0;

}



.auth-group .form-check-label{

  color: var(--color-dark);

  font-weight: 500;

}



.auth-group .auth-group-link{

  color: var(--theme-color);

  font-weight: 500;

}



.auth-group .auth-group-link:hover{

  color: var(--color-red);

}



/* password-view */

.auth-form .password-view{

  cursor: pointer;

}



.auth-form .password-view i{

  left: unset;

  right: 20px;

  color: var(--body-text-color);

}



.auth-form .password-view.show i::before{

  content: "\f06e";

}



/* auth-btn */

.auth-form .theme-btn {

  width: 100%;

}



.auth-form .theme-btn::before{

  width: 420px;

  height: 420px;

  transition: var(--transition2);

}



/* auth-bottom */

.auth-form .auth-bottom {

  margin-top: 25px;

}



.auth-form .auth-bottom p {

  color: var(--color-dark);

  text-align: center;

}



.auth-form .auth-bottom a {

  color: var(--theme-color);

  font-weight: 500;

}



.auth-form .auth-bottom a:hover {

  color:  var(--color-red);

}



/* auth-social */

.auth-form .auth-social {

  border-top: 1px solid var(--border-info-color);

  margin-top: 15px;

}



.auth-form .auth-social p {

  color: var(--color-dark);

  margin: 10px 0;

}



.auth-form .auth-social-list {

  text-align: center;

  margin-bottom: 10px;

}



.auth-form .auth-social-list a {

  width: 40px;

  height: 40px;

  line-height: 40px;

  background: var(--theme-color);

  border-radius: 50px;

  margin: 5px;

}



.auth-form .auth-social-list a i {

  color: var(--color-white);

}



.auth-form .auth-social-list a:hover {

  background:  var(--color-red);

}



@media only screen and (max-width: 991px) {

  .auth-form {

    padding: 40px 20px;

  }

}







/*====================

50. Coming soon css 

======================*/



.coming-soon {

  position: relative;

  background-repeat: no-repeat;

  background-size: cover !important;

  background-position: center !important;

  min-height: 100vh;

  width: 100%;

  z-index: 1;

}



.coming-soon:before {

  position: absolute;

  content: '';

  background: rgba(0, 0, 0, .7);

  width: 100%;

  height: 100%;

  top: 0;

  left: 0;

  z-index: -1;

}



.coming-wrap{

  display: flex;

  justify-content: center;

  align-items: center;

  height: 75vh;

}



.coming-content{

  text-align: center;

}



.coming-info h1{

  color: var(--color-white);

  font-weight: 700;

  font-size: 50px;

}



.coming-info p{

  font-size: 18px;

  color: var(--color-white);

  margin-top: 10px;

}



.coming-countdown-wrap{

  margin-top: 30px;

  margin-bottom: 30px;

}



.coming-countdown .time-wrap{

  display: flex;

  align-items: center;

  justify-content: center;

  flex-wrap: wrap;

  gap: 18px;

}



.coming-countdown .time{

  background: var(--color-white);

  width: 125px;

  border-radius: 15px;

  padding: 14px 10px;

}



.coming-countdown .time span{

  display: block;

}



.coming-countdown .time span:first-child{

  color: var(--theme-color);

  font-weight: 700;

  font-size: 38px;

  line-height: 1;

}



.coming-countdown .time .unit{

  color: var(--color-dark);

  font-weight: 500;

}



.coming-countdown .divider{

  display: none;

}



.coming-newsletter-form{

  margin-top: 50px;

  margin-bottom: 25px;

}



.coming-newsletter-form .form-group{

  position: relative;

}



.coming-newsletter-form .form-control{

  padding: 17px 150px 17px 20px;

  border-radius: 50px;

  border-color: transparent;

  color: var(--color-dark);

}



.coming-newsletter-form .form-control::placeholder{

  color: var(--color-dark);

}



.coming-newsletter-form .form-control:focus{

  border-color: var(--theme-color);

}



.coming-newsletter-form .theme-btn{

  position: absolute;

  right: 5px;

  top: 6px;

  padding: 9px 15px;

}



.coming-social{

  margin-top: 40px;

  text-align: center;

}



.coming-social a{

  display: inline-block;

  background: var(--theme-color);

  color: var(--color-white);

  margin: 5px;

  width: 42px;

  height: 42px;

  line-height: 42px;

  text-align: center;

  border-radius: 50px;

  transition: .5s;

  box-shadow: var(--box-shadow2);

}



.coming-social a:hover{

  background: var(--theme-color2);

}



@media all and (max-width: 767px) {

  .coming-info h1{

    font-size: 40px;

  }

}







/*====================

51. Error css 

======================*/



.error-wrap {

  text-align: center;

}



.error-wrap h1 {

  font-size: 250px;

  letter-spacing: 5px;

  font-weight: bold;

  color: var(--theme-color);

}



.error-wrap h1 span {

  color:  var(--color-dark);

}



.error-wrap h2 {

  margin-top: 30px;

  margin-bottom: 10px;

}



.error-wrap img {

  width: 100%;

}



.error-wrap .theme-btn {

  margin-top: 30px;

}





@media all and (max-width: 767px) {

  .error-wrap h1 {

    font-size: 160px;

  }

}







/*====================

52. Terms/privacy css 

====================== */



.terms-content:not(:last-child) {

  margin-bottom: 54px;

}



.terms-content:first-child {

  margin-top: -3px;

}



.terms-content .terms-list {

  margin-top: 37px;

}



.terms-content h3 {

  margin-bottom: 23px;

  position: relative;

  font-weight: 700;

}



.terms-content p:not(:last-child) {

  margin-bottom: 26px;

}



.terms-list li:not(:last-child) {

  margin-bottom: 16px;

}







/*====================

53. Scroll top css

======================*/



#scroll-top {

  position: fixed;

  bottom: -20px;

  right: 30px;

  z-index: 99;

  font-size: 20px;

  border: none;

  outline: none;

  border-radius: 50px;

  color: var(--color-white);

  background-color: var(--theme-color);

  cursor: pointer;

  width: 50px;

  height: 50px;

  line-height: 50px;

  text-align: center;

  box-shadow: var(--box-shadow2);

  transition: var(--transition);

  opacity: 0;

  visibility: hidden;

  transform: rotate(-40deg);

  z-index: 1;

}



#scroll-top:hover{

  transform: rotate(0);

}



#scroll-top.active{

  opacity: 1;

  visibility: visible;

  bottom: 20px;

}





@media all and (min-width: 768px) and (max-width: 1199px) {

  #scroll-top.active {

    bottom: 100px;

  }

}







/*====================

54. Footer css 

======================*/



.footer-area {

  background: var(--footer-bg);

  position: relative;

  z-index: 1;

}



.footer-shape {

  position: absolute;

  left: 50%;

  bottom: 0;

  width: 70%;

  transform: translateX(-50%);

  opacity: 0.05;

  z-index: -1;

}



.footer-widget {

  position: relative;

}



.footer-widget-box.about-us{

  margin-right: 50px;

}



.footer-widget-box p {

  color: var(--color-white);

  padding-right: 18px;

  margin-bottom: 20px;

}



.footer-logo img {

  width: 200px;

  margin-bottom: 15px;

  background: #fff;

}



.footer-widget-title {

  color: var(--color-white);

  position: relative;

  padding-bottom: 10px;

  margin-bottom: 20px;

  font-size: 21px;

  z-index: 1;

}



.footer-widget-title::before{

  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  width: 20px;

  height: 3px;

  background: var(--theme-color);

  border-radius: 50px;

}



.footer-list {

  display: flex;

  flex-direction: column;

  gap: .70rem;

}



.footer-list li a {

  color: var(--color-white);

  transition: var(--transition);

  position: relative;

  margin-left: -20px;

}



.footer-list li a i {

  margin-right: 5px;

  color: var(--theme-color);

  opacity: 0;

  transition: var(--transition);

}



.footer-list li a:hover {

  margin-left: 0px;

  color: var(--theme-color);

}



.footer-list li a:hover i{

  opacity: 1;

}



.footer-social {

  display: flex;

  gap: 15px;

  /* justify-content: end; */

}



.footer-social li a i {

  height: 38px;

  width: 38px;

  line-height: 38px;

  text-align: center;

  border-radius: 50px;

  background: var(--color-white);

  color: var(--theme-color);

  transition: var(--transition);

}



.footer-social li a i:hover {

  background: var(--theme-color);

  color: var(--color-white);

}



.footer-contact li {

  position: relative;

  display: flex;

  justify-content: start;

  gap: 10px;

  color: var(--footer-text-color);

  font-size: 16px;

  margin-bottom: 12px;

}



.footer-contact .icon{

  width: 35px;

  height: 35px;

  line-height: 35px;

  background: var(--theme-color);

  border-radius: 50px;

  text-align: center;

}



.footer-contact .content{

  flex: 1;

}



.footer-contact .content h6{

  color: var(--color-white);

  margin-bottom: 5px;

}



.footer-contact .content a{

  color: var(--color-white);

}



.footer-newsletter h6{

  color: var(--color-white);

  margin-bottom: 20px;

}



.footer-newsletter .newsletter-form .form-group{

  position: relative;

}



.footer-newsletter .newsletter-form .form-icon > i{

  top: 21px;

  left: 0;

  color: var(--theme-color);

}



.footer-newsletter .newsletter-form .form-control {

  padding: 16px 140px 16px 32px;

  border-radius: 0px;

  color: var(--color-white);

  box-shadow: none;

  background-color: transparent;

  border: none;

  border-bottom: 1px solid var(--color-white);

  outline: none;

}



.footer-newsletter .newsletter-form .form-control:focus{

  border-bottom-color: var(--theme-color);

}



.footer-newsletter .newsletter-form .form-control::placeholder{

  color: var(--color-white);

}



.footer-newsletter .newsletter-form .theme-btn {

  position: absolute;

  right: 0px;

  top: 5px;

  border-radius: 50px;

  padding: 5px 15px;

}



.footer-newsletter .newsletter-form .theme-btn:hover {

  color: var(--theme-color);

}



.footer-newsletter .newsletter-form .theme-btn::before{

  background: var(--color-white);

}



.footer-newsletter .newsletter-form .theme-btn span{

  margin-right: 0;

  margin-left: 5px;

}



.copyright {

  padding: 20px 0;

  border-top: 1px solid var(--border-white-color);

}



.copyright .footer-menu {

  margin: 0;

  padding: 0;

  text-align: right;

}



.copyright .footer-menu li {

  display: inline-block;

  margin-left: 25px;

  font-size: 16px;

}



.copyright .footer-menu li a {

  color: var(--footer-text-color);

  transition: var(--transition);

}



.copyright .footer-menu li a:hover {

  color: var(--theme-color);

}



.copyright .copyright-text {

  color: var(--footer-text-color);

  margin-bottom: 0px;

  font-size: 16px;

  text-align: center;

}



.copyright .copyright-text a {

  color: var(--theme-color);

  font-weight: 500;

}





@media all and (max-width: 1199px) {

  .footer-widget-box {

    margin-bottom: 50px;

  }



  .footer-list li a{

    font-size: 14px;

  }

}



@media all and (max-width: 991px) {

  .footer-widget-wrap {

    padding-bottom: 0px;

  }



  .footer-list li a{

    font-size: 16px;

  }



  .copyright .footer-menu {

    float: left;

    margin-top: 20px;

    text-align: left;

  }



  .copyright .footer-menu li {

    margin-left: 0;

    margin-right: 15px;

  }

}



@media all and (max-width: 767px) {

  .footer-widget-wrap {

    padding-bottom: 0px;

  }



  .footer-social {

    justify-content: flex-start;

    margin-top: 20px;

  }



  .footer-shape {

    width: 100%;

  }

}





/* footer light */

.footer-area.light{

  background: var(--theme-bg-light);

}



.footer-area.light .footer-widget-title{

  color: var(--color-dark);

  font-weight: 800;

}



.footer-area.light .footer-widget-box p{

  color: var(--body-text-color);

}



.footer-area.light .footer-newsletter h6{

  color: var(--color-dark);

  font-weight: 700;

}



.footer-area.light .newsletter-form .form-control{

  color: var(--color-dark);

  border-bottom-color: var(--body-text-color);

}



.footer-area.light .newsletter-form .form-control::placeholder{

  color: var(--body-text-color);

}



.footer-area.light .newsletter-form .form-control:focus{

  border-bottom-color: var(--theme-color);

}



.footer-area.light .footer-list li a{

  color: var(--body-text-color);

}



.footer-area.light .footer-list li a:hover{

  color: var(--theme-color);

}



.footer-area.light .footer-contact .content h6{

  color: var(--color-dark);

  font-weight: 700;

}



.footer-area.light .footer-contact .content a{

  color: var(--body-text-color);

}



.footer-area.light .footer-social li a i{

  background: var(--color-dark);

  color: var(--color-white);

}



.footer-area.light .footer-social li a i:hover{

  background: var(--theme-color);

}



.footer-area.light .copyright{

  border-top-color: var(--border-info-color);

}



.footer-area.light .copyright .copyright-text{

  color: var(--body-text-color);

}





/*====================

55. Home-2 css 

======================*/



.home-2 .footer-area{

  overflow: hidden;

}



.home-2 .footer-shape{

  width: 80%;

  right: 0;

  left: unset;

  bottom: -150px;

  transform: unset;

  opacity: .04;

}



@media all and (min-width: 992px) {

  .home-2 .navbar .container{

    background: var(--color-white);

  }

  

  .home-2 .hero-section{

    margin-top: -2.8rem;

  }



  .home-2 .hero-single{

    padding-top: 160px;

    padding-bottom: 120px;

  }

}







/*====================

56. Home-3 css 

======================*/



.home-3 .header-top{

  background: var(--theme-color);

}



.home-3 .header-top-list a i{

  color: var(--color-white);

}



.home-3 .header-top-list a{

  transition: var(--transition);

}



.home-3 .header-top-list a:hover{

  color: var(--theme-color2);

}



.home-3 .header-top-social a:hover{

  color: var(--theme-color2);

}



.home-3 .hero-single{

  padding-top: 100px;

  padding-bottom: 100px;

}



.home-3 .hero-single::before{

  left: 0;

  background: rgba(2, 59, 69, .8);

}



.home-3 .hero-single .hero-content .hero-title span{

  color: var(--theme-color);

  -webkit-text-stroke: unset;

}



.home-3 .hero-img img{

  position: absolute;

  bottom: 0;

}



@media all and (min-width: 992px) and (max-width: 1199px) {

  .home-3 .hero-img img{

    width: 47%;

  }

}



@media all and (max-width: 991px) {

  .home-3 .hero-single{

    padding-bottom: 0;

  }



  .home-3 .hero-img{

    margin-top: 50px;

  }



  .home-3 .hero-img img{

    position: relative;

  }

}



/* ================= end ================== */







.hero-slider .owl-nav {

    margin-top: 0px;

    display: none;

}



.service-slider .owl-nav{

  display: none;

}



/* FULL SCREEN LOADER */

#goLoader {

    position: fixed;

    inset: 0;

    width: 100%;

    height: 100%;

    background: #ffffff;

    display: flex;

    justify-content: center;

    align-items: center;

    z-index: 999999;

    opacity: 1;

    visibility: visible;

    transition: opacity 0.7s ease, visibility 0.7s ease;

    overflow: hidden;

}



#goLoader.go-loader-hide {

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

}



/* CONTENT */

.go-loader-content {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 22px;

}



/* LOGO ANIMATION AREA */

.go-logo-animation {

    width: 150px;

    height: 150px;

    position: relative;

    display: flex;

    align-items: center;

    justify-content: center;

}



/* ANIMATED RINGS */

.go-ring {

    position: absolute;

    border-radius: 50%;

    inset: 0;

}



.go-ring-outer {

    border: 3px solid #e9f5ef;

    border-top-color: #00bd83;

    border-right-color: #00bd83;

    animation: goSpin 1.6s linear infinite;

}



.go-ring-inner {

    inset: 10px;

    border: 2px dashed #c8eadb;

    animation: goSpinReverse 8s linear infinite;

}



/* LOGO */

.go-logo-box {

    width: 105px;

    height: 105px;

    border-radius: 50%;

    background: #ffffff;

    display: flex;

    justify-content: center;

    align-items: center;

    overflow: hidden;

    animation: goLogoPulse 1.8s ease-in-out infinite;

    box-shadow: 0 5px 25px rgba(0, 189, 131, 0.13);

}



.go-logo-box img {

    width: 100%;

    height: 100%;

    object-fit: contain;

    display: block;

}



/* ORBIT DOT */

.go-orbit-dot {

    position: absolute;

    width: 12px;

    height: 12px;

    background: #00bd83;

    border: 3px solid #ffffff;

    border-radius: 50%;

    top: 4px;

    left: 50%;

    margin-left: -6px;

    transform-origin: 6px 71px;

    animation: goDotOrbit 1.6s linear infinite;

    box-shadow: 0 0 12px rgba(0, 189, 131, 0.4);

}



/* TEXT */

.go-loading-text {

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 6px;

}



.go-loading-title {

    color: #00ad78;

    font-size: 27px;

    line-height: 1.2;

    font-weight: 900;

    letter-spacing: 5px;

    font-family: Arial, sans-serif;

    animation: goTextPulse 1.5s ease-in-out infinite;

}



.go-loading-subtitle {

    color: #555555;

    font-family: Arial, sans-serif;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 3px;

    text-transform: uppercase;

}



/* PROGRESS BAR */

.go-progress {

    width: 145px;

    height: 4px;

    border-radius: 20px;

    overflow: hidden;

    background: #e8f5ee;

}



.go-progress span {

    display: block;

    width: 40%;

    height: 100%;

    border-radius: 20px;

    background: linear-gradient(90deg, #00bd83, #202020);

    animation: goProgressMove 1.4s ease-in-out infinite;

}



/* LOADING DOTS */

.go-loading-dots {

    display: flex;

    gap: 6px;

    margin-top: -12px;

}



.go-loading-dots i {

    width: 5px;

    height: 5px;

    border-radius: 50%;

    background: #00bd83;

    animation: goDotBounce 0.9s ease-in-out infinite;

}



.go-loading-dots i:nth-child(2) {

    animation-delay: 0.15s;

}



.go-loading-dots i:nth-child(3) {

    animation-delay: 0.3s;

}



/* KEYFRAMES */

@keyframes goSpin {

    to { transform: rotate(360deg); }

}



@keyframes goSpinReverse {

    to { transform: rotate(-360deg); }

}



@keyframes goLogoPulse {

    0%, 100% {

        transform: scale(0.96);

    }

    50% {

        transform: scale(1.04);

    }

}



@keyframes goDotOrbit {

    to { transform: rotate(360deg); }

}



@keyframes goTextPulse {

    0%, 100% { opacity: 0.7; }

    50% { opacity: 1; }

}



@keyframes goProgressMove {

    0% { transform: translateX(-110%); }

    100% { transform: translateX(360%); }

}



@keyframes goDotBounce {

    0%, 60%, 100% {

        transform: translateY(0);

        opacity: 0.5;

    }

    30% {

        transform: translateY(-6px);

        opacity: 1;

    }

}



/* MOBILE */

@media (max-width: 576px) {

    .go-logo-animation {

        width: 125px;

        height: 125px;

    }



    .go-logo-box {

        width: 88px;

        height: 88px;

    }



    .go-orbit-dot {

        transform-origin: 6px 58px;

    }



    .go-loading-title {

        font-size: 24px;

    }



    .go-loading-subtitle {

        font-size: 10px;

        letter-spacing: 2px;

    }

}



/* ACCESSIBILITY */

@media (prefers-reduced-motion: reduce) {

    .go-ring,

    .go-logo-box,

    .go-orbit-dot,

    .go-loading-title,

    .go-progress span,

    .go-loading-dots i {

        animation-duration: 4s;

    }

}



/* Solar Plans Section */

.solar-plans {

    padding: 80px 0;

    background: #f5f6f7;

    font-family: Arial, sans-serif;

    overflow: hidden;

}



.solar-plans .section-heading {

    text-align: center;

    margin-bottom: 45px;

}



.solar-plans .section-heading .sub-title {

    display: inline-block;

    color: #10bc91;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 2px;

    text-transform: uppercase;

    margin-bottom: 12px;

}



.solar-plans .section-heading h2 {

    color: #222b32;

    font-size: clamp(28px, 4vw, 42px);

    font-weight: 700;

    margin-bottom: 12px;

}



.solar-plans .section-heading p {

    color: #777d85;

    font-size: 16px;

    margin: 0;

    line-height: 1.7;

}



/* Plan Card */

.solar-plans .solar-card {

    background: #fff;

    border: 1px solid #e0e2e5;

    border-radius: 5px;

    height: 100%;

    overflow: hidden;

    display: flex;

    flex-direction: column;

    transition: transform .4s ease, box-shadow .4s ease;

    animation: solarFadeUp .8s ease both;

}



.solar-plans .solar-card:hover {

    transform: translateY(-10px);

    box-shadow: 0 18px 40px rgba(16, 188, 145, .16);

}



.solar-plans .solar-card:nth-child(2) {

    animation-delay: .15s;

}



.solar-plans .solar-card:nth-child(3) {

    animation-delay: .3s;

}



/* Green Card Header */

.solar-plans .solar-card-header {

    background: #10bc91;

    color: #fff;

    min-height: 285px;

    padding: 38px 18px 28px;

    text-align: center;

    position: relative;

    overflow: hidden;

}



.solar-plans .solar-card-header::before {

    content: "";

    position: absolute;

    width: 210px;

    height: 210px;

    border: 1px solid rgba(255,255,255,.17);

    border-radius: 50%;

    top: -115px;

    right: -75px;

    transition: transform .6s ease;

}



.solar-plans .solar-card:hover .solar-card-header::before {

    transform: scale(1.5);

}



.solar-plans .solar-card-header h3 {

    color: #fff;

    font-size: 27px;

    font-weight: 500;

    margin: 15px 0 24px;

    position: relative;

    z-index: 1;

}



.solar-plans .capacity-circle {

    width: 235px;

    max-width: 90%;

    height: 130px;

    margin: 0 auto 20px;

    display: flex;

    align-items: center;

    justify-content: center;

    position: relative;

    isolation: isolate;

}



.solar-plans .capacity-circle::before,

.solar-plans .capacity-circle::after {

    content: "";

    position: absolute;

    inset: 5px 8px;

    border: 6px solid #fff;

    border-radius: 48% 52% 46% 54% / 47% 44% 56% 53%;

    transform: rotate(-5deg);

    z-index: -1;

    transition: transform .5s ease;

}



.solar-plans .capacity-circle::after {

    inset: 11px 3px 0 15px;

    border-width: 4px;

    transform: rotate(5deg);

}



.solar-plans .solar-card:hover .capacity-circle::before {

    transform: rotate(5deg) scale(1.04);

}



.solar-plans .solar-card:hover .capacity-circle::after {

    transform: rotate(-5deg) scale(1.03);

}



.solar-plans .capacity-circle span {

    font-size: 38px;

    font-weight: 400;

    color: #fff;

    line-height: 1.2;

}



.solar-plans .solar-card-header .suitable-text {

    font-size: 15px;

    font-weight: 600;

    margin: 0;

    position: relative;

    z-index: 1;

}



/* Card Body */

.solar-plans .solar-card-body {

    padding: 29px 28px 26px;

    display: flex;

    flex-direction: column;

    flex: 1;

}



.solar-plans .plan-features {

    list-style: none;

    padding: 0;

    margin: 0 0 28px;

}



.solar-plans .plan-features li {

    display: flex;

    align-items: flex-start;

    gap: 10px;

    color: #777982;

    font-size: 16px;

    line-height: 1.65;

    margin-bottom: 12px;

}



.solar-plans .plan-features li:last-child {

    margin-bottom: 0;

}



.solar-plans .plan-features li i {

    color: #10bc91;

    font-size: 20px;

    font-weight: 700;

    margin-top: 2px;

    flex-shrink: 0;

}



.solar-plans .plan-features li strong {

    color: #10bc91;

    font-weight: 500;

}



/* Yellow Button */

.solar-plans .solar-btn {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    width: 100%;

    margin-top: auto;

    padding: 8px 20px;

    background: #ffbb00;

    color: #fff;

    border: 2px solid #ffbb00;

    border-radius: 5px;

    text-decoration: none;

    font-size: 19px;

    font-weight: 700;

    letter-spacing: .5px;

    transition: all .35s ease;

}



.solar-plans .solar-btn i {

    transition: transform .35s ease;

}



.solar-plans .solar-btn:hover {

    background: #10bc91;

    border-color: #10bc91;

    color: #fff;

    box-shadow: 0 8px 20px rgba(16,188,145,.2);

}



.solar-plans .solar-btn:hover i {

    transform: translateX(5px);

}



/* Animations */

@keyframes solarFadeUp {

    from {

        opacity: 0;

        transform: translateY(35px);

    }

    to {

        opacity: 1;

        transform: translateY(0);

    }

}



/* Tablet */

@media (max-width: 991px) {

    .solar-plans {

        padding: 60px 0;

    }



    .solar-plans .solar-card-header {

        min-height: 265px;

        padding: 30px 12px 24px;

    }



    .solar-plans .solar-card-header h3 {

        font-size: 23px;

    }



    .solar-plans .capacity-circle span {

        font-size: 33px;

    }



    .solar-plans .solar-card-body {

        padding: 24px 20px;

    }



    .solar-plans .plan-features li {

        font-size: 15px;

    }



    .solar-plans .solar-btn {

        font-size: 17px;

    }

}



/* Mobile */

@media (max-width: 767px) {

    .solar-plans {

        padding: 45px 0;

    }



    .solar-plans .section-heading {

        margin-bottom: 30px;

    }



    .solar-plans .section-heading h2 {

        font-size: 29px;

    }



    .solar-plans .solar-card-header {

        min-height: 260px;

    }



    .solar-plans .solar-card-body {

        padding: 25px 22px;

    }

}



/* Reduced Motion Accessibility */

@media (prefers-reduced-motion: reduce) {

    .solar-plans *,

    .solar-plans *::before,

    .solar-plans *::after {

        animation: none !important;

        transition: none !important;

    }

}





.partner-slider img {

    width: 120px !important;

    align-items: center;

    height: 76px;

    object-fit: contain;

}

.pricing-btn {

    margin-top: 20px;

    position: relative;

    bottom: 0px;

}



.process-item h4{

  font-size: 18px;

}

.skill-content p{

  text-align: justify;

}

.energy-bill ul{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.energy-bill ul li{
  box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
  padding: 10px;
  margin-bottom: 20px;
}

.panel-strike ul{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.panel-strike ul li{
  box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
  padding: 10px;
  margin-bottom: 20px;
}
.canadian-solar{
border: 3px solid #4EC08C;
}

.solar-panel p{
  text-align: justify;
}

/* .green-solar {
    width: 100%;
}

.green-solar .green-solar-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 8px;
    row-gap: 10px;
    width: 100%;
}

.green-solar .green-solar-field {
    width: 100%;
    min-width: 0;
}

.green-solar .green-solar-field.full-width {
    grid-column: 1 / -1;
}

.green-solar .green-solar-field input,
.green-solar .green-solar-field select {
    display: block;
    width: 100%;
    height: 45px;
    box-sizing: border-box;
    padding: 0 15px;
    border: 1px solid #dedee3;
    border-radius: 1px;
    background-color: #f6f6f6;
    color: #000;
    font-size: 14px;
    font-weight: 400;
    outline: none;
}

.green-solar .green-solar-field select {
    appearance: auto;
    cursor: pointer;
}

.green-solar .green-solar-field input::placeholder {
    color: #000;
    opacity: 1;
}

.green-solar .green-solar-field input:focus,
.green-solar .green-solar-field select:focus {
    border-color: #0fc08c;
}

.green-solar .green-solar-submit {
    grid-column: 1 / -1;
    margin-top: 5px;
    display: flex;
    justify-content: center;
}

.green-solar .green-solar-submit button {
    min-width: 172px;
    height: 50px;
    padding: 0 25px;
    border: none;
    border-radius: 0;
    background: #0fc08c;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease;
}

.green-solar .green-solar-submit button:hover {
    background: #0fc08c;
} */

.green-solar {
    width: 100%;
}

.green-solar .green-solar-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 8px;
    row-gap: 10px;
    width: 100%;
}

.green-solar .green-solar-field {
    width: 100%;
    min-width: 0;
}

.green-solar .green-solar-field.full-width {
    grid-column: 1 / -1;
}

/* Inputs and Selects */
.green-solar .green-solar-field input,
.green-solar .green-solar-field select,
.green-solar .green-solar-field textarea {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 0 15px;
    border: 1px solid #dedee3;
    border-radius: 1px;
    background-color: #f6f6f6;
    color: #000;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    outline: none;
}

.green-solar .green-solar-field input,
.green-solar .green-solar-field select {
    height: 45px;
}

.green-solar .green-solar-field textarea {
    min-height: 90px;
    padding: 10px 15px;
    resize: vertical;
}

.green-solar .green-solar-field select {
    appearance: auto;
    cursor: pointer;
}

.green-solar .green-solar-field input::placeholder,
.green-solar .green-solar-field textarea::placeholder {
    color: #777;
    opacity: 1;
}

.green-solar .green-solar-field input:focus,
.green-solar .green-solar-field select:focus,
.green-solar .green-solar-field textarea:focus {
    border-color: #0fc08c;
}

/* Roof Description Full Width */
.green-solar .green-solar-field.full-width {
    grid-column: 1 / -1;
}

/* File Upload Fields */
.green-solar .green-solar-upload {
    width: 100%;
    min-width: 0;
    padding: 10px;
    box-sizing: border-box;
    border: 1px solid #dedee3;
    background: #fff;
}

.green-solar .green-solar-upload label {
    display: block;
    margin-bottom: 8px;
    color: #777;
    font-size: 14px;
    font-weight: 400;
}

.green-solar .green-solar-upload input[type="file"] {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto;
    min-height: 45px;
    padding: 8px;
    box-sizing: border-box;
    border: 1px solid #dedee3;
    background: #f6f6f6;
    font-size: 13px;
}

.green-solar .green-solar-upload small {
    display: block;
    margin-top: 7px;
    color: #777;
    font-size: 12px;
    line-height: 1.5;
}

/* Submit Button */
.green-solar .green-solar-submit {
    grid-column: 1 / -1;
    margin-top: 5px;
    display: flex;
    justify-content: center;
}

.green-solar .green-solar-submit button {
    min-width: 172px;
    height: 50px;
    padding: 0 25px;
    border: none;
    border-radius: 0;
    background: #0fc08c;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease;
}

.green-solar .green-solar-submit button:hover {
    background: #0aa878;
}


@media (max-width: 768px){
  .energy-bill ul{
    display: flex;
    flex-direction: column;
    gap: 15px
  }

  .panel-strike ul{
    display: flex;
    flex-direction: column;
    gap: 15px
  }

  .solar-panel p{
  text-align: start;
  }

  /* .green-solar .green-solar-form {
    grid-template-columns: minmax(0, 1fr);
    column-gap: 0;
    row-gap: 12px;
  }

  .green-solar .green-solar-field,
  .green-solar .green-solar-field.full-width,
  .green-solar .green-solar-submit,
  .green-solar .green-solar-note {
    grid-column: 1 / -1;
    width: 100%;
  }

  .green-solar .green-solar-field input,
  .green-solar .green-solar-field select {
    height: 45px;
    font-size: 14px;
  }

  .green-solar .green-solar-submit button {
    width: 100%;
    max-width: 100%;
    height: 50px;
  } */

  .green-solar {
        width: 100%;
    }

    .green-solar .green-solar-form {
        grid-template-columns: minmax(0, 1fr);
        column-gap: 0;
        row-gap: 12px;
    }

    .green-solar .green-solar-field,
    .green-solar .green-solar-field.full-width,
    .green-solar .green-solar-submit,
    .green-solar .green-solar-note {
        grid-column: 1 / -1;
        width: 100%;
        min-width: 0;
    }

    .green-solar .green-solar-field input,
    .green-solar .green-solar-field select {
        height: 45px;
        font-size: 14px;
    }

    .green-solar .green-solar-field textarea {
        width: 100%;
        min-height: 90px;
    }

    .green-solar .green-solar-upload {
        width: 100%;
        padding: 10px;
    }

    .green-solar .green-solar-upload input[type="file"] {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        font-size: 12px;
    }

    .green-solar .green-solar-submit {
        display: flex;
        justify-content: center;
    }

    .green-solar .green-solar-submit button {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        height: 50px;
    }
}

.membership-section {
  background-color: #0fc08c; /* Image ka green background color */
  padding: 40px 20px;
  font-family: Arial, sans-serif;
}

.membership-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
  flex-wrap: wrap;
}

.membership-title h2 {
    color: #fff;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin: 0;
    line-height: 1.2;
    text-transform: uppercase;
    font-size: 28px;
}

.membership-logos {
  display: flex;
  align-items: center;
  gap: 95px;
  flex-wrap: wrap;
}

.logo-item img {
    max-height: 95px;
    width: auto;
    object-fit: contain;
    display: block;
    background: #fff;
    padding: 4px;
    border-radius: 5px;
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .membership-container {
    flex-direction: column;
    text-align: center;
    gap: 30px;
  }

  .membership-logos {
    justify-content: center;
    gap: 30px;
  }
  
  .membership-title h2 {
    font-size: 22px;
  }
}



.dpl ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

.dpl ul li {
    position: relative;
    padding-left: 32px;
    margin-bottom: 12px;
    line-height: 1.7;
}

.dpl ul li::before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 4px;
    width: 20px;
    height: 20px;
    border: 1px solid #0fc08c;
    border-radius: 50%;
    color: #0fc08c;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: iconPulse 1.8s infinite;
}

.dpl ul li::after {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    width: 20px;
    height: 20px;
    border: 1px solid #0fc08c;
    border-radius: 50%;
    opacity: 0;
    animation: iconRing 1.8s infinite;
}

@keyframes iconPulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(15, 192, 140, 0.45);
    }
    70% {
        transform: scale(1.05);
        box-shadow: 0 0 0 10px rgba(15, 192, 140, 0);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(15, 192, 140, 0);
    }
}

@keyframes iconRing {
    0% {
        transform: scale(0.8);
        opacity: 0.7;
    }
    100% {
        transform: scale(1.6);
        opacity: 0;
    }
}

.partner-section{
  background: transparent;
  padding: 20px 0;
}

.partner-box{
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background: transparent;
  border-radius: 16px;
  overflow: hidden;
  transition: transform .35s ease;
  animation: softFloat 3.8s ease-in-out infinite;
}

.partner-box::before{
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(15, 192, 140, .22);
  border-radius: 14px;
  opacity: .7;
  pointer-events: none;
}

.partner-box::after{
  content: "";
  position: absolute;
  left: -40%;
  top: 0;
  width: 40%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(15, 192, 140, .12), transparent);
  transform: skewX(-20deg);
  animation: sweep 3.5s linear infinite;
  pointer-events: none;
}

.partner-box img{
max-width: 85%;
    max-height: 100px;
  object-fit: contain;
  position: relative;
  z-index: 1;
  transition: transform .35s ease, filter .35s ease, opacity .35s ease;
  filter: drop-shadow(0 8px 18px rgba(15, 192, 140, .12));
  opacity: .92;
}

.partner-box:hover{
  transform: translateY(-6px);
}

.partner-box:hover img{
  transform: scale(1.06);
  opacity: 1;
}

@keyframes softFloat{
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

@keyframes sweep{
  0% { left: -45%; }
  100% { left: 110%; }
}

@media (max-width: 767px){
  .partner-box{
    height: 140px;
  }

  .partner-box img{
    max-width: 65%;
    max-height: 60px;
  }
}



/* =============================================================666666666666666========================================== */


.sb-hero {
  position: relative;
  padding: 96px 0 72px;
  background: #07141b;
  color: #ffffff;
}

/* .sb-hero::before {
  content: "";
  position: absolute;
  inset: auto -120px -120px auto;
  width: 320px;
  height: 320px;
  background: rgba(15, 192, 140, 0.12);
  filter: blur(10px);
  pointer-events: none;
} */

.sb-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px);
  background-size: 46px 46px;
  opacity: 0.22;
  pointer-events: none;
}

.sb-hero .container,
.sb-section .container {
  position: relative;
  z-index: 1;
}

.sb-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  border: 1px solid rgba(15, 192, 140, 0.28);
  background: rgba(15, 192, 140, 0.08);
  color: #f4fffb;
  border-radius: 999px;
  font-size: 14px;
  margin-bottom: 18px;
}

.sb-hero h1 {
  font-size: 30px;
  color: #fff;
  line-height: 1.03;
  font-weight: 700;
  margin: 0 0 18px;
  letter-spacing: -0.03em;
}

.sb-hero p {
  font-size: 1rem;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.82);
  margin-bottom: 12px;
}

.sb-highlight {
    display: inline-flex;
    padding: 5px 18px;
    margin: 4px 0 6px;
    border-left: 4px solid #0fc08c;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 6px;
    color: #ffffff;
    font-weight: 500;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

.sb-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 6px;
  border-radius: 999px;
  background: #0fc08c;
  color: #07141b;
  font-weight: 700;
  border: none;
  box-shadow: 0 14px 30px rgba(15, 192, 140, 0.28);
  transition: 0.35s ease;
}

.sb-btn:hover {
  transform: translateY(-3px);
  color: #07141b;
  box-shadow: 0 18px 36px rgba(15, 192, 140, 0.38);
}

.sb-hero-card {
  padding: 30px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.22);
}

.sb-hero-card .hero-icon {
  width: 70px;
  height: 70px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  background: rgba(15, 192, 140, 0.14);
  color: #0fc08c;
  font-size: 1.6rem;
  margin-bottom: 18px;
}

.sb-hero-card h3 {
  font-size: 1.4rem;
  color: #fff;
  margin: 0 0 16px;
  font-weight: 600;
}

.sb-hero-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.sb-hero-card li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 0;
  color: rgba(255, 255, 255, 0.88);
}

.sb-hero-card li i {
  color: #0fc08c;
  margin-top: 4px;
}

.sb-section {
  padding: 86px 0;
}

.sb-alt {
  background: #f4fffb;
}

.section-head {
  text-align: center;
  max-width: 920px;
  margin: 0 auto 44px;
}

.section-head span {
  display: inline-block;
  color: #0fc08c;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.78rem;
  margin-bottom: 12px;
}

.section-head h2 {
  font-size: 35px;
  font-weight: 700;
  line-height: 1.15;
  margin: 0;
  letter-spacing: -0.02em;
  color: #153036;
}

.sb-card,
.sb-step,
.sb-process,
.sb-solution,
.sb-text-box,
.sb-rebate,
.sb-cta-box {
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(15, 192, 140, 0.16);
  border-radius: 6px;
  box-shadow: 0 18px 50px rgba(7, 20, 27, 0.12);
  transition: 0.35s ease;
}

.sb-card:hover,
.sb-step:hover,
.sb-process:hover,
.sb-solution:hover {
  transform: translateY(-8px);
  border-color: rgba(15, 192, 140, 0.34);
  box-shadow: 0 6px 60px rgba(7, 20, 27, 0.16);
}

.sb-card {
  padding: 28px;
  height: 100%;
}

.sb-card-icon {
  width: 58px;
  height: 58px;
  border-radius:  6px;
  background: rgba(15, 192, 140, 0.12);
  color: #0fc08c;
  display: grid;
  place-items: center;
  font-size: 1.2rem;
  margin-bottom: 18px;
}

.sb-card h3,
.sb-step h3,
.sb-process h3,
.sb-solution h3 {
  font-size: 1.08rem;
  line-height: 1.4;
  margin: 0 0 10px;
  font-weight: 600;
  color: #153036;
}

.sb-card p,
.sb-step p,
.sb-process p,
.sb-solution p,
.sb-text-box p,
.sb-rebate p,
.sb-cta-box p {
  margin: 0 0 10px;
  color: #5c6f73;
  line-height: 1.85;
  font-size: 0.97rem;
}

.sb-step,
.sb-process {
  padding: 28px;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.step-no {
  width: 46px;
  height: 46px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  font-size: 1rem;
  font-weight: 800;
  color: #ffffff;
  background: #0fc08c;
  box-shadow: 0 10px 22px rgba(15, 192, 140, 0.24);
}

.sb-note {
    margin-top: 24px;
    padding: 8px 20px;
    border-left: 4px solid #0fc08c;
    background: rgba(15, 192, 140, 0.06);
    border-radius: 6px;
    font-weight: 600;
    color: #153036;
}



.sb-solution {
  padding: 28px;
  height: 100%;
}

.sb-solution-top {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 10px;
}

.sb-solution .sb-card-icon {
  flex: 0 0 auto;
  margin-bottom: 0;
}

.sb-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
  color: #0fc08c;
  margin-top: 8px;
}

.sb-text-box {
  padding: 34px;
}

.sb-text-box h3 {
  font-size: 1.3rem;
  font-weight: 700;
  color: #153036;
  margin: 26px 0 20px;
}

.sb-mini {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 18px;
  border-radius: 6px;
  background: rgba(15, 192, 140, 0.05);
  border: 1px solid rgba(15, 192, 140, 0.12);
  height: 100%;
}

.sb-mini i {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(15, 192, 140, 0.12);
  color: #0fc08c;
  flex: 0 0 auto;
}

.sb-mini h4 {
  font-size: 1rem;
  margin: 0 0 8px;
  font-weight: 700;
  color: #153036;
}

.sb-mini p {
  margin: 0;
  font-size: 0.95rem;
  color: #5c6f73;
}

.sb-rebate {
  padding: 36px;
  text-align: left;
}

.sb-accordion .accordion-item {
  margin-bottom: 16px;
  border: 0;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(7, 20, 27, 0.08);
}

.sb-accordion .accordion-button {
  padding: 20px 22px;
  font-weight: 700;
  color: #153036;
  background: #ffffff;
  box-shadow: none;
}

.sb-accordion .accordion-button:not(.collapsed) {
  color: #07141b;
  background: rgba(15, 192, 140, 0.08);
}

.sb-accordion .accordion-button span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  margin-right: 12px;
  background: rgba(15, 192, 140, 0.12);
  color: #0fc08c;
  flex: 0 0 auto;
}

.sb-accordion .accordion-body {
  padding: 0 22px 22px 72px;
  color: #5c6f73;
  line-height: 1.9;
}

.sb-cta {
  padding-top: 0;
}

.sb-cta-box {
  padding: 42px;
  text-align: center;
}

.sb-cta-box span {
  display: inline-block;
  color: #0fc08c;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.78rem;
  margin-bottom: 12px;
}

.sb-cta-box h2 {
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 14px;
  color: #153036;
}

.sb-cta-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-top: 6px;
}

.sb-call {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 4px 18px;
    /* height: 49px; */
    border-radius: 5px;
    background: #ffffff;
    border: 1px solid rgb(19 251 182 / 92%);
    color: #153036;
    font-weight: 700;
    transition: 0.3s ease;
}

.sb-call:hover {
  transform: translateY(-3px);
  border-color: rgba(15, 192, 140, 0.35);
  color: #07141b;
}

.sb-footer-brand {
  margin-top: 22px;
  font-weight: 700;
  color: #153036;
}

.col-lg-2-4 {
  flex: 0 0 auto;
  width: 20%;
}

@media (max-width: 991.98px) {
  .sb-hero {
    padding: 78px 0 64px;
  }

  .sb-section {
    padding: 68px 0;
  }

  .col-lg-2-4 {
    width: 50%;
  }

  .sb-accordion .accordion-body {
    padding-left: 22px;
  }
}

@media (max-width: 575.98px) {
  .sb-hero h1 {
    font-size: 2.1rem;
  }

  .section-head h2 {
    font-size: 1.7rem;
  }

  .sb-card,
  .sb-step,
  .sb-process,
  .sb-solution,
  .sb-text-box,
  .sb-rebate,
  .sb-cta-box {
    padding: 22px;
  }

  .col-lg-2-4 {
    width: 100%;
  }

  .sb-btn,
  .sb-call {
    width: 100%;
    justify-content: center;
  }

  .sb-cta-actions {
    gap: 12px;
  }
}


 .asb-careers-top{
    background:#ffffff;
    position:relative;
    overflow:hidden;
  }

  .asb-careers-top::before{
    content:"";
    position:absolute;
    inset:auto auto -120px -120px;
    width:320px;
    height:320px;
    border-radius:50%;
    background:rgba(15,192,140,0.08);
    filter:blur(10px);
    pointer-events:none;
  }

  .asb-careers-top::after{
    content:"";
    position:absolute;
    inset:60px -100px auto auto;
    width:240px;
    height:240px;
    border-radius:50%;
    background:rgba(15,192,140,0.05);
    filter:blur(14px);
    pointer-events:none;
  }

  .asb-careers-top__grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:34px;
    align-items:center;
  }

  .asb-careers-top__content{
    max-width:640px;
    position:relative;
    z-index:1;
  }

  .asb-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 14px;
    border-radius:999px;
    background:rgba(15,192,140,0.08);
    color:#064E5A;
    border:1px solid rgba(15,192,140,0.16);
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase;
  }

  .asb-kicker--light{
    background:rgba(15,192,140,0.06);
  }

  .asb-title{
    margin-top:18px;
    margin-bottom:18px;
    font-size:51px;
    line-height:1.08;
    font-weight:700;
    letter-spacing:-0.04em;
    color:#10161a;
    text-wrap:balance;
  }

  .asb-lead{
    margin-bottom:26px;
    max-width:600px;
    font-size:17px;
    line-height:1.8;
    color:#4f5b63;
    font-weight:400;
  }

  .asb-form-note{
    display:inline-flex;
    align-items:center;
    padding:12px 0 0;
    font-size:14px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#10161a;
    position:relative;
  }

  .asb-form-note::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:64px;
    height:2px;
    border-radius:999px;
    background:#0fc08c;
  }

  .asb-form-shell{
    position:relative;
    padding:20px;
    min-height:100%;
  }

  .asb-form-card{
    position:relative;
    z-index:1;
    background:#ffffff;
    border:1px solid rgba(16,22,26,0.08);
    border-radius:28px;
    box-shadow:0 28px 70px rgba(16,22,26,0.08);
    padding:30px;
  }

  .asb-form-card__top{
    display:flex;
    justify-content:space-between;
    gap:22px;
    align-items:flex-start;
    margin-bottom:18px;
  }

  .asb-form-card__title{
    font-size:clamp(22px, 2vw, 32px);
    line-height:1.25;
    font-weight:700;
    letter-spacing:-0.03em;
    color:#11181d;
    margin-bottom:10px;
  }

  .asb-form-card__text{
    margin:0;
    font-size:15px;
    line-height:1.7;
    color:#5c6870;
  }

  .asb-step{
    text-align:right;
    flex-shrink:0;
  }

  .asb-step__label{
    display:block;
    margin-bottom:6px;
    font-size:12px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#87939a;
  }

  .asb-step__title{
    display:block;
    font-size:18px;
    line-height:1.2;
    font-weight:700;
    color:#11181d;
  }

  .asb-form-divider{
    height:1px;
    background:linear-gradient(90deg, rgba(15,192,140,0.55), rgba(16,22,26,0.10));
    margin:18px 0 22px;
  }

  .asb-input{
    height:56px;
    border-radius:12px;
    border:1px solid #d8e0de;
    background:#fbfcfc;
    box-shadow:none;
    padding:0 16px;
    font-size:15px;
    color:#11181d;
    transition:all .25s ease;
  }

  .asb-input::placeholder{
    color:#8a959b;
    font-weight:400;
  }

  .asb-input:focus{
    border-color:#0fc08c;
    background:#ffffff;
    box-shadow:0 0 0 0.2rem rgba(15,192,140,0.10);
  }

  .asb-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 26px;
    border-radius:999px;
    text-decoration:none;
    font-size:14px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    transition:all .28s ease;
  }

  .asb-btn--solid{
    background:#0fc08c;
    color:#ffffff;
    border:1px solid #0fc08c;
    box-shadow:0 14px 28px rgba(15,192,140,0.22);
  }

  .asb-btn--solid:hover{
    transform:translateY(-2px);
    color:#ffffff;
    background:#0ca47a;
    border-color:#0ca47a;
  }

  .asb-btn--outline{
    border:1px solid rgba(16,22,26,0.14);
    color:#10161a;
    background:#ffffff;
  }

  .asb-btn--outline:hover{
    border-color:#0fc08c;
    color:#0fc08c;
    transform:translateY(-2px);
  }

  .asb-float{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    z-index:0;
    filter:blur(2px);
  }

  .asb-float--one{
    width:120px;
    height:120px;
    left:-10px;
    top:20px;
    background:rgba(15,192,140,0.08);
    animation:asbFloat 8s ease-in-out infinite;
  }

  .asb-float--two{
    width:72px;
    height:72px;
    right:10px;
    bottom:-16px;
    background:rgba(15,192,140,0.10);
    animation:asbFloat 7s ease-in-out infinite reverse;
  }

  .asb-careers-list{
    background:#ffffff;
  }

  .asb-careers-list__panel{
    max-width:1100px;
    margin:0 auto;
    border-radius:34px;
    background:#f8fbfa;
    border:1px solid rgba(15,192,140,0.10);
    box-shadow:0 22px 60px rgba(16,22,26,0.05);
    padding:40px 28px 34px;
  }

  .asb-careers-list__head{
    max-width:820px;
    margin:0 auto 28px;
  }

  .asb-section-title{
    margin:16px 0 14px;
    font-size:clamp(28px, 3vw, 50px);
    line-height:1.08;
    font-weight:700;
    letter-spacing:-0.04em;
    color:#10161a;
  }

  .asb-section-text{
    margin:0 auto;
    max-width:760px;
    font-size:17px;
    line-height:1.8;
    color:#52616a;
  }

  .asb-section-text a{
    color:#0fc08c;
    text-decoration:none;
    border-bottom:1px solid rgba(15,192,140,0.45);
    padding-bottom:1px;
  }

  .asb-accordion{
    max-width:1000px;
    margin:0 auto;
    border-radius:24px;
    overflow:hidden;
  }

  .asb-accordion-item{
    border:1px solid rgba(16,22,26,0.08);
    background:#ffffff;
  }

  .asb-accordion-item + .asb-accordion-item{
    border-top:0;
  }

  .asb-accordion-button{
    background:#ffffff;
    box-shadow:none;
    padding:20px 22px;
    gap:14px;
    color:#10161a;
    font-size:clamp(16px, 1.5vw, 19px);
    font-weight:600;
    letter-spacing:-0.02em;
  }

  .asb-accordion-button:not(.collapsed){
    background:#ffffff;
    color:#10161a;
    box-shadow:none;
  }

  .asb-accordion-button:focus{
    box-shadow:none;
    border-color:transparent;
  }

  .asb-accordion-button::after{
    background-image:none;
    content:"+";
    width:26px;
    height:26px;
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    line-height:1;
    font-weight:400;
    color:#0fc08c;
    transition:transform .25s ease;
  }

  .asb-accordion-button:not(.collapsed)::after{
    content:"–";
    transform:rotate(0deg);
  }

  .asb-accordion-index{
    width:30px;
    height:30px;
    min-width:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    background:#0fc08c;
    color:#ffffff;
    font-size:15px;
    font-weight:700;
    box-shadow:0 10px 18px rgba(15,192,140,0.16);
  }

  .asb-accordion-title{
    flex:1;
  }

  .asb-accordion-body{
    padding:0 22px 22px 66px;
    color:#52616a;
    background:#ffffff;
    font-size:15px;
    line-height:1.8;
  }

  @keyframes asbFloat{
    0%,100%{ transform:translateY(0) }
    50%{ transform:translateY(-10px) }
  }

  @media (max-width: 991px){
    .asb-careers-top__grid{
      grid-template-columns:1fr;
    }

    .asb-form-shell{
      padding:0;
    }

    .asb-form-card{
      padding:24px;
    }

    .asb-careers-list__panel{
      padding:28px 18px 24px;
      border-radius:26px;
    }

    .asb-form-card__top{
      flex-direction:column;
    }

    .asb-step{
      text-align:left;
    }

    .asb-accordion-body{
      padding-left:22px;
    }
  }

  @media (max-width: 575px){
    .asb-title{
      font-size:30px;
    }

    .asb-lead,
    .asb-section-text{
      font-size:16px;
    }

    .asb-btn{
      width:100%;
    }

    .asb-form-card{
      padding:18px;
      border-radius:22px;
    }

    .asb-input{
      height:52px;
    }

    .asb-accordion-button{
      padding:18px 14px;
      gap:10px;
    }

    .asb-accordion-body{
      padding:0 14px 18px 18px;
    }
  }
  .accordion-button:not(.collapsed)::after {
    background-image: unset;
    /* transform: var(--bs-accordion-btn-icon-transform); */
}