* {
  box-sizing: border-box;
  background-repeat: no-repeat;
}

:where(audio,canvas,iframe,img,svg,video) {
  vertical-align: middle;
}

html {
  --black: #000;
  --black-rgb: rgba(0, 0, 0, 1);
  --white: #fff;
  --grey: #343434;
  --grey-medium: #757575;
  --grey-light: #e0e0e0;
  --overlay: rgba(33, 33, 33, 0.6);
  --overlay-white-nav: rgba(255, 255, 255, 0.97);
  --overlay-white-dropdown: rgba(255, 255, 255, 0.9);
  --global-midblue: #005aff;
  --global-midblue-medium: #4c8bff;
  --global-midblue-light: #ccdeff;
  --global-midblue-verylight: #f2f8ff;
  --global-peach: #fae3cc;
  --global-blue: #26559f;
  --global-membership-blue: #005aff;
  --global-membership-text-color: #fff;
  
  --font-fallback: system-ui, -apple-system, 'Segoe UI', 'Roboto', 'Ubuntu',
    'Cantarell', 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
    'Segoe UI Symbol', 'Noto Color Emoji';

  --global-button-primary-bg: var(--global-midblue);
  --global-button-primary-border-color: transparent;
  --global-button-primary-border-width: 1px;
  --global-button-primary-text: var(--white);
  --global-button-primary-hover-bg: var(--global-midblue-medium);
  --global-button-primary-hover-border-color: transparent;
  --global-button-primary-hover-border-width: 1px;
  --global-button-primary-hover-text: var(--white);
  --global-button-primary-focus-bg: var(--global-midblue);
  --global-button-primary-focus-border-color: var(--global-midblue-light);
  --global-button-primary-focus-border-width: 3px;
  --global-button-primary-focus-text: var(--white);
  --global-button-primary-disabled-bg: var(--grey-light);
  --global-button-primary-disabled-border-color: transparent;
  --global-button-primary-disabled-border-width: 1px;
  --global-button-primary-disabled-text: var(--grey-medium);
}

body {
  color: var(--page-accommodation-selection-main-text);
  background-color: var(--page-accommodation-selection-main-background);
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  margin: 0;
}

.container {
  max-width: 100%;
  width: calc(1320px + 4em); /* add padding */
  margin-left: auto;
  margin-right: auto;
  padding-top: 1em;
  padding-bottom: 1em;
  padding-left: 2em;
  padding-right: 2em;
}

@media (max-width: 992px) {
  .container {
    width: 100vw;
    max-width: 100vw;
    padding: 0.5em;
  }
}

.main {
  display: grid;
  min-height: 100vh;
  grid-template-rows: 140px auto max-content;
  grid-template-columns: auto;
  grid-template-areas:
      "hp_header"
      "hp_body"
      "hp_footer";
}

@media (max-width: 992px) {
  :has(.header_expanded) {
    overflow: hidden;
  }
}

.heading {
  width: 100%;
  text-align: center;
  font-family: var(--font-special-family) !important;
  margin-bottom: 2.56rem !important;
  font-size: var(--font-desktop-heading-l-size);
  font-weight: var(--font-desktop-heading-l-weight);
  line-height: var(--font-desktop-heading-l-line-height);
  letter-spacing: var(--font-desktop-heading-l-letter-spacing);
  text-transform: var(--heading-text-transform);
}

.footer {
  color: var(--footer-global-text-color);
  background-color: var(--footer-global-background-color);
  font-size: .875rem;
  width: 100%;
}

.footer_container {
  max-width: 1320px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 1em;
  padding-bottom: 1em;
}

.footer_links {
  display: flex;
  gap: 1rem;
}

.footer_links a {
  text-decoration: none;
  color: var(--footer-global-text-color);
}

.footer_links a:hover {
  text-decoration: underline;
}

.footer_copyright {
  margin: 0 !important;
}

@media (max-width: 992px) {
  .footer {
    padding: 1rem;
  }

  .footer_links {
    margin-top: 0.5rem;
    justify-content: space-between;
  }
}

@media (min-width: 993px) {
  .footer_container {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2.5rem;
  }

  .footer_links {
    justify-content: flex-end;
  }
}

.mobile {
  display: none !important;
}

