/* Font Family*/
@import url("https://fonts.googleapis.com/css2?family=Gwendolyn:wght@400;700&family=Urbanist:ital,wght@0,100..900;1,100..900&display=swap");

/* ========================= Css Variables Start ======================== */
:root {
  /* Font Family */
  --heading-font: "Urbanist", sans-serif;
  --body-font: "Urbanist", sans-serif;
  --sub-font: "Gwendolyn", cursive;
  /* ========================= Theme Color Start ============================= */
  /* Base Color */
  --base-h: 176;
  --base-s: 79%;
  --base-l: 34%;
  --base: var(--base-h) var(--base-s) var(--base-l);
  --base-d-100: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.1);
  --base-d-200: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.2);
  --base-d-300: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.3);
  --base-d-400: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.4);
  --base-d-500: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.5);
  --base-d-600: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.6);
  --base-d-700: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.7);
  --base-d-800: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.8);
  --base-d-900: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 0.9);
  --base-d-1000: var(--base-h) var(--base-s) calc(var(--base-l) - var(--base-l) * 1);
  --base-l-100: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.1);
  --base-l-200: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.2);
  --base-l-300: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.3);
  --base-l-400: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.4);
  --base-l-500: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.5);
  --base-l-600: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.6);
  --base-l-700: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.7);
  --base-l-800: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.8);
  --base-l-900: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 0.9);
  --base-l-1000: var(--base-h) calc(var(--base-s)) calc(var(--base-l) + (100% - var(--base-l)) * 1);
  /* Base Two Color */
  --base-two-h: 187;
  --base-two-s: 15%;
  --base-two-l: 22%;
  --base-two: var(--base-two-h) var(--base-two-s) var(--base-two-l);
  --base-two-d-100: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.1);
  --base-two-d-200: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.2);
  --base-two-d-300: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.3);
  --base-two-d-400: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.4);
  --base-two-d-500: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.5);
  --base-two-d-600: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.6);
  --base-two-d-700: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.7);
  --base-two-d-800: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.8);
  --base-two-d-900: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 0.9);
  --base-two-d-1000: var(--base-two-h) var(--base-two-s) calc(var(--base-two-l) - var(--base-two-l) * 1);
  --base-two-l-100: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.1);
  --base-two-l-200: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.2);
  --base-two-l-300: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.3);
  --base-two-l-400: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.4);
  --base-two-l-500: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.5);
  --base-two-l-600: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.6);
  --base-two-l-700: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.7);
  --base-two-l-800: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.8);
  --base-two-l-900: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 0.9);
  --base-two-l-1000: var(--base-two-h) calc(var(--base-two-s)) calc(var(--base-two-l) + (100% - var(--base-two-l)) * 1);
  /* ========================= Theme Color End ============================= */
  /* ========================= Color Variables Start =========================== */
  --white: 0 0% 100%;
  --body-color: 120 3% 12%;
  --body-bg: 35 26% 91%;
  --heading-color: 187 15% 22%;
  --black: 0 0% 0%;
  --border-color: 0 0% 51%;
  --section-bg: 0 0% 85%;
  /* ================================ Box Shadow Start =============================== */
  --box-shadow: 0px 2px 15px hsl(var(--black) / 0.05);
  /* ================================ Box Shadow End =============================== */
  /* ============================== Bootstrap Modifier Start ============================== */
  /* Primary Color */
  --primary-h: 238;
  --primary-s: 100%;
  --primary-l: 40%;
  --primary: var(--primary-h) var(--primary-s) var(--primary-l);
  --primary-d-100: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.1);
  --primary-d-200: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.2);
  --primary-d-300: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.3);
  --primary-d-400: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.4);
  --primary-d-500: var(--primary-h) var(--primary-s) calc(var(--primary-l) - var(--primary-l) * 0.5);
  --primary-l-100: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.1);
  --primary-l-200: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.2);
  --primary-l-300: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.3);
  --primary-l-400: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.4);
  --primary-l-500: var(--primary-h) calc(var(--primary-s)) calc(var(--primary-l) + (100% - var(--primary-l)) * 0.5);
  /* Secondary Color */
  --secondary-h: 208;
  --secondary-s: 7%;
  --secondary-l: 46%;
  --secondary: var(--secondary-h) var(--secondary-s) var(--secondary-l);
  --secondary-d-100: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.1);
  --secondary-d-200: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.2);
  --secondary-d-300: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.3);
  --secondary-d-400: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.4);
  --secondary-d-500: var(--secondary-h) var(--secondary-s) calc(var(--secondary-l) - var(--secondary-l) * 0.5);
  --secondary-l-100: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.1);
  --secondary-l-200: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.2);
  --secondary-l-300: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.3);
  --secondary-l-400: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.4);
  --secondary-l-500: var(--secondary-h) calc(var(--secondary-s)) calc(var(--secondary-l) + (100% - var(--secondary-l)) * 0.5);
  /* Success Color */
  --success-h: 112;
  --success-s: 100%;
  --success-l: 40%;
  --success: var(--success-h) var(--success-s) var(--success-l);
  --success-d-100: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.1);
  --success-d-200: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.2);
  --success-d-300: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.3);
  --success-d-400: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.4);
  --success-d-500: var(--success-h) var(--success-s) calc(var(--success-l) - var(--success-l) * 0.5);
  --success-l-100: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.1);
  --success-l-200: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.2);
  --success-l-300: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.3);
  --success-l-400: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.4);
  --success-l-500: var(--success-h) calc(var(--success-s)) calc(var(--success-l) + (100% - var(--success-l)) * 0.5);
  /* Danger Color */
  --danger-h: 0;
  --danger-s: 96%;
  --danger-l: 63%;
  --danger: var(--danger-h) var(--danger-s) var(--danger-l);
  --danger-d-100: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.1);
  --danger-d-200: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.2);
  --danger-d-300: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.3);
  --danger-d-400: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.4);
  --danger-d-500: var(--danger-h) var(--danger-s) calc(var(--danger-l) - var(--danger-l) * 0.5);
  --danger-l-100: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.1);
  --danger-l-200: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.2);
  --danger-l-300: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.3);
  --danger-l-400: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.4);
  --danger-l-500: var(--danger-h) calc(var(--danger-s)) calc(var(--danger-l) + (100% - var(--danger-l)) * 0.5);
  /* Warning Color */
  --warning-h: 40;
  --warning-s: 100%;
  --warning-l: 46%;
  --warning: var(--warning-h) var(--warning-s) var(--warning-l);
  --warning-d-100: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.1);
  --warning-d-200: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.2);
  --warning-d-300: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.3);
  --warning-d-400: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.4);
  --warning-d-500: var(--warning-h) var(--warning-s) calc(var(--warning-l) - var(--warning-l) * 0.5);
  --warning-l-100: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.1);
  --warning-l-200: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.2);
  --warning-l-300: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.3);
  --warning-l-400: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.4);
  --warning-l-500: var(--warning-h) calc(var(--warning-s)) calc(var(--warning-l) + (100% - var(--warning-l)) * 0.5);
  /* Info Color */
  --info-h: 196;
  --info-s: 100%;
  --info-l: 50%;
  --info: var(--info-h) var(--info-s) var(--info-l);
  --info-d-100: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.1);
  --info-d-200: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.2);
  --info-d-300: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.3);
  --info-d-400: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.4);
  --info-d-500: var(--info-h) var(--info-s) calc(var(--info-l) - var(--info-l) * 0.5);
  --info-l-100: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.1);
  --info-l-200: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.2);
  --info-l-300: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.3);
  --info-l-400: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.4);
  --info-l-500: var(--info-h) calc(var(--info-s)) calc(var(--info-l) + (100% - var(--info-l)) * 0.5);
  /* ============================== Bootstrap Modifier End ============================== */
}

/* ========================= Css Variables End =========================== */
/* Fully Fit image Css */
.fit-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ============================= Display Flex Css Start ============================= */
.flex-wrap {
  display: flex;
  flex-wrap: wrap;
}

