@import url("https://fonts.googleapis.com/css2?family=Gabarito:wght@400..900&family=Geologica:wght@100..900&family=Hanken+Grotesk:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

body {
  font-family: "Poppins";
  overflow-x: hidden;
}
.mobile-dropdown-toggle {
  font-weight: 400 !important;
  font-size: 24px !important;
  line-height: 32px !important;

  color: #00253a !important;
}
#navbarContent a.nav-link {
  display: flex;
  align-items: center;
  font-weight: 400;
  font-size: 20px;
gap: 5px;
  color: #ffffff;
}
.spinner {
  background: url("/wp-content/uploads/2025/06/Spinner@1x-1.0s-200px-200px.gif");
  background-position: center;
  background-repeat: no-repeat;
  min-height: 200px;
}
a.hovercol {
  text-decoration: none;
}
.cursor-pointer {
  cursor: pointer;
}
.hero {
  height: 772px;
  overflow: hidden;
}
/* * {
  outline: 1px solid #e76d57 !important;
} */
/* Add this to prevent overflow */
.owl-carousel1 {
  overflow: hidden;
}
p.alt-color3 {
  color: #7f7f7f !important;
}
p.alt-color {
  color: #657b88;
}
p.alt-color2 {
  color: #f0f2f4 !important;
}
p.alt-color4 {
  color: #98a7b0 !important;
}
.destination-group {
  overflow-x: hidden;
}
.bottomtext {
  margin-top: auto; /* Pushes bottom content to bottom */
  flex-shrink: 0; /* pushes this section to bottom of card */
}
.mapimgs {
  width: 100%;
  object-fit: cover;
  aspect-ratio: 16/9;
  border-radius: 18px;
}
.item .h-100 {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Mobile screens (up to 576px) */
@media (max-width: 576px) {
  .mapimgs {
    aspect-ratio: 50 / 37;
  }
}

/* Small tablets (577px to 768px) */
@media (min-width: 577px) and (max-width: 768px) {
  .mapimgs {
    aspect-ratio: 50 / 37;
  }
}

/* Medium tablets (769px to 991px) */
@media (min-width: 769px) and (max-width: 991px) {
  .mapimgs {
    aspect-ratio: 16/9;
  }
}

/* Large screens (992px and up) */
@media (min-width: 992px) {
  .mapimgs {
    aspect-ratio: 16/9;
  }
}

/* Extra large screens (1200px and up) */
@media (min-width: 1200px) {
  .mapimgs {
    aspect-ratio: 16/9;
  }
}
.wpcf7-list-item.first.last {
  margin-left: 0 !important;
}
.input {
  color: white;
  background-color: transparent !important;
  border-color: #cad2d7 !important;
  width: 402px !important;
  height: 42px  !important;
  border-radius: 100px !important;
  border: 1px solid !important;
padding: 10px 20px !important;
  gap: 10px !important;
  box-shadow: none !important;
}
.input-mob {
  color: white;
  background-color: transparent;
  border-color: #cad2d7 !important;
  width: 100% !important  ;
  height: 51px;
  border-radius: 100px;
  border: 1px solid;

  font-weight: 400;
  font-size: 14px;

  padding-left: 10px;
}
#faqs {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 40px 0;
}

.faq-left {
  display: flex;
  align-items: flex-start;
  width: 340px; /* Fixed width for left */
  min-width: 220px;
  max-width: 400px;

  padding-right: 0;
}

.faq-right {
  display: flex;
  flex-direction: column;
  flex: 1; /* Take remaining space */
  min-width: 0;
  /* Space between left and right */
  padding-right: 40px;
  border-radius: 0 12px 12px 0;
  /* Remove width: 50%; if present */
}
.faq-title {
  color: #00253a !important;
  font-weight: 400;
  font-size: 57px;
  line-height: 100%;

  margin: 0;
}

@media (min-width: 1440px) {
  #faqs {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 25%;
  }
}
/* Tablet View */
@media (max-width: 1200px) {
  .faq-left {
    width: 220px;
    min-width: 140px;
    padding-left: 24px;
  }
  .faq-title {
    font-size: 36px;
  }
  .faq-right {
    padding-left: 24px;
    padding-right: 24px;
    border-radius: 0 8px 8px 0;
  }
}

/* Tablet/Narrower */
@media (max-width: 991.98px) {
  .faq-left {
    width: 160px;
    min-width: 100px;
    padding-left: 16px;
  }
  .faq-title {
    font-size: 28px;
  }
  .faq-right {
    padding-left: 16px;
    padding-right: 16px;
    border-radius: 0 8px 8px 0;
  }
}

/* Mobile View */
@media (max-width: 576px) {
  #faqs {
    flex-direction: column;
    padding: 24px 0 0 0;
  }
  .faq-left {
    width: 100%;
    min-width: 0;
    padding: 0 16px;
    margin-bottom: 0;
    max-width: 100%;
  }
  .faq-title {
    font-size: 22px;
    margin-bottom: 16px;
  }
  .faq-right {
    width: 100%;
    padding: 24px 16px 32px 16px;
    border-radius: 0 0 12px 12px;
  }
}
.dropdown {
  font-weight: 300;
  font-size: 14px;
  /* line-height: 1.2; */
  /* -4% of 14px */
  color: #515151;
}
.dropdown-title {
  font-weight: 300;
  font-size: 14px;
  line-height: 1.2;
  /* -4% of 14px */
  color: #000000;
}
.dropdown-arrow {
  width: 13.750000000000052px;
  height: 6.875000000000026px;

  border-width: 2.06px;
}
.dropdownimg {
  width: 60px;
  height: 60px;
}
.smalltaxname {
  font-weight: 300;
  font-size: 16px;
  line-height: 1.2;
  /* -4% of 14px */
  color: #515151;
}

.dropdown.altm {
  text-align: start !important;
  color: #515151;

  font-weight: 300;
  font-size: 16px;
  line-height: 1.2;
}
.searchtogglelogo {
  margin-right: 10px !important;
}

/* Title styles - Desktop: 57px, Tablet: 48px, Mobile: 32px */
.holiday,
.whatourclients,
.whychoose {
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  /* -4% of 57px */
  color: #00253a;
}
.latest {
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  /* -4% of 57px */
  color: #00253a;
}
/* Tablet styles */
@media (max-width: 768px) {
  .holiday,
  .whatourclients,
  .latest,
  .whychoose {
    font-size: 32px;
    /* -4% of 48px */
  }
}
@media (max-width: 768px) {
  .latest {
    font-size: 28px;
    /* -4% of 48px */
  }
}
/* Mobile styles */
@media (max-width: 480px) {
  .holiday,
  .whatourclients,
  .latest,
  .whychoose {
    font-size: 28px;
    /* -4% of 32px */
  }
}

.hero img {
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hero-section {
  position: relative;

  /* height: 980px; */
  background-repeat: no-repeat;
  background-position: top left;
  background-size: cover;
}

.hero-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.hero-background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 37, 58, 0.52);
}

.hero-content-wrapper {
  position: relative;
  z-index: 2;
  padding: 60px 0;
}

.hero-content2 {
  color: #ffffff;
}

.heropara {
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  color: #ffffff;
  max-width: 92%;
    width: 100%;
}
@media (max-width: 1024px) {
    .heropara {
        max-width: 80%;
    }
}
@media (max-width: 767.98px) {
    .heropara {
        max-width: 100%;
    }
}
@media (max-width: 576px) {
  .about,
  .view-booking {
    display: none !important;
  }
  
}
.facetwp-facet {
  margin-bottom: 0px !important;
}
.mapsvg-disabled {
  fill: #e4e7ea !important;
  stroke: #98a7b0 !important;
  stroke-width: 0.317052px !important;
}
.feature-img-container,
.team-image {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  z-index: 2;
  border-radius: 10px;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  margin-bottom: 30px;
}

/* Close button for iframe popup (white X) */
.iframe-close-btn {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.6); /* darker translucent background */
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.3);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  line-height: 1;
  z-index: 2147483647;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  backdrop-filter: blur(6px) brightness(1.1);
}

/* Hover & focus states for visibility and feedback */
.iframe-close-btn:hover,
.iframe-close-btn:focus {
  background: rgba(0, 0, 0, 0.8);
  border-color: rgba(255, 255, 255, 0.5);
  transform: scale(1.05);
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
  outline: none;
}
.modal{
  z-index:99999 !important;
}
/* Position inside modal */
#popupModal .modal-content {
  position: relative;
}

#popupModal .modal-content .iframe-close-btn {
  position: absolute;
  top: 12px;
  right: 20px;
}

.owl-item .item {
  width: 100%;
}
@media (max-width: 576px) {
  .feature-img-container,
  .team-image {
    justify-content: center !important;
  }
}

.heroimgcontainer {
  width: 100%;

  /* height: 562px; */
  object-fit: cover;
  position: relative;
  z-index: 2;
}

.hero-title {
  font-size: 54px;
  font-weight: 400;
  line-height: 1; /* 100% */
  /* -4% of 74px */
  margin: 0; /* optional, to remove spacing if needed */
  color: #f0f2f4;
  /* position: relative;
  z-index:3; */
}

.h4 {
  font-weight: 400;
  font-size: 32px;
  line-height: 1.2; /* 120% */
  /* -4% of 32px */
}
h5 {
  font-weight: 400;
  font-size: 21px;
  line-height: 24px;
}
h6 {
  font-weight: 400;
  font-size: 18px;
  line-height: 1.2; /* 120% */
  /* -4% of 20px */
  color: #00253a;
}
h6.alt-color {
  color: #ffffff;
}
.featuredh {
  font-size: 27px;
}
.featuredm {
  font-size: 21px;
}
.talktext {
  font-weight: 400;
  font-size: 16px;

  color: #cad2d7;
}
@media (max-width: 768px) {
  .btn.custom-btn.no-mobile-width {
    width: auto !important;
  }
}
@media (max-width: 768px) {
  .btn.custom-btn{
    width: 90% !important;
  }
}
/* Mobile styles for 375px and below */
@media (max-width: 480px) {
  .hero {
    height: 593px !important;
    overflow: hidden;
  }
  .hero-title {
    font-size: 40px;
  }
  .africa {
    font-size: 34px !important;
  }
   .featuredtitle {
    font-size: 34px !important;
  }
  .more-title {
    font-size: 32px !important;
  }
  .btn.custom-btn-mob,
  .btn.custom-btn,
  .btn.lmore {
    width: 90% !important;
  }
  .otherh3 {
    font-size: 32px !important;
  }
  .holiday-intro {
    font-size: 21px !important;
  }
  .h4 {
    font-size: 1.1rem;
  }
  h5 {
    font-size: 21px;
  }
  h6 {
    font-size: 21px;
  }
  .featuredh {
    font-size: 21px;
  }

  p.text-14 {
    font-size: 14px !important;
  }
}
.storyteam-mob {
  border-radius: 32px;
  object-fit: cover;
  height: 120px;
}
.storyteam {
  border-radius: 32px;
  object-fit: cover;
  width: 332px;
  height: 331px;
}
.a {
  font-weight: 400;
  font-size: 14px;

  color: #ffffff;
}
/* fixed */
.popular,
.talk,
.sub {
  font-weight: 400;
  font-size: 21px;
  line-height: 1.2; /* 120% */ /* -4% of 21px */
}
.featuredtitle {
  font-weight: 400;
  font-size: 42px;
  line-height: 100%;

  color: #e76d57!important;
}


.africa {
  font-weight: 400 !important;
  font-size: 42px;
  line-height: 100%;
  /* -4% of 32px */
  color: #00253a !important;
}

.theeshorestory {
  font-weight: 400;
  font-size: 32px;
  line-height: 57px;

  color: #ffffff;
}
.theeshorestorymob {
  font-weight: 400;
  font-size: 28px;
  line-height: 112%;

  color: #ffffff;
}
.imgbrand-logo {
  width: 200px;
  height: auto;
  object-fit: contain;
}

.grid-img {
  width: 60px;
  height: 60px;
  object-fit: cover;
}
.dropdown-borderline {
  border: none;
  border-top: 2px solid #d9d9d9;
}
.vertical-seperator {
  height: 38px;
  width: 1.5px;
  background: #ffffff;
  border-radius: 1px;
  opacity: 0.6;
}
.search-btn {
  background: transparent;
  border: none;
  border-radius: 0;
}
.search-btnm {
  border: 1px solid #fff;
  border-radius: 50%;
  width: 36px;
  height: 36px;
}
.btnheader {
  background-color: #e76d57 !important;
}
.menu-toggler {
  width: 40px;
  height: 40px;
  padding: 0;
  border: none;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toggler-icon {
  display: inline-block;
  width: 35px;
  height: 35px;
  border: 1px solid #fff;
  border-radius: 50%;
  position: relative;
}

.toggler-line {
  position: absolute;
  width: 19px;
  height: 3px;
  background: #fff;
  border-radius: 3px;
  left: 7px;
}

.line1 {
  top: 10px;
}

.line2 {
  top: 18px;
}
.atol-logo {
  width: auto;
  height: 40px;
}
.checkicon {
  width: 15px;
  height: auto;
  margin-right: 0.5rem;
}
.benefitdots {
  font-size: 24px;
  color: black;
}
#maploader {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 999999;
  display: none;
}

.Global-divider {
  border: 0;
  border-top: 2px solid #cad2d7;
  opacity: 0.8;
}
.Single-divider {
  border: 0;
  border-top: 1px solid #f0f2f4;
  opacity: 0.8;
}
.orcolor {
  color: #e76d57;
}
.featuredbannerimg {
  width: 100%;
  aspect-ratio: 17 / 11;
  object-fit: cover;
  border-radius: 20px;
}
.text-small,
.phone-number-mobile,
.dropdown-menu {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.2; /* 120% */

  color: #f0f2f4;
}
#mobileMenuClose {
  width: 40px;
  height: 40px;
  border-radius: 76.92px;
  gap: 7.69px;
  border-width: 0.77px;
  border: 0.77px solid #335061;
  backdrop-filter: blur(16.153846740722656px);
}
.phone-number-mobile-panel,
.phone-number-mobile-panel a,
.phone-number-mobile-panel a:link,
.phone-number-mobile-panel a:visited,
.phone-number-mobile-panel a:hover,
.phone-number-mobile-panel a:active {
  width: 100px;
  height: 17px;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.2; /* 120% */
color: #335061 !important;
  text-decoration: none !important;
  cursor: pointer;
}
.phone-number-mobile,
.phone-number-mobile a,
.phone-number-mobile a:link,
.phone-number-mobile a:visited,
.phone-number-mobile a:hover,
.phone-number-mobile a:active {
    color: #fff !important;
    text-decoration: none !important;
    cursor: pointer;
}
.btn.custom-btn {
  background-color: #e76d57 !important;
  color: white !important;
  border-radius: 50px !important;
  border: 1px solid transparent !important;
  padding: 12px 24px;
  font-weight: 400 !important;
  font-size: 14px;
  display: inline-flex;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1) !important;
  white-space: nowrap !important;
  
}

