@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Roboto:wght@100;300;400;500;700;900&display=swap');

:root {
    --body-font: 'Roboto', sans-serif;
    --heading-font: 'Inter', sans-serif;
    --theme-color: #FFB300;
    --theme-bg-light: #F9F9F9;
    --body-text-color: #757F95;
    --color-white: #ffffff;
    --color-dark: #111111;
    --color-green: #11B76B;
    --color-blue: #0049D0;
    --color-yellow: #FBA707;
    --hero-overlay-color: #01060F;
    --slider-arrow-bg: rgba(255, 255, 255, 0.2);
    --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: #111111;
    --footer-bg2: #181818;
    --footer-text-color: #F5FAFF;
  }

/* CSS Reset */

*,
*:before,
*:after {
  box-sizing: inherit;
}

* {
  scroll-behavior: inherit !important;
}

html,
body {
  height: auto;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  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;
}

.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;
}


/*===================
5. Theme default css
======================*/

.ovrflow-hidden {
    overflow: hidden;
  }
  
  .position-relative {
    position: relative;
    z-index: 1;
  }
  
  .text-right {
    text-align: right;
  }
  
  .space-between {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  
  .c-pd {
    padding: 0 7rem;
  }
  
  .s-pd {
    padding: 0 12rem;
  }
  
  .h-100 {
    height: 100%;
  }
  
  .h-100vh {
    height: 100vh;
  }
  
  .bg {
    background: var(--theme-bg-light);
  }
  
  
  
  /*====================
  6. Margin & padding
  ======================*/
  
  .pb-140 {
    padding-bottom: 140px;
  }
  
  .pd-50 {
    padding: 50px 0;
  }
  
  .py-120 {
    padding: 120px 0;
  }
  
  .pt-120 {
    padding-top: 120px;
  }
  
  .pb-120 {
    padding-bottom: 120px;
  }
  
  .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;
  }
  
  .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;
  }
  
  .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-120 {
    margin-top: 120px;
  }
  
  .mt-150 {
    margin-top: 150px;
  }
  
  .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-120 {
    margin-bottom: 120px;
  }
  
  .mb-150 {
    margin-bottom: 150px;
  }
  
  .mr-300 {
    margin-right: 300px;
  }
  
  .ml-300 {
    margin-left: 300px;
  }
  
/*====================
8. Theme button
======================*/

.theme-btn {
    font-size: 14px;
    color: var(--color-dark);
    padding: 14px 25px;
    transition: all 0.5s;
    text-transform: uppercase;
    position: relative;
    border-radius: 50px;
    font-weight: 600;
    letter-spacing: .5px;
    cursor: pointer;
    text-align: center;
    overflow: hidden;
    border: none;
    background: var(--theme-color);
    box-shadow: var(--box-shadow);
    z-index: 1;
  }
  
  .theme-btn::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 {
    transform: translateY(-50%) translateX(-50%) scale(1);
  }
  
  .theme-btn i {
    margin-left: 5px;
  }
  
  .theme-btn span {
    margin-right: 5px;
  }
  
  .theme-btn2{
    background: var(--color-white);
    color: var(--color-dark);
  }
  
  .theme-btn2::before{
    background: var(--theme-color);
  }
  
  .theme-btn2:hover{
    color: var(--color-dark);
  }
  
  
  
  /*====================
  9. Container
  ======================*/
  
  @media (min-width: 1200px) {
    .container,
    .container-sm,
    .container-md,
    .container-lg,
    .container-xl {
      max-width: 1200px;
    }
  }
  
  
  
  /*====================
  10. Scroll top css
  ======================*/
  
  #scroll-top {
    position: fixed;
    bottom: -20px;
    right: 30px;
    z-index: 99;
    font-size: 23px;
    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;
    z-index: 1;
  }
  
  #scroll-top.active{
    opacity: 1;
    visibility: visible;
    bottom: 20px;
  }
  
  
  @media all and (min-width: 768px) and (max-width: 1199px) {
    #scroll-top.active {
      bottom: 100px;
    }
  }
/*====================
11. Header top css
======================*/

