@charset "UTF-8";
html {
  scroll-behavior: smooth;
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.glass {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.homeContainer {
  width: 90%;
  margin: 0 auto;
  padding: 0 1rem;
}
@media (max-width: 768px) {
  .homeContainer {
    width: 100%;
    max-width: 100%;
    padding: 0 1rem;
  }
}

.whitespace-pre-line {
  white-space: pre-line;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-weight: 400;
  font-family: "Outfit", sans-serif;
  font-size: 14px;
}
@media (min-width: 992px) {
  * {
    font-size: 13px;
  }
}
@media (min-width: 1200px) {
  * {
    font-size: 15px;
  }
}
@media (min-width: 1350px) {
  * {
    font-size: 16px;
  }
}
@media (min-width: 1440px) {
  * {
    font-size: 17px;
  }
}
@media (min-width: 1600px) {
  * {
    font-size: 18px;
  }
}
@media (min-width: 1900px) {
  * {
    font-size: 20px;
  }
}

body {
  transition: 0.5s ease all;
  overflow-x: hidden;
}

.container-header {
  margin-right: auto;
  margin-left: auto;
  max-width: 87%;
}
@media (min-width: 992px) {
  .container-header {
    max-width: 87%;
  }
}

.container-ctn {
  max-width: 87%;
  width: 87%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) {
  .container-ctn {
    max-width: 87%;
  }
}
@media (min-width: 992px) {
  .container-ctn {
    max-width: 87%;
  }
}

ul {
  padding: 0;
  margin: 0;
}

button {
  border: unset;
}

a {
  text-decoration: none !important;
}
a:focus, a:active {
  outline: unset !important;
  box-shadow: unset !important;
}

.p-0 {
  padding: 0 !important;
}

.commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media (min-width: 992px) {
  .commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
@media (min-width: 1200px) {
  .commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
    padding-top: 74px;
    padding-bottom: 74px;
  }
}
@media (min-width: 1280px) {
  .commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
    padding-top: 78px;
    padding-bottom: 78px;
  }
}
@media (min-width: 1440px) {
  .commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
    padding-top: 82px;
    padding-bottom: 82px;
  }
}
@media (min-width: 1600px) {
  .commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
    padding-top: 86px;
    padding-bottom: 86px;
  }
}
@media (min-width: 1900px) {
  .commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}

.commonPadding-72 {
  padding-top: 30px;
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .commonPadding-72 {
    padding-top: 45px;
    padding-bottom: 45px;
  }
}
@media (min-width: 992px) {
  .commonPadding-72 {
    padding-top: 55px;
    padding-bottom: 55px;
  }
}
@media (min-width: 1200px) {
  .commonPadding-72 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media (min-width: 1350px) {
  .commonPadding-72 {
    padding-top: 62px;
    padding-bottom: 62px;
  }
}
@media (min-width: 1440px) {
  .commonPadding-72 {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}
@media (min-width: 1600px) {
  .commonPadding-72 {
    padding-top: 68px;
    padding-bottom: 68px;
  }
}
@media (min-width: 1900px) {
  .commonPadding-72 {
    padding-top: 72px;
    padding-bottom: 72px;
  }
}

.commonPadding-72-pb {
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .commonPadding-72-pb {
    padding-bottom: 45px;
  }
}
@media (min-width: 992px) {
  .commonPadding-72-pb {
    padding-bottom: 55px;
  }
}
@media (min-width: 1200px) {
  .commonPadding-72-pb {
    padding-bottom: 60px;
  }
}
@media (min-width: 1350px) {
  .commonPadding-72-pb {
    padding-bottom: 62px;
  }
}
@media (min-width: 1440px) {
  .commonPadding-72-pb {
    padding-bottom: 64px;
  }
}
@media (min-width: 1600px) {
  .commonPadding-72-pb {
    padding-bottom: 68px;
  }
}
@media (min-width: 1900px) {
  .commonPadding-72-pb {
    padding-bottom: 72px;
  }
}

.commonPadding-72-pt {
  padding-top: 30px;
}
@media (min-width: 768px) {
  .commonPadding-72-pt {
    padding-top: 45px;
  }
}
@media (min-width: 992px) {
  .commonPadding-72-pt {
    padding-top: 55px;
  }
}
@media (min-width: 1200px) {
  .commonPadding-72-pt {
    padding-top: 60px;
  }
}
@media (min-width: 1350px) {
  .commonPadding-72-pt {
    padding-top: 62px;
  }
}
@media (min-width: 1440px) {
  .commonPadding-72-pt {
    padding-top: 64px;
  }
}
@media (min-width: 1600px) {
  .commonPadding-72-pt {
    padding-top: 68px;
  }
}
@media (min-width: 1900px) {
  .commonPadding-72-pt {
    padding-top: 72px;
  }
}

.commonPadding-120, .policy {
  padding: 40px 0px;
}
@media (min-width: 768px) {
  .commonPadding-120, .policy {
    padding: 60px 0px;
  }
}
@media (min-width: 992px) {
  .commonPadding-120, .policy {
    padding: 70px 0px;
  }
}
@media (min-width: 1200px) {
  .commonPadding-120, .policy {
    padding: 90px 0px;
  }
}
@media (min-width: 1350px) {
  .commonPadding-120, .policy {
    padding: 95px 0px;
  }
}
@media (min-width: 1440px) {
  .commonPadding-120, .policy {
    padding: 100px 0px;
  }
}
@media (min-width: 1600px) {
  .commonPadding-120, .policy {
    padding: 110px 0px;
  }
}
@media (min-width: 1900px) {
  .commonPadding-120, .policy {
    padding: 120px 0px;
  }
}

.commonPadding-120-pb {
  padding-bottom: 40px;
}
@media (min-width: 768px) {
  .commonPadding-120-pb {
    padding-bottom: 60px;
  }
}
@media (min-width: 992px) {
  .commonPadding-120-pb {
    padding-bottom: 70px;
  }
}
@media (min-width: 1200px) {
  .commonPadding-120-pb {
    padding-bottom: 90px;
  }
}
@media (min-width: 1350px) {
  .commonPadding-120-pb {
    padding-bottom: 95px;
  }
}
@media (min-width: 1440px) {
  .commonPadding-120-pb {
    padding-bottom: 100px;
  }
}
@media (min-width: 1600px) {
  .commonPadding-120-pb {
    padding-bottom: 110px;
  }
}
@media (min-width: 1900px) {
  .commonPadding-120-pb {
    padding-bottom: 120px;
  }
}

.commonPadding-120-pt {
  padding-top: 40px;
}
@media (min-width: 768px) {
  .commonPadding-120-pt {
    padding-top: 60px;
  }
}
@media (min-width: 992px) {
  .commonPadding-120-pt {
    padding-top: 70px;
  }
}
@media (min-width: 1200px) {
  .commonPadding-120-pt {
    padding-top: 90px;
  }
}
@media (min-width: 1350px) {
  .commonPadding-120-pt {
    padding-top: 95px;
  }
}
@media (min-width: 1440px) {
  .commonPadding-120-pt {
    padding-top: 100px;
  }
}
@media (min-width: 1600px) {
  .commonPadding-120-pt {
    padding-top: 110px;
  }
}
@media (min-width: 1900px) {
  .commonPadding-120-pt {
    padding-top: 120px;
  }
}

.commonMargin-120 {
  margin: 40px auto !important;
}
@media (min-width: 768px) {
  .commonMargin-120 {
    margin: 60px auto !important;
  }
}
@media (min-width: 992px) {
  .commonMargin-120 {
    margin: 70px auto !important;
  }
}
@media (min-width: 1200px) {
  .commonMargin-120 {
    margin: 90px auto !important;
  }
}
@media (min-width: 1350px) {
  .commonMargin-120 {
    margin: 95px auto !important;
  }
}
@media (min-width: 1440px) {
  .commonMargin-120 {
    margin: 100px auto !important;
  }
}
@media (min-width: 1600px) {
  .commonMargin-120 {
    margin: 110px auto !important;
  }
}
@media (min-width: 1900px) {
  .commonMargin-120 {
    margin: 120px auto !important;
  }
}

.commonMargin-72-mb {
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .commonMargin-72-mb {
    margin-bottom: 45px;
  }
}
@media (min-width: 992px) {
  .commonMargin-72-mb {
    margin-bottom: 55px;
  }
}
@media (min-width: 1200px) {
  .commonMargin-72-mb {
    margin-bottom: 60px;
  }
}
@media (min-width: 1350px) {
  .commonMargin-72-mb {
    margin-bottom: 62px;
  }
}
@media (min-width: 1440px) {
  .commonMargin-72-mb {
    margin-bottom: 64px;
  }
}
@media (min-width: 1600px) {
  .commonMargin-72-mb {
    margin-bottom: 68px;
  }
}
@media (min-width: 1900px) {
  .commonMargin-72-mb {
    margin-bottom: 72px;
  }
}

.position, .btn-yellow-mini::after, .btn-yellow::after, .list ul li::before {
  content: "";
  position: absolute;
}

.wh-100 {
  width: 100%;
  height: 100%;
}

.slick-nav {
  cursor: pointer;
  width: 100%;
}
@media (min-width: 1900px) {
  .slick-nav {
    width: 100%;
  }
}
.slick-nav > div {
  position: relative;
  display: flex;
  align-items: center;
  transition: 0.5s ease all;
}

.jq-stars {
  display: inline-block;
}

.jq-rating-label {
  font-size: 22px;
  display: inline-block;
  position: relative;
  vertical-align: top;
  font-family: helvetica, arial, verdana;
}

.jq-star {
  cursor: pointer;
}

.jq-star-svg {
  width: 100%;
  height: 100% !important;
}

.jq-star-svg polygon {
  stroke-linejoin: round;
}

.tab-content > .tab-pane {
  display: block;
  height: 0;
  overflow: hidden;
}

.tab-content > .active {
  height: auto;
}

/* width */
::-webkit-scrollbar {
  width: 8px;
}

/* Track */
::-webkit-scrollbar-track {
  background-color: #fff;
  border-radius: 80px;
}

roll::-webkit-scrollbar-track {
  background-color: #fff;
  border-radius: 10px;
}

::-webkit-scrollbar-thumb {
  background-color: #FF6B35;
  border-radius: 10px;
  /* GAP using border and background clip */
  border: 2px solid transparent;
  background-clip: padding-box;
  margin: 10px 0;
  /* Adds top & bottom gap (optional) */
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-2 {
  margin-top: 20px !important;
}

.mt-3 {
  margin-top: 30px !important;
}

.mt-4 {
  margin-top: 40px !important;
}

.bg-unset {
  background: unset !important;
}

picture,
article {
  display: block;
}

.w-fit {
  width: fit-content !important;
}

.py-0 {
  padding: 0 !important;
}

li {
  list-style: none;
}

.list ul {
  margin-top: 18px;
}
.list ul li {
  position: relative;
  padding-left: clamp(28px, 2.1875vw, 42px);
}
.list ul li::before {
  background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M21.1006 12H3.10058" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M15.1006 18L21.1006 12L15.1006 6" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-color: #FF6B35;
  border-radius: 50%;
  background-position: center center;
  left: 0;
  top: 0px;
  width: 22px;
  height: 22px;
  background-size: 14px;
}
@media (min-width: 992px) {
  .list ul li::before {
    width: 30px;
    height: 30px;
    background-size: 18px;
  }
}
.list ul li + li {
  margin-top: clamp(13px, 1vw, 18px);
}
.list.listDark ul li::before {
  filter: invert(1);
}

span.error {
  border: 1px solid #FF4040 !important;
}

.error-message {
  color: #FF4040;
  display: none;
  font-size: 12px;
  position: absolute;
  bottom: -20px;
  left: 0;
  line-height: normal;
  z-index: 1;
  background: #fff;
  width: fit-content;
  padding: 0px 10px;
  border-radius: 5px;
  margin-bottom: 3px;
}

.iti {
  width: 100%;
}

.iti__flag-container {
  padding-left: 6px;
}

.iti--allow-dropdown input[type=tel] {
  padding-left: 71px;
}

.iti--allow-dropdown input[type=number] {
  padding-left: 71px;
}

.iti__country-list {
  z-index: 9;
}

.iti__arrow {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"><path d="M12.75 7.5L9 11.25L5.25 7.5" stroke="%23414A66" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right bottom;
  border: unset !important;
  transition: 0.5s ease all;
  margin-left: 10px;
}

.iti__arrow--up {
  transform: rotate(180deg);
  transition: 0.5s ease all;
}

.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
  background-color: unset;
}

.iti__selected-flag div:first-child {
  transform: scale(1.4);
}

.iti--allow-dropdown .iti__flag-container,
.iti--separate-dial-code .iti__flag-container {
  left: 5px;
}

textarea {
  resize: none;
}

input,
textarea,
select {
  outline: unset;
  border: unset;
}
input:focus, input:focus-visible, input:focus-within,
textarea:focus,
textarea:focus-visible,
textarea:focus-within,
select:focus,
select:focus-visible,
select:focus-within {
  outline: unset;
  border: unset;
}

select {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="12" viewBox="0 0 20 12" fill="none"> <path d="M19.513 0.438696C19.2317 0.157489 18.8502 -0.000484467 18.4525 -0.000484467C18.0547 -0.000484467 17.6733 0.157489 17.392 0.438696L9.96697 7.8637L2.54197 0.438696C2.25907 0.165459 1.88016 0.014267 1.48687 0.0176849C1.09357 0.021102 0.717352 0.178856 0.43924 0.456967C0.161127 0.73508 0.00337601 1.1113 -4.19617e-05 1.50459C-0.00345993 1.89789 0.147732 2.27679 0.420969 2.5597L8.90647 11.0452C9.18776 11.3264 9.56922 11.4844 9.96697 11.4844C10.3647 11.4844 10.7462 11.3264 11.0275 11.0452L19.513 2.5597C19.7942 2.2784 19.9521 1.89694 19.9521 1.4992C19.9521 1.10145 19.7942 0.719987 19.513 0.438696Z" fill="black"/> </svg>');
  border: unset;
  width: 100%;
  background-repeat: no-repeat;
  background-position: 95%;
  -moz-appearance: none;
  /* Firefox */
  -webkit-appearance: none;
  /* Safari and Chrome */
  appearance: none;
}
@media (max-width: 575px) {
  select {
    background-position: 96%;
    background-size: 14px;
  }
}
select:focus-visible {
  outline: unset;
}

@media (min-width: 992px) {
  .justify-content-lg-between {
    justify-content: space-between;
  }
}

.navbar-toggler {
  background: unset;
  border: unset;
  border-radius: unset;
  transition: transform 0.35s ease, stroke 0.35s ease;
}
.navbar-toggler path {
  transition: stroke 0.35s ease;
}
@media (max-width: 991px) {
  .navbar-toggler:hover path {
    path: #000;
  }
}
@media (min-width: 992px) {
  .navbar-toggler:hover path {
    stroke: #000;
  }
}

.navbar-toggler:focus {
  border: unset;
  outline: unset;
  box-shadow: unset;
}

input[type=date] {
  -webkit-appearance: none;
  -moz-appearance: none;
  text-align: left;
}

#fadeSection {
  opacity: 0;
  transition: opacity 1s ease-in-out;
  /* Smooth transition */
}

.visible {
  opacity: 1 !important;
  transition: opacity 1s ease-in-out;
}

.formGroup {
  position: relative;
}

input.error,
textarea.error {
  border: 1px solid #FF4040 !important;
}

/* Hide number input spinner */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

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

.hidden {
  display: none;
}

.show {
  display: inline-block;
}

.visibility-hidden {
  visibility: hidden;
}

.dropdown-menu {
  width: 100%;
  margin: auto !important;
  background: unset;
}
.dropdown-menu button {
  color: #fff;
}

.dropdown-item.active {
  background: unset !important;
}
.dropdown-item.active:hover {
  color: #0A1119 !important;
}

.dropdown-item:hover {
  background: #fff !important;
}

.dropDown {
  margin-bottom: 24px;
}
.dropDown button {
  color: #fff;
  font-weight: 400;
  width: 100%;
  font-size: 16px;
  line-height: 24px;
  text-align: left;
  position: relative;
  padding: 8px 20px 8px 20px;
  white-space: pre-line;
}
.dropDown button::after {
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  border: unset;
  width: 16px;
  height: 16px;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M13.0889 6.19526C13.3493 6.45561 13.3493 6.87772 13.0889 7.13807L8.4468 11.7802C8.32178 11.9052 8.15221 11.9754 7.9754 11.9754C7.79859 11.9754 7.62902 11.9052 7.50399 11.7802L2.86188 7.13807C2.60153 6.87772 2.60153 6.45561 2.86188 6.19526C3.12223 5.93491 3.54434 5.93491 3.80469 6.19526L7.9754 10.366L12.1461 6.19526C12.4065 5.93491 12.8286 5.93491 13.0889 6.19526Z" fill="%23ffff"/></svg>');
}
.dropDown {
  border-radius: 8px;
  background: #FF6B35;
  font-size: 16px;
  line-height: 24px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  border-radius: 8px;
}

.select2-container--default .select2-results > .select2-results__options {
  padding: 8px;
  background-color: #2f353f;
}
.select2-container--default .select2-results > .select2-results__options::-webkit-scrollbar-track {
  background-color: #2f353f;
}
.select2-container--default .select2-results > .select2-results__options::-webkit-scrollbar-thumb {
  background: #979A9C;
}

.select2-dropdown {
  background-color: transparent;
}

.select2-results__option {
  padding: 4px 12px;
  line-height: 150%;
  margin-bottom: 4px;
}

.slick-track {
  margin-left: 0;
}

.fancybox-navigation .fancybox-button div {
  background: rgb(255, 255, 255);
}

.fancybox-container {
  z-index: 100000000000000000;
}

.fancybox-button {
  background: rgb(255, 255, 255);
}

.slick-nav {
  z-index: 0;
}
.slick-nav div svg {
  height: auto;
}
.slick-nav div svg:hover path {
  fill: #FF6B35;
}

.modal-backdrop.show {
  opacity: 1;
  background: rgb(25, 33, 60) !important;
  opacity: 0.53;
}

.mobile-menu {
  padding-bottom: 11px;
  display: flex;
  justify-content: flex-end;
  align-items: end;
}
.mobile-menu button {
  margin: 0;
  padding: 6px 19px;
  border: 1px solid #d6dffa;
  border-radius: 8px;
  color: rgba(46, 49, 146, 0.6588235294);
}

.btn-pay-online,
.btn-connect-mbs {
  color: #313030;
  border-radius: 80px;
  font-weight: 500;
  border: 1px solid #4F5762;
}

.btn-yellow {
  display: flex;
  align-items: center;
  border-radius: 80px;
  background: #FF6B35;
  color: #000;
  position: relative;
  width: fit-content;
  line-height: 100%;
  padding: 10px 38px 10px 11px;
}
@media (min-width: 768px) {
  .btn-yellow {
    padding: 11px 60px 11px 17px;
  }
}
@media (min-width: 992px) {
  .btn-yellow {
    padding: 14px 70px 14px 18px;
  }
}
@media (min-width: 1200px) {
  .btn-yellow {
    padding: 15px 75px 15px 33px;
  }
}
@media (min-width: 1350px) {
  .btn-yellow {
    padding: 16px 80px 16px 34px;
  }
}
@media (min-width: 1440px) {
  .btn-yellow {
    padding: 17px 90px 17px 35px;
  }
}
@media (min-width: 1600px) {
  .btn-yellow {
    padding: 18px 100px 18px 36px;
  }
}
@media (min-width: 1900px) {
  .btn-yellow {
    padding: 19px 109px 19px 37px;
  }
}
.btn-yellow::after {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="64" height="24" viewBox="0 0 64 24" fill="none"><path d="M61 12L3 12M61 12L55 18M61 12L55 6" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  width: 100%;
  height: 100%;
  top: 50%;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: right;
  right: 10px;
  background-size: 24px;
}
@media (min-width: 768px) {
  .btn-yellow::after {
    background-size: 40px;
    right: 15px;
  }
}
@media (min-width: 992px) {
  .btn-yellow::after {
    background-size: 42px;
    right: 20px;
  }
}
@media (min-width: 1200px) {
  .btn-yellow::after {
    background-size: 45px;
    right: 24px;
  }
}
@media (min-width: 1350px) {
  .btn-yellow::after {
    background-size: 50px;
    right: 21px;
  }
}
@media (min-width: 1440px) {
  .btn-yellow::after {
    background-size: 54px;
    right: 28px;
  }
}
@media (min-width: 1600px) {
  .btn-yellow::after {
    background-size: 61px;
    right: 32px;
  }
}
@media (min-width: 1900px) {
  .btn-yellow::after {
    background-size: 64px;
    right: 37px;
  }
}
.btn-yellow:hover {
  background: #0A1119;
  color: #fff;
}
.btn-yellow:hover::after {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="64" height="24" viewBox="0 0 64 24" fill="none"><path d="M61 12L3 12M61 12L55 18M61 12L55 6" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: right;
  right: 10px;
  background-size: 24px;
}
@media (min-width: 768px) {
  .btn-yellow:hover::after {
    background-size: 40px;
    right: 15px;
  }
}
@media (min-width: 992px) {
  .btn-yellow:hover::after {
    background-size: 42px;
    right: 20px;
  }
}
@media (min-width: 1200px) {
  .btn-yellow:hover::after {
    background-size: 45px;
    right: 24px;
  }
}
@media (min-width: 1350px) {
  .btn-yellow:hover::after {
    background-size: 50px;
    right: 21px;
  }
}
@media (min-width: 1440px) {
  .btn-yellow:hover::after {
    background-size: 54px;
    right: 28px;
  }
}
@media (min-width: 1600px) {
  .btn-yellow:hover::after {
    background-size: 61px;
    right: 32px;
  }
}
@media (min-width: 1900px) {
  .btn-yellow:hover::after {
    background-size: 64px;
    right: 37px;
  }
}

.btn-yellow-mini {
  display: flex;
  align-items: center;
  border-radius: 80px;
  background: #FF6B35;
  color: #000;
  position: relative;
  width: fit-content;
  line-height: 125%;
  padding: 7.5px 48px 7.5px 15px;
}
@media (min-width: 768px) {
  .btn-yellow-mini {
    padding: 8px 90px 8px 22px;
  }
}
@media (min-width: 992px) {
  .btn-yellow-mini {
    padding: 8.5px 92px 8.5px 24px;
  }
}
@media (min-width: 1200px) {
  .btn-yellow-mini {
    padding: 9px 94px 9px 26px;
  }
}
@media (min-width: 1350px) {
  .btn-yellow-mini {
    padding: 9.5px 96px 9.5px 27px;
  }
}
@media (min-width: 1440px) {
  .btn-yellow-mini {
    padding: 10px 98px 10px 28px;
  }
}
@media (min-width: 1600px) {
  .btn-yellow-mini {
    padding: 10.5px 100px 10.5px 29px;
  }
}
@media (min-width: 1900px) {
  .btn-yellow-mini {
    padding: 11px 102px 11px 30px;
  }
}
.btn-yellow-mini::after {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="64" height="24" viewBox="0 0 64 24" fill="none"><path d="M61 12L3 12M61 12L55 18M61 12L55 6" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  width: 100%;
  height: 100%;
  top: 50%;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: right;
  right: 10px;
  background-size: 28px;
}
@media (min-width: 768px) {
  .btn-yellow-mini::after {
    background-size: 40px;
    right: 15px;
  }
}
@media (min-width: 992px) {
  .btn-yellow-mini::after {
    background-size: 42px;
    right: 18px;
  }
}
@media (min-width: 1200px) {
  .btn-yellow-mini::after {
    background-size: 45px;
    right: 20px;
  }
}
@media (min-width: 1350px) {
  .btn-yellow-mini::after {
    background-size: 50px;
    right: 22px;
  }
}
@media (min-width: 1440px) {
  .btn-yellow-mini::after {
    background-size: 54px;
    right: 24px;
  }
}
@media (min-width: 1600px) {
  .btn-yellow-mini::after {
    background-size: 61px;
    right: 26px;
  }
}
@media (min-width: 1900px) {
  .btn-yellow-mini::after {
    background-size: 64px;
    right: 28px;
  }
}
.btn-yellow-mini:hover {
  background: #0A1119;
  color: #fff;
}
.btn-yellow-mini:hover::after {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="64" height="24" viewBox="0 0 64 24" fill="none"><path d="M61 12L3 12M61 12L55 18M61 12L55 6" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: right;
  right: 10px;
  background-size: 24px;
}
@media (min-width: 768px) {
  .btn-yellow-mini:hover::after {
    background-size: 40px;
    right: 15px;
  }
}
@media (min-width: 992px) {
  .btn-yellow-mini:hover::after {
    background-size: 42px;
    right: 20px;
  }
}
@media (min-width: 1200px) {
  .btn-yellow-mini:hover::after {
    background-size: 45px;
    right: 24px;
  }
}
@media (min-width: 1350px) {
  .btn-yellow-mini:hover::after {
    background-size: 50px;
    right: 21px;
  }
}
@media (min-width: 1440px) {
  .btn-yellow-mini:hover::after {
    background-size: 54px;
    right: 28px;
  }
}
@media (min-width: 1600px) {
  .btn-yellow-mini:hover::after {
    background-size: 61px;
    right: 32px;
  }
}
@media (min-width: 1900px) {
  .btn-yellow-mini:hover::after {
    background-size: 64px;
    right: 37px;
  }
}

.btn-connect-mbs {
  display: flex;
  align-items: center;
  padding: 3.5px 4.2px 3.5px 7px;
  gap: 6px;
}
@media (min-width: 768px) {
  .btn-connect-mbs {
    padding: 3px 3.6px 3px 12px;
    gap: 8px;
  }
}
@media (min-width: 1350px) {
  .btn-connect-mbs {
    padding: 2.8px 3.8px 2.8px 14px;
    gap: 8px;
  }
}
@media (min-width: 1440px) {
  .btn-connect-mbs {
    padding: 3px 4px 3px 15px;
    gap: 8px;
  }
}
@media (min-width: 1600px) {
  .btn-connect-mbs {
    padding: 4.37px 6.5px 4.47px 19px;
    gap: 10px;
  }
}
@media (min-width: 1900px) {
  .btn-connect-mbs {
    padding: 4.67px 7px 4.67px 20px;
    gap: 11px;
  }
}
.btn-connect-mbs img {
  height: auto;
  width: 28px;
}
@media (min-width: 576px) {
  .btn-connect-mbs img {
    width: 30px;
  }
}
@media (min-width: 768px) {
  .btn-connect-mbs img {
    width: 32px;
  }
}
@media (min-width: 992px) {
  .btn-connect-mbs img {
    width: 34px;
  }
}
@media (min-width: 1200px) {
  .btn-connect-mbs img {
    width: 32px;
  }
}
@media (min-width: 1350px) {
  .btn-connect-mbs img {
    width: 38px;
  }
}
@media (min-width: 1440px) {
  .btn-connect-mbs img {
    width: 40px;
  }
}
@media (min-width: 1600px) {
  .btn-connect-mbs img {
    width: 48px;
  }
}
@media (min-width: 1900px) {
  .btn-connect-mbs img {
    width: 50px;
  }
}
.btn-connect-mbs:hover {
  background: #2E3192;
  border-color: #2E3192;
  color: #fff;
}
.btn-connect-mbs:hover img {
  border-radius: 50%;
  background: #fff;
  animation: spin 4s linear infinite;
}

.btn-pay-online {
  background: #FF6B35;
  padding: 8px;
}
@media (min-width: 768px) {
  .btn-pay-online {
    padding: 8px 11px;
  }
}
@media (min-width: 1350px) {
  .btn-pay-online {
    padding: 9px 12px;
  }
}
@media (min-width: 1440px) {
  .btn-pay-online {
    padding: 10px 14px;
  }
}
@media (min-width: 1600px) {
  .btn-pay-online {
    padding: 12px 19px;
  }
}
@media (min-width: 1900px) {
  .btn-pay-online {
    padding: 12.5px 20px;
  }
}
.btn-pay-online:hover {
  background: #0A1119;
  color: #fff;
}

.btn-mail {
  border-radius: 80px;
  background-color: #F8CCCD;
  display: flex;
  align-items: center;
  padding: 8px 15px;
  gap: 6px;
}
@media (max-width: 767px) {
  .btn-mail {
    display: none;
  }
}
@media (min-width: 768px) {
  .btn-mail {
    padding: 9px 17px;
    gap: 4px;
  }
}
@media (min-width: 1350px) {
  .btn-mail {
    padding: 8px 18px;
    gap: 5px;
  }
}
@media (min-width: 1440px) {
  .btn-mail {
    padding: 9px 20px;
    gap: 6px;
  }
}
@media (min-width: 1600px) {
  .btn-mail {
    padding: 12px 22px;
    gap: 7px;
  }
}
@media (min-width: 1900px) {
  .btn-mail {
    padding: 13px 28px;
    gap: 8px;
  }
}
.btn-mail svg {
  height: auto;
  width: 15px;
}
@media (min-width: 768px) {
  .btn-mail svg {
    width: 16px;
  }
}
@media (min-width: 1350px) {
  .btn-mail svg {
    width: 17px;
  }
}
@media (min-width: 1440px) {
  .btn-mail svg {
    width: 18px;
  }
}
@media (min-width: 1600px) {
  .btn-mail svg {
    width: 23px;
  }
}
@media (min-width: 1900px) {
  .btn-mail svg {
    width: 24px;
  }
}
.btn-mail span {
  color: #DE4D50;
}
.btn-mail:hover {
  background: #DE4D50;
  color: #fff;
}
.btn-mail:hover span {
  color: #ebebeb;
}
.btn-mail:hover path {
  stroke: #ebebeb;
}

.fancybox-button svg {
  filter: invert(1);
}

.head {
  width: 95.003%;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .head {
    width: 80.003%;
  }
}
@media (min-width: 1200px) {
  .head {
    width: 69.003%;
  }
}
.head p {
  color: #4B535D;
  line-height: 160%;
}

.text-wrap h2 {
  white-space: pre-line;
}

.who-we-are .slick-dots,
.banner .slick-dots {
  gap: clamp(6px, 0.62vw, 12px);
}
.who-we-are .slick-dots li,
.banner .slick-dots li {
  border-radius: 50%;
  border: 1px solid #F5F5F5;
  padding: clamp(6px, 0.78vw, 15px);
}
.who-we-are .slick-dots li.slick-active,
.banner .slick-dots li.slick-active {
  border-color: #FF6B35;
}
.who-we-are .slick-dots li.slick-active button,
.banner .slick-dots li.slick-active button {
  background: #FF6B35;
}
.who-we-are .slick-dots button,
.banner .slick-dots button {
  border-radius: 50%;
  font-size: 0;
  background: #00A0E3;
  width: clamp(12px, 1.563vw, 30px);
  height: clamp(12px, 1.563vw, 30px);
}

.icon-box {
  width: fit-content;
  border-radius: 10px;
  border: 1px solid #CECECE;
  background: #FFF;
  gap: 12px;
  margin-bottom: clamp(18px, 1.87499vw, 36px);
  padding: clamp(10px, 1vw, 18px);
}
.icon-box p {
  margin: 0 !important;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10000;
  transition: all 0.3s ease;
  background-color: #fff;
  border-bottom: 1px solid #f1f5f9;
}
@media (max-width: 768px) {
  body.is-home.mobile-search-sticky header {
    opacity: 0;
    z-index: -1;
    transition: opacity 0.4s ease-in-out;
  }
}
header.scrolled {
  background-color: rgba(255, 255, 255, 0.7);
  box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.05);
}
header.scrolled .headerInner {
  padding: 0.5rem 0;
}
header .headerInner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.75rem 0;
  transition: padding 0.3s ease;
}
@media (min-width: 1024px) {
  header .headerInner {
    padding: 1rem 0;
  }
}
header .brand {
  display: flex;
  align-items: center;
  text-decoration: none;
  flex-shrink: 0;
  width: 180px;
}
@media (max-width: 575px) {
  header .brand {
    width: 125px;
  }
}
header .brand img {
  width: 100%;
  height: 54px;
}
@media (max-width: 575px) {
  header .brand img {
    height: 32px;
  }
}
header nav {
  flex: 1;
  display: flex;
  justify-content: center;
}
@media (max-width: 1023px) {
  header nav {
    display: none;
  }
}
header nav .mainNav {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 1280px) {
  header nav .mainNav {
    gap: 2.25rem;
  }
}
header nav .mainNav li {
  position: relative;
}
header nav .mainNav li .navLink {
  font-size: 0.875rem;
  font-weight: 600;
  color: #475569;
  text-decoration: none;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  padding: 0.5rem 0;
}
header nav .mainNav li .navLink:hover {
  color: #FF6B35;
}
header nav .mainNav li.hasDropdown:hover > .dropdownMenu.firstLevel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
header nav .dropdownMenu {
  position: absolute;
  background-color: #fff;
  min-width: 240px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
  border: 1px solid #f1f5f9;
  border-radius: 12px;
  list-style: none;
  padding: 0.75rem 0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 100;
}
header nav .dropdownMenu.firstLevel {
  top: 100%;
  left: 0;
  transform: translateY(10px);
}
header nav .dropdownMenu.secondLevel {
  top: 0;
  left: 100%;
  margin-left: 5px;
  transform: translateX(10px);
}
header nav .dropdownMenu li {
  width: 100%;
}
header nav .dropdownMenu li a {
  display: flex;
  align-items: center;
  padding: 0.625rem 1.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #1e293b;
  transition: all 0.2s;
  text-decoration: none;
}
header nav .dropdownMenu li a:hover {
  background-color: #f8fafc;
  color: #FF6B35;
  padding-left: 1.5rem;
}
header nav .dropdownMenu li.hasSubDropdown:hover > .dropdownMenu.secondLevel {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}
header nav .dropdownMenu {
  /* For long lists */
}
header nav .dropdownMenu.firstLevel {
  max-height: 500px;
  overflow-y: auto;
}
header nav .dropdownMenu.firstLevel::-webkit-scrollbar {
  width: 4px;
}
header nav .dropdownMenu.firstLevel::-webkit-scrollbar-thumb {
  background: #e2e8f0;
  border-radius: 2px;
}
header .button-wrapper {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
@media (max-width: 1023px) {
  header .button-wrapper {
    display: none;
  }
}
header .button-wrapper .enquire-link {
  padding: 0.625rem 1.5rem;
  background: #FF6B35;
  color: #fff;
  font-weight: 700;
  border-radius: 9999px;
  font-size: 0.875rem;
  text-decoration: none;
  transition: all 0.3s;
  white-space: nowrap;
}
header .button-wrapper .enquire-link:hover {
  filter: brightness(1.1);
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(255, 107, 53, 0.4);
}
header .button-wrapper .login-link {
  padding: 0.625rem 1.5rem;
  background-color: #fff;
  color: #1e293b;
  font-weight: 600;
  border-radius: 9999px;
  font-size: 0.875rem;
  text-decoration: none;
  border: 1px solid #e2e8f0;
  transition: all 0.3s;
  white-space: nowrap;
}
header .button-wrapper .login-link:hover {
  border-color: #94a3b8;
  background-color: #f8fafc;
}
header .button-wrapper .profileWrapper {
  position: relative;
  display: flex;
  align-items: center;
}
header .button-wrapper .profileWrapper .profileBtn {
  background: none;
  border: 1px solid #e2e8f0;
  padding: 0.4rem;
  color: #1e293b;
  cursor: pointer;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}
header .button-wrapper .profileWrapper .profileBtn:hover {
  background-color: #f1f5f9;
  border-color: #cbd5e1;
}
header .button-wrapper .profileWrapper .profileDropdown {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 10px;
  background: #ffffff;
  border-radius: 1.25rem;
  box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.15);
  min-width: 260px;
  padding: 1.25rem 0;
  z-index: 1000;
  border: 1px solid #e2e8f0;
  animation: fadeInDown 0.2s ease-out forwards;
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem {
  padding: 0 1rem;
}
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem a,
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem .logoutBtn {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  padding: 0.875rem 1rem;
  font-size: 1.05rem;
  font-weight: 500;
  color: #0f172a;
  text-decoration: none;
  background: transparent;
  border: none;
  border-radius: 0.75rem;
  cursor: pointer;
  transition: background-color 0.2s;
  text-align: left;
}
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem a:hover,
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem .logoutBtn:hover {
  background-color: #f8fafc;
}
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem a svg,
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem .logoutBtn svg {
  color: #1e293b;
}
header .button-wrapper .profileWrapper .profileDropdown .dropdownItem .logoutBtn {
  font-weight: 600;
}
header .button-wrapper .profileWrapper .profileDropdown .dropdownDivider {
  height: 1px;
  background-color: #f1f5f9;
  margin: 1rem 1.5rem;
}
header .button-wrapper .modernHamburger {
  display: flex;
  margin-left: 0.5rem;
}

.sideMenu {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  width: 20rem;
  background-color: #fff;
  z-index: 1200;
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.1);
  transform: translateX(100%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.sideMenu.open {
  transform: translateX(0);
}
.sideMenu .sideMenuContent {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow-y: auto;
}
.sideMenu .sideMenuContent .sideMenuHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
  flex-shrink: 0;
}
.sideMenu .sideMenuContent .sideMenuNav {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem {
  display: flex;
  flex-direction: column;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileItemHeader {
  border-bottom: 1px solid #f1f5f9;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileItemHeader .mobileLink,
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileItemHeader a {
  font-size: 1.125rem;
  font-weight: 700;
  color: #1e293b;
  text-decoration: none;
  padding: 0.625rem 0;
  transition: all 0.2s;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileItemHeader .mobileLink:hover,
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileItemHeader a:hover {
  color: #FF6B35;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileItemHeader button {
  background: none;
  border: none;
  color: #94a3b8;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileItemHeader button:hover {
  color: #FF6B35;
  background: rgba(255, 107, 53, 0.05);
  border-radius: 8px;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu {
  padding: 0.25rem 0 0.5rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  border-left: 2px solid #f1f5f9;
  margin-top: 0.25rem;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem {
  display: flex;
  flex-direction: column;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileSubHeader .mobileSubLink,
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileSubHeader a {
  font-size: 0.95rem;
  font-weight: 600;
  color: #475569;
  text-decoration: none;
  padding: 0.5rem 0;
  transition: all 0.2s;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileSubHeader .mobileSubLink:hover,
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileSubHeader a:hover {
  color: #FF6B35;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileSubHeader button {
  background: none;
  border: none;
  color: #94a3b8;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileSubHeader button:hover {
  color: #FF6B35;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileLeafMenu {
  padding: 0.25rem 0 0.5rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.sideMenu .sideMenuContent .sideMenuNav .mobileMenuItem .mobileSubMenu .mobileSubItem .mobileLeafMenu a {
  font-size: 0.875rem;
  font-weight: 500;
  color: #64748b;
  text-decoration: none;
  padding: 0.3rem 0;
}
.sideMenu .sideMenuContent .sideMenuActions {
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  flex-shrink: 0;
}
.sideMenu .sideMenuContent .sideMenuActions .enquireBtn,
.sideMenu .sideMenuContent .sideMenuActions .loginBtn {
  padding: 0.75rem;
  text-align: center;
  border-radius: 12px;
  font-weight: 700;
  text-decoration: none;
}
.sideMenu .sideMenuContent .sideMenuActions .enquireBtn {
  background: #FF6B35;
  color: #fff;
}
.sideMenu .sideMenuContent .sideMenuActions .loginBtn {
  border: 1px solid #e2e8f0;
  color: #1e293b;
}

.mobileBottomNavWrapper {
  display: none;
}
@media (max-width: 1023px) {
  .mobileBottomNavWrapper {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
  }
  .mobileBottomNavWrapper.mmt-final-style {
    background: #ffffff;
    height: 70px;
    border-top: 1px solid #eeeeee;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.06);
    padding: 0 5px;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav {
    background: transparent;
    border: none;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    height: 100%;
    width: 100%;
    margin: 0;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navContainer {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    width: 100%;
    height: 100%;
    padding: 0;
    position: relative;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navItem {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: color 0.3s ease;
    color: #777777;
    gap: 3px;
    padding-bottom: 4px;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navItem .iconWrapper {
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navItem .iconWrapper svg {
    width: 24px;
    height: 24px;
    stroke-width: 2.2px;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navItem .navLabel {
    font-size: 10px;
    font-weight: 500;
    letter-spacing: -0.1px;
    transition: all 0.3s ease;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navItem.active {
    color: #FF6B35;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navItem.active .iconWrapper {
    color: #FF6B35;
    transform: scale(1.1);
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .navItem.active .navLabel {
    font-weight: 700;
    color: #FF6B35;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .centralNavItemWrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    height: 100%;
    padding-bottom: 8px;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .centralNavItemWrapper .centralNavItem {
    position: absolute;
    top: -38px;
    left: 50%;
    transform: translateX(-50%);
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid #ffffff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s active;
    text-decoration: none;
    overflow: hidden;
    z-index: 10;
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .centralNavItemWrapper .centralNavItem:active {
    transform: scale(0.92);
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .centralNavItemWrapper .centralNavItem .centralAnimatedIcon {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: hue-rotate(180deg) saturate(2.5) contrast(1.1);
  }
  .mobileBottomNavWrapper.mmt-final-style .mobileBottomNav .centralNavItemWrapper .centralLabel {
    color: #FF6B35;
    font-weight: 700;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: auto;
    white-space: nowrap;
  }
  @keyframes slideDownIndicator {
    from {
      height: 0;
      opacity: 0;
      transform: translateX(-50%) translateY(-5px);
    }
    to {
      height: 3.5px;
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }
  }
  @keyframes pulseMic {
    0%, 100% {
      transform: scale(1);
      opacity: 0.3;
    }
    50% {
      transform: scale(1.2);
      opacity: 0.6;
    }
  }
}

@media (max-width: 1023px) {
  body {
    padding-bottom: 80px !important;
  }
}
.mobileMenuToggle {
  z-index: 1;
}

.modernHamburger {
  width: 48px;
  height: 48px;
  background-color: #106bb1;
  border-radius: 50%;
  padding: 0px;
  border: none;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  transition: all 0.3s ease;
  box-shadow: none;
}
.modernHamburger img {
  border-radius: 50%;
}
@media (max-width: 575px) {
  .modernHamburger img {
    height: 32px;
  }
}
.modernHamburger:hover {
  transform: scale(1.05);
}
.modernHamburger .line {
  display: block;
  height: 2px;
  background-color: #FF6B35;
  border-radius: 4px;
  transition: all 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6);
  transform-origin: center;
}
.modernHamburger .line-1 {
  width: 18px;
  transform: translateY(0);
}
.modernHamburger .line-2 {
  width: 14px;
  opacity: 1;
  transform: translateX(-2px);
}
.modernHamburger .line-3 {
  width: 18px;
  transform: translateY(0);
}
.modernHamburger.active {
  gap: 0;
  background-color: #FF6B35;
  box-shadow: 0 4px 12px rgba(255, 107, 53, 0.3);
}
.modernHamburger.active .line {
  background-color: #fff;
  width: 18px;
}
.modernHamburger.active .line-1 {
  transform: translateY(2px) rotate(45deg);
}
.modernHamburger.active .line-2 {
  opacity: 0;
  transform: translateX(10px);
}
.modernHamburger.active .line-3 {
  transform: translateY(-2px) rotate(-45deg);
}

.sideMenuBackdrop {
  position: fixed;
  inset: 0;
  background-color: rgba(15, 23, 42, 0.4);
  backdrop-filter: blur(8px);
  z-index: 1100;
}

.closeBtn {
  padding: 0.5rem;
  border: 1px solid #f1f5f9;
  border-radius: 9999px;
  background: transparent;
  cursor: pointer;
  display: flex;
  color: #64748b;
  transition: all 0.2s;
}
.closeBtn:hover {
  background-color: #f1f5f9;
  color: #1e293b;
}

.floating-whatsapp {
  position: fixed;
  bottom: 74px;
  right: 0;
  z-index: 1000;
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  animation: floatPulse 2s infinite;
}
@keyframes floatPulse {
  0% {
    transform: scale(1);
    filter: drop-shadow(0 0 0 rgba(29, 170, 97, 0));
  }
  70% {
    transform: scale(1.05);
    filter: drop-shadow(0 10px 20px rgba(29, 170, 97, 0.3));
  }
  100% {
    transform: scale(1);
    filter: drop-shadow(0 0 0 rgba(29, 170, 97, 0));
  }
}
.floating-whatsapp:hover {
  transform: translateY(-5px) scale(1.05);
  filter: drop-shadow(0 15px 25px rgba(29, 170, 97, 0.4));
  animation: none;
}
.floating-whatsapp:hover .tooltip-text {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) translateX(-20px);
}
.floating-whatsapp .tooltip-text {
  position: absolute;
  right: 76%;
  top: 50%;
  transform: translateY(-50%) translateX(-10px);
  background-color: #fff;
  color: #1e293b;
  padding: 6px 14px;
  border-radius: 8px;
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  pointer-events: none;
}
.floating-whatsapp .tooltip-text::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  border-width: 6px;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
}
.floating-whatsapp .bot-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: hue-rotate(-57deg);
}
@media (max-width: 1023px) {
  .floating-whatsapp {
    display: none;
    bottom: calc(60px + env(safe-area-inset-bottom, 0px) + 16px);
    right: 16px;
    width: 60px;
    height: 60px;
  }
}

footer {
  background-color: #000;
  color: #fff;
  padding-top: 3rem;
  padding-bottom: 2.5rem;
}
footer .footerTop {
  display: flex;
  flex-direction: column;
  padding-bottom: 2.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  gap: 3rem;
}
@media (min-width: 768px) {
  footer .footerTop {
    flex-direction: row;
    justify-content: space-between;
    gap: 5rem;
  }
}
footer .footerTop h3 {
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 1rem;
}
footer .footerTop ul {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
footer .footerTop ul li a {
  color: #94a3b8;
  text-decoration: none;
  transition: color 0.2s;
}
footer .footerTop ul li a:hover {
  color: #fff;
}
footer .footerBottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  padding-top: 2rem;
}
@media (min-width: 768px) {
  footer .footerBottom {
    flex-direction: row;
    justify-content: space-between;
  }
}
footer .footerBottom p {
  font-size: 0.875rem;
  color: #64748b;
}
footer .footerBottom .socialLinks {
  display: flex;
  gap: 1rem;
}
footer .footerBottom .socialLinks a {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  transition: all 0.2s;
}
footer .footerBottom .socialLinks a:hover {
  background-color: #fff;
  color: #000;
}

.offcanvas {
  width: 100%;
  z-index: 9999999;
}

.mobile_left_menu {
  min-height: 100vh;
  height: fit-content;
  box-shadow: 0px 2px 4px 0px rgba(22, 40, 2, 0.1);
  backdrop-filter: blur(40px);
}
@media (min-width: 768px) {
  .mobile_left_menu {
    width: 25%;
  }
}
.mobile_left_menu nav a {
  color: #fff;
  font-weight: 200;
}
@media (max-width: 575px) {
  .mobile_left_menu nav {
    height: 380px;
    align-items: flex-start;
  }
}
.mobile_left_menu li.has-sub > ul {
  padding-left: 25px;
  margin-bottom: 20px;
}
.mobile_left_menu ul {
  width: 100%;
}
.mobile_left_menu .social {
  position: absolute;
  bottom: 30px;
  width: 90%;
  left: 50%;
  transform: translateX(-50%);
}
.mobile_left_menu .social .btn {
  width: 100%;
  color: #fff;
  font-weight: 600;
  padding: 8px 0px;
  margin-bottom: 15px;
}
.mobile_left_menu .social .btn:last-child {
  border: 1px solid #fff;
}
.mobile_left_menu .social ul {
  display: flex;
  justify-content: space-between;
}
.mobile_left_menu .social ul a {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #fff;
  font-size: 13px;
  gap: 5px;
}
.mobile_left_menu .social ul svg {
  width: 22px;
  height: auto;
}
.mobile_left_menu .offcanvas-header > div {
  width: 70%;
  padding-top: 11px;
}
.mobile_left_menu .offcanvas-header div {
  display: flex;
  align-items: center;
  gap: 25px;
  padding-right: 5px;
}
@media (min-width: 768px) {
  .mobile_left_menu .offcanvas-header div {
    gap: 34px;
  }
}
.mobile_left_menu .btn-close {
  background: unset;
  filter: invert(1);
  opacity: 1;
  width: 26px;
  height: 26px;
}
.mobile_left_menu .btn-close path {
  fill: #fff;
  stroke: #fff;
}
.mobile_left_menu ul li {
  margin-bottom: 10px;
}
.mobile_left_menu ul li a {
  color: #0A1119;
  font-size: 22px;
}
.mobile_left_menu .btn-close {
  margin-right: 0;
}
.mobile_left_menu .offcanvas-header {
  padding: 0px;
  width: 92%;
  margin: auto;
  margin-top: 15px;
}
.mobile_left_menu .offcanvas-body {
  margin-top: 20px;
}

.burgerMenu {
  width: 400px;
}
.burgerMenu .offcanvas-header {
  align-items: flex-start;
}
.burgerMenu button {
  background: unset;
}
.burgerMenu ul {
  margin-bottom: 20px;
}
.burgerMenu ul li {
  padding: 12px 10px;
  border-bottom: 1px solid #e3e3e3;
}
.burgerMenu ul li:last-child {
  border-bottom: unset;
}
.burgerMenu a {
  color: #0A1119;
  font-size: 20px;
}
.burgerMenu .contact-info {
  margin-top: 20Px;
  padding: 20px;
  border: 1px solid #e3e3e3;
}
.burgerMenu .contact-info P {
  font-size: 16px;
}
.burgerMenu .contact-info span, .burgerMenu .contact-info svg {
  margin-bottom: 5px;
}
.burgerMenu .contact-info svg {
  margin-right: 5px;
}
.burgerMenu .contact-info span {
  display: inline-block;
  font-weight: 500;
}
.burgerMenu .contact-info a, .burgerMenu .contact-info p {
  display: block;
  width: 100%;
  margin-bottom: 20px;
}

@media (min-width: 768px) and (max-width: 991px) {
  .siteEnquiryForm .modal-dialog {
    max-width: 720px;
  }
}
@media (max-width: 767px) {
  .siteEnquiryForm .modal-dialog {
    max-width: 100%;
    margin: 10px;
  }
}
.siteEnquiryForm .modal-dialog {
  max-width: 936px;
}
.siteEnquiryForm .modal-content {
  border-radius: 20px;
  box-shadow: 0 0 10px 10px rgba(54, 54, 54, 0.11);
  padding: clamp(25px, 2.3959vw, 46px);
}
.siteEnquiryForm label {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.siteEnquiryForm label strong {
  text-decoration: underline;
  font-weight: 400 !important;
  margin-bottom: 8px;
}

.modal-content .formGroup,
.modal-content .upload-area-container,
.modal-content .uploaded-files:has(.file-item) {
  margin-bottom: clamp(15px, 1.24999vw, 24px);
}
.modal-content small {
  font-weight: 300;
  line-height: 125%;
  color: #4B535D;
  font-size: clamp(12px, 0.834vw, 16px);
}
.modal-content .title {
  line-height: 100%;
  padding-top: 15px;
  font-size: clamp(20px, 1.46vw, 28px);
  font-weight: 500;
  margin-bottom: clamp(20px, 2.11vw, 42px);
}
.modal-content {
  /* ================= FILE ITEM ================= */
}
.modal-content .file-item {
  position: relative;
  width: 48.695%;
  border-radius: 5px;
  border: 1px solid #C9C9C9;
  background: #FFF;
  padding: 12px;
}
.modal-content .file-item .remove-file {
  position: absolute;
  right: 12px;
  top: 12px;
  background: unset;
}
.modal-content {
  /* ================= INPUTS ================= */
}
.modal-content input:focus, .modal-content select:focus {
  box-shadow: unset;
  border: 1px solid #C9C9C9;
}
.modal-content input[type=text],
.modal-content input[type=number],
.modal-content input[type=tel],
.modal-content input[type=email],
.modal-content textarea, .modal-content select {
  border: 1px solid #C9C9C9;
  border-radius: 5px;
  font-weight: 200;
  color: #4B535D;
}
.modal-content input[type=text]::placeholder,
.modal-content input[type=number]::placeholder,
.modal-content input[type=tel]::placeholder,
.modal-content input[type=email]::placeholder,
.modal-content textarea::placeholder, .modal-content select::placeholder {
  color: #4B535D;
}
.modal-content input[type=text],
.modal-content input[type=number],
.modal-content input[type=tel],
.modal-content input[type=email], .modal-content select {
  height: clamp(35px, 3.6459vw, 70px);
}
.modal-content textarea {
  height: clamp(70px, 7.44799vw, 143px);
}
.modal-content .file-size {
  display: block;
  color: #4B535D;
  font-weight: 300;
  margin-bottom: 9px;
  font-size: clamp(12px, 0.81vw, 16px);
}
.modal-content .file-icon {
  border-radius: 5px;
  background: #F2F2F2;
  width: clamp(30px, 2.61vw, 50px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
@media (min-width: 992px) {
  .modal-content .file-icon {
    gap: 5px;
  }
}
@media (min-width: 1200px) {
  .modal-content .file-icon {
    gap: 6px;
  }
}
@media (min-width: 1350px) {
  .modal-content .file-icon {
    gap: 7px;
  }
}
@media (min-width: 1440px) {
  .modal-content .file-icon {
    gap: 8px;
  }
}
@media (min-width: 1600px) {
  .modal-content .file-icon {
    gap: 9px;
  }
}
@media (min-width: 1900px) {
  .modal-content .file-icon {
    gap: 10px;
  }
}
.modal-content .file-icon + div {
  width: 83%;
}
.modal-content .file-icon svg {
  width: 28px;
  height: auto;
}
.modal-content {
  /* ================= PROGRESS ================= */
}
.modal-content .progress {
  height: 6px;
}
.modal-content .progress i {
  display: block;
  width: 0;
  height: 100%;
  background: #FFA600;
  box-shadow: 0 0 6px rgba(255, 166, 0, 0.6);
  transition: width 0.3s ease;
}
.modal-content {
  /* ================= CLOSE BUTTON ================= */
}
.modal-content .btn-close {
  position: absolute;
  right: clamp(10px, 3.23vw, 46px);
  top: clamp(10px, 3.23vw, 46px);
  width: clamp(30px, 3.23vw, 50px);
  height: clamp(30px, 3.23vw, 50px);
  border-radius: 50%;
  background: #D0DBE6;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
.modal-content .btn-close svg {
  width: clamp(10px, 3.23vw, 11px);
}
.modal-content {
  /* ================= UPLOAD AREA ================= */
}
.modal-content .upload-area-container {
  border-radius: 10px;
  border: 1px dashed #C9C9C9;
  background: #FFF;
  padding: clamp(15px, 1.9792vw, 38px);
}
.modal-content .upload-icon {
  display: flex;
  width: fit-content;
  margin: 0 auto 12px;
  background: #EEE;
  border-radius: 50%;
  padding: clamp(12px, 0.81vw, 16px);
}
.modal-content .upload-icon svg {
  height: auto;
  width: clamp(24px, 2.5vw, 48px);
}
.modal-content .file-info {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
@media (min-width: 992px) {
  .modal-content .file-info {
    gap: 5px;
  }
}
@media (min-width: 1200px) {
  .modal-content .file-info {
    gap: 6px;
  }
}
@media (min-width: 1350px) {
  .modal-content .file-info {
    gap: 7px;
  }
}
@media (min-width: 1440px) {
  .modal-content .file-info {
    gap: 8px;
  }
}
@media (min-width: 1600px) {
  .modal-content .file-info {
    gap: 9px;
  }
}
@media (min-width: 1900px) {
  .modal-content .file-info {
    gap: 10px;
  }
}
.modal-content .file-info p {
  width: 95%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.modal-content {
  /* ================= BUTTON GROUP ================= */
}
.modal-content .buttonGroup {
  display: flex;
  gap: 9px;
  margin-top: 15px;
}
.modal-content .buttonGroup button {
  border-radius: 80px;
  display: flex;
  align-items: center;
  line-height: 125%;
  height: 33px;
  padding: 0 21px;
}
@media (min-width: 992px) {
  .modal-content .buttonGroup button {
    height: 36px;
    padding: 0 26px;
  }
}
@media (min-width: 1200px) {
  .modal-content .buttonGroup button {
    height: 38px;
    padding: 0 28px;
  }
}
@media (min-width: 1350px) {
  .modal-content .buttonGroup button {
    height: 42px;
    padding: 0 30px;
  }
}
.modal-content .buttonGroup button + button {
  border: 1px solid #D9D9D9;
  color: #4F5762;
}
.modal-content .buttonGroup button + button:hover {
  background: #4F5762;
  color: #fff;
  border-color: #7a7a7a;
}
.modal-content {
  /* ================= COLORS ================= */
  /* ================= GRID ================= */
}
.modal-content .col--4 {
  width: 100%;
}
@media (min-width: 768px) {
  .modal-content .col--4 {
    width: 48.277%;
  }
}
@media (min-width: 992px) {
  .modal-content .col--4 {
    width: 32.277%;
  }
}
.modal-content .col--6 {
  width: 100%;
}
@media (min-width: 768px) {
  .modal-content .col--6 {
    width: 48.886%;
  }
}

/* ==================================================
   RESPONSIVE FIXES (REAL ONES)
================================================== */
/* MOBILE */
@media (max-width: 767px) {
  .modal-content {
    padding: 20px;
  }
  .file-item {
    width: 100%;
  }
  input[type=text],
  input[type=number],
  input[type=tel],
  input[type=email] {
    height: 48px;
  }
  textarea {
    height: 120px;
  }
  .upload-area-container {
    padding: 20px;
  }
  .file-icon + div {
    width: calc(100% - 52px);
  }
}
/* TABLET */
@media (min-width: 768px) and (max-width: 991px) {
  .file-item {
    width: 100%;
  }
  input[type=text],
  input[type=number],
  input[type=tel],
  input[type=email] {
    height: 56px;
  }
  textarea {
    height: 135px;
  }
}
.careerForm .heading {
  font-weight: 300;
  line-height: 118.519%;
  margin-bottom: clamp(20px, 3.74999vw, 72px);
  font-size: clamp(22px, 2.89vw, 54px);
}
.careerForm .modal-dialog {
  margin-left: auto;
  margin-right: 0;
  margin-top: 0;
  max-width: 83%;
}
@media (min-width: 768px) {
  .careerForm .modal-dialog {
    max-width: 70.465%;
  }
}
@media (min-width: 992px) {
  .careerForm .modal-dialog {
    max-width: 51.465%;
  }
}
.careerForm .modal-dialog .modal-content {
  padding-left: clamp(25px, 3.74999vw, 70px);
  padding-right: clamp(25px, 3.74999vw, 70px);
  padding-top: clamp(19px, 3.12499vw, 38px);
  padding-bottom: clamp(30px, 3.12499vw, 60px);
}
.careerForm .word-count {
  text-align: right;
  color: #4B535D;
  font-weight: 200;
  margin-top: 12px;
}
.careerForm .attachment {
  gap: 12px;
}
.careerForm .attachment p {
  width: fit-content;
}
.careerForm .custom-upload .d-flex {
  gap: 12px;
}
.careerForm .selected-file {
  margin-left: 40px;
}
.careerForm .file-info {
  color: #4B535D;
  font-weight: 200;
  font-size: 12px;
  margin-top: 8px;
}
@media (min-width: 768px) {
  .careerForm .file-info {
    font-size: 13px;
  }
}
@media (min-width: 992px) {
  .careerForm .file-info {
    font-size: 13.5px;
  }
}
@media (min-width: 1200px) {
  .careerForm .file-info {
    font-size: 14px;
  }
}
@media (min-width: 1350px) {
  .careerForm .file-info {
    font-size: 14.5px;
  }
}
@media (min-width: 1440px) {
  .careerForm .file-info {
    font-size: 15px;
  }
}
@media (min-width: 1600px) {
  .careerForm .file-info {
    font-size: 15.5px;
  }
}
@media (min-width: 1900px) {
  .careerForm .file-info {
    font-size: 16px;
  }
}
.careerForm .form-check-label {
  line-height: 140%;
  font-weight: 200;
}
.careerForm .form-check-label a {
  color: #FFA600;
  font-weight: 200;
  text-decoration: underline;
}

.bgYellow {
  background: #FF6B35;
}

.bgCancel {
  border: 1px solid #D9D9D9;
  background: #FFF;
}

.jq-stars {
  display: inline-block;
}

.jq-rating-label {
  font-size: 22px;
  display: inline-block;
  position: relative;
  vertical-align: top;
  font-family: helvetica, arial, verdana;
}

.jq-star {
  width: 100px;
  height: 100px;
  display: inline-block;
  cursor: pointer;
}

.jq-star-svg {
  width: 100%;
  height: 100%;
}

.jq-star-svg polygon {
  stroke-linejoin: round;
}

/* un-used */
.jq-shadow {
  -webkit-filter: drop-shadow(-2px -2px 2px #888);
  filter: drop-shadow(-2px -2px 2px #888);
}

.jq-star {
  width: 15px !important;
}
.jq-star + .jq-star {
  margin-left: 2px;
}

@media (min-width: 768px) {
  .jq-star {
    width: 11px !important;
  }
}
@media (min-width: 992px) {
  .jq-star {
    width: 12px !important;
  }
}
@media (min-width: 1200px) {
  .jq-star {
    width: 13px !important;
  }
}
@media (min-width: 1280px) {
  .jq-star {
    width: 14px !important;
  }
}
@media (min-width: 1360px) {
  .jq-star {
    width: 15px !important;
  }
}
@media (min-width: 1440px) {
  .jq-star {
    width: 16px !important;
  }
}
@media (min-width: 1600px) {
  .jq-star {
    width: 17px !important;
  }
}
@media (min-width: 1900px) {
  .jq-star {
    width: 18px !important;
  }
}
@keyframes ring {
  0% {
    transform: rotate(0deg);
  }
  10% {
    transform: rotate(15deg);
  }
  20% {
    transform: rotate(-10deg);
  }
  30% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  50% {
    transform: rotate(5deg);
  }
  60% {
    transform: rotate(-5deg);
  }
  70% {
    transform: rotate(3deg);
  }
  80% {
    transform: rotate(-3deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes circle {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(90deg);
  }
  50% {
    transform: rotate(180deg);
  }
  75% {
    transform: rotate(270deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.filter-sidebar {
  position: fixed;
  top: 0;
  left: -100%;
  width: 320px;
  height: 100vh;
  background: #fff;
  z-index: 9999;
  font-family: "Outfit", sans-serif;
  transition: left 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  box-shadow: 10px 0 30px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
}
.filter-sidebar.open {
  left: 0;
}
.filter-sidebar .filter-header {
  padding: 20px;
  background: #FF6B35;
  color: #0A1119;
}
.filter-sidebar .filter-header h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 700;
  margin-left: 10px;
  color: #0A1119;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.filter-sidebar .filter-header .filter-icon {
  width: 22px;
  height: 22px;
  color: #0A1119;
}
.filter-sidebar .filter-header .filter-close {
  transition: transform 0.3s ease;
  color: #0A1119;
}
.filter-sidebar .filter-header .filter-close:hover {
  transform: rotate(90deg);
}
.filter-sidebar .filter-header .filter-close svg {
  width: 26px;
  height: 26px;
}
.filter-sidebar .filter-content {
  flex: 1;
  overflow-y: auto;
  padding: 20px;
}
.filter-sidebar .filter-content .clear-all {
  display: block;
  text-align: center;
  font-size: 0.75rem;
  font-weight: 800;
  color: #0A1119;
  text-decoration: none;
  margin-bottom: 25px;
  background: #FF6B35;
  padding: 8px 18px;
  width: fit-content;
  margin-left: auto;
  border-radius: 50px;
  letter-spacing: 0.5px;
  transition: all 0.3s ease;
}
.filter-sidebar .filter-content .clear-all:hover {
  background: #0A1119;
  color: #FF6B35;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.filter-sidebar .filter-content .filter-group {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  margin-bottom: 5px;
}
.filter-sidebar .filter-content .filter-group .filter-group-header {
  padding: 16px 0;
  cursor: pointer;
  font-weight: 600;
  color: #0A1119;
  font-size: 0.9rem;
  transition: color 0.3s ease;
}
.filter-sidebar .filter-content .filter-group .filter-group-header span {
  flex: 1;
}
.filter-sidebar .filter-content .filter-group .filter-group-header:hover {
  color: #FF6B35;
}
.filter-sidebar .filter-content .filter-group .filter-group-header .arrow {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  color: rgba(0, 0, 0, 0.3);
}
.filter-sidebar .filter-content .filter-group .filter-options {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), padding 0.4s ease;
  padding-bottom: 0;
}
.filter-sidebar .filter-content .filter-group .filter-options .filter-checkbox {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 0.85rem;
  color: #555;
  transition: color 0.2s ease;
}
.filter-sidebar .filter-content .filter-group .filter-options .filter-checkbox:hover {
  color: #0A1119;
}
.filter-sidebar .filter-content .filter-group .filter-options .filter-checkbox input {
  margin-right: 12px;
  accent-color: #FF6B35;
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.filter-sidebar .filter-content .filter-group.active .filter-group-header {
  color: #8CC647;
}
.filter-sidebar .filter-content .filter-group.active .filter-group-header .arrow {
  transform: rotate(180deg);
  color: #FF6B35;
}
.filter-sidebar .filter-content .filter-group.active .filter-options {
  max-height: 500px;
  padding-bottom: 20px;
}

.filter-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(10, 17, 25, 0.4);
  z-index: 9998;
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
  backdrop-filter: blur(4px);
}
.filter-overlay.open {
  opacity: 1;
  visibility: visible;
}

.filter-content::-webkit-scrollbar {
  width: 4px;
}

.filter-content::-webkit-scrollbar-track {
  background: #f9f9f9;
}

.filter-content::-webkit-scrollbar-thumb {
  background: #ddd;
  border-radius: 10px;
}

.filter-content::-webkit-scrollbar-thumb:hover {
  background: #FF6B35;
}

.mobile-filter-btn {
  position: fixed;
  right: 20px;
  bottom: 80px;
  z-index: 1000;
  background: #e11d48;
  color: #fff;
  padding: 10px 18px;
  border-radius: 50px;
  display: flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  font-weight: 600;
  font-size: 14px;
  animation: bounce 2s infinite;
  transition: all 0.3s ease;
}
.mobile-filter-btn:active {
  transform: scale(0.9);
}
.mobile-filter-btn svg {
  width: 18px;
  height: 18px;
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-5px);
  }
  60% {
    transform: translateY(-3px);
  }
}
@media (min-width: 992px) {
  .mobile-filter-btn {
    display: none !important;
  }
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.pageBanner {
  position: relative;
  height: 350px;
  min-height: 350px;
  width: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: #0c1221;
  margin-top: 60px;
  z-index: 5;
}
@media (min-width: 768px) {
  .pageBanner {
    height: 480px;
    margin-top: 85px;
  }
}
.pageBanner.noImage {
  height: 300px;
}
@media (min-width: 768px) {
  .pageBanner.noImage {
    height: 400px;
  }
}
.pageBanner.variant-large {
  height: 65vh;
  min-height: 450px;
}
@media (min-width: 768px) {
  .pageBanner.variant-large {
    height: 75vh;
    min-height: 600px;
  }
}
.pageBanner.variant-large .pageBannerContent {
  margin-top: 2rem;
}
.pageBanner .pageBannerImg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.pageBanner .pageBannerImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.6;
}
.pageBanner .pageBannerOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(12, 18, 33, 0.9) 0%, rgba(12, 18, 33, 0.4) 100%);
  z-index: 1;
}
.pageBanner .bannerBgText {
  position: absolute;
  bottom: -2rem;
  left: 2rem;
  font-size: 15vw;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.04);
  line-height: 1;
  text-transform: uppercase;
  font-style: italic;
  pointer-events: none;
  z-index: 0;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .pageBanner .bannerBgText {
    display: none;
  }
}
.pageBanner .pageBannerInner {
  position: relative;
  z-index: 10;
  width: 100%;
  padding: 4rem 0 2rem;
}
@media (min-width: 768px) {
  .pageBanner .pageBannerInner {
    padding: 0;
  }
}
.pageBanner .pageBannerTop {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
}
.pageBanner .pageBreadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.35rem;
  padding: 6px 16px;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
  border-radius: 40px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.pageBanner .pageBreadcrumb .breadcrumbItem {
  font-size: 10px;
  font-weight: 800;
  color: #ccc;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 4px;
}
.pageBanner .pageBreadcrumb .breadcrumbItem.active {
  color: #f97316;
}
.pageBanner .pageBreadcrumb .breadcrumbItem:hover:not(.active) {
  color: #fff;
}
.pageBanner .pageBannerContent .pageBannerPreTitle {
  font-family: var(--font-writing);
  font-size: 1.1rem;
  color: #f97316;
  margin-bottom: 0.25rem;
}
@media (min-width: 768px) {
  .pageBanner .pageBannerContent .pageBannerPreTitle {
    font-size: 1.5rem;
  }
}
.pageBanner .pageBannerContent .pageBannerTitle {
  font-size: 1.8rem;
  font-weight: 900;
  color: #fff;
  text-transform: uppercase;
  line-height: 1.2;
  letter-spacing: -0.02em;
  white-space: pre-line;
  max-width: 90%;
}
@media (min-width: 768px) {
  .pageBanner .pageBannerContent .pageBannerTitle {
    font-size: 3.2rem;
    max-width: 80%;
  }
}
.pageBanner .pageBannerContent .pageBannerDescription {
  font-size: 1rem;
  color: #94a3b8;
  margin-top: 1.5rem;
  max-width: 600px;
  border-left: 2px solid #f97316;
  padding-left: 1.5rem;
  white-space: pre-line;
}
@media (max-width: 767px) {
  .pageBanner .pageBannerContent .pageBannerDescription {
    font-size: 0.85rem;
    padding-left: 1rem;
  }
}
.pageBanner.isCentered .pageBannerInner {
  text-align: center;
}
.pageBanner.isCentered .pageBannerContent {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.pageBanner.isCentered .pageBannerContent .pageBannerTitle {
  text-transform: none;
  white-space: normal;
  max-width: 800px;
  margin: 0 auto;
}
.pageBanner.isCentered .pageBannerContent .pageBannerDescription {
  border-left: none;
  padding-left: 0;
  margin: 1.5rem auto 0;
}
.pageBanner.isCentered .googleReviewsBadge {
  margin-top: 2rem;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  padding: 8px 20px;
  border-radius: 99px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  color: #1e293b;
  font-size: 0.85rem;
  font-weight: 600;
}
.pageBanner.isCentered .googleReviewsBadge .googleIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  background: #4285F4;
  color: #fff;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 900;
}
.pageBanner.isCentered .googleReviewsBadge .stars {
  display: flex;
  gap: 2px;
}
.pageBanner.isCentered .googleReviewsBadge .count {
  color: #64748b;
  border-left: 1px solid #e2e8f0;
  padding-left: 12px;
}
.pageBanner.isCentered .pageBannerTop {
  justify-content: center;
}

:root {
  --lp-brand-blue: #1673b8;
  --lp-brand-green: #8cc647;
  --lp-brand-orange: #ff6b35;
  --lp-dark: #1e293b;
  --lp-border: #e2e8f0;
}

.landingPageLayout {
  background: #f8fafc;
  color: var(--lp-dark);
  font-family: inherit;
  scroll-behavior: smooth;
  overflow-x: hidden;
  max-width: 100vw;
}

.lp-container {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 1.5rem;
  width: 100%;
}

@media (min-width: 1024px) {
  .lp-container {
    padding: 0 2rem;
  }
}
/* Landing page header – scroll-only menu, no external links */
.lp-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--lp-border);
  transition: box-shadow 0.2s ease;
}

.lp-header-inner {
  margin: 0 auto;
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

@media (min-width: 1024px) {
  .lp-header-inner {
    padding: 0.875rem 0rem;
  }
}
.lp-header-brand {
  display: flex;
  align-items: center;
  background: none;
  border: 0;
  cursor: pointer;
  padding: 0;
}

.lp-header-logo {
  width: auto;
  height: 2rem;
  object-fit: contain;
}

@media (min-width: 768px) {
  .lp-header-logo {
    height: 2.5rem;
  }
}
.lp-header-nav {
  display: none;
}

@media (min-width: 1024px) {
  .lp-header-nav {
    display: block;
  }
}
.lp-header-nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: end;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.lp-header-nav-link {
  background: none;
  border: 0;
  padding: 0.5rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--lp-dark);
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  transition: color 0.2s ease, background-color 0.2s ease;
  border-radius: 0.5rem;
}

.lp-header-nav-link:hover {
  color: var(--lp-brand-blue);
  background: rgba(22, 115, 184, 0.08);
}

.lp-header-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  background: none;
  border: 1px solid var(--lp-border);
  border-radius: 0.5rem;
  color: var(--lp-dark);
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.lp-header-toggle:hover {
  background: #f1f5f9;
  border-color: #cbd5e1;
}

@media (min-width: 1024px) {
  .lp-header-toggle {
    display: none;
  }
}
.lp-header-backdrop {
  position: fixed;
  inset: 0;
  z-index: 98;
  background: rgba(0, 0, 0, 0.35);
  border: 0;
  cursor: pointer;
}

.lp-header-mobile {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(280px, 85vw);
  z-index: 99;
  background: #fff;
  border-left: 1px solid var(--lp-border);
  box-shadow: -8px 0 24px rgba(0, 0, 0, 0.08);
  padding: 4rem 1rem 1.5rem;
  transform: translateX(100%);
  transition: transform 0.25s ease;
  overflow-y: auto;
}

.lp-header-mobile--open {
  transform: translateX(0);
}

.lp-header-mobile-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.lp-header-mobile-link {
  display: block;
  width: 100%;
  text-align: left;
  padding: 0.75rem 1rem;
  background: none;
  border: 0;
  font-size: 1rem;
  font-weight: 700;
  color: var(--lp-dark);
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border-radius: 0.5rem;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.lp-header-mobile-link:hover {
  background: rgba(22, 115, 184, 0.08);
  color: var(--lp-brand-blue);
}

/* Landing page hero banner – improved overlay, depth, and polish */
.lp-hero {
  position: relative;
  min-height: 85vh;
  display: flex;
  align-items: center;
  background: #0b1220;
  color: #fff;
  overflow: hidden;
  clip-path: inset(0); /* For fixed child */
}
@media (min-width: 992px) {
  .lp-hero {
    min-height: 100vh;
  }
}

.lp-hero .lp-img-cover {
  transition: transform 0.1s linear;
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  will-change: transform;
  z-index: -1;
}

.lp-hero:hover .lp-img-cover {
  transform: scale(1.06);
}

.lp-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(11, 18, 32, 0.75) 0%, transparent 45%), linear-gradient(90deg, rgba(22, 115, 184, 0.88) 0%, rgba(22, 115, 184, 0.4) 45%, rgba(22, 115, 184, 0.12) 100%);
  z-index: 1;
}

.lp-hero-glow {
  position: absolute;
  z-index: 2;
  border-radius: 9999px;
  filter: blur(80px);
  opacity: 0.4;
  pointer-events: none;
}

.lp-hero-glow-1 {
  width: 380px;
  height: 380px;
  left: -120px;
  top: -100px;
  background: rgba(140, 198, 71, 0.5);
}

.lp-hero-glow-2 {
  width: 480px;
  height: 480px;
  right: -180px;
  top: 20px;
  background: rgba(22, 115, 184, 0.45);
}

.lp-hero-glow-3 {
  width: 320px;
  height: 320px;
  left: 15%;
  bottom: -120px;
  background: rgba(255, 107, 53, 0.4);
}

/* Wego Card Style */
.lego-card {
  background: #fff;
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  border: 1px solid var(--lp-border);
}

.lego-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
}

.inclusion-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.65rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  background: #f1f5f9;
  padding: 0.25rem 0.5rem;
  border-radius: 0.5rem;
}

/* Primary Button - Wego Style */
.lp-btn-wego {
  background: var(--lp-brand-green);
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  padding: 1rem 2rem;
  border-radius: 0.5rem;
  transition: all 0.2s;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  box-shadow: 0 4px 15px rgba(140, 198, 71, 0.4);
}

.lp-btn-wego:hover {
  background: #7ab53b;
  transform: scale(1.02);
}

.lp-btn-outline {
  border: 2px solid var(--lp-brand-blue);
  color: var(--lp-brand-blue);
  font-weight: 800;
  padding: 1rem 2rem;
  border-radius: 0.5rem;
  text-transform: uppercase;
}

/* Section Spacing */
.lp-section-v2 {
  padding: 6rem 0;
}

.text-brand-blue {
  color: var(--lp-brand-blue);
}

.bg-brand-blue {
  background-color: var(--lp-brand-blue);
}

/* -------------------------------------------
   Landing page semantic styles (no Tailwind)
--------------------------------------------*/
/* Shared */
.lp-img-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.lp-icon-green {
  color: var(--lp-brand-green);
}

.lp-whitespacePreLine {
  white-space: pre-line;
}

/* New Centered Hero Design */
.lp-hero-content {
  z-index: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
  padding: 7rem 0 40px 0;
}

@media (min-width: 1024px) {
  .lp-hero-content {
    gap: 3.5rem;
    padding: 6rem 0;
  }
}
.lp-hero-main {
  margin: 0 auto;
  text-align: center;
}

.lp-hero-title {
  margin-bottom: 1rem;
  font-size: 3rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: -0.02em;
  color: #fff;
  line-height: 1.1;
  text-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

@media (min-width: 768px) {
  .lp-hero-title {
    margin-bottom: 1.5rem;
    font-size: 5rem;
  }
}
.lp-hero-description {
  font-family: var(--font-writing);
  font-size: 20px;
  color: #fff;
  margin-bottom: 1.5rem;
  line-height: normal;
  transform: rotate(-1.5deg);
  opacity: 0.95;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
}

@media (min-width: 768px) {
  .lp-hero-description {
    margin-bottom: 3rem;
    font-size: 2rem;
  }
}
.lp-hero-booking-strip {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2rem;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(20px);
  padding: 1.5rem 2.5rem;
  border-radius: 100px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
  animation: slideUp 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.lp-hero-price-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  padding-right: 2rem;
}

@media (max-width: 640px) {
  .lp-hero-booking-strip {
    border-radius: 32px;
    justify-content: center;
    padding: 1.5rem;
    gap: 10px;
  }
  .lp-hero-price-info {
    border-right: 0;
    padding-right: 0;
    align-items: center;
    width: 100%;
  }
}
.lp-hero-price-label {
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: rgba(255, 255, 255, 0.6);
  margin-bottom: 0.25rem;
}

.lp-hero-price-value {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}

.lp-hero-price-old {
  font-size: 1.25rem;
  text-decoration: line-through;
  color: rgba(255, 107, 53, 0.8);
  font-weight: 700;
}

.lp-hero-price-now {
  font-size: 2.25rem;
  font-weight: 900;
  color: #fff;
  letter-spacing: -0.01em;
}

.lp-hero-price-unit {
  font-size: 0.75rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.8);
}

.lp-hero-actions {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.lp-hero-cta-main {
  background: var(--lp-brand-orange);
  color: #fff;
  padding: 1.15rem 2.5rem;
  border-radius: 9999px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border: 0;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 15px 30px rgba(255, 107, 53, 0.3);
}

.lp-hero-cta-main:hover {
  background: #f95a20;
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 20px 40px rgba(255, 107, 53, 0.4);
}

.lp-hero-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.7);
}

/* Floating Tags */
.lp-hero-floating-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}
@media (min-width: 992px) {
  .lp-hero-floating-tags {
    gap: 1.5rem;
  }
}

.lp-hero-tag {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1.5rem;
  background: rgba(15, 23, 42, 0.4);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 16px;
  font-size: 0.875rem;
  font-weight: 800;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
}

.lp-hero-tag:hover {
  background: rgba(15, 23, 42, 0.6);
  border-color: rgba(255, 255, 255, 0.3);
  transform: translateY(-5px);
}

.lp-hero-tag svg {
  color: var(--lp-brand-orange);
}

.oldPrice {
  color: var(--lp-brand-orange);
  text-decoration: line-through;
  opacity: 0.9;
  font-weight: 700;
  font-size: 0.9em;
}

/* Instant booking card – glass style (deprecated but kept for fallback) */
.lp-instant-card {
  width: 100%;
  max-width: 400px;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.22);
  backdrop-filter: blur(14px);
  box-shadow: 0 24px 64px -24px rgba(0, 0, 0, 0.5);
  padding: 1.5rem;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.lp-instant-card:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.3);
  box-shadow: 0 32px 80px -24px rgba(0, 0, 0, 0.55);
  transform: translateY(-2px);
}

@media (min-width: 768px) {
  .lp-instant-card {
    padding: 2rem;
  }
}
.lp-instant-header {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  justify-content: space-between;
}

.lp-instant-kicker {
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: rgba(255, 255, 255, 0.7);
}

.lp-instant-title {
  margin-top: 0.25rem;
  font-size: 1.125rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  color: rgba(255, 255, 255, 0.95);
  line-height: 1.25;
}

.lp-instant-iconWrap {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 9999px;
  background: rgba(140, 198, 71, 0.2);
  border: 1px solid rgba(140, 198, 71, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
}

.lp-instant-features {
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.lp-instant-feature {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  padding: 1rem;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.lp-instant-featureText {
  font-size: 0.875rem;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.9);
}

.lp-instant-ctaRow {
  margin-top: 1.5rem;
  display: flex;
  justify-content: center;
}

.lp-instant-ctaButton {
  width: 100%;
  height: 3rem;
  border-radius: 9999px;
  border: 0;
  background: var(--lp-brand-green);
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  box-shadow: 0 18px 35px rgba(140, 198, 71, 0.35);
  transition: transform 0.12s ease, opacity 0.12s ease;
}

.lp-instant-ctaButton:hover {
  background: rgba(140, 198, 71, 0.92);
}

.lp-instant-ctaButton:active {
  transform: scale(0.95);
}

/* Packages section */
.lp-packagesSection {
  padding: 2.5rem 0;
  background: #fff;
}

.lp-packagesInner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.lp-packagesHeaderRow {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
}

@media (min-width: 768px) {
  .lp-packagesHeaderRow {
    flex-direction: row;
    align-items: flex-end;
  }
}
.lp-packagesHeadingStack {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.lp-packages-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  background: #f8fafc;
  border: 1px solid #f1f5f9;
}

.lp-packages-badge__dot {
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 9999px;
  background: var(--lp-brand-green);
}

.lp-packages-badge__text {
  font-size: 0.6875rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #64748b;
}

.lp-packages-title {
  font-size: 2.75rem;
  font-weight: 800;
  text-transform: none;
  font-style: normal;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: #0f172a; /* slate-900 */
}

@media (max-width: 768px) {
  .lp-packages-title {
    font-size: 2rem;
  }
}
.lp-packages-lead {
  font-weight: 700;
  font-style: italic;
  color: #94a3b8; /* slate-400 */
  line-height: 1.5;
  font-size: 0.875rem;
}

@media (min-width: 768px) {
  .lp-packages-lead {
    font-size: 1rem;
  }
}
.lp-packagesGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 992px) {
  .lp-packagesGrid {
    gap: 2.5rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.lp-packageItem {
  display: flex;
  flex-direction: column;
  gap: 1.25rem; /* space-y */
  width: 100%;
}

.lp-packages-empty {
  grid-column: 1/-1;
  text-align: center;
  color: #64748b; /* slate-500-ish */
  padding: 4rem 0; /* py-16 */
}

.lp-packageCard {
  border-radius: 2.5rem;
  overflow: hidden;
  background: #f1f5f9;
  border: 1px solid transparent;
  box-shadow: none;
  transition: all 0.5s ease;
}

.lp-packageCard:hover {
  border-color: #dbeafe; /* blue-100-ish */
  box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.12);
}

.lp-packageMedia {
  position: relative;
  aspect-ratio: 1/1;
  background: #f1f5f9;
  overflow: hidden;
}

.lp-packageDuration {
  position: absolute;
  top: 1.25rem;
  left: 1.25rem;
  padding: 0.75rem 1rem;
  border-radius: 1rem; /* similar to rounded-2xl */
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #0f172a;
  font-size: 0.625rem; /* 10px */
  font-weight: 900;
  text-transform: uppercase;
  box-shadow: 0 24px 55px rgba(2, 132, 199, 0.18);
  backdrop-filter: blur(8px);
}

.lp-packageBody {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem; /* space-y-5 */
}

.lp-packageTitle {
  font-size: 1.25rem;
  font-weight: 900;
  text-transform: uppercase;
  font-style: italic;
  letter-spacing: -0.02em;
  color: #0f172a;
  line-clamp: 1;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.lp-packagePriceRow {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 0;
  border: 0;
}

.lp-packagePriceStack {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.lp-package-fromLabel {
  font-size: 0.625rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #94a3b8; /* slate-400 */
}

.lp-package-priceRowInner {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
}

.lp-package-oldPrice {
  font-size: 1.25rem;
  font-weight: 900;
  text-decoration: line-through;
  color: #cbd5e1; /* slate-400-ish */
}

.lp-icon-blue {
  color: var(--lp-brand-blue);
}

.lp-package-currentPrice {
  font-size: 1.5rem;
  font-weight: 900;
  font-style: italic;
  color: var(--lp-brand-blue);
  letter-spacing: -0.02em;
}

.lp-package-perText {
  font-size: 0.75rem; /* xs */
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #94a3b8; /* slate-400 */
}

.lp-emiBadge {
  margin-left: 0.5rem;
  padding: 0.125rem 0.5rem; /* py-0.5 and px-2 */
  border-radius: 9999px;
  background: #ecfdf5;
  border: 1px solid #d1fae5;
  color: #065f46;
  font-weight: 900;
  font-size: 0.625rem; /* 10px */
}

.lp-package-arrowWrap {
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 9999px;
  background: #fff;
  border: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lp-brand-blue);
  flex: 0 0 auto;
}

.lp-package-actions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.packageCardSmall .lp-package-actions--insideCard {
  padding: 0 1.5rem 1.5rem; /* match home cardContent horizontal padding */
}

@media (max-width: 768px) {
  .packageCardSmall .lp-package-actions--insideCard {
    padding: 0 0.5rem 0.75rem;
  }
}
@media (min-width: 640px) {
  .lp-package-actions {
    flex-direction: row;
    align-items: center;
  }
}
.lp-package-ctaButton {
  height: 3rem;
  border-radius: 9999px;
  border: 0;
  flex: 1 1 auto;
  background: var(--lp-brand-blue);
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  transition: background-color 0.12s ease, transform 0.12s ease;
  padding: 0 1.5rem;
}

.lp-package-ctaButton:hover {
  background: rgba(22, 115, 184, 0.92);
}

.lp-package-ctaButton:active {
  transform: scale(0.95);
}

.lp-package-detailsLink {
  height: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.5rem;
  border-radius: 9999px;
  border: 1px solid var(--lp-brand-blue);
  color: var(--lp-brand-blue);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  transition: background-color 0.12s ease, color 0.12s ease;
}

.lp-package-detailsLink:hover {
  background: var(--lp-brand-blue);
  color: #fff;
}

.lp-package-location {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #94a3b8; /* slate-400 */
}

.packageCardSmall .lp-package-location--insideCard {
  padding: 0 1.5rem 1.5rem;
}

@media (max-width: 768px) {
  .packageCardSmall .lp-package-location--insideCard {
    padding: 0 0.5rem 0.75rem;
  }
}
.lp-packages-quoteRow {
  display: flex;
  justify-content: center;
  padding-top: 1.5rem;
}

.lp-packages-quoteButton {
  padding: 1rem 2.5rem; /* px-10 py-4 */
  border-radius: 9999px;
  border: 0;
  background: var(--lp-brand-blue);
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  box-shadow: 0 18px 35px rgba(22, 115, 184, 0.25);
  transition: background-color 0.12s ease, transform 0.12s ease;
}

.lp-packages-quoteButton:hover {
  background: rgba(22, 115, 184, 0.92);
}

.lp-packages-quoteButton:active {
  transform: scale(0.95);
}

/* Testimonials section */
.lp-testimonialsSection {
  padding: 2.5rem 0;
  background: #f8fafc;
  overflow: hidden;
}

.lp-testimonialsInner {
  display: flex;
  flex-direction: column;
}

.lp-testimonialsSlider .slick-track {
  display: flex !important;
  align-items: flex-start;
}

.lp-testimonialsSlider .slick-slide {
  padding: 0 0.75rem;
  height: auto;
  display: flex !important;
}

.lp-testimonialsSlider .slick-slide > div {
  display: flex;
  width: 100%;
}

.lp-testimonialSlideWrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.lp-testimonialSlideWrap .lp-testimonialCard {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
}

@media (min-width: 992px) {
  .lp-testimonialsSlider .slick-track {
    align-items: stretch;
  }
  .lp-testimonialSlideWrap .lp-testimonialCard {
    height: 100%;
  }
}
.lp-testimonialsSlider .slick-dots {
  position: relative;
  bottom: auto;
  margin-top: 2.5rem;
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  padding: 0;
  list-style: none;
}
.lp-testimonialsSlider .slick-dots li {
  margin: 0;
  width: auto;
  height: auto;
  cursor: pointer;
}
.lp-testimonialsSlider .slick-dots li button {
  padding: 0;
  width: 0.75rem;
  height: 0.75rem;
  background: rgba(15, 23, 42, 0.1);
  border: 1px solid rgba(15, 23, 42, 0.05);
  border-radius: 9999px;
  position: relative;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  text-indent: -9999px;
  font-size: 0;
}
.lp-testimonialsSlider .slick-dots li button::before {
  display: none;
}
.lp-testimonialsSlider .slick-dots li.slick-active button {
  width: 2.5rem;
  background: var(--lp-brand-green);
  box-shadow: 0 4px 12px rgba(140, 198, 71, 0.35);
  border-color: var(--lp-brand-green);
}

.lp-centerText {
  text-align: center;
}

.lp-sectionKickerBlue {
  display: inline-block;
  font-size: 0.75rem; /* text-xs */
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  font-style: italic;
  color: var(--lp-brand-blue);
}

.lp-sectionHeadingHuge {
  margin-top: 0.75rem;
  font-size: 2.75rem;
  font-weight: 800;
  text-transform: none;
  font-style: normal;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: #0f172a;
}

@media (max-width: 768px) {
  .lp-sectionHeadingHuge {
    font-size: 2rem;
  }
}
.lp-testimonials-swiper {
  padding-bottom: 1.5rem !important;
}

.lp-testimonials-swiper .swiper-wrapper {
  align-items: stretch;
}

.lp-testimonials-swiper .swiper-slide {
  height: 100%;
  display: flex;
  align-items: stretch;
}

.lp-testimonialCard {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.lp-testimonialCard {
  background: #fff;
  border: 1px solid #f1f5f9;
  border-radius: 28px;
  padding: 2rem; /* p-8 */
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
  height: 100%;
  flex: 1 1 auto;
}

.lp-testimonialHead {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.lp-testimonialAvatar {
  position: relative;
  width: 4rem;
  height: 4rem;
  border-radius: 9999px;
  overflow: hidden;
  border: 4px solid #fff;
  box-shadow: 0 8px 25px rgba(15, 23, 42, 0.12);
}

.lp-testimonialName {
  font-size: 0.875rem;
  font-weight: 900;
  text-transform: uppercase;
  font-style: italic;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.lp-testimonialRating {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  font-weight: 900;
  color: #f59e0b; /* amber */
  letter-spacing: 0.2em;
}

.lp-testimonialText {
  margin-top: 1.5rem; /* mt-6 */
  color: #475569; /* slate-600 */
  font-weight: 500;
  line-height: 1.75;
}

/* About / Kerala Tourism – modern card layout */
.lp-aboutSection {
  position: relative;
  padding: 4rem 0;
  overflow: hidden;
  clip-path: inset(0);
  background: #0f172a;
}
@media (min-width: 992px) {
  .lp-aboutSection {
    padding: 8rem 0;
  }
}

.lp-about-parallax {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.lp-about-parallax .lp-img-cover {
  object-fit: cover;
  opacity: 0.8;
}

.lp-about-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(15, 23, 42, 0.4) 0%, rgba(15, 23, 42, 0.7) 100%);
  z-index: 1;
}

.lp-aboutInner {
  position: relative;
  z-index: 5;
}

.lp-aboutCard {
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 32px;
  overflow: hidden;
  box-shadow: 0 50px 100px -20px rgba(0, 0, 0, 0.5);
  max-width: 90%;
}
@media (min-width: 992px) {
  .lp-aboutCard {
    max-width: 70%;
  }
}

.lp-aboutContent {
  color: #fff;
  padding: 2rem 1.5rem;
  text-align: center;
  position: relative;
  z-index: 10;
}

.lp-aboutContent .sectionSubtitle {
  display: inline-block;
  font-family: var(--font-writing);
  font-size: 12rem;
  color: #fff;
  background: none;
  -webkit-text-fill-color: var(--lp-brand-orange);
  margin-bottom: -0.5rem;
  transform: rotate(-3.5deg);
  padding-right: 1.5rem;
}
@media (min-width: 992px) {
  .lp-aboutContent .sectionSubtitle {
    font-size: 2.5rem;
  }
}

.lp-aboutContent .sliderTitle {
  color: #fff !important;
  margin: 0;
  font-size: 3.5rem;
  letter-spacing: -0.02em;
}

.lp-aboutDescription {
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: 1.125rem;
  line-height: 1.7;
  margin: 0 auto;
}

.lp-aboutDescription p {
  margin-bottom: 1.5rem;
}

@media (min-width: 768px) {
  .lp-aboutContent {
    padding: 2.5rem 2.5rem 2.5rem 2rem;
    gap: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .lp-aboutContent {
    padding: 3rem 3rem 3rem 2.5rem;
    justify-content: center;
  }
}
.lp-aboutKicker {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--lp-brand-green);
}

.lp-aboutTitle {
  font-size: 1.75rem;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.2;
  color: #0f172a;
  margin: 0;
}

@media (min-width: 768px) {
  .lp-aboutTitle {
    font-size: 2rem;
  }
}
.lp-aboutDescription {
  color: #64748b;
  font-weight: 500;
  line-height: 1.6;
  font-size: 1.05rem;
}

.lp-aboutDescription p {
  margin: 0 0 0.75rem;
}

.lp-aboutDescription p:last-child {
  margin-bottom: 0;
}

/* Why Choose Us – two-column layout (paragraph + image) */
.lp-whySection {
  padding: 1.5rem 0;
  background: linear-gradient(180deg, #f0f7ff 0%, #fff 50%, #f8fafc 100%);
}

@media (min-width: 768px) {
  .lp-whySection {
    padding: 2.5rem 0;
  }
}
.lp-whyLayout {
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .lp-whyLayout {
    gap: 1.5rem;
  }
}

.lp-whyHeader {
  text-align: center;
}

.lp-whyTitle {
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.2;
  color: #0f172a;
  margin: 0;
}

@media (min-width: 768px) {
  .lp-whyTitle {
    font-size: 1.875rem;
  }
}
.lp-whyAccent {
  display: block;
  width: 2.5rem;
  height: 3px;
  margin: 0.5rem auto 0;
  background: #ff6b35;
  border-radius: 2px;
}

.lp-whyColumns {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: start;
}

@media (min-width: 1024px) {
  .lp-whyColumns {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    align-items: stretch;
  }
}
.lp-whyContent {
  display: flex;
  flex-direction: column;
}

.lp-whyCard {
  background: #fff;
  border-radius: 1rem;
  padding: 1.5rem 1.5rem;
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
  border: 1px solid #f1f5f9;
}

@media (min-width: 768px) {
  .lp-whyCard {
    padding: 1.75rem 2rem;
  }
}
.lp-whyCardBody {
  color: #64748b;
  font-size: 1.05rem;
  line-height: 1.6;
}

.lp-whyCardBody p {
  margin: 0 0 1rem;
}

.lp-whyCardBody p:last-child {
  margin-bottom: 0;
}

.lp-whyImageWrap {
  position: relative;
  min-height: 240px;
}

@media (min-width: 1024px) {
  .lp-whyImageWrap {
    min-height: 0;
    align-self: stretch;
  }
}
.lp-whyImageFrame {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  border-radius: 1.5rem 0.25rem 1.5rem 0.25rem;
  overflow: hidden;
  border: 3px solid var(--lp-brand-blue);
  box-shadow: 0 8px 32px rgba(15, 23, 42, 0.12);
}

@media (min-width: 1024px) {
  .lp-whyImageFrame {
    position: absolute;
    inset: 0;
    aspect-ratio: auto;
    height: 100%;
  }
}
/* FAQs */
.lp-faqSection {
  padding: 2.5rem 0;
  background: #f8fafc;
}

.lp-faqInner {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.lp-faqList {
  max-width: 48rem; /* max-w-3xl */
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 1rem; /* space-y-4 */
}

.lp-faqItem {
  border-radius: 28px;
  border: 1px solid #f1f5f9;
  background: #fff;
  overflow: hidden;
}

.lp-faqItem--open {
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.18);
}

.lp-faqButton {
  width: 100%;
  text-align: left;
  padding: 1.25rem 1.5rem; /* px-6 py-5 */
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.lp-faqQuestion {
  font-size: 1rem;
  font-weight: 900;
  color: #0f172a;
  font-style: italic;
  letter-spacing: -0.02em;
}

.lp-faqChevron {
  transition: transform 0.18s ease;
}

.lp-faqChevron--open {
  transform: rotate(180deg);
}

.lp-faqAnswer {
  padding: 0 1.5rem 1.5rem;
  color: #475569;
  font-weight: 500;
  line-height: 1.75;
}

.lp-faqMoreRow {
  max-width: 48rem; /* max-w-3xl */
  margin: 0 auto;
  padding-top: 0.5rem; /* pt-2 */
  display: flex;
  justify-content: center;
}

.lp-faqMoreLink {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem 2.5rem; /* px-10 py-4 */
  border-radius: 9999px;
  background: #fff;
  border: 1px solid #e2e8f0;
  color: #0f172a;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 0.875rem;
  transition: background-color 0.12s ease, color 0.12s ease;
}

.lp-faqMoreLink:hover {
  background: #f1f5f9;
}

/* CTA / Contact section */
.lp-ctaSection {
  padding: 2.5rem 0;
  background: linear-gradient(165deg, #0f172a 0%, #1e293b 100%);
  color: #fff;
}

.lp-ctaInner {
  max-width: 48rem;
  margin: 0 auto;
  text-align: center;
}

.lp-ctaContent {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
}

.lp-ctaKicker {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.25em;
  color: var(--lp-brand-green);
}

.lp-ctaTitle {
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.15;
  margin: 0;
}

@media (min-width: 768px) {
  .lp-ctaTitle {
    font-size: 2.5rem;
  }
}
.lp-ctaLead {
  margin: 0;
  font-size: 1rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.85);
  max-width: 36rem;
}

.lp-ctaActions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 0.5rem;
}

.lp-ctaButton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  font-size: 0.9375rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  border-radius: 9999px;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.12s ease;
  cursor: pointer;
  text-decoration: none;
  border: 2px solid transparent;
}

.lp-ctaButton--primary {
  background: var(--lp-brand-green);
  color: #fff;
  border-color: var(--lp-brand-green);
}

.lp-ctaButton--primary:hover {
  background: #7ab53b;
  border-color: #7ab53b;
  color: #fff;
  transform: scale(1.02);
}

.lp-ctaButton--secondary {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.5);
}

.lp-ctaButton--secondary:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.8);
  color: #fff;
}

.lp-ctaContactRow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-top: 1.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
}

.lp-ctaContactLink {
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
  transition: color 0.2s ease;
}

.lp-ctaContactLink:hover {
  color: var(--lp-brand-green);
}

.lp-ctaContactSep {
  color: rgba(255, 255, 255, 0.4);
  user-select: none;
}

/* Quick Plan Modal */
.lp-modalOverlay {
  position: fixed;
  inset: 0;
  z-index: 130;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1rem;
}

.lp-modalBackdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(6px);
}

.lp-modalCard {
  position: relative;
  width: 100%;
  max-width: 42rem; /* max-w-2xl */
  background: #fff;
  border-radius: 32px;
  overflow: hidden;
  box-shadow: 0 35px 90px rgba(2, 6, 23, 0.45);
}

.lp-modalHeader {
  padding: 1.5rem;
  border-bottom: 1px solid #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.lp-modalHeaderStack {
  display: flex;
  flex-direction: column;
  gap: 0.25rem; /* space-y-1 */
}

.lp-modalTitle {
  font-size: 1.25rem; /* text-xl */
  font-weight: 900;
  text-transform: uppercase;
  font-style: italic;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.lp-modalCloseButton {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 9999px;
  border: 1px solid #e2e8f0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
  cursor: pointer;
  transition: background-color 0.12s ease;
}

.lp-modalCloseButton:hover {
  background: #f1f5f9;
}

.lp-modalBodyPad {
  padding: 1.5rem;
}

.lp-modalPackageRow {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  background: #f8fafc; /* slate-50 */
  border: 1px solid #f1f5f9;
  border-radius: 20px;
  padding: 1rem 1.25rem; /* px-5 py-4-ish */
}

.lp-modalPackageStack {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.lp-modalLabelTiny {
  font-size: 0.625rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #94a3b8; /* slate-400 */
}

.lp-modalPackageName {
  font-size: 1rem;
  font-weight: 900;
  color: #0f172a;
  line-clamp: 1;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.lp-modalPackageIconWrap {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 16px;
  background: rgba(22, 115, 184, 0.1);
  border: 1px solid rgba(22, 115, 184, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lp-brand-blue);
  flex: 0 0 auto;
}

.lp-modalForm {
  padding: 0 1.5rem 1.5rem; /* px-6 pb-6 */
}

.lp-modalFormGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

@media (min-width: 640px) {
  .lp-modalFormGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.lp-modalFieldStack {
  display: flex;
  flex-direction: column;
  gap: 0.5rem; /* space-y-2 */
}

.lp-modalFieldStack--spaced {
  margin-top: 1rem; /* mt-4 */
}

.lp-modalFieldLabel {
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: #64748b; /* slate-600 */
}

.lp-modalInput {
  height: 3rem;
  padding: 0 1rem;
  border-radius: 16px;
  border: 1px solid #e2e8f0;
  outline: none;
  background: #fff;
  transition: border-color 0.12s ease;
}

.lp-modalInput:focus {
  border-color: var(--lp-brand-blue);
}

.lp-modalSubmitButton {
  width: 100%;
  height: 3rem;
  border-radius: 9999px;
  border: 0;
  background: var(--lp-brand-blue);
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  box-shadow: 0 18px 35px rgba(22, 115, 184, 0.25);
  cursor: pointer;
  transition: transform 0.12s ease, background-color 0.12s ease;
}

.lp-modalSubmitButton:hover {
  background: rgba(22, 115, 184, 0.92);
}

.lp-modalSubmitButton:active {
  transform: scale(0.95);
}

.lp-modalSubmitRow {
  margin-top: 1.5rem; /* mt-6 */
}

.lp-modalSubmitNote {
  margin-top: 0.75rem; /* mt-3 */
  text-align: center;
  font-size: 0.75rem;
  font-weight: 500;
  color: #64748b; /* slate-500-ish */
}

/* Partners Section */
.lp-partnersSection {
  padding: 6rem 0;
  background: #f8fafc;
}

.lp-partnersGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  align-items: center;
  justify-items: center;
}
@media (min-width: 992px) {
  .lp-partnersGrid {
    margin-top: 3.5rem;
    gap: 2.5rem;
  }
}

@media (min-width: 640px) {
  .lp-partnersGrid {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (min-width: 1024px) {
  .lp-partnersGrid {
    grid-template-columns: repeat(9, 1fr);
  }
}
.lp-partnerLogoWrap {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.55;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.lp-partnerLogoWrap:hover {
  opacity: 1;
  transform: translateY(-5px) scale(1.05);
}

.lp-partnerLogo {
  max-width: 100%;
  height: auto;
  filter: grayscale(100%);
  transition: all 0.4s ease;
}

.lp-partnerLogoWrap:hover .lp-partnerLogo {
  filter: grayscale(0%);
}

.lp-inquirySection {
  position: relative;
  padding: 4rem 0;
  overflow: hidden;
  clip-path: inset(0);
}
@media (min-width: 992px) {
  .lp-inquirySection {
    padding: 8rem 0;
  }
}

.lp-inquiry-parallax {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.lp-inquiry-parallax .lp-img-cover {
  opacity: 0.85;
}

.lp-inquiry-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.8) 100%);
  z-index: 1;
}

/* Inquiry Banner - 10% Off Style */
.lp-inquiryBanner {
  position: relative;
  z-index: 5;
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 32px;
  padding: 2.5rem 2rem;
  margin: 0;
  box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.6);
  text-align: center;
}
@media (min-width: 992px) {
  .lp-inquiryBanner {
    padding: 4.5rem 2rem;
  }
}

.lp-inquiryBanner::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -20%;
  width: 100%;
  height: 200%;
  pointer-events: none;
  background: radial-gradient(circle, rgba(140, 198, 71, 0.15) 0%, transparent 70%);
}
@media (min-width: 992px) {
  .lp-inquiryBanner::before {
    background: radial-gradient(circle, rgba(140, 198, 71, 0.15) 0%, transparent 70%);
  }
}

.lp-inquiryHeader {
  position: relative;
  z-index: 2;
  margin-bottom: 2rem;
}

.lp-inquiryTitle {
  font-size: 2.25rem;
  font-weight: 900;
  margin-bottom: 1rem;
  letter-spacing: -0.02em;
}

.lp-inquiryLead {
  font-size: 1.125rem;
  color: rgba(255, 255, 255, 0.9);
  max-width: 42rem;
  margin: 0 auto;
}

.lp-inquiryDiscount {
  display: inline-block;
  background: var(--lp-brand-orange);
  color: #fff;
  padding: 0.5rem 1.25rem;
  border-radius: 9999px;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  margin-bottom: 1.5rem;
  box-shadow: 0 10px 20px rgba(255, 107, 53, 0.3);
}

.lp-inquiryActions {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  justify-content: center;
  margin-top: 2.5rem;
}

.lp-inquiryBtnPrimary {
  background: var(--lp-brand-orange);
  color: #fff;
  padding: 1rem 2.5rem;
  border-radius: 9999px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
  box-shadow: 0 15px 30px rgba(255, 107, 53, 0.3);
  border: 0;
}

.lp-inquiryBtnPrimary:hover {
  background: #f95a20;
  transform: translateY(-3px);
  box-shadow: 0 20px 40px rgba(255, 107, 53, 0.4);
}

.lp-inquiryBtnSecondary {
  border: 2px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  padding: 1rem 2.5rem;
  border-radius: 9999px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
}

.lp-inquiryBtnSecondary:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: #fff;
}

.sectionHeader h2.sliderTitle.text-white {
  color: #fff;
}

/* Hotel Landing Page - Aroma Hills Munnar Style - Main Site Refined */
:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.hotel-lp-container.aroma-hills-theme {
  /* Aligned with Main Website Color Theme */
  --brand-blue: #1673b8;
  --brand-green: #8cc647;
  --brand-orange: #ff6b35;
  --hotel-dark: #121826;
  --hotel-text: #475569;
  --hotel-light-bg: #f8fafc;
  font-family: "Outfit", sans-serif;
  color: var(--hotel-text);
  background: #fff;
  position: relative;
  overflow-x: hidden;
  scroll-behavior: smooth;
  /* Aligned Heading Styles */
}
.hotel-lp-container.aroma-hills-theme .serif {
  font-family: "Outfit", sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: -0.02em;
}
.hotel-lp-container.aroma-hills-theme .text-brand {
  color: var(--brand-blue);
}
.hotel-lp-container.aroma-hills-theme .bg-brand {
  background: var(--brand-blue);
}
.hotel-lp-container.aroma-hills-theme .bg-green {
  background: var(--brand-green);
}
.hotel-lp-container.aroma-hills-theme {
  /* Smooth Entrance Animations (Improved) */
}
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.hotel-lp-container.aroma-hills-theme .animate-up {
  opacity: 0;
  animation: fadeUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-1 {
  animation-delay: 0.1s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-2 {
  animation-delay: 0.2s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-3 {
  animation-delay: 0.3s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-4 {
  animation-delay: 0.4s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-5 {
  animation-delay: 0.5s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-6 {
  animation-delay: 0.6s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-7 {
  animation-delay: 0.7s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-8 {
  animation-delay: 0.8s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-9 {
  animation-delay: 0.9s;
}
.hotel-lp-container.aroma-hills-theme .animate-up.delay-10 {
  animation-delay: 1s;
}
.hotel-lp-container.aroma-hills-theme {
  /* Header Optimization - Website Logo Alignment */
  /* Global Slick Overrides for Robust Responsiveness */
}
.hotel-lp-container.aroma-hills-theme .slick-slider {
  width: 100%;
}
.hotel-lp-container.aroma-hills-theme .slick-list {
  overflow: hidden;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .slick-track {
    display: flex !important;
    align-items: stretch;
  }
}
.hotel-lp-container.aroma-hills-theme .slick-slide {
  height: auto;
  outline: none;
}
.hotel-lp-container.aroma-hills-theme .slick-slide > div {
  height: 100%;
  display: flex;
  flex: 1;
}
.hotel-lp-container.aroma-hills-theme .aroma-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 1.25rem 0;
}
.hotel-lp-container.aroma-hills-theme .aroma-header .header-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.hotel-lp-container.aroma-hills-theme .aroma-header .aroma-logo {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.hotel-lp-container.aroma-hills-theme .aroma-header .aroma-logo img {
  height: 40px;
  width: auto;
  object-fit: contain;
}
.hotel-lp-container.aroma-hills-theme .aroma-header .aroma-nav {
  display: flex;
  gap: 2.5rem;
}
.hotel-lp-container.aroma-hills-theme .aroma-header .aroma-nav a {
  color: #fff;
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  opacity: 0.8;
  transition: all 0.3s;
}
.hotel-lp-container.aroma-hills-theme .aroma-header .aroma-nav a:hover {
  opacity: 1;
  color: var(--brand-green);
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .aroma-header .aroma-nav {
    display: none;
  }
}
.hotel-lp-container.aroma-hills-theme .aroma-header .aroma-header-actions {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.hotel-lp-container.aroma-hills-theme .aroma-header .header-enquiry-btn {
  background: var(--brand-green);
  color: #fff;
  padding: 0.75rem 1.75rem;
  border-radius: 100px;
  font-weight: 850;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  transition: all 0.4s;
  box-shadow: 0 10px 25px rgba(140, 198, 71, 0.25);
  display: flex;
  align-items: center;
  gap: 0.75rem;
  line-height: 1;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .aroma-header .header-enquiry-btn .desktop-only {
    display: none;
  }
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .aroma-header .header-enquiry-btn {
    padding: 0.65rem;
    width: 42px;
    height: 42px;
    justify-content: center;
    border-radius: 12px;
  }
}
.hotel-lp-container.aroma-hills-theme .aroma-header .header-enquiry-btn:hover {
  background: #7ab53b;
  transform: translateY(-2px);
  box-shadow: 0 15px 35px rgba(140, 198, 71, 0.4);
}
.hotel-lp-container.aroma-hills-theme .aroma-header .mobile-toggle {
  background: transparent;
  border: none;
  color: #fff;
  padding: 0.5rem;
  cursor: pointer;
  display: none;
  margin-left: -0.5rem;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .aroma-header .mobile-toggle {
    display: block;
  }
}
.hotel-lp-container.aroma-hills-theme .aroma-header.menu-active {
  background: #fff;
}
.hotel-lp-container.aroma-hills-theme .aroma-header.menu-active .aroma-logo img {
  filter: brightness(0);
}
.hotel-lp-container.aroma-hills-theme .aroma-header.menu-active .mobile-toggle {
  color: var(--hotel-dark);
}
.hotel-lp-container.aroma-hills-theme {
  /* Mobile Navigation Drawer Panel */
}
.hotel-lp-container.aroma-hills-theme .mobile-nav-drawer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #fff;
  z-index: 999;
  transform: translateX(100%);
  transition: 0.5s cubic-bezier(0.77, 0, 0.175, 1);
  display: flex;
  flex-direction: column;
}
.hotel-lp-container.aroma-hills-theme .mobile-nav-drawer.open {
  transform: translateX(0);
}
.hotel-lp-container.aroma-hills-theme .mobile-nav-drawer .drawer-padding {
  padding: 6rem 2.5rem 3rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.hotel-lp-container.aroma-hills-theme .mobile-nav-drawer .mobile-links {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.hotel-lp-container.aroma-hills-theme .mobile-nav-drawer .mobile-links a {
  font-size: 1.8rem;
  font-weight: 950;
  color: var(--hotel-dark);
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: -0.02em;
  line-height: 1;
}
.hotel-lp-container.aroma-hills-theme .mobile-nav-drawer .drawer-footer {
  margin-top: 4rem;
}
.hotel-lp-container.aroma-hills-theme .mobile-nav-drawer .drawer-footer .mobile-cta-btn {
  display: block;
  background: var(--brand-blue);
  color: #fff;
  padding: 1.5rem;
  border-radius: 20px;
  text-align: center;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 0.85rem;
  letter-spacing: 0.1em;
  box-shadow: 0 15px 40px rgba(22, 115, 184, 0.3);
}
.hotel-lp-container.aroma-hills-theme {
  /* Hero Section - Aligned with Main Site Banner Style */
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  overflow: visible;
  height: 660px;
}
@media (min-width: 768px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered {
    min-height: 700px;
    height: 100vh;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-slider-container {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-slider-container .hero-slide {
  width: 100vw;
  height: 660px;
}
@media (min-width: 768px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-slider-container .hero-slide {
    min-height: 700px;
    height: 90vh;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-slider-container .hero-bg {
  position: relative;
  height: 100%;
  width: 100%;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-slider-container .hero-bg .hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(11, 18, 32, 0.7) 0%, rgba(11, 18, 32, 0.2) 60%, rgba(11, 18, 32, 0.8) 100%);
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content {
  position: relative;
  z-index: 10;
  padding-bottom: 80px;
  width: 100%;
  text-align: center;
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content {
    padding-bottom: 0px;
    eight: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-badge-text {
  opacity: 0.8;
  letter-spacing: 0.5em;
  font-weight: 800;
  font-size: 0.7rem;
  margin-bottom: 1.5rem;
  display: block;
  text-transform: uppercase;
  color: var(--brand-green);
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .weather-widget {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(15px);
  padding: 0.65rem 1.6rem;
  border-radius: 100px;
  width: fit-content;
  border: 1px solid rgba(255, 255, 255, 0.2);
  font-size: 0.85rem;
  font-weight: 900;
  margin: 0 auto 2.5rem;
  color: #fff;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .weather-widget .condition {
  opacity: 0.7;
  font-weight: 700;
  margin-left: 0.2rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-title {
  font-size: clamp(2rem, 9vw, 3.2rem);
  line-height: 1.1;
  margin-bottom: 2rem;
  text-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-title {
    font-size: 2.1rem;
    margin-bottom: 1rem;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-description-box {
  font-size: 1.1rem;
  opacity: 0.9;
  line-height: 1.6;
  margin: 0 auto 3rem;
  max-width: 750px;
  font-weight: 500;
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-description-box {
    font-size: 0.95rem;
    line-height: 1.5;
    margin-bottom: 2rem;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons {
  display: flex;
  gap: 1.5rem;
  justify-content: center;
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons {
    flex-direction: column;
    gap: 1rem;
    padding: 0 2rem;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons .btn-primary {
  background: var(--brand-green);
  padding: 1.25rem 3rem;
  border-radius: 12px;
  font-weight: 900;
  color: #fff;
  font-size: 0.95rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: 0.3s;
  box-shadow: 0 15px 35px rgba(140, 198, 71, 0.3);
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons .btn-primary:hover {
  background: #7ab53b;
  transform: translateY(-3px);
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons .btn-primary {
    width: 100%;
    padding: 1.4rem;
    border-radius: 10px;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons .btn-outline {
  border: 2px solid #fff;
  padding: 1.25rem 3rem;
  border-radius: 12px;
  font-weight: 900;
  color: #fff;
  font-size: 0.95rem;
  text-transform: uppercase;
  transition: 0.3s;
  backdrop-filter: blur(10px);
  background: rgba(255, 255, 255, 0.05);
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons .btn-outline:hover {
  background: #fff;
  color: var(--brand-blue);
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-content .hero-action-buttons .btn-outline {
    width: 100%;
    padding: 1.4rem;
    border-radius: 10px;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap {
  position: absolute;
  bottom: 15px;
  left: 0;
  width: 100%;
  z-index: 100;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap.desktop-only {
    display: none !important;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar {
  background: #fff;
  border-radius: 40px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  padding: 2.25rem 3rem;
  color: var(--hotel-dark);
  box-shadow: 0 30px 60px -12px rgba(0, 0, 0, 0.25), 0 18px 36px -18px rgba(0, 0, 0, 0.3);
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar {
    grid-template-columns: 1fr;
    padding: 1.75rem;
    gap: 1.25rem;
    border-radius: 25px;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col {
  border-right: 1px solid #f1f5f9;
  padding: 0 1.5rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col:last-child {
  border-right: none;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col {
    border-right: none;
    padding: 0 0.5rem;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col label {
  font-size: 0.65rem;
  font-weight: 900;
  text-transform: uppercase;
  color: var(--brand-blue);
  margin-bottom: 0.5rem;
  letter-spacing: 0.15em;
  display: block;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col input,
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col select {
  border: none;
  width: 100%;
  font-size: 1.05rem;
  font-weight: 800;
  color: var(--hotel-dark);
  outline: none;
  background: transparent;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col.btn-col {
  padding: 0 0 0 1.5rem;
  display: flex;
  align-items: center;
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col.btn-col .book-now-btn-hero {
  width: 100%;
  height: 50px;
  background: var(--brand-orange);
  color: #fff;
  border-radius: 12px;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 0.05em;
  transition: 0.3s;
  box-shadow: 0 10px 25px rgba(255, 107, 53, 0.3);
}
.hotel-lp-container.aroma-hills-theme .hotel-hero-centered .hero-search-bar-wrap .search-bar .search-col.btn-col .book-now-btn-hero:hover {
  background: #f95a20;
  transform: translateY(-2px);
  box-shadow: 0 15px 35px rgba(255, 107, 53, 0.5);
}
.hotel-lp-container.aroma-hills-theme {
  /* Standalone Mobile Booking Bar Below Hero */
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar {
  background: #fbfcfd;
  border-bottom: 1px solid #eef2f6;
  margin-top: 50px;
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone {
  background: #fff;
  border-radius: 25px;
  padding: 2rem;
  border: 1px solid #eef2f6;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05);
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-col-mobile {
  margin-bottom: 1.5rem;
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-col-mobile label {
  display: block;
  font-size: 0.65rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--brand-blue);
  margin-bottom: 0.75rem;
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-col-mobile input, .hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-col-mobile select {
  width: 100%;
  border: 1.5px solid #f1f5f9;
  background: #fbfcfd;
  padding: 1.1rem 1.4rem;
  border-radius: 12px;
  font-size: 1.05rem;
  font-weight: 800;
  outline: none;
  transition: 0.3s;
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-col-mobile input:focus, .hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-col-mobile select:focus {
  border-color: var(--brand-blue);
  background: #fff;
  box-shadow: 0 5px 15px rgba(22, 115, 184, 0.05);
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-flex-row {
  display: flex;
  gap: 1rem;
  margin-bottom: 2rem;
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .search-flex-row .flex-1 {
  flex: 1;
  margin-bottom: 0;
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .mobile-submit-btn {
  width: 100%;
  background: var(--brand-green);
  color: #fff;
  padding: 1.4rem;
  border-radius: 12px;
  border: none;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 0.95rem;
  box-shadow: 0 15px 35px rgba(140, 198, 71, 0.3);
  transition: 0.3s;
}
.hotel-lp-container.aroma-hills-theme .mobile-only-booking-bar .search-bar-mobile-standalone .mobile-submit-btn:active {
  transform: scale(0.96);
  opacity: 0.9;
}
.hotel-lp-container.aroma-hills-theme .commonPadding, .hotel-lp-container.aroma-hills-theme .eventsPage .events-listing, .eventsPage .hotel-lp-container.aroma-hills-theme .events-listing, .hotel-lp-container.aroma-hills-theme .eventsPage .events-intro, .eventsPage .hotel-lp-container.aroma-hills-theme .events-intro {
  padding: 6rem 0;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .commonPadding, .hotel-lp-container.aroma-hills-theme .eventsPage .events-listing, .eventsPage .hotel-lp-container.aroma-hills-theme .events-listing, .hotel-lp-container.aroma-hills-theme .eventsPage .events-intro, .eventsPage .hotel-lp-container.aroma-hills-theme .events-intro {
    padding: 4rem 0;
  }
}
.hotel-lp-container.aroma-hills-theme {
  /* Global Section Adjustments */
}
.hotel-lp-container.aroma-hills-theme .section-head {
  margin-bottom: 1.5rem;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .section-head {
    margin-bottom: 3.5rem;
  }
}
.hotel-lp-container.aroma-hills-theme .section-head .subtitle {
  display: block;
  font-size: 0.8rem;
  font-weight: 900;
  color: var(--brand-blue);
  text-transform: uppercase;
  letter-spacing: 0.4em;
  margin-bottom: 1rem;
  background: var(--hotel-light-bg);
  width: fit-content;
  padding: 0.4rem 1.25rem;
  border-radius: 8px;
  margin-left: auto;
  margin-right: auto;
}
.hotel-lp-container.aroma-hills-theme .section-head .title {
  color: var(--hotel-dark);
  line-height: 1.05;
}
.hotel-lp-container.aroma-hills-theme {
  /* About Section - Modernized */
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-grid {
  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 6rem;
  align-items: center;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .hotel-about .about-grid {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-img-wrap {
  position: relative;
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-img-wrap .main-img {
  border-radius: 40px;
  box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.18);
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-img-wrap .privacy-badge {
  position: absolute;
  bottom: -2.5rem;
  right: -1.5rem;
  background: var(--brand-blue);
  color: #fff;
  padding: 2.5rem;
  border-radius: 30px;
  font-weight: 800;
  width: 220px;
  box-shadow: 0 20px 50px rgba(22, 115, 184, 0.4);
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-img-wrap .privacy-badge .number {
  font-size: 2.5rem;
  display: block;
  margin-bottom: 0.25rem;
  font-weight: 900;
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-img-wrap .privacy-badge {
  font-size: 0.95rem;
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-about .about-img-wrap .privacy-badge {
    width: 180px;
    padding: 1.75rem;
  }
  .hotel-lp-container.aroma-hills-theme .hotel-about .about-img-wrap .privacy-badge .number {
    font-size: 2rem;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-text .description {
  font-size: 1.15rem;
  line-height: 1.8;
  margin-bottom: 1rem;
  font-weight: 500;
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-text .features-list {
  display: grid;
  gap: 10px;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .hotel-about .about-text .features-list {
    grid-template-columns: 1fr 1fr;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-text .features-list .feature-item {
  font-size: 1rem;
  font-weight: 600;
  color: var(--hotel-dark);
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-about .about-text .features-list .feature-item::before {
  content: "✓";
  color: var(--brand-green);
  font-weight: 900;
  font-size: 1.2rem;
  line-height: 1;
}
.hotel-lp-container.aroma-hills-theme {
  /* Amenities - Themed Icons */
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities {
  background: var(--hotel-light-bg);
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities .facilities-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .hotel-facilities .facilities-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .hotel-facilities .facilities-grid {
    grid-template-columns: 1fr;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities .facility-card {
  padding: 2rem 1.5rem;
  border-radius: 35px;
  background: #fff;
  border: 1px solid #eef2f6;
  transition: 0.3s;
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities .facility-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.06);
  border-color: var(--brand-blue);
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities .facility-card .icon-box {
  width: 65px;
  height: 65px;
  border-radius: 20px;
  margin-bottom: 2rem;
  background: #f1f7fb;
  color: var(--brand-blue);
  display: flex;
  align-items: center;
  justify-content: center;
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities .facility-card .icon-box svg {
  width: 28px;
  height: 28px;
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities .facility-card .f-title {
  margin-bottom: 1rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-facilities .facility-card .f-desc {
  font-size: 0.95rem;
  line-height: 1.7;
  opacity: 0.9;
}
.hotel-lp-container.aroma-hills-theme {
  /* Rooms - Themed Premium Cards */
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern {
  border-radius: 20px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.05);
  border: 1px solid #eef2f6;
  overflow: hidden;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern {
    border-radius: 40px;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .img-wrap .badge {
  top: 1.5rem;
  right: 1.5rem;
  padding: 0.7rem 1.75rem;
  font-size: 0.7rem;
  font-weight: 900;
  background: var(--brand-orange);
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .p-8 {
  padding: 1.5rem !important;
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .serif {
  margin-bottom: 1rem;
  line-height: 1.1;
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .opacity-60 {
  margin-bottom: 2rem;
  font-size: 1rem;
  line-height: 1.6;
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .gap-2 {
  margin-bottom: 2.5rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .gap-2 span {
  background: #f1f7fb;
  color: var(--brand-blue);
  border: 1px solid #d9e7f4;
  padding: 0.4rem 1rem;
  border-radius: 10px;
  font-weight: 800;
  font-size: 0.65rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .book-now-btn {
  padding: 1.25rem;
  font-size: 0.95rem;
  border-radius: 20px;
  background: var(--hotel-light-bg);
  color: var(--hotel-dark);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  transition: 0.4s;
}
.hotel-lp-container.aroma-hills-theme .hotel-rooms .room-card-modern .book-now-btn:hover {
  background: var(--brand-blue);
  color: #fff;
  box-shadow: 0 15px 35px rgba(22, 115, 184, 0.3);
}
.hotel-lp-container.aroma-hills-theme {
  /* Why Choose - Modern Split Two-Tone */
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-wrapper {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 50px 100px -20px rgba(0, 0, 0, 0.15);
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-wrapper {
    border-radius: 50px;
  }
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-wrapper {
    grid-template-columns: 1fr;
  }
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-content {
  padding: 4rem;
  background: var(--brand-blue);
  color: #fff;
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-content {
    padding: 4rem 2.5rem;
  }
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-content .points-list {
  gap: 3rem;
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-content .points-list .point-item + div {
  margin-top: 15px;
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-content .points-list .point-item .p-title {
  color: var(--brand-green);
  font-weight: 900;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-content .points-list .point-item .p-title svg {
  opacity: 0.7;
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-image {
  height: 100%;
}
.hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-image .side-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-image {
    height: 500px;
  }
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .why-choose-aroma .why-image {
    height: 350px;
  }
}
.hotel-lp-container.aroma-hills-theme {
  /* Gallery - Mosaic Grid */
}
.hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.8rem;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-grid {
    gap: 1.5rem;
  }
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-item {
  border-radius: 20px;
  aspect-ratio: 1/1;
  overflow: hidden;
  position: relative;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-item {
    border-radius: 30px;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 1s cubic-bezier(0.16, 1, 0.3, 1);
}
.hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-item:hover img {
  transform: scale(1.15);
}
.hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-item .overlay {
  background: rgba(22, 115, 184, 0.4);
}
.hotel-lp-container.aroma-hills-theme .hotel-gallery .gallery-item .plus-btn {
  width: 70px;
  height: 70px;
  border-radius: 25px;
  transition: 0.4s;
}
.hotel-lp-container.aroma-hills-theme {
  /* Testimonials - Website Style */
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials {
  background: var(--hotel-light-bg);
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .section-head {
  margin-bottom: 5rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-list {
  margin: 0 -15px;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-track {
    display: flex !important;
    align-items: stretch;
  }
  .hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-slide {
    height: auto !important;
    display: flex !important;
  }
}
@media (min-width: 992px) and (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-slide {
    width: 100% !important;
  }
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-slide > div {
    display: flex;
    flex: 1;
    width: 100%;
  }
  .hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-slide .testimonial-card {
    height: calc(100% - 20px);
    flex: 1;
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
  cursor: pointer;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #fff;
  display: flex !important;
  align-items: center;
  justify-content: center;
  color: var(--brand-blue);
  border: 1px solid #eef2f6;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-arrow.next-arrow-custom {
  right: -25px;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-arrow.prev-arrow-custom {
  left: -25px;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-slider-wrap .slick-arrow:hover {
  background: var(--brand-blue);
  color: #fff;
  box-shadow: 0 15px 30px rgba(22, 115, 184, 0.25);
  transform: translateY(-50%) scale(1.1);
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card {
  margin: 10px 15px;
  padding: 1.5rem;
  border-radius: 35px;
  background: #fff;
  border: 1px solid #eef2f6;
  width: calc(100% - 30px);
  flex: 1;
  display: flex;
  flex-direction: column;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .quote-icon {
  font-size: 5rem;
  color: var(--brand-blue);
  line-height: normal;
  opacity: 0.1;
  display: block;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-content {
  font-size: 1.1rem;
  font-weight: 500;
  line-height: 1.7;
  color: var(--hotel-dark);
  margin-bottom: 2rem;
  flex: 1;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta .avatar {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  flex-shrink: 0;
  border: 3px solid #fff;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
  object-fit: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.1rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta .info {
  display: flex;
  flex-direction: column;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta h5, .hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta .name {
  font-size: 1.05rem;
  font-weight: 900;
  margin: 0;
  line-height: 1.1;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta span, .hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta .date {
  font-size: 0.65rem;
  font-weight: 800;
  color: var(--brand-blue);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin-top: 0.25rem;
}
.hotel-lp-container.aroma-hills-theme .hotel-testimonials .testimonial-card .t-meta span {
  font-size: 0.7rem;
  font-weight: 800;
  color: var(--brand-blue);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.hotel-lp-container.aroma-hills-theme {
  /* Nearby - Aligned Box with Main Colors */
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .swiper {
  padding-top: 20px;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .bg-box {
  background: var(--brand-blue);
  border-radius: 60px;
  padding: 5rem 4rem;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .nearby-attractions .bg-box {
    padding: 4rem 2rem;
    border-radius: 40px;
  }
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .bg-box .subtitle {
  color: rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.1);
  margin-bottom: 1.5rem;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .bg-box .title {
  color: #fff;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap {
  position: relative;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-list {
  margin: -50px -15px;
  padding: 50px 0;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-slide > div {
  padding: 0 15px;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
  cursor: pointer;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background: #fff;
  color: var(--brand-blue);
  border: none;
  display: flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-arrow.next-arrow-custom {
  right: -25px;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-arrow.prev-arrow-custom {
  left: -25px;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-arrow:hover {
  background: var(--brand-green);
  color: #fff;
  transform: translateY(-50%) scale(1.1);
  box-shadow: 0 15px 40px rgba(140, 198, 71, 0.4);
}
@media (max-width: 1200px) {
  .hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-arrow {
    display: none !important;
  }
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-dots li {
  margin: 0 4px;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-dots li button:before {
  color: #fff;
  opacity: 0.2;
  font-size: 10px;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-slider-wrap .slick-dots li.slick-active button:before {
  color: #fff;
  opacity: 1;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .swiper-pagination {
  position: initial !important;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-card {
  padding: 2.5rem;
  border-radius: 30px;
  background: #fff;
  transition: 0.5s;
  display: flex !important;
  flex-direction: column;
  width: calc(100% - 20px);
  margin: 0 10px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 15px 45px rgba(0, 0, 0, 0.05);
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.15);
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-card .a-title {
  font-size: 1.4rem;
  color: var(--brand-blue);
  margin-bottom: 0.5rem;
  line-height: 1.2;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-card .a-dist {
  font-size: 0.8rem;
  font-weight: 800;
  color: var(--brand-green);
  margin-bottom: 1.5rem;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.hotel-lp-container.aroma-hills-theme .nearby-attractions .attraction-card .a-desc {
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--hotel-text);
  opacity: 0.8;
  margin: 0;
  flex: 1;
}
.hotel-lp-container.aroma-hills-theme {
  /* Contact & Footer - Themed */
}
.hotel-lp-container.aroma-hills-theme .contact-location {
  background: #fafbfc;
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .contact-location .map-column-final {
    order: -1;
  }
}
.hotel-lp-container.aroma-hills-theme .contact-location .contact-final-wrapper {
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
}
.hotel-lp-container.aroma-hills-theme .contact-location {
  /* Row 1: Quick Info Cards */
}
.hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media (max-width: 991px) {
  .hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid {
    grid-template-columns: 1fr;
  }
}
.hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid .info-card-final {
  background: #fff;
  padding: 20px;
  border-radius: 25px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid #f1f5f9;
  transition: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid .info-card-final {
    padding: 2rem 2.5rem;
    gap: 1.5rem;
  }
}
.hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid .info-card-final:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.06);
  border-color: var(--brand-blue);
}
.hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid .info-card-final .icon {
  width: 50px;
  height: 50px;
  border-radius: 12px;
  background: #f1f7fb;
  color: var(--brand-blue);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid .info-card-final .details h6 {
  font-size: 0.7rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--brand-blue);
  margin-bottom: 0.4rem;
  opacity: 0.6;
}
.hotel-lp-container.aroma-hills-theme .contact-location .info-cards-grid .info-card-final .details p {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--hotel-dark);
  margin: 0;
  line-height: 1.3;
}
.hotel-lp-container.aroma-hills-theme .contact-location {
  /* Row 2: Form & Map Split */
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid {
  display: grid;
  grid-template-columns: 1fr 400px;
  gap: 3rem;
  align-items: stretch;
}
@media (max-width: 1200px) {
  .hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid {
    grid-template-columns: 1fr;
  }
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final {
  background: #fff;
  padding: 4rem;
  border-radius: 40px;
  border: 1px solid #f1f5f9;
}
@media (max-width: 575px) {
  .hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final {
    padding: 3rem 2rem;
  }
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .card-header {
  margin-bottom: 3.5rem;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .card-header h4 {
  font-size: 2rem;
  margin-bottom: 0.75rem;
  color: var(--hotel-dark);
  line-height: 1;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .card-header p {
  font-size: 1.05rem;
  color: var(--hotel-text);
  opacity: 0.75;
  line-height: 1.6;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .field-triple-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media (max-width: 768px) {
  .hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .field-triple-row {
    grid-template-columns: 1fr;
  }
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .admin-form-group label {
  display: block;
  font-size: 0.65rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--brand-blue);
  margin-bottom: 1rem;
  opacity: 0.7;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .admin-form-group input, .hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .admin-form-group textarea {
  width: 100%;
  border: 1.5px solid #f1f5f9;
  background: #fbfcfd;
  padding: 1.1rem 1.6rem;
  border-radius: 15px;
  font-size: 1.05rem;
  font-weight: 700;
  outline: none;
  transition: 0.3s;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .admin-form-group input:focus, .hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .admin-form-group textarea:focus {
  border-color: var(--brand-blue);
  background: #fff;
  box-shadow: 0 10px 30px rgba(22, 115, 184, 0.05);
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .admin-form-group input::placeholder, .hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .admin-form-group textarea::placeholder {
  opacity: 0.3;
  font-weight: 600;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .submit-btn-final {
  background: var(--brand-blue);
  color: #fff;
  padding: 1.3rem 3rem;
  border-radius: 12px;
  border: none;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 0.95rem;
  cursor: pointer;
  box-shadow: 0 12px 30px rgba(22, 115, 184, 0.25);
  transition: 0.4s;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .submit-btn-final:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 45px rgba(22, 115, 184, 0.4);
  background: #13609b;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .wa-final-link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: #05cd51;
  font-weight: 900;
  font-size: 1rem;
  text-decoration: none;
  transition: 0.3s;
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .form-column-final .form-card-final .wa-final-link:hover {
  opacity: 0.8;
  transform: translateX(5px);
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .map-column-final .map-container-final {
  height: 100%;
  min-height: 500px;
  border-radius: 35px;
  border: 10px solid #fff;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}
@media (max-width: 1200px) {
  .hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .map-column-final .map-container-final {
    min-height: 400px;
  }
}
.hotel-lp-container.aroma-hills-theme .contact-location .form-map-final-grid .map-column-final .map-container-final iframe {
  width: 100% !important;
  height: 100% !important;
  border: none;
}
.hotel-lp-container.aroma-hills-theme .hotel-footer {
  padding: 2rem 0;
  background: var(--hotel-light-bg);
  border-top: 1px solid #eef2f6;
}
@media (min-width: 992px) {
  .hotel-lp-container.aroma-hills-theme .hotel-footer {
    padding: 5rem 0;
  }
}
.hotel-lp-container.aroma-hills-theme .hotel-footer .copyright {
  font-weight: 700;
  text-align: center;
  color: #94a3b8;
}
.hotel-lp-container.aroma-hills-theme {
  /* Floating UI Optimization */
}
.hotel-lp-container.aroma-hills-theme .fixed-actions {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.hotel-lp-container.aroma-hills-theme .fixed-actions .action-btn {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  transition: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
}
.hotel-lp-container.aroma-hills-theme .fixed-actions .action-btn.phone {
  background: var(--brand-blue);
}
.hotel-lp-container.aroma-hills-theme .fixed-actions .action-btn.whatsapp {
  background: #05cd51;
}
.hotel-lp-container.aroma-hills-theme .fixed-actions .action-btn:hover {
  transform: scale(1.1) translateY(-5px);
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.3);
  color: #fff;
}
.hotel-lp-container.aroma-hills-theme .fixed-actions .action-btn svg {
  width: 22px;
  height: 22px;
}
@media (max-width: 767px) {
  .hotel-lp-container.aroma-hills-theme .fixed-actions {
    bottom: 20px;
    right: 20px;
    gap: 10px;
  }
  .hotel-lp-container.aroma-hills-theme .fixed-actions .action-btn {
    width: 50px;
    height: 50px;
  }
}
.hotel-lp-container.aroma-hills-theme {
  /* Slider Styling */
}
.hotel-lp-container.aroma-hills-theme .slick-arrow.next-arrow-custom,
.hotel-lp-container.aroma-hills-theme .slick-arrow.prev-arrow-custom {
  background: #fff;
  color: var(--brand-blue);
  border: 1px solid #eef2f6;
  width: 60px;
  height: 60px;
}
.hotel-lp-container.aroma-hills-theme .slick-arrow.next-arrow-custom:hover,
.hotel-lp-container.aroma-hills-theme .slick-arrow.prev-arrow-custom:hover {
  background: var(--brand-blue);
  color: #fff;
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.enquireOverlay {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.enquireOverlay.active {
  opacity: 1;
  pointer-events: auto;
}
@media (min-width: 768px) {
  .enquireOverlay {
    padding: 1.5rem;
  }
}

.enquireBackdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.7);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.enquireContainer {
  position: relative;
  width: 100%;
  max-width: 1050px;
  background: #fff;
  border-radius: 2rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  transform: translateY(20px) scale(0.95);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.enquireContainer.active {
  transform: translateY(0) scale(1);
}
@media (min-width: 768px) {
  .enquireContainer {
    flex-direction: row;
    min-height: auto;
  }
}

.enquireCloseBtn {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  z-index: 50;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
  background: #f1f5f9;
  color: #1e293b;
  transition: all 0.3s;
}
.enquireCloseBtn:hover {
  background: #FF6B35;
  color: #fff;
  transform: rotate(90deg) scale(1.1);
}

.enquireVisualSide {
  display: none;
  background: #0f172a;
  position: relative;
  padding: 2.5rem 2rem;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  width: 40%;
  backdrop-filter: blur(10px);
  border-right: 1px solid rgba(255, 255, 255, 0.05);
}
.enquireVisualSide::before {
  content: "";
  position: absolute;
  width: 200%;
  height: 200%;
  top: -50%;
  left: -50%;
  background: radial-gradient(circle at center, rgba(255, 107, 53, 0.05) 0%, transparent 70%);
  pointer-events: none;
}
@media (min-width: 768px) {
  .enquireVisualSide {
    display: flex;
  }
}
.enquireVisualSide .enquireVisualGradient {
  position: absolute;
  border-radius: 9999px;
  filter: blur(80px);
}
.enquireVisualSide .enquireVisualGradient.top {
  top: 0;
  right: 0;
  width: 16rem;
  height: 16rem;
  background: rgba(255, 107, 53, 0.2);
  transform: translate(50%, -50%);
}
.enquireVisualSide .enquireVisualGradient.bottom {
  bottom: 0;
  left: 0;
  width: 12rem;
  height: 12rem;
  background: rgba(59, 130, 246, 0.1);
  transform: translate(-50%, 50%);
}

.enquireVisualContent {
  position: relative;
  z-index: 10;
}
.enquireVisualContent .enquireVisualIcon {
  width: 4rem;
  height: 4rem;
  background: rgba(255, 107, 53, 0.1);
  border: 1px solid rgba(255, 107, 53, 0.2);
  border-radius: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2rem;
  color: #FF6B35;
}
.enquireVisualContent .enquireAdventureTitle {
  font-size: 2.5rem;
  font-weight: 900;
  color: #fff;
  font-style: italic;
  text-transform: uppercase;
  letter-spacing: -0.05em;
  line-height: 0.9;
  margin-bottom: 1.5rem;
}
.enquireVisualContent .enquireAdventureTitle span {
  color: #FF6B35;
  text-decoration: underline;
  text-decoration-thickness: 4px;
  text-underline-offset: 8px;
}
.enquireVisualContent .enquireAdventureDesc {
  color: #94a3b8;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.6;
  font-style: italic;
}

.enquireTrustGroup {
  position: relative;
  z-index: 10;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.enquireTrustItem {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: rgba(255, 255, 255, 0.7);
}
.enquireTrustItem .enquireTrustIcon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
}
.enquireTrustItem span {
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}

.enquireFormSide {
  flex: 1;
  padding: 1rem;
}
@media (min-width: 768px) {
  .enquireFormSide {
    padding: 1.5rem 2rem;
  }
}

.enquireFormHeader {
  margin-bottom: 1.5rem;
}
.enquireFormHeader .enquireLabel {
  display: block;
  color: #FF6B35;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  font-size: 0.625rem;
  font-style: italic;
  margin-bottom: 0.5rem;
}
.enquireFormHeader .enquireTitle {
  font-size: 1.875rem;
  font-weight: 900;
  color: #0f172a;
  font-style: italic;
  letter-spacing: -0.025em;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
}
.enquireFormHeader .enquireTitle::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  width: 3rem;
  height: 4px;
  background: #FF6B35;
  border-radius: 2px;
}

.enquireForm {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  animation: slideUpFade 0.6s ease-out forwards;
}

@keyframes slideUpFade {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.enquireInterestBadge {
  background: #f8fafc;
  padding: 0.75rem 1.25rem;
  border-radius: 1.25rem;
  border: 1px solid #f1f5f9;
  display: flex;
  align-items: center;
  gap: 1rem;
  transition: all 0.3s;
}
.enquireInterestBadge:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 107, 53, 0.1);
}
.enquireInterestBadge .enquireInterestIcon {
  width: 3rem;
  height: 3rem;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FF6B35;
  border: 1px solid rgba(255, 107, 53, 0.1);
  position: relative;
  overflow: hidden;
}
.enquireInterestBadge .enquireInterestIcon::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(45deg, transparent, rgba(255, 107, 53, 0.1), transparent);
  transform: translateX(-100%);
  transition: transform 0.6s;
}
.enquireInterestBadge:hover .enquireInterestIcon::after {
  transform: translateX(100%);
}
.enquireInterestBadge .enquireInterestInfo label {
  display: block;
  font-size: 0.625rem;
  font-weight: 900;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin-bottom: 0.125rem;
}
.enquireInterestBadge .enquireInterestInfo div {
  color: #0f172a;
  font-weight: 900;
  font-style: italic;
  text-transform: uppercase;
  font-size: 0.875rem;
  max-width: 200px;
}

.enquireFormGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .enquireFormGrid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.enquireInputGroup {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.enquireInputGroup label {
  font-size: 0.625rem;
  font-weight: 900;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin-left: 0.25rem;
}

.enquireInputWrapper {
  position: relative;
}
.enquireInputWrapper .enquireInputIcon {
  position: absolute;
  left: 1.25rem;
  top: 50%;
  transform: translateY(-50%);
  color: #94a3b8;
  transition: color 0.3s;
}
.enquireInputWrapper input {
  width: 100%;
  background: #f8fafc;
  border: 2px solid transparent;
  border-radius: 1rem;
  padding: 0.75rem 1rem 0.75rem 3rem;
  font-weight: 700;
  color: #0f172a;
  outline: none;
  transition: all 0.3s;
}
.enquireInputWrapper input::placeholder {
  color: #cbd5e1;
  font-weight: 600;
}
.enquireInputWrapper input:focus {
  background: #fff;
  border-color: rgba(255, 107, 53, 0.15);
  box-shadow: 0 4px 12px -2px rgba(255, 107, 53, 0.05);
}
.enquireInputWrapper input:focus + .enquireInputIcon {
  color: #FF6B35;
}
.enquireInputWrapper.textarea .enquireInputIcon {
  top: 1rem;
  transform: none;
}
.enquireInputWrapper.textarea textarea {
  width: 100%;
  background: #f8fafc;
  border: 2px solid transparent;
  border-radius: 1rem;
  padding: 1rem 1rem 1rem 3rem;
  font-weight: 700;
  color: #0f172a;
  outline: none;
  transition: all 0.3s;
  resize: none;
  min-height: 60px;
  font-family: inherit;
  line-height: 1.5;
}
.enquireInputWrapper.textarea textarea::placeholder {
  color: #cbd5e1;
  font-weight: 600;
}
.enquireInputWrapper.textarea textarea:focus {
  background: #fff;
  border-color: rgba(255, 107, 53, 0.15);
  box-shadow: 0 4px 12px -2px rgba(255, 107, 53, 0.05);
}
.enquireInputWrapper.textarea textarea:focus + .enquireInputIcon {
  color: #FF6B35;
}

.enquireSubmitBtn {
  width: 100%;
  background: #FF6B35;
  border: none;
  padding: 1.25rem;
  border-radius: 1.25rem;
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  cursor: pointer;
  box-shadow: 0 10px 15px -3px rgba(255, 107, 53, 0.2);
  transition: all 0.3s;
  margin-top: 1rem;
}
.enquireSubmitBtn:hover {
  background: #0f172a;
  box-shadow: 0 10px 15px -3px rgba(15, 23, 42, 0.2), 0 0 20px rgba(255, 107, 53, 0.2);
  transform: translateY(-2px);
}
.enquireSubmitBtn:hover .sendIcon {
  transform: translate(6px, -6px);
}
.enquireSubmitBtn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.enquireSubmitBtn .sendIcon {
  transition: transform 0.3s;
}
.enquireSubmitBtn .spinner {
  width: 1rem;
  height: 1rem;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 9999px;
  animation: spin 0.8s linear infinite;
}

.enquirePrivacyNote {
  margin-top: 2rem;
  text-align: center;
  color: #94a3b8;
  font-weight: 700;
  font-style: italic;
  font-size: 0.625rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.sectionHeader {
  text-align: center;
  max-width: 85%;
  margin: 0 auto 2rem;
  position: relative;
}
@media (max-width: 767px) {
  .sectionHeader {
    max-width: 95%;
  }
}
.sectionHeader.flex {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  max-width: none;
  margin: 0 0 2rem;
  gap: 1.5rem;
  position: relative;
}
@media (max-width: 1024px) {
  .sectionHeader.flex {
    flex-direction: column;
    gap: 0.5rem;
  }
}
.sectionHeader.flex .viewAllBtn {
  position: absolute;
  right: 0;
  bottom: 0.5rem;
  margin: 0;
  flex-shrink: 0;
}
@media (max-width: 1024px) {
  .sectionHeader.flex .viewAllBtn {
    display: none !important;
  }
}
.sectionHeader.flex .titleArea {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 850px;
}
.sectionHeader.flex .sectionHeaderDescription {
  margin-left: auto;
  margin-right: auto;
  text-align: center !important;
  max-width: 750px;
}
.sectionHeader .sectionSubtitle {
  display: inline-block;
  font-family: var(--font-writing);
  font-size: 1.5rem;
  background: linear-gradient(90deg, #FF6B35 0%, #FB7F33 75%, #0472b4 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
  z-index: 10;
  margin-bottom: -20px;
}
@media (max-width: 767px) {
  .sectionHeader .sectionSubtitle {
    margin-bottom: 10px;
  }
}
@media (min-width: 992px) {
  .sectionHeader .sectionSubtitle {
    font-size: 2.25rem;
  }
}
.sectionHeader > p,
.sectionHeader .sectionHeaderDescription {
  width: 100%;
  color: #64748b;
  font-size: 1.05rem;
  line-height: 1.6;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .sectionHeader > p,
  .sectionHeader .sectionHeaderDescription {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
.sectionHeader > p.px-0,
.sectionHeader .sectionHeaderDescription.px-0 {
  margin-left: 0;
  margin-right: 0;
  text-align: left;
  width: 100%;
}

.viewAllBtn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 800;
  font-size: 0.9rem;
  color: #475569;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  transition: all 0.3s ease;
  padding: 0.5rem 0;
  border-bottom: 2px solid transparent;
}
.viewAllBtn svg {
  transition: transform 0.3s ease;
  color: #FF6B35;
}
.viewAllBtn:hover {
  color: #fff;
  background: #FF6B35;
  border-color: #FF6B35;
  padding-left: 1.5rem;
  padding-right: 1rem;
  border-radius: 50px;
  text-decoration: none;
}
.viewAllBtn:hover svg {
  transform: translateX(5px);
  color: #fff;
}
@media (max-width: 768px) {
  .viewAllBtn {
    display: none !important;
  }
}

.viewAllMobileContainer {
  display: none;
  justify-content: center;
  margin-top: 1.5rem;
  width: 100%;
}
@media (max-width: 768px) {
  .viewAllMobileContainer {
    display: flex;
  }
}

.viewAllBtnMobile {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-weight: 700;
  font-size: 0.85rem;
  color: #475569;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 0.6rem 1.5rem;
  border: 1px solid #e2e8f0;
  border-radius: 99px;
  text-decoration: none;
  background: #f8fafc;
  transition: all 0.2s ease;
}
.viewAllBtnMobile svg {
  color: #FF6B35 !important;
}
.viewAllBtnMobile:active {
  transform: scale(0.98);
  background: #f1f5f9;
}

.heroSection {
  position: relative;
  padding-bottom: 50px;
  z-index: 1111;
}
.heroSection .heroBanner {
  padding-top: 30px;
  position: relative;
  height: 70vh;
  min-height: 450px;
  max-height: 600px;
  overflow: visible;
  border-radius: 2rem;
  margin-top: 80px;
}
.heroSection .heroBanner .heroSwiper {
  width: 100%;
  height: 100%;
  border-radius: 2rem;
  overflow: hidden;
}
.heroSection .heroBanner .heroSwiper .swiper-pagination {
  display: none !important;
}
.heroSection .heroBanner .slideContent {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.heroSection .heroBanner .slideContent .imageWrapper {
  position: absolute;
  inset: -20px;
  z-index: 0;
}
.heroSection .heroBanner .slideContent .imageWrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.15);
  transition: transform 10s ease-out;
}
.heroSection .heroBanner .slideContent .imageWrapper .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.6));
  z-index: 1;
}
.heroSection .heroBanner .slideContent .contentOverlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  padding: 2rem;
  z-index: 10;
}
.heroSection .heroBanner .slideContent .contentOverlay h1 {
  font-size: 3.5rem;
  font-weight: 800;
  margin-bottom: 0.5rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  transform: translateY(40px);
  opacity: 0;
  transition: all 1s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 0.3s;
}
@media (min-width: 768px) {
  .heroSection .heroBanner .slideContent .contentOverlay h1 {
    font-size: 5.5rem;
  }
}
.heroSection .heroBanner .slideContent .contentOverlay .heroSubheading {
  font-family: var(--font-writing);
  font-size: 2.25rem;
  font-weight: 400;
  margin-bottom: 2rem;
  color: #fff;
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.5);
  transform: translateY(30px);
  opacity: 0;
  transition: all 1s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 0.5s;
}
.heroSection .heroBanner .slideContent .contentOverlay .heroPackageBtn {
  padding: 0.75rem 2rem;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.4);
  color: #fff;
  font-weight: 600;
  border-radius: 9999px;
  transition: all 0.3s;
  backdrop-filter: blur(4px);
  text-decoration: none;
  font-size: 1rem;
  transform: translateY(20px);
  opacity: 0;
  transition: all 1s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 0.7s;
}
.heroSection .heroBanner .slideContent .contentOverlay .heroPackageBtn:hover {
  filter: brightness(1.1);
  transform: translateY(-4px) scale(1.05) !important;
}
.heroSection .heroBanner .swiper-slide-active .slideContent .imageWrapper img {
  transform: scale(1);
}
.heroSection .heroBanner .swiper-slide-active .slideContent .contentOverlay h1,
.heroSection .heroBanner .swiper-slide-active .slideContent .contentOverlay .heroSubheading,
.heroSection .heroBanner .swiper-slide-active .slideContent .contentOverlay .heroPackageBtn {
  transform: translateY(0);
  opacity: 1;
}
.heroSection .heroBanner .heroSearchWrapper {
  position: absolute;
  bottom: -35px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: 900px;
  z-index: 30;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill {
  background: #fff;
  border-radius: 100px;
  padding: 8px 8px 8px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(0, 0, 0, 0.08);
  position: relative;
  transition: border-radius 0.2s;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill.has-suggestions {
  border-radius: 24px 24px 0 0;
  border-bottom-color: transparent;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 15px;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea .locationIcon {
  color: #64748b;
  flex-shrink: 0;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea input {
  border: none;
  outline: none;
  width: 100%;
  font-size: 1.1rem;
  font-weight: 500;
  color: #1e293b;
  background: transparent;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea input::placeholder {
  color: #94a3b8;
  font-weight: 400;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea .searchClearBtn {
  background: none;
  border: none;
  color: #94a3b8;
  cursor: pointer;
  display: flex;
  padding: 0.25rem;
  border-radius: 50%;
  flex-shrink: 0;
  transition: all 0.2s;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea .searchClearBtn:hover {
  color: #0f172a;
  background: #f1f5f9;
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .submitBtn {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: #FF6B35;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: none;
  box-shadow: 0 4px 15px rgba(255, 107, 53, 0.35);
}
.heroSection .heroBanner .heroSearchWrapper .searchPill .submitBtn:hover {
  transform: scale(1.1) rotate(5deg);
  filter: brightness(1.1);
  box-shadow: 0 6px 20px rgba(255, 107, 53, 0.5);
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border-radius: 0 0 24px 24px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-top: none;
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  z-index: 100;
  animation: suggFadeIn 0.15s ease;
}
@keyframes suggFadeIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1.5rem;
  text-decoration: none;
  transition: background 0.15s;
  border-bottom: 1px solid #f8fafc;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem:hover, .heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem.active {
  background: #f8fafc;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionImg {
  position: relative;
  width: 44px;
  height: 44px;
  border-radius: 0.75rem;
  overflow: hidden;
  flex-shrink: 0;
  background: #f1f5f9;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionText {
  flex: 1;
  min-width: 0;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionText .suggestionTitle {
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionText .suggestionMeta {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.7rem;
  font-weight: 600;
  color: #94a3b8;
  margin-top: 2px;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionText .suggestionMeta svg {
  color: #FF6B35;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionBadge {
  font-size: 0.625rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0.2rem 0.6rem;
  border-radius: 9999px;
  flex-shrink: 0;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionBadge.category {
  background: rgba(255, 107, 53, 0.1);
  color: #FF6B35;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionItem .suggestionBadge.package {
  background: rgba(255, 107, 53, 0.1);
  color: #FF6B35;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionViewAll {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.875rem 1.5rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: #FF6B35;
  text-decoration: none;
  background: #fffbf8;
  transition: background 0.15s;
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionViewAll:hover {
  background: rgba(255, 107, 53, 0.05);
}
.heroSection .heroBanner .heroSearchWrapper .searchSuggestions .suggestionViewAll strong {
  font-weight: 900;
}

.homePageSections section {
  overflow-x: hidden;
}
.homePageSections section:nth-child(even) {
  background-color: #f8fafc;
}
.homePageSections section:nth-child(odd) {
  background-color: #ffffff;
}

.commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
  padding: 80px 0;
  position: relative;
}
@media (max-width: 768px) {
  .commonPadding, .eventsPage .events-listing, .eventsPage .events-intro {
    padding: 40px 0;
  }
}

.bg-white {
  background-color: #ffffff !important;
}

.bg-light {
  background-color: #f8fafc !important;
}

.sectionPadding {
  position: relative;
  overflow: visible;
}
.sectionPadding .homeContainer {
  overflow: visible;
}

.secondaryStickyNav {
  background: #fff;
  border-bottom: 1px solid #f1f5f9;
  padding: 0.75rem 0;
  position: sticky;
  top: 68px;
  z-index: 990;
  transition: all 0.3s ease;
  display: none;
}
@media (min-width: 1024px) {
  .secondaryStickyNav {
    display: block;
  }
}
.secondaryStickyNav .navInner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.secondaryStickyNav .brandTag {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.25rem;
  color: #1e293b;
}
.secondaryStickyNav .brandTag span {
  font-weight: 500;
}
.secondaryStickyNav .brandTag strong {
  font-weight: 900;
  color: #0f172a;
}
.secondaryStickyNav .quickNav {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.secondaryStickyNav .quickNav .navItem {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0.6rem 1.25rem;
  border-radius: 12px;
  text-decoration: none;
  color: #475569;
  font-weight: 700;
  font-size: 0.9rem;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  background: transparent;
}
.secondaryStickyNav .quickNav .navItem svg {
  color: #64748b;
  transition: color 0.3s;
}
.secondaryStickyNav .quickNav .navItem .threeDIconWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}
.secondaryStickyNav .quickNav .navItem .threeDIconWrapper img {
  mix-blend-mode: multiply;
}
.secondaryStickyNav .quickNav .navItem:hover {
  background: rgba(255, 107, 53, 0.05);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  color: #FF6B35;
}
.secondaryStickyNav .quickNav .navItem:hover svg, .secondaryStickyNav .quickNav .navItem:hover .threeDIconWrapper {
  color: #FF6B35;
  transform: scale(1.1);
}
.secondaryStickyNav .quickNav .navItem.active {
  color: #FF6B35;
  font-weight: 800;
}

.packageGrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 2.5rem;
}
.packageGrid .packageCard {
  background: #fff;
  border-radius: 2rem;
  overflow: hidden;
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.06);
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.packageGrid .packageCard:hover {
  transform: translateY(-8px);
}
.packageGrid .packageCard .imageWrapper {
  position: relative;
  aspect-ratio: 1/1;
}
.packageGrid .packageCard .imageWrapper img {
  object-fit: cover;
}
.packageGrid .packageCard .cardBody {
  padding: 2rem;
}
.packageGrid .packageCard .cardBody h4 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
  color: #1e293b;
}
.packageGrid .packageCard .cardBody .priceRow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.25rem;
}
.packageGrid .packageCard .cardBody .priceRow .price {
  font-weight: 800;
  color: #0f172a;
  font-size: 1.25rem;
}
.packageGrid .packageCard .cardBody .priceRow .price::before {
  content: "From ";
  font-weight: 500;
  color: #94a3b8;
  font-size: 0.9375rem;
}
.packageGrid .packageCard .cardBody .priceRow .stars {
  display: flex;
  gap: 0.125rem;
  color: #8CC647;
}
.packageGrid .packageCard .cardBody .progressBar {
  height: 0.5rem;
  background-color: #f1f5f9;
  border-radius: 9999px;
  overflow: hidden;
}
.packageGrid .packageCard .cardBody .progressBar .fill {
  height: 100%;
  background-color: #8CC647;
  border-radius: 9999px;
}

.corporateModernSection,
.corporate-events-section {
  background: #f8fafc;
}
.corporateModernSection .sectionHeader,
.corporate-events-section .sectionHeader {
  margin-bottom: 2.5rem;
}
.corporateModernSection .sectionHeader .leadDescription,
.corporate-events-section .sectionHeader .leadDescription {
  font-size: 1.25rem;
  color: #64748b;
  margin-top: 1.5rem;
}
.corporateModernSection .swiper-slide,
.corporate-events-section .swiper-slide {
  padding-bottom: 2rem;
}
.corporateModernSection .eventSlider,
.corporate-events-section .eventSlider {
  padding-bottom: 2rem;
}
.corporateModernSection .corporateFeatureGrid,
.corporate-events-section .corporateFeatureGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5rem;
}
@media (max-width: 991px) {
  .corporateModernSection .corporateFeatureGrid,
  .corporate-events-section .corporateFeatureGrid {
    grid-template-columns: 1fr;
  }
}
.corporateModernSection .featureCard,
.corporate-events-section .featureCard {
  background: #fff;
  border-radius: 2rem;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s ease;
  height: 100%;
}
.corporateModernSection .featureCard:hover,
.corporate-events-section .featureCard:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}
.corporateModernSection .featureCard:hover .imageWrapper img,
.corporate-events-section .featureCard:hover .imageWrapper img {
  transform: scale(1.1);
}
.corporateModernSection .featureCard.featured,
.corporate-events-section .featureCard.featured {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.11);
  border: 1px solid rgba(255, 107, 53, 0.1);
}
.corporateModernSection .featureCard .imageBox,
.corporate-events-section .featureCard .imageBox {
  position: relative;
  height: 240px;
}
.corporateModernSection .featureCard .cardInfo,
.corporate-events-section .featureCard .cardInfo {
  padding: 2.5rem;
}
.corporateModernSection .featureCard .cardInfo .icon,
.corporate-events-section .featureCard .cardInfo .icon {
  width: 48px;
  height: 48px;
  background: rgba(255, 107, 53, 0.1);
  color: #FF6B35;
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
}
.corporateModernSection .featureCard .cardInfo h4,
.corporate-events-section .featureCard .cardInfo h4 {
  font-size: 1.5rem;
  font-weight: 800;
  margin-bottom: 1rem;
  color: #1e293b;
}
@media (max-width: 575px) {
  .corporateModernSection .featureCard .cardInfo h4,
  .corporate-events-section .featureCard .cardInfo h4 {
    font-size: 1.25rem;
  }
}
.corporateModernSection .featureCard .cardInfo p,
.corporate-events-section .featureCard .cardInfo p {
  font-size: 1rem;
  color: #64748b;
  line-height: 1.6;
}
@media (max-width: 575px) {
  .corporateModernSection .featureCard .cardInfo p,
  .corporate-events-section .featureCard .cardInfo p {
    font-size: 0.9rem;
  }
}
@media (max-width: 575px) {
  .corporateModernSection .featureCard .cardInfo,
  .corporate-events-section .featureCard .cardInfo {
    padding: 1.5rem;
  }
}

@keyframes float {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, -10px);
  }
}
@keyframes mesh-gradient {
  0% {
    transform: scale(1) translate(0, 0);
  }
  50% {
    transform: scale(1.05) translate(2%, 1%);
  }
  100% {
    transform: scale(1.1) translate(-2%, -2%);
  }
}
.kochiSection {
  padding: 60px 0;
}
.kochiSection .experienceGrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
.kochiSection .experienceGrid .experienceItem {
  text-align: center;
}
.kochiSection .experienceGrid .experienceItem .imageBox {
  position: relative;
  aspect-ratio: 1/1;
  border-radius: 2rem;
  overflow: hidden;
  margin-bottom: 1.5rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}
.kochiSection .experienceGrid .experienceItem .imageBox img {
  object-fit: cover;
  transition: transform 0.5s;
}
.kochiSection .experienceGrid .experienceItem:hover .imageBox img {
  transform: scale(1.1);
}
.kochiSection .experienceGrid .experienceItem span {
  font-size: 1.125rem;
  font-weight: 700;
  color: #1e293b;
}

.testimonialLuxeStrip {
  padding: 80px 0;
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}
.testimonialLuxeStrip .swiper-wrapper {
  align-items: center;
}
.testimonialLuxeStrip .stripCard {
  max-width: 1150px;
  align-items: center;
  margin: 0 auto;
  background: #fff;
  border-radius: 24px;
  padding: 40px;
  display: flex;
  align-items: center;
  gap: 50px;
  box-shadow: 0 10px 40px rgba(15, 23, 42, 0.04);
  position: relative;
  border: 1px solid rgba(226, 232, 240, 0.8);
}
.testimonialLuxeStrip .stripCard .travelerSide {
  flex: 0 0 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.testimonialLuxeStrip .stripCard .travelerSide .avatar {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid #8CC647;
  padding: 3px;
  background: #fff;
  box-shadow: 0 10px 20px rgba(20, 184, 166, 0.15);
  position: relative;
  margin-bottom: 1rem;
}
.testimonialLuxeStrip .stripCard .travelerSide .rating {
  color: #8CC647;
  display: flex;
  gap: 2px;
  justify-content: center;
}
.testimonialLuxeStrip .stripCard .travelerSide .clientDetails {
  margin-top: 0.5rem;
}
.testimonialLuxeStrip .stripCard .travelerSide .clientDetails h4 {
  font-size: 1rem;
  font-weight: 800;
  color: #0f172a;
  margin: 0;
  white-space: nowrap;
}
.testimonialLuxeStrip .stripCard .travelerSide .clientDetails p {
  font-size: 0.7rem;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin: 0;
}
.testimonialLuxeStrip .stripCard .divider {
  width: 1px;
  height: 100px;
  background: linear-gradient(to bottom, transparent, #e2e8f0, transparent);
  flex-shrink: 0;
}
.testimonialLuxeStrip .stripCard .lp-testimonialSlide {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 50px;
}
.testimonialLuxeStrip .stripCard .testimonialSwiper {
  flex: 1;
}
.testimonialLuxeStrip .stripCard .testimonialSwiper .reviewText {
  font-size: 1.125rem;
  line-height: 1.6;
  color: #334155;
  font-weight: 500;
  margin-bottom: 1.5rem;
  font-style: italic;
  position: relative;
}
.testimonialLuxeStrip .stripCard .testimonialSwiper .reviewText::before {
  content: '"';
  position: absolute;
  left: -20px;
  top: -10px;
  font-size: 3rem;
  color: #8CC647;
  opacity: 0.1;
  font-family: serif;
}
.testimonialLuxeStrip .stripCard .testimonialSwiper .meta {
  display: flex;
  flex-direction: column;
}
.testimonialLuxeStrip .stripCard .testimonialSwiper .meta h4 {
  font-size: 1.125rem;
  font-weight: 800;
  color: #0f172a;
  margin: 0 0 0.125rem;
}
.testimonialLuxeStrip .stripCard .testimonialSwiper .meta p {
  font-size: 0.75rem;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0;
}
.testimonialLuxeStrip .stripCard .navigation {
  position: absolute;
  bottom: 25px;
  right: 40px;
  display: flex;
  gap: 10px;
}
.testimonialLuxeStrip .stripCard .navigation .navBtn {
  width: 32px;
  height: 32px;
  border: 1px solid #e2e8f0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #94a3b8;
  transition: all 0.3s;
  cursor: pointer;
}
.testimonialLuxeStrip .stripCard .navigation .navBtn:hover {
  background: #8CC647;
  color: #fff;
  border-color: #8CC647;
}

@media (max-width: 992px) {
  .testimonialLuxeStrip .stripCard {
    max-width: 700px;
    padding: 30px;
    gap: 30px;
  }
}
@media (max-width: 768px) {
  .testimonialLuxeStrip {
    padding: 20px 10px;
  }
  .testimonialLuxeStrip .stripCard {
    flex-direction: column;
    gap: 12px;
    text-align: center;
    padding: 20px 16px 50px;
    border-radius: 16px;
  }
  .testimonialLuxeStrip .stripCard .travelerSide {
    flex: none;
    gap: 6px;
  }
  .testimonialLuxeStrip .stripCard .travelerSide .avatar {
    width: 50px;
    height: 50px;
    margin-bottom: 0.5rem;
  }
  .testimonialLuxeStrip .stripCard .travelerSide .rating {
    gap: 1px;
  }
  .testimonialLuxeStrip .stripCard .travelerSide .rating svg {
    width: 10px;
    height: 10px;
  }
  .testimonialLuxeStrip .stripCard .travelerSide .clientDetails {
    margin-top: 0.25rem;
  }
  .testimonialLuxeStrip .stripCard .travelerSide .clientDetails h4 {
    font-size: 0.85rem;
  }
  .testimonialLuxeStrip .stripCard .travelerSide .clientDetails p {
    font-size: 0.6rem;
  }
  .testimonialLuxeStrip .stripCard .divider {
    width: 60px;
    height: 1px;
    background: linear-gradient(to right, transparent, #e2e8f0, transparent);
  }
  .testimonialLuxeStrip .stripCard .testimonialSwiper {
    width: 100%;
    min-height: 80px;
  }
  .testimonialLuxeStrip .stripCard .testimonialSwiper .swiper-slide {
    height: auto !important;
  }
  .testimonialLuxeStrip .stripCard .testimonialSwiper .reviewText {
    font-size: 0.85rem;
    line-height: 1.5;
    margin-bottom: 0.75rem;
  }
  .testimonialLuxeStrip .stripCard .testimonialSwiper .reviewText::before {
    display: none;
  }
  .testimonialLuxeStrip .stripCard .navigation {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    bottom: 12px;
    gap: 6px;
  }
  .testimonialLuxeStrip .stripCard .navigation .navBtn {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 768px) {
  .testimonialMinimalist {
    padding: 60px 20px;
  }
  .testimonialMinimalist .testimonialCard {
    padding: 30px 20px;
  }
  .testimonialMinimalist .testimonialCard .reviewText {
    font-size: 1rem;
  }
}
@media (max-width: 1200px) {
  .testimonialSplit .splitLayout {
    grid-template-columns: 1fr;
  }
  .testimonialSplit .splitLayout .visualColumn {
    height: 400px;
  }
  .testimonialSplit .splitLayout .navColumn {
    height: auto;
    padding: 1.5rem;
  }
  .testimonialSplit .splitLayout .navColumn .navTrack {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .testimonialSplit .splitLayout .contentColumn {
    padding: 3rem 2rem;
  }
  .testimonialSplit .splitLayout .contentColumn h3 {
    font-size: 2rem;
  }
}
@media (max-width: 992px) {
  .testimonialCinematic .cinematicWrapper {
    margin: 0 1rem;
  }
  .testimonialCinematic .cinematicWrapper .cinematicSwiper .cinematicSlide {
    grid-template-columns: 1fr;
    gap: 3rem;
    text-align: center;
  }
  .testimonialCinematic .cinematicWrapper .cinematicSwiper .cinematicSlide .visualPart .imageDecor {
    height: 400px;
    transform: none !important;
  }
  .testimonialCinematic .cinematicWrapper .cinematicSwiper .cinematicSlide .narrativePart .quoteBody {
    font-size: 1.75rem;
  }
  .testimonialCinematic .cinematicWrapper .cinematicSwiper .cinematicSlide .narrativePart .authorSign .nameLine {
    justify-content: center;
  }
  .testimonialCinematic .cinematicWrapper .slideNavigation {
    position: relative;
    bottom: 0;
    transform: none;
    left: 0;
    margin-top: 2rem;
  }
  .testimonialCinematic .cinematicWrapper .slideNavigation .avatarTrack {
    width: 100%;
    overflow-x: auto;
    justify-content: flex-start;
    border-radius: 20px;
  }
}
.aboutSectionV2 {
  padding: 120px 0;
  background: #fff;
  overflow: hidden;
}
.aboutSectionV2 .premiumAboutGrid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 8rem;
  align-items: center;
}
@media (max-width: 1200px) {
  .aboutSectionV2 .premiumAboutGrid {
    gap: 4rem;
  }
}
@media (max-width: 991px) {
  .aboutSectionV2 .premiumAboutGrid {
    grid-template-columns: 1fr;
    gap: 5rem;
  }
}
.aboutSectionV2 .visualColumn {
  position: relative;
  padding: 40px;
}
.aboutSectionV2 .visualColumn .imageStack {
  position: relative;
  height: 600px;
  width: 100%;
}
@media (max-width: 768px) {
  .aboutSectionV2 .visualColumn .imageStack {
    height: 400px;
  }
}
.aboutSectionV2 .visualColumn .imageStack .imageLayer {
  position: absolute;
  border-radius: 2rem;
  overflow: hidden;
  box-shadow: 0 40px 80px rgba(0, 0, 0, 0.12);
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.aboutSectionV2 .visualColumn .imageStack .imageLayer img {
  transition: transform 0.8s ease;
}
.aboutSectionV2 .visualColumn .imageStack .imageLayer:hover img {
  transform: scale(1.05);
}
.aboutSectionV2 .visualColumn .imageStack .mainLayer {
  top: 0;
  left: 0;
  width: 85%;
  height: 100%;
  z-index: 1;
}
.aboutSectionV2 .visualColumn .imageStack .decorLayer {
  width: 45%;
  height: 45%;
  z-index: 2;
  border: 8px solid #fff;
}
.aboutSectionV2 .visualColumn .imageStack .decorLayer.top {
  top: -10%;
  right: 0;
}
.aboutSectionV2 .visualColumn .imageStack .decorLayer.bottom {
  bottom: 10%;
  right: -10%;
}
@media (max-width: 1200px) {
  .aboutSectionV2 .visualColumn .imageStack .decorLayer.bottom {
    right: 0;
  }
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard {
  position: absolute;
  bottom: -5%;
  left: -5%;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(20px);
  padding: 1.5rem 2.5rem;
  border-radius: 1.5rem;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.3);
  z-index: 3;
}
@media (max-width: 768px) {
  .aboutSectionV2 .visualColumn .imageStack .experienceCard {
    left: 0;
    padding: 1rem 1.5rem;
  }
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard .number {
  font-size: 3.5rem;
  font-weight: 800;
  color: #FF6B35;
  line-height: 1;
}
@media (max-width: 768px) {
  .aboutSectionV2 .visualColumn .imageStack .experienceCard .number {
    font-size: 2.5rem;
  }
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard .info {
  display: flex;
  flex-direction: column;
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard .info .title {
  font-size: 1.1rem;
  font-weight: 700;
  color: #0f172a;
  white-space: nowrap;
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard .info .subtitle {
  font-size: 0.85rem;
  color: #64748b;
  font-weight: 500;
}
.aboutSectionV2 .contentColumn .sectionIntro {
  margin-bottom: 2.5rem;
}
.aboutSectionV2 .contentColumn .sectionIntro .scriptTag {
  font-family: "Outfit", sans-serif;
  font-size: 1rem;
  font-weight: 800;
  color: #FF6B35;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  display: block;
  margin-bottom: 0.5rem;
  width: fit-content;
}
.aboutSectionV2 .contentColumn .sectionIntro .premiumHeading {
  font-size: 3.5rem;
  font-weight: 800;
  line-height: 1.1;
  color: #0f172a;
  letter-spacing: -0.03em;
}
.aboutSectionV2 .contentColumn .sectionIntro .premiumHeading span {
  color: #8CC647;
}
@media (max-width: 768px) {
  .aboutSectionV2 .contentColumn .sectionIntro .premiumHeading {
    font-size: 2.5rem;
  }
}
.aboutSectionV2 .contentColumn .mainDescription .lead {
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.5;
  color: #334155;
  margin-bottom: 2rem;
}
@media (max-width: 768px) {
  .aboutSectionV2 .contentColumn .mainDescription .lead {
    font-size: 1.15rem;
  }
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section {
  padding: 80px 0;
  position: relative;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .high-light {
  position: relative;
  z-index: 1;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .high-light::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 4px;
  width: 100%;
  height: 14px;
  background: rgba(140, 198, 71, 0.3);
  z-index: -1;
  border-radius: 4px;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .readMoreWrapper {
  max-width: 1000px;
  margin: 4rem auto 0;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .readmore-content .extraText {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .readmore-content.is-expanded .extraText {
  max-height: 1500px;
  opacity: 1;
  margin-top: 1.5rem;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .readmore-content p {
  font-size: 1.15rem;
  line-height: 1.8;
  color: #4b5563;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .readmore-content p.lead {
  font-size: 1.35rem;
  font-weight: 500;
  color: #1f2937;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .read-more-btn {
  display: inline-block;
  font-weight: 800;
  color: #FF6B35;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  cursor: pointer;
  padding: 0.75rem 0;
  border-bottom: 3px solid #FF6B35;
  transition: all 0.3s;
  font-size: 0.95rem;
}
.aboutSectionV2 .contentColumn .mainDescription .services-list.readmore-section .read-more-btn:hover {
  color: #8CC647;
  border-bottom-color: #8CC647;
  padding-bottom: 1rem;
}
.aboutSectionV2 .contentColumn .mainDescription .collapsibleContent p {
  font-size: 1.1rem;
  line-height: 1.8;
  color: #64748b;
  margin-bottom: 1.5rem;
}
.aboutSectionV2 .contentColumn .mainDescription .collapsibleContent .extraText {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.aboutSectionV2 .contentColumn .mainDescription .collapsibleContent.is-expanded .extraText {
  max-height: 1000px;
  opacity: 1;
  margin-top: 1.5rem;
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore {
  background: none;
  border: none;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 1rem;
  cursor: pointer;
  margin-top: 2rem;
  transition: all 0.3s;
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore .line {
  width: 40px;
  height: 2px;
  background: #FF6B35;
  transition: width 0.3s;
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore .text {
  font-size: 1rem;
  font-weight: 700;
  color: #FF6B35;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore svg {
  color: #FF6B35;
  transition: transform 0.3s;
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore svg.rotate {
  transform: rotate(90deg);
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore:hover .line {
  width: 60px;
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore:hover {
  gap: 1.5rem;
}
.aboutSectionV2 .contentColumn .trustFooter {
  margin-top: 4rem;
  padding-top: 3rem;
  border-top: 1px solid #f1f5f9;
  display: flex;
  gap: 3rem;
}
@media (max-width: 768px) {
  .aboutSectionV2 .contentColumn .trustFooter {
    flex-direction: column;
    gap: 1.5rem;
  }
}
.aboutSectionV2 .contentColumn .trustFooter .trustItem {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.aboutSectionV2 .contentColumn .trustFooter .trustItem span {
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
}

.mainFooter {
  padding: 120px 0 60px;
  background: #fdfdfd;
}
.mainFooter .footerWrapper {
  background: linear-gradient(165deg, #050810 0%, #0f172a 100%);
  position: relative;
  overflow: hidden;
  border-radius: 5rem;
  padding: 100px 80px 40px;
  color: #fff;
  box-shadow: 0 50px 120px rgba(0, 0, 0, 0.45);
  text-align: center;
}
@media (max-width: 992px) {
  .mainFooter .footerWrapper {
    padding: 70px 40px 40px;
    border-radius: 3.5rem;
  }
}
.mainFooter .footerWrapper::before {
  content: "";
  position: absolute;
  top: -15%;
  right: -5%;
  width: 800px;
  height: 800px;
  background: radial-gradient(circle, rgba(140, 198, 71, 0.05) 0%, transparent 70%);
  pointer-events: none;
  z-index: 1;
}
.mainFooter .footerWrapper .quotes {
  margin-bottom: 5rem;
  position: relative;
  z-index: 2;
}
.mainFooter .footerWrapper .quotes .quoteIconWrapper {
  margin-bottom: 2rem;
  display: flex;
  justify-content: center;
}
.mainFooter .footerWrapper .quotes .quoteIconWrapper .quote-img {
  opacity: 0.9;
  filter: brightness(0) invert(1);
  transform: scale(1.2);
}
.mainFooter .footerWrapper .quotes .quote-h3 {
  font-family: "Outfit", sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 2rem;
  color: #fff;
  display: block;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: -0.01em;
}
@media (max-width: 768px) {
  .mainFooter .footerWrapper .quotes .quote-h3 {
    font-size: 1.5rem;
  }
}
.mainFooter .footerWrapper .quotes .quote-h3 .typing-cursor {
  color: #8CC647;
  -webkit-text-fill-color: #8CC647;
  font-weight: 200;
  margin-left: 4px;
  animation: blink 1s step-end infinite;
}
@keyframes blink {
  from, to {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
.mainFooter .footerWrapper .quotes .quoteAuthorWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
}
.mainFooter .footerWrapper .quotes .quoteAuthorWrapper .authorLine {
  height: 1px;
  width: 40px;
  background: rgba(255, 255, 255, 0.2);
}
.mainFooter .footerWrapper .quotes .quoteAuthorWrapper .authorName {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.4);
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 700;
  margin: 0;
}
.mainFooter .footerWrapper .special-reveal-text {
  font-family: "Outfit", sans-serif;
  font-size: 0.875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  color: #FF6B35;
  margin-bottom: 1.25rem;
  display: block;
  position: relative;
  z-index: 2;
  opacity: 1;
}
@media (max-width: 767px) {
  .mainFooter .footerWrapper .special-reveal-text {
    font-size: 2rem;
  }
}
.mainFooter .footerWrapper .premium-title {
  font-size: 4rem;
  margin-bottom: 1.5rem;
  letter-spacing: -0.04em;
  position: relative;
  z-index: 2;
  line-height: 1;
}
@media (max-width: 768px) {
  .mainFooter .footerWrapper .premium-title {
    font-size: 2rem;
  }
}
.mainFooter .footerWrapper .premium-subtitle {
  font-size: 1.25rem;
  color: rgba(255, 255, 255, 0.45);
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3.5rem;
  line-height: 1.7;
  position: relative;
  z-index: 2;
}
.mainFooter .footerWrapper .cta-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
  position: relative;
  z-index: 2;
}
.mainFooter .footerWrapper .cta-container .luxeBtn.luxury {
  padding: 1.25rem 3rem;
  border-radius: 100px;
  font-weight: 800;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 1.05rem;
  letter-spacing: 0.5px;
}
.mainFooter .footerWrapper .cta-container .luxeBtn.luxury .cta-icon {
  transition: transform 0.4s ease;
}
.mainFooter .footerWrapper .cta-container .luxeBtn.luxury.primary {
  background: linear-gradient(90deg, #FF6B35 0%, #FB7F33 75%, #0472b4 100%);
  color: #fff;
  box-shadow: 0 15px 35px rgba(255, 107, 53, 0.25);
}
.mainFooter .footerWrapper .cta-container .luxeBtn.luxury.primary:hover {
  transform: translateY(-8px) scale(1.02);
  background: #FF6B35;
  box-shadow: 0 25px 50px rgba(255, 107, 53, 0.4);
}
.mainFooter .footerWrapper .cta-container .luxeBtn.luxury.primary:hover .cta-icon {
  transform: translate(3px, -3px);
}
.mainFooter .footerWrapper .cta-container .luxeBtn.luxury.outline {
  border: 2px solid rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(10px);
  color: #fff;
}
.mainFooter .footerWrapper .cta-container .luxeBtn.luxury.outline:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: #fff;
  transform: translateY(-8px);
}
.mainFooter .footerWrapper .footer-bottom-v2 {
  position: relative;
  z-index: 2;
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-links-row {
  padding-top: 4rem;
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-links-row .premium-footer-links {
  list-style: none;
  padding: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 3rem;
}
@media (max-width: 767px) {
  .mainFooter .footerWrapper .footer-bottom-v2 .footer-links-row .premium-footer-links {
    gap: 1.1rem;
  }
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-links-row .premium-footer-links li a {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  font-weight: 600;
  font-size: 1.05rem;
  transition: all 0.3s;
  letter-spacing: 0.5px;
}
@media (max-width: 767px) {
  .mainFooter .footerWrapper .footer-bottom-v2 .footer-links-row .premium-footer-links li a {
    font-size: 0.9rem;
  }
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-links-row .premium-footer-links li a:hover {
  color: #fff;
  text-shadow: 0 0 15px rgba(255, 255, 255, 0.3);
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-social-hub {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-social-hub .social-pill {
  width: 56px;
  height: 56px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media (max-width: 767px) {
  .mainFooter .footerWrapper .footer-bottom-v2 .footer-social-hub .social-pill {
    width: 40px;
    height: 40px;
  }
  .mainFooter .footerWrapper .footer-bottom-v2 .footer-social-hub .social-pill img,
  .mainFooter .footerWrapper .footer-bottom-v2 .footer-social-hub .social-pill svg {
    width: 15px;
    height: 15px;
  }
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-social-hub .social-pill:hover {
  background: #fff;
  color: #000;
  transform: translateY(-10px) rotate(8deg);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3);
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-copyright-v2 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}
.mainFooter .footerWrapper .footer-bottom-v2 .footer-copyright-v2 p {
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.3);
  font-weight: 500;
  margin: 0;
  letter-spacing: 0.5px;
  text-align: center;
}

.back-to-top-sticky {
  position: fixed;
  right: 10px;
  bottom: 10px;
  width: 50px;
  height: 50px;
  background: #0f172a;
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 9999;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px) scale(0.8);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4);
}
@media (max-width: 767px) {
  .back-to-top-sticky {
    display: none;
  }
}
.back-to-top-sticky {
  padding: 0;
}
.back-to-top-sticky.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}
.back-to-top-sticky .progress-circle {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.back-to-top-sticky .arrow-icon {
  color: #fff;
  transition: transform 0.3s ease;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(-45deg);
}
.back-to-top-sticky .arrow-icon svg {
  stroke-width: 2.5px;
}
.back-to-top-sticky:hover {
  transform: translateY(-8px) scale(1.1);
  background: #1e293b;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.5);
}
.back-to-top-sticky:hover .arrow-icon {
  transform: rotate(-45deg) translateY(-3px);
}
@media (max-width: 768px) {
  .back-to-top-sticky {
    right: 20px;
    bottom: 20px;
    width: 48px;
    height: 48px;
  }
  .back-to-top-sticky .progress-circle {
    width: 48px;
    height: 48px;
  }
  .back-to-top-sticky .arrow-icon svg {
    width: 20px !important;
    height: 20px !important;
  }
}

.sliderTitle {
  font-size: 2.75rem;
  font-weight: 600;
  color: #0f172a;
  font-family: "Outfit", sans-serif;
  letter-spacing: -0.02em;
}
@media (max-width: 768px) {
  .sliderTitle {
    font-size: 2rem;
    margin-bottom: 0 !important;
  }
}
.sliderTitle span {
  font-weight: 600;
}
.sliderTitle .highlight {
  color: #FF6B35;
}

.packageSlider {
  overflow: visible !important;
  position: relative;
}
.packageSlider .swiper-wrapper {
  display: flex;
  align-items: stretch;
}
.packageSlider .swiper-slide {
  height: auto;
  display: flex;
  flex-direction: column;
  padding-bottom: 2rem;
}
@media (max-width: 575px) {
  .packageSlider .swiper-slide {
    padding-bottom: 0;
  }
}
.packageSlider .swiper-button-next,
.packageSlider .swiper-button-prev {
  width: 2rem !important;
  height: 2rem !important;
  background-color: #fff !important;
  border-radius: 9999px !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06) !important;
  color: #0f172a !important;
  top: unset !important;
  bottom: 1px !important;
  transition: all 0.3s ease;
  z-index: 20;
  border: 1px solid #f1f5f9 !important;
  margin-top: 0 !important;
  padding: 10px !important;
}
.packageSlider .swiper-button-next::after,
.packageSlider .swiper-button-prev::after {
  font-size: 0.6rem !important;
  font-weight: 900 !important;
}
.packageSlider .swiper-button-next:hover,
.packageSlider .swiper-button-prev:hover {
  background-color: #FF6B35 !important;
  color: #fff !important;
  border-color: #FF6B35 !important;
  transform: scale(1.1);
}
.packageSlider .swiper-button-prev {
  left: auto !important;
  right: 3.5rem !important;
}
.packageSlider .swiper-button-next {
  right: 1rem !important;
  left: auto !important;
}
.packageSlider .swiper-pagination-progressbar {
  top: unset !important;
  bottom: 10px !important;
  height: 4px;
  background: #f1f5f9;
  border-radius: 9999px;
  overflow: hidden;
  width: calc(100% - 8rem) !important;
  left: 1rem !important;
  transform: none;
}
.packageSlider .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: linear-gradient(90deg, #FF6B35 0%, #FB7F33 75%, #0472b4 100%);
  border-radius: 9999px;
}

.packageCardSmall {
  background: #fff;
  border-radius: 1.5rem;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  transition: all 0.4s ease;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.packageCardSmall:hover .actionIcon {
  background: #FF6B35 !important;
  color: #fff !important;
}
.packageCardSmall:hover .actionIcon svg path {
  stroke: #FF6B35 !important;
}
.packageCardSmall .imageWrapper {
  position: relative;
  height: 160px;
  min-height: 160px;
  width: 100%;
  overflow: hidden;
}
.packageCardSmall .imageWrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.4) 0%, transparent 50%);
  pointer-events: none;
  z-index: 1;
}
.packageCardSmall .imageWrapper img {
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.packageCardSmall .imageWrapper .priceTag {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  z-index: 10;
  color: #0f172a;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  padding: 0.6rem 1.25rem;
  border-radius: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  align-self: flex-start;
}
.packageCardSmall .imageWrapper .priceTag .oldPrice {
  font-size: 0.75rem;
  text-decoration: line-through;
  color: rgba(255, 255, 255, 0.7019607843);
}
.packageCardSmall .imageWrapper .priceTag .currentPrice {
  font-size: 1.1rem;
  font-weight: 800;
  color: #fff;
}
.packageCardSmall .imageWrapper .priceTag .currentPrice small {
  color: #fff;
  font-size: 0.65rem;
  opacity: 0.8;
  margin-left: 2px;
}
.packageCardSmall .imageWrapper .wishlistBtn {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 10;
  width: 38px;
  height: 38px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(8px);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
}
.packageCardSmall .imageWrapper .wishlistBtn.selected {
  color: #ff0000 !important;
  background: #fff !important;
}
.packageCardSmall .imageWrapper .wishlistBtn:hover {
  background: #ff0000 !important;
  color: #fff !important;
  transform: scale(1.1);
}
.packageCardSmall .imageWrapper .ratingBadge {
  position: absolute;
  bottom: 1.25rem;
  right: 1rem;
  z-index: 10;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 12px;
  padding: 4px 10px;
  display: flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
.packageCardSmall .imageWrapper .ratingBadge span {
  color: #fff;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}
.packageCardSmall .imageWrapper .ratingBadge svg {
  color: #facc15;
}
.packageCardSmall .cardContent {
  padding: 1.5rem;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.packageCardSmall .cardContent .packageTitle {
  font-size: 1.125rem;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 0.5rem;
  line-height: 1.3;
  padding-right: 3rem;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 1.3em;
}
.packageCardSmall .cardContent .packageDuration {
  font-size: 0.875rem;
  color: #64748b;
  font-weight: 500;
  margin-top: 0;
  margin-bottom: 0;
  padding-right: 3rem;
}
.packageCardSmall .cardContent .actionIcon {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 0.75rem;
  background-color: #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #94a3b8;
  transition: all 0.3s ease;
}
.packageCardSmall .cardContent .actionIcon:hover {
  background-color: #FF6B35 !important;
  color: #fff !important;
}
.packageCardSmall .cardContent .actionIcon:hover svg path {
  stroke: #fff !important;
}
@media (max-width: 768px) {
  .packageCardSmall .cardContent {
    padding: 0.75rem 0.5rem;
  }
  .packageCardSmall .cardContent .packageTitle {
    font-size: 0.8rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
    overflow: hidden;
    white-space: normal;
    line-height: 1.2;
    color: #0f172a;
  }
  .packageCardSmall .cardContent .packageDuration {
    font-size: 0.8rem;
    display: none;
  }
  .packageCardSmall .cardContent .actionIcon {
    display: none;
  }
}
@media (max-width: 768px) {
  .packageCardSmall {
    border-radius: 1rem;
  }
  .packageCardSmall .imageWrapper {
    height: 140px;
    min-height: 190px;
  }
  .packageCardSmall .imageWrapper .priceTag {
    padding: 0.35rem 0.65rem;
    bottom: 0.5rem;
    left: 0.5rem;
    border-radius: 0.75rem;
  }
  .packageCardSmall .imageWrapper .priceTag .currentPrice {
    font-size: 0.95rem;
  }
  .packageCardSmall .imageWrapper .priceTag .oldPrice {
    font-size: 0.65rem;
  }
  .packageCardSmall .imageWrapper .wishlistBtn {
    top: 0.5rem;
    left: 0.5rem;
    width: 30px;
    height: 30px;
  }
  .packageCardSmall .imageWrapper .wishlistBtn svg {
    width: 14px;
    height: 14px;
  }
}

.packageCardKerala {
  position: relative;
  height: 380px;
  border-radius: 4px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: flex;
  flex-direction: column;
}
.packageCardKerala:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}
.packageCardKerala:hover .imageWrapper img {
  transform: scale(1.1);
}
.packageCardKerala img {
  transition: transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  z-index: 1;
}
.packageCardKerala .overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(to right, rgba(10, 15, 25, 0.7) 0%, rgba(10, 15, 25, 0.2) 60%, transparent 100%), linear-gradient(to top, rgba(10, 15, 25, 0.8) 0%, transparent 70%);
}
.packageCardKerala .ratingBadge {
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  z-index: 4;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  padding: 0.35rem 0.65rem;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  transition: all 0.4s ease;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}
.packageCardKerala .ratingBadge svg {
  color: #fbbf24;
  filter: drop-shadow(0 0 4px rgba(251, 191, 36, 0.3));
}
.packageCardKerala .ratingBadge:hover {
  background: #fff;
  color: #0f172a;
  transform: scale(1.05);
}
.packageCardKerala .cardContent {
  position: relative;
  z-index: 3;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1rem;
  color: #fff;
}
@media (max-width: 575px) {
  .packageCardKerala .cardContent {
    padding: 0.5rem;
  }
}
.packageCardKerala .cardContent .topSection .packageTitle {
  font-size: 1.75rem;
  font-weight: 500;
  color: #fff;
  margin-bottom: 0;
  line-height: 1.2;
  letter-spacing: 0.5px;
}
.packageCardKerala .cardContent .topSection .packageSubtitle {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 0.75rem;
}
.packageCardKerala .cardContent .topSection .packageDuration {
  font-size: 0.95rem;
  color: #fff;
  font-weight: 600;
  margin: 0;
}
.packageCardKerala .cardContent .bottomSection {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  z-index: 10;
  color: #0f172a;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  padding: 0.6rem 1.25rem;
  border-radius: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  align-self: flex-start;
}
.packageCardKerala .cardContent .bottomSection .oldPrice {
  font-size: 0.85rem;
  text-decoration: line-through;
  color: rgba(255, 255, 255, 0.7);
}
.packageCardKerala .cardContent .bottomSection .currentPrice {
  font-size: 1.35rem;
  font-weight: 800;
  color: #fff;
}
.packageCardKerala .cardContent .bottomSection .currentPrice small {
  font-size: 0.75rem;
  font-weight: 500;
  opacity: 0.9;
  margin-left: 2px;
}
@media (max-width: 768px) {
  .packageCardKerala .cardContent {
    padding: 0.8rem;
  }
  .packageCardKerala .cardContent .topSection .packageTitle {
    font-size: 1rem;
    font-weight: 700;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
    overflow: hidden;
    white-space: normal;
    line-height: 1.2;
  }
  .packageCardKerala .cardContent .topSection .packageSubtitle {
    font-size: 0.75rem;
    margin-bottom: 0.4rem;
  }
  .packageCardKerala .cardContent .topSection .packageDuration {
    font-size: 0.8rem;
  }
  .packageCardKerala .cardContent .bottomSection {
    padding: 0.2rem 0.5rem;
    border-radius: 10px;
  }
  .packageCardKerala .cardContent .bottomSection .currentPrice {
    font-size: 1.1rem !important;
  }
}
@media (max-width: 768px) {
  .packageCardKerala {
    height: 320px;
    border-radius: 4px;
  }
}

.packageCardLocation {
  cursor: pointer;
  transition: all 0.4s ease;
}
.packageCardLocation:hover .imageWrapper {
  border-color: #FF6B35;
}
.packageCardLocation:hover .imageWrapper img {
  transform: scale(1.1);
}
.packageCardLocation:hover .cardContent .locationTitle {
  color: #FF6B35;
}
.packageCardLocation:hover .cardContent .actionIcon {
  background: #FF6B35;
  color: #fff;
  transform: rotate(-15deg) scale(1.1);
  border-color: transparent;
}
.packageCardLocation .imageWrapper {
  position: relative;
  height: 320px;
  width: 100%;
  overflow: hidden;
  border-radius: 4px;
  margin-bottom: 1.25rem;
  border: 2px solid transparent;
  transition: all 0.4s ease;
}
.packageCardLocation .imageWrapper img {
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.packageCardLocation .imageWrapper .ratingBadge {
  position: absolute;
  bottom: 0.75rem;
  right: 0.75rem;
  z-index: 4;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(8px);
  border: 1px solid #f1f5f9;
  color: #0f172a;
  padding: 0.25rem 0.5rem;
  border-radius: 0.75rem;
  display: flex;
  align-items: center;
  gap: 2px;
  font-size: 0.65rem;
  font-weight: 800;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}
.packageCardLocation .imageWrapper .ratingBadge svg {
  color: #fbbf24;
  width: 10px;
  height: 10px;
}
.packageCardLocation .imageWrapper .ratingBadge:hover {
  background: #0f172a;
  color: #fff;
  transform: translateY(-2px);
}
.packageCardLocation .cardContent {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0.5rem;
}
.packageCardLocation .cardContent .locationTitle {
  font-size: 1.25rem;
  font-weight: 700;
  color: #0f172a;
  transition: color 0.3s ease;
}
.packageCardLocation .cardContent .actionIcon {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0f172a;
  border: 1px solid #e2e8f0;
  transition: all 0.4s ease;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
}

.bg-gradient-bottom {
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}

@media (max-width: 768px) {
  .sectionPadding {
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .sectionHeader {
    margin-bottom: 1.25rem !important;
  }
  .sectionHeader p {
    font-size: 0.8rem;
    line-height: 1.5;
    color: #64748b;
  }
  .sliderTitle {
    font-size: 1.5rem !important;
  }
  .heroSection {
    padding-bottom: 50px;
    padding-top: 20px;
  }
  .heroSection .heroBanner {
    padding-top: 0;
    height: 50vh;
    min-height: 260px;
    max-height: 380px;
    border-radius: 1rem;
    margin-top: 60px;
  }
  .heroSection .heroBanner .heroSwiper {
    border-radius: 1rem;
  }
  .heroSection .heroBanner .slideContent .contentOverlay {
    padding: 1.25rem;
  }
  .heroSection .heroBanner .slideContent .contentOverlay h1 {
    font-size: 1.75rem;
  }
  .heroSection .heroBanner .slideContent .contentOverlay .heroSubheading {
    font-size: 0.9rem;
    margin-bottom: 1.25rem;
  }
  .heroSection .heroBanner .slideContent .contentOverlay .heroPackageBtn {
    padding: 0.45rem 1.1rem;
    font-size: 0.8rem;
  }
  .heroSection .heroBanner .heroSearchWrapper {
    bottom: -1.5rem;
    transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1), background-color 0.4s ease, padding 0.4s ease, opacity 0.4s ease;
  }
  .heroSection .heroBanner .heroSearchWrapper .searchPill {
    padding: 0.35rem 0.35rem 0.35rem 1.25rem;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  }
  .heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea {
    gap: 10px;
  }
  .heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea .locationIcon {
    color: #64748b;
    width: 18px;
  }
  .heroSection .heroBanner .heroSearchWrapper .searchPill .inputArea input {
    font-size: 0.9rem;
    font-weight: 500;
  }
  .heroSection .heroBanner .heroSearchWrapper .searchPill .submitBtn {
    width: 2.75rem;
    height: 2.75rem;
    background: #FF6B35;
    box-shadow: 0 4px 10px rgba(255, 107, 53, 0.3);
  }
  .heroSection .heroBanner .heroSearchWrapper .searchPill .submitBtn svg {
    width: 18px;
    height: 18px;
  }
  .heroSection .heroBanner .heroSearchWrapper.is-sticky {
    position: fixed;
    top: 0;
    bottom: auto;
    left: 50%;
    transform: translateX(-50%) translateY(0);
    width: 100vw;
    height: auto;
    padding: 0.1rem 1rem;
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    z-index: 99999;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    animation: stickySearchGlide 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards;
  }
  .heroSection .heroBanner .heroSearchWrapper.is-sticky .searchPill {
    box-shadow: none;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    width: 100%;
    transition: all 0.4s ease;
  }
  .heroSection .heroBanner .heroSearchWrapper.is-sticky .searchPill .submitBtn {
    height: 2.5rem;
    width: 2.5rem;
    padding: 0;
  }
}
.stickyServices {
  display: none !important;
  padding: 0 0 1rem 0;
  margin-top: -30px;
  position: relative;
  z-index: 20;
}
.stickyServices .homeContainer {
  padding: 0;
}
.stickyServices .servicesBar {
  flex-direction: row;
  overflow-x: auto;
  gap: 1rem;
  padding: 0 1rem 0.5rem;
  justify-content: flex-start;
}
.stickyServices .servicesBar::-webkit-scrollbar {
  display: none;
}
.stickyServices .servicesBar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.stickyServices .barTitle {
  display: none;
}
.stickyServices .servicesGrid {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 0.75rem;
}
.stickyServices .servicesGrid .serviceItem {
  padding: 0.4rem 1rem;
  font-size: 0.85rem;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.04);
}

.packageCardSmall {
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.03);
}
.packageCardSmall .imageWrapper {
  height: 160px;
  border-radius: 12px 12px 0 0;
}
.packageCardSmall .cardContent {
  padding: 1rem 0.75rem;
}
.packageCardSmall .cardContent .packageTitle {
  font-size: 0.9rem;
  line-height: 1.3;
}

.packageCardKerala {
  height: 150px;
  border-radius: 12px;
}
@media (min-width: 768px) {
  .packageCardKerala {
    height: 200px;
  }
}
.packageCardKerala .cardContent .topSection .packageTitle {
  font-size: 1.2rem;
}
@media (max-width: 575px) {
  .packageCardKerala .cardContent .topSection .packageTitle {
    font-size: 1rem;
  }
}
.packageCardKerala .cardContent .topSection .packageSubtitle {
  font-size: 0.75rem;
  margin-bottom: 0.5rem;
}
.packageCardKerala .cardContent .topSection .packageDuration {
  font-size: 0.85rem;
}
.packageCardKerala .cardContent .bottomSection .oldPrice {
  font-size: 0.85rem;
}
.packageCardKerala .cardContent .bottomSection .currentPrice {
  font-size: 1.25rem;
}

.packageSlider .swiper-button-prev,
.packageSlider .swiper-button-next {
  display: none !important;
}
.packageSlider .swiper-pagination-progressbar {
  width: calc(100% - 2rem) !important;
  left: 1rem !important;
}

.corporateSection {
  padding: 80px 0;
}
.corporateSection .miceBackground {
  font-size: 40vw;
  top: 30%;
}
.corporateSection .corporateLayout {
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
}
.corporateSection .corporateLayout .visualCol {
  height: auto;
  margin-bottom: 2rem;
  display: block;
}
.corporateSection .corporateLayout .visualCol .mainImgWrapper {
  position: relative;
  width: 90%;
  height: 350px;
  margin: 0 auto;
}
.corporateSection .corporateLayout .visualCol .mainImgWrapper .mainImg {
  border-radius: 2rem;
}
.corporateSection .corporateLayout .visualCol .mainImgWrapper .experienceBadge {
  left: 50%;
  transform: translateX(-50%);
  bottom: -30px;
  padding: 1rem 1.5rem;
  width: max-content;
}
.corporateSection .corporateLayout .visualCol .secondaryImg {
  width: 180px;
  height: 250px;
  top: -20px;
  right: 0;
  border-width: 6px;
}
.corporateSection .corporateLayout .visualCol .tertiaryImg {
  width: 140px;
  height: 140px;
  bottom: -30px;
  right: 0;
  border-width: 5px;
}
.corporateSection .corporateLayout .contentCol {
  text-align: center;
}
.corporateSection .corporateLayout .contentCol .tagName {
  font-size: 2rem;
}
.corporateSection .corporateLayout .contentCol .sliderTitle {
  font-size: 2.25rem;
}
.corporateSection .corporateLayout .contentCol .description {
  font-size: 1rem;
}
.corporateSection .corporateLayout .contentCol .eventGrid {
  text-align: left;
  gap: 1.25rem;
}
.corporateSection .corporateLayout .contentCol .ctaArea {
  flex-direction: column;
  gap: 2rem;
}

.kochiSection {
  padding: 32px 0;
}
.kochiSection .experienceGrid {
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.kochiSection .experienceGrid .experienceItem .imageBox {
  border-radius: 12px;
  margin-bottom: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.kochiSection .experienceGrid .experienceItem span {
  font-size: 0.8rem;
  font-weight: 600;
}

.aboutSectionV2 {
  padding: 60px 0;
}
.aboutSectionV2 .premiumAboutGrid {
  gap: 3.5rem;
}
.aboutSectionV2 .visualColumn {
  padding: 0;
}
.aboutSectionV2 .visualColumn .imageStack {
  height: 320px;
}
.aboutSectionV2 .visualColumn .imageStack .imageLayer {
  border-radius: 1.25rem;
}
.aboutSectionV2 .visualColumn .imageStack .decorLayer {
  border-width: 4px;
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard {
  padding: 0.75rem 1.25rem;
  bottom: -10px;
  left: 10px;
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard .number {
  font-size: 2rem;
}
.aboutSectionV2 .visualColumn .imageStack .experienceCard .info .title {
  font-size: 0.85rem;
}
.aboutSectionV2 .contentColumn .sectionIntro {
  margin-bottom: 2rem;
  text-align: center;
}
.aboutSectionV2 .contentColumn .sectionIntro .scriptTag {
  font-size: 1.75rem;
  margin: 0 auto 0.5rem;
}
.aboutSectionV2 .contentColumn .sectionIntro .premiumHeading {
  font-size: 2.25rem;
}
.aboutSectionV2 .contentColumn .mainDescription {
  text-align: center;
}
.aboutSectionV2 .contentColumn .mainDescription .lead {
  font-size: 1.1rem;
  margin-bottom: 1.5rem;
}
.aboutSectionV2 .contentColumn .mainDescription .collapsibleContent p {
  font-size: 0.95rem;
}
.aboutSectionV2 .contentColumn .mainDescription .premiumReadMore {
  justify-content: center;
  margin: 1.5rem auto 0;
}
.aboutSectionV2 .contentColumn .trustFooter {
  margin-top: 3rem;
  padding-top: 2rem;
  align-items: center;
}

.readMoreSection {
  padding: 32px 0;
}
.readMoreSection .sectionHeader h2 {
  font-size: 1.35rem;
}

.firstMinuteCard {
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(0, 0, 0, 0.03);
}

.kochiCards {
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.02);
}
.kochiCards .imageWrapper {
  height: 150px;
  border-radius: 12px 12px 0 0;
}
.kochiCards .cardContent {
  padding: 12px;
}
.kochiCards .cardContent .locationTitle {
  font-size: 0.95rem;
}
.kochiCards .cardContent .actionIcon {
  width: 32px;
  height: 32px;
}
.kochiCards .cardContent .actionIcon svg {
  width: 14px;
  height: 14px;
}

.mainFooter {
  padding: 30px 0 20px;
}
.mainFooter .footerWrapper {
  border-radius: 1.25rem;
  padding: 24px 16px 16px;
}
.mainFooter .footerWrapper .footerBrandSection {
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.mainFooter .footerWrapper .footerBrandSection .footerLogo img {
  width: 120px;
}
.mainFooter .footerWrapper .footerBrandSection .quoteSection .quoteText {
  font-size: 1rem;
  line-height: 1.5;
  text-align: center;
}
.mainFooter .footerWrapper .footerBrandSection .quoteSection .quoteAuthor {
  text-align: center;
}
.mainFooter .footerWrapper .footerDivider {
  margin: 16px 0;
}
.mainFooter .footerWrapper .ctaSection {
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 16px;
}
.mainFooter .footerWrapper .ctaSection .ctaContent {
  text-align: center;
}
.mainFooter .footerWrapper .ctaSection .ctaContent .special-text {
  font-size: 0.6rem;
}
.mainFooter .footerWrapper .ctaSection .ctaContent .title {
  font-size: 1.2rem;
}
.mainFooter .footerWrapper .ctaSection .ctaContent .subtitle {
  font-size: 0.8rem;
}
.mainFooter .footerWrapper .ctaSection .btnGroup {
  justify-content: center;
}
.mainFooter .footerWrapper .ctaSection .btnGroup .luxeBtn {
  padding: 0.6rem 1rem;
  font-size: 0.8rem;
}
.mainFooter .footerWrapper .bottomLayer {
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 16px;
  align-items: center;
}
.mainFooter .footerWrapper .bottomLayer .linkColumns {
  gap: 1.5rem;
  width: 100%;
  text-align: center;
  justify-content: center;
  flex-direction: column;
}
.mainFooter .footerWrapper .bottomLayer .linkColumns .footerLinks li {
  margin-bottom: 0.4rem;
}
.mainFooter .footerWrapper .bottomLayer .linkColumns .footerLinks li a {
  font-size: 0.8rem;
}
.mainFooter .footerWrapper .bottomLayer .socialLinks {
  justify-content: center;
  width: 100%;
}
.mainFooter .footerWrapper .bottomLayer .socialLinks a {
  width: 32px;
  height: 32px;
}
.mainFooter .footerWrapper .bottomLayer .socialLinks a svg {
  width: 14px;
  height: 14px;
}
.mainFooter .footerWrapper .copyright {
  text-align: center;
}
.mainFooter .footerWrapper .copyright p {
  font-size: 0.65rem;
}

.services-list.readmore-section {
  background: #fff;
  position: relative;
}
.services-list.readmore-section .high-light {
  position: relative;
  z-index: 1;
  display: inline-block;
}
.services-list.readmore-section .high-light::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 4px;
  width: 100%;
  height: 12px;
  background: rgba(140, 198, 71, 0.25);
  z-index: -1;
  border-radius: 4px;
  transform: skewX(-15deg);
}
.services-list.readmore-section .readMoreWrapper {
  max-width: 960px;
  margin: 0 auto;
}
.services-list.readmore-section .readmore-content {
  transition: all 0.5s ease;
}
.services-list.readmore-section .readmore-content .extraText {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.services-list.readmore-section .readmore-content.is-expanded .extraText {
  max-height: 2000px;
  opacity: 1;
  margin-top: 1.5rem;
}
.services-list.readmore-section .readmore-content p {
  font-size: 1.15rem;
  line-height: 1.9;
  color: #4b5563;
  margin-bottom: 1.5rem;
}
.services-list.readmore-section .readmore-content p.lead {
  font-size: 1.4rem;
  font-weight: 500;
  color: #111827;
  margin-bottom: 2rem;
}
.services-list.readmore-section .read-more-btn {
  display: inline-block;
  font-weight: 800;
  color: #FF6B35;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  cursor: pointer;
  padding: 0.75rem 0;
  border-bottom: 3px solid transparent;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  font-size: 0.9rem;
  position: relative;
}
.services-list.readmore-section .read-more-btn::after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 40px;
  height: 3px;
  background: #FF6B35;
  transition: width 0.3s;
}
.services-list.readmore-section .read-more-btn:hover {
  color: #8CC647;
}
.services-list.readmore-section .read-more-btn:hover::after {
  width: 100%;
  background: #8CC647;
}

@keyframes stickySearchGlide {
  0% {
    transform: translateX(-50%) translateY(-100%);
    opacity: 0;
  }
  100% {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
  }
}
.sliderNavigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.5rem;
}
.sliderNavigation .progressWrapper {
  flex: 1;
  position: relative;
  height: 6px;
  background: #f1f5f9;
  border-radius: 10px;
  overflow: hidden;
}
.sliderNavigation .progressWrapper .customPagination {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.sliderNavigation .progressWrapper .customPagination.swiper-pagination-progressbar {
  background: transparent;
}
.sliderNavigation .progressWrapper .customPagination .swiper-pagination-progressbar-fill {
  background: linear-gradient(90deg, #FF6B35 0%, #FB7F33 75%, #0472b4 100%);
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(255, 107, 53, 0.2);
}
.sliderNavigation .navButtons {
  display: flex;
  gap: 1rem;
  flex-shrink: 0;
}
.sliderNavigation .navButtons .navBtn {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  color: #1e293b;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}
@media (max-width: 575px) {
  .sliderNavigation .navButtons .navBtn {
    width: 35px;
    height: 35px;
  }
}
.sliderNavigation .navButtons .navBtn svg {
  width: 20px;
  height: 20px;
  stroke-width: 1.5;
}
.sliderNavigation .navButtons .navBtn:hover {
  background: #FF6B35;
  border-color: #FF6B35;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgba(255, 107, 53, 0.3);
}
.sliderNavigation .navButtons .navBtn.swiper-button-disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}
@media (max-width: 768px) {
  .sliderNavigation {
    margin-top: 1.5rem;
    gap: 1.5rem;
  }
  .sliderNavigation .navBtn {
    width: 44px;
    height: 44px;
  }
  .sliderNavigation .navBtn svg {
    width: 18px;
    height: 18px;
  }
}

.img-box {
  margin-left: -23px;
}

span.breadcrumbGroup {
  display: flex;
}

button.wishlistBtn {
  display: flex;
  justify-content: flex-end;
}

.packageCardKerala button.wishlistBtn {
  justify-content: flex-end;
  display: flex;
  position: absolute;
  right: 6px;
}

.corporate-events-section .homeContainer,
.special-events-section .homeContainer,
.corporateModernSection .homeContainer,
.specialEventsSection .homeContainer,
.events-listing .homeContainer {
  overflow-x: hidden;
}
.corporate-events-section .packageCardSmall,
.special-events-section .packageCardSmall,
.corporateModernSection .packageCardSmall,
.specialEventsSection .packageCardSmall,
.events-listing .packageCardSmall {
  background: #fff !important;
  border-radius: 16px !important;
  overflow: hidden;
  display: flex !important;
  flex-direction: column !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  border: 1px solid #f1f5f9 !important;
  height: 100% !important;
}
.corporate-events-section .packageCardSmall:hover,
.special-events-section .packageCardSmall:hover,
.corporateModernSection .packageCardSmall:hover,
.specialEventsSection .packageCardSmall:hover,
.events-listing .packageCardSmall:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12) !important;
}
.corporate-events-section .packageCardSmall .imageWrapper,
.special-events-section .packageCardSmall .imageWrapper,
.corporateModernSection .packageCardSmall .imageWrapper,
.specialEventsSection .packageCardSmall .imageWrapper,
.events-listing .packageCardSmall .imageWrapper {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 3/2 !important;
  height: auto !important;
  margin: 0 !important;
}
.corporate-events-section .packageCardSmall .imageWrapper::after,
.special-events-section .packageCardSmall .imageWrapper::after,
.corporateModernSection .packageCardSmall .imageWrapper::after,
.specialEventsSection .packageCardSmall .imageWrapper::after,
.events-listing .packageCardSmall .imageWrapper::after {
  display: none !important;
}
.corporate-events-section .packageCardSmall .imageWrapper img,
.special-events-section .packageCardSmall .imageWrapper img,
.corporateModernSection .packageCardSmall .imageWrapper img,
.specialEventsSection .packageCardSmall .imageWrapper img,
.events-listing .packageCardSmall .imageWrapper img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
}
.corporate-events-section .packageCardSmall .imageWrapper .priceTag,
.special-events-section .packageCardSmall .imageWrapper .priceTag,
.corporateModernSection .packageCardSmall .imageWrapper .priceTag,
.specialEventsSection .packageCardSmall .imageWrapper .priceTag,
.events-listing .packageCardSmall .imageWrapper .priceTag {
  position: absolute !important;
  top: 0.75rem !important;
  left: 0.75rem !important;
  z-index: 10 !important;
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  z-index: 10;
  color: #0f172a;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  padding: 0.6rem 1.25rem;
  border-radius: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  background: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(8px);
  color: #0f172a !important;
  padding: 4px 10px !important;
  border-radius: 8px !important;
  font-size: 0.7rem !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
.corporate-events-section .packageCardSmall .imageWrapper .priceTag .currentPrice,
.special-events-section .packageCardSmall .imageWrapper .priceTag .currentPrice,
.corporateModernSection .packageCardSmall .imageWrapper .priceTag .currentPrice,
.specialEventsSection .packageCardSmall .imageWrapper .priceTag .currentPrice,
.events-listing .packageCardSmall .imageWrapper .priceTag .currentPrice {
  color: #0f172a !important;
}
.corporate-events-section .packageCardSmall .cardContent,
.special-events-section .packageCardSmall .cardContent,
.corporateModernSection .packageCardSmall .cardContent,
.specialEventsSection .packageCardSmall .cardContent,
.events-listing .packageCardSmall .cardContent {
  position: relative !important;
  background: #fff !important;
  padding: 1.15rem 1rem !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  flex: 1;
}
@media (max-width: 767px) {
  .corporate-events-section .packageCardSmall .cardContent,
  .special-events-section .packageCardSmall .cardContent,
  .corporateModernSection .packageCardSmall .cardContent,
  .specialEventsSection .packageCardSmall .cardContent,
  .events-listing .packageCardSmall .cardContent {
    padding: 10px 12px !important;
  }
}
.corporate-events-section .packageCardSmall .cardContent .packageTitle,
.corporate-events-section .packageCardSmall .cardContent .title,
.special-events-section .packageCardSmall .cardContent .packageTitle,
.special-events-section .packageCardSmall .cardContent .title,
.corporateModernSection .packageCardSmall .cardContent .packageTitle,
.corporateModernSection .packageCardSmall .cardContent .title,
.specialEventsSection .packageCardSmall .cardContent .packageTitle,
.specialEventsSection .packageCardSmall .cardContent .title,
.events-listing .packageCardSmall .cardContent .packageTitle,
.events-listing .packageCardSmall .cardContent .title {
  margin: 0 !important;
  font-size: 0.875rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  line-height: 1.3 !important;
  text-shadow: none !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}
@media (max-width: 767px) {
  .corporate-events-section .packageCardSmall .cardContent .packageTitle,
  .corporate-events-section .packageCardSmall .cardContent .title,
  .special-events-section .packageCardSmall .cardContent .packageTitle,
  .special-events-section .packageCardSmall .cardContent .title,
  .corporateModernSection .packageCardSmall .cardContent .packageTitle,
  .corporateModernSection .packageCardSmall .cardContent .title,
  .specialEventsSection .packageCardSmall .cardContent .packageTitle,
  .specialEventsSection .packageCardSmall .cardContent .title,
  .events-listing .packageCardSmall .cardContent .packageTitle,
  .events-listing .packageCardSmall .cardContent .title {
    font-size: 0.75rem !important;
  }
}
.corporate-events-section .packageCardSmall .cardContent p,
.special-events-section .packageCardSmall .cardContent p,
.corporateModernSection .packageCardSmall .cardContent p,
.specialEventsSection .packageCardSmall .cardContent p,
.events-listing .packageCardSmall .cardContent p {
  display: none !important;
}
.corporate-events-section .packageCardSmall .cardContent .actionIcon,
.special-events-section .packageCardSmall .cardContent .actionIcon,
.corporateModernSection .packageCardSmall .cardContent .actionIcon,
.specialEventsSection .packageCardSmall .cardContent .actionIcon,
.events-listing .packageCardSmall .cardContent .actionIcon {
  width: 34px !important;
  height: 34px !important;
  background: #f1f5f9 !important;
  color: #94a3b8 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.3s ease;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .corporate-events-section .packageCardSmall .cardContent .actionIcon,
  .special-events-section .packageCardSmall .cardContent .actionIcon,
  .corporateModernSection .packageCardSmall .cardContent .actionIcon,
  .specialEventsSection .packageCardSmall .cardContent .actionIcon,
  .events-listing .packageCardSmall .cardContent .actionIcon {
    width: 28px !important;
    height: 28px !important;
  }
}
.corporate-events-section .packageCardSmall .cardContent .actionIcon svg,
.special-events-section .packageCardSmall .cardContent .actionIcon svg,
.corporateModernSection .packageCardSmall .cardContent .actionIcon svg,
.specialEventsSection .packageCardSmall .cardContent .actionIcon svg,
.events-listing .packageCardSmall .cardContent .actionIcon svg {
  width: 18px !important;
  height: 18px !important;
  stroke: #94a3b8 !important;
  stroke-width: 2.5px !important;
}
@media (max-width: 767px) {
  .corporate-events-section .packageCardSmall .cardContent .actionIcon svg,
  .special-events-section .packageCardSmall .cardContent .actionIcon svg,
  .corporateModernSection .packageCardSmall .cardContent .actionIcon svg,
  .specialEventsSection .packageCardSmall .cardContent .actionIcon svg,
  .events-listing .packageCardSmall .cardContent .actionIcon svg {
    width: 14px !important;
    height: 14px !important;
  }
}

.firstMinuteOfferSection .packageCardSmall .packageTitle {
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  min-height: 2.6em !important;
}

.testimonialSection {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}
@media (max-width: 767px) {
  .testimonialSection {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
}
.testimonialSection .testimonialSwiper {
  padding: 2rem 1rem !important;
  margin: -2rem -1rem !important;
}
.testimonialSection .testimonialSwiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
}
.testimonialSection .testimonialSwiper .swiper-slide {
  height: auto;
  display: flex;
}
.testimonialSection .test-pagination {
  margin-top: 1.5rem !important;
}
.testimonialSection .test-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #cbd5e1;
  opacity: 1;
  transition: all 0.3s ease;
}
.testimonialSection .test-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #FF6B35;
  width: 24px;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(255, 107, 53, 0.45);
}
.testimonialSection .testimonialCard {
  background: #fff;
  padding: 1.25rem;
  border-radius: 1.25rem;
  border: 1px solid #f1f5f9;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.825rem;
  transition: all 0.4s ease;
  position: relative;
}
.testimonialSection .testimonialCard:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 107, 53, 0.2);
  box-shadow: 0 20px 40px -20px rgba(0, 0, 0, 0.1);
}
.testimonialSection .testimonialCard .quoteIcon {
  color: rgba(255, 107, 53, 0.2);
}
.testimonialSection .testimonialCard .testimonialText {
  font-size: 0.8rem;
  line-height: 1.5;
  color: #475569;
  font-style: italic;
  flex-grow: 1;
}
.testimonialSection .testimonialCard .authorArea {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: auto;
}
.testimonialSection .testimonialCard .authorArea .authorName {
  font-size: 0.9rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 2px;
}

.special-events-section .swiper-slide {
  padding-bottom: 2rem;
}

.internationalSection .homeContainer,
.domesticSection .homeContainer,
.intlDomesticSection .homeContainer,
.keralaTourSection .homeContainer,
.firstMinuteOfferSection .homeContainer {
  overflow-x: hidden;
}

.offerBannerSection {
  background: unset !important;
}

.aboutPage {
  padding-bottom: 100px;
  background-color: #fff;
}
.aboutPage .aboutCarouselWrap {
  margin-top: 40px;
  margin-bottom: 60px;
}
.aboutPage .aboutCarouselWrap .aboutSwiper {
  border-radius: 20px;
  height: 500px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .aboutPage .aboutCarouselWrap .aboutSwiper {
    height: 300px;
  }
}
.aboutPage .aboutCarouselWrap .aboutSlideImg {
  position: relative;
  width: 100%;
  height: 100%;
}
.aboutPage .aboutContentSection {
  margin-bottom: 80px;
}
.aboutPage .aboutContentSection .aboutBadge {
  display: inline-block;
  padding: 6px 16px;
  background: rgba(255, 213, 43, 0.15);
  color: rgb(170.5, 136.7216981132, 0);
  border-radius: 50px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.aboutPage .aboutContentSection .aboutContentGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 50px;
}
@media (max-width: 767px) {
  .aboutPage .aboutContentSection .aboutContentGrid {
    gap: 0;
  }
}
@media (min-width: 1024px) {
  .aboutPage .aboutContentSection .aboutContentGrid {
    grid-template-columns: 1.2fr 0.8fr;
  }
}
.aboutPage .aboutContentSection .aboutColLeft .aboutColHeading {
  font-size: clamp(1.8rem, 4vw, 2.5rem);
  font-weight: 800;
  color: #1a1a1a;
  line-height: 1.2;
  margin-bottom: 30px;
  letter-spacing: -0.5px;
}
.aboutPage .aboutContentSection .aboutColLeft .storyParagraphs p {
  font-size: 1.05rem;
  line-height: 1.7;
  color: #555;
  margin-bottom: 20px;
}
.aboutPage .aboutContentSection .aboutColRight .sideCard {
  background: #fdfdfd;
  border-radius: 30px;
  padding: 40px;
  border: 1px solid #f0f0f0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
}
.aboutPage .aboutContentSection .aboutColRight .aboutColText {
  font-size: 1rem;
  line-height: 1.6;
  color: #666;
  margin-bottom: 30px;
  font-style: italic;
}
.aboutPage .aboutContentSection .aboutColRight .aboutTalkBtn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 32px;
  background: #FF6B35;
  color: #fff;
  font-weight: 700;
  font-size: 0.95rem;
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.3s ease;
}
.aboutPage .aboutContentSection .aboutColRight .aboutTalkBtn:hover {
  box-shadow: 0 10px 20px rgba(255, 107, 53, 0.3);
  transform: translateY(-2px);
}
.aboutPage .valuesSection {
  padding: 80px 40px;
  background: #f9f9f9;
  border-radius: 40px;
  text-align: center;
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .aboutPage .valuesSection {
    padding: 60px 20px;
  }
}
.aboutPage .valuesSection .sectionTag {
  font-size: 12px;
  font-weight: 700;
  color: #1673B8;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 15px;
  display: block;
}
.aboutPage .valuesSection h2 {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  margin-bottom: 50px;
  color: #1a1a1a;
}
.aboutPage .valuesSection h2 span {
  color: #FF6B35;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  background: linear-gradient(120deg, #FFD52B 0%, #FF6B35 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.aboutPage .valuesSection .valuesGrid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 30px;
  max-width: 1100px;
  margin: 0 auto;
}
.aboutPage .valuesSection .valueItem {
  padding: 40px 30px;
  background: #fff;
  border-radius: 25px;
  border: 1px solid #eee;
  transition: all 0.3s ease;
}
.aboutPage .valuesSection .valueItem:hover {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
  transform: translateY(-5px);
}
.aboutPage .valuesSection .valueItem .iconCircle {
  width: 70px;
  height: 70px;
  background: rgba(22, 115, 184, 0.05);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 25px;
  color: #1673B8;
}
.aboutPage .valuesSection .valueItem h4 {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 12px;
  color: #1a1a1a;
}
.aboutPage .valuesSection .valueItem p {
  color: #777;
  font-size: 0.9rem;
  line-height: 1.5;
}
.aboutPage .aboutStatsRow {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-bottom: 80px;
}
@media (min-width: 768px) {
  .aboutPage .aboutStatsRow {
    grid-template-columns: repeat(4, 1fr);
  }
}
.aboutPage .aboutStatsRow .aboutStatItem {
  padding: 40px 20px;
  background: #fff;
  border-radius: 20px;
  border: 1px solid #f0f0f0;
  text-align: center;
}
.aboutPage .aboutStatsRow .aboutStatIcon {
  color: #FF6B35;
  margin-bottom: 15px;
  display: flex;
  justify-content: center;
}
.aboutPage .aboutStatsRow .aboutStatCount {
  font-size: 2rem;
  font-weight: 800;
  color: #1a1a1a;
  margin-bottom: 5px;
}
.aboutPage .aboutStatsRow .aboutStatLabel {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #888;
}
.aboutPage .planTripCta {
  padding: 80px 40px;
  background: #1a1a1a;
  border-radius: 40px;
  text-align: center;
  color: #fff;
}
.aboutPage .planTripCta h3 {
  font-size: clamp(1.4rem, 3vw, 2rem);
  font-weight: 700;
  margin-bottom: 30px;
}
.aboutPage .planTripCta .ctaBtn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 16px 36px;
  background: #FF6B35;
  color: #fff;
  font-weight: 700;
  border-radius: 12px;
  text-decoration: none;
  transition: all 0.3s ease;
}
.aboutPage .planTripCta .ctaBtn:hover {
  background: #fff;
  color: #FF6B35;
  transform: scale(1.03);
}

.policy ~ .footer-cta {
  display: none;
}
.policy ol li, .policy ul li {
  color: #0A1119;
  font-size: clamp(18px, 1.3vw, 24px);
}
.policy ol li {
  list-style: decimal;
}
.policy h1 {
  font-weight: 600;
}
.policy h3 {
  color: #0A1119;
  font-size: clamp(18px, 1.3vw, 24px);
  margin-bottom: clamp(10px, 1vw, 18px);
}
.policy p + h3, .policy li + li {
  margin-top: clamp(12px, 1.25vw, 24px);
}
.policy p a, .policy li a {
  color: #FFA600;
}

.contactPage {
  background: #f8fafc;
  padding-bottom: 6rem;
}
.contactPage .contactBody {
  padding-top: 5rem;
}
.contactPage .contactSplitGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
}
@media (min-width: 1024px) {
  .contactPage .contactSplitGrid {
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
    align-items: flex-start;
  }
}
.contactPage .contactInfoColumn .contactIntro {
  margin-bottom: 3rem;
}
.contactPage .contactInfoColumn .contactIntro .subLabel {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #FF6B35;
  margin-bottom: 1rem;
}
.contactPage .contactInfoColumn .contactIntro h2 {
  font-size: 2.5rem;
  font-weight: 900;
  color: #0f172a;
  line-height: 1.1;
  margin-bottom: 1rem;
}
.contactPage .contactInfoColumn .contactIntro h2 span {
  color: #64748b;
  font-weight: 700;
}
.contactPage .contactInfoColumn .contactIntro p {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  max-width: 90%;
}
.contactPage .contactInfoColumn .contactCards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-bottom: 3rem;
}
@media (min-width: 640px) {
  .contactPage .contactInfoColumn .contactCards {
    grid-template-columns: repeat(2, 1fr);
  }
}
.contactPage .contactInfoColumn .cCard {
  background: #fff;
  border-radius: 16px;
  padding: 1.5rem;
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
  border: 1px solid #e2e8f0;
  transition: all 0.3s;
}
.contactPage .contactInfoColumn .cCard:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
  border-color: #cbd5e1;
}
.contactPage .contactInfoColumn .cCard .cIcon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #fff;
}
.contactPage .contactInfoColumn .cCard .cIcon.red {
  background: linear-gradient(135deg, #ef4444, #dc2626);
}
.contactPage .contactInfoColumn .cCard .cIcon.green {
  background: linear-gradient(135deg, #10b981, #059669);
}
.contactPage .contactInfoColumn .cCard .cIcon.blue {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}
.contactPage .contactInfoColumn .cCard .cIcon.orange {
  background: linear-gradient(135deg, #f59e0b, #d97706);
}
.contactPage .contactInfoColumn .cCard .cDetails h3 {
  font-size: 1.1rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 0.5rem;
}
.contactPage .contactInfoColumn .cCard .cDetails p {
  font-size: 0.9rem;
  color: #475569;
  line-height: 1.5;
  margin: 0 0 0.25rem 0;
}
.contactPage .contactInfoColumn .cCard .cDetails p .hoverLink {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s;
}
.contactPage .contactInfoColumn .cCard .cDetails p .hoverLink:hover {
  color: #FF6B35;
}
.contactPage .contactInfoColumn .contactMapWrapper {
  width: 100%;
  height: 280px;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  border: 4px solid #fff;
  direction: ltr;
}
.contactPage .contactInfoColumn .contactMapWrapper iframe {
  width: 100%;
  height: 100%;
  background-color: #f1f5f9;
  filter: invert(0) contrast(1.1) saturate(1.2);
  transition: filter 0.3s;
}
.contactPage .contactInfoColumn .contactMapWrapper iframe:hover {
  filter: none;
}
.contactPage .contactFormColumn .formBox {
  background: #fff;
  border-radius: 24px;
  padding: 3rem 2.5rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  border: 1px solid #f1f5f9;
}
.contactPage .contactFormColumn .formBox h3 {
  font-size: 2rem;
  font-weight: 900;
  color: #0f172a;
  margin-bottom: 0.75rem;
}
.contactPage .contactFormColumn .formBox p {
  font-size: 0.95rem;
  color: #64748b;
  margin-bottom: 2.5rem;
  line-height: 1.6;
}
.contactPage .contactFormColumn .formRow {
  margin-bottom: 1.5rem;
}
.contactPage .contactFormColumn .formRow.split {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .contactPage .contactFormColumn .formRow.split {
    grid-template-columns: 1fr 1fr;
  }
}
.contactPage .contactFormColumn .inputGroup {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.contactPage .contactFormColumn .inputGroup label {
  font-size: 0.8rem;
  font-weight: 700;
  color: #334155;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.contactPage .contactFormColumn .inputGroup label span {
  color: #ef4444;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper .iIcon {
  position: absolute;
  left: 1rem;
  color: #94a3b8;
  pointer-events: none;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input {
  width: 100%;
  padding: 1rem 1rem 1rem 3rem;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  font-family: inherit;
  font-size: 0.95rem;
  color: #0f172a;
  background: #f8fafc;
  transition: all 0.3s;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input::placeholder {
  color: #94a3b8;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input:focus {
  outline: none;
  border-color: #FF6B35;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255, 107, 53, 0.1);
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input:focus + .iIcon {
  color: #FF6B35;
}
.contactPage .contactFormColumn .inputGroup textarea {
  width: 100%;
  padding: 1.25rem;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  font-family: inherit;
  font-size: 0.95rem;
  color: #0f172a;
  background: #f8fafc;
  transition: all 0.3s;
  resize: vertical;
}
.contactPage .contactFormColumn .inputGroup textarea::placeholder {
  color: #94a3b8;
}
.contactPage .contactFormColumn .inputGroup textarea:focus {
  outline: none;
  border-color: #FF6B35;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255, 107, 53, 0.1);
}
.contactPage .contactFormColumn .submitBtn {
  width: 100%;
  padding: 1.25rem;
  border: none;
  background: linear-gradient(135deg, #FF6B35, rgb(255, 69.6336633663, 2));
  color: #fff;
  font-size: 1rem;
  font-weight: 800;
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.3s;
  margin-top: 1rem;
  box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3);
}
.contactPage .contactFormColumn .submitBtn:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
}
.contactPage .contactFormColumn .submitBtn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.contactPage .contactFormColumn .submitBtn .flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.contactPage .contactFormColumn .spinner-small {
  width: 18px;
  height: 18px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
.contactPage .contactFormColumn .statusAlert {
  margin-top: 1.5rem;
  padding: 1rem;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 600;
  text-align: center;
}
.contactPage .contactFormColumn .statusAlert.success {
  background: #ecfdf5;
  color: #047857;
  border: 1px solid #a7f3d0;
}
.contactPage .contactFormColumn .statusAlert.error {
  background: #fef2f2;
  color: #b91c1c;
  border: 1px solid #fecaca;
}
.contactPage .contactFormColumn .trustBadge {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin-top: 2rem;
  padding: 1.5rem;
  background: #eff6ff;
  border: 1px dashed #bfdbfe;
  border-radius: 16px;
}
.contactPage .contactFormColumn .trustBadge .tbIcon {
  color: #3b82f6;
  flex-shrink: 0;
}
.contactPage .contactFormColumn .trustBadge strong {
  display: block;
  font-size: 0.9rem;
  color: #1e3a8a;
  margin-bottom: 0.25rem;
}
.contactPage .contactFormColumn .trustBadge p {
  font-size: 0.8rem;
  color: #60a5fa;
  margin: 0;
}

/* ── Main Services Page ── */
.servicesPage {
  padding-top: 0;
  padding-bottom: 5rem;
  background-color: #fff;
}
.servicesPage .homeContainer {
  padding-top: 3.5rem;
}

.servicesGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-bottom: 4rem;
}
@media (min-width: 768px) {
  .servicesGrid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.serviceCard {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 2rem 1.5rem;
  background: #f8fafc;
  border-radius: 1.5rem;
  border: 1px solid #f1f5f9;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
.serviceCard:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.07);
  border-color: rgba(255, 107, 53, 0.2);
}
.serviceCard:hover .serviceIconWrap {
  background: rgba(255, 107, 53, 0.08);
}

.serviceIconWrap {
  width: 72px;
  height: 72px;
  border-radius: 1rem;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
  transition: background 0.3s ease;
}
.serviceIconWrap img {
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.serviceTitle {
  font-size: 1rem;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 0.5rem;
  letter-spacing: -0.01em;
}

.serviceDesc {
  font-size: 0.85rem;
  color: #64748b;
  line-height: 1.6;
  flex: 1;
}

.serviceLink {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  margin-top: 1rem;
  font-size: 0.78rem;
  font-weight: 700;
  color: #FF6B35;
  text-decoration: none;
  letter-spacing: 0.02em;
  transition: gap 0.2s ease;
}
.serviceLink:hover {
  gap: 0.6rem;
}

/* ── Sub-services section (Houseboat / Taxi) ── */
.subServicesSection {
  border-top: 1px solid #f1f5f9;
  padding-top: 3rem;
}

.subServicesHeading {
  font-size: 1.25rem;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: -0.02em;
  margin-bottom: 1.5rem;
}

.subServicesGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .subServicesGrid {
    grid-template-columns: 1fr 1fr;
  }
}

.subServiceCard {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 2rem;
  background: #0f172a;
  border-radius: 1.5rem;
  text-decoration: none;
  color: #fff;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  position: relative;
  overflow: hidden;
}
.subServiceCard::before {
  content: "";
  position: absolute;
  top: -40px;
  right: -40px;
  width: 120px;
  height: 120px;
  background: rgba(255, 107, 53, 0.15);
  border-radius: 9999px;
  filter: blur(30px);
  pointer-events: none;
}
.subServiceCard:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}
.subServiceCard:hover .subServiceCta {
  gap: 0.6rem;
}
.subServiceCard .subServiceTag {
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #FF6B35;
  margin-bottom: 0.25rem;
}
.subServiceCard h3 {
  font-size: 1.2rem;
  font-weight: 800;
  color: #fff;
  letter-spacing: -0.02em;
}
.subServiceCard p {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.6;
  margin-bottom: 0.75rem;
  flex: 1;
}
.subServiceCard .subServiceCta {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: #FF6B35;
  transition: gap 0.2s ease;
}

/* ── Sub-service Detail Page (Houseboat / Taxi) ── */
.subServicePage {
  padding-bottom: 5rem;
}

.subServiceContent {
  padding-top: 3.5rem;
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.subServiceIntro {
  max-width: 680px;
}
.subServiceIntro h2 {
  font-size: 1.75rem;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: -0.02em;
  margin-bottom: 1.25rem;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .subServiceIntro h2 {
    font-size: 2.25rem;
  }
}
.subServiceIntro h2 span {
  color: #FF6B35;
}
.subServiceIntro p {
  font-size: 1rem;
  color: #64748b;
  line-height: 1.8;
  margin-bottom: 1rem;
}

.subServiceCTA {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-top: 1rem;
  padding: 0.8rem 2rem;
  background: #FF6B35;
  color: #fff;
  font-weight: 700;
  font-size: 0.9rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3);
}
.subServiceCTA:hover {
  filter: brightness(1.08);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(255, 107, 53, 0.4);
}

.subServiceHighlights {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .subServiceHighlights {
    grid-template-columns: repeat(3, 1fr);
  }
}
.subServiceHighlights .highlightCard {
  padding: 2rem;
  background: #f8fafc;
  border: 1px solid #f1f5f9;
  border-radius: 1.25rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.subServiceHighlights .highlightCard:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.07);
}
.subServiceHighlights .highlightCard .highlightIcon {
  width: 48px;
  height: 48px;
  background: rgba(255, 107, 53, 0.1);
  color: #FF6B35;
  border-radius: 0.875rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
}
.subServiceHighlights .highlightCard h4 {
  font-size: 0.95rem;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 0.4rem;
}
.subServiceHighlights .highlightCard p {
  font-size: 0.85rem;
  color: #64748b;
  line-height: 1.6;
}

.subServiceBack .backLink {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: #94a3b8;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: color 0.2s ease;
}
.subServiceBack .backLink:hover {
  color: #FF6B35;
}

.packagesPage {
  padding-top: 8rem;
  padding-bottom: 6rem;
  background-color: #f8fafc;
}
.packagesPage .headerRow {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-bottom: 5rem;
}
@media (min-width: 768px) {
  .packagesPage .headerRow {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
  }
}
.packagesPage .headerRow .headerContent {
  max-width: 36rem;
}
.packagesPage .headerRow .headerContent .subTitle {
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #FF6B35;
  margin-bottom: 1rem;
  display: inline-block;
}
.packagesPage .headerRow .headerContent h1 {
  font-size: 2.25rem;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.1;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .packagesPage .headerRow .headerContent h1 {
    font-size: 3.75rem;
  }
}
.packagesPage .headerRow .headerContent h1 span {
  color: #94a3b8;
  font-weight: 500;
}
.packagesPage .headerRow .filterGroup {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
}
.packagesPage .headerRow .filterGroup button {
  padding: 0.75rem 2rem;
  border-radius: 0.75rem;
  font-weight: 700;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  transition: all 0.2s;
  border: none;
  cursor: pointer;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.packagesPage .headerRow .filterGroup button.active {
  background-color: #FF6B35;
  color: #000;
  box-shadow: 0 10px 15px -3px rgba(255, 107, 53, 0.1);
}
.packagesPage .headerRow .filterGroup button:not(.active) {
  background-color: #fff;
  color: #94a3b8;
}
.packagesPage .headerRow .filterGroup button:not(.active):hover {
  color: #0f172a;
}
.packagesPage .loadingWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10rem 0;
}
.packagesPage .loadingWrapper .spinner {
  width: 4rem;
  height: 4rem;
  border: 4px solid #f1f5f9;
  border-top: 4px solid #FF6B35;
  border-radius: 9999px;
  animation: spin 1s linear infinite;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
.packagesPage .packagesGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
@media (min-width: 768px) {
  .packagesPage .packagesGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .packagesPage .packagesGrid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.packagesPage .packagesGrid .packageItem {
  background-color: #fff;
  border-radius: 32px;
  overflow: hidden;
  transition: all 0.5s;
  border: 1px solid #f1f5f9;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.packagesPage .packagesGrid .packageItem:hover {
  transform: translateY(-1rem);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
.packagesPage .packagesGrid .packageItem:hover h3 {
  color: #FF6B35;
}
.packagesPage .packagesGrid .packageItem .imageArea {
  aspect-ratio: 4/3;
  position: relative;
  overflow: hidden;
  background-color: #f1f5f9;
  padding: 0.75rem;
}
.packagesPage .packagesGrid .packageItem .imageArea .placeholder {
  position: absolute;
  inset: 0;
  background-color: #e2e8f0;
  border-radius: 1rem;
  transition: transform 0.7s;
}
.packagesPage .packagesGrid .packageItem .imageArea .durationBadge {
  position: absolute;
  top: 2rem;
  left: 2rem;
  padding: 0.75rem 1.25rem;
  background-color: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  border-radius: 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  z-index: 10;
}
.packagesPage .packagesGrid .packageItem .imageArea .durationBadge span {
  color: #FF6B35;
  font-weight: 800;
  font-size: 1.125rem;
  line-height: 1;
}
.packagesPage .packagesGrid .packageItem .imageArea .priceBadge {
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  padding: 0.75rem 1.5rem;
  background-color: rgba(15, 23, 42, 0.9);
  backdrop-filter: blur(4px);
  color: #fff;
  border-radius: 1rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.2);
  z-index: 10;
}
.packagesPage .packagesGrid .packageItem .imageArea .priceBadge .label {
  font-size: 10px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 0.25rem;
  line-height: 1;
  font-style: italic;
}
.packagesPage .packagesGrid .packageItem .imageArea .priceBadge .price {
  font-size: 1.25rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  line-height: 1;
}
.packagesPage .packagesGrid .packageItem .contentArea {
  padding: 2.5rem;
}
.packagesPage .packagesGrid .packageItem .contentArea .locRow {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1rem;
}
.packagesPage .packagesGrid .packageItem .contentArea .locRow svg {
  color: #FF6B35;
}
.packagesPage .packagesGrid .packageItem .contentArea h3 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 1.5rem;
  letter-spacing: -0.025em;
  transition: color 0.2s;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.packagesPage .packagesGrid .packageItem .contentArea .tagsRow {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 2rem;
}
.packagesPage .packagesGrid .packageItem .contentArea .tagsRow .tag {
  padding: 0.25rem 0.75rem;
  background-color: #f9fafb;
  font-size: 10px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  border-radius: 0.5rem;
}
.packagesPage .packagesGrid .packageItem .contentArea .detailsBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 1.25rem;
  background-color: #0f172a;
  color: #fff;
  font-weight: 700;
  border-radius: 1rem;
  transition: all 0.3s;
  text-decoration: none;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
}
.packagesPage .packagesGrid .packageItem .contentArea .detailsBtn:hover {
  background-color: #FF6B35;
  color: #000;
}
.packagesPage .packagesGrid .packageItem .contentArea .detailsBtn:hover svg {
  transform: translateX(0.5rem);
}
.packagesPage .packagesGrid .packageItem .contentArea .detailsBtn:active {
  transform: scale(0.95);
}
.packagesPage .packagesGrid .packageItem .contentArea .detailsBtn svg {
  transition: transform 0.2s;
}
.packagesPage .notFound {
  text-align: center;
  padding: 10rem 0;
}
.packagesPage .notFound .icon {
  font-size: 3.75rem;
  margin-bottom: 1.5rem;
}
.packagesPage .notFound h3 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #9ca3af;
  font-style: italic;
  font-weight: 500;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.filterGroup select {
  border: 1px solid #0972b8;
  border-radius: 15px;
  padding: 5px 10px;
}

.packageDetailPage {
  padding-top: 0;
  background-color: #fbfdfe;
  font-family: "Outfit", sans-serif;
  color: #0f172a;
}
.packageDetailPage .tourStatsRow {
  position: relative;
  margin-top: -60px;
  z-index: 50;
}
.packageDetailPage .tourStatsRow .tourStatsGrid {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  padding: 1rem 2rem;
  border-radius: 1.5rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.8);
}
@media (max-width: 1024px) {
  .packageDetailPage .tourStatsRow .tourStatsGrid {
    flex-direction: column;
    padding: 2.5rem 2rem;
    gap: 2.5rem;
    border-radius: 2rem;
    margin-top: -40px;
  }
}
.packageDetailPage .tourStatsRow .tStat {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
}
@media (max-width: 1024px) {
  .packageDetailPage .tourStatsRow .tStat {
    width: 100%;
    border: none !important;
    padding: 0 !important;
    align-items: center;
    text-align: center;
  }
}
.packageDetailPage .tourStatsRow .tStat .tLabel {
  font-size: 10px;
  font-weight: 900;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}
.packageDetailPage .tourStatsRow .tStat .tValue {
  font-size: 1.2rem;
  font-weight: 950;
  color: #0f172a;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-style: italic;
}
.packageDetailPage .tourStatsRow .tStat .tValue svg {
  color: #ff5a3d;
}
.packageDetailPage .tourStatsRow .tStat .tValue.priceValue {
  color: #ff5a3d;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: -0.02em;
}
.packageDetailPage .mainContent {
  padding: 4rem 0;
}
.packageDetailPage .mainContent .contentGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}
@media (min-width: 1200px) {
  .packageDetailPage .mainContent .contentGrid {
    grid-template-columns: 1fr 380px;
    gap: 5rem;
  }
}
.packageDetailPage .mainContent .detailsCol .sectionTitle {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 1.5rem;
  letter-spacing: -0.01em;
  line-height: 1.3;
  text-transform: none;
}
.packageDetailPage .mainContent .detailsCol .sectionTitle::after {
  content: "";
  display: block;
  width: 40px;
  height: 4px;
  background: #ff5a3d;
  border-radius: 2px;
  margin-top: 0.75rem;
}
.packageDetailPage .mainContent .detailsCol .overviewBox {
  margin-bottom: 2rem;
}
.packageDetailPage .mainContent .detailsCol .overviewBox h2 {
  font-size: 1.5rem;
  font-weight: 800;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: #0f172a;
  text-transform: none;
}
.packageDetailPage .mainContent .detailsCol .overviewBox h2 svg {
  color: #ff5a3d;
  width: 22px;
  height: 22px;
}
.packageDetailPage .mainContent .detailsCol .overviewBox h2::after {
  display: none;
}
.packageDetailPage .mainContent .detailsCol .overviewBox .description {
  font-size: 1.1rem;
  line-height: 1.8;
  color: #475569;
  font-weight: 400;
  margin-bottom: 1rem;
  white-space: pre-line;
}
.packageDetailPage .mainContent .detailsCol .overviewBox .description p {
  margin-bottom: 1.5rem;
}
.packageDetailPage .mainContent .detailsCol .overviewBox .amenitiesGrid {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  padding: 0;
}
.packageDetailPage .mainContent .detailsCol .overviewBox .amenitiesGrid .amenity {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  transition: all 0.3s ease;
}
.packageDetailPage .mainContent .detailsCol .overviewBox .amenitiesGrid .amenity .iconBox {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 90, 61, 0.05);
  color: #ff5a3d;
  border-radius: 0.75rem;
}
.packageDetailPage .mainContent .detailsCol .overviewBox .amenitiesGrid .amenity .iconBox svg {
  width: 20px;
  height: 20px;
}
.packageDetailPage .mainContent .detailsCol .overviewBox .amenitiesGrid .amenity span {
  font-size: 0.9rem;
  font-weight: 700;
  color: #0f172a;
  margin-top: 0.5rem;
}
.packageDetailPage .mainContent .detailsCol .highlightsGrid {
  display: grid;
  gap: 1rem;
  margin-bottom: 2rem;
}
.packageDetailPage .mainContent .detailsCol .highlightsGrid .highlightItem {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}
.packageDetailPage .mainContent .detailsCol .highlightsGrid .highlightItem .checkIcon {
  width: 1.5rem;
  height: 1.5rem;
  color: #ff5a3d;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  margin-top: 2px;
}
.packageDetailPage .mainContent .detailsCol .highlightsGrid .highlightItem span {
  font-size: 1rem;
  font-weight: 500;
  color: #334155;
  line-height: 1.5;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  padding-left: 4rem;
  position: relative;
}
@media (max-width: 768px) {
  .packageDetailPage .mainContent .detailsCol .itineraryTimeline {
    padding-left: 2.25rem;
    gap: 2rem;
  }
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline::before {
  content: "";
  position: absolute;
  left: 1.5rem;
  top: 0.5rem;
  bottom: 0.5rem;
  width: 2px;
  background: linear-gradient(to bottom, #ff5a3d, #f1f5f9);
  border-radius: 4px;
}
@media (max-width: 768px) {
  .packageDetailPage .mainContent .detailsCol .itineraryTimeline::before {
    left: 0.75rem;
  }
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem {
  position: relative;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .dot {
  position: absolute;
  left: -2.5rem;
  top: 0.25rem;
  width: 1rem;
  height: 1rem;
  background: #fff;
  border: 3px solid #ff5a3d;
  border-radius: 50%;
  z-index: 2;
}
@media (max-width: 768px) {
  .packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .dot {
    left: -1.75rem;
    width: 0.875rem;
    height: 0.875rem;
  }
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .dayLabel {
  font-size: 12px;
  font-weight: 1000;
  color: #ff5a3d;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  margin-bottom: 0.75rem;
  font-style: italic;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem h4 {
  font-size: 1.15rem;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 0.75rem;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 992px) {
  .packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid {
    gap: 3rem;
    grid-template-columns: 1.2fr 1fr;
  }
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid p {
  color: #475569;
  font-size: 1.1rem;
  line-height: 1.8;
  font-weight: 500;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .dayAmenities {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1.5rem;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .dayAmenities .dayAmenityBadge {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  background-color: #fffaf9;
  border: 1px solid #ffedea;
  border-radius: 50px;
  padding: 0.4rem 1.1rem 0.4rem 0.6rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .dayAmenities .dayAmenityBadge:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(255, 90, 61, 0.08); /* cosmic orange tint */
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .dayAmenities .dayAmenityBadge .amIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 10px;
  color: #ff5a3d;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .dayAmenities .dayAmenityBadge .amIcon svg {
  width: 24px;
  height: 24px;
  stroke-width: 2px;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .dayAmenities .dayAmenityBadge .amLabel {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #1e293b;
  margin-top: 2px;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .itineraryImage {
  position: relative;
  border-radius: 1.5rem;
  overflow: hidden;
  border: 4px solid #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  transition: all 0.5s ease;
}
.packageDetailPage .mainContent .detailsCol .itineraryTimeline .timelineItem .activityGrid .itineraryImage:hover {
  transform: translateY(-10px) rotate(-1deg);
}
.packageDetailPage .mainContent .bookingCol .bookingCard {
  position: sticky;
  top: 100px;
  padding: 2rem;
  border-radius: 1.5rem;
  background: #fff;
  border: 1px solid #f1f5f9;
  box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.05);
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 1.5rem;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-price-row .bk-price-stack {
  display: flex;
  flex-direction: column;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-price-row .bk-price-stack .bk-price-val {
  font-size: 2rem;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: -0.05em;
  line-height: 1.1;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-price-row .bk-price-stack .bk-price-label {
  font-size: 0.75rem;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-top: 0.25rem;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-price-row .bk-rating {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  color: #0ea5e9;
  font-weight: 700;
  color: #0f172a;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-price-row .bk-rating span {
  margin-left: 2px;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-price-row .bk-rating svg {
  color: #0ea5e9;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-stats {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2rem;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-stats .bk-stat-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: #f8fafc;
  border: 1px solid #f1f5f9;
  padding: 1rem;
  border-radius: 1rem;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-stats .bk-stat-item .bk-icon {
  color: #0ea5e9;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-stats .bk-stat-item .bk-stat-content {
  display: flex;
  flex-direction: column;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-stats .bk-stat-item .bk-stat-content .bk-stat-label {
  font-size: 0.65rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #94a3b8;
  line-height: 1;
  margin-bottom: 0.25rem;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-stats .bk-stat-item .bk-stat-content .bk-stat-val {
  font-size: 0.875rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.2;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .ctaGroup {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .ctaGroup .bk-btn {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.25rem;
  border-radius: 1rem;
  font-size: 0.85rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  transition: all 0.3s ease;
  cursor: pointer;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .ctaGroup .bk-btn-primary {
  background: #ff4742;
  color: #fff;
  border: none;
  box-shadow: 0 4px 14px 0 rgba(255, 71, 66, 0.39);
}
.packageDetailPage .mainContent .bookingCol .bookingCard .ctaGroup .bk-btn-primary:hover {
  background: #e53e39;
  transform: translateY(-2px);
}
.packageDetailPage .mainContent .bookingCol .bookingCard .ctaGroup .bk-btn-secondary {
  background: #fff;
  color: #0f172a;
  border: 2px solid #e2e8f0;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .ctaGroup .bk-btn-secondary:hover {
  background: #f8fafc;
  border-color: #cbd5e1;
}
.packageDetailPage .mainContent .bookingCol .bookingCard .bk-note {
  text-align: center;
  font-size: 0.65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #94a3b8;
  margin-top: 1.5rem;
}

.tour-description-content h3 {
  font-size: 1.5rem;
  font-weight: 950;
  margin: 2rem 0 1rem;
  color: #0f172a;
}
.tour-description-content ul {
  list-style: none;
  margin-left: 0;
  margin: 1.5rem;
  padding: 0;
}
.tour-description-content ul li {
  position: relative;
  padding-left: 2.25rem;
  margin-bottom: 1.25rem;
  color: #475569;
  line-height: 1.7;
  font-weight: 500;
}
.tour-description-content ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.25rem;
  width: 1.5rem;
  height: 1.5rem;
  background-color: rgba(255, 90, 61, 0.1);
  border-radius: 50%;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%23ff5a3d" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>');
  background-repeat: no-repeat;
  background-position: center;
  background-size: 10px;
  transition: all 0.3s ease;
}
.tour-description-content ul li:hover::before {
  background-color: rgba(255, 90, 61, 0.2);
  transform: scale(1.1);
}
.tour-description-content strong {
  font-weight: 900;
  color: #0f172a;
}

/* ==========================================================================
   - Package Feature Section (Inclusions / Exclusions)
   ========================================================================== */
.pkgFeaturesSection {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  padding-top: 1rem;
  border-top: 1px solid #f1f5f9;
}
@media (min-width: 768px) {
  .pkgFeaturesSection {
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
  }
}
.pkgFeaturesSection .featureCol .featureHeader {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 2rem;
}
.pkgFeaturesSection .featureCol .featureHeader .featureIcon {
  width: 3rem;
  height: 3rem;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.pkgFeaturesSection .featureCol .featureHeader .featureIcon.inclusion {
  background-color: #ecfdf5;
  color: #10b981;
}
.pkgFeaturesSection .featureCol .featureHeader .featureIcon.exclusion {
  background-color: #fff1f2;
  color: #f43f5e;
}
.pkgFeaturesSection .featureCol .featureHeader h3 {
  font-size: 1.35rem;
  font-weight: 700;
  color: #0f172a;
  margin: 0;
  letter-spacing: -0.01em;
}
.pkgFeaturesSection .featureCol .featureList {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.pkgFeaturesSection .featureCol .featureList li {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  color: #475569;
  font-size: 0.95rem;
  line-height: 1.6;
  font-weight: 500;
}
.pkgFeaturesSection .featureCol .featureList li span {
  color: #475569;
}
.pkgFeaturesSection .featureCol .featureList li .icon-check {
  color: #10b981;
  margin-top: 5px;
  flex-shrink: 0;
}
.pkgFeaturesSection .featureCol .featureList li .icon-x {
  color: #f43f5e;
  margin-top: 5px;
  flex-shrink: 0;
}

.googleReviewsSection {
  margin-top: 5rem;
  padding-top: 5rem;
  border-top: 1px solid #f1f5f9;
}
.googleReviewsSection .gr-main-header {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
  margin-bottom: 3.5rem;
}
@media (min-width: 768px) {
  .googleReviewsSection .gr-main-header {
    flex-direction: row;
    align-items: flex-end;
  }
}
.googleReviewsSection .gr-main-header .gr-title-side .gr-title {
  font-size: 1.85rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 1.5rem;
  letter-spacing: -0.02em;
}
.googleReviewsSection .gr-main-header .gr-title-side .gr-summary-line {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.googleReviewsSection .gr-main-header .gr-title-side .gr-summary-line .gr-rating-number {
  font-size: 3.5rem;
  font-weight: 700;
  color: #0f172a;
  line-height: 1;
}
.googleReviewsSection .gr-main-header .gr-title-side .gr-summary-line .gr-stars {
  display: flex;
  color: #f59e0b;
  gap: 3px;
  margin-bottom: 4px;
}
.googleReviewsSection .gr-main-header .gr-title-side .gr-summary-line .gr-review-count {
  font-size: 0.9rem;
  color: #64748b;
  font-weight: 500;
}
.googleReviewsSection .gr-main-header .gr-write-btn {
  background-color: #fff;
  border: 1px solid #e2e8f0;
  color: #0f172a;
  padding: 0.75rem 1.5rem;
  border-radius: 9999px;
  font-size: 0.95rem;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
.googleReviewsSection .gr-main-header .gr-write-btn:hover {
  background-color: #0f172a;
  color: #fff;
  border-color: #0f172a;
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
}
.googleReviewsSection .gr-list {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.googleReviewsSection .gr-list .gr-item {
  padding-bottom: 2rem;
  border-bottom: 1px solid #e2e8f0;
}
.googleReviewsSection .gr-list .gr-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.googleReviewsSection .gr-list .gr-item .gr-user-header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 0.75rem;
}
.googleReviewsSection .gr-list .gr-item .gr-user-header .gr-avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: #ffedd5;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #c2410c;
  font-weight: 700;
  flex-shrink: 0;
  overflow: hidden;
}
.googleReviewsSection .gr-list .gr-item .gr-user-header .gr-user-info .gr-user-name {
  font-weight: 600;
  color: #0f172a;
  line-height: 1.25;
}
.googleReviewsSection .gr-list .gr-item .gr-user-header .gr-user-info .gr-user-badges {
  font-size: 0.75rem;
  color: #64748b;
  margin-top: 0.25rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.googleReviewsSection .gr-list .gr-item .gr-user-header .gr-user-info .gr-user-badges .gr-dot {
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background-color: #cbd5e1;
}
.googleReviewsSection .gr-list .gr-item .gr-review-meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}
.googleReviewsSection .gr-list .gr-item .gr-review-meta .gr-stars-small {
  display: flex;
  color: #f59e0b;
  gap: 1px;
}
.googleReviewsSection .gr-list .gr-item .gr-review-meta .gr-time {
  font-size: 0.875rem;
  color: #64748b;
  margin-left: 0.25rem;
}
.googleReviewsSection .gr-list .gr-item .gr-comment {
  color: #334155;
  line-height: 1.625;
  max-width: 48rem;
}
.googleReviewsSection .gr-list .gr-empty {
  color: #64748b;
  padding: 1rem 0;
}
.googleReviewsSection .gr-write-review {
  margin-top: 2.5rem;
}
.googleReviewsSection .gr-write-review .gr-login-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1.5rem;
  border: 1px solid #cbd5e1;
  border-radius: 9999px;
  color: #334155;
  font-weight: 500;
  transition: all 0.2s ease;
}
.googleReviewsSection .gr-write-review .gr-login-link:hover {
  background-color: #f8fafc;
}
.googleReviewsSection .gr-write-review .gr-login-link .gr-plus {
  color: #2563eb;
  font-weight: 700;
  font-size: 1.125rem;
}
.googleReviewsSection .gr-write-review .gr-write-box {
  padding: 1.5rem;
  background-color: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 1rem;
  max-width: 42rem;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-user-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-user-header .gr-avatar {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background-color: #dbeafe;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1d4ed8;
  font-weight: 700;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-user-header .gr-user-info .gr-user-name {
  font-weight: 600;
  color: #0f172a;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-user-header .gr-user-info .gr-subtitle {
  font-size: 0.75rem;
  color: #64748b;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-rating-input {
  display: flex;
  gap: 0.25rem;
  margin-bottom: 1.5rem;
  color: #cbd5e1;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-rating-input button {
  background: none;
  border: none;
  cursor: pointer;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-rating-input .gr-star-btn {
  padding: 0.5rem;
  transition: all 0.2s ease;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-rating-input .gr-star-btn:hover {
  transform: scale(1.1);
  color: #fcd34d;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-rating-input .gr-star-btn.active {
  color: #f59e0b;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-textarea {
  width: 100%;
  background-color: transparent;
  border: none;
  border-bottom: 2px solid #e2e8f0;
  padding: 0.75rem 0;
  color: #334155;
  resize: none;
  min-height: 100px;
  transition: border-color 0.2s ease;
  outline: none;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-textarea:hover {
  background-color: #f8fafc;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-textarea:focus {
  outline: none;
  border-bottom-color: #2563eb;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-form-footer {
  display: flex;
  justify-content: flex-end;
  padding-top: 0.5rem;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-form-footer .gr-cancel-btn {
  padding: 0.625rem 1.5rem;
  background-color: transparent;
  color: #64748b;
  border-radius: 9999px;
  font-weight: 500;
  font-size: 0.875rem;
  transition: all 0.2s ease;
  border: 1px solid #e2e8f0;
  cursor: pointer;
  margin-right: 0.75rem;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-form-footer .gr-cancel-btn:hover {
  background-color: #f1f5f9;
  color: #0f172a;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-form-footer .gr-submit-btn {
  padding: 0.625rem 1.5rem;
  background-color: #0f172a;
  color: #fff;
  border-radius: 9999px;
  font-weight: 600;
  font-size: 0.875rem;
  transition: all 0.2s ease;
  border: none;
  cursor: pointer;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-form-footer .gr-submit-btn:hover {
  background-color: #334155;
}
.googleReviewsSection .gr-write-review .gr-write-box .gr-form .gr-form-footer .gr-submit-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.googleReviewsSection .gr-write-review .gr-login-prompt {
  padding: 2rem;
  background: #f8fafc;
  border-radius: 1rem;
  text-align: center;
  border: 1px dashed #e2e8f0;
}
.googleReviewsSection .gr-write-review .gr-login-prompt .gr-login-link {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 2rem;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 9999px;
  color: #0f172a;
  font-weight: 600;
  transition: all 0.3s ease;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}
.googleReviewsSection .gr-write-review .gr-login-prompt .gr-login-link:hover {
  background: #0f172a;
  color: #fff;
  transform: translateY(-2px);
}
.googleReviewsSection .gr-write-review .gr-login-prompt .gr-login-link .gr-plus {
  font-size: 1.25rem;
  color: #ff5a3d;
}

.tourCatPage {
  background-color: #fbfbfb;
  min-height: 100vh;
  padding-bottom: 4rem;
  font-family: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.tourCatBanner {
  position: relative;
  height: 250px;
  min-height: 250px;
  width: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: #0f172a;
  margin-top: 60px;
}
@media (min-width: 768px) {
  .tourCatBanner {
    height: 350px;
    margin-top: 85px;
  }
}
.tourCatBanner .tourCatBannerImg {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
@media (min-width: 1024px) {
  .tourCatBanner .tourCatBannerImg {
    width: 70%;
    clip-path: polygon(15% 0%, 100% 0%, 100% 100%, 0% 100%);
  }
}
.tourCatBanner .tourCatBannerImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tourCatBanner .tourCatBannerOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #0f172a 0%, #0f172a 30%, rgba(15, 23, 42, 0.4) 60%, rgba(15, 23, 42, 0) 100%);
  z-index: 1;
}
@media (max-width: 1023px) {
  .tourCatBanner .tourCatBannerOverlay {
    background: linear-gradient(to bottom, rgba(15, 23, 42, 0.4), rgba(15, 23, 42, 0.8));
  }
}
.tourCatBanner .bannerBgText {
  position: absolute;
  bottom: -2rem;
  left: 2rem;
  font-size: 15rem;
  font-weight: 950;
  color: rgba(255, 255, 255, 0.03);
  line-height: 1;
  text-transform: uppercase;
  font-style: italic;
  pointer-events: none;
  z-index: 0;
  white-space: nowrap;
}
@media (max-width: 1023px) {
  .tourCatBanner .bannerBgText {
    display: none;
  }
}
.tourCatBanner .tourCatBannerContent {
  position: relative;
  z-index: 2;
  text-align: left;
  color: #ffffff;
  padding: 0 1.5rem;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .tourCatBanner .tourCatBannerContent {
    padding-left: 5rem;
  }
}
.tourCatBanner .tourCatBannerContent .tourCatBannerTitle {
  font-size: 2.5rem;
  font-weight: 950;
  line-height: 1;
  margin-bottom: 0.75rem;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  font-style: italic;
}
@media (min-width: 768px) {
  .tourCatBanner .tourCatBannerContent .tourCatBannerTitle {
    font-size: 4rem;
  }
}
.tourCatBanner .tourCatBannerContent .tourCatBannerTitle span {
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.3);
  display: block;
  letter-spacing: normal;
  line-height: 1;
}
.tourCatBanner .tourCatBannerContent .tourCatBannerSub {
  font-size: 0.95rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 1.5rem;
  max-width: 500px;
  border-left: 4px solid #ff5a3d;
  padding: 0.4rem 0 0.4rem 1.25rem;
  background: linear-gradient(90deg, rgba(255, 90, 61, 0.1) 0%, transparent 100%);
}
.tourCatBanner .tourCatBannerContent .tourCatRating {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(20px);
  padding: 1.25rem 2.25rem;
  border-radius: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  width: max-content;
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.3);
}
.tourCatBanner .tourCatBannerContent .tourCatRating .tourCatRatingScore {
  font-weight: 900;
  font-size: 1.5rem;
  color: #ff5a3d;
}
.tourCatBanner .tourCatBannerContent .tourCatRating .tourCatStars {
  color: #fbbf24;
  letter-spacing: 0.1em;
  font-size: 1.25rem;
}
.tourCatBanner .tourCatBannerContent .tourCatRating .tourCatReviewCount {
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #64748b;
}

.tourCatContainer {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1rem;
}
@media (min-width: 640px) {
  .tourCatContainer {
    padding: 0 1.5rem;
  }
}

.cosmicContainer {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}
@media (min-width: 768px) {
  .cosmicContainer {
    padding: 0 1.5rem;
  }
}

.tourCatPackages {
  position: relative;
  z-index: 10;
  margin-top: -3rem;
}
.tourCatPackages .tourCatBookedBadge {
  background-color: rgba(255, 107, 53, 0.1);
  border-radius: 9999px;
  padding: 0.75rem 1.5rem;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #FF6B35;
  box-shadow: 0 4px 6px -1px rgba(255, 107, 53, 0.1);
  margin-bottom: 2rem;
}
.tourCatPackages .tourCatBookedBadge .tourCatBookedNum {
  color: #ff5a3d;
  font-weight: 800;
}
.tourCatPackages .tourCatIntro {
  color: #475569;
  font-size: 1.125rem;
  line-height: 1.75;
  margin-bottom: 2rem;
}
.tourCatPackages .tourCatGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 640px) {
  .tourCatPackages .tourCatGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .tourCatPackages .tourCatGrid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
  }
}
.tourCatPackages .tourCatGrid .tourCatCard {
  background-color: #ffffff;
  border-radius: 2.5rem;
  overflow: hidden;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.03);
  border: 1px solid rgba(0, 0, 0, 0.04);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: flex;
  flex-direction: column;
}
.tourCatPackages .tourCatGrid .tourCatCard:hover {
  transform: translateY(-12px) scale(1.02);
  box-shadow: 0 30px 60px -12px rgba(0, 0, 0, 0.08);
  border-color: rgba(255, 107, 53, 0.2);
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap {
  position: relative;
  width: 100%;
  padding-top: 100%;
  display: block;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap:hover img {
  transform: scale(1.05);
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap .tourCatCardStrip {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background-color: #ff5a3d;
  color: white;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  box-shadow: 0 4px 10px rgba(255, 90, 61, 0.4);
  backdrop-filter: blur(4px);
  z-index: 2;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap .tourCatWishlistBtn {
  position: absolute;
  top: 1rem;
  left: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  background-color: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(8px);
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #94a3b8;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  z-index: 10;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap .tourCatWishlistBtn:hover {
  transform: scale(1.1);
  color: #f43f5e;
  background-color: #fff;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap .tourCatWishlistBtn.active {
  color: #f43f5e;
  background-color: #fff;
  transform: scale(1.1);
  box-shadow: 0 4px 15px rgba(244, 63, 94, 0.2);
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap .tourCatWishlistBtn svg {
  transition: transform 0.3s ease;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardImgWrap .tourCatWishlistBtn:active svg {
  transform: scale(0.8);
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardDuration {
  color: #0f172a;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 0.75rem;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardTitle {
  font-size: 1.25rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 0.5rem;
  line-height: 1.3;
  transition: color 0.2s;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardTitle:hover {
  color: #FF6B35;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardLocation {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #FF6B35;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 0.75rem;
  margin-bottom: 1.5rem;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardLocation .tourCatDot {
  color: #cbd5e1;
  font-size: 0.5rem;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardPricing {
  margin-top: auto;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardPricing .tourCatPrice {
  font-size: 1.5rem;
  font-weight: 900;
  color: #0f172a;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardPricing .tourCatOrigPrice {
  font-size: 1rem;
  color: #94a3b8;
  text-decoration: line-through;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardPricing .tourCatPerPerson {
  font-size: 0.75rem;
  color: #64748b;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardBtns {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 0.75rem;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardBtns .tourCatEnquireBtn {
  background-color: #ff5a3d;
  color: #fff;
  font-weight: 800;
  text-align: center;
  padding: 0.75rem;
  border-radius: 0.75rem;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  box-shadow: 0 4px 14px rgba(255, 90, 61, 0.3);
  border: 1px solid rgba(255, 90, 61, 0.5);
  transition: all 0.3s;
  cursor: pointer;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardBtns .tourCatEnquireBtn:hover {
  background-color: rgb(255, 68.3118556701, 35.5);
  box-shadow: 0 6px 20px rgba(255, 90, 61, 0.4);
  transform: translateY(-2px);
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardBtns .tourCatDetailsBtn {
  background-color: #f8fafc;
  color: #64748b;
  font-weight: 800;
  text-align: center;
  padding: 0.75rem;
  border-radius: 0.75rem;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border: 1px solid #e2e8f0;
  transition: all 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tourCatPackages .tourCatGrid .tourCatCard .tourCatCardBody .tourCatCardBtns .tourCatDetailsBtn:hover {
  background-color: #f1f5f9;
  color: #ff5a3d;
  border-color: rgba(255, 90, 61, 0.3);
}

.tourCatReadMore {
  margin: 3rem 0;
}
.tourCatReadMore .tourCatReadMoreHeading {
  font-size: 2rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 2rem;
}
.tourCatReadMore .tourCatReadMoreHeading .tourCatHeadingHighlight {
  position: relative;
  z-index: 1;
}
.tourCatReadMore .tourCatReadMoreHeading .tourCatHeadingHighlight::after {
  content: "";
  position: absolute;
  bottom: 0.2rem;
  left: -0.2rem;
  right: -0.2rem;
  height: 0.5rem;
  background-color: rgba(255, 107, 53, 0.4);
  z-index: -1;
}
.tourCatReadMore .tourCatReadMoreBody p {
  color: #475569;
  font-size: 1.125rem;
  line-height: 1.8;
  margin-bottom: 1.5rem;
}
.tourCatReadMore .tourCatReadMoreBody p:last-child {
  margin-bottom: 0;
}

.tourCatReviews {
  background-color: #ffffff;
  padding: 3rem 0;
  margin-bottom: 3rem;
}
.tourCatReviews .tourCatReviewsTitle {
  font-size: 2.5rem;
  font-weight: 800;
  color: #0f172a;
  text-align: center;
  margin-bottom: 3.5rem;
}
.tourCatReviews .tourCatReviewSwiper {
  padding-bottom: 3rem !important;
}
.tourCatReviews .tourCatReviewCard {
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 1.5rem;
  padding: 2.5rem 2rem;
  text-align: center;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 1024px) {
  .tourCatReviews .tourCatReviewCard {
    height: 100%;
  }
}
.tourCatReviews .tourCatReviewCard .tourCatReviewAvatar {
  margin-bottom: 1rem;
}
.tourCatReviews .tourCatReviewCard .tourCatReviewAvatar img {
  border: 2px solid #ffffff;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}
.tourCatReviews .tourCatReviewCard .tourCatReviewName {
  font-size: 1.125rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 0.5rem;
}
.tourCatReviews .tourCatReviewCard .tourCatReviewStars {
  color: #fbbf24;
  letter-spacing: 0.1em;
  margin-bottom: 1.5rem;
}
.tourCatReviews .tourCatReviewCard .tourCatReviewText {
  color: #475569;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 2rem;
  flex-grow: 1;
  font-style: italic;
}
.tourCatReviews .tourCatReviewCard .tourCatGoogleBadge {
  margin-top: auto;
  opacity: 0.8;
}

.tourCatCTA {
  background-color: #0f172a;
  padding: 3.5rem 0;
  color: #ffffff;
  text-align: center;
  border-radius: 2rem;
  margin: 0 1rem 3rem 1rem;
}
@media (min-width: 640px) {
  .tourCatCTA {
    margin: 0 2rem 5rem 2rem;
  }
}
.tourCatCTA .tourCatCTALabel {
  color: #FF6B35;
  font-size: 0.875rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  margin-bottom: 1rem;
}
.tourCatCTA .tourCatCTATitle {
  font-size: 2.5rem;
  font-weight: 800;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .tourCatCTA .tourCatCTATitle {
    font-size: 3.5rem;
  }
}
.tourCatCTA .tourCatCTASub {
  color: #94a3b8;
  font-size: 1.125rem;
  margin-bottom: 3rem;
}
.tourCatCTA .tourCatCTABtns {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .tourCatCTA .tourCatCTABtns {
    flex-direction: row;
  }
}
.tourCatCTA .tourCatCTABtns .tourCatCTAEnquire {
  background-color: #FF6B35;
  color: #000;
  font-weight: 800;
  padding: 1rem 2.5rem;
  border-radius: 9999px;
  text-decoration: none;
  transition: all 0.3s;
}
.tourCatCTA .tourCatCTABtns .tourCatCTAEnquire:hover {
  background-color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgba(255, 107, 53, 0.4);
}
.tourCatCTA .tourCatCTABtns .tourCatCTACall {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #ffffff;
  font-weight: 700;
  text-decoration: none;
  padding: 1rem 2.5rem;
  border-radius: 9999px;
  border: 2px solid rgba(255, 255, 255, 0.2);
  transition: all 0.3s;
}
.tourCatCTA .tourCatCTABtns .tourCatCTACall:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

/* Quick Plan Modal Styles */
.tourCatModalOverlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
@media (min-width: 640px) {
  .tourCatModalOverlay {
    padding: 1.5rem;
  }
}
.tourCatModalOverlay .tourCatModalBackdrop {
  position: absolute;
  inset: 0;
  background-color: rgba(15, 23, 42, 0.4);
  backdrop-filter: blur(8px);
  transition: opacity 0.3s;
}
.tourCatModalOverlay .tourCatModalContent {
  position: relative;
  width: 100%;
  max-width: 50rem;
  background-color: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
  border-radius: 3rem;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.5);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  animation: iosModalOpen 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media (max-width: 767px) {
  .tourCatModalOverlay .tourCatModalContent {
    position: absolute;
    bottom: 0;
    border-radius: 2.5rem 2.5rem 0 0;
    max-height: 90vh;
    animation: iosBottomSheet 0.55s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
}
@media (min-width: 768px) {
  .tourCatModalOverlay .tourCatModalContent {
    flex-direction: row;
  }
}
@keyframes iosModalOpen {
  from {
    opacity: 0;
    transform: scale(0.9) translateY(20px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
@keyframes iosBottomSheet {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(0);
  }
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalCloseBtn {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 20;
  width: 2.5rem;
  height: 2.5rem;
  background-color: rgba(0, 0, 0, 0.05);
  color: #64748b;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s;
  border: none;
  cursor: pointer;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalCloseBtn:hover {
  background-color: rgba(0, 0, 0, 0.1);
  transform: rotate(90deg);
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft {
  display: none;
  position: relative;
  background-color: #FF6B35;
  padding: 3rem;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
}
@media (min-width: 768px) {
  .tourCatModalOverlay .tourCatModalContent .tourCatModalLeft {
    display: flex;
    width: 41.666667%;
  }
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalGradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom right, #FF6B35, #0ea5e9, #ff5a3d);
  opacity: 0.9;
  z-index: 0;
  mix-blend-mode: multiply;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalBlur1 {
  position: absolute;
  top: -5rem;
  left: -5rem;
  width: 20rem;
  height: 20rem;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 9999px;
  filter: blur(40px);
  z-index: 0;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalBlur2 {
  position: absolute;
  bottom: -5rem;
  right: -5rem;
  width: 20rem;
  height: 20rem;
  background-color: rgba(255, 90, 61, 0.4);
  border-radius: 9999px;
  filter: blur(40px);
  z-index: 0;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalVisual {
  position: relative;
  z-index: 10;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalVisual .tourCatModalIconWrap {
  width: 4rem;
  height: 4rem;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(16px);
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: white;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalVisual h3 {
  font-size: 2.25rem;
  font-weight: 900;
  color: white;
  font-style: italic;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
  line-height: 0.9;
}
@media (min-width: 1024px) {
  .tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalVisual h3 {
    font-size: 3rem;
  }
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalVisual h3 span {
  color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  background-image: linear-gradient(to right, #ff5a3d, #fdf08a);
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.05));
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalVisual p {
  color: rgba(255, 255, 255, 0.8);
  font-weight: 500;
  font-style: italic;
  margin-top: 1.5rem;
  font-size: 0.875rem;
  max-width: 200px;
  line-height: 1.625;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalStatus {
  position: relative;
  z-index: 10;
  margin-top: 3rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background-color: rgba(0, 0, 0, 0.2);
  width: max-content;
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalStatus .tourCatStatusDot {
  width: 0.625rem;
  height: 0.625rem;
  background-color: #4ade80;
  border-radius: 9999px;
  box-shadow: 0 0 10px rgba(74, 222, 128, 0.8);
  animation: pulseDot 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulseDot {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalLeft .tourCatModalStatus span {
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.625rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight {
  padding: 2rem;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.5);
  flex-grow: 1;
}
@media (min-width: 640px) {
  .tourCatModalOverlay .tourCatModalContent .tourCatModalRight {
    padding: 2.5rem;
  }
}
@media (min-width: 768px) {
  .tourCatModalOverlay .tourCatModalContent .tourCatModalRight {
    width: 58.333333%;
  }
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalHeader {
  margin-bottom: 2rem;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalHeader h2 {
  font-size: 1.875rem;
  font-weight: 900;
  color: #1e293b;
  text-transform: uppercase;
  font-style: italic;
  letter-spacing: -0.05em;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalHeader p {
  color: #64748b;
  font-size: 0.875rem;
  font-weight: 500;
  margin-top: 0.25rem;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  text-align: left;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalSelectedPkg {
  background-color: rgba(248, 250, 252, 0.5);
  padding: 1rem;
  border-radius: 1rem;
  border: 1px solid #f1f5f9;
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalSelectedPkg .tourCatPkgIcon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background-color: rgba(255, 107, 53, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalSelectedPkg .tourCatPkgIcon svg {
  color: #FF6B35;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalSelectedPkg div label {
  display: block;
  font-size: 0.625rem;
  font-weight: 900;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 0.125rem;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalSelectedPkg div .tourCatPkgName {
  font-weight: 700;
  color: #334155;
  font-size: 0.875rem;
  font-style: italic;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalFormGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 640px) {
  .tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalFormGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalField label {
  display: block;
  font-size: 0.625rem;
  font-weight: 900;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 0.375rem;
  padding-left: 0.25rem;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalField .tourCatModalInputWrap {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  background-color: #ffffff;
  padding: 0.875rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid #e2e8f0;
  transition: all 0.3s;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalField .tourCatModalInputWrap:focus-within {
  border-color: #ff5a3d;
  box-shadow: 0 0 0 4px rgba(255, 90, 61, 0.1);
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalField .tourCatModalInputWrap svg {
  color: #94a3b8;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalField .tourCatModalInputWrap input {
  background-color: transparent;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 600;
  color: #0f172a;
  outline: none;
  border: none;
  padding: 0;
  margin: 0;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalField .tourCatModalInputWrap input::placeholder {
  color: #cbd5e1;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalSubmitBtn {
  margin-top: 1rem;
  width: 100%;
  padding: 1rem;
  background: linear-gradient(to right, #FF6B35, #ff5a3d);
  color: white;
  border-radius: 0.75rem;
  font-size: 0.875rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  transition: all 0.3s;
  box-shadow: 0 10px 15px -3px rgba(255, 90, 61, 0.2);
  border: none;
  cursor: pointer;
}
.tourCatModalOverlay .tourCatModalContent .tourCatModalRight .tourCatModalForm .tourCatModalSubmitBtn:hover {
  background: linear-gradient(to right, rgb(255, 69.6336633663, 2), rgb(255, 46.6237113402, 10));
  box-shadow: 0 20px 25px -5px rgba(255, 90, 61, 0.4);
  transform: translateY(-2px);
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.allToursPage {
  padding-top: 0;
}
.allToursPage {
  background-color: #f1f5f9;
  min-height: 100vh;
}
.allToursPage .allToursBanner {
  position: relative;
  height: 65vh;
  width: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: #0f172a;
}
@media (min-width: 768px) {
  .allToursPage .allToursBanner {
    height: 75vh;
  }
}
.allToursPage .allToursBanner .bannerBgText {
  position: absolute;
  bottom: -2rem;
  right: -2rem;
  font-size: 20rem;
  font-weight: 950;
  color: rgba(255, 255, 255, 0.03);
  line-height: 1;
  text-transform: uppercase;
  font-style: italic;
  pointer-events: none;
  z-index: 0;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .allToursPage .allToursBanner .bannerBgText {
    display: none;
  }
}
.allToursPage .allToursBanner .allToursBannerOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #0f172a 0%, rgba(15, 23, 42, 0.7) 60%, rgba(15, 23, 42, 0.3) 100%);
  z-index: 1;
}
.allToursPage .allToursBanner .allToursBannerContent {
  position: relative;
  z-index: 2;
  padding-top: 6rem;
}
.allToursPage .allToursBanner .allToursBannerTitle {
  font-size: 3.5rem;
  font-weight: 950;
  line-height: 0.95;
  margin-bottom: 1.5rem;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  color: #ffffff;
}
@media (min-width: 768px) {
  .allToursPage .allToursBanner .allToursBannerTitle {
    font-size: 7rem;
  }
}
.allToursPage .allToursBanner .allToursBannerTitle span {
  color: transparent;
  -webkit-text-stroke: 2px #ff5a3d;
  display: block;
  font-style: italic;
  letter-spacing: normal;
}
.allToursPage .allToursBanner .allToursBannerSub {
  font-size: 1.125rem;
  font-weight: 600;
  color: #cbd5e1;
  max-width: 500px;
  border-left: 4px solid #ff5a3d;
  padding: 0.5rem 0 0.5rem 1.5rem;
}
.allToursPage .allToursControls {
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(226, 232, 240, 0.8);
  position: sticky;
  top: 57px;
  z-index: 100;
  box-shadow: 0 8px 32px -8px rgba(0, 0, 0, 0.1);
}
.allToursPage .allToursControls .allToursControlsInner {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 1% 0.825rem 1%;
  flex-wrap: nowrap;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.allToursPage .allToursControls .allToursControlsInner::-webkit-scrollbar {
  display: none;
}
@media (max-width: 767px) {
  .allToursPage .allToursControls .allToursControlsInner {
    padding: 10px 10vw 10px 1rem;
    gap: 0.75rem;
  }
}
.allToursPage .allToursControls .allToursSearch {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  background: #f1f5f9;
  border-radius: 9999px;
  padding: 0.625rem 1.125rem;
  border: 2px solid transparent;
  flex: 0 0 auto;
  width: 220px;
  transition: all 0.25s;
  margin: 0;
}
@media (max-width: 767px) {
  .allToursPage .allToursControls .allToursSearch {
    width: 140px;
    height: 40px;
    padding: 0px 12px;
    flex-shrink: 0;
  }
}
.allToursPage .allToursControls .allToursSearch:focus-within {
  border-color: #ff5a3d;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(255, 90, 61, 0.08);
}
.allToursPage .allToursControls .allToursSearch .allToursSearchIcon {
  color: #94a3b8;
  flex-shrink: 0;
}
.allToursPage .allToursControls .allToursSearch .allToursSearchInput {
  border: none;
  background: transparent;
  outline: none;
  font-size: 0.8rem;
  font-weight: 600;
  color: #0f172a;
  width: 100%;
  min-width: 0;
}
.allToursPage .allToursControls .allToursSearch .allToursSearchInput::placeholder {
  color: #94a3b8;
  font-weight: 500;
}
.allToursPage .allToursControls .allToursSearch .allToursSearchClear {
  background: none;
  border: none;
  cursor: pointer;
  color: #94a3b8;
  display: flex;
  padding: 0.15rem;
  border-radius: 50%;
  flex-shrink: 0;
  transition: all 0.2s;
}
.allToursPage .allToursControls .allToursSearch .allToursSearchClear:hover {
  color: #0f172a;
  background: #e2e8f0;
}
.allToursPage .allToursControls .allToursControlsDivider {
  width: 1px;
  min-width: 1px;
  height: 28px;
  background: #e2e8f0;
  flex-shrink: 0;
  margin-right: 1rem;
}
@media (max-width: 767px) {
  .allToursPage .allToursControls .allToursControlsDivider {
    display: none;
  }
}
.allToursPage .allToursControls .allToursFilterSliderWrapper {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex: 1;
  min-width: 0;
  position: relative;
  padding: 0 0.5rem;
}
.allToursPage .allToursControls .allToursFilterSliderWrapper .allToursFilterSwiper {
  width: 100%;
  padding: 0.5rem 0;
}
.allToursPage .allToursControls .allToursFilterSliderWrapper .allToursFilterSwiper .swiper-slide {
  width: auto !important;
}
.allToursPage .allToursControls .allToursFilterSliderWrapper .category-nav-btn {
  background: #f1f5f9;
  border: 1.5px solid #e2e8f0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
  cursor: pointer;
  transition: all 0.2s;
  flex-shrink: 0;
  z-index: 10;
}
@media (max-width: 767px) {
  .allToursPage .allToursControls .allToursFilterSliderWrapper .category-nav-btn {
    display: none;
  }
}
.allToursPage .allToursControls .allToursFilterSliderWrapper .category-nav-btn:hover {
  border-color: #ff5a3d;
  color: #ff5a3d;
  background-color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.allToursPage .allToursControls .allToursFilterSliderWrapper .category-nav-btn.swiper-button-disabled {
  opacity: 0.3;
  cursor: not-allowed;
  pointer-events: none;
}
.allToursPage .allToursControls .allToursSelectFilters {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
  margin-left: auto;
}
.allToursPage .allToursControls .allToursSelectFilters .tourSelect {
  background: #f1f5f9;
  border: 2px solid transparent;
  border-radius: 9999px;
  padding: 0.625rem 2rem 0.625rem 1.125rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: #0f172a;
  outline: none;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='3'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 8.25l-7.5 7.5-7.5-7.5' /%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.875rem center;
  background-size: 0.75rem;
  transition: all 0.2s;
  min-width: 120px;
}
@media (max-width: 767px) {
  .allToursPage .allToursControls .allToursSelectFilters .tourSelect {
    height: 40px;
    font-size: 0.75rem;
    min-width: 100px;
    padding: 0 1.5rem 0 0.75rem;
    background-position: right 0.5rem center;
  }
}
.allToursPage .allToursControls .allToursSelectFilters .tourSelect:hover {
  background-color: #e2e8f0;
}
.allToursPage .allToursControls .allToursSelectFilters .tourSelect:focus {
  border-color: #ff5a3d;
  background: #fff;
}
.allToursPage .allToursControls .mobileFilterToggle {
  display: none;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1.25rem;
  background: #0f172a;
  color: white;
  border: none;
  border-radius: 9999px;
  font-weight: 700;
  font-size: 0.8rem;
  cursor: pointer;
  transition: all 0.2s;
  flex-shrink: 0;
  margin-left: auto;
}
@media (max-width: 767px) {
  .allToursPage .allToursControls .mobileFilterToggle {
    display: flex;
    width: fit-content;
    padding: 12px 13px;
  }
}
.allToursPage .allToursControls .mobileFilterOverlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 1000;
  display: flex;
  align-items: flex-end;
}
@media (min-width: 768px) {
  .allToursPage .allToursControls .mobileFilterOverlay {
    display: none;
  }
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet {
  width: 100%;
  background: #fff;
  border-radius: 24px 24px 0 0;
  padding: 1rem 1.1rem 1.2rem;
  animation: slideUp 0.4s cubic-bezier(0.32, 0.72, 0, 1);
  box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.15);
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterSheetHandle {
  width: 40px;
  height: 4px;
  background: #e2e8f0;
  border-radius: 99px;
  margin: 0 auto 1.5rem;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.25rem;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerHeader span {
  font-size: 0.9rem;
  font-weight: 850;
  color: #0f172a;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerHeader .drawerActions {
  display: flex;
  gap: 0.875rem;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerHeader .drawerActions .resetBtn {
  background: none;
  border: none;
  font-size: 0.7rem;
  font-weight: 800;
  color: #94a3b8;
  text-transform: uppercase;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerHeader .drawerActions .doneBtn {
  background: rgba(255, 90, 61, 0.1);
  border: none;
  font-size: 0.7rem;
  font-weight: 850;
  color: #ff5a3d;
  padding: 0.35rem 1rem;
  border-radius: 9999px;
  text-transform: uppercase;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerSection {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid rgba(241, 245, 249, 0.8);
  margin-bottom: 1.25rem;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerSection:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerSection label {
  font-size: 0.65rem;
  font-weight: 900;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.15em;
}
.allToursPage .allToursControls .mobileFilterOverlay .mobileFilterSheet .mobileFilterDrawerSection .mobileFilterPills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}
@keyframes slideUp {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(0);
  }
}
.allToursPage .filterPill {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.5rem 1.125rem;
  background: transparent;
  border: 1.5px solid #e2e8f0;
  border-radius: 9999px;
  font-size: 0.8rem;
  font-weight: 700;
  color: #64748b;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  letter-spacing: 0.01em;
}
.allToursPage .filterPill:hover {
  border-color: #ff5a3d;
  color: #ff5a3d;
  background: rgba(255, 90, 61, 0.05);
}
.allToursPage .filterPill.active {
  background: #ff5a3d;
  color: #ffffff;
  border-color: #ff5a3d;
  box-shadow: 0 4px 14px -2px rgba(255, 90, 61, 0.45), 0 0 0 3px rgba(255, 90, 61, 0.15);
  transform: translateY(-1px);
}
.allToursPage .allToursResultsMeta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 1.75rem;
  padding-bottom: 1rem;
}
.allToursPage .allToursResultsMeta .resultsCount {
  font-size: 0.875rem;
  color: #64748b;
  font-weight: 600;
}
.allToursPage .allToursResultsMeta .resultsCount strong {
  color: #ff5a3d;
  font-weight: 900;
}
.allToursPage .allToursResultsMeta .resultsCount em {
  font-style: normal;
  color: #0f172a;
  font-weight: 800;
}
.allToursPage .allToursGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  padding-bottom: 5rem;
}
@media (min-width: 640px) {
  .allToursPage .allToursGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .allToursPage .allToursGrid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.allToursPage .allTourCard {
  background: #ffffff;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(226, 232, 240, 0.6);
}
.allToursPage .allTourCard:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  border-color: rgba(255, 90, 61, 0.2);
}
.allToursPage .allTourCard .allTourCardImgLink {
  display: block;
  position: relative;
  aspect-ratio: 16/11;
  overflow: hidden;
}
.allToursPage .allTourCard .allTourCardImgLink .allTourCardImg {
  position: absolute;
  inset: 0;
}
.allToursPage .allTourCard .allTourCardImgLink .allTourCardImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s cubic-bezier(0.2, 0, 0.2, 1);
}
.allToursPage .allTourCard .allTourCardImgLink .glassmorphism {
  background: rgba(15, 23, 42, 0.2);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  padding: 4px 10px;
  border-radius: 99px;
  display: flex;
  align-items: center;
  gap: 5px;
  position: absolute;
  z-index: 10;
  font-weight: 800;
  font-size: 0.65rem;
  text-transform: uppercase;
  letter-spacing: 0.025em;
}
.allToursPage .allTourCard .allTourCardImgLink .ratingBadge {
  top: 12px;
  left: 12px;
}
.allToursPage .allTourCard .allTourCardImgLink .ratingBadge svg {
  color: #fbbf24;
}
.allToursPage .allTourCard .allTourCardImgLink .wishlistBtnFloating {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 10;
}
.allToursPage .allTourCard .allTourCardImgLink .durationBadge {
  bottom: 12px;
  left: 12px;
  background: rgba(15, 23, 42, 0.4);
}
.allToursPage .allTourCard .allTourCardImgLink .locationBadge {
  bottom: 12px;
  right: 12px;
  background: rgba(15, 23, 42, 0.4);
  max-width: 120px;
}
.allToursPage .allTourCard .allTourCardImgLink .locationBadge .locationText {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.allToursPage .allTourCard .allTourCardBody {
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}
@media (max-width: 767px) {
  .allToursPage .allTourCard .allTourCardBody {
    padding: 1rem;
  }
}
.allToursPage .allTourCard .allTourCardTitle {
  font-size: 1.125rem;
  font-weight: 950;
  color: #1e293b;
  line-height: 1.2;
  margin-bottom: 0.75rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-decoration: none;
  transition: color 0.2s;
  height: 2.4em;
}
@media (max-width: 767px) {
  .allToursPage .allTourCard .allTourCardTitle {
    font-size: 1rem;
  }
}
.allToursPage .allTourCard .allTourCardTitle:hover {
  color: #ff5a3d;
}
.allToursPage .allTourCard .allTourCardPricingRow {
  margin-bottom: 1.25rem;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceGroup {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceMain {
  display: flex;
  align-items: baseline;
  gap: 2px;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceMain .currency {
  font-size: 0.875rem;
  font-weight: 900;
  color: #ff5a3d;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceMain .amount {
  font-size: 1.5rem;
  font-weight: 950;
  color: #0f172a;
  letter-spacing: -0.02em;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceMain .unit {
  font-size: 0.65rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  margin-left: 4px;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceOld {
  display: flex;
  align-items: center;
  gap: 8px;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceOld .oldAmount {
  font-size: 0.85rem;
  color: #94a3b8;
  text-decoration: line-through;
  font-weight: 600;
}
.allToursPage .allTourCard .allTourCardPricingRow .priceOld .saveBadge {
  background: #fef2f2;
  color: #ef4444;
  font-size: 0.6rem;
  font-weight: 900;
  padding: 2px 8px;
  border-radius: 4px;
  text-transform: uppercase;
}
.allToursPage .allTourCard .allTourCardActions {
  margin-top: auto;
}
.allToursPage .allTourCard .allTourCardActions .actionDivider {
  height: 1px;
  background: #f1f5f9;
  margin-bottom: 1rem;
}
.allToursPage .allTourCard .allTourCardActions .actionButtons {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.allToursPage .allTourCard .allTourCardActions .actionButtons .detailsBtn {
  font-size: 0.75rem;
  font-weight: 850;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.2s;
  text-decoration: none;
}
.allToursPage .allTourCard .allTourCardActions .actionButtons .detailsBtn:hover {
  color: #0f172a;
}
@media (max-width: 767px) {
  .allToursPage .allTourCard .allTourCardActions .actionButtons .detailsBtn {
    display: none;
  }
}
.allToursPage .allTourCard .allTourCardActions .actionButtons .enquireBtn {
  flex: 1;
  background: #0f172a;
  color: #fff;
  border: none;
  padding: 0.75rem 1rem;
  border-radius: 12px;
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  align-items: center;
  justify-content: center;
}
.allToursPage .allTourCard .allTourCardActions .actionButtons .enquireBtn:hover {
  background: #ff5a3d;
  box-shadow: 0 10px 15px -3px rgba(255, 90, 61, 0.3);
  transform: scale(1.02);
}
.allToursPage .allToursEmpty {
  grid-column: 1/-1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  padding: 5rem 2rem;
  text-align: center;
}
.allToursPage .allToursEmpty span {
  font-size: 4rem;
}
.allToursPage .allToursEmpty p {
  font-size: 1rem;
  color: #64748b;
  font-weight: 600;
}
.allToursPage .allToursEmpty button {
  padding: 0.875rem 2.5rem;
  background: #ff5a3d;
  color: #fff;
  border: none;
  border-radius: 9999px;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 4px 14px -2px rgba(255, 90, 61, 0.4);
  transition: all 0.2s;
}
.allToursPage .allToursEmpty button:hover {
  transform: translateY(-2px);
  filter: brightness(1.1);
}
.allToursPage .wishlistBtn {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8fafc;
  border: 1.5px solid #e2e8f0;
  color: #94a3b8;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.allToursPage .wishlistBtn:hover {
  transform: scale(1.1);
  color: #fb7185;
  background: #fff;
}
.allToursPage .wishlistBtn.selected {
  background: #fb7185;
  border-color: #fb7185;
  color: #fff;
  animation: heartPop 0.45s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
@keyframes heartPop {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.4);
  }
  100% {
    transform: scale(1.1);
  }
}
.allToursPage .floatingFilterTrigger {
  display: none;
}
@media (max-width: 767px) {
  .allToursPage .floatingFilterTrigger {
    display: flex;
    position: fixed;
    bottom: 90px;
    left: 20px;
    background: rgba(15, 23, 42, 0.9);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    color: #ffffff;
    padding: 14px 28px;
    border-radius: 40px;
    z-index: 998;
    align-items: center;
    gap: 12px;
    font-weight: 900;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.1);
    border: none;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    animation: floatIn 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  }
  .allToursPage .floatingFilterTrigger svg {
    color: #ff5a3d;
    stroke-width: 3;
  }
  .allToursPage .floatingFilterTrigger:active {
    transform: translateX(-50%) scale(0.92);
    background: #000;
  }
  .allToursPage .floatingFilterTrigger.hidden {
    transform: translateX(-50%) translateY(100px);
    opacity: 0;
  }
}
@keyframes floatIn {
  from {
    transform: translateX(-50%) translateY(40px);
    opacity: 0;
  }
  to {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
  }
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.hotels-listing-wrapper {
  background-color: #f8fafc;
  min-height: 100vh;
  padding-bottom: 6rem;
}
.hotels-listing-wrapper .hotels-listing-container {
  padding-top: 4.5rem;
  padding-bottom: 4rem;
  position: relative;
}
.hotels-listing-wrapper .hotels-header-row {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  margin-bottom: 5rem;
}
@media (min-width: 992px) {
  .hotels-listing-wrapper .hotels-header-row {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
  }
}
.hotels-listing-wrapper .hotels-header-row .hotels-title-area {
  max-width: 600px;
}
.hotels-listing-wrapper .hotels-header-row .hotels-title-area .hotels-page-pretitle {
  display: block;
  font-family: var(--font-writing);
  font-size: 1.5rem;
  color: #ff5a3d;
  margin-bottom: -0.5rem;
}
.hotels-listing-wrapper .hotels-header-row .hotels-title-area .hotels-page-title {
  font-size: 2.5rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 1rem;
  letter-spacing: -0.02em;
}
@media (min-width: 768px) {
  .hotels-listing-wrapper .hotels-header-row .hotels-title-area .hotels-page-title {
    font-size: 3.5rem;
  }
}
.hotels-listing-wrapper .hotels-header-row .hotels-title-area .hotels-page-subtitle {
  color: #64748b;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: 500;
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap {
  position: relative;
  width: 100%;
  max-width: 480px;
  background: #fff;
  border-radius: 100px;
  padding: 8px 8px 8px 28px;
  display: flex;
  align-items: center;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}
@media (max-width: 991px) {
  .hotels-listing-wrapper .hotels-header-row .hotels-search-wrap {
    margin-top: 1rem;
  }
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap:focus-within {
  border-color: rgba(255, 90, 61, 0.3);
  box-shadow: 0 15px 40px rgba(255, 90, 61, 0.08);
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap .hotels-search-icon {
  color: #94a3b8;
  flex-shrink: 0;
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap .hotels-search-input {
  flex: 1;
  border: none;
  outline: none;
  padding: 0 1rem;
  font-size: 1rem;
  font-weight: 500;
  color: #0f172a;
  background: transparent;
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap .hotels-search-input::placeholder {
  color: #94a3b8;
  font-weight: 400;
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap .hotels-search-clear {
  background: #f1f5f9;
  border: none;
  color: #64748b;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  margin-right: 0.5rem;
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap .hotels-search-clear:hover {
  background: #e2e8f0;
  color: #0f172a;
}
.hotels-listing-wrapper .hotels-header-row .hotels-search-wrap .hotels-search-btn {
  width: 48px;
  height: 48px;
  background: #ff5a3d;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  box-shadow: 0 4px 12px rgba(255, 90, 61, 0.25);
}
.hotels-listing-wrapper .hotels-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 768px) {
  .hotels-listing-wrapper .hotels-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .hotels-listing-wrapper .hotels-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.hotels-listing-wrapper .hotel-card {
  background-color: #fff;
  border-radius: 2.5rem;
  overflow: hidden;
  border: 1px solid #f1f5f9;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  position: relative;
}
.hotels-listing-wrapper .hotel-card:hover {
  transform: translateY(-12px);
  border-color: rgba(255, 90, 61, 0.2);
  box-shadow: 0 30px 60px -12px rgba(0, 0, 0, 0.1), 0 18px 36px -18px rgba(0, 0, 0, 0.12);
}
.hotels-listing-wrapper .hotel-card:hover .hotel-card-image-wrap img {
  transform: scale(1.1);
}
.hotels-listing-wrapper .hotel-card:hover .hotel-card-overlay {
  opacity: 1;
}
.hotels-listing-wrapper .hotel-card:hover .hotel-card-title {
  color: #ff5a3d;
}
.hotels-listing-wrapper .hotel-card:hover .hotel-card-arrow {
  transform: translateX(6px);
  background-color: #ff5a3d;
  box-shadow: 0 4px 15px rgba(255, 90, 61, 0.3);
}
.hotels-listing-wrapper .hotel-card .hotel-card-image-wrap {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
}
.hotels-listing-wrapper .hotel-card .hotel-card-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hotels-listing-wrapper .hotel-card .hotel-card-image-wrap .hotel-card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.4), transparent);
  opacity: 0;
  transition: opacity 0.5s ease;
}
.hotels-listing-wrapper .hotel-card .hotel-card-image-wrap .hotel-card-badge {
  position: absolute;
  top: 1.5rem;
  left: 1.5rem;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(12px);
  padding: 0.6rem 1.25rem;
  border-radius: 100px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.2);
  z-index: 10;
}
.hotels-listing-wrapper .hotel-card .hotel-card-image-wrap .hotel-card-badge span {
  font-size: 0.65rem;
  font-weight: 900;
  color: #0f172a;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.hotels-listing-wrapper .hotel-card .hotel-card-image-wrap .hotel-card-badge svg {
  color: #f59e0b;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body {
  padding: 2.25rem;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-location {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #ff5a3d;
  margin-bottom: 1rem;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-location svg {
  color: #ff5a3d;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-location span {
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-title {
  font-size: 1.4rem;
  font-weight: 800;
  color: #1e293b;
  margin-bottom: 1rem;
  line-height: 1.2;
  transition: color 0.3s ease;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-desc {
  color: #64748b;
  font-size: 0.95rem;
  line-height: 1.6;
  margin-bottom: 2rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-footer {
  margin-top: auto;
  padding-top: 1.5rem;
  border-top: 1px solid #f8fafc;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-footer .hotel-card-more-text {
  font-size: 0.9rem;
  font-weight: 850;
  color: #1e293b;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.hotels-listing-wrapper .hotel-card .hotel-card-body .hotel-card-footer .hotel-card-arrow {
  width: 3rem;
  height: 3rem;
  background-color: #0f172a;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}
.hotels-listing-wrapper .hotels-empty-state {
  background-color: #fff;
  border-radius: 2rem;
  padding: 5rem;
  text-align: center;
  border: 1px solid #f1f5f9;
}
.hotels-listing-wrapper .hotels-empty-state .empty-icon {
  color: #e2e8f0;
  margin-bottom: 1.5rem;
  margin-left: auto;
  margin-right: auto;
}
.hotels-listing-wrapper .hotels-empty-state p {
  font-size: 1.25rem;
  color: #94a3b8;
  font-weight: 500;
  margin-bottom: 1.5rem;
}
.hotels-listing-wrapper .hotels-empty-state .clear-search-btn {
  color: #ff5a3d;
  font-weight: 800;
  background: none;
  border: none;
  font-size: 1rem;
  text-decoration: underline;
  cursor: pointer;
}
.hotels-listing-wrapper .hotels-empty-state .clear-search-btn:hover {
  text-decoration: none;
}

/* ── Global Info Banner ── */
.infoPageBanner {
  position: relative;
  height: 50vh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
@media (min-width: 768px) {
  .infoPageBanner {
    height: 60vh;
  }
}
.infoPageBanner .infoBannerImg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.infoPageBanner .infoBannerImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.infoPageBanner .infoBannerOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.4));
  z-index: 1;
}
.infoPageBanner .infoBannerContent {
  position: relative;
  z-index: 2;
  text-align: center;
  color: #fff;
  max-width: 800px;
  padding: 0 1.5rem;
}
.infoPageBanner .infoBannerContent .infoTitle {
  font-size: 2.5rem;
  font-weight: 800;
  margin-bottom: 1rem;
  letter-spacing: -0.02em;
}
@media (min-width: 768px) {
  .infoPageBanner .infoBannerContent .infoTitle {
    font-size: 4rem;
  }
}
.infoPageBanner .infoBannerContent .infoSubtitle {
  font-size: 1.125rem;
  color: #cbd5e1;
  font-weight: 500;
}

/* ── Info Container & Content ── */
.infoContainer {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
@media (min-width: 640px) {
  .infoContainer {
    padding: 0 2rem;
  }
}

.infoBodySection {
  padding: 5rem 0;
  min-height: 50vh;
}
.infoBodySection .infoLeadText {
  font-size: 1.25rem;
  line-height: 1.8;
  color: #475569;
  margin-bottom: 2rem;
  max-width: 900px;
}
.infoBodySection .infoTextRow p {
  color: #475569;
  font-size: 1.125rem;
  line-height: 1.7;
  margin-bottom: 1.5rem;
}
.infoBodySection .infoGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  margin-top: 3rem;
}
@media (min-width: 768px) {
  .infoBodySection .infoGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .infoBodySection .infoGrid {
    grid-template-columns: repeat(4, 1fr);
    gap: 2.5rem;
  }
}
.infoBodySection .infoGrid .infoCard {
  background-color: #ffffff;
  border-radius: 2rem;
  padding: 2.5rem;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  position: relative;
  overflow: hidden;
  border: 1px solid #f1f5f9;
}
.infoBodySection .infoGrid .infoCard::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #ff5a3d;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s ease;
}
.infoBodySection .infoGrid .infoCard:hover {
  transform: translateY(-12px);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1);
  border-color: rgba(255, 90, 61, 0.2);
}
.infoBodySection .infoGrid .infoCard:hover::before {
  transform: scaleX(1);
}
.infoBodySection .infoGrid .infoCard:hover .infoCardIcon {
  background-color: rgba(255, 90, 61, 0.1);
  transform: scale(1.1) rotate(5deg);
  color: #ff5a3d;
}
.infoBodySection .infoGrid .infoCard .infoCardIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 1rem;
  background-color: #f1f5f9;
  margin-bottom: 1.5rem;
  font-size: 1.75rem;
  color: #0f172a;
  transition: all 0.3s ease;
}
.infoBodySection .infoGrid .infoCard .infoCardNumber {
  position: absolute;
  top: 1rem;
  right: 1.5rem;
  font-size: 4rem;
  font-weight: 900;
  color: #f8fafc;
  line-height: 1;
  z-index: 0;
}
.infoBodySection .infoGrid .infoCard .infoCardTitle {
  font-size: 1.25rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 1rem;
  position: relative;
  z-index: 1;
}
.infoBodySection .infoGrid .infoCard .infoCardDesc {
  color: #64748b;
  line-height: 1.7;
  position: relative;
  z-index: 1;
}

/* ── Contact Sub-Page Specifics ── */
.contactGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}
@media (min-width: 1024px) {
  .contactGrid {
    grid-template-columns: 1fr 1fr;
  }
}

.contactBox {
  background-color: #ffffff;
  border-radius: 1.5rem;
  padding: 3rem;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05);
}
.contactBox p {
  color: #475569;
  font-size: 1.125rem;
  line-height: 1.8;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.contactBox p strong {
  color: #0f172a;
  font-weight: 700;
  min-width: 80px;
}
.contactBox p a {
  color: #FF6B35;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
}
.contactBox p a:hover {
  color: rgb(231.5, 61.8861386139, 0);
}

/* ── Payment Specifics ── */
.paymentRow {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  background-color: #f8fafc;
  border-radius: 1rem;
  padding: 2rem;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .paymentRow {
    flex-direction: row;
    align-items: center;
  }
}
.paymentRow .paymentBankData {
  flex: 1;
}
.paymentRow .paymentBankData .bankName {
  font-size: 1.5rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 1rem;
}
.paymentRow .paymentBankData .bankRow {
  display: grid;
  grid-template-columns: 140px 1fr;
  margin-bottom: 0.5rem;
}
.paymentRow .paymentBankData .bankRow .bLabel {
  color: #64748b;
  font-weight: 500;
}
.paymentRow .paymentBankData .bankRow .bVal {
  color: #0f172a;
  font-weight: 700;
}
.paymentRow .paymentScan {
  flex-shrink: 0;
  background: #fff;
  padding: 1rem;
  border-radius: 1rem;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  text-align: center;
}
.paymentRow .paymentScan img {
  max-width: 150px;
  height: auto;
}

/* ── Authentication Pages (Login, Sign Up) ── */
.authPage {
  min-height: 100vh;
  display: flex;
  background-color: #f8fafc;
  /* Global styles reset for this layout */
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.authPage .authLeft {
  display: none;
  width: 50%;
  position: relative;
  background-color: #0f172a;
  overflow: hidden;
}
@media (min-width: 1024px) {
  .authPage .authLeft {
    display: block;
  }
}
.authPage .authLeft .authImageWrapper {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.authPage .authLeft .authImageWrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
}
.authPage .authLeft .authOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.9) 0%, rgba(15, 23, 42, 0.4) 100%);
  z-index: 1;
}
.authPage .authLeft .authBrand {
  position: absolute;
  top: 2.5rem;
  left: 3rem;
  z-index: 2;
  color: white;
}
.authPage .authLeft .authBrand .logoText {
  font-size: 1.75rem;
  font-weight: 900;
  letter-spacing: -0.02em;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.authPage .authLeft .authBrand .logoText span {
  color: #FF6B35;
}
.authPage .authLeft .authQuoteBox {
  position: absolute;
  bottom: 4rem;
  left: 3rem;
  right: 3rem;
  z-index: 2;
  color: white;
  padding: 2.5rem;
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.authPage .authLeft .authQuoteBox .quoteText {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6;
  margin-bottom: 1.5rem;
  font-style: italic;
}
.authPage .authLeft .authQuoteBox .quoteAuthor {
  font-weight: 700;
  font-size: 1.125rem;
  color: #FF6B35;
}
.authPage .authLeft .authQuoteBox .quoteRole {
  font-size: 0.875rem;
  color: #cbd5e1;
  margin-top: 0.25rem;
}
.authPage .authRight {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
}
@media (min-width: 1024px) {
  .authPage .authRight {
    width: 50%;
    padding: 4rem;
  }
}
.authPage .authFormContainer {
  width: 100%;
  max-width: 440px;
}
.authPage .authFormContainer .authMobileLogo {
  margin-bottom: 2rem;
  display: block;
}
@media (min-width: 1024px) {
  .authPage .authFormContainer .authMobileLogo {
    display: none;
  }
}
.authPage .authFormContainer .authMobileLogo .logoText {
  font-size: 1.75rem;
  font-weight: 900;
  color: #0f172a;
}
.authPage .authFormContainer .authMobileLogo .logoText span {
  color: #FF6B35;
}
.authPage .authFormContainer .authHeader {
  margin-bottom: 2.5rem;
}
.authPage .authFormContainer .authHeader h1 {
  font-size: 2.25rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 0.5rem;
  letter-spacing: -0.02em;
}
.authPage .authFormContainer .authHeader p {
  color: #64748b;
  font-size: 1rem;
}
.authPage .authFormContainer .authForm .formGroup {
  margin-bottom: 1.5rem;
}
.authPage .authFormContainer .authForm .formGroup label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: #334155;
  margin-bottom: 0.5rem;
}
.authPage .authFormContainer .authForm .formGroup .inputWrap {
  position: relative;
}
.authPage .authFormContainer .authForm .formGroup .inputWrap .inputIcon {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: #94a3b8;
}
.authPage .authFormContainer .authForm .formGroup .inputWrap input {
  width: 100%;
  padding: 0.875rem 1rem 0.875rem 2.75rem;
  border: 1px solid #cbd5e1;
  border-radius: 0.75rem;
  font-size: 1rem;
  color: #0f172a;
  background-color: #ffffff;
  transition: all 0.2s;
}
.authPage .authFormContainer .authForm .formGroup .inputWrap input::placeholder {
  color: #94a3b8;
}
.authPage .authFormContainer .authForm .formGroup .inputWrap input:focus {
  outline: none;
  border-color: #0f172a;
  box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.1);
}
.authPage .authFormContainer .authForm .formGroup .inputWrap .passwordToggle {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: #94a3b8;
  cursor: pointer;
  padding: 0;
}
.authPage .authFormContainer .authForm .formGroup .inputWrap .passwordToggle:hover {
  color: #475569;
}
.authPage .authFormContainer .authForm .formOptions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2rem;
}
.authPage .authFormContainer .authForm .formOptions .rememberCheckbox {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
}
.authPage .authFormContainer .authForm .formOptions .rememberCheckbox input[type=checkbox] {
  width: 1rem;
  height: 1rem;
  border-radius: 0.25rem;
  border: 1px solid #cbd5e1;
  accent-color: #0f172a;
}
.authPage .authFormContainer .authForm .formOptions .rememberCheckbox span {
  font-size: 0.875rem;
  color: #475569;
}
.authPage .authFormContainer .authForm .formOptions .forgotLink {
  font-size: 0.875rem;
  color: #0ea5e9;
  font-weight: 600;
  text-decoration: none;
}
.authPage .authFormContainer .authForm .formOptions .forgotLink:hover {
  text-decoration: underline;
}
.authPage .authFormContainer .authForm .submitBtn {
  width: 100%;
  background-color: #0f172a;
  color: #ffffff;
  border: none;
  border-radius: 0.75rem;
  padding: 1rem;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s;
}
.authPage .authFormContainer .authForm .submitBtn:hover {
  background-color: #1e293b;
}
.authPage .authFormContainer .authDivider {
  display: flex;
  align-items: center;
  text-align: center;
  margin: 2rem 0;
  color: #94a3b8;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.authPage .authFormContainer .authDivider::before, .authPage .authFormContainer .authDivider::after {
  content: "";
  flex: 1;
  border-bottom: 1px solid #e2e8f0;
}
.authPage .authFormContainer .authDivider::before {
  margin-right: 1rem;
}
.authPage .authFormContainer .authDivider::after {
  margin-left: 1rem;
}
.authPage .authFormContainer .socialAuth {
  display: flex;
  gap: 1rem;
  flex-direction: column;
}
.authPage .authFormContainer .socialAuth .socialBtn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 0.875rem;
  background-color: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 0.75rem;
  color: #334155;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.authPage .authFormContainer .socialAuth .socialBtn:hover {
  background-color: #f8fafc;
  border-color: #94a3b8;
}
.authPage .authFormContainer .socialAuth .socialBtn img {
  width: 24px;
  height: 24px;
}
.authPage .authFormContainer .authFooter {
  margin-top: 3rem;
  text-align: center;
  font-size: 0.875rem;
  color: #475569;
}
.authPage .authFormContainer .authFooter a {
  color: #0f172a;
  font-weight: 700;
  text-decoration: none;
  margin-left: 0.25rem;
}
.authPage .authFormContainer .authFooter a:hover {
  text-decoration: underline;
}

.paymentPage {
  background: #fff;
  padding-bottom: 6rem;
}
.paymentPage .paymentBody {
  padding-top: 4rem;
}
.paymentPage .payTrustStrip {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5rem;
  margin-bottom: 4.5rem;
  padding: 1.5rem 2rem;
  background: linear-gradient(135deg, #f8fafc, #f1f5f9);
  border-radius: 20px;
  border: 1px solid #e2e8f0;
}
.paymentPage .payTrustStrip .trustItem {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #475569;
}
.paymentPage .payTrustStrip .trustItem .trustIcon {
  color: #FF6B35;
  display: flex;
}
.paymentPage .paySectionHeader {
  text-align: center;
  margin-bottom: 3rem;
}
.paymentPage .paySectionHeader .payLabel {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #FF6B35;
  font-style: italic;
  margin-bottom: 0.75rem;
}
.paymentPage .paySectionHeader h2 {
  font-size: 2.2rem;
  font-weight: 900;
  color: #0f172a;
  letter-spacing: -0.03em;
  line-height: 1.1;
}
@media (min-width: 768px) {
  .paymentPage .paySectionHeader h2 {
    font-size: 3rem;
  }
}
.paymentPage .paySectionHeader h2 span {
  color: #94a3b8;
  font-weight: 500;
}
.paymentPage .payUpiGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  max-width: 760px;
  margin: 0 auto 2rem;
}
@media (min-width: 640px) {
  .paymentPage .payUpiGrid {
    grid-template-columns: 1fr 1fr;
  }
}
.paymentPage .payUpiCard .payUpiCardInner {
  position: relative;
  width: 100%;
  aspect-ratio: 4/4;
  transform-style: preserve-3d;
  transition: transform 0.65s cubic-bezier(0.4, 0.2, 0.2, 1);
  cursor: pointer;
}
.paymentPage .payUpiCard .payUpiCardInner:hover {
  transform: rotateY(180deg);
}
.paymentPage .payUpiCard .payUpiCardFront,
.paymentPage .payUpiCard .payUpiCardBack {
  position: absolute;
  inset: 0;
  border-radius: 24px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  overflow: hidden;
}
.paymentPage .payUpiCard .payUpiCardFront {
  background: #fff;
  border: 2px solid #f1f5f9;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.07);
}
.paymentPage .payUpiCard .payUpiCardFront .hoverHint {
  font-size: 0.7rem;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.paymentPage .payUpiCard .payUpiCardBack {
  background: #0f172a;
  color: #fff;
  transform: rotateY(180deg);
  padding: 1.5rem;
  gap: 0.5rem;
}
.paymentPage .payUpiCard .payUpiCardBack .qrName {
  font-size: 0.8rem;
  font-weight: 800;
  color: #fff;
  text-align: center;
}
.paymentPage .payUpiCard .payUpiCardBack .qrPhone {
  font-size: 0.7rem;
  color: #94a3b8;
  letter-spacing: 0.05em;
}
.paymentPage .payUpiCard .payUpiCardBack .qrUpiId {
  font-size: 0.65rem;
  color: #94a3b8;
  letter-spacing: 0.08em;
  background: rgba(255, 255, 255, 0.05);
  padding: 0.25rem 0.75rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.paymentPage .payUpiCard .payUpiCardBack .razorDesc {
  font-size: 0.75rem;
  color: #94a3b8;
  text-align: center;
  line-height: 1.6;
  margin: 0;
}
.paymentPage .payUpiCard .payUpiCardBack small {
  font-size: 0.65rem;
  color: #64748b;
}
.paymentPage .payUpiCard .payUpiLabel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: #64748b;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.paymentPage .payUpiCard .payUpiLabel svg {
  color: #FF6B35;
}
.paymentPage .payUpiCard.qrCard .payUpiCardFront {
  background: linear-gradient(135deg, #f0fdf4, #dcfce7);
  border-color: #bbf7d0;
}
.paymentPage .payUpiCard.razorCard .payUpiCardFront {
  background: linear-gradient(135deg, #eff6ff, #dbeafe);
  border-color: #bfdbfe;
}
.paymentPage .payBankGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .paymentPage .payBankGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .paymentPage .payBankGrid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.paymentPage .payBankCard {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.07);
  border: 1px solid #f1f5f9;
  transition: transform 0.3s, box-shadow 0.3s;
}
.paymentPage .payBankCard:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}
.paymentPage .payBankCard .payBankHeader {
  padding: 1.5rem 1.75rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
}
.paymentPage .payBankCard .payBankHeader .payBankName {
  font-size: 0.75rem;
  font-weight: 800;
  color: rgba(255, 255, 255, 0.8);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.paymentPage .payBankCard .payBankBody {
  padding: 1.5rem 1.75rem;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}
.paymentPage .payBankCard .payBankRow {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #f8fafc;
}
.paymentPage .payBankCard .payBankRow:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.paymentPage .payBankCard .payBankLabel {
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #94a3b8;
}
.paymentPage .payBankCard .payBankVal {
  font-size: 0.9rem;
  font-weight: 700;
  color: #0f172a;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.paymentPage .payBankCard .payBankVal.mono {
  font-family: "Courier New", monospace;
  font-size: 0.85rem;
  letter-spacing: 0.05em;
}
.paymentPage .payBankCard .payBankFooter {
  padding: 0.75rem 1.75rem;
  background: #f8fafc;
  font-size: 0.65rem;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  border-top: 1px solid #f1f5f9;
}
.paymentPage .copyBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 6px;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #64748b;
  cursor: pointer;
  transition: all 0.2s;
  flex-shrink: 0;
}
.paymentPage .copyBtn:hover {
  background: #FF6B35;
  border-color: #FF6B35;
  color: #fff;
}
.paymentPage .copyBtn svg {
  display: block;
}
.paymentPage .payHelpStrip {
  margin-top: 4rem;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  border-radius: 24px;
  padding: 3rem 3.5rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: flex-start;
  position: relative;
  overflow: hidden;
}
.paymentPage .payHelpStrip::before {
  content: "₹";
  position: absolute;
  right: 2rem;
  top: -1rem;
  font-size: 12rem;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.03);
  line-height: 1;
  pointer-events: none;
}
@media (min-width: 768px) {
  .paymentPage .payHelpStrip {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
.paymentPage .payHelpStrip .payHelpContent h3 {
  font-size: 1.5rem;
  font-weight: 900;
  color: #fff;
  margin-bottom: 0.4rem;
  letter-spacing: -0.02em;
}
.paymentPage .payHelpStrip .payHelpContent p {
  color: #94a3b8;
  font-size: 0.9rem;
  margin: 0;
}
.paymentPage .payHelpStrip .payHelpActions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  flex-shrink: 0;
}
.paymentPage .payHelpStrip .payHelpBtn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-decoration: none;
  transition: all 0.25s;
}
.paymentPage .payHelpStrip .payHelpBtn.primary {
  background: #FF6B35;
  color: #fff;
}
.paymentPage .payHelpStrip .payHelpBtn.primary:hover {
  background: rgb(255, 69.6336633663, 2);
  transform: translateY(-2px);
}
.paymentPage .payHelpStrip .payHelpBtn.whatsapp {
  background: #25D366;
  color: #fff;
}
.paymentPage .payHelpStrip .payHelpBtn.whatsapp:hover {
  background: rgb(30.9129032258, 176.2870967742, 85.2193548387);
  transform: translateY(-2px);
}

.contactPage {
  background: #f8fafc;
  padding-bottom: 6rem;
}
.contactPage .contactBody {
  padding-top: 5rem;
}
.contactPage .contactSplitGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
}
@media (min-width: 1024px) {
  .contactPage .contactSplitGrid {
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
    align-items: flex-start;
  }
}
.contactPage .contactInfoColumn .contactIntro {
  margin-bottom: 3rem;
}
.contactPage .contactInfoColumn .contactIntro .subLabel {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #FF6B35;
  margin-bottom: 1rem;
}
.contactPage .contactInfoColumn .contactIntro h2 {
  font-size: 2.5rem;
  font-weight: 900;
  color: #0f172a;
  line-height: 1.1;
  margin-bottom: 1rem;
}
.contactPage .contactInfoColumn .contactIntro h2 span {
  color: #64748b;
  font-weight: 700;
}
.contactPage .contactInfoColumn .contactIntro p {
  font-size: 1.05rem;
  color: #475569;
  line-height: 1.7;
  max-width: 90%;
}
.contactPage .contactInfoColumn .contactCards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  margin-bottom: 3rem;
}
@media (min-width: 640px) {
  .contactPage .contactInfoColumn .contactCards {
    grid-template-columns: repeat(2, 1fr);
  }
}
.contactPage .contactInfoColumn .cCard {
  background: #fff;
  border-radius: 16px;
  padding: 1.5rem;
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
  border: 1px solid #e2e8f0;
  transition: all 0.3s;
}
.contactPage .contactInfoColumn .cCard:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
  border-color: #cbd5e1;
}
.contactPage .contactInfoColumn .cCard .cIcon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #fff;
}
.contactPage .contactInfoColumn .cCard .cIcon.red {
  background: linear-gradient(135deg, #ef4444, #dc2626);
}
.contactPage .contactInfoColumn .cCard .cIcon.green {
  background: linear-gradient(135deg, #10b981, #059669);
}
.contactPage .contactInfoColumn .cCard .cIcon.blue {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}
.contactPage .contactInfoColumn .cCard .cIcon.orange {
  background: linear-gradient(135deg, #f59e0b, #d97706);
}
.contactPage .contactInfoColumn .cCard .cDetails h3 {
  font-size: 1.1rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 0.5rem;
}
.contactPage .contactInfoColumn .cCard .cDetails p {
  font-size: 0.9rem;
  color: #475569;
  line-height: 1.5;
  margin: 0 0 0.25rem 0;
}
.contactPage .contactInfoColumn .cCard .cDetails p .hoverLink {
  color: inherit;
  text-decoration: none;
  transition: color 0.2s;
}
.contactPage .contactInfoColumn .cCard .cDetails p .hoverLink:hover {
  color: #FF6B35;
}
.contactPage .contactInfoColumn .contactMapWrapper {
  width: 100%;
  height: 280px;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  border: 4px solid #fff;
  direction: ltr;
}
.contactPage .contactInfoColumn .contactMapWrapper iframe {
  width: 100%;
  height: 100%;
  background-color: #f1f5f9;
  filter: invert(0) contrast(1.1) saturate(1.2);
  transition: filter 0.3s;
}
.contactPage .contactInfoColumn .contactMapWrapper iframe:hover {
  filter: none;
}
.contactPage .contactFormColumn .formBox {
  background: #fff;
  border-radius: 24px;
  padding: 3rem 2.5rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  border: 1px solid #f1f5f9;
}
.contactPage .contactFormColumn .formBox h3 {
  font-size: 2rem;
  font-weight: 900;
  color: #0f172a;
  margin-bottom: 0.75rem;
}
.contactPage .contactFormColumn .formBox p {
  font-size: 0.95rem;
  color: #64748b;
  margin-bottom: 2.5rem;
  line-height: 1.6;
}
.contactPage .contactFormColumn .formRow {
  margin-bottom: 1.5rem;
}
.contactPage .contactFormColumn .formRow.split {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .contactPage .contactFormColumn .formRow.split {
    grid-template-columns: 1fr 1fr;
  }
}
.contactPage .contactFormColumn .inputGroup {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.contactPage .contactFormColumn .inputGroup label {
  font-size: 0.8rem;
  font-weight: 700;
  color: #334155;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.contactPage .contactFormColumn .inputGroup label span {
  color: #ef4444;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper .iIcon {
  position: absolute;
  left: 1rem;
  color: #94a3b8;
  pointer-events: none;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input {
  width: 100%;
  padding: 1rem 1rem 1rem 3rem;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  font-family: inherit;
  font-size: 0.95rem;
  color: #0f172a;
  background: #f8fafc;
  transition: all 0.3s;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input::placeholder {
  color: #94a3b8;
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input:focus {
  outline: none;
  border-color: #FF6B35;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255, 107, 53, 0.1);
}
.contactPage .contactFormColumn .inputGroup .inputWrapper input:focus + .iIcon {
  color: #FF6B35;
}
.contactPage .contactFormColumn .inputGroup textarea {
  width: 100%;
  padding: 1.25rem;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  font-family: inherit;
  font-size: 0.95rem;
  color: #0f172a;
  background: #f8fafc;
  transition: all 0.3s;
  resize: vertical;
}
.contactPage .contactFormColumn .inputGroup textarea::placeholder {
  color: #94a3b8;
}
.contactPage .contactFormColumn .inputGroup textarea:focus {
  outline: none;
  border-color: #FF6B35;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255, 107, 53, 0.1);
}
.contactPage .contactFormColumn .submitBtn {
  width: 100%;
  padding: 1.25rem;
  border: none;
  background: linear-gradient(135deg, #FF6B35, rgb(255, 69.6336633663, 2));
  color: #fff;
  font-size: 1rem;
  font-weight: 800;
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.3s;
  margin-top: 1rem;
  box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3);
}
.contactPage .contactFormColumn .submitBtn:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(255, 107, 53, 0.4);
}
.contactPage .contactFormColumn .submitBtn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.contactPage .contactFormColumn .submitBtn .flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.contactPage .contactFormColumn .spinner-small {
  width: 18px;
  height: 18px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
.contactPage .contactFormColumn .statusAlert {
  margin-top: 1.5rem;
  padding: 1rem;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 600;
  text-align: center;
}
.contactPage .contactFormColumn .statusAlert.success {
  background: #ecfdf5;
  color: #047857;
  border: 1px solid #a7f3d0;
}
.contactPage .contactFormColumn .statusAlert.error {
  background: #fef2f2;
  color: #b91c1c;
  border: 1px solid #fecaca;
}
.contactPage .contactFormColumn .trustBadge {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin-top: 2rem;
  padding: 1.5rem;
  background: #eff6ff;
  border: 1px dashed #bfdbfe;
  border-radius: 16px;
}
.contactPage .contactFormColumn .trustBadge .tbIcon {
  color: #3b82f6;
  flex-shrink: 0;
}
.contactPage .contactFormColumn .trustBadge strong {
  display: block;
  font-size: 0.9rem;
  color: #1e3a8a;
  margin-bottom: 0.25rem;
}
.contactPage .contactFormColumn .trustBadge p {
  font-size: 0.8rem;
  color: #60a5fa;
  margin: 0;
}

.not-found {
  padding-top: clamp(80px, 7.97vw, 153px);
  padding-bottom: clamp(80px, 7.97vw, 120px);
}
.not-found img {
  margin-bottom: clamp(30px, 3.3vw, 62px);
  width: 70.726%;
}
@media (min-width: 768px) {
  .not-found img {
    width: 34.31%;
  }
}
.not-found h1 {
  margin-bottom: clamp(15px, 1.41vw, 27px);
}
.not-found span {
  line-height: normal;
  font-weight: 400;
  font-size: 22px;
}
@media (min-width: 768px) {
  .not-found span {
    font-size: 24px;
  }
}
@media (min-width: 992px) {
  .not-found span {
    font-size: 28px;
  }
}
@media (min-width: 1200px) {
  .not-found span {
    font-size: 30px;
  }
}
@media (min-width: 1280px) {
  .not-found span {
    font-size: 32px;
  }
}
@media (min-width: 1440px) {
  .not-found span {
    font-size: 34px;
  }
}
.not-found p {
  color: #3E444A;
  line-height: 160%;
  margin-left: auto;
  margin-right: auto;
  width: 80%;
}
@media (min-width: 768px) {
  .not-found p {
    width: clamp(498px, 32.084vw, 616px);
  }
}
.not-found h1 {
  color: #0A1119;
  line-height: 100%;
  font-weight: 700;
  font-size: clamp(18px, 1.9vw, 36px);
}
@media (max-width: 575px) {
  .not-found h1 {
    margin-bottom: 20px;
  }
}
.not-found .buttonwrapper {
  margin-top: clamp(18px, 2.14vw, 41px);
  gap: clamp(7px, 0.7vw, 13px);
}
.not-found .buttonwrapper a {
  border-radius: 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #fff;
  height: 42px;
  padding: 17px 30px;
}
.not-found .buttonwrapper a:first-child {
  background: #FFA600;
}
.not-found .buttonwrapper a + a {
  color: #4B535D;
  border: 1px solid #7B7675;
}
.not-found ~ .footer-cta {
  display: none;
}

section.thank-you {
  padding-top: clamp(80px, 7.97vw, 153px);
  padding-bottom: clamp(80px, 7.97vw, 120px);
}
section.thank-you ~ .footer-cta {
  display: none;
}
section.thank-you h1 {
  font-weight: 700;
  margin-bottom: clamp(8px, 0.94vw, 18px);
}
section.thank-you picture {
  margin-bottom: clamp(10px, 2.11vw, 40.5px);
  width: 65%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  section.thank-you picture {
    width: 21.429%;
  }
}
section.thank-you picture img {
  width: 100%;
  height: auto;
}
section.thank-you p {
  color: #3E444A;
  line-height: 160%;
  margin-bottom: clamp(10px, 2.1vw, 36px);
}

.blogsPage {
  padding-top: 0;
  padding-bottom: 6rem;
  background-color: #fff;
}
.blogsPage .headerSection {
  text-align: center;
  max-width: 42rem;
  margin: 0 auto 5rem;
}
.blogsPage .headerSection .subTitle {
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #FF6B35;
  margin-bottom: 1rem;
  display: inline-block;
  font-style: italic;
}
.blogsPage .headerSection h2 {
  font-size: 2.25rem;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.1;
  letter-spacing: -0.025em;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .blogsPage .headerSection h2 {
    font-size: 3.75rem;
  }
}
.blogsPage .headerSection h2 span {
  color: #94a3b8;
  font-weight: 500;
}
.blogsPage .headerSection .description {
  color: #64748b;
  font-size: 1.125rem;
  line-height: 1.625;
}
.blogsPage .loadingWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10rem 0;
}
.blogsPage .loadingWrapper .spinner {
  width: 4rem;
  height: 4rem;
  border: 4px solid #f1f5f9;
  border-top: 4px solid #FF6B35;
  border-radius: 9999px;
  animation: spin 1s linear infinite;
}
.blogsPage .blogsGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}
@media (min-width: 768px) {
  .blogsPage .blogsGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .blogsPage .blogsGrid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.blogsPage .blogsGrid .blogArticle {
  cursor: pointer;
}
.blogsPage .blogsGrid .blogArticle:hover .imageWrapper {
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  transform: translateY(-0.5rem);
}
.blogsPage .blogsGrid .blogArticle:hover .imageWrapper .patternBg {
  transform: scale(1.05);
}
.blogsPage .blogsGrid .blogArticle:hover h3 {
  color: #FF6B35;
}
.blogsPage .blogsGrid .blogArticle .imageWrapper {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
  border-radius: 24px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  margin-bottom: 10px;
  transition: all 0.5s;
  background: #0f172a;
}
.blogsPage .blogsGrid .blogArticle .imageWrapper img {
  transition: transform 0.7s ease !important;
}
.blogsPage .blogsGrid .blogArticle .imageWrapper:hover img {
  transform: scale(1.06) !important;
}
.blogsPage .blogsGrid .blogArticle .imageWrapper .patternBg {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #0f172a, #1f2937);
  transition: transform 0.7s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.blogsPage .blogsGrid .blogArticle .imageWrapper .patternBg .text {
  color: rgba(255, 255, 255, 0.1);
  font-weight: 900;
  font-size: 3.75rem;
  opacity: 0.2;
  transform: rotate(-45deg);
  user-select: none;
  text-align: center;
}
.blogsPage .blogsGrid .blogArticle .imageWrapper .categoryBadge {
  position: absolute;
  top: 1.25rem;
  left: 1.25rem;
  z-index: 2;
  padding: 0.4rem 1rem;
  background-color: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(10px);
  border-radius: 9999px;
  font-size: 0.65rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #0f172a;
}
.blogsPage .blogsGrid .blogArticle .blogContent .metaRow {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  font-size: 10px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1.5rem;
}
.blogsPage .blogsGrid .blogArticle .blogContent .metaRow .metaItem {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.blogsPage .blogsGrid .blogArticle .blogContent .metaRow .metaItem svg {
  color: #FF6B35;
}
.blogsPage .blogsGrid .blogArticle .blogContent h3 {
  font-size: 1rem;
  color: #0f172a;
  margin-bottom: 1.5rem;
  transition: color 0.2s;
}
.blogsPage .blogsGrid .blogArticle .blogContent .excerpt {
  color: #6b7280;
  font-size: 0.875rem;
  line-height: 1.625;
  margin-bottom: 2rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-style: italic;
}
.blogsPage .blogsGrid .blogArticle .blogContent .readMore {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #0f172a;
  text-decoration: none;
  transition: all 0.2s;
}
.blogsPage .blogsGrid .blogArticle .blogContent .readMore:hover {
  color: #FF6B35;
}
.blogsPage .blogsGrid .blogArticle .blogContent .readMore:hover svg {
  transform: translateX(0.75rem);
}
.blogsPage .blogsGrid .blogArticle .blogContent .readMore:active {
  transform: scale(0.95);
}
.blogsPage .blogsGrid .blogArticle .blogContent .readMore svg {
  transition: transform 0.2s;
}
.blogsPage .emptyState {
  text-align: center;
  padding: 10rem 0;
  border-top: 1px solid #f9fafb;
}
.blogsPage .emptyState h3 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #d1d5db;
  font-style: italic;
  font-weight: 500;
}

.faqPage {
  background-color: #fff;
  padding-bottom: 6rem;
}
.faqPage .faqBody {
  padding-top: 5rem;
}
.faqPage .faqIntro {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 4rem;
}
.faqPage .faqIntro .faqSubLabel {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #FF6B35;
  font-style: italic;
  margin-bottom: 1rem;
}
.faqPage .faqIntro h2 {
  font-size: 2.5rem;
  font-weight: 900;
  color: #0f172a;
  line-height: 1.1;
  letter-spacing: -0.03em;
  margin-bottom: 1.25rem;
}
@media (min-width: 768px) {
  .faqPage .faqIntro h2 {
    font-size: 3.5rem;
  }
}
.faqPage .faqIntro h2 span {
  color: #94a3b8;
  font-weight: 500;
}
.faqPage .faqIntro p {
  color: #64748b;
  font-size: 1.05rem;
  line-height: 1.7;
}
.faqPage .faqAccordion {
  max-width: 860px;
  margin: 0 auto 5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.faqPage .faqCategory {
  border-radius: 20px;
  border: 1.5px solid #f1f5f9;
  overflow: hidden;
  transition: border-color 0.3s, box-shadow 0.3s;
}
.faqPage .faqCategory.open {
  border-color: rgba(255, 107, 53, 0.25);
  box-shadow: 0 8px 30px rgba(255, 107, 53, 0.06);
}
.faqPage .faqCategory .faqCatHeader {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.5rem 2rem;
  background: #fff;
  border: none;
  cursor: pointer;
  text-align: left;
  transition: background 0.2s;
}
.faqPage .faqCategory .faqCatHeader:hover {
  background: #f8fafc;
}
.faqPage .faqCategory .faqCatHeader .faqCatIcon {
  font-size: 1.5rem;
  flex-shrink: 0;
}
.faqPage .faqCategory .faqCatHeader .faqCatTitle {
  font-size: 1.05rem;
  font-weight: 800;
  color: #0f172a;
  flex: 1;
  letter-spacing: -0.01em;
}
.faqPage .faqCategory .faqCatHeader .faqCatCount {
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #94a3b8;
  background: #f1f5f9;
  padding: 0.3rem 0.8rem;
  border-radius: 999px;
  flex-shrink: 0;
}
.faqPage .faqCategory .faqCatHeader .faqCatChevron {
  color: #94a3b8;
  transition: transform 0.3s ease;
  flex-shrink: 0;
}
.faqPage .faqCategory.open .faqCatChevron {
  transform: rotate(180deg);
}
.faqPage .faqCategory .faqItems {
  border-top: 1.5px solid #f1f5f9;
  background: #fafbfd;
  padding: 0.5rem 0;
}
.faqPage .faqCategory .faqItem {
  border-bottom: 1px solid #f1f5f9;
}
.faqPage .faqCategory .faqItem:last-child {
  border-bottom: none;
}
.faqPage .faqCategory .faqItem.open .faqItemChevron {
  transform: rotate(180deg);
}
.faqPage .faqCategory .faqItem.open .faqQuestion {
  color: #FF6B35;
}
.faqPage .faqCategory .faqQuestion {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 2rem;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  font-size: 0.95rem;
  font-weight: 700;
  color: #1e293b;
  transition: color 0.2s;
}
.faqPage .faqCategory .faqQuestion:hover {
  color: #FF6B35;
}
.faqPage .faqCategory .faqQuestion .faqItemChevron {
  color: #94a3b8;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}
.faqPage .faqCategory .faqAnswer {
  padding: 0 2rem 1.5rem 2rem;
  animation: fadeSlideIn 0.25s ease;
}
.faqPage .faqCategory .faqAnswer p {
  color: #475569;
  font-size: 0.95rem;
  line-height: 1.8;
  border-left: 3px solid rgba(255, 107, 53, 0.3);
  padding-left: 1rem;
  margin: 0;
}
.faqPage .faqCta {
  max-width: 860px;
  margin: 0 auto;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  border-radius: 28px;
  padding: 3rem 3.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2rem;
  overflow: hidden;
  position: relative;
}
.faqPage .faqCta::before {
  content: "?";
  position: absolute;
  right: 2rem;
  top: -1rem;
  font-size: 12rem;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.03);
  line-height: 1;
  pointer-events: none;
  user-select: none;
}
@media (min-width: 768px) {
  .faqPage .faqCta {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
.faqPage .faqCta .faqCtaContent h3 {
  font-size: 1.6rem;
  font-weight: 900;
  color: #fff;
  margin-bottom: 0.5rem;
  letter-spacing: -0.02em;
}
.faqPage .faqCta .faqCtaContent p {
  color: #94a3b8;
  font-size: 0.9rem;
  margin: 0;
}
.faqPage .faqCta .faqCtaButtons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  flex-shrink: 0;
}
.faqPage .faqCta .faqCtaBtn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border: 2px solid transparent;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.25s;
}
.faqPage .faqCta .faqCtaBtn.primary {
  background: #FF6B35;
  color: #fff;
  border-color: #FF6B35;
}
.faqPage .faqCta .faqCtaBtn.primary:hover {
  background: rgb(255, 69.6336633663, 2);
  transform: translateY(-2px);
}
.faqPage .faqCta .faqCtaBtn.whatsapp {
  background: #25D366;
  color: #fff;
  border-color: #25D366;
}
.faqPage .faqCta .faqCtaBtn.whatsapp:hover {
  background: rgb(30.9129032258, 176.2870967742, 85.2193548387);
  transform: translateY(-2px);
}
.faqPage .faqCta .faqCtaBtn.outline {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.25);
}
.faqPage .faqCta .faqCtaBtn.outline:hover {
  background: rgba(255, 255, 255, 0.1);
  transform: translateY(-2px);
}

@keyframes fadeSlideIn {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

:root {
  --primary-color: #1673B8;
  --secondary-color: #8CC647;
}

.eventsPage {
  background-color: #fff;
  min-height: 100vh;
  color: #0f172a;
  font-family: var(--font-outfit);
}
.eventsPage .sectionHeader {
  text-align: left !important;
  margin-bottom: 2rem !important;
  margin-left: 0 !important;
}
.eventsPage .sectionHeader .sectionSubtitle {
  display: inline-block;
  font-family: var(--font-writing);
  font-size: 1.5rem;
  background: linear-gradient(90deg, #FF6B35 0%, #FB7F33 75%, #0472b4 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: -0.5rem;
  position: relative;
  z-index: 10;
  padding-right: 1.5rem;
}
@media (min-width: 992px) {
  .eventsPage .sectionHeader .sectionSubtitle {
    font-size: 2.25rem;
  }
}
.eventsPage .events-intro {
  background-color: #fff;
  padding-top: 60px;
  padding-bottom: 60px;
}
@media (max-width: 991px) {
  .eventsPage .events-intro .introContent {
    margin-bottom: 3rem;
  }
}
.eventsPage .events-intro .introContent .contentBody p {
  font-size: 1.1rem;
  line-height: 1.8;
  color: #64748b;
  margin-bottom: 1.5rem;
}
.eventsPage .events-intro .introImage {
  position: relative;
}
.eventsPage .events-intro .introImage .imageContainer {
  position: relative;
  aspect-ratio: 4/3;
  border-radius: 3rem;
  overflow: hidden;
  box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.15);
  border: 8px solid #fff;
}
.eventsPage .events-intro .introImage .imageContainer img {
  object-fit: cover;
}
.eventsPage .events-intro .introImage .floatingStat {
  position: absolute;
  bottom: -20px;
  left: -20px;
  background: #fff;
  padding: 1.5rem 2rem;
  border-radius: 2rem;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  gap: 1.25rem;
  border: 1px solid #f1f5f9;
}
@media (max-width: 767px) {
  .eventsPage .events-intro .introImage .floatingStat {
    display: none;
  }
}
.eventsPage .events-intro .introImage .floatingStat .icon {
  width: 48px;
  height: 48px;
  background: #f97316;
  color: #fff;
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eventsPage .events-intro .introImage .floatingStat .info .count {
  display: block;
  font-size: 1.5rem;
  font-weight: 900;
  color: #020617;
  line-height: 1;
}
.eventsPage .events-intro .introImage .floatingStat .info .label {
  font-size: 10px;
  font-weight: 800;
  color: #94a3b8;
  text-transform: uppercase;
}
.eventsPage .events-listing {
  background-color: #f8fafc;
}
.eventsPage .eventsGrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 2rem;
}
@media (min-width: 1024px) {
  .eventsPage .eventsGrid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.eventsPage .premiumEventCard {
  background: #fff;
  border-radius: 2rem;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  border: 1px solid #f1f5f9;
  display: flex;
  flex-direction: column;
}
.eventsPage .premiumEventCard .imageWrapper {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
}
.eventsPage .premiumEventCard .imageWrapper .card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, transparent 60%);
  display: flex;
  align-items: flex-end;
  padding: 1.5rem;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.4s ease;
  z-index: 5;
}
.eventsPage .premiumEventCard .imageWrapper .card-overlay .action-pill {
  background: #fff;
  color: #FF6B35;
  padding: 8px 20px;
  border-radius: 100px;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}
.eventsPage .premiumEventCard .imageWrapper img {
  object-fit: cover;
  transition: transform 0.8s ease;
}
.eventsPage .premiumEventCard .cardContent {
  padding: 1.5rem;
  background: #fff;
  flex: 1;
  display: flex;
  flex-direction: column;
  transition: all 0.3s ease;
}
.eventsPage .premiumEventCard .cardContent .location-meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
  color: #94a3b8;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 0.2rem;
}
.eventsPage .premiumEventCard .cardContent .location-meta svg {
  color: #ff5a3d;
}
.eventsPage .premiumEventCard .cardContent .packageTitle {
  font-size: 1.125rem;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.25;
  margin-bottom: 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color 0.3s ease;
  font-family: var(--font-outfit);
}
.eventsPage .premiumEventCard .cardContent .event-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: auto;
  border-top: 1px solid #f1f5f9;
  padding-top: 1rem;
}
.eventsPage .premiumEventCard .cardContent .event-footer .join-event {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 900;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.15rem;
  color: #94a3b8;
  transition: color 0.3s ease;
}
.eventsPage .premiumEventCard .actionIcon-premium {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: #f1f5f9;
  color: #94a3b8;
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.eventsPage .premiumEventCard:hover {
  transform: translateY(-8px);
  box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.1);
  border-color: rgba(255, 107, 53, 0.2);
}
.eventsPage .premiumEventCard:hover .imageWrapper .card-overlay {
  opacity: 1;
  transform: translateY(0);
}
.eventsPage .premiumEventCard:hover .imageWrapper img {
  transform: scale(1.1);
}
.eventsPage .premiumEventCard:hover .cardContent {
  background: #f8fafc;
}
.eventsPage .premiumEventCard:hover .cardContent .packageTitle {
  color: #ff5a3d;
}
.eventsPage .premiumEventCard:hover .cardContent .event-footer .join-event {
  color: #ff5a3d;
}
.eventsPage .premiumEventCard:hover .actionIcon-premium {
  background: #ff5a3d;
  color: #fff;
  transform: rotate(45deg);
}
.eventsPage .category-tag {
  position: absolute;
  top: 20px;
  left: 20px;
  padding: 6px 16px;
  border-radius: 99px;
  font-size: 9px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  backdrop-filter: blur(8px);
  z-index: 10;
}
.eventsPage .category-tag.corporate {
  background-color: rgba(255, 107, 53, 0.9);
}
.eventsPage .category-tag.special {
  background-color: rgba(255, 90, 61, 0.9);
}
.eventsPage.detail-v3 {
  padding-bottom: 5rem;
}
.eventsPage.detail-v3 .ed-stats-bar {
  margin-top: -3.5rem;
  position: relative;
  z-index: 50;
  background: #fff;
  border-radius: 2rem;
  padding: 2rem 3rem;
  border: 1px solid rgba(0, 0, 0, 0.05);
  box-shadow: 0 30px 60px -10px rgba(0, 0, 0, 0.12);
}
.eventsPage.detail-v3 .ed-stats-bar .ed-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}
@media (min-width: 1024px) {
  .eventsPage.detail-v3 .ed-stats-bar .ed-stat-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.eventsPage.detail-v3 .ed-stats-bar .ed-stat-item {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.eventsPage.detail-v3 .ed-stats-bar .ed-stat-label {
  font-size: 10px;
  font-weight: 900;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.eventsPage.detail-v3 .ed-stats-bar .ed-stat-value {
  font-size: 0.875rem;
  font-weight: 800;
  color: #0f172a;
  display: flex;
  align-items: center;
  gap: 8px;
}
.eventsPage.detail-v3 .ed-stats-bar .ed-stat-value svg {
  color: #f97316;
}
@media (min-width: 1024px) {
  .eventsPage.detail-v3 .ed-stats-bar .ed-stat-bordered {
    border-left: 1px solid #f1f5f9;
    padding-left: 2.5rem;
  }
}
@media (max-width: 767px) {
  .eventsPage.detail-v3 .ed-stats-bar {
    padding: 1.5rem;
    margin-top: -2rem;
  }
  .eventsPage.detail-v3 .ed-stats-bar .ed-stat-grid {
    gap: 1rem;
  }
}
.eventsPage.detail-v3 .ed-main-content {
  padding-top: 4rem;
}
.eventsPage.detail-v3 .ed-overview-card {
  background-color: #fff;
  border: 1px solid #f1f5f9;
  border-radius: 2.5rem;
  padding: 0;
  position: relative;
}
.eventsPage.detail-v3 .ed-overview-card .ed-overview-header {
  font-size: 1.5rem;
  font-weight: 800;
  margin-bottom: 2rem;
  color: #0f172a;
  border-left: 4px solid #FF6B35;
  padding-left: 1.5rem;
}
.eventsPage.detail-v3 .ed-overview-card .ed-description-v3 {
  font-size: 1.05rem;
  line-height: 1.8;
  color: #475569;
}
.eventsPage.detail-v3 .ed-overview-card .ed-description-v3 .ed-lead-text {
  color: #0f172a;
  font-weight: 800;
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
  display: block;
  line-height: 1.4;
  font-family: var(--font-outfit);
}
.eventsPage.detail-v3 .ed-overview-card .ed-description-v3 p, .eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h1, .eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h2, .eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h3, .eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h4 {
  margin-bottom: 1.25rem;
  color: inherit;
}
.eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h1, .eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h2, .eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h3, .eventsPage.detail-v3 .ed-overview-card .ed-description-v3 h4 {
  font-weight: 800;
  color: #020617;
  font-size: 1.25rem;
}
.eventsPage.detail-v3 .ed-overview-card .ed-info-pills {
  margin-top: 3.5rem;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1.25rem;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.05);
  padding: 1.5rem;
  border-radius: 2rem;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
}
@media (min-width: 768px) {
  .eventsPage.detail-v3 .ed-overview-card .ed-info-pills {
    grid-template-columns: repeat(3, 1fr);
    padding: 2.5rem;
  }
}
.eventsPage.detail-v3 .ed-overview-card .ed-pill {
  background: #fff;
  padding: 1.5rem;
  border-radius: 1.5rem;
  border: 1px solid #f1f5f9;
  display: flex;
  align-items: center;
  gap: 1rem;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
}
.eventsPage.detail-v3 .ed-overview-card .ed-pill-icon {
  width: 48px;
  height: 48px;
  border-radius: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.eventsPage.detail-v3 .ed-overview-card .ed-pill-blue {
  background: #eff6ff;
  color: #2563eb;
}
.eventsPage.detail-v3 .ed-overview-card .ed-pill-orange {
  background: #fff7ed;
  color: #ea580c;
}
.eventsPage.detail-v3 .ed-overview-card .ed-pill-emerald {
  background: #ecfdf5;
  color: #059669;
}
.eventsPage.detail-v3 .ed-overview-card .ed-pill-text .lbl {
  font-size: 10px;
  font-weight: 900;
  color: #94a3b8;
  text-transform: uppercase;
  display: block;
}
.eventsPage.detail-v3 .ed-overview-card .ed-pill-text .val {
  font-size: 12px;
  font-weight: 800;
  color: #020617;
  text-transform: uppercase;
}
.eventsPage.detail-v3 .ed-highlights {
  margin-top: 4rem;
}
.eventsPage.detail-v3 .ed-highlights .ed-h-title {
  font-size: 1.5rem;
  font-weight: 900;
  margin-bottom: 2rem;
  text-transform: uppercase;
  font-style: italic;
  display: flex;
  align-items: center;
  gap: 10px;
}
.eventsPage.detail-v3 .ed-highlights .ed-h-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1.5rem;
}
.eventsPage.detail-v3 .ed-highlights .ed-h-item {
  display: flex;
  gap: 15px;
  padding: 1.25rem;
  background: #fff;
  border: 1px solid #f1f5f9;
  border-radius: 1.25rem;
  transition: 0.3s;
}
.eventsPage.detail-v3 .ed-highlights .ed-h-item:hover {
  background: #fff7ed;
  border-color: #ffedd5;
}
.eventsPage.detail-v3 .ed-highlights .ed-h-check {
  width: 24px;
  height: 24px;
  background: #ffedd5;
  color: #ea580c;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.eventsPage.detail-v3 .ed-highlights .ed-h-text {
  font-size: 0.875rem;
  font-weight: 700;
  color: #334155;
  line-height: 1.5;
}
@media (min-width: 1024px) {
  .eventsPage.detail-v3 .ed-sidebar {
    position: sticky;
    top: 120px;
  }
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card {
  background: #fff;
  border-radius: 2rem;
  padding: 3rem;
  color: #0f172a;
  position: relative;
  overflow: hidden;
  border: 1px solid #f1f5f9;
  box-shadow: 0 40px 80px -20px rgba(0, 0, 0, 0.08);
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-card-header {
  position: relative;
  z-index: 5;
  margin-bottom: 2rem;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-card-header h4 {
  font-size: 1.75rem;
  font-weight: 900;
  text-transform: uppercase;
  font-style: italic;
  line-height: 1.1;
  margin-bottom: 0.75rem;
  color: #020617;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-card-header h4 span {
  color: #FF6B35;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-card-header p {
  font-size: 0.875rem;
  color: #64748b;
  font-weight: 500;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-form {
  position: relative;
  z-index: 5;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-field {
  margin-bottom: 1.5rem;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-field label {
  display: block;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  color: #94a3b8;
  margin-bottom: 0.5rem;
  padding-left: 5px;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-input-group {
  position: relative;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-input-group svg {
  position: absolute;
  left: 1.25rem;
  top: 50%;
  transform: translateY(-50%);
  color: #94a3b8;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-input-group input {
  width: 100%;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 1.25rem;
  padding: 1.125rem 1.25rem 1.125rem 3.5rem;
  color: #0f172a;
  font-size: 0.875rem;
  outline: none;
  transition: 0.3s;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-input-group input:focus {
  border-color: #FF6B35;
  background: #fff;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-submit-btn {
  width: 100%;
  background: #FF6B35;
  padding: 1.25rem;
  border: none;
  border-radius: 1.5rem;
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  font-size: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 2rem;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  cursor: pointer;
  box-shadow: 0 10px 20px rgba(255, 83, 73, 0.2);
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-submit-btn:hover {
  background: #020617;
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-submit-btn:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-verified-text {
  display: block;
  text-align: center;
  font-size: 10px;
  font-weight: 800;
  color: #94a3b8;
  text-transform: uppercase;
  margin-top: 1.5rem;
  letter-spacing: 0.05em;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-privacy {
  display: block;
  text-align: center;
  font-size: 9px;
  font-weight: 800;
  color: #94a3b8;
  text-transform: uppercase;
  margin-top: 1.5rem;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-success {
  text-align: center;
  padding: 2rem 0;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-success .icon {
  width: 80px;
  height: 80px;
  background: #059669;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.5rem;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-success h5 {
  font-size: 1.5rem;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.eventsPage.detail-v3 .ed-sidebar .ed-booking-card .ed-success p {
  color: #64748b;
  font-size: 0.875rem;
}

.role-manager-page .rm-tabs {
  display: flex;
  background: #f1f5f9;
  padding: 0.25rem;
  border-radius: 1rem;
  gap: 0.25rem;
}
.role-manager-page .rm-tabs .rm-tab-btn {
  padding: 0.625rem 1.5rem;
  border-radius: 0.75rem;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: none;
  color: #94a3b8;
  background: transparent;
  white-space: nowrap;
}
.role-manager-page .rm-tabs .rm-tab-btn.active {
  background: white;
  color: #ff6b35;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}
.role-manager-page .rm-tabs .rm-tab-btn:hover:not(.active) {
  color: #64748b;
  background: rgba(255, 255, 255, 0.5);
}
.role-manager-page .rm-table-card {
  background: white;
  border-radius: 2rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  border: 1px solid #f8fafc;
}
.role-manager-page .rm-table-card table {
  width: 100%;
  border-collapse: collapse;
}
.role-manager-page .rm-table-card table th {
  padding: 1.25rem 2.5rem;
  text-align: left;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: #94a3b8;
  font-weight: 600;
  border-bottom: 2px solid #f8fafc;
  background: #fff;
}
.role-manager-page .rm-table-card table td {
  padding: 1.5rem 2.5rem;
  vertical-align: middle;
  border-bottom: 1px solid #f8fafc;
}
.role-manager-page .rm-table-card table td .user-avatar {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 0.875rem;
}
.role-manager-page .rm-table-card table td .user-avatar.admin {
  background: #fff1f2;
  color: #e11d48;
}
.role-manager-page .rm-table-card table td .user-avatar.manager {
  background: #eff6ff;
  color: #2563eb;
}
.role-manager-page .rm-table-card table td .user-avatar.user {
  background: #f8fafc;
  color: #94a3b8;
}
.role-manager-page .rm-table-card table td .user-name {
  font-size: 13px;
  font-weight: 600;
  color: #0f172a;
  margin-bottom: 0.25rem;
}
.role-manager-page .rm-table-card table td .user-email {
  font-size: 11px;
  color: #94a3b8;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.role-manager-page .rm-role-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.875rem;
  border-radius: 0.5rem;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.role-manager-page .rm-role-badge.admin {
  background: #fff1f2;
  color: #e11d48;
  border: 1px solid #ffe4e6;
}
.role-manager-page .rm-role-badge.manager {
  background: #eff6ff;
  color: #2563eb;
  border: 1px solid #dbeafe;
}
.role-manager-page .rm-role-badge.guide {
  background: #fffbeb;
  color: #d97706;
  border: 1px solid #fef3c7;
}
.role-manager-page .rm-role-badge.user {
  background: #f8fafc;
  color: #64748b;
  border: 1px solid #f1f5f9;
}
.role-manager-page .rm-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.75rem;
  border-radius: 2rem;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}
.role-manager-page .rm-status-badge.verified {
  background: #ecfdf5;
  color: #059669;
  border: 1px solid #d1fae5;
}
.role-manager-page .rm-status-badge.standard {
  background: #f8fafc;
  color: #94a3b8;
  border: 1px solid #f1f5f9;
}
.role-manager-page .rm-role-select {
  background: #f8fafc;
  border: 1px solid #f1f5f9;
  padding: 0.5rem 1rem;
  border-radius: 0.75rem;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #475569;
  outline: none;
  transition: all 0.2s;
}
.role-manager-page .rm-role-select:focus {
  border-color: #ff6b35;
  background: white;
}
.role-manager-page .rm-delete-btn {
  padding: 0.625rem;
  background: #f8fafc;
  color: #94a3b8;
  border-radius: 0.75rem;
  border: none;
  transition: all 0.2s;
}
.role-manager-page .rm-delete-btn:hover {
  background: #ef4444;
  color: white;
}
.role-manager-page .rm-delete-btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.leftFixedBox {
  position: fixed;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  right: 10px;
  top: 50%;
  z-index: 10000;
  gap: 10.53px;
  padding: 10px;
}
.leftFixedBox > div:first-child img {
  animation: pulse 2s infinite;
}
@media (max-width: 991px) {
  .leftFixedBox {
    display: none;
  }
}
.leftFixedBox .dropdown-toggle.iconBox {
  margin-bottom: 0;
  margin-bottom: 0;
}
.leftFixedBox .iconBox {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  width: 40px;
  height: 40px;
}
@media (min-width: 768px) {
  .leftFixedBox .iconBox {
    width: 48px;
    height: 48px;
  }
}
@media (min-width: 992px) {
  .leftFixedBox .iconBox {
    width: 50px;
    height: 50px;
  }
}
.leftFixedBox .iconBox img {
  height: auto;
  width: 40px;
}
@media (min-width: 768px) {
  .leftFixedBox .iconBox img {
    width: 48px;
  }
}
@media (min-width: 992px) {
  .leftFixedBox .iconBox img {
    width: 50px;
  }
}
@media (min-width: 1200px) {
  .leftFixedBox .iconBox img {
    width: 52px;
  }
}
@media (min-width: 1360px) {
  .leftFixedBox .iconBox img {
    width: 54px;
  }
}
@media (min-width: 1440px) {
  .leftFixedBox .iconBox img {
    width: 56px;
  }
}
@media (min-width: 1600px) {
  .leftFixedBox .iconBox img {
    width: 58px;
  }
}
@media (min-width: 1900px) {
  .leftFixedBox .iconBox img {
    width: 60px;
  }
}
.leftFixedBox .iconBox i {
  color: #6f4287;
}
.leftFixedBox .dropdown-menu {
  min-width: 40px;
  width: auto;
  height: 50px;
  background: transparent;
  padding: 0;
  border: 0;
}
.leftFixedBox .dropdown-menu .iconBox {
  background: linear-gradient(45deg, black, transparent);
  width: 35px;
  height: 35px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: none;
  box-shadow: 0px 2px 10px 2px rgba(56, 52, 52, 0.2);
  text-decoration: none;
}
.leftFixedBox .dropdown-menu .iconBox i {
  color: #ffffff;
  font-size: 18px;
}
.leftFixedBox .dropdown-menu .iconBox:hover {
  background: #0a1821;
}
.leftFixedBox .dropdown-menu.show {
  display: flex;
  flex-direction: row;
  align-items: center;
  grid-gap: 5px;
  display: flex;
  flex-direction: row;
  align-items: center;
  grid-gap: 5px;
}
.leftFixedBox .QuickSideRightBar {
  position: relative;
}
.leftFixedBox .QuickSideRightBar .iconBox {
  box-shadow: 0px 15px 15px 0px rgba(106, 40, 117, 0.15);
}
.leftFixedBox .QuickSideRightBar .slideLeft {
  position: absolute;
  background: linear-gradient(45deg, black, transparent);
  width: 0;
  height: 50px;
  right: 0;
  top: 0px;
  font-size: 13px;
  line-height: 40px;
  color: #0A1119;
  z-index: -1;
  opacity: 0;
  overflow: hidden;
  transition: ease-in-out 0.5s;
}
.leftFixedBox .QuickSideRightBar .slideLeft .textRight {
  position: absolute;
  left: 12px;
  top: 0;
  font-size: 17px;
  font-weight: 500;
  color: #fff;
  font-family: "Roboto", sans-serif;
  display: flex;
  align-items: center;
  height: 100%;
  padding-left: 10px;
}
.leftFixedBox .QuickSideRightBar:hover .slideLeft {
  opacity: 1;
  transition: 0.3s ease-in-out;
  width: 190px;
}
.leftFixedBox .animateBox {
  animation: animate2 2s linear infinite;
}

.bottomFixedMenu {
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 10;
  padding: 12px 0px;
  overflow: hidden;
  background: #0A1119;
}
.bottomFixedMenu ul {
  list-style: none;
}
.bottomFixedMenu span {
  color: #fff;
  display: block;
  line-height: 12px;
}
@media (max-width: 575px) {
  .bottomFixedMenu span {
    font-size: 12px;
  }
}
.bottomFixedMenu li {
  display: flex;
  width: 33.3%;
  justify-content: center;
  border-right: 1px solid rgba(255, 255, 255, 0.3803921569);
}
.bottomFixedMenu li a, .bottomFixedMenu li button {
  background: unset;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.myrabot-container {
  position: fixed;
  bottom: 100px;
  right: 24px;
  z-index: 999;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.myrabot-container:hover {
  transform: scale(1.1) translateY(-5px);
}
.myrabot-container .myrabot-image {
  position: relative;
  z-index: 2;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.15));
  user-select: none;
  pointer-events: none;
  display: block;
}
.myrabot-container .myrabot-shadow {
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
  width: 45px;
  height: 12px;
  background: rgba(0, 0, 0, 0.25);
  border-radius: 50%;
  filter: blur(5px);
  z-index: 1;
  transition: all 0.3s ease;
}
.myrabot-container:hover {
  transform: translateY(-8px);
}
.myrabot-container:hover .myrabot-shadow {
  width: 35px;
  background: rgba(0, 0, 0, 0.15);
  filter: blur(7px);
  transform: translateX(-50%) translateY(8px);
}
@media (max-width: 1023px) {
  .myrabot-container {
    bottom: calc(140px + env(safe-area-inset-bottom, 0px));
    right: 16px;
  }
  .myrabot-container .myrabot-image {
    width: 60px !important;
    height: 60px !important;
  }
  .myrabot-container .myrabot-shadow {
    width: 38px;
    height: 10px;
  }
}

h2, .h2,
h2 span, .h2 span, h2 strong {
  font-size: 18px;
  margin-bottom: 6px;
}
@media (min-width: 576px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 22px;
    margin-bottom: 10px;
  }
}
@media (min-width: 992px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 24px;
  }
}
@media (min-width: 1200px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 26px;
    margin-bottom: 16px;
  }
}
@media (min-width: 1280px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 28px;
  }
}
@media (min-width: 1350px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 30px;
  }
}
@media (min-width: 1440px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 32px;
  }
}
@media (min-width: 1600px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 34px;
  }
}
@media (min-width: 1900px) {
  h2, .h2,
  h2 span, .h2 span, h2 strong {
    font-size: 36px;
  }
}

h3,
.h3, .h3 strong {
  font-weight: 500;
  font-size: 15px;
}
@media (min-width: 992px) {
  h3,
  .h3, .h3 strong {
    font-size: 16px;
  }
}
@media (min-width: 1200px) {
  h3,
  .h3, .h3 strong {
    font-size: 17px;
  }
}
@media (min-width: 1280px) {
  h3,
  .h3, .h3 strong {
    font-size: 18px;
  }
}
@media (min-width: 1350px) {
  h3,
  .h3, .h3 strong {
    font-size: 19px;
  }
}
@media (min-width: 1440px) {
  h3,
  .h3, .h3 strong {
    font-size: 20px;
  }
}
@media (min-width: 1600px) {
  h3,
  .h3, .h3 strong {
    font-size: 21px;
  }
}
@media (min-width: 1900px) {
  h3,
  .h3, .h3 strong {
    font-size: 22px;
  }
}

h4,
.h4, .h4 strong {
  font-weight: 500;
  font-size: 13px;
}
@media (min-width: 768px) {
  h4,
  .h4, .h4 strong {
    font-size: 14px;
  }
}
@media (min-width: 992px) {
  h4,
  .h4, .h4 strong {
    font-size: 13px;
  }
}
@media (min-width: 1200px) {
  h4,
  .h4, .h4 strong {
    font-size: 14px;
  }
}
@media (min-width: 1280px) {
  h4,
  .h4, .h4 strong {
    font-size: 14px;
  }
}
@media (min-width: 1350px) {
  h4,
  .h4, .h4 strong {
    font-size: 17px;
  }
}
@media (min-width: 1440px) {
  h4,
  .h4, .h4 strong {
    font-size: 16px;
  }
}
@media (min-width: 1600px) {
  h4,
  .h4, .h4 strong {
    font-size: 17px;
  }
}
@media (min-width: 1900px) {
  h4,
  .h4, .h4 strong {
    font-size: 20px;
  }
}

h5,
.h5, .h5 strong {
  font-weight: 500;
  font-size: 12px;
}
@media (min-width: 768px) {
  h5,
  .h5, .h5 strong {
    font-size: 13px;
  }
}
@media (min-width: 992px) {
  h5,
  .h5, .h5 strong {
    font-size: 12px;
  }
}
@media (min-width: 1200px) {
  h5,
  .h5, .h5 strong {
    font-size: 13px;
  }
}
@media (min-width: 1350px) {
  h5,
  .h5, .h5 strong {
    font-size: 14px;
  }
}
@media (min-width: 1440px) {
  h5,
  .h5, .h5 strong {
    font-size: 15px;
  }
}
@media (min-width: 1600px) {
  h5,
  .h5, .h5 strong {
    font-size: 16px;
  }
}
@media (min-width: 1900px) {
  h5,
  .h5, .h5 strong {
    font-size: 18px;
  }
}

p {
  margin-bottom: 0;
}

/*# sourceMappingURL=style.css.map */
