/* ==================================================
   GLOBAL FONTS
   ================================================== */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Amatic+SC:wght@700&display=swap');

/* --- Font Variables --- */
:root {
  --primary-font: 'Poppins', system-ui, -apple-system, sans-serif;
  --title-font: 'Amatic SC', sans-serif;
}

/* --- Font Applications --- */
body {
  font-family: var(--primary-font);
}

/* --- AMATIC SC Titles Specific Instructions --- */
.custom-eat-and-drink__title,
.custom_overview_calendar-title,
.custom-spa .custom-spa__title,
.arh_page_title {
  font-family: var(--title-font);
  font-weight: 700;
  font-size: 5rem !important;
  letter-spacing: 0.05em;
  line-height: 1.1;
}




/* ==================================================
   LANGUAGE TOGGLE - CUSTOM PAGES
   ================================================== */
.language-toggle-container {
    position: relative;
    padding: 20px 1rem 4px;
    min-height: 32px;
    width: 100%;
    box-sizing: border-box;
}

.language-toggle-container input[type="radio"] {
    display: none;
}

.language-switcher {
    position: absolute;
    right: 1rem;
    top: 40px;
    display: inline-flex;
    background: #F5F5F5;
    border-radius: 20px;
    padding: 2px;
    gap: 2px;
    height: 32px;
    z-index: 10;
}

.language-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    border-radius: 16px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: #666;
    min-width: 40px;
    transition: all 0.2s ease;
    height: 28px;
    line-height: 1;
}

/* Language content visibility */
.language-content {
    display: none;
    padding-top: 8px;
    width: 100%;
}

/* Button active states */
#lang-en:checked ~ .language-switcher label[for="lang-en"],
#lang-pt:checked ~ .language-switcher label[for="lang-pt"] {
    background: white;
    color: #333;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Content visibility */
#lang-en:checked ~ .language-content.en,
#lang-pt:checked ~ .language-content.pt {
    display: block;
}

@media (max-width: 768px) {
    .language-toggle-container {
        padding: 24px 1rem 8px;
    }
    
    .language-switcher {
        right: 1rem;
    }
}
/* ==================================================
   CARD LAYOUT PAGES (Eat & Drink, Here & Around)
   ================================================== */
/* Preserve card layouts */
.language-content.active .custom-eat-and-drink,
.language-content.active .custom-around-here {
  max-width: 1200px;
  margin: 0 auto;
}

/* Maintain card grid structure */
.language-content.active .custom-eat-and-drink__card,
.language-content.active .custom-around-here__card {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
}

/* Ensure proper header spacing */
.language-content.active .custom-eat-and-drink__header,
.language-content.active .custom-around-here__header {
  margin-bottom: 3rem;
  width: 100%;
}

/* Ensure proper alignment with card content */
.custom-eat-and-drink,
.language-toggle-container {
    padding-left: 1rem;
    padding-right: 1rem;
}

@media (max-width: 768px) {
  .language-content.active .custom-eat-and-drink__card,
  .language-content.active .custom-around-here__card {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }

  .language-content.active .custom-eat-and-drink__card-image,
  .language-content.active .custom-around-here__card-image {
    grid-row: 1;
    grid-column: 1;
    height: 300px;
  }

  .language-content.active .custom-eat-and-drink__card-content,
  .language-content.active .custom-around-here__card-content {
    grid-row: 2;
    grid-column: 1;
    padding: 2rem;
  }
}

/* ==========================================
   SEASONAL CALENDAR TOGGLE - PILL STYLE
   ========================================== */

.seasons-container {
  position: relative !important;
}

.seasons-toggle-container {
  width: 100% !important;
  margin: 2rem auto !important;
  text-align: center !important;
  box-sizing: border-box !important;
  padding: 10px 1rem !important;
  position: relative !important;
}

/* The “bar” itself, sized/padded for a pill shape */
#content-view #about-us .txt .seasons-switcher {
  display: inline-flex !important;
  position: relative !important;
  width: 300px !important;  /* overall toggle width (tweak if needed) */
  height: 36px !important;  /* slightly taller so the slider can be inset */
  margin: 0 auto !important;
  padding: 4px !important;  /* key: 4px around the slider */
  background: #E8E8E8 !important;
  border-radius: 999px !important;  /* pill shape */
}

/* The two text labels (buttons) */
.seasons-btn {
  flex: 1 1 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #666 !important;
  cursor: pointer !important;
  border-radius: 999px !important;
  transition: color 0.3s ease !important;
  position: relative !important;
  z-index: 2 !important;
  margin-bottom: 0px;
}

/* Hide the radio inputs properly */
.seasons-toggle-container input[type="radio"] {
  display: none !important;
}

/* Active label text is darker */
#season-winter:checked ~ .seasons-switcher label[for="season-winter"],
#season-summer:checked ~ .seasons-switcher label[for="season-summer"] {
  color: #333 !important;
}

/* White “slider” highlight, inset by 4px all around */
#content-view #about-us .txt .seasons-switcher .seasons-slider {
  position: absolute !important;
  top: 4px !important;
  left: 4px !important;
  width: calc(50% - 4px) !important;  /* half minus the left offset */
  height: calc(100% - 8px) !important; /* full height minus top+bottom 4px each */
  background: #fff !important;
  border-radius: 999px !important;
  transition: transform 0.3s ease !important;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
  z-index: 1 !important;
}

/* Slide the slider to the right on summer check */
#season-summer:checked ~ .seasons-switcher .seasons-slider {
  transform: translateX(100%) !important;
}

/* Hide both schedules by default */
.seasons-content {
  display: none !important;
  margin-top: 2rem !important;
  width: 100% !important;
}

/* Reveal the correct season’s schedule */
#season-winter:checked ~ .seasons-content.winter,
#season-summer:checked ~ .seasons-content.summer {
  display: block !important;
}

/* Calendar text fixes */
.custom_overview_calendar-item {
  color: #333 !important;
}
.custom-activity-link {
  color: inherit !important;
  text-decoration: none !important;
}
.custom_overview_calendar-time {
  color: #666 !important;
}

/* Make toggle a bit narrower on small screens, if desired */
@media (max-width: 768px) {
  .seasons-switcher {
    width: 280px !important; /* narrower on mobile */
    height: 32px !important; /* slightly shorter */
  }
  .seasons-btn {
    font-size: 13px !important;
  }
}

/* =================================================
   SIMPLYBOOK.ME CUSTOMIZATIONS
   ================================================= */

/*--- Hide the “Edit profile” button in the client preview modal---*/
#client-profile-preview .sb-client-edit-popup {
  display: none !important;
}

/*---- More comprehensive approach ----*/
div.preloader  __custom-image > a,
div.preloader.__custom-image > a {
  pointer-events: none !important;
}

/*---- T&Cs formatting ---*/
/* Target the specific container for terms and conditions */
.txt.license--content > .container {
    width: 100% !important;
    max-width: 970px !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
}

/* Target the specific row for terms content */
.txt.license--content > .container > .row.spacing-mt-2 {
    margin-right: 0 !important;
    margin-left: 0 !important;
    width: 100% !important;
}

/* Target the specific label column */
.txt.license--content > .container > .row.spacing-mt-2 > .col-sm-3.text-md-right {
    width: 100% !important;
    max-width: 242.5px !important;
    padding: 10px !important;
}

/* Target the specific content column */
.txt.license--content > .container > .row.spacing-mt-2 > .col-sm-8.offset-sm-1.text-normal {
    width: 100% !important;
    max-width: 646.667px !important;
    padding: 10px !important;
    margin-left: 0 !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}

/* Media queries with specific selectors */
@media (min-width: 768px) {
    .txt.license--content > .container > .row.spacing-mt-2 > .col-sm-3.text-md-right {
        width: 25% !important;
    }
    
    .txt.license--content > .container > .row.spacing-mt-2 > .col-sm-8.offset-sm-1.text-normal {
        width: 66.667% !important;
        margin-left: 8.333% !important;
    }
}
/*--- Remember Me checkbox styles ---*/
.custom-checkbox input {
  opacity: 1;
  cursor: pointer;
  z-index: 1;
  accent-color: #E8DCD0;
}

