/********************* Variables *********************/
:root {
  --nb-primary-colour: var(--wpt-general-site-button-colour);
  --nb-button-font: roboto, sans-serif;
  --nb-buttons: var(--wpt-booking-page-buttons-colour);
  --nb-buttons-hover: var(--wpt-booking-page-buttons-colour);
  --nb-headings: var(--wpt-primary-colour);
  --nb-heading-case: unset;
  --nb-content: var(--wpt-text-colour);
  --nb-pop-up-heading: var(--wpt-primary-colour);
  --nb-pop-up-headings: var(--wpt-primary-colour);
  --nb-heading-font-family: var(--wpt-headings-secondary-font);
  --nb-content-font-family: var(--wpt-primary-font);
  --nb-heading-weight: var(--wpt-secondary-font-weight);
  --nb-light-grey: var(--wpt-page-component-bg-colour);
  --nb-lighter-grey: #e3e3e3;
  --nb-icon-colour: var(--wpt-text-colour);
  --nb-panel-border-radius: 0px;
  --nb-font-size: 14px;
  --nb-warning-button: #ffa500;
  --nb-warning-button-hover: #d98d00;
  --responsive_primary_colour: var(--nb-buttons);
}

/************************* Common Website fixes *************************/
#newbook_content {
  width: 100%;
  line-height: 1.3;
}

#newbook_content label,
#newbook_content input,
#newbook_content select:not(.month-year-selector),
#newbook_content strong {
  font-family: var(--nb-content-font-family) !important;
}

#newbook_content *:focus,
#newbook_content *:active {
  outline: unset;
}

/************************* Theme Overides *************************/
#newbook_content,
#newbook_content p {
  color: var(--nb-content);
  font-size: var(--nb-font-size);
  letter-spacing: unset;
}

#newbook_content h2 {
  color: var(--nb-headings);
  font-family: var(--nb-heading-font-family);
  font-weight: var(--nb-heading-weight);
  text-transform: var(--nb-heading-case);
  line-height: 1.3;
  font-size: 21px;
}

#newbook_content #cart_progress_meter ul {
  font-size: var(--nb-font-size);
}

#newbook_content #cart_progress_meter li .newbook-badge {
  background: var(--wpt-page-component-bg-colour);
}

#newbook_content,
#newbook_content p,
#newbook_content b {
  font-family: var(--nb-content-font-family);
}

#newbook_content
  .newbook_online_category_box
  .newbook_online_category_row_image
  li {
  font-size: var(--nb-font-size) !important;
}

#newbook_content
  .newbook_online_category_details_wrapper
  .newbook_online_category_details_description,
#newbook_content
  .newbook_online_category_details_wrapper
  .newbook_online_category_details_description
  *,
#newbook_content ul#newbook_online_category_features_list {
  font-family: var(--nb-content-font-family);
  font-size: var(--nb-font-size);
  color: var(--nb-content);
}

#newbook_content
  .newbook_online_category_box
  .newbook_online_category_row_action_buttons,
#newbook_content .newbook-panel.booking_cart .remove_button a,
#newbook_content .newbook-panel.generic_cart_container .remove_button a {
  background: var(--nb-light-grey);
  border-radius: 0px;
}

html.rounded-corners-true
  #newbook_content
  .newbook-panel.booking_cart
  .remove_button
  a,
html.rounded-corners-true
  #newbook_content
  .newbook-panel.generic_cart_container
  .remove_button
  a {
  border-radius: 20px;
}

html.rounded-corners-standard
  #newbook_content
  .newbook-panel.booking_cart
  .remove_button
  a,
html.rounded-corners-standard
  #newbook_content
  .newbook-panel.generic_cart_container
  .remove_button
  a {
  border-radius: 6px;
}

#newbook_content .newbook-panel.booking_cart .remove_button .newbook_icon,
#newbook_content
  .newbook-panel.generic_cart_container
  .remove_button
  .newbook_icon {
  color: var(--nb-icon-colour);
}

#newbook_content .newbook_responsive_button,
#newbook_content .newbook-calendar-controls .selector {
  background: var(--nb-buttons);
  color: #fff;
  font-family: var(--nb-button-font);
  padding-left: 6px;
  border-radius: 0px !important;
  box-shadow: inset 0 0 100vw rgba(0, 0, 0, 0);
  transition: 0.2s ease;
}