@media (max-width: 992px) {
  .mobile {
    display: block !important;
  }
}

/** Newbook Overrides **/

.nb_online_container {
  min-height: 300px;
}

@media (max-width: 992px) {
  .nb_online_container {
    margin: 0 1rem;
  }
}

.ui-dialog {
  background: var(--white);
}

#newbook_online_booking_controls_wrapper {
  display: none!important;
}

#newbook_content .language_chooser {
  display: none!important;
}

#newbook_online_booking_logo_wrapper {
  display: none!important;
}

#nbwrap #newbook_content .newbook_online_header {
  display: none!important;
}

@media (max-width: 992px) {
  #nbwrap #newbook_content .newbook_online_header + div {
    margin: 0!important;
  }
}

#nbwrap #newbook_content .newbook_online_footer {
  border-top: 0;
}

#nbwrap #newbook_content #cart_progress_meter_wrapper {
  border-bottom: 0;
  margin-bottom: 1rem;
}

#nbwrap #newbook_content #cart_progress_meter li {
  text-transform: uppercase;
  position: relative;
  pointer-events: none;
  width: 33%;
  display: table-cell;
}

#nbwrap #newbook_content #cart_progress_meter li a {
  position: relative;
  z-index: 1;
}

#nbwrap #newbook_content #cart_progress_meter li a span {
  pointer-events: all;
}

#nbwrap #newbook_content #cart_progress_meter li::after {
  content: ' ';
  border: 1px dashed var(--page-booking-path-stepper-separator);
  position: absolute;
  top: 35%;
  left: 0;
  width: 100%;
  z-index: 0;
  opacity: 0.8;
  pointer-events: none;
}

#nbwrap #newbook_content #cart_progress_meter li:first-child::after {
  width: 50%;
  right: 0;
  left: auto;
}

#nbwrap #newbook_content #cart_progress_meter li:last-child::after {
  width: 50%;
}

#nbwrap #newbook_content #cart_progress_meter li .newbook-badge {
  border-radius: 4px;
  border: 1px solid var(--page-booking-path-stepper-border-color);
  background: var(--white);
  color: var(--page-booking-path-stepper-text-color);
}

#nbwrap #newbook_content #cart_progress_meter li.active .newbook-badge {
  background: var(--page-booking-path-stepper-active-background);
  color: var(--page-booking-path-stepper-active-text-color);
}

#nbwrap #newbook_content #cart_progress_meter li .newbook-badge i.newbook_icon {
  display: none;
}

#nbwrap #newbook_content .newbook-panel.booking_cart .remove_button a, 
#nbwrap #newbook_content .newbook-panel.generic_cart_container .remove_button a {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="1em" height="1em" fill="currentColor" font-size="28"><path d="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z"></path></svg>')!important;
  width: 16px;
  height: 16px;
  background-color: transparent!important;
  background-position: center!important;
  margin-top: 0.5rem;
}

#nbwrap #newbook_content .newbook-panel.booking_cart .remove_button a i, 
#nbwrap #newbook_content .newbook-panel.generic_cart_container .remove_button a i {
  display: none;
}

#nbwrap #newbook_content .newbook-panel.booking_cart {
  border: 0;
  box-shadow: none;
}

#nbwrap .newbook-row:has(#newbook_online_main_form) {
  display: flex;
  column-gap: 2rem;
}

#nbwrap .newbook-row:has(#newbook_online_main_form)::before,
#nbwrap .newbook-row:has(#newbook_online_main_form)::after {
  content: none;
}

@media (max-width: 992px) {
  #nbwrap .newbook-row:has(#newbook_online_main_form) { 
    column-gap: normal;
    flex-direction: column-reverse;
    row-gap: 2rem;
  }

  #nbwrap #newbook_content .newbook_online_category_box .category_image {
    border-radius: 0;
  }

  #nbwrap #newbook_content #newbook_online_main_form>#facilities_hire_wrapper, 
  #nbwrap #newbook_content #newbook_online_main_form>#activities_wrapper, 
  #nbwrap #newbook_content .newbook-row #newbook_online_main_form {
    padding: 0;
  }

  #nbwrap .newbook-fieldset-row:has(label.fieldset_label:empty) {
    display: none!important;
  }
}