.flex-align {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.flex-center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.flex-between {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

/* ============================= Display Flex Css End ============================= */
/* ============================= Positioning Css Class Start ===================== */
.pa-extend,
.alert__link::before {
  position: absolute;
  content: "";
}

.top-center-extend,
.accordion .accordion-button[aria-expanded="true"]::after,
.accordion .accordion-button[aria-expanded="false"]::after {
  top: 50%;
  transform: translateY(-50%);
}

.left-center-extend {
  left: 50%;
  transform: translateX(-50%);
}

.top-left-center-extend {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* ============================= Positioning Css Class End ===================== */
/* ================================= Common Typography Css Start =========================== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: var(--body-font);
  color: hsl(var(--body-color));
  word-break: break-word;
  background-color: hsl(var(--body-bg));
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
}

main {
  overflow-x: hidden;
}

p {
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
  color: hsl(var(--body-color));
}

@media screen and (max-width: 991px) {
  p {
    font-size: 14px;
  }
}

span {
  display: inline-block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 20px 0;
  font-family: var(--heading-font);
  color: hsl(var(--heading-color));
  font-weight: 700;
}

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

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin: 0 0 15px 0;
  }
}

h1 {
  font-size: 4rem;
}

@media screen and (max-width: 1399px) {
  h1 {
    font-size: 3.125rem;
  }
}

@media screen and (max-width: 1199px) {
  h1 {
    font-size: 2.8125rem;
  }
}

@media screen and (max-width: 991px) {
  h1 {
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.1875rem;
  }
}

@media screen and (max-width: 575px) {
  h1 {
    font-size: 1.875rem;
  }
}

h2 {
  font-size: 2.5rem;
}

@media screen and (max-width: 1399px) {
  h2 {
    font-size: 2.8125rem;
  }
}

@media screen and (max-width: 1199px) {
  h2 {
    font-size: 2.5rem;
    margin-bottom: 12px;
  }
}

@media screen and (max-width: 991px) {
  h2 {
    font-size: 2.1875rem;
  }
}

@media screen and (max-width: 767px) {
  h2 {
    font-size: 1.875rem;
  }
}

@media screen and (max-width: 575px) {
  h2 {
    font-size: 1.5625rem;
  }
}

h3 {
  font-size: 1.875rem;
}

@media screen and (max-width: 1399px) {
  h3 {
    font-size: 1.75rem;
  }
}

@media screen and (max-width: 1199px) {
  h3 {
    font-size: 1.5625rem;
  }
}

@media screen and (max-width: 991px) {
  h3 {
    font-size: 1.4375rem;
  }
}

@media screen and (max-width: 767px) {
  h3 {
    font-size: 1.375rem;
  }
}

@media screen and (max-width: 575px) {
  h3 {
    font-size: 1.25rem;
  }
}

h4 {
  font-size: 1.5rem;
}

@media screen and (max-width: 1399px) {
  h4 {
    font-size: 1.3125rem;
  }
}

@media screen and (max-width: 1199px) {
  h4 {
    font-size: 1.25rem;
  }
}

@media screen and (max-width: 991px) {
  h4 {
    font-size: 1.1875rem;
  }
}

@media screen and (max-width: 767px) {
  h4 {
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 575px) {
  h4 {
    font-size: 1.0625rem;
  }
}

h5 {
  font-size: 1.25rem;
}

@media screen and (max-width: 1399px) {
  h5 {
    font-size: 1.1875rem;
  }
}

@media screen and (max-width: 1199px) {
  h5 {
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 991px) {
  h5 {
    font-size: 1.0625rem;
  }
}

@media screen and (max-width: 767px) {
  h5 {
    font-size: 1rem;
  }
}

@media screen and (max-width: 575px) {
  h5 {
    font-size: 1rem;
  }
}

h6 {
  font-size: 1rem;
}

@media screen and (max-width: 1399px) {
  h6 {
    font-size: 1rem;
  }
}

@media screen and (max-width: 1199px) {
  h6 {
    font-size: 0.9375rem;
  }
}

@media screen and (max-width: 991px) {
  h6 {
    font-size: 0.875rem;
  }
}

@media screen and (max-width: 767px) {
  h6 {
    font-size: 0.875rem;
  }
}

@media screen and (max-width: 575px) {
  h6 {
    font-size: 0.875rem;
  }
}

h1>a,
h2>a,
h3>a,
h4>a,
h5>a,
h6>a {
  font-weight: inherit;
  font-size: inherit;
  color: inherit;
  transition: 0.2s linear;
  line-height: inherit;
}

a {
  display: inline-block;
  transition: 0.3s;
  text-decoration: none;
  color: hsl(var(--heading-color));
}

a:hover {
  color: hsl(var(--base));
}

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

select {
  cursor: pointer;
}

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

button {
  border: 0;
  background-color: transparent;
}

button:focus {
  outline: none;
  box-shadow: none;
}

/* ================================= Common Typography Css End =========================== */
/* ================================= Custom Classes Css Start =========================== */
/* Column Extra Small Screen */
@media screen and (min-width: 425px) and (max-width: 575px) {
  .col-xsm-6 {
    width: 50%;
  }
}

/* Section Background */
.section-bg {
  background-color: hsl(var(--section-bg));
}

.text-muted {
  color: hsl(var(--white) / 0.6) !important;
}

/* Bg Image Css */
.bg-img {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

/* Hide Scroll bar Css For Custom Modal */
.scroll-hide {
  position: absolute;
  overflow-y: hidden;
  padding-right: 17px;
  top: 0;
  left: 0;
  width: 100%;
}

@media screen and (max-width: 991px) {
  .scroll-hide {
    padding-right: 0;
  }
}

.scroll-hide-sm {
  position: absolute;
  overflow-y: hidden;
  top: 0;
  left: 0;
  width: calc(100% - 0px);
}

.gradient-text {
  background-image: linear-gradient(180deg,
      hsl(var(--base-d-200)) 0%,
      hsl(var(--base)) 100%);
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.gradient-text::selection {
  color: hsl(var(--white));
  -webkit-text-fill-color: hsl(var(--white));
  background: transparent;
}

/* ================================= Custom Classes Css End =========================== */
/* ======================  Section Heading Start  ======================*/
.section__heading {
  max-width: 660px;
  margin-inline: auto;
}

.section__heading>span {
  font-size: 30px;
  font-weight: 700;
  font-family: var(--sub-font);
  display: block;
  margin-bottom: 16px;
}

@media screen and (max-width: 1199px) {
  .section__heading>span {
    font-size: 24px;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .section__heading>span {
    font-size: 20px;
  }
}

.section__heading p {
  font-size: 20px;
}

@media screen and (max-width: 1199px) {
  .section__heading p {
    font-size: 18px;
  }
}

@media screen and (max-width: 991px) {
  .section__heading p {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .section__heading p {
    font-size: 14px;
  }
}

.section__heading a {
  margin-top: 48px;
}

.section__heading.width__sm {
  max-width: 400px;
}

@media screen and (max-width: 767px) {
  .section__heading.width__sm {
    max-width: 330px;
  }
}

/* ======================  Section Heading End  ======================*/
/* ======================  Swiper Widgets Start  ======================*/
.swiper-pagination {
  position: unset;
  margin-top: 36px;
}

@media screen and (max-width: 991px) {
  .swiper-pagination {
    margin-top: 20px;
  }
}

.swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  border-radius: 0;
  background: hsl(var(--section-bg));
  opacity: 1;
  transition: 0.2s;
}

@media screen and (max-width: 991px) {
  .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
  }
}

.swiper-pagination-bullet:hover {
  background-color: hsl(var(--base));
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: hsl(var(--base));
}

.swiper-pagination-progressbar {
  background: hsl(var(--section-bg));
  margin-top: 0;
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  height: 1px;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: hsl(var(--body-color));
}

.swiper-button-next,
.swiper-button-prev {
  position: unset;
  color: hsl(var(--body-color));
  margin-top: 0;
  width: auto;
  height: auto;
  font-size: 30px;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  display: none;
}

.swiper__arrow {
  display: flex;
  align-items: center;
  gap: 10px;
}

.swiper__bottombar {
  display: flex;
  align-items: center;
  gap: 16px;
}

.swiper-pagination-total {
  opacity: 0.5;
}

.swiper-pagination-current {
  font-weight: 700;
}

/* ======================  Swiper Widgets End  ======================*/
/* ================================= Background Color Css Start =========================== */
.bg--base {
  background-color: hsl(var(--base)) !important;
}

.bg--base-two {
  background-color: hsl(var(--base-two)) !important;
}

.bg--primary {
  background-color: hsl(var(--primary)) !important;
}

.bg--secondary {
  background-color: hsl(var(--secondary)) !important;
}

.bg--success {
  background-color: hsl(var(--success)) !important;
}

.bg--danger {
  background-color: hsl(var(--danger)) !important;
}

.bg--warning {
  background-color: hsl(var(--warning)) !important;
}

.bg--info {
  background-color: hsl(var(--info)) !important;
}

.bg--white {
  background-color: hsl(var(--white)) !important;
}

.bg--black {
  background-color: hsl(var(--black)) !important;
}

/* ================================= Background Color Css End =========================== */
/* ================================= Color Css Start =========================== */
.text--base {
  color: hsl(var(--base)) !important;
}

.text--base-two {
  color: hsl(var(--base-two)) !important;
}

.text--primary {
  color: hsl(var(--primary)) !important;
}

.text--secondary {
  color: hsl(var(--secondary)) !important;
}

.text--success {
  color: hsl(var(--success)) !important;
}

.text--danger {
  color: hsl(var(--danger)) !important;
}

.text--warning {
  color: hsl(var(--warning)) !important;
}

.text--info {
  color: hsl(var(--info)) !important;
}

.text--white {
  color: hsl(var(--white)) !important;
}

.text--black {
  color: hsl(var(--black)) !important;
}

/* ================================= Color Css End =========================== */
/* ================================= Margin Css Start =========================== */
.my-100 {
  margin-top: 60px;
  margin-bottom: 60px;
}

@media (min-width: 576px) {
  .my-100 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
}

@media (min-width: 992px) {
  .my-100 {
    margin-top: 100px;
    margin-bottom: 100px;
  }
}

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

@media (min-width: 576px) {
  .mt-100 {
    margin-top: 80px;
  }
}

@media (min-width: 992px) {
  .mt-100 {
    margin-top: 100px;
  }
}

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

@media (min-width: 576px) {
  .mb-100 {
    margin-bottom: 80px;
  }
}

@media (min-width: 992px) {
  .mb-100 {
    margin-bottom: 100px;
  }
}

.my-60 {
  margin-top: 30px;
  margin-bottom: 30px;
}

@media (min-width: 576px) {
  .my-60 {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}

@media (min-width: 992px) {
  .my-60 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}

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

@media (min-width: 576px) {
  .mt-60 {
    margin-top: 40px;
  }
}

@media (min-width: 992px) {
  .mt-60 {
    margin-top: 60px;
  }
}

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

@media (min-width: 576px) {
  .mb-60 {
    margin-bottom: 40px;
  }
}

@media (min-width: 992px) {
  .mb-60 {
    margin-bottom: 60px;
  }
}

/* ================================= Margin Css End =========================== */
/* ================================= Padding Css Start =========================== */
.py-100 {
  padding-top: 60px;
  padding-bottom: 60px;
}

@media (min-width: 576px) {
  .py-100 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

@media (min-width: 992px) {
  .py-100 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

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

@media (min-width: 576px) {
  .pt-100 {
    padding-top: 80px;
  }
}

@media (min-width: 992px) {
  .pt-100 {
    padding-top: 100px;
  }
}

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

@media (min-width: 576px) {
  .pb-100 {
    padding-bottom: 80px;
  }
}

@media (min-width: 992px) {
  .pb-100 {
    padding-bottom: 100px;
  }
}

.py-60 {
  padding-top: 30px;
  padding-bottom: 30px;
}

@media (min-width: 576px) {
  .py-60 {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

@media (min-width: 992px) {
  .py-60 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

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

@media (min-width: 576px) {
  .pt-60 {
    padding-top: 40px;
  }
}

@media (min-width: 992px) {
  .pt-60 {
    padding-top: 60px;
  }
}

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

@media (min-width: 576px) {
  .pb-60 {
    padding-bottom: 40px;
  }
}

@media (min-width: 992px) {
  .pb-60 {
    padding-bottom: 60px;
  }
}

/* ================================= Padding Css End =========================== */
/* ================================= Border Color Css Start =========================== */
.border--base {
  border-color: hsl(var(--base)) !important;
}

.border--primary {
  border-color: hsl(var(--primary)) !important;
}

.border--secondary {
  border-color: hsl(var(--secondary)) !important;
}

.border--success {
  border-color: hsl(var(--success)) !important;
}

.border--danger {
  border-color: hsl(var(--danger)) !important;
}

.border--warning {
  border-color: hsl(var(--warning)) !important;
}

.border--info {
  border-color: hsl(var(--info)) !important;
}

/* ================================= Border Color Css End =========================== */
/* =========================== Accordion Css start ============================= */
.accordion .accordion-item {
  border: 1px solid hsl(var(--black) / 0.09);
  background-color: transparent !important;
  border-radius: 5px;
  overflow: hidden;
}

.accordion .accordion-item:not(:last-child) {
  margin-bottom: 10px;
}

.accordion .accordion-header {
  line-height: 1;
}

.accordion .accordion-body {
  padding: 20px;
  background-color: hsl(var(--section-bg));
}

.accordion .accordion-body .text {
  max-width: 60%;
}

@media screen and (max-width: 575px) {
  .accordion .accordion-body .text {
    max-width: 100%;
  }
}

.accordion:first-of-type .accordion-button.collapsed {
  border-radius: 5px;
}

.accordion:last-of-type .accordion-button.collapsed {
  border-radius: 5px;
}

.accordion .accordion-button {
  background-color: hsl(var(--section-bg));
  color: var(--heading-color);
  font-size: 18px;
  padding: 15px;
}

@media screen and (max-width: 575px) {
  .accordion .accordion-button {
    padding: 13px;
    padding-right: 30px;
  }
}

.accordion .accordion-button::after {
  background-image: none;
}

.accordion .accordion-button:focus {
  box-shadow: none;
}

.accordion .accordion-button:not(.collapsed) {
  color: hsl(var(--white));
  background-color: hsl(var(--black)) !important;
  box-shadow: none;
}

.accordion .accordion-button:not(.collapsed)::after {
  background-image: none;
  color: hsl(var(--base));
}

.accordion .accordion-button[aria-expanded="true"]::after,
.accordion .accordion-button[aria-expanded="false"]::after {
  font-family: "Line Awesome Free";
  font-weight: 900;
  content: "\f068";
  display: inline-block;
  position: absolute;
  right: 15px;
  height: unset;
}

.accordion .accordion-button[aria-expanded="false"]::after {
  content: "\f067";
  color: hsl(var(--body-color));
}

/* ================================= Accordion Css End =========================== */
/* ================================= Button Css Start =========================== */
.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
  color: none;
  background-color: none;
  border-color: none;
}

.pill {
  border-radius: 40px !important;
}

.btn {
  font-size: 20px;
  color: hsl(var(--white));
  font-weight: 500;
  padding: 22px 24px;
  border-radius: 0;
  position: relative;
  z-index: 1;
  border: none;
  font-family: var(--body-font);
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  line-height: 1;
}

@media screen and (max-width: 1399px) {
  .btn {
    font-size: 18px;
  }
}

@media screen and (max-width: 1199px) {
  .btn {
    font-size: 16px;
  }
}

@media screen and (max-width: 991px) {
  .btn {
    padding: 18px 20px;
    font-size: 14px;
  }
}

.btn:hover {
  color: hsl(var(--white));
}

.btn::after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  content: "";
  z-index: -2;
  transition: 0.3s;
}

.btn::before {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  content: "";
  z-index: -1;
  transition: 0.3s;
}

.btn .fa-arrow-right {
  transform: rotate(-45deg);
  transition: 0.3s;
}

.btn:hover,
.btn:focus,
.btn:focus-visible {
  box-shadow: none !important;
}

.btn:hover .fa-arrow-right,
.btn:focus .fa-arrow-right,
.btn:focus-visible .fa-arrow-right {
  transform: rotate(0);
}

.btn:active {
  top: 1px;
  color: hsl(var(--white)) !important;
}

.btn--sm {
  padding: 16px 22px;
  font-weight: 600;
  font-size: 16px;
}

.btn--base::after {
  background-color: hsl(var(--base)) !important;
}

.btn--base::before {
  border: 1px solid hsl(var(--base)) !important;
}

.btn--base:hover::after,
.btn--base:focus .btn--base:focus-visible::after {
  width: 100%;
  height: 100%;
}

.btn--base:hover::before,
.btn--base:focus .btn--base:focus-visible::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-color: hsl(var(--white)) !important;
}

.btn--base-two::after {
  background-color: hsl(var(--base-two)) !important;
}

.btn--base-two::before {
  border: 1px solid hsl(var(--base-two)) !important;
}

.btn--base-two:hover::after,
.btn--base-two:focus .btn--base-two:focus-visible::after {
  width: 100%;
  height: 100%;
}

.btn--base-two:hover::before,
.btn--base-two:focus .btn--base-two:focus-visible::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-color: hsl(var(--white)) !important;
}

.btn--primary::after {
  background-color: hsl(var(--primary)) !important;
}

.btn--primary::before {
  border: 1px solid hsl(var(--primary)) !important;
}

.btn--primary:hover::after,
.btn--primary:focus .btn--primary:focus-visible::after {
  width: 100%;
  height: 100%;
}

.btn--primary:hover::before,
.btn--primary:focus .btn--primary:focus-visible::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-color: hsl(var(--white)) !important;
}

.btn--secondary::after {
  background-color: hsl(var(--secondary)) !important;
}

.btn--secondary::before {
  border: 1px solid hsl(var(--secondary)) !important;
}

.btn--secondary:hover::after,
.btn--secondary:focus .btn--secondary:focus-visible::after {
  width: 100%;
  height: 100%;
}

.btn--secondary:hover::before,
.btn--secondary:focus .btn--secondary:focus-visible::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-color: hsl(var(--white)) !important;
}

.btn--danger::after {
  background-color: hsl(var(--danger)) !important;
}

.btn--danger::before {
  border: 1px solid hsl(var(--danger)) !important;
}

.btn--danger:hover::after,
.btn--danger:focus .btn--danger:focus-visible::after {
  width: 100%;
  height: 100%;
}

.btn--danger:hover::before,
.btn--danger:focus .btn--danger:focus-visible::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-color: hsl(var(--white)) !important;
}

.btn--warning::after {
  background-color: hsl(var(--warning)) !important;
}

.btn--warning::before {
  border: 1px solid hsl(var(--warning)) !important;
}

.btn--warning:hover::after,
.btn--warning:focus .btn--warning:focus-visible::after {
  width: 100%;
  height: 100%;
}

.btn--warning:hover::before,
.btn--warning:focus .btn--warning:focus-visible::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-color: hsl(var(--white)) !important;
}

.btn--info::after {
  background-color: hsl(var(--info)) !important;
}

.btn--info::before {
  border: 1px solid hsl(var(--info)) !important;
}

.btn--info:hover::after,
.btn--info:focus .btn--info:focus-visible::after {
  width: 100%;
  height: 100%;
}

.btn--info:hover::before,
.btn--info:focus .btn--info:focus-visible::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-color: hsl(var(--white)) !important;
}

/* ================================= Button Css End =========================== */
/* ================================= Card Css Start =========================== */
.card {
  border-radius: 0;
  box-shadow: none;
  background-color: hsl(var(--white) / 0.8);
  border: transparent;
}

.card-header {
  padding: 12px 0;
  background-color: transparent;
  border-bottom: 1px solid hsl(var(--black) / 0.06);
}

.card-title {
  margin-bottom: 0;
}

.card-body {
  background-color: hsl(var(--white));
  padding: 24px;
  border-radius: 5px;
}

.card-footer {
  padding: 12px 0;
  background-color: transparent;
  border-top: 1px solid hsl(var(--black) / 0.06);
}

/* ================================= Card Css End =========================== */
/* ================================= Form Css Start =========================== */
/* Form Label */
.form-label {
  margin-bottom: 12px;
  font-size: 14px;
  color: hsl(var(--heading-color));
  font-weight: 500;
}

label.required:after {
  content: "*";
  color: hsl(var(--danger)) !important;
  margin-left: 2px;
}

.form-group {
  margin-bottom: 1rem;
}

/* Form Select */
.form-select {
  color: hsl(var(--black)) !important;
  padding: 12px 18px;
  border: 1px solid hsl(var(--black) / 0.1);
}

.form-select:focus {
  border-color: hsl(var(--black) / 0.2);
  color: hsl(var(--black)) !important;
  outline: 0;
  box-shadow: none;
}

.form-select option {
  background-color: hsl(var(--white));
  color: hsl(var(--black));
}

/* Form Select End */
/* Form Control Start */
.form-control {
  border-radius: 0;
  font-weight: 400;
  outline: none;
  width: 100%;
  padding: 14px 16px;
  background-color: transparent;
  border: 1px solid hsl(var(--border-color));
  color: hsl(var(--body-color));
  font-size: 20px;
  line-height: 1;
}

@media screen and (max-width: 1199px) {
  .form-control {
    font-size: 18px;
  }
}

@media screen and (max-width: 991px) {
  .form-control {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .form-control {
    font-size: 14px;
  }
}

.form-control::placeholder {
  color: hsl(var(--border-color));
}

.form-control:focus {
  background-color: transparent;
  border-color: hsl(var(--border-color));
  box-shadow: none;
}

.form-control:disabled,
.form-control[readonly] {
  background-color: hsl(var(--black) / 0.1);
  opacity: 1;
  border: 0;
}

.form-control[type="password"] {
  color: hsl(var(--black) / 0.5);
}

.form-control[type="password"]:focus {
  color: hsl(var(--black));
}

.form-control[type="file"] {
  line-height: 50px;
  padding: 0;
  position: relative;
}

.form-control[type="file"]::file-selector-button {
  border: 1px solid hsl(var(--black) / 0.08);
  padding: 4px 6px;
  border-radius: 0;
  background-color: hsl(var(--base)) !important;
  transition: 0.2s linear;
  font-size: 16px;
  line-height: 25px;
  position: relative;
  margin-left: 10px;
  color: hsl(var(--white)) !important;
}

.form-control[type="file"]::file-selector-button:hover {
  background-color: hsl(var(--base));
  border: 1px solid hsl(var(--base));
  color: hsl(var(--black));
}

/* Form Control End */
textarea.form-control {
  height: 130px;
}

/* Autofill Css */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
}

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px transparent inset;
  -webkit-text-fill-color: hsl(var(--black)) !important;
  caret-color: hsl(var(--black));
}

/* Autofill Css End */
/* input group */
.input-group {
  position: relative;
}

/* Show Hide Password */
input#your-password,
input#confirm-password {
  padding-right: 50px;
}

.password-show-hide {
  position: absolute;
  right: 20px;
  z-index: 3;
  cursor: pointer;
  top: 50%;
  transform: translateY(-50%);
  color: hsl(var(--black) / 0.4);
}

/* --------------- Number Arrow None --------------------- */

input[type="number"] {
  appearance: auto;
  -moz-appearance: auto;
  -webkit-appearance: number-input;
}

/* Custom Checkbox Design */
.form-check {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 0;
  padding-left: 0;
}

.form-check .form-check-input {
  box-shadow: none;
  background-color: transparent;
  box-shadow: none !important;
  border: 0;
  position: relative;
  border-radius: 3px;
  width: 16px;
  height: 16px;
  border: 1px solid hsl(var(--black) / 0.2);
  cursor: pointer;
  margin-left: 0;
  margin-top: 0;
}

.form-check .form-check-input:checked {
  background-color: hsl(var(--base)) !important;
  border-color: hsl(var(--base)) !important;
  box-shadow: none;
}

.form-check .form-check-input:checked[type="checkbox"] {
  background-image: none;
}

.form-check .form-check-input:checked::before {
  position: absolute;
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: hsl(var(--white));
  font-size: 11px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.form-check .form-check-label {
  font-weight: 400;
  cursor: pointer;
  font-size: 16px;
  user-select: none;
}

@media screen and (max-width: 767px) {
  .form-check .form-check-label {
    font-size: 14px;
  }
}

/* Custom Radio Design */
.form-radio {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0;
  padding-left: 0;
}

.form-radio .form-check-input {
  box-shadow: none;
  border: 1px solid hsl(var(--border-color));
  position: relative;
  background-color: transparent;
  cursor: pointer;
  width: 20px;
  height: 20px;
  margin-left: 0;
  margin-top: 0;
}

@media screen and (max-width: 767px) {
  .form-radio .form-check-input {
    width: 16px;
    height: 16px;
  }
}

.form-radio .form-check-input:active {
  filter: brightness(100%);
}

.form-radio .form-check-input:checked {
  background-color: transparent;
  border-color: hsl(var(--base));
}

.form-radio .form-check-input:checked[type="radio"] {
  background-image: none;
}

.form-radio .form-check-input:checked::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  background-color: hsl(var(--base));
  border-radius: 50%;
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .form-radio .form-check-input:checked::before {
    width: 10px;
    height: 10px;
  }
}

.form-radio .form-check-label {
  font-weight: 500;
  cursor: pointer;
  font-size: 20px;
  user-select: none;
}

@media screen and (max-width: 1199px) {
  .form-radio .form-check-label {
    font-size: 18px;
  }
}