.header-top {
    padding: 8px 0 10px 0;
    position: relative;
    background:  var(--color-dark);
    border-bottom: 5px solid var(--theme-color);
    z-index: 1;
  }
  
  /* .header-top::before{
    content: "";
    position: absolute;
    background: var(--color-dark);
    border-radius: 0 50px 0 0;
    border-right: 15px solid #fff;
    width: 10%;
    top: 0;
    left: 0;
    bottom: -1px;
    z-index: -1;
  } */
  
  /* .header-top::after{
    content: "";
    position: absolute;
    background: var(--color-dark);
    border-radius: 50px 0 0 0;
    border-left: 15px solid #fff;
    width: 10%;
    top: 0;
    right: 0;
    bottom: -1px;
    z-index: -1;
  } */
  
  .header-top-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  
  .header-top-contact ul {
    display: flex;
    align-items: center;
    gap: 25px;
  }
  
  .header-top-contact a {
    color: var(--color-white);
    font-weight: 500;
  }
  
  .header-top-contact a i{
    color: var(--theme-color);
  }
  
  .header-top-right {
    display: flex;
    align-items: center;
    gap: 15px;
  }
  
  .header-top-link a{
    color: var(--color-white);
    margin-right: 12px;
  }
  
  .header-top-link a:hover{
    color: var(--theme-color);
  }
  
  .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-color);
  }
  
  
  @media all and (max-width: 1199px) {
  
    .header-top-contact 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: 992px) {
    .header-top {
      display: none;
    }
  }
  
  
  
  /*====================
  12. Navbar css
  ======================*/
  
  .navbar {
    background: var(--color-white);
    padding-top: 0px;
    padding-bottom: 0px;
    box-shadow: var(--box-shadow);
    z-index: 999;
  }
  
  .navbar.fixed-top {
    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 .navbar-toggler:focus {
    outline: none;
    box-shadow: none;
  }
  
  .navbar-toggler-mobile-icon {
    display: inline-block;
    width: inherit;
    height: inherit;
  }
  
  .navbar-brand {
    margin-right: 0;
  }
  
  .navbar-brand img {
    width: 180px;
  }
  
  .navbar .dropdown-toggle::after {
    display: inline-block;
    margin-left: 5px;
    vertical-align: baseline;
    font-family: 'Font Awesome 6 Free';
    content: "\f107";
    font-weight: 600;
    border: none;
    font-size: 14px;
  }
  
  @media all and (max-width: 1199px) {
    .nav-right {
      margin-left: 25px !important;
    }
  
    .navbar .nav-item .nav-link {
      margin-right: 15px;
    }
  
    .navbar .nav-right-btn {
      display: none;
    }
  }
  
  @media all and (min-width: 992px) {
    .navbar .nav-item .nav-link {
      margin-right: 20px;
      padding: 30px 0 30px 0;
      font-size: 17px;
      font-weight: 600;
      color:  var(--color-dark);
      text-transform: capitalize;
    }
  
    .navbar .nav-item:last-child .nav-link {
      margin-right: 0;
    }
  
    .navbar .nav-item .dropdown-menu {
      display: block;
      opacity: 0;
      visibility: hidden;
      transition: .3s;
      margin-top: 0;
      border: none;
      left: -15px;
      border-radius: 8px;
      background: var(--color-white);
      width: 220px;
      box-shadow: var(--box-shadow);
    }
  
    .navbar .nav-item .dropdown-menu li {
      border-bottom: 1px solid var(--border-info-color);
    }
  
    .navbar .nav-item .dropdown-menu li:last-child {
      margin-bottom: 0;
      border-bottom: none;
    }
  
    .navbar .nav-item .dropdown-menu .dropdown-item {
      font-size: 16px;
      padding: 9px 25px;
      font-weight: 600;
      color:  var(--color-dark);
      position: relative;
      overflow: hidden;
      text-transform: capitalize;
      transition: all .3s ease-in-out;
    }
  
    .navbar .nav-item .dropdown-menu .dropdown-item:hover {
      background: transparent;
      color: var(--theme-color);
      padding-left: 32px;
    }
  
    .navbar .nav-item .dropdown-menu .dropdown-item::before {
      content: "//";
      position: absolute;
      left: 15px;
      top: 9px;
      color: var(--theme-color);
      opacity: 0;
      visibility: hidden;
      transition: var(--transition);
      z-index: -1;
    }
  
    .navbar .nav-item .dropdown-menu .dropdown-item:hover::before {
      opacity: 1;
      visibility: visible;
    }
  
    .navbar .nav-item .nav-link {
      position: relative;
    }
  
    .navbar .nav-item .nav-link.active,
    .navbar .nav-item:hover .nav-link {
      color: var(--theme-color);
    }
  
    .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%;
    }
  
    .navbar #main_nav {
      justify-content: flex-end;
    }
  
    /* nav right */
    .nav-right {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 20px;
      margin-left: 45px;
    }
  
    .nav-right-link {
      position: relative;
      font-size: 20px;
      color:  var(--color-dark);
      transition: var(--transition);
    }
  
    .nav-right-link:hover {
      color: var(--theme-color) !important;
    }
  
    .nav-right .sidebar-btn .nav-right-link,
    .nav-right .search-btn .nav-right-link {
      border: none;
      background: transparent;
      color: var(--color-dark);
      font-size: 28px;
      padding-right: 0;
    }
  
    .nav-right .search-btn .nav-right-link {
      font-size: 20px;
      padding: 0;
    }
  
    .nav-right .theme-btn{
      padding: 12px 25px;
    }
  
  }
  
  
  /* mobile menu */
  .mobile-menu-right {
    display: none;
  }
  
  @media all and (max-width: 991px) {
    .navbar {
      top: 0;
      right: 0;
      left: 0;
      position: fixed;
    }
    .navbar-brand {
      padding-left: 10px;
    }
  
    .navbar-brand img {
      width: 130px;
    }
  
    .navbar-collapse {
      max-height: 220px;
      overflow: hidden;
      overflow-y: auto;
      padding: 0 20px;
      background-color: var(--color-white);
    }
  
    .dropdown-toggle::after {
      float: right;
    }
  
    .navbar .nav-item .nav-link {
      color:  var(--color-dark);
      font-weight: 700;
      transition: var(--transition);
    }
  
    .navbar .nav-item .nav-link:hover {
      color: var(--theme-color) !important;
    }
  
    .navbar-toggler {
      padding: 0;
      border: none;
    }
  
    .mobile-menu-right {
      display: flex;
      align-items: center;
      gap: 20px;
    }
  
    .mobile-menu-right .nav-right-link {
      background: transparent;
      border: none;
      font-size: 20px;
      color: var(--color-dark);
    }
  
    .mobile-menu-right .nav-right-link:hover{
      color: var(--theme-color);
    }
  
    .search-area.open{
      top: 50px !important;
    }
  
    .navbar-toggler-mobile-icon {
      font-size: 25px;
      color:  var(--color-dark);
      font-weight: 500;
    }
  
    .navbar .dropdown-menu {
      border-radius: 8px;
    }
  
    .nav-right {
      display: none;
    }
  
  }