#nbwrap .newbook-row:has(#newbook_online_main_form) > div::before {
  display: none;
}

#nbwrap #newbook_content .newbook_responsive_button:not(.fake_button) {
  border: var(--button-primary-midem-border-width) solid var(--button-primary-midem-border-color);
  background: var(--button-primary-midem-bg);
  color: var(--button-primary-midem-text);
  font-weight: 400;
  text-transform: uppercase;
  border-radius: var(--button-border-radius)!important;
}

#nbwrap #newbook_content .newbook-membership_buttons .newbook_responsive_button:not(.fake_button) {
  border: var(--global-button-primary-border-width) solid var(--global-button-primary-border-color);
  background: var(--global-membership-blue);
  color: var(--global-membership-text-color);
}

#nbwrap #newbook_content .newbook-membership_buttons .newbook_responsive_button:not(.fake_button):hover {
  border: var(--global-button-primary-hover-border-width) solid var(--global-button-primary-hover-border-color);
  background: var(--global-button-primary-hover-bg);
  color: var(--global-membership-text-color);
}

#nbwrap #newbook_content .newbook_responsive_button.nightly_price {
  border: none;
  background: transparent;
}

#nbwrap #newbook_content .grouped_button:has(#newbook_online_dont_sign_button),
#nbwrap #newbook_content .newbook_responsive_button#newbook_online_dont_sign_button {
  display: none!important;
}

#nbwrap #newbook_content .newbook_responsive_button#newbook_online_clear_signature_button {
  background: var(--button-secondary-highem-bg)!important;
  border: var(--button-secondary-highem-border-width) solid var(--button-secondary-highem-border-color);
  color: var(--button-secondary-highem-text);
}

#nbwrap #newbook_content .newbook_responsive_button#newbook_online_clear_signature_button:hover {
  background: var(--button-secondary-highem-hover-bg)!important;
  border: var(--button-secondary-highem-hover-border-width) solid var(--button-secondary-highem-hover-border-color);
  color: var(--button-secondary-highem-hover-text);
}

#nbwrap #newbook_content .newbook_responsive_button {
  font-weight: 400;
}

#nbwrap #newbook_content .newbook_responsive_button:hover {
  border: var(--button-primary-midem-hover-border-width) solid var(--button-primary-midem-hover-border-color);
  background: var(--button-primary-midem-hover-bg);
  color: var(--button-primary-midem-hover-text);
}

#nbwrap #newbook_content .button_group {
  display: flex;
  column-gap: 1rem;
  justify-content: center;
}

#nbwrap #newbook_content .button_group > div {
  float: none;
  left: auto;
}

#nbwrap .newbook_online_footer .newbook_responsive_button {
  border-radius: 4px;
  border: var(--button-secondary-midem-border-width) solid var(--button-secondary-midem-border-color);
  background: var(--button-secondary-midem-bg);
  color: var(--button-secondary-midem-text);
  font-weight: 400;
  text-transform: uppercase;
  padding: 0 25px;
  max-width: inherit!important;

  box-shadow: 0px 4px 5px 0px rgba(107, 107, 107, 0.10);
}

#nbwrap #newbook_online_main_form .newbook_online_footer .newbook_responsive_button:not(.fake_button) {
  width: auto!important;
}

#nbwrap #newbook_online_main_form .newbook_online_footer .newbook_responsive_button:not(.fake_button).next_step_button {
  padding: 0 0.5rem 0 1rem;
}

#nbwrap .newbook_online_footer .newbook_responsive_button:hover {
  border: var(--button-secondary-midem-hover-border-width) solid var(--button-secondary-midem-hover-border-color);
  background: var(--button-secondary-midem-hover-bg);
  color: var(--button-secondary-midem-hover-text);
}

#nbwrap .newbook_online_footer .newbook_responsive_button[name="skip_current_step"],
#nbwrap .newbook_online_footer .newbook_responsive_button[membership_action="purchase"] {
  border: var(--button-primary-highem-border-width) solid var(--button-primary-highem-border-color);
  background: var(--button-primary-highem-bg);
  color: var(--button-primary-highem-text);
}