@media screen and (max-width: 991px) {
  .form-radio .form-check-label {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .form-radio .form-check-label {
    font-size: 14px;
  }
}

/*  Custom Switch Design */
.form-switch {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 0;
  padding-left: 0;
}

.form-switch .form-check-input {
  border-radius: 3px;
  background-image: none;
  position: relative;
  box-shadow: none;
  border: 0;
  background-color: hsl(var(--black) / 0.2) !important;
  margin-left: 0;
  margin-top: 0;
  border-radius: 40px;
  width: 54px;
  height: 28px;
  cursor: pointer;
}

.form-switch .form-check-input:focus {
  border-radius: 40px;
  background-image: none;
  position: relative;
  box-shadow: none;
  border: 0;
}

.form-switch .form-check-input::before {
  position: absolute;
  content: "";
  width: 22px;
  height: 22px;
  background-color: hsl(var(--white));
  top: 50%;
  transform: translateY(-50%);
  left: 4px;
  border-radius: 50%;
  transition: 0.2s linear;
}

.form-switch .form-check-input:checked {
  background-color: hsl(var(--base)) !important;
}

.form-switch .form-check-input:checked::before {
  left: calc(100% - 26px);
  background-color: hsl(var(--white)) !important;
}

.form-switch .form-check-input:checked[type="checkbox"] {
  background-image: none;
}

.form-switch .form-check-label {
  font-weight: 500;
  cursor: pointer;
  font-size: 14px;
  user-select: none;
}

/*  Custom Switch End Design */
/* ================================= Form Css End =========================== */
/* --======================Custom Input group Start ======================*/
.input-group {
  border-radius: 0;
  border: 1px solid hsl(var(--black) / 0.1);
}

.input-group> :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group .form-control {
  border-width: 0px !important;
  padding-right: 10px;
  box-shadow: unset;
  font-size: 16px;
}

.input-group .form-control:focus {
  border: none !important;
}

.input-group .input-group-text+.form-control {
  padding-right: 20px;
  padding-left: 10px;
}

.input-group:focus-within {
  border: 1px solid hsl(var(--black) / 0.2);
}

.input-group .input-group-text {
  padding: 13px;
  border-width: 0px;
  border-radius: 0;
  background-color: hsl(var(--base));
  color: hsl(var(--white));
}

.input-group .form-control[readonly] {
  background: hsl(var(--black) / 0.1) !important;
}

.input-group .form-control[readonly]:focus {
  border-color: hsl(var(--black) / 0.1);
}

.input-group:has(.form-control[readonly]) {
  background: hsl(var(--black) / 0.1) !important;
}

.input-group:has(.form-control[readonly]):focus-within {
  border-color: hsl(var(--black) / 0.1) !important;
}

/* --======================Custom Input group End ======================*/
/* ================================= Modal Css Start =========================== */
.modal-header {
  border-bottom: 1px solid hsl(var(--black) / 0.06);
  padding: 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.modal-header .modal-title {
  margin-bottom: 0;
  line-height: 1;
  font-size: 20px;
  color: hsl(var(--base));
}

.modal-header .close {
  width: 28px;
  height: 28px;
  background-color: hsl(var(--black) / 0.1);
  font-size: 16px;
  padding: 0;
  border-radius: 50%;
  color: hsl(var(--body-color));
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}

.modal-header .close:hover {
  background-color: hsl(var(--danger));
  color: hsl(var(--white));
}

.modal-content {
  border-radius: 0 !important;
  background-color: hsl(var(--body-bg));
  border: 1px solid hsl(var(--base));
}

.modal-body {
  padding: 15px;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  padding: 15px;
  border-top: 1px solid hsl(var(--black) / 0.06);
  justify-content: flex-end;
}

/* ================================= Modal Css End =========================== */
/* ================================= Pagination Css Start =========================== */
.pagination {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 56px;
}

@media screen and (max-width: 1199px) {
  .pagination {
    margin-top: 48px;
  }
}

@media screen and (max-width: 991px) {
  .pagination {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  .pagination {
    margin-top: 32px;
  }
}

.pagination .page-item.active .page-link {
  background-color: hsl(var(--base));
  color: hsl(var(--white));
  border-color: hsl(var(--base));
}

.pagination .page-item.disabled .page-link {
  color: hsl(var(--heading-color) / 0.4);
}

.pagination .page-item .page-link {
  border: 1px solid hsl(var(--black) / 0.08);
  border-radius: 4px;
  height: 40px;
  width: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  font-weight: 500;
  padding: 0;
  color: hsl(var(--heading-color));
}

.pagination .page-item .page-link:hover {
  background-color: hsl(var(--base));
  color: hsl(var(--white));
  border-color: hsl(var(--base));
}

.pagination .page-item .page-link:focus {
  box-shadow: none;
}

/* ================================= Pagination Css End =========================== */
/* ================================= Table Css Start =========================== */
/* Table Content Css start */
.table__pt {
  display: flex;
  align-items: center;
  gap: 16px;
}

@media screen and (max-width: 1199px) {
  .table__pt {
    gap: 12px;
  }
}

.table__pt img {
  width: 80px;
}

@media screen and (max-width: 1199px) {
  .table__pt img {
    width: 60px;
  }
}

@media screen and (max-width: 767px) {
  .table__pt img {
    width: 40px;
  }
}

.table__pt h6 {
  margin-bottom: 0;
  font-weight: 600;
}

.action__btn {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: flex-end;
}

.action__btn .btn {
  padding: 14px;
  font-size: 14px;
}

@media screen and (max-width: 1199px) {
  .action__btn .btn {
    padding: 12px;
    font-size: 12px;
  }
}

/* Table Content Css end */
/* Table Css Start */
.table {
  margin: 0;
  border-collapse: collapse;
  border-collapse: separate;
  border-spacing: 0px 0px;
}

.table thead tr th {
  text-align: center;
  padding: 16px 20px;
  color: hsl(var(--white));
  font-family: var(--heading-font);
  font-weight: 600;
  border-bottom: 0;
  max-width: 170px;
  font-size: 16px;
  border: none;
  background-color: hsl(var(--base));
}

@media screen and (max-width: 1199px) {
  .table thead tr th {
    font-size: 14px;
    padding: 12px;
  }
}

.table thead tr th:not(:first-child) {
  border-left: 0;
}

.table thead tr th:first-child {
  text-align: left;
}

.table thead tr th:last-child {
  text-align: right;
}

.table tbody {
  border: 0 !important;
  background-color: hsl(var(--white) / 0.8);
}

.table tbody tr {
  border-bottom: 1px solid hsl(var(--black) / 0.08);
}

.table tbody tr:last-child {
  border-bottom: 0;
}

.table tbody tr:last-child td {
  border-bottom: 1px solid hsl(var(--black) / 0.08);
}

.table tbody tr td {
  text-align: center;
  vertical-align: middle;
  padding: 16px 20px;
  border-width: 1px;
  border: 0;
  font-family: var(--heading-font);
  color: hsl(var(--body-color));
  font-weight: 600;
  max-width: 170px;
  font-size: 16px;
  border-bottom: 1px solid hsl(var(--black) / 0.08);
}

@media screen and (max-width: 1199px) {
  .table tbody tr td {
    font-size: 14px;
    padding: 12px;
  }
}

.table tbody tr td::before {
  content: attr(data-label);
  font-family: var(--heading-font);
  font-size: 15px;
  color: hsl(var(--black));
  font-weight: 500;
  display: none;
  width: 45% !important;
  text-align: left;
}

.table tbody tr td:first-child {
  text-align: left;
  font-size: 16px;
}

@media screen and (max-width: 1199px) {
  .table tbody tr td:first-child {
    font-size: 14px;
  }
}

.table tbody tr td:last-child {
  text-align: right;
}

@media screen and (max-width: 767px) {
  .table--responsive--sm thead {
    display: none;
  }

  .table--responsive--sm tbody tr {
    display: block;
  }

  .table--responsive--sm tbody tr:last-child td {
    border-bottom: 0;
  }

  .table--responsive--sm tbody tr td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    text-align: right;
    padding: 10px 15px;
    border: none;
    border-bottom: 1px solid hsl(var(--black) / 0.8);
    max-width: unset;
  }

  .table--responsive--sm tbody tr td:last-child {
    border: none;
  }

  .table--responsive--sm tbody tr td:first-child {
    text-align: right;
    border-left: 0;
  }

  .table--responsive--sm tbody tr td::before {
    display: block;
    font-size: 14px;
    color: hsl(var(--black) / 0.7);
  }
}

@media screen and (max-width: 767px) {
  .table--responsive--sm tbody tr td {
    border: 0;
  }
}

@media screen and (max-width: 991px) {
  .table--responsive--md thead {
    display: none;
  }

  .table--responsive--md tbody tr {
    display: block;
  }

  .table--responsive--md tbody tr:nth-child(even) {
    background-color: hsl(var(--black) / 0.02);
  }

  .table--responsive--md tbody tr:last-child td {
    border-bottom: 0;
  }

  .table--responsive--md tbody tr td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    text-align: right;
    padding: 10px 15px;
    border: none;
    border-bottom: 1px solid hsl(var(--black) / 0.08);
    max-width: unset;
  }

  .table--responsive--md tbody tr td:last-child {
    border: none;
  }

  .table--responsive--md tbody tr td:first-child {
    text-align: right;
    border-left: 0;
  }

  .table--responsive--md tbody tr td::before {
    display: block;
    font-size: 14px;
    color: hsl(var(--black) / 0.7);
  }
}

@media screen and (max-width: 991px) {
  .table--responsive--md tbody tr td {
    border: none;
  }
}

@media screen and (max-width: 1199px) {
  .table--responsive--lg thead {
    display: none;
  }

  .table--responsive--lg tbody tr {
    display: block;
  }

  .table--responsive--lg tbody tr:nth-child(even) {
    background-color: hsl(var(--black) / 0.02);
  }

  .table--responsive--lg tbody tr td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    text-align: right;
    padding: 10px 15px;
    border: none;
    border-bottom: 1px solid hsl(var(--black) / 0.08);
    max-width: unset;
  }

  .table--responsive--lg tbody tr td:last-child {
    border: none;
  }

  .table--responsive--lg tbody tr td:first-child {
    text-align: right;
    border-left: 0;
  }

  .table--responsive--lg tbody tr td::before {
    display: block;
    font-size: 14px;
    color: hsl(var(--black) / 0.7);
  }
}

@media screen and (max-width: 1199px) {
  .table--responsive--lg tbody tr td {
    border: 0;
  }
}

@media screen and (max-width: 1399px) {
  .table--responsive--xl thead {
    display: none;
  }

  .table--responsive--xl tbody tr {
    display: block;
  }

  .table--responsive--xl tbody tr:last-child td {
    border-bottom: 0;
  }

  .table--responsive--xl tbody tr td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    text-align: right;
    padding: 10px 15px;
    border: none;
    border-bottom: 1px solid hsl(var(--black) / 0.08);
    max-width: unset;
  }

  .table--responsive--xl tbody tr td:last-child {
    border: none;
  }

  .table--responsive--xl tbody tr td:first-child {
    text-align: right;
    border-left: 0;
  }

  .table--responsive--xl tbody tr td::before {
    display: block;
    font-size: 14px;
    color: hsl(var(--black) / 0.7);
  }
}

@media screen and (max-width: 1399px) {
  .table--responsive--xl tbody tr td {
    border: 0;
  }
}

/* ================================= Table Css End =========================== */
/* ================================= Tab Css Start =========================== */
.custom--tab {
  justify-content: center;
  border-radius: 6px;
  margin-bottom: 40px;
}

.custom--tab .nav-item {
  border-bottom: 0;
  padding: 5px;
}

.custom--tab .nav-item .nav-link {
  color: hsl(var(--heading-color));
  padding: 8px 25px;
  background-color: transparent !important;
  border-radius: 5px;
  transition: 0.4s;
  border: 1px solid hsl(var(--black) / 0.08) !important;
}

@media screen and (max-width: 1199px) {
  .custom--tab .nav-item .nav-link {
    padding: 12px 15px;
  }
}

.custom--tab .nav-item .nav-link.active {
  color: hsl(var(--white));
  background-color: hsl(var(--base-d-200)) !important;
  border: 1px solid transparent !important;
}

.custom--tab .nav-item .nav-link.active:hover {
  color: hsl(var(--white));
}

.custom--tab .nav-item .nav-link:hover {
  color: hsl(var(--base));
}

.custom--tab .nav-item #pills-disabled-tab.nav-link {
  background-color: hsl(var(--black) / 0.04) !important;
  color: hsl(var(--heading-color) / 0.6);
}

/* ================================= Tab Css End =========================== */
/* ================================= Badge Css Start =========================== */
.badge {
  font-size: 0.75rem;
  border-radius: 0;
  padding: 8px 10px;
  font-weight: 500;
  position: relative;
  text-align: center;
}

.badge--base {
  background-color: hsl(var(--base) / 0.15) !important;
  color: hsl(var(--base)) !important;
}

.badge--primary {
  background-color: hsl(var(--primary) / 0.15) !important;
  color: hsl(var(--primary)) !important;
}

.badge--secondary {
  background-color: hsl(var(--secondary) / 0.15) !important;
  color: hsl(var(--secondary)) !important;
}

.badge--success {
  background-color: hsl(var(--success) / 0.15) !important;
  color: hsl(var(--success)) !important;
}

.badge--danger {
  background-color: hsl(var(--danger) / 0.15) !important;
  color: hsl(var(--danger)) !important;
}

.badge--warning {
  background-color: hsl(var(--warning) / 0.15) !important;
  color: hsl(var(--warning)) !important;
}

.badge--info {
  background-color: hsl(var(--info) / 0.15) !important;
  color: hsl(var(--info)) !important;
}

/* ================================= Badge Css End =========================== */
/* ====================================== Alert Css Start =============================== */
.alert {
  margin-bottom: 0;
  background-color: hsl(var(--white));
  font-weight: 400;
  padding: 17px 24px;
  border-radius: 5px;
}

@media screen and (max-width: 991px) {
  .alert {
    padding: 16px;
  }
}

@media screen and (max-width: 575px) {
  .alert {
    padding: 12px;
  }
}

.alert__icon {
  font-size: 1.5rem;
  line-height: 1;
}

.alert__content {
  width: calc(100% - 24px);
  padding-left: 32px;
}

@media screen and (max-width: 991px) {
  .alert__content {
    padding-left: 16px;
  }
}

@media screen and (max-width: 575px) {
  .alert__content {
    padding-left: 0;
    width: 100%;
    margin-top: 6px;
  }
}

.alert__title {
  font-size: 16px;
  color: hsl(var(--base-two) / 0.8);
  font-weight: 600;
  font-family: var(--heading-font);
  margin-bottom: 6px;
}

.alert__desc {
  color: hsl(var(--base-two) / 0.5);
  display: block;
  line-height: 1.375;
}

@media screen and (max-width: 424px) {
  .alert__desc {
    font-size: 13px;
  }
}

.alert__link {
  position: relative;
}

.alert__link:hover::before {
  visibility: visible;
  opacity: 1;
  bottom: 0;
}

.alert__link::before {
  left: 0;
  bottom: -5px;
  width: 100%;
  height: 1px;
  background-color: hsl(var(--base));
  visibility: hidden;
  opacity: 0;
  transition: 0.2s ease-in-out;
}

.alert--base {
  border-color: hsl(var(--base) / 0.6);
  color: hsl(var(--base));
}

.alert--base .alert__icon {
  color: hsl(var(--base));
}

.alert--primary {
  border-color: hsl(var(--primary) / 0.6);
  color: hsl(var(--primary));
}

.alert--primary .alert__icon {
  color: hsl(var(--primary));
}

.alert--success {
  border-color: hsl(var(--success) / 0.6);
  color: hsl(var(--success));
}

.alert--success .alert__icon {
  color: hsl(var(--success));
}

.alert--info {
  border-color: hsl(var(--info) / 0.6);
  color: hsl(var(--info));
}

.alert--info .alert__icon {
  color: hsl(var(--info));
}

.alert--danger {
  border-color: hsl(var(--danger) / 0.6);
  color: hsl(var(--danger));
}

.alert--danger .alert__icon {
  color: hsl(var(--danger));
}

.alert--warning {
  border-color: hsl(var(--warning) / 0.6);
  color: hsl(var(--warning));
}

.alert--warning .alert__icon {
  color: hsl(var(--warning));
}

.alert--secondary {
  border-color: hsl(var(--secondary) / 0.6);
  color: hsl(var(--secondary));
}

.alert--secondary .alert__icon {
  color: hsl(var(--secondary));
}

/* ====================================== Alert Css End =============================== */
/* ================================= Preloader Css Start =========================== */
.preloader {
  position: fixed;
  z-index: 999999;
  background-color: hsl(var(--body-bg));
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.preloader .loader__text {
  width: fit-content;
  font-weight: 700;
  font-family: var(--body-font);
  letter-spacing: 2px;
  font-size: 32px;
  background: radial-gradient(circle closest-side,
      hsl(var(--base)) 94%,
      transparent) right/calc(200% - 1em) 100%;
  animation: loader__circle 1s infinite alternate linear;
}

@media screen and (max-width: 575px) {
  .preloader .loader__text {
    font-size: 1.875rem;
  }
}

.preloader .loader__text::before {
  content: attr(data-text);
  line-height: 1em;
  color: transparent;
  background: inherit;
  background-image: radial-gradient(circle closest-side,
      hsl(var(--white)) 94%,
      hsl(var(--black) / 0.2));
  -webkit-background-clip: text;
  background-clip: text;
}

@keyframes loader__circle {
  100% {
    background-position: left;
  }
}

/* ================================= Preloader Css End ===========================  */
/* ======================  Offcanvas Section Start  ======================*/
.offcanvas__area {
  position: fixed !important;
  left: -100%;
  height: 100%;
  width: 18.75rem;
  padding: 0.875rem;
  padding-right: 0 !important;
  background-color: hsl(var(--body-bg));
  border-right: 0.0625rem solid hsl(var(--black) / 0.03);
  z-index: 15 !important;
  transition: 0.3s;
  visibility: hidden;
  top: 0;
  overflow: hidden;
}

.offcanvas__area.active {
  left: 0;
  visibility: visible;
}

.offcanvas__area .offcanvas__topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.25rem;
  margin-right: 0.875rem;
  margin-bottom: 2.5rem;
}

.offcanvas__area .offcanvas__topbar a img {
  width: 8.125rem;
}