/*====================
15. sidebar popup css 
======================*/

.sidebar-popup {
    position: fixed;
    top: 0;
    left: 0;
    content: "";
    background-color: rgba(0, 0, 0, 0.8);
    width: 100%;
    height: 100%;
    z-index: 999;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: var(--transition);
    transition: var(--transition);
  }
  
  .sidebar-popup.open {
    visibility: visible;
    opacity: 1;
  }
  
  .sidebar-wrapper {
    position: fixed;
    top: 0;
    right: -100%;
    width: 450px;
    background: var(--color-white);
    visibility: hidden;
    opacity: 0;
    padding: 40px;
    -webkit-transition: var(--transition);
    transition: var(--transition);
    z-index: 9999;
  }
  
  .sidebar-wrapper.open {
    right: 0;
    visibility: visible;
    opacity: 1;
  }
  
  .sidebar-content{
    position: relative;
    overflow-y: auto;
    height: calc(100vh - 75px);
  }
  
  .close-sidebar-popup{
    position: absolute;
    top: 1px;
    right: 1px;
    width: 38px;
    height: 38px;
    line-height: 36px;
    border-radius: 50px;
    text-align: center;
    border: none;
    font-size: 20px;
    background: var(--color-dark);
    color: var(--color-white);
    box-shadow: var(--box-shadow);
    transition: var(--transition);
  }
  
  .close-sidebar-popup:hover{
    background: var(--theme-color);
  }
  
  .sidebar-logo img{
    width: 220px;
  }
  
  .sidebar-about{
    margin-top: 40px;
  }
  
  .sidebar-about h4{
    font-size: 19px;
    text-transform: uppercase;
    margin-bottom: 10px;
  }
  
  .sidebar-contact{
    margin-top: 20px;
  }
  
  .sidebar-contact h4{
    font-size: 19px;
    text-transform: uppercase;
    margin-bottom: 15px;
  }
  
  .sidebar-contact li{
    margin: 10px 0;
  }
  
  .sidebar-contact li i{
    margin-right: 5px;
    color: var(--theme-color);
  }
  
  .sidebar-contact li a:hover{
    color: var(--theme-color);
  }
  
  .sidebar-social{
    margin-top: 25px;
  }
  
  .sidebar-social h4{
    margin-bottom: 20px;
    font-size: 19px;
    text-transform: uppercase;
  }
  
  .sidebar-social a{
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 50px;
    margin-right: 8px;
    background: var(--color-dark);
    color: var(--color-white);
    box-shadow: var(--box-shadow);
  }
  
  .sidebar-social a:hover{
    background: var(--theme-color);
  }

/*====================
16. Main section css 
======================*/

.main {
    margin-top: 0rem;
  }
  
  
  
  /*====================
  17. Hero css 
  ======================*/
  
  .hero-section {
    position: relative;
  }
  
  .hero-single {
    padding-top: 180px;
    padding-bottom: 180px;
    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%;
    left: -0.5px;
    top: 0;
    background: var(--hero-overlay-color);
    opacity: 0.7;
    z-index: -1;
  }
  
  .hero-single .hero-content {
    height: 100%;
  }
  
  .hero-single .hero-content .hero-title {
    color: var(--color-white);
    font-size: 60px;
    font-weight: 800;
    margin: 20px 0;
    text-transform: uppercase;
  }
  
  .hero-single .hero-content .hero-title span{
    color: var(--theme-color);
  }
  
  .hero-single .hero-content .hero-sub-title {
    display: inline-block;
    color: var(--theme-color);
    font-size: 25px;
    letter-spacing: 6px;
    font-weight: 800;
    position: relative;
    text-transform: uppercase;
  }
  
  .hero-single .hero-content p {
    color: var(--color-white);
    line-height: 30px;
    font-weight: 400;
    margin-bottom: 20px;
  }
  
  .hero-single .hero-content .hero-btn {
    gap: 1rem;
    display: flex;
    margin-top: 35px;
    justify-content: start;
  }
  
  .hero-slider.owl-theme .owl-nav {
    margin-top: 0px;
  }
  
  .hero-slider.owl-theme .owl-nav [class*=owl-] {
    color: var(--color-white);
    font-size: 25px;
    margin: 0;
    padding: 0;
    background: var(--slider-arrow-bg);
    display: inline-block;
    cursor: pointer;
    height: 60px;
    width: 60px;
    line-height: 60px;
    border-radius: 50px;
    text-align: center;
    transition: var(--transition);
  }
  
  .hero-slider.owl-theme .owl-nav [class*=owl-]:hover {
    background: var(--color-white);
    color: var(--theme-color);
  }
  
  .hero-slider.owl-theme .owl-nav .owl-prev {
    left: 40px;
  }
  
  .hero-slider.owl-theme .owl-nav .owl-next {
    right: 40px;
  }
  
  .hero-slider.owl-theme .owl-nav .owl-prev,
  .hero-slider.owl-theme .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
  }
  
  @media all and (max-width: 1199px) {
  
    .hero-single .hero-content .hero-title {
      font-size: 37px;
    }
  
    .hero-slider.owl-theme .owl-nav .owl-prev,
    .hero-slider.owl-theme .owl-nav .owl-next {
      top: unset;
      bottom: 70px !important;
    }
  
    .hero-slider.owl-theme .owl-nav .owl-prev {
      left: unset;
      right: 120px;
    }
  
    .hero-slider.owl-theme .owl-nav .owl-next {
      right: 40px;
    }
  
  }
  
  @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;
    }
  
  }
  
  