html.rounded-corners-true #newbook_content .newbook_responsive_button,
html.rounded-corners-true #newbook_content .newbook-calendar-controls .selector,
html.rounded-corners-true #newbook_content a.newbook_online_page_control,
html.rounded-corners-true #newbook_content .newbook-unslider-arrow,
html.rounded-corners-true #newbook_content .edit_guests_button {
  border-radius: 20px !important;
}

html.rounded-corners-standard #newbook_content .newbook_responsive_button,
html.rounded-corners-standard
  #newbook_content
  .newbook-calendar-controls
  .selector,
html.rounded-corners-standard #newbook_content a.newbook_online_page_control,
html.rounded-corners-standard #newbook_content .newbook-unslider-arrow,
html.rounded-corners-standard #newbook_content .edit_guests_button {
  border-radius: 6px !important;
}

#newbook_content .newbook_responsive_button:not(.fake_button):hover {
  background: var(--nb-buttons-hover);
  box-shadow: inset 0 0 100vw rgba(0, 0, 0, 0.1);
}

#newbook_content
  .newbook_online_category_box
  .newbook_online_category_details
  h3,
#newbook_content .newbook_responsive_header {
  color: var(--nb-headings);
  font-family: var(--nb-heading-font-family);
  font-weight: var(--nb-heading-weight);
  text-transform: var(--nb-heading-case);
  line-height: 1.3;
}

#newbook_content #cart_progress_meter li.active .newbook-badge {
  background: var(--nb-buttons);
}

#newbook_content .edit_guests_button {
  background: var(--nb-buttons);
  border-radius: var(--nb-button-radius);
}

#newbook_content .edit_guests_button:hover {
  background: var(--nb-buttons-hover);
  border-radius: var(--nb-button-radius);
}

#newbook_content #newbook_online_sidebar .sidebar_content a {
  color: var(--nb-primary-colour);
}

#newbook_content #newbook_online_sidebar h3 {
  color: var(--nb-headings);
  font-family: var(--nb-heading-font-family);
  font-weight: var(--nb-heading-weight);
}

#newbook_content .newbook-panel {
  font-family: var(--nb-content-font-family);
}

#newbook_content .newbook_online_category_details_tariff_type_wrapper h3,
#newbook_content .newbook_online_category_details_wrapper h3,
#newbook_content .newbook_online_header h2 {
  color: var(--nb-headings);
  font-family: var(--nb-heading-font-family);
  font-weight: var(--nb-heading-weight);
  text-transform: var(--nb-heading-case);
}

#newbook_content legend,
#newbook_content h3 {
  color: var(--nb-headings);
  font-family: var(--nb-heading-font-family);
  font-weight: var(--nb-heading-weight);
  text-transform: var(--nb-heading-case);
  padding: 0;
}

#newbook_content
  .newbook_online_category_row_action_buttons
  .newbook_responsive_button.fake_button {
  font-family: var(--nb-content-font-family);
  color: var(--nb-content);
}

#newbook_content .chosen-container {
  font-family: var(--nb-content-font-family);
  color: var(--nb-content);
}

#newbook_content .chosen-container .chosen-results,
#newbook_content .chosen-container .chosen-choices,
#newbook_content .chosen-container .search-field {
  font-size: var(--nb-font-size);
}

#newbook_content .chosen-container .chosen-single {
  color: var(--nb-content);
}

#newbook_content .newbook_online_from_price_text,
#newbook_content .newbook_online_link {
  color: var(--nb-primary-colour);
}

#newbook_content .newbook-panel {
  border-radius: var(--nb-panel-border-radius);
}

#newbook_content .newbook_online_category_details_wrapper h2,
#newbook_content .newbook_responsive_popup h2 {
  color: var(--nb-headings);
  font-family: var(--nb-heading-font-family);
  font-weight: var(--nb-heading-weight);
  margin-bottom: 0.5em;
}

#NewPopup p {
  font-family: var(--nb-content-font-family);
  color: var(--nb-content);
  margin: 0 0 0.5em;
}

.ui-widget-content:not(.ui-dialog-buttonpane),
.newbook-modal-content {
  border-radius: var(--nb-panel-border-radius);
}