@media (max-width: 1200px) {
  .btn.custom-btn ,.btn.taxcustom-btn{
    font-size: 11px !important;
    padding: 10px 20px !important;
  }
}
.custom-btn-bg {
  padding: 12px 43px !important;
}
.btn.custom-btn.submit {
  border: 1px solid #9e210a1c !important;
}

.btn.custom-btn-mob {
  width: 90% !important;
  height: auto !important;
}

.btn.custom-btn-lg {
  width: 170px !important;
  height: 47px !important;
}

.btn.custom-btn-hw {
  width: 101px !important;
  height: 47px !important;
}

.btn.custom-btn::before {
  content: "" !important;
  display: inline-block !important;
}

/* Hover state */
.btn.custom-btn:hover {
  color: #f0f2f4 !important;
  background-color: #f64d2e !important;
  border: 1px solid rgba(158, 33, 10, 0.11) !important;
}

/* Active */
.btn.custom-btn:active {
  background-color: #e76d57 !important;
  border: 1px solid transparent !important;
  outline: 2px solid rgba(158, 33, 10, 0.62) !important;
  outline-offset: 0px !important;
  color: #ffffff !important;
}

/* Focus (only when not active) */
.btn.custom-btn:focus:not(:active) {
  background-color: #e76d57 !important;
  border: 1px solid transparent !important;
  outline: 3px solid #fff200 !important;
  outline-offset: 0px !important;
}

/* Disabled */
.btn.custom-btn:disabled {
  background-color: #cfd4d9 !important;
  color: #6c757d !important;
  cursor: not-allowed !important;
  transform: none !important;
  box-shadow: none !important;
}

/* White Variant */
.btn.custom-btn.White {
  background-color: #ffffff !important;
  color: #00253a !important;
  border: 1px solid transparent !important;
  position: relative !important;
  font-size: 14px ;
}

/* Hover White */
.btn.custom-btn.White:hover {
  background-color: #f9f9f9 !important;
  border: 1px solid #d6d6d6 !important;
}

/* Active White */
.btn.custom-btn.White:active {
  background-color: #ffffff !important;
  border: 1px solid transparent !important;
  outline: 2px solid #98a7b0 !important;
  outline-offset: 0px !important;
}

/* Focus White */
.btn.custom-btn.White:focus:not(:active) {
  background-color: #ffffff !important;
  border: 1px solid transparent !important;
  outline: 3px solid #fff200 !important;
  outline-offset: 0px !important;
}

/* Disabled White */
.btn.custom-btn.White:disabled {
  background-color: #e4e4e4 !important;
  color: #adb5bd !important;
  border: 1px solid #ced4da !important;
  outline: none !important;
}