.custom-checkbox input:checked {
  border-color: black;
}
/*--- showing service description on responsive mobile ---*/

.promotions-letter-flag,
label[for="sb_promotion_letters_flag"],
.v2.promotions-letter-flag {
    display: none !important;
}
/*--My Booking Details always expanded---*/
/* Force accordion to stay expanded */
.accordion .collapse {
  display: block !important;
}

/* Optional: Remove the toggle arrow/indicator if present */
.accordion [data-toggle="collapse"]::after {
  display: none;
}

/* If needed, remove any transition animations */
.accordion .collapse {
  transition: none !important;
}

/*--- SERVICE BUTTONS + SEE DETAILS UPDATES --*/

/* APPROACH: Target ONLY the specific elements that need "Explore" text
   This is the most precise approach that won't affect other elements */

/* First, ONLY hide text on category link buttons that should have "Explore" text */
.categories-container a[href*="#book/location/"][href*="/category/"]:not([href*="service"]),
.category-list a[href*="#book/location/"][href*="/category/"]:not([href*="service"]),
#sb_categories_list a[href*="#book/location/"][href*="/category/"]:not([href*="service"]),
.category-item a[href*="#book/location/"][href*="/category/"]:not([href*="service"]) {
  font-size: 0 !important; /* Hide ONLY the text on category buttons */
}

/* Then, ONLY add "Explore" text to those specific elements */
.categories-container a[href*="#book/location/"][href*="/category/"]:not([href*="service"])::after,
.category-list a[href*="#book/location/"][href*="/category/"]:not([href*="service"])::after,
#sb_categories_list a[href*="#book/location/"][href*="/category/"]:not([href*="service"])::after,
.category-item a[href*="#book/location/"][href*="/category/"]:not([href*="service"])::after {
  content: "Explore" !important;
  font-size: initial !important; 
  display: inline-block !important;
}

/* Explicitly reset any ::after content for back buttons */
#sb_back_button a::after,
[id^="sb_back_button"] a::after,
.clearfix a::after {
  content: none !important;
}

/* EXPLICITLY ensure calendar elements are never affected */
.custom_overview_calendar a,
.custom-activity-link,
div[class*="custom_overview_calendar"] a,
.seasons-content a {
  font-size: initial !important;
}

.custom_overview_calendar a::after,
.custom-activity-link::after,
div[class*="custom_overview_calendar"] a::after,
.seasons-content a::after {
  content: none !important;
}