#nbwrap .newbook_online_footer .newbook_responsive_button[name="skip_current_step"]:hover,
#nbwrap .newbook_online_footer .newbook_responsive_button[membership_action="purchase"]:hover  {
  border: var(--button-primary-highem-hover-border-width) solid var(--button-primary-highem-hover-border-color);
  background: var(--button-primary-highem-hover-bg);
  color: var(--button-primary-highem-hover-text);
}

@media (max-width: 992px) {
  #nbwrap #newbook_content .newbook_online_footer {
    display: flex;
    flex-direction: column;
  }

  #nbwrap #newbook_online_main_form .newbook_online_footer > div {
    width: 100%;
  }

  #nbwrap #newbook_online_main_form .newbook_online_footer .newbook_responsive_button:not(.fake_button) {
    width: 100%!important;
  }

  #nbwrap #newbook_content .newbook_online_booking_cart_content label {
    min-width: 35%;
    display: inline-block;
    font-size: 12px;
  }
}

#nbwrap #newbook_content .newbook_online_category_box .newbook_online_category_row_category_name {
  border: 0;
}

#nbwrap #newbook_content .newbook_online_category_box .newbook_online_category_details {
  color: var(--secondary-text);
}

#nbwrap #newbook_content {
  background: none!important;
  font-family: var(--font-body)!important;
  color: var(--page-accommodation-selection-main-text);
}

#nbwrap #newbook_content #last_bookers_location {
  z-index: 2;
}

#nbwrap #newbook_content a.newbook-unslider-arrow {
  display: block !important;
  background-color: white;
  background-size: 50% 50%;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 6 10'%3E%3Cpath stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1' d='m1 9 4-4-4-4'/%3E%3C/svg%3E%0A") !important;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.10));
}

#nbwrap #newbook_content a.newbook-unslider-arrow:hover {
  background-color: white;
}

#nbwrap #newbook_content a.newbook-unslider-arrow.next {
  right: 0!important;
}

#nbwrap #newbook_content a.newbook-unslider-arrow.prev {
  left: 0!important;
  transform: rotate(180deg);
}

#nbwrap #newbook_content .newbook_online_category_details_wrapper .newbook_slider_outer {
  border: 0;
  overflow: hidden;
}

#nbwrap #newbook_content .newbook-panel {
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid var(--neutral-30);
  margin-bottom: 2rem;
}

#nbwrap #newbook_content .newbook-panel > .flex-row {
  margin-bottom: 2rem;
}

#nbwrap #newbook_content .newbook-panel > .newbook_online_category_details_tariff_type_wrapper {
  margin-top: -2rem;
}

#nbwrap #newbook_content .newbook-panel.open_category_calendar > .newbook_online_category_details_tariff_type_wrapper {
  background: var(--white);
  border-top: 1px solid #ccc !important;
}

#nbwrap #newbook_content .newbook_online_category_box .newbook_online_category_row_image {
  border-right: 0;
}

#nbwrap #newbook_content .flex-row {
  column-gap: 2rem;
}

#nbwrap #newbook_content .newbook_online_category_box {
  background: none;
}

#nbwrap #newbook_content .newbook_online_category_box.open_category_calendar {
  background-color: #fff;
}

#nbwrap #newbook_content .newbook_online_category_box .flex-row {
  background: var(--white);
}

#nbwrap #newbook_content .newbook_calendar_button {
  background-color: var(--button-primary-midem-bg);
  border: var(--button-primary-midem-border-width) solid var(--button-primary-midem-border-color);
  color: var(--button-primary-midem-text);
  text-transform: uppercase;
  font-weight: 400;
}

@media (min-width: 992px) {
  #nbwrap #newbook_content .newbook_calendar_button {
    position: absolute;
    top: 1rem;
    right: 0.5rem;
  }
}

#nbwrap #newbook_content .newbook_calendar_button i {
  display: none;
}

#nbwrap #newbook_content .newbook_online_link {
  background-color: var(--button-link-midem-bg);
  border: var(--button-link-midem-border-width) solid var(--button-link-midem-border-color);
  color: var(--button-link-midem-text);
  font-weight: 400;
  margin-left: 0.35em;
}

#nbwrap #newbook_content .newbook_message .nb-header {
  margin-left: 2em;
}