.offcanvas__area .offcanvas__topbar .menu__close {
  width: 1.875rem;
  height: 1.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: hsl(var(--black));
  font-size: 1.25rem;
  transition: 0.3s;
  margin-top: 6px;
}

.offcanvas__area .offcanvas__topbar .menu__close:hover {
  color: hsl(var(--danger));
}

.offcanvas__area .offcanvas__main {
  overflow-y: auto;
  height: calc(100% - 100px);
  scrollbar-width: thin;
  padding-right: 0.875rem;
  padding-bottom: 3.75rem;
}

.offcanvas__area .offcanvas__main .offcanvas__widgets {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin-bottom: 1.25rem;
}

.offcanvas__area .offcanvas__main .offcanvas__widgets>a {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  color: hsl(var(--heading-color));
  font-size: 1rem;
  font-weight: 400;
  text-transform: capitalize;
  transition: 0.3s;
}

.offcanvas__area .offcanvas__main .offcanvas__widgets>a i {
  display: flex;
}

.offcanvas__area .offcanvas__main .offcanvas__widgets>a:hover {
  color: hsl(var(--base));
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li {
  margin-bottom: 0.375rem;
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li .offcanvas__sub__menu {
  background-color: hsl(var(--base-l-100));
  overflow: hidden;
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li .offcanvas__sub__menu li {
  margin-bottom: 0;
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li .offcanvas__sub__menu li:last-child a {
  border-bottom: none;
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li .offcanvas__sub__menu li a {
  margin-bottom: 0;
  background-color: transparent;
  padding: 0.875rem 1rem;
  border-bottom: 0.0625rem solid hsl(var(--white) / 0.08);
  border-radius: 0;
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li .offcanvas__sub__menu li a:hover,
.offcanvas__area .offcanvas__main .offcanvas__menu ul li .offcanvas__sub__menu li a.active {
  background-color: hsl(var(--white) / 0.08);
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li a {
  font-size: 0.875rem;
  color: hsl(var(--body-color));
  font-weight: 500;
  background-color: hsl(var(--black) / 0.04);
  border: 1px solid hsl(var(--black) / 0.04);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  transition: 0.3s;
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li a i {
  font-size: 0.875rem;
  transition: 0.3s;
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li a:hover,
.offcanvas__area .offcanvas__main .offcanvas__menu ul li a.active {
  background-color: hsl(var(--base));
  color: hsl(var(--white));
}

.offcanvas__area .offcanvas__main .offcanvas__menu ul li a:hover i,
.offcanvas__area .offcanvas__main .offcanvas__menu ul li a.active i {
  transform: rotate(90deg);
}

.offcanvas__overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: hsl(var(--black) / 0.7);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  z-index: 12;
}

.offcanvas__overlay.active {
  opacity: 1;
  visibility: visible;
}

/* ======================  Offcanvas Section End  ======================*/
/* ======================  Header Start Here  ======================*/
.header__area {
  padding-top: 16px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 8;
}

.header__area .menu__open {
  font-size: 1.375rem;
  color: hsl(var(--heading-color));
  cursor: pointer;
  transition: 0.3s;
  display: none;
}

@media screen and (max-width: 991px) {
  .header__area .menu__open {
    display: block;
  }
}

.header__area .menu__open:hover {
  color: hsl(var(--base));
}

.header__area .header__logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 991px) {
  .header__area .header__logo {
    justify-content: flex-start;
  }
}

.header__area .header__logo a img {
  max-width: 11.875rem;
  width: 100%;
}

@media screen and (max-width: 1399px) {
  .header__area .header__logo a img {
    max-width: 10.625rem;
  }
}

@media screen and (max-width: 991px) {
  .header__area .header__logo a img {
    max-width: 8.75rem;
  }
}

.header__area .header__menu ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}

@media screen and (max-width: 1199px) {
  .header__area .header__menu ul {
    gap: 1.25rem;
  }
}

.header__area .header__menu ul li a {
  color: hsl(var(--body-color));
  font-size: 1rem;
  font-weight: 600;
  padding: 1.125rem 0rem;
  position: relative;
  z-index: 1;
  transition: 0.3s;
}

@media screen and (max-width: 1199px) {
  .header__area .header__menu ul li a {
    font-size: 0.875rem;
  }
}

.header__area .header__menu ul li a::after {
  position: absolute;
  left: 50%;
  bottom: -1px;
  transform: translateX(-50%);
  width: 0;
  height: 3px;
  content: "";
  background-color: hsl(var(--base));
  z-index: -1;
  transition: 0.3s;
}

.header__area .header__menu ul li a:hover,
.header__area .header__menu ul li a.active {
  color: hsl(var(--base));
}

.header__area .header__menu ul li a:hover::after,
.header__area .header__menu ul li a.active::after {
  width: 100%;
}

.header__area .header__widgets {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  justify-content: flex-end;
  width: 100%;
}

@media screen and (max-width: 1199px) {
  .header__area .header__widgets {
    gap: 0.625rem;
  }
}

@media screen and (max-width: 991px) {
  .header__area .header__widgets .header__language {
    display: none;
  }

  .header__area .header__widgets .header__login {
    display: none;
  }
}

.header__bottombar {
  border-top: 1px solid hsl(var(--body-bg) / 0.7);
  border-bottom: 1px solid hsl(var(--body-bg) / 0.7);
  margin-top: 16px;
}

@media screen and (max-width: 991px) {
  .header__bottombar {
    display: none;
  }
}

.header__contact {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

@media screen and (max-width: 991px) {
  .header__contact {
    display: none;
  }
}

.header__contact p {
  font-size: 16px;
  font-weight: 600;
  margin-left: 60px;
  color: hsl(var(--body-color));
}

@media screen and (max-width: 1399px) {
  .header__contact p {
    margin-left: 32px;
  }
}

@media screen and (max-width: 1199px) {
  .header__contact p {
    font-size: 14px;
    margin-left: 20px;
  }
}

.header__contact p a {
  color: hsl(var(--body-color));
}

.header__contact p a:hover {
  color: hsl(var(--base));
  text-decoration: underline;
}

/* ======================  Header End Here  ======================*/
/* ======================  Footer Section Start  ======================*/
.footer__topbar {
  text-align: center;
}

.footer__topbar a img {
  width: 100%;
  max-width: 200px;
}

@media screen and (max-width: 767px) {
  .footer__topbar a img {
    max-width: 160px;
  }
}

.footer__topbar p {
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .footer__topbar p {
    margin-top: 12px;
  }
}

.footer__wrap {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  margin-top: 80px;
  margin-bottom: 80px;
}

@media screen and (max-width: 991px) {
  .footer__wrap {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 20px;
    row-gap: 40px;
  }

  .footer__wrap .footer__single {
    width: 30%;
  }

  .footer__wrap .footer__single:nth-last-child(2) {
    width: 45%;
  }
}

@media screen and (max-width: 575px) {
  .footer__wrap {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 30px;
    row-gap: 40px;
    margin-top: 50px;
    margin-bottom: 50px;
  }

  .footer__wrap .footer__single {
    width: auto;
  }

  .footer__wrap .footer__single:nth-last-child(2) {
    width: auto;
  }
}

@media screen and (max-width: 424px) {
.footer__wrap {
    justify-content: flex-start;
    gap: 0;
    column-gap: 16px;
    row-gap: 40px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

  .footer__wrap .footer__single {
    width: 100%;
  }

  .footer__wrap .footer__single ul {
    max-width: 100%;
  }

  .footer__wrap .footer__single:nth-last-child(2) {
    width: 100%;
  }
}

.footer__single h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 16px;
    padding-bottom: 10px;
    width: fit-content;
    position: relative;
    z-index: 1;
}

.footer__single h4::after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 34px;
    height: 3px;
    content: "";
    z-index: -1;
    background-color: hsl(var(--base));
}

.footer__single ul {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: 230px;
}

.footer__single ul li a {
  color: hsl(var(--body-color));
  display: inline-flex;
  align-items: center;
  gap: 6px;
  position: relative;
  z-index: 1;
}

.footer__single ul li a::before {
  content: "\f061";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: hsl(var(--base));
  font-size: 14px;
  transform: rotate(-45deg);
  transition: 0.3s;
}

.footer__single ul li a:hover {
  color: hsl(var(--base));
}

.footer__single ul li a:hover::before{
  transform: rotate(0deg);
} 

.footer__copyright {
  padding: 20px 0px;
  text-align: center;
  border-top: 1px solid hsl(var(--body-color) / 0.4);
}

.footer__copyright p {
  font-size: 14px;
}

/* ======================  Footer Section End  ======================*/
/* ===================== Scroll to Top Start ================================= */
.scroll-top {
  position: fixed;
  right: 30px;
  bottom: 30px;
  color: hsl(var(--base));
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 5;
  transition: 0.5s;
  cursor: pointer;
  transform: scale(0);
  background-color: transparent;
  border: 1px solid hsl(var(--base));
}

@media screen and (max-width: 767px) {
  .scroll-top {
    right: 16px;
    bottom: 16px;
    width: 38px;
    height: 38px;
    font-size: 14px;
  }
}

.scroll-top:hover {
  color: hsl(var(--white));
  background-color: hsl(var(--base-d-100));
}

.scroll-top.show {
  transform: scale(1);
}

/* ===================== Scroll to Top End ================================= */
/* ================================= Template Selection Css Start =========================== */
::selection {
  color: hsl(var(--white));
  background: hsl(var(--base-d-100));
}

/* ================================= Template Selection Css End ===========================  */
/* ================================= Social Icon Css Start =========================== */
.social__list {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

@media screen and (max-width: 1199px) {
  .social__list {
    gap: 8px;
  }
}

.social__list li a {
  width: 32px;
  height: 32px;
  border: 1px solid hsl(var(--base-two));
  color: hsl(var(--base-two));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  transition: 0.3s;
}

.social__list li a:hover {
  background-color: hsl(var(--base));
  border-color: hsl(var(--white));
  color: hsl(var(--white));
}

/* ================================= Social Icon Css End ===========================  */
/* ====================== Breadcrumb Css Start ==================== */
.breadcrumb {
  padding-top: 230px;
  padding-bottom: 60px;
  background-color: hsl(var(--base-two) / 0.2);
  margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
  .breadcrumb {
    padding-top: 200px;
  }
}

@media screen and (max-width: 991px) {
  .breadcrumb {
    padding-top: 110px;
    padding-bottom: 40px;
  }
}

.breadcrumb__subtitle {
  display: block;
  font-size: 30px;
  font-weight: 700;
  color: hsl(var(--base-two));
  font-family: var(--sub-font);
  margin-bottom: 10px;
}

@media screen and (max-width: 1399px) {
  .breadcrumb__subtitle {
    font-size: 26px;
  }
}

@media screen and (max-width: 991px) {
  .breadcrumb__subtitle {
    font-size: 24px;
    margin-bottom: 6px;
  }
}

.breadcrumb__title {
  color: hsl(var(--base-two));
  font-size: 64px;
  margin-bottom: 0;
}

@media screen and (max-width: 1399px) {
  .breadcrumb__title {
    font-size: 3.125rem;
  }
}

@media screen and (max-width: 1199px) {
  .breadcrumb__title {
    font-size: 2.8125rem;
  }
}

@media screen and (max-width: 991px) {
  .breadcrumb__title {
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .breadcrumb__title {
    font-size: 2.1875rem;
  }
}

@media screen and (max-width: 575px) {
  .breadcrumb__title {
    font-size: 1.875rem;
  }
}

.breadcrumb__wrapper {
  text-align: center;
}

/* ====================== Breadcrumb Css End ==================== */
/* ================================= Start Rating Css Start =========================== */
.rating-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.rating-list__item {
  padding: 0 1px;
  color: hsl(var(--warning));
}

.rating-list__text {
  color: hsl(var(--body-color));
}

/* ================================= Start Rating Css End =========================== */
/* ======================  Select2 Section Start  ======================*/
.select2.select2-container {
  width: 100% !important;
}

.select2.select2-container .selection {
  width: 100%;
}

.select2-container--default .select2-selection--single {
  background-color: transparent;
  border: 1px solid hsl(var(--border-color));
  border-radius: 0;
  height: auto;
  padding: 15px 36px 13px 16px;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 0;
  padding-right: 0;
  line-height: normal;
  color: hsl(var(--heading-color));
  font-size: 20px;
}

@media screen and (max-width: 1199px) {
  .select2-container .select2-selection--single .select2-selection__rendered {
    font-size: 18px;
  }
}

@media screen and (max-width: 991px) {
  .select2-container .select2-selection--single .select2-selection__rendered {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .select2-container .select2-selection--single .select2-selection__rendered {
    font-size: 14px;
  }
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow::after {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  content: "\f107";
  font-family: "Line Awesome Free";
  font-size: 16px;
  color: hsl(var(--heading-color));
  font-weight: 900;
  transition: 0.3s;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow::after {
  transform: translateY(-50%) rotate(-180deg);
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  display: none;
}

.select2-dropdown {
  background-color: hsl(var(--white));
  border: 1px solid hsl(var(--black) / 0.1);
  border-radius: 8px;
  overflow: hidden;
}

.select2-search--dropdown {
  padding: 6px;
}

.select2-search--dropdown .select2-search__field {
  padding: 8px 12px;
  width: 100%;
  box-sizing: border-box;
  outline: none;
  border: 1px solid hsl(var(--black) / 0.1);
  background-color: hsl(var(--white) / 0.2);
}

.select2-results__option {
  padding: 10px 14px;
  user-select: none;
  background-color: transparent;
  border-bottom: 1px solid hsl(var(--black) / 0.08);
}

.select2-results__option:last-child {
  border-bottom: none;
}

.select2-container--default .select2-results>.select2-results__options {
  scrollbar-width: thin;
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: hsl(var(--base));
  border-color: hsl(var(--base));
  color: hsl(var(--white));
}

.select2-container--default .select2-results__option--selected {
  background-color: hsl(var(--base) / 0.1);
  border-color: hsl(var(--base) / 0.1);
}

.select2-results__option.select2-results__message {
  text-align: center;
}

/* ======================  Select2 Section End  ======================*/
/* ======================  Hero Section Start  ======================*/
.hero__area {
  position: relative;
  z-index: 1;
}

.hero__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  z-index: -2;
  user-select: none;
  pointer-events: none;
}

.hero__bg video {
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

.hero__content {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding-top: 120px;
}

@media screen and (max-width: 991px) {
  .hero__content {
    padding-top: 30px;
  }
}

.hero__content>span {
  color: hsl(var(--base));
  font-family: var(--sub-font);
  font-size: 30px;
  font-weight: 700;
  display: block;
  margin-bottom: 16px;
}

@media screen and (max-width: 1399px) {
  .hero__content>span {
    font-size: 26px;
  }
}

@media screen and (max-width: 991px) {
  .hero__content>span {
    font-size: 24px;
    margin-bottom: 16px;
  }
}

.hero__content h1 {
  margin-bottom: 36px;
  text-shadow: 1px 0px 10px hsl(var(--black) / 0.2);
}

@media screen and (max-width: 1399px) {
  .hero__content h1 {
    margin-bottom: 26px;
  }
}

@media screen and (max-width: 991px) {
  .hero__content h1 {
    margin-bottom: 14px;
  }
}

.hero__content p {
  max-width: 600px;
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 48px;
}

@media screen and (max-width: 1399px) {
  .hero__content p {
    font-size: 20px;
  }
}

@media screen and (max-width: 991px) {
  .hero__content p {
    font-size: 16px;
    margin-bottom: 30px;
    max-width: 460px;
  }
}

@media screen and (max-width: 575px) {
  .hero__content {
    min-height: 66vh;
  }
}

/* ======================  Hero Section End  ======================*/
/* ======================  Stays Section Start  ======================*/
.stays__wrapper {
  position: relative;
  z-index: 1;
}

.stays__title {
  max-width: 50%;
  padding-top: 130px;
}

@media screen and (max-width: 1199px) {
  .stays__title {
    padding-top: 150px;
  }
}

@media screen and (max-width: 767px) {
  .stays__title {
    padding-top: 120px;
  }
}

@media screen and (max-width: 575px) {
  .stays__title {
    padding-top: 32px;
    max-width: 100%;
  }
}

.stays__title h4 {
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 28px;
  transition: 0.3s;
  cursor: pointer;
  display: flex;
  align-items: center;
  white-space: nowrap;
  gap: 24px;
}

@media screen and (max-width: 1199px) {
  .stays__title h4 {
    font-size: 18px;
  }
}

@media screen and (max-width: 767px) {
  .stays__title h4 {
    font-size: 14px;
    margin-bottom: 20px;
    gap: 10px;
  }
}
.stays__title h4 a {
    display: contents;
}
.hr__line {
  width: 0;
  height: 1px;
  background-color: hsl(var(--heading-color) / 0.4);
  transition: 0.6s;
}

.stays__title h4.show {
  font-weight: 600;
}

.stays__title h4:last-child {
  margin-bottom: 0;
}

.stays__title h4.show .hr__line {
  width: 100%;
}

.stays__btn {
  margin-top: 74px;
}

@media screen and (max-width: 1199px) {
  .stays__btn {
    margin-top: 50px;
  }
}

@media screen and (max-width: 767px) {
  .stays__btn {
    margin-top: 30px;
  }
}

@media screen and (max-width: 575px) {
  .stays__btn {
    display: flex;
    justify-content: center;
  }
}

.stays__tag {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  left: 25%;
  top: 4%;
  z-index: 1;
  width: 44%;
}

@media screen and (max-width: 991px) {
  .stays__tag {
    top: 10%;
  }
}

@media screen and (max-width: 767px) {
  .stays__tag {
    left: 10%;
  }
}

@media screen and (max-width: 575px) {
  .stays__tag {
    position: unset;
    width: 100%;
    align-items: flex-start;
  }
}

.stays__tag p {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1;
    font-family: var(--sub-font);
    background-color: hsl(var(--base));
    color: hsl(var(--white));
    padding: 12px 20px;
    max-width: 464px;
    text-align: end;
    position: absolute;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    transition: 0.8s;
}

@media screen and (max-width: 1199px) {
  .stays__tag p {
    font-size: 26px;
    max-width: 500px;
  }
}

@media screen and (max-width: 991px) {
  .stays__tag p {
    font-size: 22px;
    max-width: 420px;
  }
}

@media screen and (max-width: 767px) {
  .stays__tag p {
    font-size: 18px;
    max-width: 350px;
  }
}

@media screen and (max-width: 575px) {
  .stays__tag p {
    max-width: 90%;
    margin-top: -80px;
    text-align: start;
  }
}

.stays__tag p.show {
  position: unset;
  z-index: 2;
  opacity: 1;
  visibility: visible;
}

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

.stays__img img {
  position: absolute;
  right: 0;
  bottom: 10%;
  z-index: -3;
  user-select: none;
  pointer-events: none;
  width: 42%;
  height: 55%;
  object-fit: cover;
  opacity: 0;
  visibility: hidden;
  transition: 0.6s;
}

@media screen and (max-width: 767px) {
  .stays__img img {
    width: 48%;
  }
}

@media screen and (max-width: 575px) {
  .stays__img img {
    bottom: auto;
    top: 0;
    width: 100%;
    height: 220px;
  }
}

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

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

@media screen and (max-width: 575px) {
  .stays__wrap {
    padding-top: 230px;
    position: relative;
    z-index: 1;
  }
}

/* ======================  Stays Section End  ======================*/
/* ======================  Why Choose Section Start  ======================*/
.why__choose {
  position: relative;
  z-index: 1;
}

.why__choose::after {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: -2;
  content: "";
  width: 100%;
  height: 80%;
  background-color: hsl(var(--base-two));
}

.why__choose__left {
  max-width: 88%;
}

@media screen and (max-width: 991px) {
  .why__choose__left {
    max-width: 65%;
    margin-inline: auto;
  }
}

@media screen and (max-width: 767px) {
  .why__choose__left {
    max-width: 80%;
  }
}

@media screen and (max-width: 575px) {
  .why__choose__left {
    max-width: 90%;
  }
}

.why__choose__left p {
  margin-top: 30px;
  color: hsl(var(--white));
  font-weight: 400;
}

@media screen and (max-width: 1199px) {
  .why__choose__left p {
    font-size: 14px;
  }
}

.why__img img {
  width: 100%;
}

.why__img {
  position: relative;
  z-index: 1;
  padding: 15px;
}

@media screen and (max-width: 575px) {
  .why__img {
    padding: 6px;
  }
}

.why__img::after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  z-index: 2;
  content: "";
  border: 1px solid hsl(var(--base));
}

.why__choose__right {
  margin-top: 100px;
}

@media screen and (max-width: 991px) {
  .why__choose__right {
    margin-top: 40px;
  }
}

.why__choose__content span {
  color: hsl(var(--base));
  display: block;
  margin-bottom: 24px;
  font-weight: 600;
}

@media screen and (max-width: 991px) {
  .why__choose__content span {
    font-size: 14px;
    margin-bottom: 16px;
  }
}

.why__choose__content h2 {
  color: hsl(var(--white));
}

.why__choose__content p {
  color: hsl(var(--white));
}

.why__choose__content {
  margin-bottom: 46px;
}

@media screen and (max-width: 991px) {
  .why__choose__content {
    text-align: center;
    margin-bottom: 40px;
  }
}

.why__img.two {
  padding: 0;
  max-width: 78%;
  margin-left: auto;
}

@media screen and (max-width: 991px) {
  .why__img.two {
    max-width: 65%;
    margin-right: auto;
  }
}

@media screen and (max-width: 767px) {
  .why__img.two {
    max-width: 80%;
  }
}

@media screen and (max-width: 575px) {
  .why__img.two {
    max-width: 90%;
  }
}

.why__img.two::after {
  width: calc(100% - 30px);
  height: calc(100% - 30px);
}

@media screen and (max-width: 575px) {
  .why__img.two::after {
    width: calc(100% - 12px);
    height: calc(100% - 12px);
  }
}

/* ======================  Why Choose Section End  ======================*/
/* ======================  Offer Section Start  ======================*/
.offer__single {
  max-width: 540px;
  position: relative;
  z-index: 1;
  padding: 10px;
  transform: scale(0.7);
  transition: 0.5s;
}

@media screen and (max-width: 1399px) {
  .offer__single {
    max-width: 475px;
  }
}

@media screen and (max-width: 1199px) {
  .offer__single {
    max-width: 400px;
  }
}

@media screen and (max-width: 991px) {
  .offer__single {
    max-width: 300px;
  }
}

@media screen and (max-width: 424px) {
  .offer__single {
    max-width: 250px;
  }
}

.offer__slider .swiper-slide-active .offer__single {
  transform: scale(1);
}

.offer__single img {
    width: 100%;
    height: 365px;
    object-fit: cover;
}

.offer__single::after {
  position: absolute;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  width: calc(100% - 20px);
  height: 50%;
  z-index: 1;
  content: "";
  background-image: linear-gradient(to top, black, transparent);
  transition: 0.3s;
}

.offer__title {
  position: absolute;
  left: 35px;
  bottom: 35px;
  z-index: 3;
}

@media screen and (max-width: 991px) {
  .offer__title {
    left: 20px;
    bottom: 20px;
  }
}

.offer__title h4 {
  color: hsl(var(--white));
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 6px;
}

@media screen and (max-width: 1199px) {
  .offer__single img {
    height: 330px;
}
}

@media screen and (max-width: 991px) {
  .offer__title h4 {
    font-size: 16px;
  }
  .offer__single img {
    height: 260px;
}
}

@media screen and (max-width: 424px) {
  .offer__title h4 {
    font-size: 14px;
  }
    .offer__single img {
    height: 230px;
}
}

.offer__title p {
  font-size: 16px;
  font-weight: 600;
  color: hsl(var(--white) / 0.7);
}

@media screen and (max-width: 991px) {
  .offer__title p {
    font-size: 12px;
  }
}

.new__price {
  color: hsl(var(--base));
  font-size: 20px;
  font-weight: 600;
}

@media screen and (max-width: 991px) {
  .new__price {
    font-size: 16px;
  }
}

.regular__price {
  text-decoration: line-through;
  color: hsl(var(--white) / 0.5);
}

.offer__label {
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 3;
  background-color: hsl(var(--base));
  padding: 14px;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  text-align: center;
}

@media screen and (max-width: 991px) {
  .offer__label {
    right: 16px;
    top: 16px;
    padding: 8px;
  }
}

.offer__label span {
  line-height: 1;
  color: hsl(var(--white));
  font-size: 16px;
  font-weight: 400;
  display: block;
  margin-bottom: 8px;
}

@media screen and (max-width: 991px) {
  .offer__label span {
    font-size: 12px;
  }
}

.offer__label h4 {
  margin-bottom: 0;
  line-height: 1;
  color: hsl(var(--white));
  font-size: 24px;
  font-weight: 500;
}

@media screen and (max-width: 991px) {
  .offer__label h4 {
    font-size: 18px;
  }
}

.offer__single::before {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  content: "";
  border: 1px solid hsl(var(--base));
  width: 100%;
  height: 100%;
  transition: 0.3s;
}

.offer__slider {
  padding: 2px 0px;
}

.offer__slider .swiper-slide {
  width: auto;
}

.offer__slider .swiper-slide-active .offer__label {
  opacity: 1;
  visibility: visible;
}

.offer__slider .swiper-slide-active .offer__single {
  padding: 0;
}

.offer__slider .swiper-slide-active .offer__single::before {
  width: calc(100% - 24px);
  height: calc(100% - 24px);
}

@media screen and (max-width: 991px) {
  .offer__slider .swiper-slide-active .offer__single::before {
    width: calc(100% - 16px);
    height: calc(100% - 16px);
  }
}

.offer__slider .swiper-slide-active .offer__single::after {
  bottom: 0;
  width: 100%;
}

/* ======================  Offer Section End  ======================*/
/* ======================  Service Section Start  ======================*/
.service__area {
  overflow-x: hidden;
}

.service__single {
  position: relative;
  z-index: 1;
  transition: 0.3s;
  padding: 10px;
}

@media screen and (max-width: 991px) {
  .service__single {
    padding: 6px;
  }
}

.service__single::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid transparent;
  content: "";
  z-index: 1;
  transition: 0.3s;
}

.service__single img {
  width: 100%;
}

.service__title h4 {
  margin-bottom: 0;
  color: hsl(var(--body-bg));
  line-height: 1;
  font-size: 20px;
}

@media screen and (max-width: 1199px) {
  .service__title h4 {
    font-size: 16px;
  }
}

@media screen and (max-width: 991px) {
  .service__title h4 {
    font-size: 14px;
  }
}

.service__title {
  position: absolute;
  left: 10px;
  bottom: 36px;
  z-index: 2;
  background-color: hsl(var(--base-two));
  padding: 8px 10px;
  transition: 0.3s;
  max-width: 90%;
}

@media screen and (max-width: 991px) {
  .service__title {
    left: 6px;
    bottom: 24px;
  }
}

.service__slider {
  overflow: visible !important;
}

.service__slider .swiper-slide-active .service__title {
  background-color: hsl(var(--base));
}

.service__slider .swiper-slide-active .service__single {
  transform: scale(0.94);
}

.service__slider .swiper-slide-active .service__single::after {
  border-color: hsl(var(--base));
}

.service__info {
  max-width: 370px;
  text-align: end;
  margin-left: auto;
  margin-top: 26px;
  margin-bottom: 16px;
}

@media screen and (max-width: 1199px) {
  .service__info {
    margin-top: 20px;
  }
}

@media screen and (max-width: 991px) {
  .service__info {
    margin-top: 10px;
    margin-bottom: 10px;
  }
}

.service__info p {
  font-size: 30px;
  font-weight: 700;
  font-family: var(--sub-font);
  line-height: 1.3;
}

@media screen and (max-width: 1199px) {
  .service__info p {
    font-size: 24px;
  }
}

@media screen and (max-width: 991px) {
  .service__info p {
    font-size: 20px;
  }
}

/* ======================  Service Section End  ======================*/
/* ======================  Gallery Section Start  ======================*/
.gallery__area {
  background-color: hsl(var(--base-two));
  position: relative;
  z-index: 1;
}

.gallery__sp {
  position: absolute;
  left: 0;
  top: 10%;
  z-index: -1;
  user-select: none;
  pointer-events: none;
  max-width: 160px;
}

.gallery__sp.sp-2 {
  top: auto;
  bottom: 0;
}

.gallery__sp.sp-3 {
  left: auto;
  right: 0;
  top: 10%;
}

.gallery__sp.sp-4 {
  left: auto;
  top: auto;
  right: 12%;
  bottom: 16%;
}

.gallery__main {
  display: flex;
  justify-content: space-between;
  gap: 24px;
}

.gallery__single.two a {
  width: 100%;
  height: 270px;
  margin-top: 24px;
}

.gallery__main.gl__three .gallery__single:first-child a {
  margin-top: 40px;
  width: 100%;
  height: 270px;
}

.gallery__main.four .gallery__single:last-child a {
  width: 100%;
  height: 350px;
  margin-top: -50px;
}

.gallery__main.five .gallery__single:first-child a {
  width: 100%;
  height: 300px;
  margin-top: -76px;
}

.gallery__single a {
  animation: bubble 8s ease-in-out infinite;
  transform: scale(0.8);
}

.gallery__single a {
    animation-delay: 0s;
    animation-duration: 9s;
}

.gallery__single.two a {
    animation-delay: 1s;
    animation-duration: 10s;
}

.gallery__main.five .gallery__single:first-child a {
    animation-delay: 2s;
    animation-duration: 11s;
}

.gallery__main.gl__three .gallery__single:first-child a {
    animation-delay: 3s;
    animation-duration: 9.5s;
}

.gallery__main.four .gallery__single:last-child a {
    animation-delay: 4s;
    animation-duration: 10.5s;
}

.gallery__title h2 {
  color: hsl(var(--white));
}

.gallery__title p {
  color: hsl(var(--white) / 0.9);
}

.gallery__title {
  max-width: 80%;
  margin-top: 60px;
  margin-bottom: 100px;
}

@media screen and (max-width: 991px) {
  .gallery__title {
    margin-top: 30px;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 575px) {
  .gallery__title {
    min-width: 100%;
  }
}

.gallery__info {
  margin-top: 60px;
  text-align: end;
  max-width: 90%;
  margin-left: auto;
}

@media screen and (max-width: 991px) {
  .gallery__info {
    margin-top: 0;
  }
}

@media screen and (max-width: 575px) {
  .gallery__info {
    max-width: 100%;
  }
}

.gallery__info p {
  color: hsl(var(--white) / 0.9);
  font-size: 30px;
  font-weight: 700;
  font-family: var(--sub-font);
  line-height: 1.3;
}

@media screen and (max-width: 991px) {
  .gallery__info p {
    font-size: 24px;
  }
}

@media screen and (max-width: 575px) {
  .gallery__info p {
    font-size: 18px;
  }
}

.gallery__single a {
  position: relative;
  z-index: 1;
  border: 1px solid transparent;
}

.gallery__single a::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-color: hsl(var(--base));
  z-index: 1;
  mix-blend-mode: multiply;
  transition: 0.3s;
  opacity: 0;
  visibility: hidden;
}

.gallery__single a:hover::after {
  opacity: 1;
  visibility: visible;
}

.gallery__single a:hover {
  border-color: hsl(var(--white) / 0.3);
}

.gallery__main.gl__three {
  margin-bottom: 40px;
}

.gallery__btn {
  display: flex;
  justify-content: flex-end;
}

@media screen and (max-width: 575px) {
  .gallery__btn {
    justify-content: center;
  }
}

.gallery__btn a {
  padding: 0;
  width: 44px;
  height: 44px;
  margin-right: -55px;
  margin-top: 10px;
}

.gallery__btn a .fa-arrow-right {
  transform: rotate(-45deg);
  transition: 0.3s;
  font-size: 26px;
}

.gallery__btn a::after {
  background-color: hsl(var(--base) / 0.2) !important;
}

@media screen and (max-width: 1199px) {
  .gallery__title {
    margin-bottom: 60px;
  }

  .gallery__single a {
    transform: scale(0.94);
  }

  .gallery__single.two a {
    height: 220px;
  }

  .gallery__main.gl__three .gallery__single:first-child a {
    height: 225px;
  }

  .gallery__main.four .gallery__single:last-child a {
    height: 270px;
  }

  .gallery__main.five .gallery__single:first-child a {
    height: 230px;
  }
}

@media screen and (max-width: 575px) {
  .gallery__btn a {
    margin-right: 0;
  }

  .gallery__single.two a {
    height: 114px;
    width: 120px;
  }

  .gallery__single a {
    transform: scale(1);
  }

  .gallery__main {
    gap: 10px;
  }

  .gallery__main.five .gallery__single:first-child a {
    height: 114px;
    width: 120px;
    margin-top: -44px;
  }
}


@keyframes bubble {
    0% {
        transform: translate(0, 0) scale(0.8);
        opacity: 1;
    }

    25% {
        transform: translate(-10px, -10px) scale(0.8);
        opacity: 0.9;
    }

    50% {
        transform: translate(10px, -20px) scale(0.8);
        opacity: 0.7;
    }

    75% {
        transform: translate(-8px, -10px) scale(0.8);
        opacity: 0.85;
    }

    100% {
        transform: translate(0, 0) scale(0.8);
        opacity: 1;
    }
}



/* ======================  Gallery Section End  ======================*/
/* ======================  Testimonials Section Start  ======================*/
.testimonial__single {
  display: flex;
  align-items: flex-start;
  gap: 40px;
}

@media screen and (max-width: 1199px) {
  .testimonial__single {
    gap: 20px;
  }
}

@media screen and (max-width: 575px) {
  .testimonial__single {
    flex-direction: column;
    align-items: center;
  }
}

.testimonial__img {
  margin-top: 70px;
  max-width: 100px;
  padding: 0;
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  width: 100%;
  opacity: 0.3;
  transition: 0.6s;
}

@media screen and (max-width: 1199px) {
  .testimonial__img {
    max-width: 80px;
  }
}

@media screen and (max-width: 575px) {
  .testimonial__img {
    max-width: 160px;
    margin-top: 0;
  }
}

.testimonial__img img {
  width: 100%;
}

.testimonial__content {
  padding-bottom: 60px;
}

@media screen and (max-width: 575px) {
  .testimonial__content {
    text-align: center;
  }
}

.testimonial__content>span {
  font-size: 46px;
  line-height: 1;
  color: hsl(var(--body-color));
  margin-bottom: 10px;
}

@media screen and (max-width: 1199px) {
  .testimonial__content>span {
    font-size: 32px;
    margin-bottom: 4px;
  }
}

.testimonial__content p {
  color: hsl(var(--body-color));
  margin-bottom: 16px;
  max-width: 90%;
}

@media screen and (max-width: 1399px) {
  .testimonial__content p {
    max-width: 95%;
  }
}

@media screen and (max-width: 1199px) {
  .testimonial__content p {
    font-size: 14px;
  }
}

.testimonial__content h4 {
  color: hsl(var(--body-color));
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 0;
}

.testimonial__img::after,
.testimonial__img::before {
  position: absolute;
  z-index: 1;
  width: 28px;
  height: 28px;
  content: "";
  transition: 0.4s;
  opacity: 0;
  visibility: hidden;
}

.testimonial__img::after {
  left: 0;
  bottom: 0;
  border-left: 1px solid hsl(var(--base));
  border-bottom: 1px solid hsl(var(--base));
}

.testimonial__img::before {
  right: 0;
  top: 0;
  border-top: 1px solid hsl(var(--base));
  border-right: 1px solid hsl(var(--base));
}

.testimonials__wrap .swiper {
  padding-right: 100px;
}

@media screen and (max-width: 1199px) {
  .testimonials__wrap .swiper {
    padding-right: 90px;
  }
}

@media screen and (max-width: 767px) {
  .testimonials__wrap .swiper {
    padding-right: 0;
  }
}

.testimonials__wrap .swiper-slide-active .testimonial__img {
  margin-top: 0;
  max-width: 220px;
  opacity: 1;
  padding: 5px;
}

@media screen and (max-width: 1199px) {
  .testimonials__wrap .swiper-slide-active .testimonial__img {
    max-width: 180px;
  }
}

@media screen and (max-width: 767px) {
  .testimonials__wrap .swiper-slide-active .testimonial__img {
    max-width: 160px;
  }
}

.testimonials__wrap .swiper-slide-active .testimonial__img::after,
.testimonials__wrap .swiper-slide-active .testimonial__img::before {
  opacity: 1;
  visibility: visible;
}

.testimonials__wrap .swiper__bottombar {
  justify-content: space-between;
  position: absolute;
  right: 0;
  bottom: 5px;
  z-index: 1;
  width: calc(100% - 255px);
}

@media screen and (max-width: 1199px) {
  .testimonials__wrap .swiper__bottombar {
    width: calc(100% - 196px);
  }
}

@media screen and (max-width: 767px) {
  .testimonials__wrap .swiper__bottombar {
    width: calc(100% - 177px);
  }
}

@media screen and (max-width: 575px) {
  .testimonials__wrap .swiper__bottombar {
    width: 100%;
    justify-content: center;
    gap: 40px;
  }
}

.testimonials__wrap .swiper-pagination {
  margin-top: 0;
  text-align: end;
}

@media screen and (max-width: 575px) {
  .testimonials__wrap .swiper-pagination {
    text-align: start;
    width: auto;
  }
}

/* ======================  Testimonials Section End  ======================*/
/* ======================  Reservation Section Start  ======================*/
.reservation__area {
  padding-top: 175px;
  padding-bottom: 175px;
}

@media screen and (max-width: 1199px) {
  .reservation__area {
    padding-top: 120px;
  }
}

@media screen and (max-width: 991px) {
  .reservation__area {
    padding-top: 80px;
    padding-bottom: 140px;
  }
}

.reservation__area .section__heading h2 {
  font-size: 64px;
}

@media screen and (max-width: 1399px) {
  .reservation__area .section__heading h2 {
    font-size: 3.125rem;
  }
}

@media screen and (max-width: 1199px) {
  .reservation__area .section__heading h2 {
    font-size: 2.8125rem;
  }
}

@media screen and (max-width: 991px) {
  .reservation__area .section__heading h2 {
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .reservation__area .section__heading h2 {
    font-size: 2.1875rem;
  }
}

@media screen and (max-width: 575px) {
  .reservation__area .section__heading h2 {
    font-size: 1.875rem;
  }
}

/* ======================  Reservation Section End  ======================*/
/* ======================  Newsletter Section Start  ======================*/
.newsletter__wrap {
  padding: 36px 68px;
  border: 1px solid hsl(var(--base));
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: -100px;
}

@media screen and (max-width: 1199px) {
  .newsletter__wrap {
    padding: 32px 40px;
  }
}

@media screen and (max-width: 991px) {
  .newsletter__wrap {
    flex-direction: column;
    gap: 30px;
  }
}

@media screen and (max-width: 575px) {
  .newsletter__wrap {
    padding: 32px 24px;
  }
}

.newsletter__wrap::after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  content: "";
  background-color: hsl(var(--base-two));
  width: calc(100% - 8px);
  height: calc(100% - 8px);
}

.newsletter__content {
  max-width: 46%;
}

@media screen and (max-width: 991px) {
  .newsletter__content {
    max-width: 100%;
    text-align: center;
  }
}

.newsletter__content h2 {
  color: hsl(var(--white));
}

.newsletter__content p {
  color: hsl(var(--white) / 0.9);
}

.newsletter__main {
  max-width: 42%;
}

@media screen and (max-width: 991px) {
  .newsletter__main {
    max-width: 100%;
  }
}

.newsletter__main p {
  margin-top: 16px;
  font-size: 14px;
  color: hsl(var(--white) / 0.9);
}

.newsletter__main p a {
  color: hsl(var(--white) / 0.9);
  text-decoration: underline;
}

.newsletter__main p a:hover {
  color: hsl(var(--base));
}

.newsletter__form label {
  color: hsl(var(--white) / 0.9);
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 16px;
}

@media screen and (max-width: 575px) {
  .newsletter__form label {
    font-size: 14px;
    margin-bottom: 8px;
  }
}

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

.newsletter__input input:-webkit-autofill,
.newsletter__input textarea:-webkit-autofill,
.newsletter__input select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px transparent inset;
  -webkit-text-fill-color: hsl(var(--white)) !important;
  caret-color: hsl(var(--white));
}

.newsletter__input button {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  color: hsl(var(--white));
  font-size: 16px;
  font-weight: 600;
  border: 1px solid transparent;
  outline: none;
  width: 130px;
  height: 100%;
  cursor: pointer;
  transition: 0.3s;
}

@media screen and (max-width: 575px) {
  .newsletter__input button {
    width: 94px;
    font-size: 12px;
  }
}

.newsletter__input button:hover {
  color: hsl(var(--base));
}

.newsletter__input input {
  border-color: hsl(var(--border-color)) !important;
  color: hsl(var(--white)) !important;
  border-radius: 0 !important;
  padding-right: 120px;
}

@media screen and (max-width: 575px) {
  .newsletter__input input {
    padding-right: 100px;
  }
}

.newsletter__input input:focus {
  background-color: hsl(var(--white) / 0.1) !important;
}

.newsletter__input input::placeholder {
  color: hsl(var(--white) / 0.6);
}

/* ======================  Newsletter Section End  ======================*/
/* ======================  Suites And Villas Section Start  ======================*/
.parallax {
  height: 70vh;
  background-attachment: fixed;
}

@media screen and (max-width: 1199px) {
  .parallax {
    height: 80vh;
  }
}

@media screen and (max-width: 991px) {
  .parallax {
    height: 60vh;
  }
}

@media screen and (max-width: 575px) {
  .parallax {
    height: 50vh;
  }
}

.suites-and-villas .section__heading {
  max-width: 715px;
  margin-bottom: 48px;
}

.sav__filter {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  column-gap: 48px;
  row-gap: 12px;
}

@media screen and (max-width: 991px) {
  .sav__filter {
    column-gap: 30px;
  }
}

@media screen and (max-width: 767px) {
  .sav__filter {
    column-gap: 20px;
  }
}

.sav__filter a {
  font-size: 20px;
  font-weight: 600;
  display: block;
  line-height: 1;
  padding: 10px;
}

@media screen and (max-width: 767px) {
  .sav__filter a {
    font-size: 16px;
  }
}

.sav__filter a.active {
  border-bottom: 3px solid hsl(var(--base));
}

@media screen and (max-width: 767px) {
  .sav__filter a.active {
    border-width: 2px;
  }
}

.sav__wrap {
  position: relative;
  z-index: 1;
  padding-top: 160px;
}

@media screen and (max-width: 991px) {
  .sav__wrap {
    padding-top: 60px;
  }
}

.sav__img {
  position: absolute;
  right: 0;
  top: 60px;
  width: 44%;
  height: 86%;
  z-index: 2;
  object-fit: cover;
}

@media screen and (max-width: 991px) {
  .sav__img {
    position: unset;
    width: 696px;
    height: 300px;
  }
}

@media screen and (max-width: 767px) {
  .sav__img {
    width: 516px;
    height: 250px;
  }
}

@media screen and (max-width: 575px) {
  .sav__img {
    width: calc(100% - 24px);
    height: 200px;
  }
}

@media screen and (max-width: 991px) {
  .sav__img__pr {
    display: flex;
    justify-content: center;
  }
}

.sav__main {
  border: 1px solid hsl(var(--base));
  padding: 60px 48px;
}

@media screen and (max-width: 991px) {
  .sav__main {
    padding: 30px;
  }
}

@media screen and (max-width: 575px) {
  .sav__main {
    padding: 16px;
  }
}

.sav__content h4 {
  font-size: 32px;
  font-weight: 600;
  margin-bottom: 24px;
}

@media screen and (max-width: 1199px) {
  .sav__content h4 {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 991px) {
  .sav__content h4 {
    margin-bottom: 12px;
    font-size: 28px;
  }
}

@media screen and (max-width: 767px) {
  .sav__content h4 {
    margin-bottom: 8px;
    font-size: 24px;
  }
}

.sav__content p {
  font-size: 20px;
  color: hsl(var(--border-color));
  margin-bottom: 32px;
}

@media screen and (max-width: 1199px) {
  .sav__content p {
    font-size: 18px;
  }
}

@media screen and (max-width: 991px) {
  .sav__content p {
    font-size: 16px;
    margin-bottom: 14px;
  }
}

.sav__content ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 16px;
  column-gap: 10px;
  max-width: 450px;
  margin-bottom: 30px;
}

@media screen and (max-width: 991px) {
  .sav__content ul {
    margin-bottom: 20px;
  }
}

.sav__content ul li {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 20px;
  font-weight: 400;
}

@media screen and (max-width: 991px) {
  .sav__content ul li {
    font-size: 16px;
  }
}

.sav__content ul li i {
  color: hsl(var(--base));
}

.sav__price {
  margin-bottom: 48px;
}

@media screen and (max-width: 991px) {
  .sav__price {
    margin-bottom: 24px;
  }
}

.sav__price p {
  font-size: 16px;
  color: hsl(var(--border-color));
}

.sav__price p span {
  font-size: 24px;
  font-weight: 500;
  color: hsl(var(--base));
  margin-left: 16px;
}

.sav__btn {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  max-width: 80%;
}

@media screen and (max-width: 991px) {
  .sav__btn {
    max-width: 100%;
  }
}

.sav__content {
  max-width: 80%;
}

@media screen and (max-width: 991px) {
  .sav__content {
    max-width: 100%;
  }
}

@media screen and (max-width: 424px) {
  .sav__content ul {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}
}

.sav__img.left__sav {
  right: auto;
  left: 0;
}

.sav__main.left__pt {
  padding-left: 150px;
}

@media screen and (max-width: 991px) {
  .sav__main.left__pt {
    padding-left: 30px;
  }
}

.sav__main.left__pt .sav__content {
  max-width: 100%;
}

.sav__main.left__pt .sav__btn {
  max-width: 100%;
}

/* ======================  Suites And Villas Section End  ======================*/
/* ======================  SAV Details Section Start  ======================*/
.sav__details__price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

.sav__details__price a {
  color: hsl(var(--border-color));
  font-size: 18px;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 6px;
}

@media screen and (max-width: 575px) {
  .sav__details__price a {
    font-size: 16px;
  }
}

.sav__details__price a:hover {
  color: hsl(var(--base));
}

.sav__details__price h4 {
  font-size: 20px;
  font-weight: 600;
  color: hsl(var(--border-color));
  margin-bottom: 0;
}

@media screen and (max-width: 575px) {
  .sav__details__price h4 {
    font-size: 16px;
  }
}

.sav__details__price h4 span {
  color: hsl(var(--base));
  font-size: 40px;
  font-weight: 700;
}

@media screen and (max-width: 575px) {
  .sav__details__price h4 span {
    font-size: 32px;
  }
}

.sav__details__spec ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.sav__details__spec ul li {
  color: hsl(var(--border-color));
  line-height: 1;
}

.sav__details__spec ul li:not(:last-child) {
  padding-right: 10px;
  margin-right: 10px;
  border-right: 1px solid hsl(var(--border-color));
}

.sav__details__per ul {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-bottom: 48px;
}

@media screen and (max-width: 1199px) {
  .sav__details__per ul {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 575px) {
  .sav__details__per ul {
    gap: 14px;
    margin-bottom: 20px;
  }
}

.sav__details__per ul li {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 20px;
  font-weight: 400;
}

@media screen and (max-width: 1399px) {
  .sav__details__per ul li {
    font-size: 18px;
  }
}

@media screen and (max-width: 1199px) {
  .sav__details__per ul li {
    font-size: 16px;
    gap: 10px;
  }
}

.sav__details__per ul li i {
  color: hsl(var(--base));
}

.sav__details__desc p:not(:last-child) {
  margin-bottom: 24px;
}

@media screen and (max-width: 575px) {
  .sav__details__desc p:not(:last-child) {
    margin-bottom: 16px;
  }
}

.sav__details__desc {
  margin-bottom: 60px;
}

.sav__details__desc p {
    font-size: 16px;
    color: hsl(var(--black) / 0.7);
}

.sav__details__info ul {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.sav__details__info ul li {
  padding-left: 20px;
  position: relative;
  z-index: 1;
  font-size: 20px;
}

.sav__details__info ul li::after {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
  width: 8px;
  height: 8px;
  content: "";
  background-color: hsl(var(--base));
}

.sav__details__room ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 16px;
  row-gap: 24px;
}

@media screen and (max-width: 1199px) {
  .sav__details__room ul {
    row-gap: 16px;
  }

  .sav__details__desc p {
    font-size: 18px;
  }

  .sav__details__info ul li {
    font-size: 18px;
  }
}

@media screen and (max-width: 575px) {
  .sav__details__room ul {
    grid-template-columns: 1fr;
    row-gap: 16px;
    column-gap: 10px;
  }

  .sav__details__desc p {
    font-size: 16px;
  }

  .sav__details__info ul li {
    font-size: 16px;
  }
}

.sav__details__room ul li {
  font-size: 20px;
  display: flex;
  align-items: center;
  gap: 16px;
}

@media screen and (max-width: 1399px) {
  .sav__details__room ul li {
    font-size: 18px;
  }
}

@media screen and (max-width: 1199px) {
  .sav__details__room ul li {
    font-size: 16px;
    gap: 10px;
  }
}

.sav__details__room ul li i {
  color: hsl(var(--base));
}

.sav__details__reservation {
  margin-top: 60px;
}

.sav__reservation__btn {
  margin-top: 32px;
}

.sav__details__sidebar {
  padding-left: 60px;
}

@media screen and (max-width: 1199px) {
  .sav__details__sidebar {
    padding-left: 24px;
  }
}

@media screen and (max-width: 991px) {
  .sav__details__sidebar {
    padding-left: 0;
    padding-top: 44px;
  }
}

.sav__calender .datepicker {
  background: hsl(var(--base) / 0.08);
  border: none;
  border-radius: 0;
  font-family: var(--body-font);
  font-size: 16px;
  color: hsl(var(--body-color));
  width: 100%;
}

.datepicker {
  width: 300px;
}

.datepicker--cell {
  border-radius: 0;
  height: 48px;
}

.datepicker--cell.-focus- {
  background-color: hsl(var(--base));
  color: hsl(var(--white));
}

.datepicker--cell.-selected-.-focus- {
  background: hsl(var(--base));
  color: hsl(var(--white));
}

.datepicker--cell.-current- {
  color: hsl(var(--base));
}

.datepicker--cell.-current-.-focus- {
  color: hsl(var(--white));
}

.datepicker--cell.-selected-,
.datepicker--cell.-selected-.-current- {
  color: hsl(var(--white));
  background: hsl(var(--base));
}

.datepicker--nav {
  justify-content: center;
  gap: 10px;
  border-bottom: none;
  min-height: 32px;
  padding: 24px 12px;
  padding-bottom: 0;
}

.datepicker--nav-title {
  border-radius: 0;
  padding: 4px 12px;
  font-size: 16px;
  font-weight: 600;
  color: hsl(var(--body-color));
}

.datepicker--nav-action {
  width: 32px;
  border-radius: 0;
}

.datepicker--nav-action path {
  stroke: hsl(var(--body-color));
}

.datepicker--nav-title i {
  color: hsl(var(--body-color));
}

.datepicker--day-name {
  color: hsl(var(--border-color));
  height: 48px;
  font-size: 14px;
  font-weight: 500;
}

.datepicker--cell-day.-other-month-,
.datepicker--cell-year.-other-decade- {
  color: hsl(var(--border-color));
}

.datepicker--nav-action:hover,
.datepicker--nav-title:hover {
  background: hsl(var(--base));
  color: hsl(var(--white));
}

.datepicker--nav-action:hover i,
.datepicker--nav-title:hover i {
  color: hsl(var(--white));
}

.datepicker--nav-action:hover path,
.datepicker--nav-title:hover path {
  stroke: hsl(var(--white));
}

.datepicker--cells-months {
  height: auto;
}

.datepicker--content {
  box-sizing: content-box;
  padding: 24px 12px;
  padding-top: 0;
}

.datepicker--cell.-selected- {
  border: 1px solid hsl(var(--base-two) / 0.5);
}

.-selected-.datepicker--cell-day.-other-month-,
.-selected-.datepicker--cell-year.-other-decade- {
  color: hsl(var(--white));
  background: hsl(var(--base) / 0.3);
  border-color: hsl(var(--base) / 0.2);
}

.-selected-.datepicker--cell-day.-other-month-.-focus-,
.-selected-.datepicker--cell-year.-other-decade-.-focus- {
  background: hsl(var(--base) / 0.5);
}

.sav__check {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
}

.sav__check__single {
  padding: 12px 16px;
}

.sav__check__single span {
  color: hsl(var(--white) / 0.8);
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
}

.sav__check__single h4 {
  font-size: 16px;
  font-weight: 600;
}

/* ======================  SAV Details Section End  ======================*/
/* ======================  Virtual Tour Section Start  ======================*/
.virtual__gallery a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

.virtual__gallery a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.virtual__wrap .virtual__gallery:last-child {
  margin-bottom: 0;
}

.virtual__wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 991px) {
  .virtual__wrap {
    gap: 8px;
  }
}

.virtual__gallery {
  width: 100%;
  height: 100%;
}

.virtual__gallery__more {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background-color: hsl(var(--black) / 0.5);
  color: hsl(var(--white));
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 0;
}

@media screen and (max-width: 991px) {
  .virtual__gallery__more {
    font-size: 14px;
  }
}

.virtual__gallery__more span {
  font-size: 32px;
}

@media screen and (max-width: 991px) {
  .virtual__gallery__more span {
    font-size: 24px;
  }
}

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

  .virtual__tour .g-4,
  .virtual__tour .gy-4 {
    --bs-gutter-y: 0.5rem;
  }

  .virtual__tour .g-4,
  .virtual__tour .gx-4 {
    --bs-gutter-x: 0.5rem;
  }
}

/* ======================  Virtual Tour Section End  ======================*/
/* ======================  Checkout Section Start  ======================*/
.checkout__wrap {
  padding: 32px;
  border: 1px solid hsl(var(--base));
}

@media screen and (max-width: 991px) {
  .checkout__wrap {
    padding: 24px;
  }
}

@media screen and (max-width: 767px) {
  .checkout__wrap {
    padding: 24px 16px;
  }

  .checkout__wrap .g-4,
  .checkout__wrap .gy-4 {
    --bs-gutter-y: 0.8rem;
  }

  .checkout__wrap .g-4,
  .checkout__wrap .gx-4 {
    --bs-gutter-x: 0.8rem;
  }
}

.checkout__radio {
  display: flex;
  align-items: center;
  gap: 60px;
}

@media screen and (max-width: 1199px) {
  .checkout__radio {
    gap: 30px;
  }
}

@media screen and (max-width: 991px) {
  .checkout__radio {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}

.checkout__title h3 {
  margin-bottom: 0;
}

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

.icon__input input {
  padding-right: 50px;
}

.icon__input span {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  pointer-events: none;
  color: hsl(var(--base));
  font-size: 24px;
}

@media screen and (max-width: 1199px) {
  .icon__input span {
    font-size: 20px;
  }
}

@media screen and (max-width: 991px) {
  .icon__input span {
    font-size: 18px;
  }
}

/* ======================  Checkout Section End  ======================*/
/* ======================  Amenities Section Start  ======================*/
.amenities__content span {
  display: block;
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 24px;
  color: hsl(var(--base));
}

@media screen and (max-width: 1199px) {
  .amenities__content span {
    margin-bottom: 16px;
  }
}

@media screen and (max-width: 991px) {
  .amenities__content span {
    font-size: 14px;
  }
}

.amenities__content a {
  margin-top: 48px;
}

.amenities__img {
  max-width: 90%;
}

.spa__img {
  max-width: 90%;
  margin-left: auto;
}

.amenities__img img {
  width: 100%;
}

.spa__img img {
  width: 100%;
}

@media screen and (max-width: 1199px) {
  .amenities__content a {
    margin-top: 34px;
  }

  .amenities__img {
    max-width: 100%;
  }

  .spa__img {
    max-width: 100%;
    margin-left: auto;
  }
}

@media screen and (max-width: 991px) {
  .amenities__img {
    margin-bottom: 24px;
  }
}

/* ======================  Amenities Section End  ======================*/
/* ======================  About Section Start  ======================*/
.about__vision__content {
  text-align: center;
  max-width: 80%;
  margin-inline: auto;
}

@media screen and (max-width: 991px) {
  .about__vision__content {
    max-width: 100%;
  }
}

.about__vision__content h2 {
  max-width: 60%;
  margin-inline: auto;
}

@media screen and (max-width: 1199px) {
  .about__vision__content h2 {
    max-width: 100%;
  }
}

.about__vision__content p {
  font-size: 20px;
}

@media screen and (max-width: 1199px) {
  .about__vision__content p {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .about__vision__content p {
    font-size: 14px;
  }
}

.about__vision__content p:not(:last-child) {
  margin-bottom: 24px;
}

.about__gallery {
  display: flex;
  justify-content: space-between;
  gap: 1px;
}

.about__gallery__single {
  width: 20%;
  height: 50vh;
  transition: 0.4s linear;
}

.about__gallery__single.active {
  width: 70%;
}

@media screen and (max-width: 767px) {
  .about__gallery__single {
    height: 40vh;
  }
}

.about__compit__content span {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 24px;
  color: hsl(var(--base));
}

@media screen and (max-width: 991px) {
  .about__compit__content span {
    margin-bottom: 14px;
  }
}

@media screen and (max-width: 767px) {
  .about__compit__content span {
    font-size: 14px;
  }
}

.about__compit__content p {
  margin-bottom: 48px;
}

@media screen and (max-width: 991px) {
  .about__compit__content p {
    margin-bottom: 20px;
  }
}

.about__compit__content img {
  width: 100%;
}

@media screen and (max-width: 991px) {
  .about__compit__content img {
    width: 60%;
    margin-bottom: 16px;
  }
}

.about__compit__quote {
  max-width: 86%;
  margin-left: auto;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: end;
}

@media screen and (max-width: 991px) {
  .about__compit__quote {
    flex-direction: row-reverse;
    align-items: center;
    max-width: 100%;
    gap: 20px;
  }
}

@media screen and (max-width: 575px) {
  .about__compit__quote {
    gap: 10px;
  }
}

.about__compit__quote img {
  width: 100%;
}

@media screen and (max-width: 991px) {
  .about__compit__quote img {
    width: 40%;
    flex: 0 0 auto;
  }
}

.about__compit__quote p {
  font-size: 30px;
  font-family: var(--sub-font);
  font-weight: 700;
  line-height: 1.3;
  max-width: 88%;
  margin-left: auto;
}

@media screen and (max-width: 991px) {
  .about__compit__quote p {
    font-size: 28px;
    max-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .about__compit__quote p {
    font-size: 20px;
  }
}

@media screen and (max-width: 575px) {
  .about__compit__quote p {
    font-size: 16px;
  }
}

/* ======================  About Section End  ======================*/
/* ======================  Contact Section Start  ======================*/
.contact__topbar {
  max-width: 85%;
}

@media screen and (max-width: 991px) {
  .contact__topbar {
    max-width: 70%;
    margin-inline: auto;
    text-align: center;
    margin-bottom: 24px;
  }
}

@media screen and (max-width: 767px) {
  .contact__topbar {
    max-width: 100%;
  }
}

.contact__topbar span {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 24px;
  color: hsl(var(--base));
}

@media screen and (max-width: 1199px) {
  .contact__topbar span {
    margin-bottom: 12px;
  }
}

@media screen and (max-width: 991px) {
  .contact__topbar span {
    font-size: 14px;
  }
}

.contact__form__btn button {
  padding: 16px 43px;
}

.contact__main {
  padding: 40px;
  padding-right: 140px;
  background-color: hsl(var(--base-two));
  margin-right: -100px;
}

@media screen and (max-width: 1199px) {
  .contact__main {
    padding: 30px;
    padding-right: 115px;
  }
}

@media screen and (max-width: 991px) {
  .contact__main {
    margin-right: 0;
    padding-right: 30px;
  }
}

@media screen and (max-width: 575px) {
  .contact__main {
    padding: 20px;
    padding-right: 20px;
  }
}

.contact__info span {
  display: block;
  color: hsl(var(--white) / 0.7);
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 16px;
}

@media screen and (max-width: 1199px) {
  .contact__info span {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 575px) {
  .contact__info span {
    font-size: 12px;
  }
}

.contact__info a {
  color: hsl(var(--white));
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 1199px) {
  .contact__info a {
    font-size: 18px;
  }
}

@media screen and (max-width: 575px) {
  .contact__info a {
    font-size: 16px;
  }
}

.contact__info a:hover {
  color: hsl(var(--base));
}

.contact__info p {
  color: hsl(var(--white));
  font-size: 20px;
  font-weight: 700;
}

@media screen and (max-width: 1199px) {
  .contact__info p {
    font-size: 18px;
  }
}

@media screen and (max-width: 575px) {
  .contact__info p {
    font-size: 16px;
  }
}

.contact__reservation {
  margin-top: 48px;
}

.contact__reserve__title {
  margin-bottom: 6px;
}

.contact__social .social__list {
  justify-content: center;
  margin-top: 30px;
  padding-left: 70px;
}

@media screen and (max-width: 991px) {
  .contact__social .social__list {
    padding-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .contact__social .social__list {
    margin-top: 20px;
  }
}

.contact__social .social__list li a {
  border: 1px solid hsl(var(--white) / 0.7);
  color: hsl(var(--white) / 0.7);
}

.contact__social .social__list li a:hover {
  background-color: hsl(var(--base));
  border-color: hsl(var(--white));
  color: hsl(var(--white));
}

.contact__map {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.contact__map iframe {
  width: 100%;
  height: 70%;
  filter: grayscale(1);
  transition: 0.3s;
}

@media screen and (max-width: 991px) {
  .contact__map iframe {
    height: 300px;
  }
}

.contact__map iframe:hover {
  filter: grayscale(0);
}

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

  .contact__form .g-4,
  .contact__form .gy-4 {
    --bs-gutter-y: 0.8rem;
  }

  .contact__form .g-4,
  .contact__form .gx-4 {
    --bs-gutter-x: 0.8rem;
  }
}

/* ======================  Contact Section End  ======================*/
/* ======================  Blog Section Start  ======================*/
.blog__card {
  padding: 8px;
  border: 1px solid hsl(var(--base));
  position: relative;
  z-index: 1;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .blog__card {
    max-width: 350px;
    margin-inline: auto;
  }
}

.blog__card:hover .blog__img a img {
  transform: scale(1.1) translateX(-10px);
  opacity: 0.6;
}

.blog__img {
  width: 100%;
  height: 280px;
  overflow: hidden;
}

@media screen and (max-width: 1399px) {
  .blog__img {
    height: 220px;
  }
}

.blog__img a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

.blog__img a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s;
  transform: scale(1.1) translateX(14px);
}

.blog__date {
  position: absolute;
  right: 18px;
  top: 18px;
  z-index: 2;
  background-color: hsl(var(--base));
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 8px 10px;
}

@media screen and (max-width: 1199px) {
  .blog__date {
    padding: 6px 8px;
  }
}

.blog__date span {
  font-size: 16px;
  font-weight: 400;
  color: hsl(var(--white));
  line-height: 1;
  margin-bottom: 6px;
}

@media screen and (max-width: 1199px) {
  .blog__date span {
    font-size: 14px;
  }
}

.blog__date h6 {
  margin-bottom: 0;
  font-size: 24px;
  font-weight: 500;
  color: hsl(var(--white));
}

@media screen and (max-width: 1199px) {
  .blog__date h6 {
    font-size: 22px;
  }
}

.blog__content {
  padding: 14px 12px 16px 12px;
}

.blog__content span {
  font-size: 14px;
  font-weight: 500;
  display: block;
  margin-bottom: 16px;
  color: hsl(var(--base));
}

@media screen and (max-width: 1199px) {
  .blog__content span {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 991px) {
  .blog__content span {
    font-size: 12px;
    margin-bottom: 10px;
  }
}

.blog__content h4 {
  font-size: 20px;
  margin-bottom: 12px;
}

.blog__content h4 a {
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.blog__content p {
  color: hsl(var(--border-color));
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ======================  Blog Section End  ======================*/
/* ======================  Blog Details Section Start  ======================*/
.breadcrumb__wrapper.blog__breadcrumb {
  max-width: 750px;
}

.blog__details__wrap {
  padding-bottom: 36px;
  border-bottom: 1px solid hsl(var(--border-color));
}

.blog__details__date span {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
}

.blog__details__date span i {
  color: hsl(var(--base));
  margin-top: -1px;
}

.blog__details__date {
  margin-bottom: 40px;
}

@media screen and (max-width: 1199px) {
  .blog__details__date {
    margin-bottom: 24px;
  }
}

.blog__details__desc p {
  margin-bottom: 24px;
  font-size: 20px;
}

@media screen and (max-width: 1199px) {
  .blog__details__desc p {
    font-size: 18px;
  }
}

@media screen and (max-width: 991px) {
  .blog__details__desc p {
    font-size: 16px;
  }
}

@media screen and (max-width: 575px) {
  .blog__details__desc p {
    font-size: 14px;
  }
}

.blog__details__desc p:last-child {
  margin-bottom: 0;
}

.blog__details__desc {
  margin-bottom: 60px;
}

@media screen and (max-width: 991px) {
  .blog__details__desc {
    margin-bottom: 40px;
  }
}

.blog__desc__social h4 {
  font-size: 16px;
  font-weight: 600;
}

@media screen and (max-width: 767px) {
  .blog__related__title {
    text-align: center;
  }
}

/* ======================  Blog Details Section End  ======================*/
/* ======================  Auth Section Start  ======================*/
.auth__area {
  position: relative;
  z-index: 1;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.auth__area::after {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: -2;
  content: "";
  background-image: radial-gradient(hsl(var(--black) / 0.32),
      hsl(var(--black)));
  opacity: 0.64;
}

@media screen and (max-width: 991px) {
  .auth__area::after {
    background-image: radial-gradient(hsl(var(--black) / 0.72),
        hsl(var(--black)));
    opacity: 0.8;
  }
}

.auth__bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: -3;
  object-fit: cover;
  user-select: none;
  pointer-events: none;
}

.auth__form {
  background-color: hsl(var(--base-two) / 0.75);
  border: 1px solid hsl(var(--white) / 0.08);
  padding: 30px 24px;
  max-width: 90%;
  backdrop-filter: blur(10px);
}

@media screen and (max-width: 1199px) {
  .auth__form {
    max-width: 100%;
  }
}

@media screen and (max-width: 575px) {
  .auth__form {
    padding: 30px 16px;
  }

  .auth__form .g-4,
  .auth__form .gy-4 {
    --bs-gutter-y: 0.8rem;
  }

  .auth__form .g-4,
  .auth__form .gx-4 {
    --bs-gutter-x: 0.8rem;
  }
}

.auth__title {
  text-align: center;
}

.auth__form__single label {
  color: hsl(var(--white));
}

.auth__form__single input {
  border-color: hsl(var(--white) / 0.5);
  color: hsl(var(--white));
  font-size: 16px;
  padding: 16px;
}

.auth__form__single input::placeholder {
  color: hsl(var(--white) / 0.7);
}

.auth__form__single input:focus {
  border-color: hsl(var(--white) / 0.7);
  color: hsl(var(--white));
}

.auth__form__single input[type="password"] {
  color: hsl(var(--white));
}

.auth__form__single input[type="password"]:focus {
  color: hsl(var(--white));
}

.auth__form__single input:-webkit-autofill,
.auth__form__single textarea:-webkit-autofill,
.auth__form__single select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px transparent inset;
  -webkit-text-fill-color: hsl(var(--white)) !important;
  caret-color: hsl(var(--white));
}

.auth__form__single .input-group {
  border-color: hsl(var(--white) / 0.5);
}

.auth__form__single .input-group .input-group-text {
  background-color: hsl(var(--white) / 0.3);
  color: hsl(var(--white));
}

.auth__form__single .select2-container .select2-selection--single .select2-selection__rendered {
  color: hsl(var(--white));
  font-size: 16px;
}

.auth__form__single .select2-container--default .select2-selection--single .select2-selection__arrow::after {
  color: hsl(var(--white));
}

.auth__form__single .select2-container--default .select2-selection--single {
  border-color: hsl(var(--white) / 0.5);
  padding: 17px 36px 15px 16px;
}

.auth__widgets {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.auth__widgets .form-check-label {
  color: hsl(var(--white));
}

.auth__widgets .form-check-input {
  border-color: hsl(var(--white) / 0.5);
}

.auth__widgets a {
  color: hsl(var(--white));
  font-weight: 600;
}

.auth__widgets a:hover {
  text-decoration: underline;
}

.auth__btn {
  margin-top: 24px;
}

@media screen and (max-width: 991px) {
  .auth__btn {
    margin-top: 4px;
  }
}

.auth__other {
  text-align: center;
  margin-top: 6px;
}

.auth__other p {
  color: hsl(var(--white));
  font-size: 20px;
  font-weight: 400;
}

@media screen and (max-width: 1199px) {
  .auth__other p {
    font-size: 16px;
  }
}

.auth__other p a {
  color: hsl(var(--white));
  font-weight: 700;
}

.auth__other p a:hover {
  text-decoration: underline;
}

.auth__content {
  text-align: center;
  max-width: 90%;
  margin-left: auto;
}

@media screen and (max-width: 991px) {
  .auth__content {
    max-width: 70%;
    margin-right: auto;
  }
}

@media screen and (max-width: 767px) {
  .auth__content {
    max-width: 100%;
  }
}

.auth__content a {
  display: block;
  margin-bottom: 48px;
}

@media screen and (max-width: 1199px) {
  .auth__content a {
    margin-bottom: 24px;
  }
}

@media screen and (max-width: 767px) {
  .auth__content a {
    margin-bottom: 14px;
  }
}

.auth__content a img {
  width: 100%;
  max-width: 240px;
  filter: brightness(0) invert(1);
}

@media screen and (max-width: 1199px) {
  .auth__content a img {
    max-width: 200px;
  }
}

@media screen and (max-width: 767px) {
  .auth__content a img {
    max-width: 160px;
  }
}

.auth__content h3 {
  margin-bottom: 24px;
}

@media screen and (max-width: 1199px) {
  .auth__content h3 {
    margin-bottom: 12px;
  }
}

.auth__content p {
  font-size: 20px;
}

@media screen and (max-width: 1199px) {
  .auth__content p {
    font-size: 16px;
  }
}

/* ======================  Auth Section End  ======================*/
/* ======================  Policy Section Start  ======================*/
.policy__area {
  position: relative;
  z-index: 1;
}

.policy__sp {
  position: absolute;
  right: 0;
  top: 2%;
  z-index: -1;
  user-select: none;
  pointer-events: none;
  max-width: 250px;
  width: 100%;
}

@media screen and (max-width: 991px) {
  .policy__sp {
    max-width: 200px;
  }
}

@media screen and (max-width: 767px) {
  .policy__sp {
    max-width: 140px;
  }
}

.policy__sp.sp-2 {
  right: auto;
  left: 0;
  top: 40%;
}

.policy__sp.sp-3 {
  top: auto;
  bottom: 2%;
}

/* ======================  Policy Section End  ======================*/
/* ======================  Error Section Start  ======================*/
.error__main {
  text-align: center;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.error__main img {
  max-width: 230px;
  width: 100%;
  margin-bottom: 30px;
}

.error__main h2 {
  margin-bottom: 5px;
  font-size: 80px;
  line-height: 1;
}

.error__main h3 {
  margin-bottom: 10px;
  font-size: 60px;
  line-height: 1;
}

.error__main h4 {
  font-size: 24px;
  margin-bottom: 24px;
}

.error__main p {
  font-size: 16px;
  max-width: 500px;
  margin-bottom: 30px;
}

.error__main a {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  padding: 13px 20px;
}

.error__main a i {
  font-size: 18px;
}

@media screen and (max-width: 991px) {
  .error__main img {
    max-width: 170px;
    margin-bottom: 15px;
  }

  .error__main h2 {
    margin-bottom: 10px;
    font-size: 50px;
  }

  .error__main h3 {
    margin-bottom: 10px;
    font-size: 30px;
  }

  .error__main h4 {
    font-size: 18px;
    margin-bottom: 18px;
  }

  .error__main p {
    font-size: 14px;
    max-width: 440px;
  }
}

/* ======================  Error Section End  ======================*/
/* ======================  Dashboard Section Start  ======================*/
.dh__logo {
  display: none;
}

@media screen and (max-width: 575px) {
  .dh__logo {
    display: block;
    width: 100%;
  }
}

.dh__logo a img {
  width: 100%;
  max-width: 120px;
}

.dashboard__wrap {
  padding-left: 286px;
}

@media screen and (max-width: 991px) {
  .dashboard__wrap {
    padding-left: 0;
  }
}

.dashboard__wrapper {
  padding: 36px;
  padding-left: 0;
}

@media screen and (max-width: 991px) {
  .dashboard__wrapper {
    padding: 24px;
    padding-bottom: 35px;
  }
}

@media screen and (max-width: 575px) {
  .dashboard__wrapper {
    padding: 16px;
    padding-bottom: 35px;
  }
}

.dashboard__sidebar {
  position: fixed;
  left: 0;
  top: 0;
  width: 250px;
  height: 100vh;
  z-index: 2;
  background-color: hsl(var(--base) / 0.06);
  overflow-y: auto;
  scrollbar-width: none;
}

@media screen and (max-width: 991px) {
  .dashboard__sidebar {
    background-color: hsl(var(--body-bg));
    left: -100%;
    z-index: 13;
    transition: 0.3s;
  }

  .dashboard__sidebar.active {
    left: 0;
  }
}

.dashboard__logo a {
  display: block;
  text-align: center;
}

.dashboard__logo a img {
  width: 100%;
  max-width: 160px;
}

.dashboard__logo {
  padding: 36px;
  padding-bottom: 60px;
}

@media screen and (max-width: 991px) {
  .dashboard__logo {
    padding: 24px;
    padding-bottom: 40px;
  }
}

.sidebar__close {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
  background-color: hsl(var(--danger));
  width: 30px;
  height: 30px;
  display: none;
  align-items: center;
  justify-content: center;
  color: hsl(var(--white));
  cursor: pointer;
  transition: 0.3s;
}

@media screen and (max-width: 991px) {
  .sidebar__close {
    display: flex;
  }
}

.sidebar__open {
  font-size: 24px;
  cursor: pointer;
  transition: 0.3s;
  display: none;
}

@media screen and (max-width: 991px) {
  .sidebar__open {
    display: block;
  }
}

.sidebar__open:hover {
  color: hsl(var(--base));
}

.dashboard__menu ul {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.dashboard__menu ul li a {
  display: flex;
  align-items: center;
  padding: 12px 32px;
  gap: 20px;
  font-size: 16px;
  font-weight: 600;
  color: hsl(var(--border-color));
}

.dashboard__menu ul li a i {
  font-size: 24px;
}

.dashboard__menu ul li a:hover,
.dashboard__menu ul li a.active {
  background-color: hsl(var(--base));
  color: hsl(var(--white));
}

.dashboard__header {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 36px;
  padding-right: 36px;
}

@media screen and (max-width: 991px) {
  .dashboard__header {
    padding: 24px;
  }
}

@media screen and (max-width: 575px) {
  .dashboard__header {
    padding: 16px;
    flex-direction: column-reverse;
    gap: 24px;
  }
}

.dashboard__header h2 {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
  .dashboard__header h2 {
    font-size: 20px;
  }
}

@media screen and (max-width: 575px) {
  .dashboard__header h2 {
    font-size: 18px;
  }
}

.dashboard__header__widgets {
  display: flex;
  align-items: center;
  gap: 32px;
}

@media screen and (max-width: 991px) {
  .dashboard__header__widgets {
    gap: 20px;
    align-items: flex-end;
  }
}

@media screen and (max-width: 575px) {
  .dashboard__header__widgets {
    width: 100%;
    justify-content: end;
  }
}

.notification__btn {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  margin-top: 6px;
}

.notification__btn:hover i {
  color: hsl(var(--base));
}

.notification__btn i {
  font-size: 32px;
  transition: 0.3s;
}

.notification__count {
  position: absolute;
  right: 0px;
  top: -6px;
  z-index: 2;
  background-color: hsl(var(--base));
  line-height: 1;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  color: hsl(var(--white));
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.profile__dropdown img {
  width: 44px;
  height: 44px;
  object-fit: cover;
  border-radius: 50%;
}

@media screen and (max-width: 991px) {
  .profile__dropdown img {
    width: 38px;
    height: 38px;
  }
}

.dash__dropdown {
  display: flex;
  align-items: center;
  gap: 10px;
}

.drop__arrow {
  font-size: 16px;
  line-height: 1;
}

.drop__arrow i {
  transition: 0.3s;
}

.dash__dropdown.show .drop__arrow i {
  transform: rotate(180deg);
}

.custom--dropdown {
  flex: 0 0 auto;
}

@media screen and (max-width: 991px) {
  .custom--dropdown {
    font-size: 14px;
  }
}

.custom--dropdown .dropdown__icon {
  font-size: 14px;
  transition: 0.2s;
}

@media screen and (max-width: 991px) {
  .custom--dropdown .dropdown__icon {
    font-size: 12px;
  }
}

.custom--dropdown button[aria-expanded="true"] .dropdown__icon {
  transform: rotate(180deg);
}

.custom--dropdown .dropdown-menu {
  padding: 6px;
  font-size: 14px;
  color: hsl(var(--body-color));
  background-color: hsl(var(--white));
  border: 1px solid hsl(var(--base) / 0.3);
  border-radius: 0;
  min-width: fit-content;
}

.custom--dropdown .dropdown-menu li:last-child .dropdown-item {
  margin-bottom: 0;
}

.custom--dropdown .dropdown-item {
  padding: 8px 12px;
  color: hsl(var(--body-color));
  background-color: hsl(var(--black) / 0.04);
  border: 1px solid hsl(var(--black) / 0.04);
  border-radius: 0;
  margin-bottom: 4px;
}

.custom--dropdown .dropdown-item:focus,
.custom--dropdown .dropdown-item.active,
.custom--dropdown .dropdown-item:hover {
  color: hsl(var(--white));
  background-color: hsl(var(--base));
}

.notification__wrap {
  width: 250px;
}

.notification__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  padding: 6px 0;
}

.notification__footer {
  padding: 6px 0;
}

.notification__header h4 {
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
}

.notification__body a {
  padding: 8px 12px;
  color: hsl(var(--body-color));
  background-color: hsl(var(--black) / 0.04);
  border: 1px solid hsl(var(--black) / 0.04);
  transition: 0.3s;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.notification__body a p {
  font-size: 14px;
  font-weight: 500;
  transition: 0.2s;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.notification__body a span {
  color: hsl(var(--border-color) / 0.8);
  font-size: 12px;
  margin-top: -4px;
  transition: 0.2s;
}

.notification__body a:hover {
  background-color: hsl(var(--base));
  color: hsl(var(--white));
}

.notification__body a:hover p {
  color: hsl(var(--white));
}

.notification__body a:hover span {
  color: hsl(var(--white) / 0.5);
}

.notification__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dashboard__card {
  background-color: hsl(var(--white));
  border: 1px solid transparent;
  padding: 16px 20px;
  position: relative;
  z-index: 1;
  transition: 0.3s;
}

.dashboard__card:hover {
  border-color: hsl(var(--base) / 0.5);
}

.dc__img {
  position: absolute;
  right: 0;
  top: 0;
  z-index: -2;
  user-select: none;
  pointer-events: none;
  max-width: 80px;
}

@media screen and (max-width: 1399px) {
  .dc__img {
    max-width: 60px;
  }
}

.dashboard__card h5 {
  margin-bottom: 12px;
}

.dashboard__card p {
  font-size: 32px;
  font-weight: 600;
  color: hsl(var(--base));
  line-height: 1;
}

.dashboard__topbar {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-bottom: 24px;
}

.dashboard__acco {
  position: relative;
  z-index: 1;
  transition: 0.3s;
}

.dashboard__acco:hover {
  opacity: 0.8;
  transform: translateY(-5px);
}

.dashboard__acco::after {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 50%;
  z-index: 1;
  content: "";
  background-image: linear-gradient(to top, hsl(var(--black)), transparent);
}

.dashboard__acco img {
  width: 100%;
}

.dashboard__acco__content {
  position: absolute;
  left: 20px;
  bottom: 20px;
  z-index: 2;
}

.dashboard__acco__content a {
  color: hsl(var(--white));
  font-size: 20px;
  font-weight: 600;
  display: block;
}

.dashboard__acco__content a:hover {
  color: hsl(var(--base));
}

.dashboard__acco__content p {
  color: hsl(var(--white) / 0.7);
  font-size: 14px;
}

.ds__plus {
  color: hsl(var(--base));
  font-size: 20px;
  font-weight: 700;
}

.ds__discount {
  text-decoration: line-through;
  color: hsl(var(--border-color));
}

/* ======================  Dashboard Section End  ======================*/
/* ======================  Profile Section Start  ======================*/
.profile__upload input {
  display: none;
}

.profile__upload label {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  overflow: hidden;
  cursor: pointer;
  position: relative;
  z-index: 1;
  margin-bottom: 6px;
}

.profile__upload label img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile__upload label i {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: hsl(var(--white));
  background-color: hsl(var(--black) / 0.5);
  transition: 0.3s;
  opacity: 0;
  visibility: hidden;
}

.profile__upload label:hover i {
  opacity: 1;
  visibility: visible;
}

.profile__wr {
  text-align: center;
  background-color: hsl(var(--base) / 0.02);
  border: 1px solid hsl(var(--base) / 0.2);
  padding: 16px;
  margin-bottom: 16px;
}

.profile__wr h4 {
  font-size: 20px;
  margin-bottom: 0;
}

.profile__menu ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.profile__contact p {
  display: flex;
  align-items: center;
  gap: 8px;
  color: hsl(var(--black) / 0.6);
  margin-bottom: 4px;
}

.profile__contact a {
  font-weight: 600;
  color: hsl(var(--heading-color));
  display: block;
}

.profile__contact span {
  font-weight: 600;
  color: hsl(var(--heading-color));
  display: block;
  max-width: 280px;
}

.profile__left ul {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@media screen and (max-width: 1199px) {
  .profile__left ul {
    flex-direction: row;
    justify-content: center;
    margin-top: 20px;
    flex-wrap: wrap;
  }

  .profile__left ul li {
    flex: 0 0 auto;
  }
}

@media screen and (max-width: 575px) {
  .profile__left ul li {
    flex: unset;
  }
}

.profile__contact a:hover {
  color: hsl(var(--base));
}

.two__factor__info {
  text-align: center;
  margin-bottom: 20px;
}

.two__factor__info p {
  font-size: 14px;
  margin-bottom: 14px;
}

.two__factor__info img {
  max-width: 200px;
  width: 100%;
}

@media screen and (max-width: 575px) {
  .profile__left.card.p-4 {
    padding: 18px !important;
  }

  .profile__wrap.card.p-4 {
    padding: 18px !important;
  }

  .profile__wrap .g-4,
  .profile__wrap .gy-4 {
    --bs-gutter-y: 0.8rem;
  }

  .profile__wrap .g-4,
  .profile__wrap .gx-4 {
    --bs-gutter-x: 0.8rem;
  }
}

/* ======================  Profile Section End  ======================*/

/*  ===========================start loader=========================== */
.fade-in {
  animation: fadeIn 0.6s ease-in-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#product-loader {
  position: absolute;
  left: 50%;
  top: 200px;
  font-size: 20px;
  transform: translateX(-50%);
  display: none;
}

.note--wrap {
  position: relative;
}

.spinner-border {
  color: hsl(var(--base)) !important;
}

.chat-bubble-user {
  background-color: hsl(var(--white));
  border: 1px solid #dee2e6;
  color: #000;
}

.chat-bubble {
  padding: 1rem;
  border-radius: 0;
  position: relative;
  word-break: break-word;
  font-size: 14px;
  min-width: 300px;
}

.avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-weight: bold;
  font-size: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-color: #6c757d;
  color: #fff;
}

.chat-bubble-admin {
  background-color: hsl(var(--base));
  color: #ffffff;
}

.datepicker--cell.-current- {
  color: hsl(var(--white));
  background: hsl(var(--base));
}

.booked-dot::after {
  content: "";
  width: 4px;
  height: 4px;
  background-color: hsl(var(--danger));
  border-radius: 50%;
  position: absolute;
  bottom: 4px;
  left: 50%;
  transform: translateX(-50%);
}

.booking-info ul {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.booking-days {
  color: hsl(var(--black) / 0.5);
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.booking-days i {
  font-size: 12px;
}

.book--wrap {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  flex-direction: unset;
}

.book--img {
  width: 310px;
  flex: 0 0 auto;
}

.book--img a {
  width: 100%;
  flex: 0 0 auto;
}

.book--img a img {
  width: 100%;
  flex: 0 0 auto;
}

@media screen and (max-width: 1399px) {
  .book--img {
    width: 230px;
  }
}

@media screen and (max-width: 575px) {
  .book--img {
    width: 100%;
  }

  .book--wrap {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    flex-direction: column;
  }
}

.cookies-card {
    position: fixed;
    bottom: 16px;
    width: 80%;
    padding: 20px;
    background: hsl(var(--white));
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    right: 16px;
    z-index: 99;
    border: 1px solid hsl(var(--base));
}

.sav__btn a {
    color: hsl(var(--base)) !important;
}

.sav__btn a:hover {
    text-decoration: underline;
}
/* ===========================end loader=========================== */