/* EXPLICITLY protect the Next Available Date button */
button.btn--next-available-date,
.btn--next-available-date,
button.sb-next-available-date,
.alert--show-next-available button,
.alert--no-slots button,
.alert--dismissible button {
  font-size: initial !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

button.btn--next-available-date::after,
.btn--next-available-date::after,
button.sb-next-available-date::after,
.alert--show-next-available button::after,
.alert--no-slots button::after,
.alert--dismissible button::after {
  content: none !important;
}

/* Select Button No Border or Background */
.service-item.item #sb_booking_content .tab .btn.select,
.service-item.item #sb_time_classes_service_container .btn.select,
.service-item.item .btn.select {
  border: none !important;
  background: transparent !important;
  color: #000 !important;
}

/* Handle hover states */
.service-item.item #sb_booking_content .tab .btn.select:hover,
.service-item.item #sb_time_classes_service_container .btn.select:hover,
.service-item.item .btn.select:hover {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.service-item.item .tab.tab-col .excerpt-info .btn-bar .btn.select a {
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 4px !important;
}

/* Target the Book Now buttons specifically */
.service-item.item .btn.select a:hover {
  background: transparent !important;
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  border: none !important;
}

/* Only target read-more elements with data-target attributes starting with "#service" */
span.read-more[data-target^="#service"] {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background-color: #EADFD4 !important;
  color: #000000 !important;
  padding: 15px 0 !important;
  margin: 2px 0 !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  border: none !important;
  cursor: pointer !important;
  border-radius: 0 !important;
  position: static !important;
  right: auto !important;
  bottom: auto !important;
  top: auto !important;
}

/* Pulse animation for the group participants box */
@keyframes pulseBorder {
  0% {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.5);
  }
  70% {
    box-shadow: 0 0 0 6px rgba(0, 0, 0, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  }
}

/* Target only the btn-bar's booking count */
.btn-bar > .sb_group_booking_count {
  border: 2px solid #000 !important;
  display: flex !important;
  align-items: center !important;
  padding: 10px !important;
  margin-right: 15px !important;
  height: 40px !important;
  box-sizing: border-box !important;
  background-color: transparent !important;
  animation: pulseBorder 3s 5 !important;
  position: relative !important;
}

/* Ensure hover doesn't override the pulsing effect */
.btn-bar > .sb_group_booking_count:hover {
  background-color: transparent !important;
  border: 2px solid #000 !important; 
  animation: pulseBorder 3s 3 !important;
}

/* Add padding inside the box */
div.active-count > * {
  padding: 0 8px !important;
}

/* Remove any conflicting styles */
.plus_sb_group_count,
.minus_sb_group_count,
.sb-group-counter-input-div {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

div.service-item.item div.tab.tab-col div.excerpt-info div.tab-pd div.btn-bar div.sb_group_booking_count div.plugin-group-booking:before {
  background-position: left 4px center !important;
  width: 120px !important;
}

div.service-item.item div.tab.tab-col.tab-with-popup div.excerpt-info div.tab-pd div.btn-bar div.sb_group_booking_count div.plugin-group-booking {
  padding: 0 4px 0 32px !important;
  border: none !important;
}

/*--- TEXT REMINDER FOR SELECTING PARTICIPANTS ---*/
/* Base reminder styling for all services */
#sb_service_step_container .service-item .bar-service div.time {
    visibility: hidden; /* Hide original text */
    position: relative;
    min-width: 180px;
    display: inline-block;
    margin-bottom: 20px !important;
}

#sb_service_step_container .service-item .bar-service div.time::after {
    content: "Select the Nº of People Before Moving On:";
    visibility: visible;
    position: absolute;
    left: 0px;
    top: 0;
    color: #383D40;
    font-size: 1rem;
}

/* Default: no wrapping when no badge is present */
.bar-service .d-flex .time {
  white-space: nowrap;
}

/* Apply normal wrapping when badge is present */
.bar-service .d-flex:has(.badge) .time {
  white-space: normal;
}

/*--- EXCLUDED SERVICES: HIDE TIME AND CENTER PRICE ---*/
/* Hide the time element for excluded services */
.service-item:has(.excerpt-info span[data-target="#service164"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service5"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service135"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service140"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service141"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service48"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service139"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service138"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service148"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service149"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service147"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service146"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service52"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service49"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service184"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service125"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service126"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service41"]) .bar-service div.time,
.service-item:has(.excerpt-info span[data-target="#service43"]) .bar-service div.time {
    display: none !important;
}

/* Center the price for excluded services */
.service-item:has(.excerpt-info span[data-target="#service164"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service5"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service135"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service140"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service141"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service41"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service48"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service139"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service138"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service148"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service149"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service147"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service146"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service41"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service126"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service52"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service49"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service184"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service125"]) .bar-service .d-flex,
.service-item:has(.excerpt-info span[data-target="#service43"]) .bar-service .d-flex {
    justify-content: center !important;
    width: 100% !important;
    text-align: center !important;
}

/* Additional style to ensure price is centered */
.service-item:has(.excerpt-info span[data-target="#service164"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service5"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service135"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service140"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service141"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service41"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service48"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service139"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service138"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service148"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service149"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service147"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service146"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service126"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service52"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service49"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service184"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service125"]) .bar-service .price,
.service-item:has(.excerpt-info span[data-target="#service43"]) .bar-service .price {
    text-align: center !important;
    margin: 0 auto !important;
    display: block !important;
    float: none !important;
}
/*--Hide Group Booking Options---*/
.excerpt-info:has(span[data-target="#service5"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service135"]) .sb_group_booking_count {
    display: none !important;

}
.excerpt-info:has(span[data-target="#service140"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service141"]) .sb_group_booking_count {
    display: none !important;

}
.excerpt-info:has(span[data-target="#service139"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service138"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service148"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service48"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service149"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service147"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service146"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service126"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service41"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service43"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service164"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service52"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service49"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service184"]) .sb_group_booking_count {
    display: none !important;
}
.excerpt-info:has(span[data-target="#service125"]) .sb_group_booking_count {
    display: none !important;
}

/*--- DYNAMIC INTAKE FORM FIELDS BASED ON GROUP NUMBER SELECTED ---*/

/* When data-count = 1, hide form fields 2-10 */
[data-count="1"] .form-group[data-field="e3deaab98024bad9a4a1614cead26ecb"],
[data-count="1"] .form-group[data-field="0717c5395dc4a7510dbf41e0fad7e901"],
[data-count="1"] .form-group[data-field="bab98311fc5c3f1e22109242b065c875"],
[data-count="1"] .form-group[data-field="b4e6cadb2e627c47dccfd8901adaa361"],
[data-count="1"] .form-group[data-field="160ebc8d1588d5c1636d62184020e94c"],
[data-count="1"] .form-group[data-field="335b36b1a0df09396aadb1a2e6d51130"],
[data-count="1"] .form-group[data-field="192fa09d2d870bcd4696807a12e402c0"],
[data-count="1"] .form-group[data-field="78139ba62bcd4ad614703f598e64100a"],
[data-count="1"] .form-group[data-field="b3f954d43f9434767c0323f3ac322dd8"],
[data-count="1"] .form-group[data-field="89c5d284ece862ebb693f2931c9e40ab"],
[data-count="1"] .form-group[data-field="bc291e2ed639f8e774f11409e16801d1"],
[data-count="1"] .form-group[data-field="cfb2657b9a36d0b161ca47418e558298"],
[data-count="1"] .form-group[data-field="5395e188f87647190f7a7813c47372c9"],
[data-count="1"] .form-group[data-field="acc58e04f172a6e0895dff763f7c8a1c"],
[data-count="1"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="1"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="1"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="1"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 2, hide form fields 3-10 */
[data-count="2"] .form-group[data-field="bab98311fc5c3f1e22109242b065c875"],
[data-count="2"] .form-group[data-field="b4e6cadb2e627c47dccfd8901adaa361"],
[data-count="2"] .form-group[data-field="160ebc8d1588d5c1636d62184020e94c"],
[data-count="2"] .form-group[data-field="335b36b1a0df09396aadb1a2e6d51130"],
[data-count="2"] .form-group[data-field="192fa09d2d870bcd4696807a12e402c0"],
[data-count="2"] .form-group[data-field="78139ba62bcd4ad614703f598e64100a"],
[data-count="2"] .form-group[data-field="b3f954d43f9434767c0323f3ac322dd8"],
[data-count="2"] .form-group[data-field="89c5d284ece862ebb693f2931c9e40ab"],
[data-count="2"] .form-group[data-field="bc291e2ed639f8e774f11409e16801d1"],
[data-count="2"] .form-group[data-field="cfb2657b9a36d0b161ca47418e558298"],
[data-count="2"] .form-group[data-field="5395e188f87647190f7a7813c47372c9"],
[data-count="2"] .form-group[data-field="acc58e04f172a6e0895dff763f7c8a1c"],
[data-count="2"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="2"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="2"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="2"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 3, hide form fields 4-10 */
[data-count="3"] .form-group[data-field="160ebc8d1588d5c1636d62184020e94c"],
[data-count="3"] .form-group[data-field="335b36b1a0df09396aadb1a2e6d51130"],
[data-count="3"] .form-group[data-field="192fa09d2d870bcd4696807a12e402c0"],
[data-count="3"] .form-group[data-field="78139ba62bcd4ad614703f598e64100a"],
[data-count="3"] .form-group[data-field="b3f954d43f9434767c0323f3ac322dd8"],
[data-count="3"] .form-group[data-field="89c5d284ece862ebb693f2931c9e40ab"],
[data-count="3"] .form-group[data-field="bc291e2ed639f8e774f11409e16801d1"],
[data-count="3"] .form-group[data-field="cfb2657b9a36d0b161ca47418e558298"],
[data-count="3"] .form-group[data-field="5395e188f87647190f7a7813c47372c9"],
[data-count="3"] .form-group[data-field="acc58e04f172a6e0895dff763f7c8a1c"],
[data-count="3"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="3"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="3"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="3"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 4, hide form fields 5-10 */
[data-count="4"] .form-group[data-field="192fa09d2d870bcd4696807a12e402c0"],
[data-count="4"] .form-group[data-field="78139ba62bcd4ad614703f598e64100a"],
[data-count="4"] .form-group[data-field="b3f954d43f9434767c0323f3ac322dd8"],
[data-count="4"] .form-group[data-field="89c5d284ece862ebb693f2931c9e40ab"],
[data-count="4"] .form-group[data-field="bc291e2ed639f8e774f11409e16801d1"],
[data-count="4"] .form-group[data-field="cfb2657b9a36d0b161ca47418e558298"],
[data-count="4"] .form-group[data-field="5395e188f87647190f7a7813c47372c9"],
[data-count="4"] .form-group[data-field="acc58e04f172a6e0895dff763f7c8a1c"],
[data-count="4"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="4"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="4"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="4"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 5, hide form fields 6-10 */
[data-count="5"] .form-group[data-field="b3f954d43f9434767c0323f3ac322dd8"],
[data-count="5"] .form-group[data-field="89c5d284ece862ebb693f2931c9e40ab"],
[data-count="5"] .form-group[data-field="bc291e2ed639f8e774f11409e16801d1"],
[data-count="5"] .form-group[data-field="cfb2657b9a36d0b161ca47418e558298"],
[data-count="5"] .form-group[data-field="5395e188f87647190f7a7813c47372c9"],
[data-count="5"] .form-group[data-field="acc58e04f172a6e0895dff763f7c8a1c"],
[data-count="5"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="5"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="5"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="5"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 6, hide form fields 7-10 */
[data-count="6"] .form-group[data-field="bc291e2ed639f8e774f11409e16801d1"],
[data-count="6"] .form-group[data-field="cfb2657b9a36d0b161ca47418e558298"],
[data-count="6"] .form-group[data-field="5395e188f87647190f7a7813c47372c9"],
[data-count="6"] .form-group[data-field="acc58e04f172a6e0895dff763f7c8a1c"],
[data-count="6"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="6"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="6"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="6"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 7, hide form fields 8-10 */
[data-count="7"] .form-group[data-field="5395e188f87647190f7a7813c47372c9"],
[data-count="7"] .form-group[data-field="acc58e04f172a6e0895dff763f7c8a1c"],
[data-count="7"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="7"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="7"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="7"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 8, hide form fields 9-10 */
[data-count="8"] .form-group[data-field="ce4c49028db00ac36a0be1c27c692844"],
[data-count="8"] .form-group[data-field="214036471d7b21ee811ca71946735975"],
[data-count="8"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="8"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/* When data-count = 9, hide form fields 10 */
[data-count="9"] .form-group[data-field="c765eaebc091bee199a1a98df5469891"],
[data-count="9"] .form-group[data-field="51e4497daf87a6300eb09dce83ca564c"] {
  display: none !important;
}

/*---PUT THE 'NEXT STEPS' CODE HERE---*/

/*---PUT THE 'NEXT STEPS' CODE HERE---*/

/*---- ON REQUEST/PRIVATES 'NEXT STEPS' AND ASSOCIATED CHANGES---*/


/* Show only first time slot */
[data-service_id="5"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="135"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="52"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="49"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="184"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="43"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="126"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="125"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="41"] #sb_time_slots_container .slot:not(:first-child),
[data-service_id="164"] #sb_time_slots_container .slot:not(:first-child) {
  display: none !important;
}

/* Update text above slots */
[data-service_id="5"] .container-caption,
[data-service_id="135"] .container-caption,
[data-service_id="52"] .container-caption,
[data-service_id="49"] .container-caption,
[data-service_id="184"] .container-caption,
[data-service_id="43"] .container-caption,
[data-service_id="126"] .container-caption,
[data-service_id="125"] .container-caption,
[data-service_id="41"] .container-caption,
[data-service_id="164"] .container-caption {
  font-size: 0;
  visibility: hidden;
}

[data-service_id="5"] .container-caption:before,
[data-service_id="135"] .container-caption:before,
[data-service_id="52"] .container-caption:before,
[data-service_id="49"] .container-caption:before,
[data-service_id="184"] .container-caption:before,
[data-service_id="43"] .container-caption:before,
[data-service_id="126"] .container-caption:before,
[data-service_id="125"] .container-caption:before,
[data-service_id="41"] .container-caption:before,
[data-service_id="164"] .container-caption:before {
  content: "Select your preferred date above";
  visibility: visible;
  font-size: 24px !important;
}

/* Hide free/available slots + legend for services*/
[data-service_id="5"] .slot--available-slot,
[data-service_id="135"] .slot--available-slot,
[data-service_id="52"] .slot--available-slot,
[data-service_id="49"] .slot--available-slot,
[data-service_id="184"] .slot--available-slot,
[data-service_id="43"] .slot--available-slot,
[data-service_id="126"] .slot--available-slot,
[data-service_id="125"] .slot--available-slot,
[data-service_id="41"] .slot--available-slot,
[data-service_id="164"] .slot--available-slot {
  display: none !important;
}

[data-service_id="5"] .time-legend,
[data-service_id="135"] .time-legend,
[data-service_id="52"] .time-legend,
[data-service_id="49"] .time-legend,
[data-service_id="184"] .time-legend,
[data-service_id="43"] .time-legend,
[data-service_id="126"] .time-legend,
[data-service_id="125"] .time-legend,
[data-service_id="41"] .time-legend,
[data-service_id="164"] .time-legend {
  display: none !important;
}

/* Change time to "Next Steps" */

[data-service_id="5"] a.sb-cell.free.has-available-slot,
[data-service_id="135"] a.sb-cell.free.has-available-slot,
[data-service_id="52"] a.sb-cell.free.has-available-slot,
[data-service_id="49"] a.sb-cell.free.has-available-slot,
[data-service_id="184"] a.sb-cell.free.has-available-slot,
[data-service_id="43"] a.sb-cell.free.has-available-slot,
[data-service_id="126"] a.sb-cell.free.has-available-slot,
[data-service_id="125"] a.sb-cell.free.has-available-slot,
[data-service_id="41"] a.sb-cell.free.has-available-slot,
[data-service_id="164"] a.sb-cell.free.has-available-slot {
  font-size: 0;
  text-align: center;
}
/* Hide the end time */
[data-service_id="5"] .end-time,
[data-service_id="135"] .end-time,
[data-service_id="52"] .end-time,
[data-service_id="49"] .end-time,
[data-service_id="184"] .end-time,
[data-service_id="43"] .end-time,
[data-service_id="126"] .end-time,
[data-service_id="125"] .end-time,
[data-service_id="41"] .end-time,
[data-service_id="164"] .end-time {
  display: none !important;
}
/* Display "Next Step" instead */

[data-service_id="5"] a.sb-cell.has-available-slot:after,
[data-service_id="135"] a.sb-cell.has-available-slot:after,
[data-service_id="52"] a.sb-cell.has-available-slot:after,
[data-service_id="49"] a.sb-cell.has-available-slot:after,
[data-service_id="184"] a.sb-cell.has-available-slot:after,
[data-service_id="43"] a.sb-cell.has-available-slot:after,
[data-service_id="126"] a.sb-cell.has-available-slot:after,
[data-service_id="125"] a.sb-cell.has-available-slot:after,
[data-service_id="41"] a.sb-cell.has-available-slot:after,
[data-service_id="164"] a.sb-cell.has-available-slot:after {
  content: "Next\A Step" !important;
  font-size: 16px !important;
  display: inline-block !important;
  white-space: pre !important;
  text-align: center !important;
  width: 100% !important;
  padding-top: 15px !important;
  padding-bottom: 0 !important;
  line-height: 1.2 !important;
}

/* Add "(TBC)" after date line caption */

[data-service_id="5"] .date-line--caption:after,
[data-service_id="135"] .date-line--caption:after,
[data-service_id="52"] .date-line--caption:after,
[data-service_id="49"] .date-line--caption:after,
[data-service_id="184"] .date-line--caption:after,
[data-service_id="43"] .date-line--caption:after,
[data-service_id="126"] .date-line--caption:after,
[data-service_id="125"] .date-line--caption:after,
[data-service_id="41"] .date-line--caption:after,
[data-service_id="164"] .date-line--caption:after {
  content: " (TBC)";
  display: inline;
}


/*--- Hide Service Slots Available + time legend (available/free) for Private/On Request---*/

[data-service_id="140"] .slot--available-slot,
[data-service_id="141"] .slot--available-slot,
[data-service_id="149"] .slot--available-slot,
[data-service_id="147"] .slot--available-slot,
[data-service_id="148"] .slot--available-slot,
[data-service_id="139"] .slot--available-slot,
[data-service_id="138"] .slot--available-slot,
[data-service_id="5"] .slot--available-slot,
[data-service_id="135"] .slot--available-slot,
[data-service_id="43"] .slot--available-slot,
[data-service_id="52"] .slot--available-slot,
[data-service_id="49"] .slot--available-slot,
[data-service_id="184"] .slot--available-slot,
[data-service_id="125"] .slot--available-slot,
[data-service_id="126"] .slot--available-slot,
[data-service_id="74"] .slot--available-slot,
[data-service_id="75"] .slot--available-slot,
[data-service_id="48"] .slot--available-slot,
[data-service_id="99"] .slot--available-slot,
[data-service_id="100"] .slot--available-slot,
[data-service_id="102"] .slot--available-slot,
[data-service_id="103"] .slot--available-slot,
[data-service_id="107"] .slot--available-slot,
[data-service_id="146"] .slot--available-slot {
  display: none !important;
}


[data-service_id="140"] .time-legend,
[data-service_id="141"] .time-legend,
[data-service_id="149"] .time-legend,
[data-service_id="147"] .time-legend,
[data-service_id="148"] .time-legend,
[data-service_id="139"] .time-legend,
[data-service_id="138"] .time-legend,
[data-service_id="74"] .time-legend,
[data-service_id="75"] .time-legend,
[data-service_id="48"] .time-legend,
[data-service_id="99"] .time-legend,
[data-service_id="100"] .time-legend,
[data-service_id="102"] .time-legend,
[data-service_id="103"] .time-legend,
[data-service_id="107"] .time-legend,
[data-service_id="146"] .time-legend {
  display: none !important;
}




/* --- Profile Button Adjustments --- */
.bar-with-btn {
  text-align: left;
}

.bar-with-btn .btn {
  width: auto;
  min-width: fit-content;
  text-align: left !important;
  justify-content: flex-start !important;
}

.bar-with-btn .sb-client-info-popup {
  text-align: left !important;
}

/* Specific profile dropdown buttons */
.bar-with-btn .sb-client-info-popup.btn.profile.btn-primary,
.bar-with-btn #sb_sign_out_btn.popup-hide.btn {
  width: auto;
  min-width: fit-content;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  justify-content: flex-start !important;
}
/* --- Landing Page: Hiding Book + Map buttons --- */
div.btn.book.btn-with-icon.custom.animated.zoomIn,
a[href="#book"],
a[title="Book Now"],
.btn.book {
  display: none !important;
  background-color: transparent !important;
  color: transparent !important;
  border-color: transparent !important;
  text-shadow: none !important;
  box-shadow: none !important;
  opacity: 0 !important;
}

div.btn.book.btn-with-icon.custom.animated.zoomIn {
  display: none !important;
}

div.btn.map.btn-with-image.custom.animated.zoomIn {
  display: none !important; /* Completely hide the element */
}



/* --- Landing Page: Hiding Company Name + Adding Custom Text --- */
div.company-name.animated.company-logo-and-name {
  position: relative;
  text-shadow: 0 0 0 transparent !important;
  -webkit-text-stroke: 0 transparent !important;
  color: transparent !important;
  visibility: hidden;
  height: auto;
  width: 100%;
}

/* New text overlay */
div.company-name.animated.company-logo-and-name::after {
  content: 'Welcome!\A A world of action awaits you.';
  white-space: pre-wrap !important;
  visibility: visible;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  color: white;
  text-shadow: none;
  -webkit-text-stroke: 0;
  animation: slideInLeft 1s ease forwards;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  white-space: inherit;
}

/* ---- Landing Page: Adding Down Arrow --- */
div.bar {
  text-align: left !important;
  position: relative !important;
}

div.bar::after {
  content: "↓";
  font-size: 3rem;
  color: white;
  position: absolute;
  left: 0 !important;
  top: 100% !important;
  padding-top: 1.5rem !important;
  animation: bounce 2s infinite;
  z-index: 1000 !important;
}

/*--- Landing Page Custom Menu Cards above Calendar ---*/
.custom-menu-cards {
  width: 100%;
  max-width: 1200px;
  margin: 0;
}

.custom-menu-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
}

.custom-menu-card {
  position: relative;
  height: 20rem;
  overflow: hidden;
}

.custom-menu-card-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}

.custom-menu-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  transition: background-color 0.3s;
}

.custom-menu-card:hover .custom-menu-overlay {
  background-color: rgba(0, 0, 0, 0.4);
}

.custom-menu-content {
  position: absolute;
  inset: 0;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.custom-menu-text {
  max-width: 60%;
  margin-bottom: 1.5rem;
}

.custom-menu-content h2 {
  color: white;
  margin-bottom: 0.75rem;
  font-weight: 400;
}

.custom-menu-content p {
  color: white;
  font-weight: 200;
  font-size: 1rem;
  opacity: 0.9;
  margin-bottom: 1rem;
}

.custom-menu-button {
  display: inline-block;
  padding: 0.5rem 1.5rem;
  border: 2px solid white;
  color: white;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s;
  min-width: 160px;
  max-width: 200px;
}

.custom-menu-button:hover {
  background-color: white;
  color: black;
}
.custom-menu-button {
  display: inline-block;
  padding: 0.5rem 1.5rem;
  border: 2px solid white;
  color: white !important;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s;
  min-width: 160px;
  max-width: 200px;
}

.custom-menu-button:hover,
.custom-menu-button:active,
.custom-menu-button:focus {
  background-color: white;
  color: black !important;
  text-decoration: none;
}

@media (max-width: 767px) {
  .custom-menu-grid {
    grid-template-columns: 1fr;
  }
  
  .custom-menu-card {
    height: 16rem;
  }
  
  .custom-menu-text {
    max-width: 90%;
  }
}
/* --- Specifically hide the arrow in the login form --- */
#sb_login_form div.bar::after {
  display: none !important;
}

/* ---- Landing Page: Hide 'Schedule' + 'Contacts' Sections ---- */
section#schedule.section,
section#contacts.section {
  display: none !important;
}

/* ---- Landing Page > About Us: Move Section Up --- */
.index-data-wrapper {
  padding-top: 2rem !important;
}

.index-data-wrapper .container-fluid.column {
  padding-top: 1rem !important; 
}

.index-data-wrapper .section-pd {
  padding-top: 1rem !important; 
}

/* --- Landing Page > About Us: Hide 'About Us' title --- */
#about-us .title-main {
  display: none;
}


/*----- MOBILE HAMBURGER MENU ----*/

#header .nav-trigger {
    background: white !important;
    background-color: white !important;
    width: 50px;
    height: 50px;
    border-radius: 3px;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

/* Icon styles */
#header .nav-trigger i,
#header .nav-trigger .fa,
#header .nav-trigger .fa-bars,
#header .nav-trigger svg,
#header .nav-trigger svg *,
#header .nav-trigger [class*="fa-"] {
    color: #8F8078 !important;
    fill: #8F8078 !important;
    stroke: #8F8078 !important;
    font-size: 24px !important;
    opacity: 1 !important;
    display: block !important;
    visibility: visible !important;
}

/* Reduce spacing between icons and hamburger */
#header .header-controls {
    gap: 0 !important;  
    padding: 0 !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
}


/* Maintain nav trigger styling */
#header .nav-trigger {
    background: white !important;
    background-color: white !important;
    width: 50px;
    height: 50px;
    border-radius: 3px;
    align-items: center;
    justify-content: center;
}

/*----- Remove Timezone ----*/
#sb_booking_company_time {
    display: none;
}

/*--- Remove Subscribe to Newsletter ---*/
#main #client-login .custom-form #sb_terms_and_conditions .promotions-letter-flag label[role=button]{ 
    display: none; 
}

/*--- Read More Background Color ---*/
.tab.tab-col .full-info,
.tab.tab-col.get-gdpr-info-modal .full-info {
  background: #F5F5F5 !important;
}

/* Close Button Visible */
.tab.tab-col .full-info .close-full-info,
.tab.tab-col.get-gdpr-info-modal .full-info .close-full-info {
   background-color: #fff !important;
}

/*--- My Profile Close Button ---*/
span.close-modal {
 display: block !important;
 background-color: #E8DCD0;
 padding: 8px;
}

div#sb_profile_form,
div.modal-content,
div.section-pd,
div.modal-dialog {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

#client-profile-preview {
  background: white !important;
  width: 100% !important;
}
/*----- Remove Timezone ----*/
#sb_booking_company_time {
    display: none;
}

/*--- Remove Subscribe to Newsletter ---*/
#main #client-login .custom-form #sb_terms_and_conditions .promotions-letter-flag label[role=button]{ 
    display: none; 
}

/*--- Read More Background Color ---*/
.tab.tab-col .full-info,
.tab.tab-col.get-gdpr-info-modal .full-info {
  background: #F5F5F5 !important;
}

/* Close Button Visible */
.tab.tab-col .full-info .close-full-info,
.tab.tab-col.get-gdpr-info-modal .full-info .close-full-info {
   background-color: #fff !important;
}

/*--- My Profile Close Button ---*/
span.close-modal {
 display: block !important;
 background-color: #E8DCD0;
 padding: 8px;
}

div#sb_profile_form,
div.modal-content,
div.section-pd,
div.modal-dialog {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

#client-profile-preview {
  background: white !important;
  width: 100% !important;
}

/*--- Product Badge Price Color ---*/
.product-item.item.v3 .badge {
  color: #fff !important;
}

/*--- Confirmed Bookings Backgrounds ---*/

/* Confirmed bookings background */
.booking-item.booking-confirmed .section-pd {
    background-color: #F5F5F5 !important;
}

#main #main-content #sb_content #booking-result-view #sb_bookings_list .booking-item .booking-status {
    top: 35px;
    display: none !important;
}

#main #main-content #sb_content #booking-result-view #sb_bookings_list .booking-item.booking-cancelled .booking-status.cancelled {
    display: flex !important;
}