/*===================
18. 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(1.5);
      transform: scale(1.5);
    }
  }
/*====================
23. About css 
======================*/

.about-left {
    position: relative;
  }
  
  .about-img img{
    border-radius: 15px;
  }
  
  .about-experience{
    position: absolute;
    display: flex;
    align-items: center;
    gap: 10px;
    top: 0px;
    left: 0px;
    background:  var(--color-dark);
    border-radius: 50px;
    padding: 10px 30px 10px 10px;
    color: var(--color-white);
    box-shadow: 0 0 40px 5px rgb(0 0 0 / 10%);
  }
  
  .about-experience-icon{
    color: var(--color-white);
    font-size: 45px;
    width: 70px;
    height: 70px;
    line-height: 63px;
    text-align: center;
    background: var(--theme-color);
    border-radius: 50px;
  }
  
  .about-experience-icon img{
    width: 50px;
    filter: brightness(0) invert(1);
  }
  
  .about-right {
    position: relative;
    display: block;
    padding-left: 30px;
  }
  
  .about-list-wrapper {
    position: relative;
    display: block;
    margin-top: 20px;
    margin-bottom: 10px;
  }
  
  .about-list {
    position: relative;
    display: block;
  }
  
  .about-list li {
    position: relative;
    padding-left: 25px;
    margin-top: 10px;
    font-weight: 500;
  }
  
  .about-list li::before {
    content: "\f058";
    position: absolute;
    left: 0;
    top: 0;
    font-family: "Font Awesome 6 Free";
    color: var(--theme-color);
    font-weight: bold;
  }
  
  @media all and (max-width: 991px) {
    .about-right {
      margin-top: 30px;
    }
  }  

  
/*====================
24. Service css 
======================*/

.service-area {
    position: relative;
    display: block;
    overflow: hidden;
  }
  
  .service-item {
    position: relative;
    padding: 0 20px 20px 20px;
    margin-bottom: 25px;
    transition: var(--transition);
    z-index: 1;
  }
  
  .service-item::before{
    content: "";
    position: absolute;
    background: var(--color-white);
    box-shadow: var(--box-shadow);
    border-radius: 20px;
    width: 100%;
    left: 0px;
    top: 130px;
    bottom: 0px;
    z-index: -1;
  }
  
  .service-item:hover {
    transform: translateY(-10px);
  }
  
  .service-img img{
    border-radius: 30px;
  }
  
  .service-content {
    position: relative;
    margin-top: 5px;
  }
  
  .service-icon {
    position: absolute;
    width: 80px;
    height: 80px;
    line-height: 82px;
    background: var(--theme-color);
    font-size: 50px;
    color: var(--color-white);
    text-align: center;
    border-radius: 50%;
    margin-top: -60px;
    right: 40px;
    box-shadow: var(--box-shadow);
    z-index: 1;
  }
  
  .service-icon img{
    width:40px;
  }
  
  .service-arrow {
    margin-top: 25px;
  }
  
  .service-title a {
    font-size: 22px;
    margin: 20px 0;
    font-weight: 600;
    margin-bottom: 10px;
    color:  var(--color-dark);
  }
  
  .service-title a:hover {
    color: var(--theme-color);
  }
  
  .service-arrow .theme-btn{
    padding: 10px 22px;
  }
  
  
  
  /*==================
  25. Service single
  ====================*/
  
  .service-single-list i {
    color: var(--theme-color);
    margin-right: 10px;
  }
  
  .service-download a {
    border: 2px solid var(--theme-color);
    padding: 12px 20px;
    color:  var(--color-dark);
    display: block;
    margin-bottom: 20px;
    font-weight: 600;
    border-radius: 50px;
    transition: var(--transition);
  }
  
  .service-download a i {
    margin-right: 10px;
  }
  
  .service-download a:hover {
    background-color: var(--theme-color);
    color: var(--color-white);
  }
  
  .service-details h3 {
    color:  var(--color-dark);
  }
  
  .service-details img{
    border-radius: 15px;
  }

/* Top destinations */
.grid {
  background: #DDD;
}

/* clear fix */
.grid:after {
  content: '';
  display: block;
  clear: both;
}

/* ---- .grid-item ---- */

.grid-sizer,
.grid-item {
  width: 33.333%;
}

.grid-item {
  float: left;
}

.grid-item img {
  display: block;
  max-width: 100%;
}


  /*====================
26. Feature css 
======================*/

.top-destinations-area {
    position: relative;
    z-index: 1;
  }
  
  .feature-bg{
    background-image: url(../images/theme/01.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
  }
  
  .feature-bg::before{
    content: "";
    position: absolute;
    background: rgba(0, 0, 0, .75);
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }
  
  .top-destinations-area::after{
    content: "";
    position: absolute;
    background-image: url(../images/theme/shape-2.png);
    background-repeat: repeat-x;
    width: 500%;
    height: 50px;
    bottom: -10px;
    left: 0;
    animation: slide 100s linear infinite;
  }
  
  @keyframes slide {
    100%{
      transform: translateX(-3400px);
    }
  }
  
  .feature-item {
    padding: 25px 20px;
    text-align: center;
    position: relative;
    background: var(--color-white);
    border-radius: 15px;
    margin-bottom: 25px;
    overflow: hidden;
    box-shadow: var(--box-shadow);
    transition: var(--transition);
    z-index: 1;
  }
  
  .feature-item:hover{
    transform: translateY(-10px);
  }
  
  .feature-icon {
    width: 100px;
    height: 100px;
    line-height: 85px;
    border-radius: 50px;
    margin: 0 auto 20px auto;
    border: 5px solid var(--color-dark);
    background: var(--theme-color);
    transition: var(--transition);
  }
  
  .feature-icon img {
    width: 55px;
  }
  
  .feature-item:hover .feature-icon {
    transform: rotateY(360deg);
  }
  
  .feature-item h4 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 15px;
  }
  
  
  @media all and (max-width: 1199px) {
    .feature-area {
      margin-top: -20px;
    }
  }
  
  
  
  