#nbwrap #newbook_content .newbook_online_categories_tariff_type_book_button .newbook_responsive_button {
  background-image: none;
  background-color: var(--button-primary-highem-bg) !important;
  border: var(--button-primary-highem-border-width) solid var(--button-primary-highem-border-color);
  color: var(--button-primary-highem-text);
  font-weight: 400;
  text-transform: uppercase;
}

#nbwrap #newbook_content .newbook_online_categories_tariff_type_book_button .newbook_responsive_button i {
  display: none;
}

#nbwrap #newbook_content .more_tariffs,
#nbwrap #newbook_content .newbook_online_categories_tariff_type_book_button .newbook_responsive_button.requires_date_change,
#nbwrap #newbook_content .newbook_online_category_row_action_buttons .newbook_responsive_button.warning {
  background-color: var(--button-primary-midem-bg) !important;
  border: var(--button-primary-midem-border-width) solid var(--button-primary-midem-border-color);
  color: var(--button-primary-midem-text);
  font-weight: 400;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons {
  justify-content: flex-end;
}

@media (max-width: 992px) {
  #nbwrap #newbook_content .newbook_online_category_row_action_buttons {
    flex-direction: column;
  }

  #nbwrap #newbook_content .newbook_online_categories_tariff_type_description {
    text-align: right;
    margin-right: -10px;
    padding: 0 0 10px 0;
  }

  #nbwrap #newbook_content .newbook_online_category_details_tariff_type_wrapper .newbook_online_categories_tariff_type_description {
    margin: auto;
    padding: 10px;
  }

  #nbwrap .newbook_online_category_row_action_buttons [class^="newbook-col-"]:has(.newbook_responsive_button) {
    width: 100%;
    margin-bottom: 0.5rem;
  }

  #nbwrap .newbook_responsive_special {
    margin-top: 10px;
    margin-bottom: 5px;
  }
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons > div:first-child {
  width: auto;
  margin-left: auto;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons > div:first-child:only-child {
  width: 100%;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons > div:not(:has( > *)) {
  display: none;
}

#nbwrap #newbook_content .newbook_online_category_box .newbook_online_category_row_category_name {
  position: relative;
}

#nbwrap #newbook_content .newbook_online_category_name_wrapper h3 {
  font-family: var(--font-desktop-heading-m-family) !important;
  font-size: var(--font-desktop-heading-m-size) !important;
  font-weight: var(--font-desktop-heading-m-weight) !important;
  line-height: var(--font-desktop-heading-m-line-height) !important;
  text-transform: var(--font-desktop-heading-m-text-transform) !important;
  letter-spacing: var(--font-desktop-heading-m-letter-spacing) !important;
  margin-top: var(--font-desktop-heading-m-margin-top) !important;
  margin-bottom: var(--font-desktop-heading-m-margin-bottom) !important;
  max-width: 80%;
  color: var(--product-selection-rate-card-text-color) !important;
}

#nbwrap #newbook_content .newbook-col-sm-9 .newbook_online_category_name_wrapper h3 {
  max-width: 70%;
}


#nbwrap #newbook_content .newbook_online_category_row_category_icon {
  color: var(--secondary-text);
  font-family: var(--font-desktop-body-xs-family);
  font-size: var(--font-desktop-body-xs-size);
  font-weight: var(--font-desktop-body-xs-weight);
  line-height: var(--font-desktop-body-xs-line-height);
  text-transform: var(--font-desktop-body-xs-text-transform);
  letter-spacing: var(--font-desktop-body-xs-letter-spacing);
}

#nbwrap #newbook_content .newbook_responsive_header {
  color: var(--secondary-text);
}

#nbwrap #newbook_content .newbook_online_from_price_text {
  color: var(--from-price-text-color);
  font-weight: 700;
}

#nbwrap #newbook_content .newbook_online_from_price_text.discounted {
  font-weight: 400;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons .newbook_responsive_button.fake_button {
  color: var(--black);
  border: 0!important;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons .newbook_responsive_button.fake_button:hover,
#nbwrap #newbook_content .newbook_online_category_row_action_buttons .newbook_responsive_button.fake_button[disabled] {
  color: var(--black)!important;
  background-color: transparent!important;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons .newbook_responsive_button.fake_button.nightly_price {
  text-align: right;
}

#nbwrap #newbook_content .newbook_responsive_popup .newbook_online_categories_tariff_types_table tr.even, 
#nbwrap #newbook_content .newbook_online_category_box .newbook_online_categories_tariff_types_table tr.even, 
#nbwrap #newbook_content .newbook-row .even,
#nbwrap #newbook_content .newbook-row .odd {
  background-color: transparent !important;
}