.booking-info--item.booking-info--item_status {
	display: none;
}


/* Success popup modal backgrounds */
#booking-result-popup .modal-dialog.subscribe-component--popup,
#booking-result-popup .modal-content,
#booking-result-popup .tab-pd.subscribe-component--modal-content,
#booking-result-popup .modal-header {
  background: white !important;
}

/* Profile edit modal backgrounds */
#client-profile-edit.section .tab-pd,
#client-profile-edit.section .modal-content,
#client-profile-edit.section .form-horizontal.custom-form {
  background: white !important;
}

/* Modal header specific styling */
.modal-dialog.subscribe-component--popup .modal-header,
div.modal-header {
  background: white !important;
}

/*--T&C background---*/
div#sb_profile_form, div.modal-content, div.section-pd, div.modal-dialog {
    background: #FFFFFF !important;
}
div.tab-pd.license--content > div.container {
  width: auto !important;
  max-width: 100% !important;
}
/* Modal Base Styles */
.modal-dialog.license--modal {
  max-width: 600px;
  margin: 0 auto;
}

.modal-content {
  border: 0;
  box-shadow: 0 0 3px 0 rgba(0,0,0,.25);
}

/* Content Styles */
.modal-header {
  padding: 15px;
  text-align: center;
  border-bottom: 1px solid #dee2e6;
}