@media (max-width: 767.98px) {
  .d-flex.d-md-none.flex-column.align-items-center.gap-3.mt-4 {
    width: 100% !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .btn.custom-btn.mobile-pill-button {
    width: 90% !important;
    display: block !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
.navbar {
  z-index: 3;
}

.custom-image {
  width: 139px;
  height: 43px;
  z-index: 4;
  position: relative;
}
.bot-text {
  font-weight: 400;
  font-size: 16px;

  color: #00253a;
}
.custom-img {
  width: 30px;
  height: 30px;
}

.text-white-check {
  color: white;
}
.facetwp-selection {
  background-color: #e46b5d;
  color: white;
  border-radius: 20px;
  padding: 4px 12px;
  margin: 0 5px 5px 0;
  font-size: 14px;
  position: relative;
}

.facetwp-selection span {
  margin-left: 8px;
  cursor: pointer;
}

.logo {
  margin-left: -3rem;
  padding-right: 3rem;
}
.featured-section {
  background-color: #ffffff;
}
.pagination-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.dot-group {
  display: flex;
  gap: 8px;
}

.dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #ccc;
  cursor: pointer;
}

.dot.active {
  background-color: #2c3e50;
}
.pagination-controls {
  display: flex;
  justify-content: center;
  align-items: center;
}

.dot-container {
  display: flex;
  align-items: center;
  background-color: #d3dbe2; /* Light blue/gray background as shown */
  padding: 2px 6px;
  border-radius: 999px; /* pill shape */
}

.dot-container .dot {
  width: 6px;
  height: 5px;
  border-radius: 50%;
  background-color: transparent;
  border: 0.5px solid #ffffff; /* border color as in image */
  margin: 0 4px;
  transition: background-color 0.2s ease;
}

.dot {
  width: 10px;
  height: 10px;
  background-color: transparent;
  border: 2px solid #1e2c36;
  border-radius: 50%;
  transition: background-color 0.3s ease;
  cursor: pointer;
}

.dot-container .dot.active {
  background-color: #0e2d3d; /* active fill color */
  border-color: #0e2d3d;
}
.dot-container3 .dot.active {
  background-color: #0e2d3d; /* active fill color */
  border-color: #0e2d3d;
}

/* Modifier for white active dot */
.dot-container .dot.active.white {
  background-color: #fff;
  border-color: #fff;
}

.dot-container1 {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  /* light gray background */
  backdrop-filter: blur(15px);
  background-color: #ffffff; /* semi-transparent light gray */
  border-radius: 999px; /* pill shape */
  padding: 8px 12px;
  width: fit-content;
}

.dot {
  width: 10px;
  height: 10px;
  background-color: transparent;
  border: 2px solid #1e2c36; /* dark border */
  border-radius: 50%;
  transition: background-color 0.3s ease;
}

.dot.active {
  background-color: #0f2433; /* dark fill for active dot */
}
.iconsimgs {
  width: auto;
  height: 55px;
}
.nav-buttons {
  display: flex !important;
  align-items: center;
  gap: 10px;
}

.nav-btn {
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  background-color: #f1f1f1;
  color: #555;
  transition: all 0.2s ease;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
/* 
.nav-btn.prev:hover, .nav-btn.next:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
} */

.nav-btn.next,
.nav-btn.next1,
.nav-btn.next2,
.nav-btn.next3,
.nav-btn.next4,
.nav-btn.nextother,
.nav-btn.next-iternary {
  background-color: #f46a4b;
  color: #fff;
}

.benefit-section {
  font-weight: 400;
  font-size: 16px;

  color: #335061;
}

.why-eshore {
  background-color: #00253a;
}
.holiday-title {
  font-weight: 400;
  font-size: 21px;
  color: #00253a;
  line-height: 1.2; /* 120% */
  /* -4% of 27px */
  
  /* Clamp to 2 lines on mobile */
 
}.bottom-text-row {
  min-height: 38px;
  width: 100%;
}

.bottom-text-row img {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  object-fit: contain;
}

@media (max-width: 767.98px) {
  .mobile-pill-button {
    width: 90%;
    max-width: 320px;
    margin-left: auto;
    margin-right: auto;
  }
}

.bottom-text-row .bot-text-price {
  font-weight: bold;
  color: #e76d57 !important;
  margin-left: 4px;
}

/* Responsive: allow wrapping and reduce max-width on small screens */
@media (max-width: 576px) {
  .bottom-text-row span {
    max-width: 80px;
    font-size: 13px;
    white-space: normal;
    text-overflow: initial;
  }
  .bottom-text-row {
    gap: 6px;
    min-height: 32px;
  }
}
.holiday-title.cairo {
  font-size: 21px;
  color: #00253a;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.holiday-subtext span,
.holiday-subtext img {
  margin: 0;
  padding: 0;
}

.holiday-subtext img[src*="Vector"] {
  width: 12px !important;
  height: 12px;
  margin-right: 4px;
}

.holiday-subtext {
  display: flex;
  align-items: center;

  font-weight: 400;
  font-size: 14px;

  color: #98a7b0;
}
/* gloable variable */
:root {
  --primary-color: #e76d57;
  --secondary-color: #f1f1f1;
  --text-color: #333;
  --background-color: #fff;
  --border-radius: 8px;
  --transition-duration: 0.3s;
}
/* media query */
/* owl */

/* Custom navigation styles */
.custom-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  z-index: 1;
  pointer-events: none;
}

.custom-nav button {
  position: absolute;
  background: white;
  color: #333;
  border: none;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 24px;
  line-height: 1;
  opacity: 0.8;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  cursor: pointer;
  pointer-events: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.custom-nav button:hover {
  opacity: 1;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
}

.custom-nav .owl-prev {
  left: -20px;
}

.custom-nav .owl-next {
  right: -20px;
}

/* Responsiveness for nav buttons */
@media (max-width: 768px) {
  .custom-nav .owl-prev {
    left: 5px;
  }

  .custom-nav .owl-next {
    right: 5px;
  }
}

@media (max-width: 390px) {
  
  .hero-content h1.hero-title {
    font-size: 1.5rem !important;
  }

  .hero-content p,
  .hero-content li {
    font-size: 0.9rem !important;
  }

  .hero-content ul {
    margin-bottom: 0.5rem;
  }

  .hero-content .btn {
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
  }
}

.owl-carousel .item {
  text-align: left;
}
.travel-guidep p{
  margin-bottom: 0px;
}
.travel-guidep {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #7f7f7f;
  font-size: 16px;

  min-height: calc(1.3em * 3);
}

.owl-carousel .item img,
.destination-carousel .item img {
  width: 100%;
  border-radius: 18px;
  aspect-ratio: 17 / 11;
}
.itinerary-image {
  height: 100%;
}

.destination-carousel .item {
  padding: 10px;
}

.nav-btn {
  background-color: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  margin-left: 5px;
}

/* Add a width constraint for carousel container */
.owl-carousel {
  max-width: 100%;
  overflow: hidden;
}

.review-section {
  background-color: #f0f2f4;
}

/*footer*/
.footer-section {
  background-color: #00253a;
}
.why-eshoregrid {
  background-color: #00253a;
}

@media (max-width: 768px) {
  .footer-section {
    padding: 20px 10px;
  }
  .footer-section h6 {
    font-size: 18px;
  }
  .footer-section .nav-buttons {
    flex-direction: column;
    align-items: flex-start;
  }
}

.stars {
  color: #e76d57;
}

.review-text {
  color: #00253a;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.2; /* 120% */
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: calc(1.2em * 3); /* Ensures at least 3 lines of height */
}

.reviewer-name {
  color: #335061; /* optional if same as review text */

  font-weight: 400;
  font-size: 16px;
  line-height: 1.2; /* 120% */
  margin-bottom: 8px; /* Paragraph spacing */

  text-align: left !important;
}
.readLink , .read {
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  /* -1% of 14px */
  color: #e76d57;
  list-style: none;
}
.readLink:hover , .readLink:focus, .readLink:active { background:none; text-decoration: underline; color:#e76d57; } 
.read.dropdown-item:focus,
.read.dropdown-item:active,
.read.dropdown-item:hover {
  color: #e76d57;
  background-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  /* Optional: keeps text color unchanged */
}
.custom-btn {
  background-color: #0d6efd;
  color: white;
  padding: 8px 16px;
  border-radius: 4px;
  text-decoration: none;
}
/* Hide default Owl navigation and dots */
.owl-nav,
.owl-dots {
  display: none;
}
/* Custom navigation buttons */
.nav-btn {
  background: none;
  border: none;
  font-size: 34px !important;
  cursor: pointer;
  padding: 2px 10px;
  outline: none;
}
/* Custom dots */
.dot-group {
  display: flex;
  align-items: center;
}
.dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #d6d6d6;
  margin: 0 5px;
  cursor: pointer;
}
.dot.active {
  background-color: #00253a;
}
.custom-card {
  width: 262.4px;
  height: 310.4px;
  border: 1.45px solid #d6d6d654;
  border-radius: 15px;
  padding: 5px;
}

.custom-card img {
  height: 252.4px;
  object-fit: cover;
  border-radius: 10px; /* optional: soften inner corners */
}

.card-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.hovercol .card {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s;
  border: 1.45px solid #e5e7eb;
  border-radius: 15px; /* Added a valid border-radius */
}

/* Multi-row carousel styles */
.owl-stage {
  display: flex;
  flex-wrap: wrap;
}
.owl-item {
  display: flex;
  height: auto;
}
.destination-group {
  display: flex;
  flex-direction: column;
}
.card-row {
  display: flex;
  gap: 20px;
}
.destination-card {
  flex: 1;
  margin-bottom: 20px;
}

/* Breakpoint for screens 1600px to 1900px */

@media (min-width: 1600px) {
  .container {
    max-width: 1580px;
  }
}

@media (min-width: 1950px) {
  .container {
    max-width: 1920px;
  }
}

.no-max-width {
  max-width: none !important;
}

/* Fix: ensure Travel Guides container doesn't expand to full viewport in certain Edge cases.
   Some browser/JS combos can end up removing max-width on ancestor containers; this targets
   the Travel Guides block only so other pages keep their layout. Adjust max-width to taste. */
/* .container.travel-guides {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
} */

.footer-links-vertical {
  display: flex;
  flex-direction: column;
  padding: 24px 0 24px 24px;
}
.footer-link-section {
  padding: 16px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.footer-link-section:last-child {
  border-bottom: none;
}
@media (min-width: 992px) {
  .footer-links-vertical {
    padding-left: 48px;
    padding-right: 24px;
  }
}

.footer-link-list li {
  padding: 6px 0;
}
.footer-link-list li:not(:last-child) {
  margin-bottom: 8px;
}
.mb-30 {
  margin-bottom: 30px;
}
.wpcf7-spinner{
  height: 1px !important;
}
.icon-small {
  width: 14px;
  height: 14px;
  object-fit: contain;
  filter: invert(67%) sepia(8%) saturate(240%) hue-rotate(169deg)
    brightness(89%) contrast(86%); /* This creates the #98A7B0 color */
}
.article-written{
  color: white;
}
.bullet-text {
  font-weight: 400;
  color: #00253a;
  font-size: 16px;
   
  line-height: 120%;
  letter-spacing: 0%;
}
/* Featured card image for mobile horizontal cards */
.featured-card-img {
  width: 80px;
  height: 80px;
  border-radius: 16px;
  object-fit: cover;
}
@media (min-width: 768px) {
  .featured-card-img {
    width: 100%;
    height: 140px;
    margin-right: 0 !important;
    margin-bottom: 0.5rem !important;
    border-radius: 16px;
  }
}
.card-img-top {
  width: auto !important;
  padding: 3px !important;
  object-fit: cover;
}
/* Reusable typography utility classes */
.text-base {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.2;
}
.text-base.altsize {
  font-size: 18px;
}
.text-small {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.2;
  /* margin-bottom: 12px; */
}
.text-98A7B0,
.text-98A7B0 a,
.text-98A7B0 a:link,
.text-98A7B0 a:visited,
.text-98A7B0 a:hover,
.text-98A7B0 a:active {
    color: #98A7B0 !important;
    text-decoration: none !important;
    cursor: default;
}
.night {
  font-size: 16px;
  color: #cad2d7;
  font-weight: 400;
  list-style: 1.2;

}
.greyscale {
  color: #cad2d7 !important;
}
.pt-8rem {
  padding-top: 8rem !important;
}
.info-row {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Compact info row for card footers */
.info-row-sm {
  font-size: 12px;
  line-height: 1.2;
  padding-top: 2px;
}
@media (min-width: 768px) {
  .info-row-sm {
    font-size: 14px;
    padding-top: 4px;
  }
}

@media (max-width: 576px) {
  .taxcustom-btn {
    width: 90% !important;
  }
  .owl-carousel .item {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .holiday-card {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media (max-width: 991.98px) {
  .footer-cta-buttons .custom-btn,
  .footer-cta-buttons .btn.custom-btn.white {
    width: 90%;
    height: 42px;
    padding: 10px 15px;
    /* Border radius is already handled by .custom-btn (50px, effectively pill) */
    /* Border is already handled by .custom-btn and .custom-btn.white */
  }
  .footer-cta-buttons {
    gap: 10px !important;
  }
}

/* Add this to your index.css */
input[type="email"]::placeholder {
  color: #fff !important; /* Placeholder color */
  opacity: 1; /* Ensure full opacity */
}

input[type="email"]::-webkit-input-placeholder {
  color: #fff !important; /* Chrome, Edge, Safari */
}

input[type="email"]::-moz-placeholder {
  color: #fff !important; /* Firefox */
}

input[type="email"]:-ms-input-placeholder {
  color: #fff !important; /* Internet Explorer 10-11 */
}

input[type="email"]::-ms-input-placeholder {
  color: #fff !important; /* Microsoft Edge */
}

.border-top-custom {
  border-top: 2px solid #cad2d7;
}

.border-top-custom1 {
  border-top: 2px solid #335061;
}
/* Destination carousel specific styles */
.destination-carousel {
  position: relative;
}
.btn.lmore {
  width: 189px;
  height: 47px;
}
.btn.lmobmore {
  width: 189;
  height: 47;
  padding-top: 15px;
  padding-right: 25px;
  padding-bottom: 15px;
  padding-left: 25px;
  gap: 10px;
  border-radius: 100px;
  border-width: 1px;
}
.dot-container1,
.dot-container2,
.dot-container3,
.dot-container4,
.dot-containerother,
.dot-container-iternary {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #00253a54;
  padding: 4px 8px;
  border-radius: 100px;
  backdrop-filter: blur(15px);

  background-color: #d3dbe2;
  /* width: 52px;
  height: 16px; */
}

.dot-container1 .dot,
.dot-container2 .dot,
.dot-container3 .dot,
.dot-container4 .dot,
.dot-containerother .dot,
.dot-container-iternary .dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background-color: transparent;
  border: 1.5px solid #0e2d3d;
  cursor: pointer;
  transition: all 0.3s ease;
}

.dot-container1 .dot.active,
.dot-container2 .dot.active,
.dot-container3 .dot.active,
.dot-container4 .dot.active,
.dot-containerother .dot.active,
.dot-container-iternary .dot.active {
  background-color: #0e2d3d;
  border-color: #0e2d3d;
}
.no-horizontal-padding > * {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.nav-btn.prev4,
.nav-btn.prev3,
.nav-btn.prev2,
.nav-btn.prev1,
.nav-btn.prev,
.nav-btn.prevother,
.nav-btn.prev-iternary {
  align-items: center !important;

  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 33px;
  background-color: #cad2d7;
  color: #98a7b0;
  cursor: pointer;
  transition: all 0.3s ease;
}

.nav-btn.next,
.nav-btn.next1,
.nav-btn.next2,
.nav-btn.next3,
.nav-btn.next4,
.nav-btn.nextother,
.nav-btn.next-iternary {
  background-color: #e76d57;
  color: #fff;
  align-items: center !important;
}

/* .nav-btn.prev4:hover,
.nav-btn.next4:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.nav-btn.prev4:active,
.nav-btn.next4:active {
  transform: translateY(0);
  box-shadow: none;
} */

/* Add border to images in dropdowns */
.dropdown-menu img.rounded-3 {
  border: 1px solid #e0e0e0; /* Add a subtle border, adjust color as needed */
}

/* Add pointing triangle to dropdown menus */
.dropdown-menu[data-bs-popper] {
  margin-top: 8px; /* Adjust spacing between toggler and dropdown */
}
.nav-item.dropdown .dropdown-menu {
  border-radius: 20px;
  max-width: 900px;
  min-width: 800px;
  left: -150px !important;
  right: 1px !important;
  transform: translateX(0%) !important;
}
.dropdown-menu[data-bs-popper]::before {
  filter: drop-shadow(0 0 0 black);
  content: "";
  display: block;
  position: absolute;
  top: -8px; /* Position the triangle above the dropdown */
  left: 195px; /* Adjust this value to position the triangle under the toggler */
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #fff; /* Color of the triangle, should match dropdown background */
}
/* Styles for pagination dots on featured card images */
.featured-section .holiday-card .position-relative .dot-container {
  position: absolute;
  bottom: 10px; /* Adjust vertical position as needed */
  left: 50%;
  transform: translateX(-50%);
  border: 1px solid #ffffff54;
  height: 16px;
  width: 39px;
  backdrop-filter: blur(8px);
  background-color: #ffffff54;
  z-index: 1; /* Ensure dots are above the image */
  /* Add other dot container styles if needed (e.g., background, padding) */
}

/* .featured-section .holiday-card .position-relative .dot-container .dot {
  
} */
/* 
.featured-section .holiday-card .position-relative .dot-container .dot.active {
  
}
 */
@media (max-width: 991px) {
  .imgbrand-logo {
    height: 60px;
    width: auto;
  }
}
@media (max-width: 1210px) {
  .navbar-nav .dropdown-only,
  .nav-item {
    display: none !important;
  }
}
/* @media (max-width: 1330px) {
  #navbarContent a.nav-link {
    font-size: 18px !important;
  }
}

@media (min-width: 1201px) and (max-width: 1250px) {
  #navbarContent a.nav-link {
    font-size: 18px !important;
  }
}
@media (min-width: 1251px) and (max-width: 1280px) {
  #navbarContent a.nav-link {
    font-size: 18px !important;
  }
} */
@media (min-width: 1440px) {
  .navbar .container-fluid {
    padding-left: 2rem; /* or whatever left padding suits */
    padding-right: 2rem; /* optional for symmetry */
  }
}
@media (min-width: 992px) {
  .pt-lg-6 {
    padding-top: 4rem !important; /* Bootstrap pt-6 is 4rem */
  }
}
@media (max-width: 767.98px) {
  .test-button {
    display: none !important;
  }
}
.latestH {
  font-weight: 500;
  font-size: 21px;

  color: #3f3f3f;
}
.categoryhead {
  color: #00253a;
  font-weight: 400;
  font-size: 21px;
  white-space: normal;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Responsive: 16px for screens up to 1580px */
/* Small laptop screens */
@media (max-width: 1580px) {
  .categoryhead {
    font-size: 16px !important;
  }
}

/* Tablet screens */
@media (max-width: 991.98px) {
  .categoryhead {
    font-size: 15px !important;
  }
}

/* Mobile screens */
@media (max-width: 576px) {
  .categoryhead {
    font-size: 14px !important;
  }
}
.navbar-toggler:focus {
  outline: none;
  box-shadow: none;
}
.pt-40 {
  padding-top: 40px;
}
.pb-40 {
  padding-bottom: 40px;
}
.pt-106 {
  padding-top: 106px;
}
/* custom */
/* === Level 6 (4rem) === */
.p-6 {
  padding: 4rem;
}
.pt-6 {
  padding-top: 4rem;
}
.pb-6 {
  padding-bottom: 4rem;
}
.pb-60 {
  padding-bottom: 60px;
}
.ps-6 {
  padding-left: 4rem;
}
.pe-6 {
  padding-right: 4rem;
}
.px-6 {
  padding-left: 4rem;
  padding-right: 4rem;
}
.py-6 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.pt-8 {
  padding-top: 80px;
}
.pt-9 {
  padding-top: 85px;
}
.pb-8 {
  padding-bottom: 80px;
}
.pl-66 {
  padding-left: 66px;
}
.pr-66 {
  padding-right: 66px;
}
.m-6 {
  margin: 4rem;
}
.mt-6 {
  margin-top: 4rem;
}
.mb-6 {
  margin-bottom: 4rem;
}
.ms-6 {
  margin-left: 4rem;
}
.me-6 {
  margin-right: 4rem;
}
.mx-6 {
  margin-left: 4rem;
  margin-right: 4rem;
}
.my-6 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
.pb-md-6 {
  padding-bottom: 48px !important;
}
.pt-md-6 {
  padding-top: 48px !important;
}
.mt-6-md-6 {
  margin-top: 48px !important;
}
.mb-20 {
  margin-bottom: 20px !important;
}
@media (min-width: 768px) {
  .pt-md-8 {
    padding-top: 80px !important;
  }

  .pb-md-8 {
    padding-bottom: 80px !important;
  }
}
/* === Level 7 (5rem) === */
.p-7 {
  padding: 5rem;
}
.pt-7 {
  padding-top: 5rem;
}
.pb-7 {
  padding-bottom: 5rem;
}
.ps-7 {
  padding-left: 5rem;
}
.pe-7 {
  padding-right: 5rem;
}
.px-7 {
  padding-left: 5rem;
  padding-right: 5rem;
}
.py-7 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.custom-top-150 {
  top: 120px; /* default mobile */
}

@media (min-width: 768px) {
  .custom-top-150 {
    top: 150px; /* desktop */
  }
}

.m-7 {
  margin: 5rem;
}
.mt-7 {
  margin-top: 5rem;
}
.mb-7 {
  margin-bottom: 5rem;
}
.ms-7 {
  margin-left: 5rem;
}
.me-7 {
  margin-right: 5rem;
}
.mx-7 {
  margin-left: 5rem;
  margin-right: 5rem;
}
.my-7 {
  margin-top: 5rem;
  margin-bottom: 5rem;
}
@media (min-width: 375px) and (max-width: 767.98px) {
  .pt-ms-5 {
    padding-top: 2.5rem;
  }
  .pt-ms-6 {
    padding-top: 4rem;
  }
  .mt-ms-4 {
    margin-top: 1.5rem;
  }
  .px-ms-4 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.benefits-scroll {
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  gap: 21px !important;
}
.benefits-scroll::-webkit-scrollbar {
  display: none;
}
.mobile-title {
  display: none;
}
.desktop-title {
  color: #00253a !important;
}
@media (max-width: 767.98px) {
  .desktop-title {
    display: none;
  }
  .mobile-title {
    display: inline;
  }
}

/* tax */

.bg-white {
  background-color: rgba(255, 255, 255, 1);
}

.bg-grey {
  background-color: rgba(240, 242, 244, 1); /* or whatever grey you need */
}
/* .heroimgcontainer{
  width: 100%;
height: 562px;
object-fit: cover;
position: relative;
z-index: 2;
box-shadow:8px -4px 14px 5px rgba(0, 37, 58, 0.12);
} */
.hero-section {
  overflow: hidden;
}

.hero-wrapper {
  width: 100%;
  height: 100%;
}

.hero-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.hero-background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-section .container-fluid {
  position: relative;
  z-index: 2;
}
.blueoverlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #00253aba;
  z-index: 2;
  backdrop-filter: blur(5px);
}

.singleoverlay {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #00253aba;

  backdrop-filter: blur(5px);
}
.hero-overlay2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  z-index: 2;
  object-fit: cover;
}

.hero-content2 {
  color: #fff;

  padding: 2rem 1rem;
  background: none;
  position: relative;
  z-index: 2;
}
.hero-title2 {
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;

  color: #00253a !important;
}
.heropara {
  margin-bottom: 0px;
  font-weight: 400;
  font-size: 16px;

  color: #f0f2f4 !important;
}
.about,
.view-booking {
  font-weight: 400;
  font-size: 14px;

  color: #657b88;
}

@media (max-width: 576px) {
  .hero-content2 {
    padding-bottom: 0 !important;
  }
}

@media (max-width: 390px) {
  .hero-content2 {
    top: 55% !important; /* push a bit lower */
    padding-top: 0 !important; /* tighter padding */
    padding-bottom: 0px !important; /* tighter padding */
  }
  .heropara {
    padding-top: 1rem !important;
  }

  .hero-content2 h1.hero-title {
    font-size: 1.5rem !important;
  }

  .hero-content2 p,
  .hero-content2 li {
    font-size: 14px !important;
  }

  .hero-content2 ul {
    margin-bottom: 0.5rem;
  }

  .hero-content2 .btn {
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
  }
}
.card-body {
  padding: 5px !important;
}

/*  */
.card-bodym {
  padding-top: 0px !important;
}
.card.expert-card {
  max-width: 350px;
  border-radius: 18px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  padding: 31px 47px;
  gap: 10px;
  background: #fff;
  z-index: 3;
}
.card.expert-card-holiday {
  border-radius: 18px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
  padding: 31px 23px;
  gap: 5px;
  background: #fff;
  z-index: 3;
}
.card-text {
  font-weight: 400;
  font-size: 14px;
  color: #657b88 !important;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: calc(1.4em * 3); /* Responsive min-height for 3 lines */
}

@media (max-width: 576px) {
  .card-text {
    font-size: 13px;
    min-height: calc(1.3em * 4); /* Adjust for mobile font size */
  }
}
/* ...existing code... */
@media (min-width: 1200px) and (max-width: 1500px) {
  .holiday-col-xl-custom {
    flex: 0 0 33.3333%;
    max-width: 33.3333%;
  }
}
/* ...existing code... */
.card-text-grid {
  font-weight: 400;
  font-size: 16px;
  margin-bottom: 10px !important;
  color: #657b88 !important;

  display: -webkit-box;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 4.6em;
  /* 1.2em line-height × 4 lines */
}
.card-body {
  display: flex;
  flex-direction: column;
  min-height: 140px; /* Adjust as needed for your design */
  justify-content: flex-start;
}
.card-body-holiday {
  display: flex;
  flex-direction: column;
  padding: 5px !important;

  /* Adjust as needed for your design */
  justify-content: flex-start;
}
.reviewheight.px-2 {
  min-height: 170px; /* Adjust as needed */
  display: flex;
  flex-direction: column;
}
.reviewer-name {
  margin-top: auto;
  display: block;
}
.othercard {
  color: #657b88;

  font-size: 16px;
  line-height: 1.3; /* 1.3 is good for readability with 16px */
  margin-bottom: 0;
  min-height: calc(1.3em * 3); /* 3 lines: 1.3 × 3 = 3.9em */

  /* Text clamping for overflow */
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card-content-area {
  min-height: 72px; /* Adjust as needed for your design */

  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.holiday-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.card-title {
  font-weight: 400;
  font-size: 28px;

  color: #00253a !important;
}
.single-holiday-description p{
  margin-bottom: 0px !important;
}
.card-grid-title {
  margin-top: 10px;
  margin-bottom: 10px;
  min-height: unset !important;
  font-weight: 400;
  font-size: 21px;
  color: #00253a !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: text-decoration 0.2s;
  display: block;
  line-height:1.2 !important
}
/* .card-grid-title:hover {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  display: inline-block;

  z-index: 9999;
} */
.gridtitle:hover {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  display: inline-block;
  
  z-index: 9999;
}
/* 550px to 770px: min-height 50px */

/* .card-grid-title:hover {
  text-decoration: underline;
 
} */
 .invisclass { display: none; }
.owl-carousel .owl-stage {
  display: flex;
}
.owl-carousel .owl-item {
  display: flex;
}
.itinerary-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  height: 100%;
  width: 100%;
}

.iternary-title {
  font-weight: 400;
  font-size: 21px;

  color: #00253a !important;
}

.iternary-description {
  font-weight: 400;
  font-size: 14px;
  color: #657b88 !important;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: calc(1.5em * 3); /* Ensures at least 3 lines of height */
}
.imgexpert {
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid #fff;
  margin-left: -10px;
}
.card.expert-card .d-flex .imgexpert {
  width: auto;
  height: 48px;
}
@media (max-width: 576px) {
  .card.expert-card {
    max-width: 100%;
    padding: 1.5rem 1rem;
  }
  .card.expert-card .smallpt,
  .card.expert-card .formoreinfo {
    display: none !important;
  }
  .card.expert-card .d-flex .imgexpert {
    width: auto !important;
    height: 32px !important;
  }
}

/*  */
@media (max-width: 767.98px) {
  .hide-mobile {
    visibility: hidden;
  }
}
.multi {
  font-weight: 400;
  font-size: 32px;

  color: #00253a !important;
}
.whyh3 {
  font-weight: 400;
  font-size: 27px;

  color: #00253a !important;
}
.tax-holidaycategory .latest {
  font-size: 27px;
}
.htagwhy {
  font-weight: 400;
  font-size: 21px;
  min-height: calc(1.2em * 2);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #00253a !important;
}
.whyus-text {
 
  color: #00253a !important;
}

.talkexperts {
  font-weight: 400;
  font-size: 21px;

  text-align: center;
  color: #3f3f3f !important;
}
/* .taxtalkexperts{
   
font-weight: 400;
font-size: 27px;
line-height: 120%;
letter-spacing: -2.28px;;
color: #00253A !important;
} */
.trip {
  font-weight: 400;
  font-size: 14px;

  color: #98a7b0 !important;
}
.smallpt {
  font-weight: 400;
  font-size: 14px;

  text-align: center;
  color: #7f7f7f;
}
.taxcustom-btn ,.Get-btn {
  /* width: 163px;
   height: 47px; */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border-radius: 100px;
  border: 1px solid #335061;
  padding: 15px 25px;
  color: #ffffff;
  background: #00253a;

  font-size: 14px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.taxcustom-btn:hover, .Get-btn:hover {
  background: #335061;
  color: #ffffff;
  border: 1px solid #335061;
}
.taxcustom-btn:active, .Get-btn:active {
  background: #00253a !important;
  color: #ffffff !important;
  border: 2px solid #98a7b0 !important;
}
.taxcustom-btn:focus, .Get-btn:focus,
.taxcustom-btn:focus-visible, .Get-btn:focus-visible {
  background: #00253a !important;
  color: #ffffff !important;
  border: 3px solid #fff200;
}
.formoreinfo {
  font-weight: 400;
  font-size: 14px;

  text-align: center;
  color: #7f7f7f;
}

.pwhy {
  margin-bottom: 0px;
  font-weight: 400;
  font-size: 16px;

  color: #657b88 !important;
}
.rightext {
  font-weight: 400;
  font-size: 16px;

  color: #657b88 !important;
}
.imggrid {
  aspect-ratio: 3 / 2;
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  object-fit: cover;
}
.imggrid:hover {
  opacity: 0.7;
}
.Ydestination {
  color: #f0f2f4;
}
.whyheader {
  font-size: 54px;
  font-weight: 400;
  line-height: 1; /* 100% */
  /* -4% of 74px */
  margin: 0; /* optional, to remove spacing if needed */
}

.offcanvas-title {
  font-weight: 400;
  font-size: 32px;
}
.subtitle {
  font-weight: 400;
  font-size: 21px;

  color: #00253a;
}
.filter-text {
  font-weight: 400;
  font-size: 16px;

  color: #00253a;
  text-transform: capitalize;
}

.active-filters-display .facetwp-active-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

.active-filters-display .facetwp-active-filters .facetwp-tag .facetwp-clear {
  margin-left: 0.5em;
  cursor: pointer;
  color: inherit;
  text-decoration: none;
  font-weight: bold;
}
.active-filters-display .facetwp-reset {
  margin-left: auto; /* Pushes to the right */
  font-size: 0.9rem;
}

/* Base checkbox styling for both offcanvas components */
#filtersOffcanvas .facetwp-checkbox,
#guidesFiltersOffcanvas .facetwp-checkbox {
  background-image: none !important;
  background-color: transparent !important;
  padding-left: 32px !important;
  cursor: pointer;
  margin-bottom: 4px;
  white-space: normal;
  overflow: hidden;
  position: relative;
  display: block;
  min-height: 28px;
  line-height: 24px;
}

/* Custom checkbox container (before) */
#filtersOffcanvas .facetwp-checkbox::before,
#guidesFiltersOffcanvas .facetwp-checkbox::before {
  content: "";
  display: block;
  width: 24px !important;
  height: 24px !important;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-sizing: border-box;
  background-color: transparent;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

/* Checked state background */
#filtersOffcanvas .facetwp-checkbox.checked::before,
#guidesFiltersOffcanvas .facetwp-checkbox.checked::before {
  background-color: #e76d57 !important;
  border-color: #e76d57 !important;
}

/* Checkmark (after) for checked state */
#filtersOffcanvas .facetwp-checkbox.checked::after,
#guidesFiltersOffcanvas .facetwp-checkbox.checked::after {
  content: "";
  background: url("/wp-content/themes/eshores/images/check.svg") no-repeat
    center center;
  background-size: 12px 12px;
  height: 12px;
  display: inline-block;
  color: white !important;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  width: 23px;
  text-align: center;
  font-size: 0.8em;
  line-height: 1;
}

/* Selection value styling - no changes needed as it's not scoped to a specific container */
.facetwp-selection-value {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #e76d57;
  margin-left: 5px !important;
  font-weight: 400;
  font-size: 14px;
margin-top: 10px !important ;
  text-align: center;
  border-radius: 8px;
  color: #ffffff;
  height: 28px;
  padding-left: 14px;
  padding-right: 30px !important;
  position: relative;
  background-image: none !important;
}

.facetwp-selection-value::after {
  content: "";
  position: absolute;
  right: 5px;
  width: 18px;
  height: 18px;
  background: url("/wp-content/themes/eshores/images/Close.svg") no-repeat
    center center;
  background-size: contain;
  cursor: pointer;
}

.facetwp-selection-label .facetwp-selection-value {
  margin-left: 4px;
}

.facetwp-selection-label .facetwp-selection-remove {
  color: #ffffff;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 3px;
  transition: all 0.2s ease;
}

.facetwp-selection-label .facetwp-selection-remove:hover {
  background-color: #d0d0d0;
  color: #00253a;
}
/* Offcanvas specific styles */
.offcanvas-header {
  padding-top: 1rem;
  padding-bottom: 0px;
}
.offcanvas-footer {
  gap: 10px;
}
.offcanvas-footer .btn-primary {
  background-color: #f77a52; /* Approximate color from image */
  border-color: #f77a52;
}
.offcanvas-footer .btn-primary:hover {
  background-color: #e56a42;
  border-color: #e56a42;
}
.btnclose {
  color: rgba(0, 0, 0, 1) !important;
  width: 10px !important;
  height: 10px !important;
  border-width: 1.4px !important;
}
.applyfilt-btn {
  background: #e76d57;
  color: white;
  font-weight: 400;
  font-size: 14px;

  border-radius: 100px;
  border-width: 1px;

  width: 199px;
  height: 56px;
}
.applyfilt-btn:hover {
  color: #f0f2f4 !important;
  background-color: #f64d2e !important;
  border: 1px solid rgba(158, 33, 10, 0.11) !important;
}

.applyfilt-btn:active {
  background-color: #e76d57 !important;
  border: 1px solid transparent !important;
  outline: 2px solid rgba(158, 33, 10, 0.62) !important;
  outline-offset: 0px !important;
  color: #ffffff !important;
}

.applyfilt-btn:focus:not(:active) {
  background-color: #e76d57 !important;
  border: 1px solid transparent !important;
  outline: 3px solid #fff200 !important;
  outline-offset: 0px !important;
}

/* Disabled state (added to match .btn.custom-btn) */
.applyfilt-btn:disabled {
  background-color: #cfd4d9 !important;
  color: #6c757d !important;
  cursor: not-allowed !important;
  transform: none !important;
  box-shadow: none !important;
}
.overview,
.faqs,
.guides {
  font-weight: 400;
  font-size: 16px;

  color: #657b88;
}
.clr-btn {
  width: 199px;
  height: 56px;
  padding-top: 15px;
  padding-right: 25px;
  padding-bottom: 15px;
  padding-left: 25px;
  gap: 10px;
  border-radius: 100px;
  border-width: 1px;
  background-color: #ffffff;
  color: #335061;
  border-color: #cad2d7;
  border-style: solid;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.clr-btn:hover {
  background-color: #f9f9f9 !important;
  border: 1px solid #d6d6d6 !important;
}

.clr-btn:active {
  background-color: #ffffff !important;
  border: 1px solid transparent !important;
  outline: 2px solid #98a7b0 !important;
  outline-offset: 0px !important;
}
.clr-btn:focus:not(:active) {
  background-color: #ffffff !important;
  border: 1px solid transparent !important;
  outline: 3px solid #fff200 !important;
  outline-offset: 0px !important;
}
.offcanvas-divider {
  border: 0;
  border-top: 2px solid #e5e5cc;
  opacity: 0.8;
  margin-top: 0;
  margin-bottom: 1.5rem;
}
/* Container for all active filters */
.facetwp-selections {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;

  font-weight: 400;
  font-size: 16px;

  color: #00253a; /* Primary/Navy */
  position: relative;
}

/* Each filter group (label + values) */
.facetwp-selection {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

/* Label (e.g., Destination:, Type:) */
.facetwp-selection .facet-label {
  font-weight: 400;
  font-size: 16px;

  color: #00253a;
  margin-right: 4px;
}

/* Each individual filter button */

.facetwp-selection .facetwp-remove:hover {
  background-color: rgba(255, 255, 255, 0.2); /* Subtle white hover effect */
  color: #ffffff !important; /* Keep white on hover */
}
.clearallfilt {
  font-weight: 400;
  font-size: 16px;

  text-align: center;
  text-decoration: underline;
  text-decoration-style: solid;
  color: #00253a;
  text-decoration-thickness: 0%;
  text-decoration-skip-ink: auto;
}
.filterbtn {
  padding: 13px 16px;
  gap: 4px;

  font-weight: 400;
  font-size: 16px;

  text-align: center;
  color: #00253a;
  border: 1px solid #e4e7ea !important;
  background: #fff;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.content-header {
  max-width: 694px;
}
.filterbtn:hover,
.filterbtn:active {
  background: none !important;
  color: inherit !important;
  border-color: inherit !important;
  border: 1px solid #e4e7ea !important;
}
.facetwp-selections ul {
  margin-bottom: 0px;
  padding-left: 0 !important;
}
@media (max-width: 576px) {
  .card {
    max-width: 100%;
  }
  .card .d-flex img {
    width: auto !important;
    height: 32px !important;
  }
}
.taxcustom-container {
  margin-top: 100px;
}
.dot-containerother {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  backdrop-filter: blur(15px);
  background-color: #d3dbe2; /* semi-transparent light gray */
  border-radius: 999px; /* pill shape */
  padding: 8px 12px;
  width: fit-content;
}

.dotother {
  width: 10px;
  height: 10px;
  background-color: transparent;
  border: 2px solid #1e2c36; /* dark border */
  border-radius: 50%;
  transition: background-color 0.3s ease;
}

.dotother.active {
  background-color: #0f2433; /* dark fill for active dot */
}
.otherh3 {
  color: #00253a;
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  /* -4% of 57px */
}
.otherdescription p{
  margin-bottom: 0px !important;
}
.gridtitle {
  font-size: 21px;
  color: #00253a;
  font-weight: 400;
  line-height: 25px;



  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  margin-bottom: 0;
}
/* Modifier for white active dot */
.dot-container .dot.active.white {
  background-color: #fff;
  border-color: #fff;
}

/* Utility classes for refactored inline styles */
.text-cad2d7,
.text-cad2d7 a,
.text-cad2d7 a:link,
.text-cad2d7 a:visited,
.text-cad2d7 a:hover,
.text-cad2d7 a:active {
  color: #cad2d7 !important;
  text-decoration: none !important;
  cursor: default;
}
.text-335061 {
  color: #335061 !important;
}
.bg-f0f2f4 {
  background-color: #f0f2f4 !important;
}
.h-522 {
  height: 522px !important;
}
.rounded-32 {
  border-radius: 32px !important;
}
.img-796x522 {
  width: 100% !important;
  height: 522px !important;
  border-radius: 32px !important;
  object-fit: cover !important;
}
.img-100x200r16 {
  width: 100% !important;
  object-fit: cover !important;
  border-radius: 20px !important;
  aspect-ratio: 17/11 !important;
}
.text-3f3f3f {
  color: #3f3f3f !important;
}
.relative-z2 {
  position: relative !important;
  z-index: 2 !important;
}
.font-size-1-5em {
  font-size: 1.5em !important;
}
.caret-down {
  width: 10px !important;
  height: auto !important;
}
/* Utility classes for next batch of refactored inline styles */
.img-680x321 {
  object-fit: cover !important;
  width: 100% !important;
  aspect-ratio: 680 / 321 !important;
  height: auto !important;
  max-height: 321px !important;
}

@media (max-width: 991.98px) {
  .img-680x321 {
    aspect-ratio: 4 / 3 !important;
    max-height: 220px !important;
  }
}

@media (max-width: 576px) {
  .img-680x321 {
    aspect-ratio: 4 / 3 !important;
    max-height: 120px !important;
  }
}
.img-332x331 {
  object-fit: cover !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important; /* Ensures square aspect ratio */
  height: auto !important; /* Let aspect-ratio control height */
  max-height: 331px !important; /* Prevents stretching on large screens */
}

@media (max-width: 991.98px) {
  .img-332x331 {
    aspect-ratio: 4 / 3 !important;
    max-height: 220px !important;
  }
}

@media (max-width: 576px) {
  .img-332x331 {
    aspect-ratio: 4 / 3 !important;
    max-height: 120px !important;
  }
}
.img-h-180 {
  object-fit: cover !important;
  height: 180px !important;
}
.img-h-120 {
  object-fit: cover !important;
  height: 120px !important;
}
.gap-2rem {
  gap: 2rem !important;
}
.img-h-252 {
  object-fit: cover !important;
}
.img-13x15 {
  width: 13.5px !important;
  height: 15.76px !important;
  object-fit: contain !important;
  margin-right: 8px !important;
}
.img-80x80 {
  width: 40% !important;
  object-fit: cover !important;
  aspect-ratio: 16/9;
}
.text-nowrap {
  white-space: nowrap !important;
}
.text-00253a {
  color: #657b88 !important;
}
.text-00253p {
  font-weight: 400;
  font-size: 16px;

  /*     */
  color: #e76d57 !important;
}
/* Utility classes for next batch of refactored inline styles */
.img-332x332r30 {
  /*width: 332px !important;*/
  height: auto !important;
  object-fit: cover !important;
  margin-bottom: 10px !important;
  border-radius: 20px !important;
}
.img-w100-auto-cover {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}
.img-56x56-cover {
  width: 56px !important;
  height: 56px !important;
  object-fit: cover !important;
}
.max-w-95 {
  max-width: 95% !important;
}
.bottom-32 {
  bottom: 20px !important;
}
.right-43 {
  right: 43px !important;
}
.bottom-240 {
  bottom: 240px !important;
}
.h-12-ml-5 {
  height: 12px !important;
  margin-left: 5px !important;
}
.text-e76d57 {
  color: #e76d57 !important;
}

/* Newsletter form mobile positioning */
.mobile-form-relative {
  z-index: 2;
  position: relative;
}

/* Single Holiday Component Styles */
.single-holiday-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.single-holiday-header-left {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.single-holiday-rating-section {
  display: flex;
  align-items: center;
  gap: 5px;
}

.single-holiday-reviews {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.single-holiday-reviews-text {
  color: #4caf50;
  font-weight: bold;
  font-size: 14px;
}

.single-holiday-stars {
  color: #ffd700;
  font-size: 16px;
}

.single-holiday-rating-badge {
  font-weight: 400;
  font-size: 14px;

  color: rgba(255, 255, 255, 1);
  /* rgba(231, 109, 87, 1) */
}
.single-holiday-rating-score,
.single-holiday-rating-count {
  color: rgba(231, 109, 87, 1);
}
.single-holiday-title {
  font-weight: 400;
  font-size: 54px;
  line-height: 1;

  color: rgba(255, 255, 255, 1);
}

.single-holiday-duration {
  color: #ffb74d;
  font-size: 1.2rem;
  margin-bottom: 10px;
  font-weight: 500;
}

.single-holiday-pricing-section {
  
  text-align: start;
}
.pliclass {
  color: #657b88;

  font-weight: 400;
  font-size: 14px;
}
.single-holiday-pricing-header {
  gap: 10px;

  font-weight: 400;
  font-size: 18px;

  color: #ffffff;
}
.single-holiday-pricing-header.black {
  color: #657b88 !important;
}

.single-holiday-package-info {
  padding-top: 8px;
  font-weight: 400;
  font-size: 18px;

  color: #ffffff;
}
.single-holiday-package-info.black {
  color: #657b88 !important;
}

.single-holiday-price {
  padding-top: 8px;
  font-weight: 400;
  font-size: 27px;

  color: #ffffff;
}
.single-holiday-price.black {
  color: #00253a !important;
}

.single-holiday-price-note {
  padding-top: 5px;
  font-weight: 400;
  font-size: 14px;

  color: rgba(231, 109, 87, 1);
  text-align: start; /* Center the text */
  max-width: 100%; /* Optional: limit width for better look */
}
.single-holiday-content {
  display: grid;
  grid-template-columns: 1fr; /* Default to single column for mobile/tablet */
  gap: 15px;
  align-items: start;
}

.single-holiday-main-image {
  width: 100%;
  /* height: 630px; */
  border-radius: 15px;
  object-fit: cover;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.4);
  transition: transform 0.3s ease;
}

.single-holiday-side-images {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.single-holiday-side-image {
  width: 100%;
  /* height: 300px; */
  border-radius: 12px;
  object-fit: cover;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.single-holiday-book-btn {
  position: absolute;
  top: 20px;
  right: 20px;
  background: linear-gradient(45deg, #ff6b35, #ff8e53);
  color: white;
  padding: 12px 25px;
  border: none;
  border-radius: 25px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 5px 15px rgba(255, 107, 53, 0.4);
}

.single-holiday-book-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(255, 107, 53, 0.6);
}

.single-holiday-hero-section {
  position: relative;
  overflow: hidden;
  background-color: #000; /* fallback */
}

.single-holiday-hero-overlay {
  background: #00253aba;
  backdrop-filter: blur(38px);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  opacity: 1;
}

.single-holiday-hero-section .container {
  position: relative;
  z-index: 1;
  padding-top: 50px !important;
}

.single-holiday-img-12px-ml5 {
  height: 14px;
}

.single-holiday-text-e76d57 {
  color: rgba(0, 204, 134, 1);
}

/* Mobile responsive styles for single holiday */
@media (max-width: 768px) {
  .single-holiday-header {
    flex-direction: column;
    gap: 20px;
  }
  .clr-btn {
    width: 50% !important;
  }
  .applyfilt-btn {
    width: 50% !important;
  }
  .single-holiday-title {
    font-size: 40px;
    line-height: 112.00000000000001%;
    /* -4% of 32px */
  }
  .otherh3 {
    font-size: 32px !important;
  }
  .whyh3 {
    font-size: 28px !important;
  }
  .htagwhy {
    font-size: 18px !important;
    /* -4% of 18px */
  }
  .single-holiday-pricing-header {
    font-size: 16px;
  }
  .single-holiday-package-info {
    font-size: 18px;
  }
  .single-holiday-price {
    font-size: 21px;
  }

  /* .single-holiday-content {
    grid-template-columns: 1fr;
    gap: 15px;
  } */

  .single-holiday-pricing-section {
    text-align: left;
  }

  .single-holiday-price-note {
    margin-left: 0;
    font-size: 14px;
  }

  #mobile-holiday-images {
    display: block !important;
  }
  #mobile-holiday-images img {
    height: auto;
  }
  #mobile-holiday-images > img {
    height: 220px !important;
    object-fit: cover;
  }
  #mobile-holiday-images > div > img {
    height: 184px !important;
    object-fit: cover;
  }
}

.down-arrow-svg[aria-expanded="true"] {
  transform: rotate(180deg);
}
/* Holiday Category Description Styles */
.holiday-category-description {
  display: -webkit-box;
  font-size: 16px;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  line-clamp: 4;
  overflow: hidden;
  text-overflow: ellipsis;

  max-height: 6em; /* 4 lines * 1.5 line-height */
  transition: max-height 0.3s ease;
  margin-bottom: 0;
}

.holiday-category-description.expanded {
  -webkit-line-clamp: unset;
  line-clamp: unset;
  max-height: none;
}

.show-more-btn {
  all: unset;
  display: inline-block;
  color: rgba(0, 37, 58, 1);
  font-size: inherit;
  font-weight: 500;
  text-decoration: underline;
  cursor: pointer;
  vertical-align: baseline;
  margin-top: 5px;
}

.dropdown-toggle::after {
  display: none !important;
}

/* Layout */
.holiday-flex {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  margin-top: 30px;
}
.holiday-main {
  flex: 2;
}

.star-rating .star-outline {
  z-index: 1;
  /* Keep outline grey or set to a lighter #00CC86 if you want */
}
.star-rating .star-fill {
  z-index: 2;
  pointer-events: none;
}
.star-rating .star-container {
  width: 14.02px;
  height: 14.02px;
  margin-right: 2.5px; /* Add 10px gap between stars */
}
.star-rating .star-container:last-child {
  margin-right: 2.5px; /* Remove gap after last star */
}
.star-rating .star-filled polygon {
  fill: #00cc86 !important;
  stroke: #00cc86 !important;
}
.single-holiday-package-info p {
  margin-bottom: 1px !important;
}
/* Intro */
.holiday-intro p,
.holiday-intro {
  font-weight: 400 !important;
  font-size: 21px;
  line-height: 120% !important;

  color: #00253a !important;
  margin-bottom: 0px;
}

/* Summary & Includes */
.holiday-summary-trip {
  margin-bottom: 32px;
}
/* .holiday-summary, .holiday-includes {
  flex: 1;
} */

.holiday-summary ul,
.holiday-includes ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.holiday-summary li,
.holiday-includes li {
  margin-bottom: 10px;
  font-size: 1rem;
}
.nights {
  color: #657b88;
  font-weight: 400;
  font-size: 14px;

  text-align: center;
}
.location {
  color: #00253a;
  font-weight: 400;
  font-size: 21px;

  text-align: center;
}

/* Breakdown */
.holiday-breakdown h3 {
  margin-bottom: 18px;
}
.breakdown-item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;

  border-radius: 8px;
  padding: 16px 16px 16px 35px; /* left padding for divider and icon */
  min-height: 120px;
}
.breakdown-item::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 80px;
  bottom: 16px;
  width: 3px;
  background: #e0e6ea;
  border-radius: 2px;
  z-index: 0;
}
.breakdown-icon {
  position: absolute;
  left: -8px;
  top: 16px;
  width: 32px;
  height: 32px;
  background: #f0f2f4;
  border: 3px solid #e0e6ea;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.timeline-icon {
  width: 28px !important;
  height: 28px;
  background: #f0f2f4 !important;
  border: 3px solid #e0e6ea !important;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.timeline-icon img {
  width: 20px;
  height: 20px;
}
.rotate-180 {
  transform: rotate(180deg);
}
.breakdown-icon img {
  width: 20px;
  height: 20px;
}
.breakdown-day {
  min-width: 120px;
  font-weight: bold;
}
.breakdown-desc p {
  margin: 0;
  color: #657b88;
  font-weight: 400;
  font-size: 16px;
}
.breakdown-img {
  width: 100%;
  height: 343px;
  border-radius: 8px;
  object-fit: cover;
}

/* Sidebar */
.holiday-expert-box {
  background: #f7f9fa;
  border-radius: 12px;
  padding: 24px 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  text-align: center;
}
.expert-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  font-weight: bold;
  font-size: 1.1rem;
}
.expert-img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
.expert-pricing {
  margin: 18px 0;
}
.pricing-title {
  font-weight: 400;
  color: #FFFFFF;
}
.from-text{
  font-weight: bold;
  color: #FFFFFF;
}
.pricing-nights {
  font-size: 0.95rem;
  color: #555;
}
.pricing-price {
  font-size: 1.3rem;
  font-weight: bold;
  color: #e76d57;
}
.nights-info {
  display: flex;
  gap: 5px;
}
.expert-actions {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-bottom: 12px;
}
.btn-call,
.btn-quote {
  padding: 8px 16px;
  border: none;
  border-radius: 6px;
  font-weight: bold;
  cursor: pointer;
}
.btn-call {
  background: #e76d57;
  color: #fff;
}
.btn-quote {
  background: #fff;
  color: #e76d57;
  border: 1px solid #e76d57;
}
.expert-contact {
  font-size: 0.95rem;
  color: #333;
  margin-top: 10px;
}

/* Responsive */
@media (max-width: 900px) {
  .holiday-flex {
    flex-direction: column;
  }
}

.holiday-tabs {
  display: flex;
  gap: 2rem;
  border-bottom: 1px solid #e0e0e0;

  /* margin-bottom: 3rem; */
}
.holiday-tab {
  background: none;
  border: none;
  font-weight: 400;
  font-size: 16px;

  color: #657b88;
  border-bottom: none; /* Remove any border */
  cursor: pointer;
  transition: color 0.2s;
  padding-bottom: 24px; /* 24px space below text */
  position: relative; /* Needed for pseudo-element */
}

.holiday-tab.active {
  color: #657b88;
  /* No border-bottom here */
}

.holiday-tab.active::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0; /* aligns with bottom of button */
  height: 2px;
  background: #00253a;
  border-radius: 2px;
}
.holiday-flex {
  display: flex;
  gap: 2rem;
  align-items: flex-start;
}

@media (max-width: 900px) {
  .holiday-flex {
    flex-direction: column;
  }
}

.faq-question {
  font-weight: 400;
  font-size: 21px;
  line-height: 1.2;

  color: #00253a;
}
.faq-answer {
  font-weight: 400;
  font-size: 14px;

  text-decoration: underline;
  text-decoration-style: solid;

  text-decoration-thickness: 0%;
  color: #657b88;
}
.faqshead {
  font-weight: 400;
  font-size: 21px;
  line-height: 1.2;

  color: #00253a !important;
}
.faqspara,
.faqspara p {
  font-weight: 400;
  font-size: 14px;

  text-decoration-style: solid;
  text-decoration-thickness: 0%;
  color: #657b88 !important;
}

.holiday-summary .timeline {
  position: relative;
}

.timeline-item {
  padding-bottom: 1rem;
  position: relative;
  min-height: 56px;
  display: flex;
  align-items: flex-start;
}
.holiday-includes-list {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0;
  margin: 0;
}
.timeline-bullet {
  width: 18px; /* slightly larger for visibility */
  height: 18px;
  background: #fff; /* white fill */
  border: 1px solid #e4e7ea; /* lighter border color */
  border-radius: 50%;
  margin-right: 16px;
  margin-top: 0;
  flex-shrink: 0;
  box-sizing: border-box;
  background-color: #f0f2f4;
}

.timeline-item::before {
  display: none !important; /* Remove the old line above logic */
}

.timeline-item::after {
  content: "";
  position: absolute;
     left: 12px;
    top: 27px;

  /* transform: translateX(88%); */
  width: 1px;
  height: calc(95% - 25px);
  background: #cad2d7;
  z-index: 1;
}

.timeline-item:last-child::after {
  display: none; /* No line after the last bullet */
}
.fullitinerary {
  font-weight: 400;
  font-style: Regular;
  font-size: 27px;
   

  color: #00253a;
}

.timeline-note {
  color: #657b88;
  font-size: 16px;
  margin-top: 4px;
}

.imggrid-slider {
  aspect-ratio: 17/11; /* Container maintains ratio */
  position: relative;
  overflow: hidden;
  border-radius: 20px;
}

.imggrid-slide {
  position: absolute;
  width: 100%;
  height: 100%; /* Fill container */
  object-fit: cover; /* Maintain proportions */
  transition: opacity 0.3s ease;
  opacity: 0;
}

/* Mobile-specific styles */
@media (max-width: 767px) {
  .imggrid-slider {
    cursor: pointer;
  }
  
  .imggrid-slide {
    position: relative; /* Change to relative for mobile */
    opacity: 1; /* Always visible on mobile */
  }
  
  /* Hide all non-active slides on mobile */
  .imggrid-slide:not(.active) {
    display: none !important;
  }
  
  /* Hide all slider controls on mobile */
  .slider-arrow,
  .slider-indicators {
    display: none !important;
  }

  /* Simple opacity change on touch */
  .imggrid-slider:active .imggrid-slide.active {
    opacity: 0.7;
    transition: opacity 0.3s ease;
  }
}
.imggrid-slider img .itinerary-image img {
  transition: opacity 0.3s ease;
}
.item a:hover .imggrid-slider img .itinerary-image img {
  opacity: 0.8;
}
.imggrid-slider:hover .imggrid-slide0 {
  opacity: 0.8;
}
.imggrid-slider:hover .imggrid-slide.active {
  opacity: 0.8;
}
.imggrid-slider::before {
  opacity: 0;
} 
.card:hover .imggrid-slider .slider-arrow,
.card:hover .imggrid-slider {
  display: block;
}
/* Mobile-specific styles */
@media (max-width: 767px) {
  .imggrid-slider {
    pointer-events: auto;
  }
  
  .imggrid-slider .desktop-only-slider {
    display: none !important;
  }
  
  .imggrid-slide:not(.active) {
    display: none !important;
  }
  
  .imggrid-slide.active {
    position: relative;
    opacity: 1;
    transition: opacity 0.3s ease;
  }
  
  .imggrid-slider:active .imggrid-slide.active {
    opacity: 0.7;
  }
  
  /* Hide all slider controls on mobile */
  .slider-arrow,
  .slider-indicators {
    display: none !important;
  }
}

/* Desktop hover effects */
@media (min-width: 768px) {
  .imggrid-slider:hover .slider-arrow,
  .imggrid-slider:hover .slider-indicators,
  .imggrid-slider.touch-active .slider-arrow,
  .imggrid-slider.touch-active .slider-indicators,
  .imggrid-slide:hover ~ .slider-arrow,
  .imggrid-slide:hover ~ .slider-indicators {
    display: block;
  }
}

.imggrid-slide:hover + .slider-arrow,
.imggrid-slide:hover + .slider-indicators {
  display: block;
}

.imggrid-slider:hover .slider-indicator.active,
.imggrid-slider:hover .slider-indicator.active-adjacent {
  display: inline-block !important;
}
.slider-indicator {
  display: none;
}
.imggrid-slider.touch-active .slider-indicator {
  display: none;
}
.imggrid-slider.touch-active .slider-indicator.active,
.imggrid-slider.touch-active .slider-indicator.active-adjacent {
  display: inline-block !important;
}

.imggrid-slider:hover .slider-indicator.active,
.imggrid-slider:hover .slider-indicator.active-adjacent,
.imggrid-slider.touch-active .slider-indicator.active,
.imggrid-slider.touch-active .slider-indicator.active-adjacent {
  display: inline-block !important;
}
.imggrid-slider:hover {
  cursor: pointer;
}
.imggrid-slider img {
  /* Allow the parent anchor to receive pointer events (right-click/open link) */
  pointer-events: none;
}

/* Keep interactive controls clickable */
.imggrid-slider .slider-arrow,
.imggrid-slider .slider-indicators,
.imggrid-slider .slider-indicator {
  pointer-events: auto;
}
.itinerary-image,
.imggrid-slide,
.imggrid-slide0,
.card-img-top,
.hovercol img,
.card img,
.item img {
  transition: opacity 0.3s ease;
}

/* .item:hover .itinerary-image {
  opacity: 0.8;
  transition: opacity 0.3s ease;
} */
.itinerary-image {
  transition: opacity 0.3s ease;
}

.card-body h6:hover {
  text-decoration: underline;
}

.imggrid-slide.active {
  opacity: 1;
  z-index: 2;
  pointer-events: auto;
}
.taxtitle {
  position: relative;
  display: inline-block;
}

.item a:hover .iternary-title {
  text-decoration: underline;
}
/* .iternary-title:hover {
  text-decoration: underline;
} */

/* Hover effect for image opacity */
.card:hover .imggrid-slide.active {
  opacity: 0.8;
}



.slider-arrow {
  position: absolute;
  top: 50%;
  right: 20px;
  background: #ffffff2e;
  backdrop-filter: blur(15px);
  border: 1px solid #ffffff54;
  pointer-events: auto;
  border-radius: 100px;
  width: 36px;
  height: 36px;
  font-size: 2rem;
  cursor: pointer;
  transform: translateY(-50%);
  z-index: 2;
}

.slider-indicators {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 7px;
  border-radius: 100px;
  padding: 5px 5px 0px 5px;

  background: #ffffff2e;
  backdrop-filter: blur(15px);
  z-index: 2;
}

.slider-indicator {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 0.5px solid #f0f2f4;
  display: inline-block;
  cursor: pointer;
}

.slider-indicator.active {
  background: #ffffff;
}
.slider-arrow-img-right {
  width: 9px;
  top: 9.88px;
  left: 14.25px;
  position: absolute;
  pointer-events: none;
}

.slider-arrow-img-left {
  width: 9px;
  top: 9.88px;
  left: 11px;
  position: absolute;
  pointer-events: none;
}
a.phone-link, a.phone-link:visited, a.phone-link:active {
  color: #fff !important;
  text-decoration: none !important;
}


.slider-arrow,
.slider-indicators {
  display: none;
}

.facetwp-selections li {
  display: flex;
  align-items: center;
  gap: 8px;
  border-right: 1px solid #d9d9d9; /* vertical border */
  padding-right: 12px; /* space after content before border */
  margin-right: 12px; /* space after border before next li */
}

/* Remove border from the last li */
.facetwp-selections li:last-child {
  border-right: none;
  margin-right: 0;
  padding-right: 0;
}
.benefits-scroll {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE 10+ */
}
.benefits-scroll::-webkit-scrollbar {
  display: none; /* Safari and Chrome */
}
@media (max-width: 767.98px) {
  .mobile-grid-item {
    padding-left: 21px;
    padding-right: 21px;
  }
  .pl-66 {
    padding-left: calc(var(--bs-gutter-x) * 0.5);
  }
  .pr-66 {
    padding-right: calc(var(--bs-gutter-x) * 0.5);
  }
}

.card-mobile {
  width: auto;
  height: 211.5px;
  border-radius: 15px;
  gap: 5px;
  border-width: 1.45px;
  padding: 5px;
  background: #ffffff2e;
  border: 1.45px solid #d6d6d654;
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .tablet-line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .tablet-2x2-grid > .col-6 {
    flex: 0 0 50%;
    max-width: 50%;
    display: flex;
    flex-direction: column;
  }
  .tablet-2x2-grid {
    flex-wrap: wrap;
  }
}

.pb-responsive {
  padding-bottom: 1.5rem; /* pb-4 default */
}

@media (min-width: 992px) {
  .pb-responsive {
    padding-bottom: 3.5rem; /* pb-6 */
  }
}
/* Limit talktext width on tablet and mobile */

@media (max-width: 461.98px) {
  .talktext {
    max-width: 22em; /* Adjust as needed for 3 lines */
    margin-left: auto;
    margin-right: auto;
    white-space: normal;
    text-align: center; /* Optional: center text */
    display: block;
  }
}

/*-- For More Popular area on home page */
@media (min-width: 1200px) {
  .col-xl-1-5 {
    flex: 0 0 20%;
    max-width: 20%;
  }
}
@media (min-width: 1201px) and (max-width: 1400px) {
  .col-xl-1-5 {
    flex: 0 0 25%;
    max-width: 25%;
  }
}

@media (min-width: 1000px) and (max-width: 1300px) {
  .img-332x331 {
    object-fit: cover !important;
    width: 100% !important;
    height: 220px !important;
  }
  .pr-66 {
    padding-right: calc(var(--bs-gutter-x) * 0.5) !important;
  }
}
@media (max-width: 1000px) {
  .pr-66 {
    padding-right: calc(var(--bs-gutter-x) * 0.5) !important;
  }
  .pl-66 {
    padding-left: calc(var(--bs-gutter-x) * 0.5) !important;
  }
  .img-332x331 {
    height: auto !important;
  }
}

/* Custom display utility for screens below 1210px */

.show-until-1210 {
  display: flex !important;
}
@media (min-width: 1210px) {
  .show-until-1210 {
    display: none !important;
  }
}

/* Hide below 1210px, show above */
.hide-until-1210 {
  display: none !important;
}
@media (min-width: 1210px) {
  .hide-until-1210 {
    display: flex !important;
  }
}
@media (max-width: 1210px) {
  /* .pagination-controls {
    display: none !important;
  } */
}

/* Show .d-below-1040 below 1040px, hide above */
.d-below-1040 {
  display: block !important;
}
@media (min-width: 1040px) {
  .d-below-1040 {
    display: none !important;
  }
}

.travel-title {
  font-weight: 400;
  font-size: 32px;

  color: #00253a !important;
}

/* Tablet styles */
@media (max-width: 768px) {
  .travel-title {
    font-size: 32px;
    /* -4% of 48px */
  }
}

/* Mobile styles */
@media (max-width: 480px) {
  .travel-title {
    font-size: 32px;
    /* -4% of 32px */
  }
}
.darkheader #navbarContent a.nav-link,
.darkheader #navbarContent a.nav-link:link,
.darkheader #navbarContent a.nav-link:visited,
.darkheader #navbarContent a.nav-link:hover,
.darkheader #navbarContent a.nav-link:active,
.darkheader .text-white,
.darkheader .text-white a,
.darkheader .text-white a:link,
.darkheader .text-white a:visited,
.darkheader .text-white a:hover,
.darkheader .text-white a:active {
  color: #00253a !important;
  text-decoration: none !important;
  cursor: default;
}
.darkheader .toggler-icon {
  border: 0.77px solid #cad2d7 !important;
}

.darkheader .toggler-line {
  background: #00253a !important;
}
.darkheader .search-btnm svg,
.darkheader .search-btnm svg circle,
.darkheader .search-btnm svg line {
  stroke: #00253a !important;
}
.darkheader .search-btnm {
  border: 0.77px solid #cad2d7 !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
}
.darkheader .ms-1,
.darkheader .atol-logo {
  filter: brightness(0) saturate(100%) invert(54%) sepia(7%) saturate(1162%) hue-rotate(163deg) brightness(92%) contrast(82%);
}
@media (max-width: 767.98px) {
  #benefitsScroll {
    overflow-y: hidden !important;
    overscroll-behavior-y: contain; /* Prevents vertical scroll chaining */
    height: 60px; /* Adjust to fit your content height exactly */
    touch-action: pan-x; /* Only allow horizontal scroll on touch devices */
  }
  #benefitsContent {
    height: 100%;
    align-items: center;
  }
}

@media (max-width: 1210px) {
  /* Class to apply when mobile menu is open */
  body.mobile-menu-open {
    overflow: hidden;
    position: fixed;
    width: 100%;
  }

  .mobile-menu-panel {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw !important;
    height: 100dvh !important;
    max-width: 100vw !important;
    max-height: 100dvh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    z-index: 1050;
    background: #fff;
    display: none;
  }
  .mobile-menu-panel.show {
    display: flex !important;
    flex-direction: column;
  }
  .mobile-menu-panel .container,
  .mobile-menu-panel .container-fluid,
  .mobile-menu-panel .row,
  .mobile-menu-panel .px-3 {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
  }

  .mobile-menu-panel ul,
  .mobile-menu-panel li,
  .mobile-menu-panel a,
  .mobile-menu-panel button {
    max-width: 100vw !important;
    box-sizing: border-box !important;
    
    word-break: break-word;
  }
}

.mobile-mt {
  margin-top: 0; /* default no margin */
}

@media (max-width: 576px) {
  .mobile-mt {
    margin-top: 1rem; /* or any value like 16px */
  }
  .arrangecallbtn {
    width: 100% !important;
  }
}

.single-holiday-package-info.detail-pricing-text.black p {
  margin-bottom: 0;
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
  .holiday-card-grid:nth-child(n + 4) {
    display: none !important;
  }
}
.responsive-button-group {
  display: flex;
  gap: 1rem;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

@media (max-width: 991.98px) {
  .responsive-button-group {
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
  }
  .responsive-button-group .btn {
    width: 90%;
  }
}
.down-arrow-svg {
  transition: transform 0.3s;
}
button[aria-expanded="true"] .down-arrow-svg {
  transform: rotate(180deg);
}

.nextimg {
  top: 12px;
  margin-left: 5px;
}
.previmg {
  top: 12px;
  margin-left: -5px;
}
.detail-pricing-text .holiday-price-amount {
  color: #00253a !important;
}
.hero-pricing-text .holiday-price-amount {
  color: #fff !important;
}
@media (max-width: 768px) {
  .viewallbtn,
  .demomobilepanelbtn {
    width: 90%;
  }
}
@media (min-width: 992px) {
  .holiday-sidebar {
    position: sticky;
    top: 20px;
    z-index: 2;
    max-height: calc(
      100vh
    ); /* Leaves more space for header, adjust as needed */
  
    transition: max-height 0.2s;
  }
  /* Prevent sticky sidebar from overlapping the breakdown section */
}

@media (min-width: 992px) {
  .single-holiday-content {
    grid-template-columns: 2fr 1fr; /* Two columns with 2:1 ratio on desktop */
    gap: 20px;
  }
}

.single-holiday-main-image {
  width: 100%;
  aspect-ratio: 1.89 / 1;
  border-radius: 8px;
  object-fit: cover;
}

.single-holiday-side-images {
  display: flex;
  margin-bottom: 20px;
}

.single-holiday-side-image {
  width: 100%;
  aspect-ratio: 1.92 / 1;
  border-radius: 8px;
  object-fit: cover;
}

/* Target FacetWP Load More button specifically */
.facetwp-load-more {
  height: auto;
  padding-top: 15px;
  padding-right: 25px;
  padding-bottom: 15px;
  padding-left: 25px;
  gap: 10px;
  border-radius: 100px;
  border-width: 1px;
  background: #e76d57;
  border: 0px;
  color: #fff;
}

/* Hover state for FacetWP Load More */
.facetwp-load-more:hover {
  background: #f64d2e !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Focus state for FacetWP Load More */
.facetwp-load-more:focus {
  outline: 3px solid #fff200 !important;
  outline-offset: 2px !important;
}

/* Active state for FacetWP Load More */
.facetwp-load-more:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

/* Mobile responsive */
@media (max-width: 991.98px) {
  .facetwp-load-more {
    width: 100% !important;
  }
}
@media (max-width: 991.98px) {
  .loadmore {
    width: 100% !important;
  }
}

/* Hide default checkbox */
.custom-check {
  appearance: none;
  -webkit-appearance: none;
  background-color: #fff;
  border: 2px solid #e76d57;
  width: 20px;
  height: 20px;
  border-radius: 4px;
  position: relative;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  transition: background-color 0.3s, border-color 0.3s;
}

/* Style when checked */
.custom-check:checked {
  background-color: #e76d57;
  border-color: #e76d57;
}

/* Create checkmark */
.custom-check:checked::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 6px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.form-check-label {
  color: #335061;

  font-weight: 400;
  font-size: 14px;
}
.form-label {
  color: #335061;

  font-weight: 400;
  font-size: 14px;
}
.form-control {
  color: #335061;
  border: 1px solid #2423313b;
  font-weight: 400 !important;
  font-size: 16px;

  vertical-align: middle;
}

.text-primary-eshore {
  color: #e76d57 !important;
}
.contact-title-main {
  color: #00253a;
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
}
.contact-para {
  font-weight: 400;
  font-size: 16px;

  color: #657B88;
}
.contact-para212 {
  font-weight: 400;
  font-size: 16px;

  
}
.contact-form-bg {
  background-color: #F0F2F4;
  padding : 20px;
  border-radius: 16px;
}
.fromsection{
  font-size: 16px;
}
.contact-title{
  color: #00253A;
font-weight: 400;
font-size: 21px;
line-height: 24px;
}
/* .text-primary-eshore{
  color: #98A7B0 !important;
} */
.opening-header {
  font-weight: 400;
  font-size: 32px;

  color: #00253a;
}
.dates {
  color: #e76d57;

  font-weight: 400;
  font-size: 18px;
}

.time {
  font-weight: 400;
  font-size: 14px;

  color: #335061;
}
.contact-text p {
  margin-bottom: 0;
  margin-top: 0;
  display: inline;
}
.contact-text {
  display: flex;
  align-items: center; /* center icon and text vertically */
  font-weight: 600;
  font-size: 16px;
  color: #00253A;
  gap: 8px;

  line-height: 1.3;
}

.contact-text .contact-icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-top: 2px;
}

.contact-phone {
  color: #335061;

  font-weight: 700;
  font-size: 14px;

  margin-left: 4px;
  white-space: nowrap;
}

@media (max-width: 576px) {
  .contact-text {
    font-size: 13px;
    gap: 6px;
  }
  .contact-phone {
    font-size: 14px;
  }
}

.contact-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.Reason-contact {
  color: #00253a;

  font-weight: 400;
  font-size: 32px;
}
.listpara,
.listpara a,
.listpara a:link,
.listpara a:visited,
.listpara a:hover,
.listpara a:active,
.listpara strong,
.listpara strong:link,
.listpara strong:visited,
.listpara strong:hover,
.listpara strong:active {
  font-weight: 400;
  font-size: 16px;
  color: #00253A !important;
  text-decoration: none !important;
  cursor: default;
} /* Reset Bootstrap's native check styling */
.custom-wide-btn{
  width: 100%  !important;
}
.custom-form-check .form-check-input {
  width: 20px;
  height: 20px;
  background-color: #e76d57; /* orange */
  border: none;
  border-radius: 4px;

  -webkit-appearance: none;
  outline: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

/* White checkmark using ::after (no image) */

/* Optional: focus ring */
.custom-form-check .form-check-input:focus {
  outline: 2px solid #e76d57;
  outline-offset: 2px;
  box-shadow: none;
}
.form-check-label {
  cursor: default; /* removes hand cursor */
}
.form-check-input {
  cursor: pointer;
}

@media (max-width: 768px) {
  .form-label,
  .contact-para,
  .listpara,
  .time,
  .contact-text {
    font-size: 14px;
    line-height: 130%;
  }
  .form-control,
  .form-check-label {
    font-size: 16px;
  }
  .contact-title {
    font-size: 19px;
    line-height: 110%;
  }

  .opening-header,
  .Reason-contact {
    font-size: 16px;
  }

  .dates {
    font-size: 16px;
  }

  .contact-icon {
    width: 24px;
    height: 24px;
  }

  .contact-text {
    padding: 8px 12px;
    gap: 6px;
  }

  .custom-checkbox {
    width: 16px;
    height: 16px;
  }

  .responsive-button-group .btn {
    padding: 10px 16px;
    font-size: 14px;
  }
}
@media (max-width: 576px) {
  .contact-desc,
  .contact-phone {
    width: 100%;
  }
  .contact-phone {
    font-size: 16px;
    font-weight: bold;
    margin-top: 2px;
  }
}

.storytext {
  color: #98a7b0;

  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
}

/* Hover effects for destination grid cards */
.hovercol:hover .categoryhead,
.hovercol:hover .categoryheadm {
  text-decoration: underline;
}

.hovercol:hover .card-img-top {
  opacity: 0.8;
  transition: opacity 0.3s ease;
}

.card-img-top {
  transition: opacity 0.3s ease;
}

/* If you want the trips text to also have underline on hover */
.hovercol:hover .night {
  text-decoration: underline;
}
.latestH{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 21px;
  line-height: 1.2;
}

@media (max-width: 768px) {
  .alt-color3.travel-guidep {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5; /* Line height (adjust as needed) */
    /* Force height of 3 lines */
  }
 

  .card-grid-title {
    min-height: 50px;
   
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
   
    text-overflow: ellipsis; /* Optional, improves single-line behavior */
  }

  .card-text-cat {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5; /* Line height (adjust as needed) */
    min-height: calc(1.5em * 3); /* Force height of 3 lines */
  }
}

.holiday-card {
  cursor: pointer;
}
.holiday-card:hover img:not(.no-hover) {
  opacity: 0.7;
}
.holiday-card:hover .latestH,
.holiday-card:hover .holiday-title,
.holiday-card-grid:hover .taxtitle ,
.card:hover .card-grid-title,
.holiday-card:hover .iternary-title,
.holiday-card:hover .categoryhead,
.holiday-card:hover h6,
.hovercol:hover h6,
.card:hover h6,
.item:hover .taxtitle,
.item:hover .iternary-title {
  text-decoration: underline  ;
}
.holiday-card-grid:hover .gridtitle {
  text-decoration: underline !important;
}
.team-member-link:hover .tm-name , .team-member-link:hover .readLink{
    text-decoration: underline !important;
}
.holiday-card:hover .holiday-title {
  text-decoration: underline !important;
}
.holiday-card:hover .read {
  text-decoration: underline !important;
}
.holiday-card:hover .text-decoration-none {
  text-decoration: underline !important;
}
.holiday-card:hover .text-decoration-none.read {
  text-decoration: underline !important;
}
.gform_title{
  font-size: 16px !important;
}
body .gform_legacy_markup_wrapper .top_label div.ginput_container

 {
  width: 100% !important;
  margin-bottom: 10px;
}
    .gform_legacy_markup_wrapper .top_label input.medium, .gform_legacy_markup_wrapper .top_label select.medium {
        width: 100% !important;
    }
    .gform_legacy_markup_wrapper .gform_footer input.button, .gform_legacy_markup_wrapper .gform_footer input[type=submit], .gform_legacy_markup_wrapper .gform_page_footer input.button, .gform_legacy_markup_wrapper .gform_page_footer input[type=submit] {
        font-size: 1em;
        width: 100% !important;
       background-color: #e76d57 !important;
        color: #fff !important;
        border: none !important;
        padding: 10px 0 !important;
        border-radius: 50px !important;
        border: 1px solid transparent !important;
    }
    .gform_legacy_markup_wrapper.gf_browser_chrome .gfield_checkbox li input, .gform_legacy_markup_wrapper.gf_browser_chrome .gfield_checkbox li input[type=checkbox], .gform_legacy_markup_wrapper.gf_browser_chrome .gfield_radio li input[type=radio]

 {
  margin-top: 0px !important;
  accent-color: #e76d57 !important;
 }
 .gchoice_select_all, .gform_legacy_markup_wrapper ul.gfield_checkbox li input[type=checkbox]:checked+label, .gform_legacy_markup_wrapper ul.gfield_radio li input[type=radio]:checked+label

 {
    font-weight: 400 !important;
}
.gform_legacy_markup_wrapper label.gfield_label, .gform_legacy_markup_wrapper legend.gfield_label {
  font-weight: 400 !important;
  font-size: 14px !important;
     color: rgb(51, 80, 97) !important;
}
.gform_legacy_markup_wrapper select{ 
  color: #335061 !important;
    border: 1px solid #2423313b   !important;
    font-weight: 400 !important;
    font-size: 16px   !important;
      border-radius: var(--bs-border-radius);
    }

   
.gform_legacy_markup_wrapper textarea
{color: #335061 !important;
    border: 1px solid #2423313b   !important;
    font-weight: 400 !important;
    font-size: 16px   !important;
      border-radius: var(--bs-border-radius);
      height: 260px !important;
    }

    .gform_legacy_markup_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
    font-size: inherit;
    font-family: inherit;
    padding: 5px 4px;
    letter-spacing: normal;
    border: 1px solid #2423313b !important;
    border-radius: var(--bs-border-radius);
}

.gform_legacy_markup_wrapper .gform_footer {
    padding: 0px 0 0px 0 !important;
    margin: 8px 0 0 0 !important;
    clear: both;
    width: 100%;
}
.contact-form .gform_legacy_markup_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) , .contact-form .gform_legacy_markup_wrapper select{
    color: #335061;
    border: 1px solid #2423313b;
    font-weight: 400 !important;
    font-size: 16px;
    vertical-align: middle;
    display: block;
    width: 100%;
    padding: .375rem .75rem !important;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.gform_legacy_markup_wrapper{
  margin-top: 0px !important  ;
}
.gform_legacy_markup_wrapper h3.gform_title {
    color: #ffffff !important;
    font-weight: 400  !important;
    font-size: 18px !important;
}
#gform_2 #field_2_1.custom-email input[type="email"] {
  color: white;
  background-color: transparent !important;
  border-color: #cad2d7 !important;
  height: 42px !important;
  border-radius: 100px !important;
  border: 1px solid !important;
  padding: 10px 20px !important;
  gap: 10px !important;
  box-shadow: none !important;
}

.gform_legacy_markup_wrapper p.gform_description{
  color: #cad2d7 !important;
   font-weight: 400  !important;
    font-size: 16px !important;
}
/* Desktop: side by side */
@media (min-width: 769px) {
  form#gform_2 {
    display: flex;
    align-items: center;
    /* gap: 10px; */
    flex-wrap: nowrap; /* Prevent wrapping */
  }
  #field_2_1.custom-email {
    flex: 1 1 auto;
    min-width: 250px;
    margin: 0;
  }
  #field_2_1.custom-email input {
    width: 420px !important;
    padding: 12px;
    border-radius: 20px;
    border: 1px solid #fff;
    background: transparent;
    color: #fff;
  }
  .gform_footer {
    flex: 0 0 220px; /* Fixed width for button */
    margin: 0;
    display: flex;
    align-items: center;
  }
  .gform_footer input[type="submit"] {
    width: 100%;
    padding: 12px 0;
    border-radius: 30px;
    background-color: #e36852;
    color: #fff;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    font-size: 1rem;
  }
}