/*====================
30. Counter css 
======================*/

.counter-area {
    position: relative;
    z-index: 2;
  }
  
  .counter-wrapper{
    background-image: url(../images/theme/shape-3.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding-top: 40px;
    padding-bottom: 40px;
    margin-bottom: -150px;
    border-radius: 30px;
    box-shadow: var(--box-shadow);
  }
  
  .counter-box {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    gap: 20px;
    position: relative;
    z-index: 1;
  }
  
  .counter-box .icon {
    position: relative;
    text-align: center;
    font-size: 60px;
    border-radius: 50%;
    width: 120px;
    height: 120px;
    line-height: 100px;
    color: var(--color-white);
    border: 5px solid var(--color-white);
    background:  var(--theme-color);
    z-index: 1;
  }
  
  .counter-box .icon img{
    width: 70px;
  }
  
  .counter-box .counter {
    display: block;
    line-height: 1;
    color: var(--color-white);
    font-size: 50px;
    font-weight: 600;
  }
  
  .counter-box .title {
    color: var(--color-white);
    margin-top: 20px;
    font-size: 20px;
    font-weight: 600;
    text-transform: capitalize;
  }
  
  @media all and (max-width: 991px) {
    .counter-area .counter-box {
      margin: 40px 0;
    }
  }
  /*====================
28. Choose css 
======================*/

.choose-area{
    position: relative;
    background:  var(--color-dark);
    z-index: 1;
  }
  
  .choose-area::before{
    content: "";
    position: absolute;
    background-image: url(../images/theme/shape-6.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0.04;
    z-index: -1;
  }
  
  .choose-item{
    display: flex;
    gap: 15px;
    position: relative;
    background: var(--color-white);
    border-radius: 25px;
    margin-bottom: 25px;
    padding: 20px;
    box-shadow: var(--box-shadow);
    z-index: 1;
  }
  
  .choose-count{
    position: absolute;
    right: 20px;
    top: -10px;
    font-size: 50px;
    font-weight: 800;
    -webkit-text-stroke: 1px var(--theme-color);
    -webkit-text-fill-color: transparent;
    z-index: -1;
  }
  
  .choose-item-icon{
    width: 90px;
    height: 90px;
    line-height: 80px;
    background: var(--theme-color);
    color: var(--color-white);
    font-size: 45px;
    border-radius: 50px;
    margin-bottom: 15px;
    text-align: center;
  }
  
  .choose-item-icon img{
    width: 55px;
  }
  
  .choose-item-info{
    flex: 1;
  }
  
  .choose-item-info h3{
    margin-bottom: 10px;
    font-size: 22px;
    font-weight: 600;
  }
  
  .cha-2{
    padding-top: 350px;
  }
  
  
  @media all and (max-width: 991px) {
    .choose-content-wrapper {
      margin-top: 40px;
    }
  }
  
  @media all and (max-width: 767px) {
    .choose-item{
      flex-direction: column;
    }
  }
  /*====================
43. Faq css 
======================*/

.faq-area .accordion-item {
    border: none;
    margin-bottom: 30px;
    background: var(--color-white);
    border-radius: 12px !important;
    box-shadow: var(--box-shadow);
  }
  
  .faq-img img{
    border-radius: 15px;
  }
  
  .faq-area .accordion-item span {
    width: 45px;
    height: 45px;
    margin-right: 15px;
  }
  
  .faq-area .accordion-item 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-button:not(.collapsed) {
    color: var(--theme-color);
    background: transparent;
    box-shadow: inset 0 -1px 0 rgb(0 0 0 / 13%);
  }
  
  .accordion-button {
    border-radius: 0px !important;
    background: transparent;
    font-weight: 700;
    font-size: 20px;
    color:  var(--color-dark);
    box-shadow: none !important;
  }
  
  .accordion-button:not(.collapsed) {
    border-bottom: 1px solid var(--theme-color);
  }
  
  .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  }
  
  @media all and (max-width: 991px) {
    .faq-right {
      margin-bottom: 50px;
    }
  
    .accordion-button {
      font-size: 16px;
    }
  }

  /*====================
31. Cta css 
======================*/

.cta-area{
    background: var(--theme-color);
    position: relative;
    padding: 120px 0;
    z-index: 1;
  }
  
  .cta-area::before{
    content: "";
    position: absolute;
    background-image: url(../img/shape/shape-5.png);
    background-repeat: repeat-x;
    width: 100%;
    height: 50px;
    left: 0;
    top: 0;
    z-index: -1;
  }
  
  .cta-area::after{
    content: "";
    position: absolute;
    background-image: url(../img/shape/shape-5.png);
    background-repeat: repeat-x;
    width: 100%;
    height: 50px;
    left: 0;
    bottom: -10px;
    z-index: -1;
  }
  
  .cta-text h1{
    color: var(--color-white);
    font-size: 50px;
    text-transform: capitalize;
    margin-bottom: 15px;
  }
  
  .cta-text p{
    color: var(--color-white);
  }
  
  .cta-number{
    font-size: 32px;
    color: var(--color-white) !important;
    font-weight: 700;
  }
  
  .cta-number i{
    margin-right: 15px;
  }
  
  .cta-btn .theme-btn{
    background: var(--color-dark);
    color: var(--color-white);
  }
  
  .cta-btn .theme-btn:hover::before{
    background: var(--color-white);
  }
  
  .cta-btn .theme-btn:hover{
    color: var(--color-dark);
  }
  
  .cta-divider{
    position: relative;
  }
  
  .cta-divider::before {
    position: absolute;
    content: close-quote;
    width: 2px;
    bottom: 0;
    background-color: var(--color-white);
    right: -118px;
    top: 0;
  }
  
  .cta-divider:after {
    width: 0px;
    position: absolute;
    content: close-quote;
    height: 0px;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 7px solid var(--color-white);
    top: 50%;
    transform: translateY(-50%);
    right: -124px;
  }
  /*====================
44. 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: 150px;
    padding-bottom: 150px;
    z-index: 1;
  }
  
  .site-breadcrumb::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: var(--hero-overlay-color);
    opacity: 0.75;
    z-index: -1;
  }
  
  .site-breadcrumb .breadcrumb-title {
    font-size: 40px;
    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: '\276F'; /* Unicode for a right arrow */
    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);
  }
  
  @media (max-width: 991px) {
    .site-breadcrumb {
      padding-top: 200px;
    }
  }