.modal-body {
  font-size: 16px;
  overflow-y: auto;
  max-height: 70vh;
}

.tab-pd.license--content {
  padding: 40px;
}

.tab-pd.license--content p {
  margin-bottom: 15px;
  line-height: 1.5;
}

/*--- Adjusting activity datepicker calendar opacity to make white arrows more visible (arrows are images)---*/
#sb_dateview_container {
  background-color: #D1D1D1 !important;  
}

/* =================================================
   CUSTOM SECTIONS AND PAGES
   ================================================= */

/* ---- About Us (Weekly Calendar) ---- */
div.index-data-wrapper div.row.row-eq-height-xs.default.row-mg .col-sm-4 {
  width: 100% !important;
  flex: 0 0 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

section#about-us.section,
section#about-us.section .container,
section#about-us.section .container-fluid {
  padding: 0 !important;
  margin: 0 !important;
}

#main #main-content #sb_content .index-data-wrapper .section {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
/* ---- OVERVIEW CALENDAR ---- */
.custom_overview_calendar {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem;
}

.custom_overview_calendar-title {
  text-align: center;
  color: #383D40;
  margin-bottom: 1rem;
  margin-top: 3rem;
  font-size: 2rem;
}

.custom_overview_calendar-subtitle {
  text-align: center;
  color: #383D40;
  margin-bottom: 2rem;
  font-size: 1rem;
}