#newbook_content
  .newbook_responsive_popup
  .newbook_online_categories_tariff_types_table
  tr.even,
#newbook_content
  .newbook_online_category_box
  .newbook_online_categories_tariff_types_table
  tr.even,
#newbook_content .newbook-row .even {
  background: var(--wpt-page-component-bg-colour) !important;
}

#newbook_content .newbook_responsive_popup .ui-dialog-buttonpane button {
  background: var(--nb-buttons);
  border-radius: var(--nb-button-radius);
}

#newbook_content .newbook_responsive_popup .ui-dialog-buttonpane button:hover {
  background: var(--nb-buttons-hover);
}

#newbook_content .newbook_online_category_row_category_icon,
#newbook_content .newbook_online_category_row_category_icon a,
#newbook_content .newbook_online_category_row_category_icon a:visited {
  color: var(--nb-content);
}

#newbook_content .newbook_online_category_row_category_icon .newbook_icon {
  color: var(--nb-content);
}

.newbook-daterangepicker td.newbook-in-range {
  background: var(--nb-light-grey);
}

.newbook-daterangepicker td.newbook-active,
.newbook-daterangepicker td.newbook-end-date {
  background: var(--nb-buttons) !important;
}

.newbook-daterangepicker td.newbook-active:hover {
  color: white !important;
}

#newbook_content .newbook-unslider-arrow {
  background-color: var(--nb-buttons) !important;
}

#newbook_content .newbook-unslider-arrow:hover {
  background-color: var(--nb-buttons-hover) !important;
}

#newbook_content a.newbook_online_page_control {
  background-color: var(--nb-buttons);
  border-radius: var(--nb-button-radius);
}

#newbook_content a.newbook_online_page_control:hover {
  background-color: var(--nb-buttons-hover);
}

#newbook_content #online_group_tiles .group_tile {
  background-color: var(--nb-buttons);
  border-color: var(--nb-buttons);
}

#newbook_content #online_group_tiles .group_tile:hover {
  background-color: var(--nb-buttons-hover);
  border-color: var(--nb-buttons-hover);
}

#newbook_content .newbook_online_category_box.group_header {
  background-color: var(--nb-content);
  border-color: var(--nb-content);
}

#newbook_content .newbook_responsive_button.warning {
  background-color: var(--nb-warning-button) !important;
}

#newbook_content .newbook_responsive_button.warning:hover {
  background-color: var(--nb-warning-button-hover) !important;
}

#newbook_content
  .checkout_additional_guests
  .newbook-table-row
  .newbook-row.odd,
#newbook_content .checkout_additional_guests .odd,
#newbook_content .pretty_table tr.even {
  background: var(--nb-light-grey);
}

#newbook_content #facilities_hire_wrapper .row_even {
  background: var(--nb-lighter-grey);
}

.newbook-calendar-controls .selector {
  background-color: var(--nb-buttons);
  border-color: var(--nb-buttons);
}

.newbook-calendar-controls .selector:hover,
.newbook-calendar-wrapper table th {
  background-color: var(--nb-buttons);
}

/************************* NewBook Fixes *************************/
#newbook_content .newbook_responsive_button.disabled,
#newbook_content .newbook_responsive_button[disabled],
#newbook_content .newbook_responsive_button.warning.disabled,
#newbook_content .newbook_responsive_button.warning[disabled] {
  opacity: 0.3;
  background: var(--nb-buttons) !important;
}

#newbook_content .button.newbook_responsive_button.fake_button[disabled] {
  background: unset !important;
  opacity: 1;
}

/* fixes credit card CCV width to allow help icon */
#newbook_content input[type="text"]#card_cvv {
  width: 93% !important;
}

#newbook_content .payment_method_cc .easytooltip {
  right: 0 !important;
}

#newbook_loading {
  background: var(--nb-buttons) !important;
  border: 2px solid var(--nb-buttons) !important;
  font-family: var(--nb-heading-font-family);
  font-size: 1.5em;
  font-weight: var(--nb-heading-weight);
  border-radius: var(--nb-panel-border-radius);
}

#newbook_content .pretty_fieldset legend {
  padding: 0;
}

.chosen-image-container img {
  vertical-align: unset;
}

.newbook-calendar-wrapper table {
  border-collapse: unset;
  border-spacing: revert;
}