/* Mobile: stacked, full width, smaller button */
@media (max-width: 768px) {
  form#gform_2 {
    display: block;
  }
  #field_2_1.custom-email,
  .gform_footer {
    width: 100%;
    margin-bottom: 10px;
  }
  .gform_footer input[type="submit"] {
    width: 100%;
    padding: 10px 0;
    font-size: 0.95rem;
    border-radius: 30px;
  }
}
.gform_legacy_markup_wrapper .gform_body{
  width: auto !important ;
}
.gfield.customlabel input[type="text"],
.gfield.customlabel input[type="email"],
.gfield.customlabel input[type="tel"] {

  background: #fff !important;
  
}
#gform_confirmation_message_2 {

  color: #ffffff !important;
 
}
.about-title {
  font-weight: 400;
  font-size: 74px;
  line-height: 74px;

  color: #ffffff;
}
.tm-img {
  aspect-ratio: 3 / 2;
  border-radius: 32px;
  object-fit: cover;
}
.tm-name {
  font-size: 27px;
  color: #00253a;
}

@media (max-width: 576px) {
  .tm-name {
    font-size: 21px;
  }
}
.tm-pos {
  font-size: 14px;
  color: #98a7b0;
}
.highlight {
  color: #e76d57;
}
.lead {
  color: #00253a;
  font-weight: 400;
  font-size: 44px;
  line-height: 100%;
}