@media (min-width: 992px) {
  #nbwrap #newbook_content .newbook_online_categories_tariff_type_rows {
    height: 100px !important;
  }
}

@media (max-width: 992px) {
  #nbwrap #newbook_content .newbook_online_category_name_wrapper h3 {
    font-size: var(--font-desktop-heading-xs-size) !important;
    max-width: 100%;
  }
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons {
  display: flex !important;
  background: none;
  column-gap: 1rem;
  justify-content: space-between;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons::before,
#nbwrap #newbook_content .newbook_online_category_row_action_buttons::after {
  display: none;
}

#nbwrap #newbook_content .newbook_online_category_row_action_buttons > div {
  float: none;
}

#nbwrap #newbook_content .newbook_online_categories_tariff_type_label:has(div) {
  position: relative;
  padding-top: 2.5rem;
}

#nbwrap #newbook_content .newbook_online_categories_tariff_type_label > div {
  position: absolute;
  top: 0;
}

#nbwrap #newbook_content .newbook_online_categories_tariff_type_label:has(img) {
  position: relative;
  padding-top: 2.5rem;
}

#nbwrap #newbook_content .newbook_online_categories_tariff_type_label > img {
  background: var(--grey-light);
  opacity: 0.3;
}

@media (min-width: 992px) {
  #nbwrap #newbook_content .newbook_online_categories_tariff_type_label > img {
    position: absolute;
    top: 0;
  }
}

#nbwrap #newbook_content #newbook_online_sidebar {
  background: var(--booking-summary-background);
  padding: 1rem;
}

#nbwrap #newbook_content #newbook_online_sidebar h3,
#nbwrap #newbook_content #newbook_online_sidebar .header, 
#nbwrap #newbook_content #newbook_cart_summary .header {
  background-color: transparent;
  border: 0;
  padding: 0;
  margin-top: 1rem;
  margin-bottom: 0.25rem;
}

#nbwrap #newbook_content #newbook_online_sidebar h3:first-child,
#nbwrap #newbook_content #newbook_online_sidebar .header:first-child, 
#nbwrap #newbook_content #newbook_cart_summary .header:first-child {
  margin-top: 0;
}

#nbwrap #newbook_content #newbook_online_sidebar h3 {
  color: #333;
  font-weight: 400;
}

#nbwrap #newbook_content #newbook_online_sidebar .newbook_responsive_button {
  background-color: var(--white) !important;
  border-radius: 4px;
  border: var(--button-secondary-midem-border-width) solid var(--button-secondary-midem-border-color);
  background: var(--button-secondary-midem-bg);
  color: var(--button-secondary-midem-text);
  font-weight: 400;
  text-transform: uppercase;
}

#nbwrap #newbook_content #newbook_online_sidebar .newbook_responsive_button[aria-label*="Checkout"] {
  border: var(--button-primary-highem-border-width) solid var(--button-primary-highem-border-color);
  background: var(--button-primary-highem-bg)!important;
  color: var(--button-primary-highem-text);
}

#nbwrap #newbook_content #newbook_online_sidebar .newbook_responsive_button[aria-label*="Checkout"]:hover {
  border: var(--button-primary-highem-hover-border-width) solid var(--button-primary-highem-hover-border-color);
  background: var(--button-primary-highem-hover-bg)!important;
  color: var(--button-primary-highem-hover-text);
}

#nbwrap #newbook_content .newbook_responsive_button[aria-label*="Add Another Booking"],
#nbwrap #newbook_content .newbook_responsive_button[aria-label*="Add Another Booking"]:hover,
#nbwrap #newbook_content .newbook_responsive_button[aria-label*="Add Another Booking"]:disabled {
  background-color: var(--white) !important;
  border-radius: 4px;
  border: var(--button-secondary-midem-border-width) solid var(--button-secondary-midem-border-color);
  color: var(--button-secondary-midem-text);
  font-weight: 400;
  text-transform: uppercase;
}