/*===================
35. Contact us css 
=====================*/

     .contact-map {
      margin-bottom: -9px;
    }
    
    .contact-map iframe {
      width: 100%;
      height: 450px;
    }
    .contact-section .contact-info {
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease, -webkit-transform .3s ease
    }
    
    .contact-section .contact-info:hover {
      -webkit-transform: translateY(-5px);
      transform: translateY(-5px)
    }
    
    .contact-section .contact-info .contact-card {
      -webkit-transition: all .3s ease;
      transition: all .3s ease
    }
    
    .contact-section .contact-info .contact-card:hover {
      background-color: #fecc18 !important
    }
    
    .contact-section .contact-info .contact-card:hover .contact-details h5,
    .contact-section .contact-info .contact-card:hover .contact-details p,
    .contact-section .contact-info .contact-card:hover .contact-icon i {
      color: #000 !important
    }
    
    .contact-section .contact-form .form-control {
      border: 1px solid #e0e0e0
    }
    
    .contact-section .contact-form .form-control:focus {
      -webkit-box-shadow: 0 0 0 .25rem rgba(254, 204, 24, .25);
      box-shadow: 0 0 0 .25rem rgba(254, 204, 24, .25);
      border-color: #fecc18
    }
    
    .contact-section .contact-form .btn-primary {
      background-color: #fecc18;
      border-color: #fecc18;
      -webkit-transition: all .3s ease;
      transition: all .3s ease
    }
    
    .contact-section .contact-form .btn-primary:hover {
      background-color: rgb(226.0215517241, 177.099137931, .9784482759);
      border-color: rgb(226.0215517241, 177.099137931, .9784482759);
      -webkit-transform: translateY(-2px);
      transform: translateY(-2px)
    }
    
    .contact-section .social-links .btn-light {
      width: 40px;
      height: 40px;
      -webkit-transition: all .3s ease;
      transition: all .3s ease
    }
    
    .contact-section .social-links .btn-light.facebook:hover {
      color: #3b5998;
      background-color: #f7f7f7
    }
    
    .contact-section .social-links .btn-light.twitter:hover {
      color: #1da1f2;
      background-color: #f7f7f7
    }
    
    .contact-section .social-links .btn-light.instagram:hover {
      color: #c32aa3;
      background-color: #f7f7f7
    }
    
    .contact-section .social-links .btn-light.google-p:hover {
      color: #db4439;
      background-color: #f7f7f7
    }
    
    .contact-section .social-links .btn-light.linkedin:hover {
      color: #007bb6;
      background-color: #f7f7f7
    }
    
    .contact-section .social-links .btn-light.pinterest:hover {
      color: #bd081c;
      background-color: #f7f7f7
    }
    .contact-details p{
      overflow-wrap: anywhere;
    }


/*====================
19. Nice select css
======================*/

.nice-select{
  width: 100%;
  height: 55px;
  line-height: 54px;
  border-radius: 10px;
  font-size: 16px;
  border-color: #CED4DA;
  color: var(--body-text-color);
}

.nice-select::after{
  width: 9px;
  height: 9px;
  right: 20px;
  margin-top: -7px
}

.nice-select:focus{
  border-color: var(--theme-color);
}

.nice-select .list{
  width: 100%;
  border: none;
  border-radius: 10px;
  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: 8px;
  background: rgba(255, 179, 0, .1);
  color: var(--theme-color);
}
    /*===================
38. Book ride css 
=====================*/

.book-ride .booking-form{
  padding: 40px;
}

.book-ride-head{
  text-align: center;
  padding-bottom: 30px;
  margin-bottom: 25px;
  border-bottom: 1px solid var(--border-info-color);
}

.book-ride .theme-btn{
  margin-top: 35px;
  text-align: center;
}

.book-ride .form-check{
  margin-top: 25px;
}