.section-header {
  text-align: center;
  margin-bottom: 50px;
}
.section-title {
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 15px;
  color: #333;
}
.section-subtitle {
  font-size: 18px;
  color: #666;
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.6;
}
.iconsimg {
  width: 80px;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
  display: block;
}
/* Responsive Design */
@media (max-width: 768px) {
  .icon-grid-block {
    padding: 40px 0;
  }
  .section-title {
    font-size: 28px;
  }

  .iconsimg {
    width: 60px;
    height: auto;
  }
}
@media (max-width: 480px) {
  .section-header {
    margin-bottom: 30px;
  }
}
/* Animation for loading */
.col-xl-3 {
  opacity: 0;
  animation: fadeInUp 0.6s ease forwards;
}
.col-xl-3:nth-child(1) {
  animation-delay: 0.1s;
}
.col-xl-3:nth-child(2) {
  animation-delay: 0.2s;
}
.col-xl-3:nth-child(3) {
  animation-delay: 0.3s;
}
.col-xl-3:nth-child(4) {
  animation-delay: 0.4s;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.aboutp {
  font-weight: 400;
  font-size: 16px;

  text-align: center;
  color: #657b88;
}
.abouth6 {
  font-weight: 400;
  font-size: 44px;

  text-align: center;
  color: #e76d57;
}
@media (max-width: 576px) {
  .about-title {
    font-weight: 400;
    font-size: 40px;
    line-height: 112.00000000000001%;
  }
  .lead {
    font-weight: 400;
    font-size: 28px;
    line-height: 112.00000000000001%;

    text-align: center;
  }
  .abouth6 {
    font-weight: 400;
    font-size: 28px;
    line-height: 112.00000000000001%;

    text-align: center;
  }
  .aboutp {
    font-weight: 400;
    font-size: 14px;

    text-align: center;
  }
}

.article-header-img {
  width: 100%;
  text-align: left;
}

.article-header-img img {
  width: 100%;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  aspect-ratio: 17/11; /* Maintain aspect ratio */
  object-fit: cover;
  border-radius: 32px;
}
.hero-section {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 600px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.Gobacklink a {
  color: #e76d57;
  width: 100%;
  text-align: left;
  font-weight: 400;
  font-style: Regular;
  font-size: 16px;
   

  transition: color 0.3s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.Gobacklink a:hover {
  text-decoration: underline !important;
}

.main-content {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 60px 0;
}

.article-header-img {
  max-width: 100%;
  text-align: center;
}

.article-header-img img {
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  max-height: 400px;
  object-fit: cover;
}

.article-title {
  color: #ffffff;

  font-weight: 400;
  font-style: Regular;
  font-size: 44px;
   
  line-height: 3.5rem;
}

.article-subtitle {
  color: #ffffff;

  font-weight: 400;
  font-style: Regular;
  font-size: 16px;
   
}

.article-author {
  color: white;
}

.author-name {
  font-size: 1.5rem;
  font-weight: 500;
  color: #FFFFFF;
}

/* Responsive Design */
@media (max-width: 768px) {
  .hero-section {
    min-height: 500px;
  }

  .article-title {
    font-size: 2rem;
  }

  .article-subtitle {
    font-size: 1rem;
  }

  .Gobacklink {
    margin-bottom: 1rem;
    width: 100%;
    text-align: left;
  }

  .main-content {
    padding: 40px 0;
  }
}

.toc-link {
  color: #666;
  transition: color 0.3s ease;
}

.toc-link:hover {
  color: #e76d57;
}

.toc-link.active {
  color: #00253a;
  font-weight: bold;

  padding-left: 10px;
}

.content-section {
  scroll-margin-top: 100px; /* For modern browsers */
}
.content-heading {
  color: #242331;

  font-weight: 400;
  font-style: Regular;
  font-size: 44px;
   
}
.content-para{
   width: 90% !important;
  margin: 0 auto !important;
}

.content-detail {
  color: #686868;
 
  font-weight: 400;
  font-style: Regular;
  font-size: 18px;
  vertical-align: bottom;
}
.toc-title {
  color: #00253a;

  font-weight: 400;
  font-style: Regular;
  font-size: 27px;
   
}
.share-title {
  color: #00253a;
  font-weight: 400;
  font-style: Regular;
  font-size: 16px;
   
}
.sticky-top {
  top: 30px !important;
}

/* Social icon circle border */
.social-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 2px solid #00253a;
  border-radius: 50%;
  background: #fff;
  transition: background 0.2s, border-color 0.2s;
  padding: 0;
}

.social-circle img {
  width: 20px;
  height: 20px;
}

/* .social-circle:hover {
    background: #00253A;
    border-color: #00253A;
} */

/* .social-circle:hover img {
    filter: brightness(0) invert(1);
} */

.content-detail h3 {
  color: #242331;
  font-weight: 400;
  font-style: Regular;
  font-size: 27px ;
   

  /* -4% of 44px */
}

.content-detail h4 {
  color: #e76d57 !important; ;
  font-weight: 400;
  font-style: Regular;
  font-size: 27px;
   

  /* -4% of 34px */
}

.content-detail p {
  color: #686868;
  font-weight: 400;
  font-style: regular;
  font-size: 18px;
   

  vertical-align: bottom;
}
.content-detail a{
  color: #686868;
   text-decoration: underline;
}
/* Responsive styles for mobile */
@media (max-width: 576px) {
  .input {
    width: 100% !important;
  }
  .content-detail h3 {
    font-size: 28px;
    line-height: 112%;
    /* -4% of 28px */
  }
  .content-detail h4 {
    font-size: 24px;
    line-height: 112%;
    /* -4% of 22px */
  }
  .content-detail p {
    font-size: 14px;
  }
}
.content-detail img {
  /* Your styles here */
  width: auto;
  margin: 0px auto;

  object-fit: cover;
  /* aspect-ratio: 16/9; */
}
.facetwp-toggle{
  color: #e76d57 !important;
}

.nights-info .nights {
  display: inline;
}
.section-heading {
  font-size: 42px !important;
  color: #242331;
  font-weight: 400;
  line-height: 1.1;

}

@media (max-width: 768px) {
  .section-heading {
    font-size: 28px !important;
  }
}
.content-detail img.size-full { width:100%; }
.content-detail h4 strong { font-weight:400; }
.team-title {
  font-weight: 400;
  font-style: normal;
  font-size: 44px;
  line-height: 100%;
  /* -4% of 44px */
}

/* Tablet view */
@media (max-width: 768px) {
  .input,
  .submitbtn {
    width: 90% !important ;
  }
  .team-title {
    font-size: 32px;
    /* -4% of 32px */
  }
}

/* Mobile view */
@media (max-width: 480px) {
  .team-title {
    font-size: 32px;
    /* -4% of 32px */
  }
}


.single-holiday-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 15px;
  align-items: start;
}
.gallery-wrapper {
  display: flex;
  gap: 10px;
  height: 500px;
  max-height: 500px;
  width: 100%;
}
.gallery-column,
.gallery-single {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.gallery-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 6px;
}
.half-height {
  flex: 1;
}
.full-height {
  height: 100%;
}
.flex-2 {
  flex: 2;
}
.flex-1 {
  flex: 1;
}
.height-50 {
  height: calc(50% - 5px);
}

/* ...existing code... */
.footer-links-row {
  flex-wrap: wrap !important;
  margin-right: 0;
  margin-left: 0;
}

.footer-link-col {
  margin-bottom: 24px;
}

@media (max-width: 576px) {
  .footer-link-col,
  .footer-links-row > [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;

    margin-bottom: 16px;
  }
}
@media (max-width: 576px) {
  .footer-link-col,
  .footer-links-row > [class*="col-"] {
    text-align: center !important;
  }
  .footer-link-col h6,
  .footer-links-row > [class*="col-"] h6 {
    text-align: center !important;
    margin-left: auto;
    margin-right: auto;
  }
  .footer-link-list {
    align-items: center !important;
  }
}
/* ...existing code... */
.linksunderline:hover {
  text-decoration: underline !important;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}
.contact-office-hours {
  color: #335061;

  font-weight: 700;
  font-size: 14px;

  margin-left: 4px;
  white-space: nowrap;
}
/* Remove default checkmark and style checkbox */
.form-check-input {
  appearance: none;
  -webkit-appearance: none;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  position: relative;
}

/* Custom tick when checked */
.form-check-input:checked {
  background-color: #d35b45; /* red background */
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 80% 80%;
  border-color: #d35b45;
}

/* Optional: press effect only on unchecked */
.form-check-input:active:not(:checked) {
  filter: brightness(90%);
}
.mapsvg-wrap .mapsvg { cursor:pointer; }

img.wp-smiley, img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 0.07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

.holiday-grid-header {
  max-width: 50%;
}

@media (max-width: 991px) {
  .holiday-grid-header {
  max-width: 100%;
  }
}

.fs-wrap{
  width: 100% !important;
}
.fs-label-wrap .fs-label {
    padding: 15px 5px 15px 5px !important;
    height: 50px !important;
}


@media (max-width: 1400px) {
  .homepagination {
    display: flex !important;
  }
}
.holiday-category-link{
  color: #e76d57 !important;
}
.facet-sort-wrapper select {
    min-width: 150px; /* optional: prevent it collapsing too narrow */
    margin-left: 8px; /* adjust spacing from filters */
}

.facetwp-selections-wrapper,
.facet-sort-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
}
.facetwp-type-sort select {
    padding-top: 11px;
    padding-bottom: 11px;
    border-radius: 8px;
    border-color: #E4E7EA !important;
    outline:0px solid #E4E7EA;
}