.custom_overview_calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 2px;
  padding: 0;
  margin-bottom: 3rem;
  width: 100%;
}

.custom_overview_calendar-column {
  padding: 0;
  width: 100%;
  min-width: 0;
}

.custom_overview_calendar-day {
  padding: 1rem;
  text-align: center;
  font-weight: 600;
  background: #8B8795;
  color: white;
}

.custom_overview_calendar-items {
  padding: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.custom-activity-link {
  display: block;
  text-decoration: none;
  width: 100%;
}

.custom_overview_calendar-item {
  position: relative;
  padding: 8px 12px;
  min-height: 52px;
  font-size: 0.9rem;
  text-align: left;
  display: block;
  border-bottom: 1px solid #FFF;
  width: 100%;
  box-sizing: border-box;
}

.custom_overview_calendar-item::after {
  content: ">";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(0, 0, 0, 0.3);
  pointer-events: none;
}

.custom_overview_calendar-items a:last-child .custom_overview_calendar-item,
.custom_overview_calendar-item:last-child {
  border-bottom: none;
}

.custom_overview_calendar-time {
  display: block;
  margin-top: 2px;
  font-size: 0.8rem;
  color: #888888;
  font-weight: 300;
}

.custom_overview_calendar-item-subtitle {
  font-size: 0.8em;
  color: inherit;
  margin: 2px 0;
  text-align: left;
  font-style: normal;
}

/* Color variations */
.custom_overview_calendar-item--color1 { background: #D8D9E2; }
.custom_overview_calendar-item--color2 { background: #E6EAE5; }
.custom_overview_calendar-item--color3 { background: #F3EDE7; }
.custom_overview_calendar-item--color4 { background: #FAF9EE; }
.custom_overview_calendar-item--color5 { background: #E5DED8; }
.custom_overview_calendar-item--color6 { background: #FCE1DB; }

.custom_overview_calendar-button-container {
  text-align: center;
  margin-top: 3rem;
}/* ---- CUSTOM TAGS FOR SERVICES ---- */
.custom-tag {
  display: inline-block;
  padding: 4px 16px;
  border-radius: 999px;
  font-size: 14px;
  margin-bottom: 12px;
  margin-right: 4px;

}

.custom-tag.free {
  background-color: #98AB8E;
  color: white;
}

.custom-tag.on-request {
  background-color: #5370AB;
  color: white;
}

.custom-tag.ages-13 {
  background-color: #6E8289;
  color: white;
}

.custom-tag-6-12-y-o {
  background-color: #6E8289;
  color: white;
}

.custom-tag.kids {
  background-color: #F59981;
  color: white;
}

.custom-tag.custom-tag-3-5 {
  background-color: #AB8B75;
  color: white;
}

.custom-tag.couples {
  background-color: #917BB3;
  color: white;
}

.custom-tag.adults {
  background-color: #665B69;
  color: white;
}

.custom-tag.wellness {
  background-color: #C2E5F8;
  color: black;
}

.custom-tag.family {
  background-color: #EADFD4;
  color: black;
}

.custom-tag.friends {
  background-color: #FEFCCB;
  color: black;
}

/*----REDUCED LINE HEIGHT TO SOLVE PARTIALLY HIDDEN TAG ON 2ND LINE AFTER SERVICE SELECTION-------*/
.timeline-sidebar .service-item .content .txt.short,
.timeline-sidebar .service-item .content .txt_short {
  line-height: 1 !important;
}
.cap.full {
  margin-bottom: 10px !important;
}
.service-step.step-content .service-item div[class*="content"] .txt.short {
 line-height: 1.2 !important;
}

/* Fix for timeline navigation text */
.step_info_item,
.step-info_item,
div[class*="title-sub"],
.title-sub {
  line-height: 1.4 !important;
  min-height: 2em !important;
  padding: 2px 0 !important;
}

/* Ensure proper spacing for navigation items */
.steps-nav .step_info_item,
.steps-nav li,
.steps-nav .title-sub {
  margin-bottom: 2px !important;
}

/* Additional padding for containers to prevent text cutoff */
.booking-info ul,
.steps-nav {
  padding: 2px 0 !important;
}

/* ---- CUSTOM AROUND HERE PAGE ---- */
.custom-around-here {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem 1rem;
}

.custom-around-here__header {
  text-align: center;
  margin-bottom: 3rem;
}

.arh_page_title {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  margin: 40px 0;
  color: #383D40;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.arh_page_description {
  text-align: center;
  font-size: 18px;
  color: #383D40;
  max-width: 800px;
  margin: 0 auto 40px auto;
  line-height: 1.6;
}

.custom-around-here__cards {
  display: grid;
  gap: 2rem;
}

.custom-around-here__card {
  background: #F2F2F2;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  overflow: hidden;
}

.custom-around-here__card-image {
  width: 100%;
  height: 300px;
  object-fit: cover;
  display: block;
  grid-row: 1;
}

.custom-around-here__card-content {
  padding: 2rem;
  grid-row: 2;
}

.custom-around-here__card-title {
  font-size: 1.5rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 1.5rem;
}

.custom-around-here__amenities {
  display: grid;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}

.custom-around-here__amenity {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.custom-around-here__icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.custom-around-here__amenity-label {
  font-size: 0.9rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 0.25rem;
}

.custom-around-here__amenity-description {
  font-size: 0.9rem;
  color: #666;
  line-height: 1.6;
}

.custom-around-here__card-description {
  margin-bottom: 1.5rem;
  color: #333;
  line-height: 1.6;
  font-size: 0.95rem;
}

.custom-around-here__hours {
  margin-bottom: 1.5rem;
}

.custom-around-here__hours-title {
  font-size: 0.9rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 0.5rem;
}

.custom-around-here__hours-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.custom-around-here__hours-list li {
  font-size: 0.9rem;
  color: #333;
  margin-bottom: 0.5rem;
  line-height: 1.6;
}

.custom-around-here__contact {
  margin-bottom: 1.5rem;
}

.custom-around-here__contact p {
  margin: 0 0 0.5rem;
  font-size: 0.9rem;
  color: #333;
}

.custom-around-here__book-button {
  display: inline-block;
  padding: 0.75rem 2rem;
  background-color: transparent;
  color: #333;
  text-decoration: none;
  font-size: 0.9rem;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
  border: 2px solid #333;
}

.custom-around-here__book-button:hover,
.custom-around-here__book-button:focus {
  background-color: #E8DCD0 !important;
  border-color: #E8DCD0 !important;
  color: #333;
  text-decoration: none;
}


/* --- Eat & Drink --- */
.custom-eat-and-drink {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem 0.5rem;
  box-sizing: border-box;
}

.custom-eat-and-drink__header {
  padding-top: 1rem;  
  text-align: center;
  margin-bottom: 3rem;
}

.custom-eat-and-drink__title {
  font-size: 2.5rem;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1rem;
  color: #383D40;
}

.custom-eat-and-drink__description {
  font-size: 1.1rem;
  color: #383D40;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.6;
}

.custom-eat-and-drink__cards {
  display: grid;
  gap: 2rem;
}

.custom-eat-and-drink__card {
  background: #F2F2F2;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  width: 100%;
  max-width: 100%;
}

.custom-eat-and-drink__card-image {
  width: 100%;
  height: 300px;
  object-fit: cover;
  display: block;
  order: 1;
}

.custom-eat-and-drink__card-content {
  padding: 2rem;
  order: 2;
  width: 100%;
  max-width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.custom-eat-and-drink__card-title {
  font-size: 1.5rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 1.5rem;
}

.custom-eat-and-drink__amenities {
  display: grid;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
  grid-template-columns: 1fr;
}

.custom-eat-and-drink__amenity {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.custom-eat-and-drink__icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.custom-eat-and-drink__amenity-label {
  font-size: 0.9rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 0.25rem;
}

.custom-eat-and-drink__amenity-description {
  font-size: 0.9rem;
  color: #666;
  line-height: 1.6;
}

.custom-eat-and-drink__amenity-menu {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.custom-eat-and-drink__menu-link {
  color: #666;
  font-size: 0.9rem;
  text-decoration: none;
  transition: color 0.3s ease;
  line-height: 1.6;
}

.custom-eat-and-drink__menu-link:hover {
  color: #333;
}

.custom-eat-and-drink__card-description {
  margin-bottom: 1.5rem;
  color: #333;
  line-height: 1.6;
  font-size: 0.95rem;
}

.custom-eat-and-drink__contact {
  margin-bottom: 1.5rem;
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: break-word;
}

.custom-eat-and-drink__contact p {
  margin: 0 0 0.5rem;
  font-size: 0.9rem;
  color: #333;
}

.custom-eat-and-drink__book-button {
  display: inline-block;
  padding: 0.75rem 2rem;
  background-color: transparent;
  color: #333;
  text-decoration: none;
  font-size: 0.9rem;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
  border: 2px solid #333;
  margin-bottom: 2rem;
}

.custom-eat-and-drink__casual-text {
  font-size: 1.5rem;
  font-weight: 300;
  margin-top: 1rem;
  color: inherit;
}



/* ----- SPA PAGE ---- */
.custom-spa {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem;
  line-height: 1.6;
  color: #333;
}

.custom-spa .custom-spa__header {
  text-align: center;
  margin-bottom: 1.5rem;
}

.custom-spa .custom-spa__title {
  font-size: 2.5rem;
  margin-bottom: 1rem;
  color: #383D40;
}

.custom-spa .custom-spa__description {
  font-size: 1.1rem;
  color: #383D40;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.6;
}

.custom-spa .custom-spa__treatments-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem;
  margin-bottom: 3rem 0;
}

.custom-spa .custom-spa__treatment-card {
  text-align: center;
}

.custom-spa .custom-spa__image {
  width: 100%;
  height: 300px;
  object-fit: cover;
  margin-bottom: 1rem;
}

.custom-spa .custom-spa__card-title {
  font-size: 1.3rem;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.custom-spa .custom-spa__card-text {
  color: #666;
  line-height: 1.5;
  padding: 0 1rem;
}

.custom-spa .custom-spa__info {
  text-align: center;
  max-width: 800px;
  margin: 1.5rem auto;
  padding: 0.5rem 1rem;
}

.custom-spa .custom-spa__info-title {
  margin-bottom: 1rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.custom-spa .custom-spa__info-text {
  margin-bottom: 1rem;
}

.custom-spa .custom-spa__contact {
  margin: 1rem 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.custom-spa .custom-spa__contact-link {
  color: #333;
  text-decoration: none;
}

.custom-spa .custom-spa__highlight {
  font-weight: normal;
  color: #000;
  margin-top: 1rem;
  margin-bottom: 2.5rem;
}

.custom-spa .custom-spa__highlight-link {
  color: inherit;
  text-decoration: underline;
}
/* Ensure proper spacing with language toggle */
.language-toggle-container .custom-spa {
    padding-top: 2rem;
}

/* Maintain visibility states for language content */
#lang-en:checked ~ .language-content.en .custom-spa,
#lang-pt:checked ~ .language-content.pt .custom-spa {
    display: block;
}

/* Adjust spacing for language switcher */
.language-toggle-container .custom-spa__header {
    padding-top: 1rem;
}


/*--- FAQ card styles ---*/
/* FAQ Styles */
.custom-faq {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem 1rem;
}

.custom-faq__header {
  text-align: center;
  margin-bottom: 3rem;
}

.custom-faq__title {
  font-family: var(--title-font);
  font-weight: 700;
  font-size: 5rem;
  letter-spacing: 0.05em;
  line-height: 1.1;
  margin-bottom: 1rem;
  color: #383D40;
}

.custom-faq__description {
  font-size: 1.1rem;
  color: #383D40;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.6;
}

.custom-faq__questions {
  display: grid;
  gap: 0;
  padding: 0.5rem;
}

.custom-faq__question {
  background: #F2F2F2;
  padding: 2rem;
  margin-bottom: 1.5rem;
}

.custom-faq__question-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.custom-faq__icon-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

.custom-faq__icon {
  width: 24px;
  height: 24px;
  border: 1.5px solid #333;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: #333;
}

.custom-faq__question-title {
  font-size: 1.2rem;
  font-weight: 600;
  color: #333;
  margin: 0;
}

/* FAQ Answer Content Styles */
.custom-faq__answer,
.custom-faq__question div > .custom-faq__answer {
    color: #666 !important;
    line-height: 1.6;
    padding-left: calc(24px + 1rem) !important;
}
/* Adjust list alignment when it follows a paragraph in FAQ answer */
.custom-faq__answer + ol,
.custom-faq__answer + ul,
.custom-faq__answer ~ ol,
.custom-faq__answer ~ ul {
    margin: 1rem 0 !important;
    color: #666 !important;
    padding-left: calc(24px + 1rem) !important; /* Double the padding to align with text */
}

/* Target lists directly inside answer divs */
.custom-faq__question div > ul,
.custom-faq__question div > ol {
    padding-left: calc(24px + 1rem) !important; /* Match answer padding */
    margin: 1rem 0 !important;
    list-style-position: outside !important;
}
/* If the strong tag inside lists is forcing bold, reset it */
.custom-faq__answer li strong {
  font-weight: normal !important;
  color: inherit !important;
}

/* Target paragraphs inside answer divs */
.custom-faq__question div > p {
    padding-left: calc(24px + 1rem) !important;
    margin-bottom: 1rem !important;
}

/* List item spacing */
.custom-faq__question div > ul li,
.custom-faq__question div > ol li {
    margin-bottom: 0.5rem !important;
}


/* Responsive adjustments */
/* Force FAQ container and question widths on mobile */
@media (max-width: 768px) {
  /* Target the FAQ container directly */
  .custom-faq {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
  
  /* Target the questions container */
  .custom-faq__questions {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
  }
  
  /* Force question cards to proper width */
  .custom-faq__question {
    width: calc(100% - 16px) !important;
    margin: 0 8px 16px 8px !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    display: block !important;
    overflow: hidden !important;
  }
  
  /* Reset any grid or flex properties */
  .custom-faq__questions {
    display: block !important;
    grid-template-columns: unset !important;
    grid-template-rows: unset !important;
  }
}

/* Highest specificity fix for any parent containers */
@media (max-width: 768px) {
  .language-content .custom-faq,
  #main .custom-faq,
  .custom-faq {
    overflow-x: hidden !important;
  }
  
  .language-content .custom-faq__questions,
  #main .custom-faq__questions,
  .custom-faq__questions {
    overflow-x: hidden !important;
  }
}
/* Fix for text wrapping without awkward hyphenation */
@media (max-width: 768px) {
  /* Fix for overflowing links while preserving proper word breaks */
  .custom-faq__answer a,
  .custom-faq__question a {
    word-break: break-all; /* Only break email/URLs where needed */
    overflow-wrap: break-word;
    word-wrap: break-word;
    display: inline;
    max-width: 100%;
  }
  
  /* Prevent hyphenation in regular text */
  .custom-faq__answer,
  .custom-faq__question {
    word-break: normal; /* Change from break-word to normal */
    overflow-wrap: break-word;
    word-wrap: break-word;
    -ms-hyphens: none; /* Disable hyphenation */
    -moz-hyphens: none;
    -webkit-hyphens: none;
    hyphens: none;
    white-space: normal; /* Ensure proper wrapping */
  }
  
  /* Fix punctuation placement */
  .custom-faq__answer,
  .custom-faq__question {
    text-align: left; /* Ensure consistent alignment */
  }
}

/* ==================================================
   ANIMATIONS
   ================================================== */

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(10px);
  }
  60% {
    transform: translateY(5px);
  }
}

@keyframes slideInLeft {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

/* ==================================================
   MEDIA QUERIES
   ================================================== */

/* --- Mobile Calendar Arrows Black --- */
@media (max-width: 767px) {
    [class*="txt-right"][class*="txt"],
    #sb_next_month,
    .txt-right.txt,
    *[id^="sb_next_month"],
    div[role="button"][id="sb_next_month"],
    .step-content.datetime-step .txt-right.txt {
        background-image: url('/img/ics/right_arrow.svg') !important;
        -webkit-filter: brightness(0) saturate(100%) !important;
        filter: brightness(0) saturate(100%) !important;
    }
[class*="txt-left"][class*="txt"],
    #prev_month,
    .txt-left.txt,
    *[id^="prev_month"],
    div[role="button"][id="prev_month"],
    .step-content.datetime-step .txt-left.txt {
        background-image: url('/img/ics/left_arrow.svg') !important;
        -webkit-filter: brightness(0) saturate(100%) !important;
        filter: brightness(0) saturate(100%) !important;
    }
}

/* --- RESPONSIVE FONT ADJUSTMENTS --- */
@media (max-width: 768px) {
  .custom-eat-and-drink .custom-eat-and-drink__title,
  .custom_overview_calendar .custom_overview_calendar-title,
  .arh_page_title,
  .custom-eat-and-drink__title h1,
  .custom-eat-and-drink_title,
  h1.custom-eat-and-drink_title {
    font-size: 4rem !important;
  }
}

@media (max-width: 480px) {
  .custom-eat-and-drink .custom-eat-and-drink__title,
  .custom_overview_calendar .custom_overview_calendar-title,
  .arh_page_title,
  .custom-eat-and-drink__title h1,
  .custom-eat-and-drink_title,
  h1.custom-eat-and-drink_title {
    font-size: 3rem !important;
  }
}

/* --- Landing Page: Down Arrow --- */
@media (max-width: 768px) {
  div.bar::after {
    padding-top: 2.5rem !important;
  }
}

/* --- Landing Page: 'About Us' (Weekly Calendar) --- */
@media (max-width: 768px) {
  .index-data-wrapper {
    padding-top: 1.5rem !important;
  }
}
/* Mobile devices */
@media screen and (max-width: 767px) {

}

/* Tablets */
@media screen and (min-width: 768px) and (max-width: 1023px) {

}

/* Desktop */
@media screen and (min-width: 1024px) {

}

/* Hamburger Menu Breakpoints */
@media (min-width: 991.01px) {
    #header .nav-trigger {
        display: none !important;
    }
    
    #header .main-menu {
        display: flex !important;
    }
}

@media (max-width: 991px) {
    #header .nav-trigger {
        display: flex !important;
    }
    
    #header .main-menu {
        display: none !important;
    }
 #header .container-fluid.column > .row {
        display: flex !important;
        flex-direction: row !important;
    }
    
    #header .header-controls {
        display: flex !important;
        justify-content: flex-end !important;
    }
  #header .items-wrapper {
        display: flex !important;
        gap: 60px !important;
    }
}


/* Overview Calendar */
@media (max-width: 768px) {
  .custom_overview_calendar {
    padding: 0;
    width: 100%;
  }
  .custom_overview_calendar-grid {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 0;
    margin: 0;
  }
  .custom_overview_calendar-column {
    width: 100%;
  }
  .custom_overview_calendar-item {
    margin: 0;
    width: 100%;
    box-sizing: border-box;
  }
  .custom_overview_calendar-column .custom_overview_calendar-day {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
  }
  .custom_overview_calendar-column:first-child .custom_overview_calendar-day {
    border-top: none;
  }
  .custom_overview_calendar-items {
    border-bottom: 1px solid #fff;
  }
}

/* --- Around Here --- */
/* Tablet and up */
@media (min-width: 768px) {
  .custom-around-here {
    padding: 3rem 2rem;
  }
  .custom-around-here__card {
    grid-template-columns: 1.2fr 1fr;
    grid-template-rows: 1fr;
  }
  .custom-around-here__card-image {
    height: 100%;
    grid-row: 1;
    grid-column: 2;
  }
  .custom-around-here__card-content {
    grid-row: 1;
    grid-column: 1;
    padding: 3rem;
  }
  .custom-around-here__amenities {
    grid-template-columns: 1fr 1fr;
  }
}


/* Desktop */
@media (min-width: 1024px) {
  .custom-around-here {
    padding: 4rem 2rem;
  }
  .arh_page_title {
    font-size: 3rem;
  }
}

/* Fix hover states */
@media (hover: hover) {
  .custom-around-here__book-button:hover {
    background-color: #555;
  }
}

/* --- Eat and Drink --- */

/* Tablet and up */
@media (min-width: 768px) {
  .custom-eat-and-drink {
    padding: 3rem 2rem;
  }

  .custom-eat-and-drink__card {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    grid-template-rows: 1fr;
  }

  .custom-eat-and-drink__card-image {
    height: 100%;
    grid-row: 1;
    grid-column: 2;
    order: unset;
  }

  .custom-eat-and-drink__card-content {
    grid-row: 1;
    grid-column: 1;
    padding: 3rem;
    order: unset;
  }

  .custom-eat-and-drink__amenities {
    grid-template-columns: 1fr 1fr;
  }
}

/* Desktop */
@media (min-width: 1024px) {
  .custom-eat-and-drink {
    padding: 4rem 2rem;
  }

  .custom-eat-and-drink__title {
    font-size: 3rem;
  }
}

/* Hover states */
@media (hover: hover) {
  .custom-eat-and-drink__menu-link:hover {
    color: #333;
  }

  .custom-eat-and-drink__book-button:hover,
  .custom-eat-and-drink__book-button:focus {
    background-color: #E8DCD0;
    border-color: #E8DCD0;
    color: #333;
    text-decoration: none;
  }
}

/*--- SPA ---*/
@media (max-width: 768px) {
  .custom-spa {
    padding: 1rem;
  }
  .custom-spa .custom-spa__title {
    font-size: 2rem;
  }
  .custom-spa .custom-spa__treatments-grid {
    gap: 1.5rem;
  }
  .custom-spa .custom-spa__image {
    height: 250px;
  }
}

/*----T&C's---*/
@media (max-width: 767px) {
  .modal-dialog.license--modal {
    max-width: 98%;
    margin: 10px auto;
  }
  
  .tab-pd.license--content {
    padding: 25px;
  }
  
  .modal-body {
    max-height: 80vh;
  }
}