.newbook-calendar-wrapper table td:not(.empty) {
  text-align: center;
}

#newbook_content hr.newbook_responsive_hr {
  margin: 8px 0;
}

h2.jp-card-allowed-text {
  font-size: 25px;
  margin-bottom: 0.5em;
  font-family: var(--nb-heading-font-family);
  font-weight: var(--nb-heading-weight);
}

#newbook_content .big_selector li a,
#newbook_content .small_selector li a {
  border-radius: var(--nb-button-radius);
}

#newbook_content .big_selector li a.selected,
#newbook_content .small_selector li a.selected {
  background: var(--nb-buttons) !important;
  border: 1px solid var(--nb-buttons) !important;
}

#newbook_content
  #newbook_online_main_form
  > fieldset.tariff_inclusion_text
  > p {
  padding: 0;
}

#newbook_content .pretty_table tr td {
  border: none !important;
}

#newbook_content .pretty_table tr {
  border: 0 !important;
}

@keyframes fadein {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

#newbook_content img {
  animation-duration: 1s;
  animation-name: fadein;
}

@media all and (max-width: 480px) {
  #newbook_content .ajax_lookup .newbook_responsive_button {
    border-right: 1px solid rgba(0, 0, 0, 0.2);
  }
}

@keyframes fadein {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

#newbook_content img {
  animation-duration: 1s;
  animation-name: fadein;
}

@media all and (max-width: 480px) {
  #newbook_content .ajax_lookup .newbook_responsive_button {
    border-right: 1px solid rgba(0, 0, 0, 0.2);
  }
}

.fa-pulse {
  animation: betterSpin 0.7s infinite;
  animation-timing-function: linear;
}

@keyframes betterSpin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

#newbook_loading i {
  margin: 0;
  height: 40px;
  width: 40px;
  position: static;
  margin-right: 20px;
  margin-left: 40px;
}

#newbook_loading i:before {
  content: "";
  border-radius: 100px !important;
  border: 4px solid rgba(255, 255, 255, 0.3);
  height: 32px;
  width: 32px;
  display: block;
  box-sizing: unset;
}

#newbook_loading i:after {
  content: "";
  border-radius: 100px !important;
  background: transparent;
  height: 32px;
  width: 32px;
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border: 4px solid black;
  border-color: white transparent transparent;
  box-sizing: unset;
}

#newbook_loading {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: unset;
  height: unset;
  top: 50%;
  left: 50%;
  right: unset;
  bottom: unset;
  transform: translate(-50%, -50%);
  line-height: unset;
  padding: 20px 0px;
  box-shadow:
    inset 0 -1px 0 rgba(255, 255, 255, 0.4),
    0 2px 2px rgba(0, 0, 0, 0.2);
  border: 0 !important;
}

#newbook_loading_overlay {
  background: black;
}

#newbook_loading div {
  text-overflow: unset;
  white-space: unset;
  max-width: unset !important;
  width: unset !important;
  text-align: left;
  line-height: 1.2;
  margin-right: 40px;
}

@media (max-width: 800px) {
  #newbook_loading {
    min-width: 90%;
  }

  #newbook_loading i {
    margin-left: 10px;
  }

  #newbook_loading div {
    margin-right: 10px;
  }
}

#newbook_content .pretty_fieldset.collapsable legend .handle {
  color: var(--nb-primary-colour);
}

#newbook_content .pretty_fieldset.collapsable legend .handle {
  background-color: var(--nb-light-grey);
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#newbook_content .pretty_fieldset.collapsable legend .handle.active {
  background-color: var(--nb-light-grey);
  color: inherit;
}

#newbook_content .newbook_responsive_button.white {
  color: var(--nb-buttons);
}

#newbook_content .newbook_responsive_button.white.bordered {
  border-color: var(--nb-buttons);
}

#newbook_content #features_list label {
  display: grid;
  grid-template-columns: min-content auto;
  align-items: flex-start;
  line-height: 1.2;
}

#newbook_content #features_list label input {
  margin-top: 0.05em;
}

#newbook_content {
  opacity: 1;
}

html.newbook-modal-scroll-fix #mobi-header {
  z-index: 0 !important;
}

#newbook_content .newbook_message.good {
  color: #31570a !important;
}