/* Overlay behind content */
#facetcustom-loader-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.4);
  backdrop-filter: blur(4px);
  z-index: 9998;
  display: none;
}

/* Top loading bar */
#facetcustom-loader-line {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0;
  background-color: #e76d57;
  z-index: 9999;
  transition: width 0.4s ease-out;
}

#facetcustom-loader-line.finished {
  transition: width 0.2s ease-in;
}



.dark{
  color: #00253A !important;
}
.darkh{
  color: #657B88 !important;
}
.card:hover .card-grid-title {
  text-decoration: underline !important;
}
.holiday-card:hover .latestH {
  text-decoration: underline !important;
}
.holiday-card-grid:hover.gridtitle {
  text-decoration: underline !important;
}
.filterswrap { min-width:300px; }
.filterswrap .fs-wrap {
  display: inline;
}
.filterswrap .fs-label-wrap {
    border-radius: 8px;
    border-color: #E4E7EA;
}
.facetwp-pager {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 24px;
}

.facetwp-page,
.facetwp-prev,
.facetwp-next {
  display: inline-block;
  padding: 8px 14px;
  background: #fff;
  color: #e76d57 ;
  cursor: pointer;
  font-weight: 500;
  font-size: 16px;
  transition: background 0.2s, color 0.2s;
}