#nbwrap #newbook_content .newbook_responsive_button[aria-label*="Add Another Booking"]:disabled {
  opacity: 0.3;
  background-color: var(--white) !important;
  border: var(--button-secondary-midem-border-width) solid var(--button-secondary-midem-border-color) !important;
  color: var(--button-secondary-midem-text) !important;
  cursor: default;
  pointer-events: none;
}

#nbwrap #newbook_content #newbook_online_sidebar .newbook_responsive_button[aria-label*="Member"] {
  border: var(--button-primary-highem-hover-border-width) solid var(--global-membership-blue);
  background: var(--global-membership-blue)!important;
  color: var(--global-membership-text-color);
}

#nbwrap #newbook_content .newbook_responsive_popup .ui-dialog-buttonpane button {
  border: var(--button-secondary-midem-border-width) solid var(--button-secondary-midem-border-color);
  background: var(--button-secondary-midem-bg)!important;
  color: var(--button-secondary-midem-text);
  text-transform: uppercase;
}

#nbwrap #newbook_content .newbook_responsive_popup .ui-dialog-buttonpane button:hover {
  border: var(--button-secondary-midem-hover-border-width) solid var(--button-secondary-midem-hover-border-color);
  background: var(--button-secondary-midem-hover-bg)!important;
  color: var(--button-secondary-midem-hover-text);
  text-transform: uppercase;
}

#nbwrap #newbook_content .newbook_responsive_popup .ui-dialog-buttonpane button .ui-button-icon,
#nbwrap #newbook_content .newbook_responsive_popup .ui-dialog-buttonpane button .ui-button-icon-space {
  display: none
}

#nbwrap #newbook_content #newbook_online_sidebar .sidebar_content, 
#nbwrap #newbook_content #newbook_cart_summary .item_breakdown {
  border: 0;
  padding: 0;
}

#nbwrap #newbook_content #newbook_online_sidebar .footer {
  margin: 1rem 0;
  background-color: transparent;
  color: var(--black);
  padding: 1rem 0;
  border-top: 1px solid var(--neutral-20);
  border-bottom: 1px solid var(--neutral-20);
}

#nbwrap #newbook_content #newbook_online_sidebar .edit_guests_button .fa-pencil {
  margin-top: -2px;
}

#nbwrap #newbook_content #newbook_online_sidebar .edit_guests_button {
  right: 0;
  padding: 0 0.3rem;
  font-size: 0.75rem;
  margin-top: -2px;
  text-transform: uppercase;
  border: var(--button-secondary-midem-border-width) solid var(--button-secondary-midem-border-color);
  background: var(--white); /*var(--button-secondary-midem-bg)!important;*/
  color: var(--button-secondary-midem-text);
}

#nbwrap #newbook_content #newbook_online_sidebar .edit_guests_button:hover {
  border: var(--button-secondary-midem-hover-border-width) solid var(--button-secondary-midem-hover-border-color);
  background: var(--button-secondary-midem-hover-bg)!important;
  color: var(--button-secondary-midem-hover-text);
}

#nbwrap #place_booking_wrapper #place_booking_full {
  border: var(--button-primary-highem-border-width) solid var(--button-primary-highem-border-color);
  background: var(--button-primary-highem-bg)!important;
  color: var(--button-primary-highem-text);
}

#nbwrap #place_booking_wrapper #place_booking_full:hover {
  border: var(--button-primary-highem-hover-border-width) solid var(--button-primary-highem-hover-border-color);
  background: var(--button-primary-highem-hover-bg)!important;
  color: var(--button-primary-highem-hover-text);
}

.action_login #nbwrap .newbook_responsive_header,
.action_login #nbwrap .newbook_responsive_hr {
  display: none!important;
}

.action_login #nbwrap #newbook_content .pretty_fieldset {
  width: 40%;
  margin: 0 auto;
}

.action_login #nbwrap .newbook-fieldset-group > div {
  display: flex;
  flex-direction: column;
}

.action_login #nbwrap .newbook-fieldset-group > div > div {
  padding: 0;
  width: 100%!important;
}

.action_login #nbwrap #newbook_content .labeler {
  text-align: left;
  margin-top: 1em;
  font-weight: 400;
}