.book-ride .form-check-input{
  margin-top: 7px;
  box-shadow: none;
}

.book-ride .form-check-input:focus{
  border-color: var(--theme-color);
}

.book-ride .form-check-label{
  color: var(--color-dark);
}
/* ===================
20. Booking css 
====================== */

.booking-area{
  position: relative;
  margin-top: -70px;
  z-index: 2;
}

.booking-form{
  padding: 30px 30px;
  background: var(--color-white);
  border-radius: 20px;
  box-shadow: var(--box-shadow);
}

.booking-title {
  font-size: 25px;
  margin-bottom: 10px;
}

.booking-form .form-group{
  margin-top: 10px;
  position: relative;
}

.booking-form .form-group i{
  position: absolute;
  right: 20px;
  bottom: 21px;
  transition: color 0.2s;
}
.booking-form .form-control.is-invalid + i,
.booking-form .form-control:invalid + i {
  color: #dc3545; /* Optional: make icon red when invalid */
}
.booking-form .form-group label{
  margin-bottom: 2px;
  color: var(--color-dark);
}
.booking-form .form-control.is-invalid {
  background-image: none !important;
}

.booking-form .form-select,
.booking-form .form-control{
  padding: 14px 50px 14px 20px;
  border-radius: 12px;
  font-size: 18px;
  box-shadow: none;
  color: var(--body-text-color);
}

.booking-form .form-select:focus,
.booking-form .form-control:focus{
  border-color: var(--theme-color);
}

.booking-form .theme-btn{
  width: 100%;
  padding: 15px;
}

.booking-form .theme-btn::before{
  width: 360px;
  height: 360px;
}


@media all and (max-width: 991px) {
  .booking-form {
    padding: 25px;
  }

  .booking-form .theme-btn{
    margin-top: 25px;
  }
}




/* ===================
21. Date picker css 
====================== */

.ui-datepicker .ui-datepicker-header .ui-corner-all>span,
.ui-datepicker .ui-datepicker-header .ui-state-hover>span {
  display: none;
}

.ui-datepicker.ui-widget-content {
  border: none;
  padding: 8px;
  border-radius: 8px;
  box-shadow: 0 3px 24px rgb(0 0 0 / 10%);
}

.ui-datepicker .ui-datepicker-header .ui-corner-all,
.ui-datepicker .ui-datepicker-header .ui-state-hover {
  cursor: pointer;
  border: 0;
  background: none;
  font-weight: 500;
  top: 3px;
}

.ui-datepicker .ui-datepicker-prev:after {
  content: "\f104";
  left: 5px;
  top: 0px;
  position: absolute;
  color: var(--color-white);
font-family: "Font Awesome 6 Free";
font-weight: 900;
}

.ui-datepicker .ui-datepicker-next:after {
  content: "\f105";
  right: 5px;
  top: 0px;
  position: absolute;
  color: var(--color-white);
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}

.ui-datepicker .ui-widget-header {
  background: var(--theme-color);
  color: var(--color-white);
  border: none;
  border-radius: 8px;
}

.ui-datepicker td span, .ui-datepicker td a {
  display: block;
  padding: 0.2em;
  text-align: center;
  text-decoration: none;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  border: none;
  border-radius: 8px;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: none;
  background: rgba(255, 179, 0, .6);
  color: var(--color-white);
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  background: var(--theme-color);
  color: var(--color-white);
}


/* ===================
22. Time picker css 
====================== */

.ui-timepicker-standard{
  border: none !important;
  background: var(--color-white);
  border-radius: 10px;
  box-shadow: 0 3px 24px rgb(0 0 0 / 10%);
  z-index: 2 !important;
}

.ui-timepicker-standard a{
  border: none !important;
  transition: none !important;
  border-radius: 8px;
}

.ui-timepicker-standard a:hover{
  background: var(--theme-color);
  color: var(--color-white);
}



  /*====================
52. Footer css 
======================*/