.facetwp-page,
.facetwp-prev,
.facetwp-next {
	text-decoration: none;
}

.facetwp-page.active,
.facetwp-page:hover,
.facetwp-prev:hover,
.facetwp-next:hover {
	text-decoration: underline;
}

.facetwp-page.disabled,
.facetwp-prev.disabled,
.facetwp-next.disabled {
  opacity: 0.5;
  pointer-events: none;
}

.singletravelguide .imgarea img { width:100%; object-fit: cover; height: 100%; aspect-ratio: 17 / 11; border-radius:20px; }
.singletravelguide:hover img { opacity:0.7; }
.fs-wrap.multiple .fs-option.selected .fs-checkbox i { background-color:#e76d57 !important;}
.activeatstart { fill:#e76d57 !important; }

/* Make the checkbox orange */
.form-check-input[type="checkbox"],
.custom-form-check input[type="checkbox"] {
  accent-color: #e76d57; /* your orange color */
}
@media (min-width: 992px) and (max-width: 1399.98px) {
  .travel-guide-card:nth-child(n+4) {
    display: none !important;
  }
}
.auth{
  color :#657b88 !important;
  font-size: 16px;
}
.select-wrapper , .facetwp-type-sort {
  position: relative;
  display: inline-block;
}

.styled-select , .facetwp-type-sort select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: none !important;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 13px 5px 13px 5px !important;
    padding-right: 30px;
    font-size: 16px;
    color: #333;
    cursor: pointer;
    width: 100%;
    min-width: 180px;
}
.styled-select:focus , .facetwp-type-sort select:focus {
  outline: none;
  box-shadow: none;
}
/* Arrow */
.select-wrapper::after , .facetwp-type-sort::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #333;
  pointer-events: none;
  transition: transform 0.2s ease;
}

/* Flip when select is open */
.select-wrapper.open::after , .facetwp-type-sort.open::after {
  transform: rotate(180deg);
}

.accordion-button:not(.collapsed) { color:#000; background: transparent; }
.accordion-button:focus { box-shadow: none; }
.accordion-button { font-weight: 700; }
.wsp-container h2 { color: #e76d57;
        border-bottom: 1px solid #e5e5e5;
        font-size: 1.25rem;
        padding-bottom: 1rem;
        font-weight: 600;
        margin-bottom: 1rem; }
.wsp-container ul {
    list-style-type: disc;
    padding: 0 0 0 40px;
}
.wsp-container ul li a { color: #000; text-decoration: none; }
.wsp-container ul li a:hover { color: #e76d57; text-decoration: none; }

.shadowmobile {
  /* No shadow by default on desktop */
  box-shadow: none;
}

@media (max-width: 576px) {
  .shadowmobile {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    border-radius: 1rem;
  }
  .nomargin {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