.action_login #nbwrap div:has(>.button_group) {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 2rem;
  flex-direction: row-reverse;
}

.action_login #nbwrap #newbook_content .pretty_fieldset > div > .button_group {
  margin: 0!important;
  justify-content: flex-start;
  column-gap: 0.5rem;
}

.action_login #nbwrap #newbook_content .pretty_fieldset > div > :not(.button_group) {
  width: 100%;
  margin-top: 1rem!important;
}

.action_login #nbwrap .newbook_responsive_button[aria-label*="Create Account"] {
  background: var(--button-secondary-highem-bg)!important;
  border: var(--button-secondary-highem-border-width) solid var(--button-secondary-highem-border-color)!important;
  color: var(--button-secondary-highem-text)!important;
  text-decoration: none!important;
}

.action_login #nbwrap .newbook_responsive_button[aria-label*="Create Account"]:hover {
  background: var(--button-secondary-highem-hover-bg)!important;
  border: var(--button-secondary-highem-hover-border-width) solid var(--button-secondary-highem-hover-border-color)!important;
  color: var(--button-secondary-highem-hover-text)!important;
  text-decoration: none!important;
}

#nbwrap #newbook_content .newbook_message .header {
  padding-bottom: 4px;
  padding-left: 1.5rem;
  z-index: inherit;
}

#nbwrap #newbook_content .newbook_message .indent {
  padding-left: 1.6rem;
}

#nbwrap #newbook_content .newbook_message {
  border: 1px solid var(--messagebox-info-border)!important;
  background: var(--messagebox-info-bg)!important;
  color: var(--messagebox-info-border)!important;
  padding: 0.5rem;
}

#nbwrap #newbook_content .newbook_message.warning {
  border: 1px solid var(--messagebox-warning-border)!important;
  background: var(--messagebox-warning-bg)!important;
  color: var(--messagebox-warning-border)!important;
}

#nbwrap #newbook_content .newbook_message.error {
  border: 1px solid var(--messagebox-error-border)!important;
  background: var(--messagebox-error-bg)!important;
  color: var(--messagebox-error-border)!important;
}

#nbwrap #newbook_content .newbook_message.success {
  border: 1px solid var(--messagebox-success-border)!important;
  background: var(--messagebox-success-bg)!important;
  color: var(--messagebox-success-border)!important;
}

#nbwrap #newbook_content .note_output {
  color: var(--black)!important;
}

#nbwrap #newbook_content #membership_services_fieldset ul {
  list-style: none;
  text-align: left;
}

@media (max-width: 992px) {
  #nbwrap #newbook_content .labeler {
    font-size: 11px;
    line-height: 1.2rem;
  }

  #nbwrap #newbook_content .view_value {
    line-height: 1.2rem;
  }
}

.action_gift_voucher #nbwrap #newbook_content .newbook_online_full_header {
  display: none;
}

#nbwrap .gift_vouchers_table fieldset.pretty_fieldset {
  display: none;
}

#nbwrap #newbook_content .newbook_online_category_page_controls_wrapper a {
  border: var(--button-primary-midem-border-width) solid var(--button-primary-midem-border-color);
  background: var(--button-primary-midem-bg);
  color: var(--button-primary-midem-text);
  font-weight: 400;
  text-transform: uppercase;
  border-radius: var(--button-border-radius) !important;
  text-decoration: none;
}

#nbwrap #newbook_content #newbook_online_sidebar .nb-header, #nbwrap #newbook_content #newbook_cart_summary .nb-header {
  background: none;
  border: 0;
  margin-top: 0.5rem;
  padding: 0;    
  min-height: 1.5rem;
}

#nbwrap #newbook_content #newbook_online_sidebar .nb-footer, #nbwrap #newbook_content #newbook_cart_summary .nb-footer {
  margin-top: 1rem;
  background: none;
  color: var(--neutral-40);
  padding: 0.5rem 0;
  border-top: 1px solid var(--neutral-20);
  border-bottom: 1px solid var(--neutral-20);
  margin-bottom: 0.5rem;
}

/* hide login links/buttons */
#nbwrap button.newbook_responsive_button[aria-label="Back to Login"],
#nbwrap .newbook_message:has(a[href*="?login&"]) {
  display: none;
}