.footer-area {
    background: var(--color-dark);
    position: relative;
    z-index: 1;
  }
  
  .footer-area::before{
    content: "";
    position: absolute;
    background-image: url(../images/theme/shape-2.png);
    background-repeat: repeat-x;
    width: 100%;
    height: 50px;
    left: 0;
    top: 0;
    z-index: -1;
  }
  
  .footer-widget-box {
    margin-bottom: 20px;
  }
  
  .footer-widget {
    position: relative;
    z-index: 1;
  }
  
  .footer-logo img {
    width: 210px;
    margin-bottom: 20px;
  }
  
  .copyright {
    position: relative;
    padding: 20px 0;
    background: var(--footer-bg2);
    border-bottom: 5px solid var(--theme-color);
    z-index: 1;
  }
  
  .copyright::before{
    content: "";
    position: absolute;
    right: 0;
    top: -10px;
    bottom: -1px;
    background: var(--theme-color);
    width: 50%;
    clip-path: polygon(8% 0%, 100% 0, 100% 100%, 0% 100%);
    z-index: -1;
  }
  
  .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;
  }
  
  .copyright .copyright-text a {
    color: var(--theme-color);
    font-weight: 500;
  }
  
  .footer-widget-title {
    color: var(--color-white);
    position: relative;
    padding-bottom: 20px;
    margin-bottom: 30px;
    font-size: 21px;
    font-weight: 600;
    z-index: 1;
  }
  
  .footer-widget-title::before {
    position: absolute;
    content: '';
    z-index: -1;
    width: 90px;
    height: 2px;
    background: rgba(255, 255, 255, 0.2);
    bottom: 0;
    left: 0;
  }
  
  .footer-widget-title::after {
    position: absolute;
    content: '';
    z-index: -1;
    width: 30px;
    height: 2px;
    background-color: var(--theme-color);
    bottom: 0;
    left: 18px;
  }
  
  .footer-list {
    display: flex;
    flex-direction: column;
    gap: .65rem;
  }
  
  .footer-list li a {
    color: var(--color-white);
    transition: var(--transition);
  }

  .footer-list li a:hover {
    padding-left: 10px;
    color: var(--theme-color);
  }
  
  .footer-list li a i {
    margin-right: 5px;
    color: var(--theme-color);
  }
  .footer-area .dev-signature a{
    
    color: var(--color-white);
  }
  .footer-area .dev-signature a:hover {
    padding-left: 10px;
    color: var(--theme-color);
  }
  
  .footer-widget-box p {
    color: var(--color-white);
    padding-right: 18px;
    margin-bottom: 20px;
  }
  
  .footer-social {
    display: flex;
    gap: 15px;
    justify-content: end;
  }
  
  .footer-social li a i {
    height: 45px;
    width: 45px;
    line-height: 45px;
    text-align: center;
    border-radius: 50px;
    background: var(--color-dark);
    color: var(--theme-color);
    transition: var(--transition);
  }
  
  .footer-social li a i:hover {
    background: var(--color-white);
    color: var(--theme-color);
  }
  
  .footer-contact li {
    position: relative;
    display: flex;
    justify-content: start;
    align-items: center;
    color: var(--footer-text-color);
    font-size: 16px;
    margin-bottom: 10px;
  }
  
  .footer-contact li a {
    color: var(--footer-text-color);
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  
  .footer-contact li i {
    width: 35px;
    height: 35px;
    line-height: 35px;
    font-size: 16px;
    margin-right: 15px;
    border-radius: 50px;
    background: var(--theme-color);
    text-align: center;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    color: var(--color-white);
  }
  
  .subscribe-form .form-control {
    padding: 16px 20px;
    border-radius: 12px;
    box-shadow: none;
    border: none;
  }
  
  .subscribe-form .theme-btn {
    margin-top: 20px;
    width: 100%;
    padding: 14px;
  }
  
  .subscribe-form .theme-btn:hover {
    color: var(--theme-color);
  }
  
  .subscribe-form .theme-btn::before{
    background: var(--color-white);
  }
  
  
  @media all and (max-width: 1199px) {
    .footer-widget-box {
      margin-bottom: 50px;
    }
  }
  
  @media all and (max-width: 991px) {
    .footer-widget-wrapper {
      padding-bottom: 0px;
    }
  
    .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-wrapper {
      padding-bottom: 0px;
    }
  
    .footer-social {
      justify-content: flex-start;
      margin-top: 20px;
    }
  
    .copyright::before{
      clip-path: polygon(30% 1%, 100% 0, 100% 100%, 0% 100%);
    }
  
    .copyright .copyright-text a{
      color: var(--theme-color);
    }
  }

  /* STICKY SOCIAL ICON */
.pulse i {
  position: relative;
  z-index: 20;
  top: 16px;
  font-size: 30px;
}
.pulse {
  position: fixed;
  cursor: pointer;
  display: block;
  width: 60px !important;
  color: white;
  border-radius: 50px;
  text-align: center;

  z-index: 9000;
}
.pulse.btn-whats {
  height: 60px;
  bottom: 93px;
  right: 31px;
  background-color: rgba(0, 200, 0, 1);
  transition-duration: 0.5s;
  animation: pulse-btn 3s infinite;
}

.pulse.btn-call {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  bottom: 120px;
  right: 40px;
  color: #fff;
  background-color: #2196f3;
}

.pulse.btn-inst {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  bottom: 190px;
  right: 40px;
  color: #fff;
  background: radial-gradient(
    circle at 30% 107%,
    #fdf497 0%,
    #fdf497 5%,
    #fd5949 45%,
    #d6249f 60%,
    #285aeb 90%
  );
}

.pulse.btn-inst i {
  top: 0;
}

.pulse.btn-call i {
  top: 0;
}
.pulse.btn-call a {
  display: flex;
  justify-content: center;
  align-items: center;
}

.pulse.pulse.btn-whats:hover {
  background-color: rgba(0, 150, 0, 1);
  color: white;
}
@-webkit-keyframes pulse-btn {
  0% {
    -webkit-box-shadow: 0 0 0 0 rgba(0, 200, 0, 1);
  }
  70% {
    -webkit-box-shadow: 0 0 0 20px rgba(0, 200, 0, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0 rgba(0, 200, 0, 0);
  }
}

.site-heading {
  margin-bottom: 50px;
  position: relative;
  z-index: 1;
}

.site-title-tagline {
  position: relative;
  text-transform: uppercase;
  letter-spacing: 4px;
  font-size: 18px;
  font-weight: 700;
  color: var(--theme-color);
}

.top-destinations-card h4{
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 10px;
  color: var(--color-dark);
}
.top-destinations-card{
  font-family: var(--body-font);
  font-style: normal;
  font-size: 16px;
  font-weight: normal;
  color: var(--body-text-color);
  line-height: 1.8;
}

/* Form Error */
.form-floating .invalid-feedback {
  display: block;
  font-size: 0.95em;
  color: #dc3545;
  margin-top: 0.25rem;
  position: static;
}
/* .form-floating .form-control:invalid ~ .invalid-feedback {
  display: block;
} */
