body {
  font-family: 'Lato' !important;
  font-weight: 300;
  color: #414141;
  font-size: 16px; }

html {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

*,
*:before,
*:after {
  -moz-box-sizing: inherit;
  -webkit-box-sizing: inherit;
  -ms-box-sizing: inherit;
  box-sizing: inherit; }

input[disabled] {
  -webkit-text-fill-color: #414141;
  -webkit-opacity: 1; }

.primary-accordion .accordion-header {
  background-color: #5eb283;
  color: #fff;
  cursor: pointer;
  border-width: 0px; }
.primary-accordion a:hover {
  text-decoration: none; }

.wh-mint-green-btn,
.wh-mint-green-btn:hover {
  background-color: #5eb283;
  border-color: #5eb283;
  color: #FFF; }

.wh-mint-green-btn:focus {
  box-shadow: 0 0 0 0.2rem rgba(94, 178, 131, 0.25); }

.btn-wh-light,
.btn-wh-light:hover {
  background-color: #FFF;
  border-color: #FFF;
  color: #5eb283; }

.btn-wh-light:focus {
  box-shadow: 0 0 0 0.2rem rgba(94, 178, 131, 0.25); }

.wh-green-btn,
.wh-green-btn:hover {
  background-color: #00634b;
  border-color: #00634b;
  color: #FFF; }

.wh-green-btn:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 99, 75, 0.25); }

.btn-wh-orange,
.btn-wh-orange:hover {
  color: #fff;
  background-color: #5eb283; }

.btn-wh-orange:focus {
  box-shadow: 0 0 0 0.2rem rgba(94, 178, 131, 0.25); }

.btn-wh-white,
.btn-wh-white:hover {
  color: #fff;
  background-color: transparent;
  border-color: #fff; }

.btn-wh-white:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.25); }

.bigger-btn-text {
  font-weight: 400;
  font-size: 1.3rem;
  padding: 0.375rem 2.75rem; }

.wh-btn-bigger-font {
  font-size: 1.3rem; }

.wh-mint-select {
  color: #414141;
  display: block;
  font-size: 16px;
  padding: 0.375rem 2rem 0.375rem 0.75rem;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  height: calc(1.5em + .75rem + 2px);
  background-clip: padding-box;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23469b7a%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E), linear-gradient(to bottom, #fff 0%, #fff 100%);
  background-repeat: no-repeat, repeat;
  background-position: right 0.7em top 50%, 0 0;
  background-size: 0.65em auto, 100%; }

.wh-orange-text, .wh-orange-text:hover {
  color: #f7941d; }

.btn-mint-outline {
  color: #5eb283;
  background-color: #fff;
  border-color: #5eb283; }

.btn-mint-outline:hover {
  color: #fff;
  background-color: #5eb283;
  border-color: #5eb283; }

.btn-mint-outline:focus {
  box-shadow: 0 0 0 0.2rem rgba(94, 178, 131, 0.25); }

.swal2-confirm {
  background-color: #5eb283 !important; }

.swal2-confirm:focus {
  box-shadow: 0 0 0 3px #5eb283 !important; }

.swal2-loader {
  border-color: #5eb283 transparent #5eb283 transparent !important; }

.lightbox {
  background-color: #000;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  overflow-x: hidden;
  overflow-y: hidden;
  transition: opacity 300ms ease-in-out, transform 300ms ease-in-out;
  transform: scale(0.5);
  opacity: 0;
  pointer-events: none; }
  .lightbox .carousel-wrapper {
    max-width: 1148px;
    height: 100%;
    margin: auto;
    padding: 0 1.5rem; }
    @media screen and (max-width: 1148px) {
      .lightbox .carousel-wrapper {
        padding: 0; } }
  .lightbox .carousel-photo {
    max-width: 100%;
    max-height: 100%;
    height: auto; }
  .lightbox .scroll-left {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 5%; }
  .lightbox .scroll-right {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 5%; }
  .lightbox .lb-close {
    position: absolute;
    top: 3%;
    right: 3%;
    color: #fff;
    font-size: 1.5rem; }
  .lightbox .lb-close:focus {
    color: #5a5a5a;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); }

.lightbox-show {
  opacity: 1;
  transform: scale(1);
  pointer-events: all;
  transition: transform 300ms cubic-bezier(0.165, 0.84, 0.44, 1); }

.lock-scroll {
  overflow-y: hidden; }

.breadcrumb-container .breadcrumb-link {
  color: #5a5a5a; }
.breadcrumb-container .breadcrumb-icon {
  font-size: 0.75rem;
  margin: 0 0.25rem; }

.booking_bar {
  min-height: 74px; }
  .booking_bar .labelled_input {
    background-color: #FFF;
    color: #414141;
    text-align: left;
    height: 3.5rem;
    padding: 3px 6px 6px 11px;
    margin-top: 12px;
    border: 1px solid gainsboro;
    border-radius: 5px; }
    @media screen and (min-width: 766px) {
      .booking_bar .labelled_input {
        margin-right: 1rem; } }
    .booking_bar .labelled_input label {
      font-size: 1rem;
      font-weight: 400;
      line-height: 14px;
      margin: 0 0 3px;
      padding: 0;
      cursor: pointer;
      width: 100%; }
    .booking_bar .labelled_input input {
      height: 1.2rem;
      border: 0 solid #000;
      padding: 0;
      margin: 0;
      font-weight: 300;
      font-size: 1rem !important;
      color: #6e6e6e !important;
      cursor: pointer; }
    .booking_bar .labelled_input input:read-only {
      background-color: transparent; }
    .booking_bar .labelled_input input:focus {
      outline: 0px !important;
      -webkit-appearance: none;
      box-shadow: none !important; }
  .booking_bar .search-btn {
    margin-top: 12px;
    font-size: 22px;
    height: 3.5rem; }

.guestDiv {
  border: solid 1px #ccc;
  border-radius: 0.25rem;
  background-color: #FFF;
  padding: 4px 0 6px 11px;
  height: 100%; }
  .guestDiv .guestDropdownHeight {
    line-height: 14px; }
    .guestDiv .guestDropdownHeight .dropdown-toggle::after {
      color: #469b8a !important; }
  .guestDiv .guestDropdownHeight:focus {
    box-shadow: 0 0 0 0.2rem rgba(250, 250, 250, 0); }

.guestNumber {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  display: inline-block;
  width: calc(100% - 40px);
  font-size: 1rem;
  text-align: left;
  color: #6e6e6e; }

.guestNumberBtn {
  padding: 0;
  font-weight: 300;
  text-align: left; }

.drop-box-guests {
  padding: 10px; }
  .drop-box-guests .text-top-m {
    margin-top: 0.4rem; }
  .drop-box-guests .btn-booking-bar,
  .drop-box-guests .btn-booking-bar:focus,
  .drop-box-guests .btn-booking-bar:hover {
    color: #f7941d;
    background: white;
    border: 1px solid #ddd;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); }

.stepper-h1 {
  font-size: 2rem;
  font-weight: 700; }

.booking-summary .noColPadding {
  padding: 0; }
.booking-summary .total-to-pay {
  font-size: 1.5rem;
  color: #5eb283;
  font-weight: 600;
  margin-top: 1.4rem;
  margin-bottom: 1.4rem; }
.booking-summary .booking-number {
  color: #5eb283; }
.booking-summary .h5-stepper {
  font-weight: 600; }
.booking-summary .tandc-click {
  color: #f7941d;
  cursor: pointer; }

.stepper-box-top-title {
  padding: 8px 15px;
  margin-bottom: 14px;
  color: #FFF; }
  .stepper-box-top-title .stepper-header {
    margin: 0 !important;
    font-size: 1.2rem; }

.accom-title-grey {
  background-color: #414141; }

.accom-title-mint {
  background-color: #5eb283; }

.stepper-bot-box {
  padding: 10px 15px 20px; }

.booking-item-stepper {
  background: #fff;
  margin-top: 20px;
  border: 1px solid #ddd; }

.stepper-divider {
  border-top: 1px solid #d1d2d4;
  margin-top: 30px;
  margin-left: 5px;
  margin-right: 5px; }

.stepper-modal-cost {
  margin-left: 15px;
  margin-right: 15px;
  padding-top: 1rem; }

.book-confirmation-page .check-book {
  color: #5eb283;
  font-size: 30px;
  margin-top: 0.5rem;
  margin-bottom: 1rem; }
.book-confirmation-page .thankyou-note {
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 24px;
  margin-bottom: 1.8rem; }
.book-confirmation-page .bookingNumber {
  color: #5eb283;
  margin-bottom: 2rem; }
.book-confirmation-page .email-address {
  font-weight: 700; }

.fullGreen {
  margin: 4rem 0; }
  .fullGreen .expiredInner {
    padding: 10px 0px;
    margin-bottom: 0px;
    font-weight: 400;
    color: #414141; }

.carousel .carousel-item {
  height: 463px; }
.carousel .carousel-icon {
  width: 10px;
  height: 10px;
  border-radius: 100%; }

.cookie-div {
  position: fixed;
  bottom: 0;
  background-color: rgba(95, 173, 122, 0.96);
  width: 100%;
  z-index: 3000;
  padding: 1.5rem; }
  .cookie-div .inner-cookie-header {
    color: #FFF; }
  .cookie-div .inner-cookie-text {
    color: #FFF !important;
    font-weight: 300;
    line-height: 1.4rem; }
  .cookie-div .cookie-link {
    color: #FFF !important;
    text-decoration: underline; }
  .cookie-div .accept-cookie-btn {
    color: #FFF;
    background-color: transparent;
    border-color: #FFF; }
  .cookie-div .accept-cookie-btn:hover {
    color: #469b8a;
    background-color: #FFF;
    border-color: #FFF; }
  .cookie-div .accept-cookie-btn:focus {
    box-shadow: 0 0 0 0.2rem rgba(70, 155, 138, 0.25); }

.custom-control-input:checked ~ .custom-control-label::before {
  border-color: #5eb283;
  background-color: #5eb283; }

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  background-color: #a3d3b8;
  border-color: #a3d3b8; }

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #e8f4ed; }

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem #e8f4ed; }

.daterangepicker td.active, .daterangepicker td.active:hover {
  background-color: #00634b !important; }

.daterangepicker .btn-primary {
  background-color: #00634b !important;
  border-color: #00634b !important; }

.cancellation-bar, .cancellation-bar:hover {
  color: #969696;
  text-decoration: none; }
  .cancellation-bar .cancellation-banner, .cancellation-bar:hover .cancellation-banner {
    background-color: #f0f0f0;
    padding: 15px 25px;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 1rem;
    border-radius: 5px;
    align-items: center; }
    @media screen and (max-width: 576px) {
      .cancellation-bar .cancellation-banner .icon, .cancellation-bar:hover .cancellation-banner .icon {
        margin-bottom: 0.5rem; } }
    .cancellation-bar .cancellation-banner .chevron, .cancellation-bar:hover .cancellation-banner .chevron {
      height: 1.5em !important;
      width: 1.5em;
      margin-left: 0.4rem;
      margin-bottom: 0.1rem; }
      @media screen and (max-width: 576px) {
        .cancellation-bar .cancellation-banner .chevron, .cancellation-bar:hover .cancellation-banner .chevron {
          height: 1.1em !important;
          margin-left: 0; } }

.footer {
  background: url(/res/images/footer/footer-background-image.svg), linear-gradient(45deg, #007d63, #007d63);
  background-size: 110%;
  background-position: top;
  background-repeat: no-repeat;
  color: #fff !important;
  width: 100%;
  padding: 3.5rem 2rem; }
  @media screen and (max-width: 576px) {
    .footer {
      padding: 3rem 1rem; } }
  .footer .footer-section-heading {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.75rem; }
  .footer .footer-logo {
    width: 152px !important; }
  .footer a {
    color: #ffffffad; }
  .footer .social-media-icon {
    font-size: 2rem; }
  .footer .social-media-icon-container a:hover {
    text-decoration: none;
    color: white; }
  .footer .copyrightText {
    margin: 3.5rem 0 0;
    border-top: 1px solid #ffffff61;
    padding-top: 1.5rem; }

.stepper-panel {
  padding: 0 21px 30px; }
  .stepper-panel .stepper-top-steps {
    padding-top: 1rem;
    margin-bottom: 0.5rem;
    display: flex;
    justify-content: space-between; }
    .stepper-panel .stepper-top-steps .stepper-back-hidden {
      height: 37px;
      width: 35px; }
    .stepper-panel .stepper-top-steps .stepper-step-txt {
      font-weight: 600; }

.stepper-footer {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 100%;
  background-color: #FFF;
  padding: 1rem 1.5rem;
  border-top: 1px solid #ddd;
  z-index: 1000; }
  .stepper-footer .stepper-view-details {
    cursor: pointer; }
  @media screen and (min-width: 1060px) {
    .stepper-footer .footer-big-screen {
      padding: 0 1.5rem; } }
  .stepper-footer .stepper-price-b {
    font-weight: 600; }
  .stepper-footer .stepper-view-details {
    font-weight: 600;
    color: #5eb283; }

.standard-text {
  line-height: 20px;
  margin-top: 1.8rem;
  margin-bottom: 2rem; }

.spaceBottom {
  padding-bottom: 2.5rem; }

.deposit-div {
  margin-bottom: 2rem; }

.select-payment-method {
  margin-top: 2rem; }

.world-pay-icons {
  margin-bottom: 8rem; }
  .world-pay-icons .world-pay-icons-table {
    margin-top: 2rem;
    margin-bottom: 2rem; }

.site-booking-modal .modal {
  padding-right: 0 !important; }
.site-booking-modal .modal-dialog {
  margin: 0 !important;
  min-height: 100vh !important;
  max-width: initial; }
  .site-booking-modal .modal-dialog .modal-content {
    min-height: 100vh !important;
    border-radius: 0;
    border: 0 solid transparent; }
    .site-booking-modal .modal-dialog .modal-content .modal-header {
      border-bottom: 0 solid #FFF; }
.site-booking-modal .wh-modal-close {
  font-size: 36px;
  padding: 1rem 1rem 1rem 21px; }

.wh-inner-tandc {
  border: 1px solid #ccc;
  margin-top: 1.5rem !important;
  margin-bottom: 2.3rem !important;
  max-height: 400px;
  overflow-y: scroll;
  background: #efefef;
  color: #333;
  padding: 10px; }

.news-side-menu {
  padding: 1.56rem 0 3.5rem;
  margin: auto;
  top: 0; }
  .news-side-menu .menu-heading {
    color: #414141;
    font-size: 1rem;
    padding: 0 1.4rem 0 0;
    font-weight: 600; }
  .news-side-menu .menu-link {
    padding: 0.5rem 1.4rem 0.5rem 0rem;
    font-weight: 300; }
    .news-side-menu .menu-link a {
      color: #414141; }
  .news-side-menu .menu-link.active {
    background-color: #5eb283; }
    .news-side-menu .menu-link.active a {
      color: #fff !important; }
  .news-side-menu .menu-category {
    color: #414141;
    font-weight: 600; }
    .news-side-menu .menu-category .category-icon {
      color: #5eb283; }
  .news-side-menu .menu-category:hover {
    text-decoration: none; }

.news-pagination-indicators {
  padding-bottom: 0.5rem; }
  .news-pagination-indicators .page-num {
    color: #414141;
    padding: 0.2rem 0.5rem;
    border: 1px solid gainsboro;
    border-collapse: collapse;
    margin-right: -1px; }
  .news-pagination-indicators .active {
    background-color: #5eb283;
    border-color: #5eb283;
    color: #fff; }

.scrollbox-wrapper {
  position: relative; }
  .scrollbox-wrapper .scrollboxTitle {
    color: #414141;
    padding-bottom: 12px;
    font-weight: 600;
    font-size: 1.5rem; }
  .scrollbox-wrapper .scrollbox {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    /* For WebKit implementations, provide inertia scrolling */
    -webkit-overflow-scrolling: touch;
    /* We don't want internal inline elements to wrap */
    white-space: nowrap;
    flex-wrap: nowrap;
    /* Remove the default scrollbar for WebKit implementations */ }
    .scrollbox-wrapper .scrollbox::-webkit-scrollbar {
      display: none; }
    .scrollbox-wrapper .scrollbox .scrollbox_contents {
      float: left;
      transition: transform 0.2s ease-in-out; }
    .scrollbox-wrapper .scrollbox .scrollbox_contents-no-transition {
      transition: none; }
    .scrollbox-wrapper .scrollbox .scrollContent {
      margin: 5px 8px 0 8px;
      border: 0 solid rgba(250, 250, 250, 0);
      display: inline-flex; }
      @media screen and (max-width: 999px) {
        .scrollbox-wrapper .scrollbox .scrollContent {
          min-width: 300px; } }
      @media screen and (min-width: 1000px) {
        .scrollbox-wrapper .scrollbox .scrollContent {
          min-width: 356px; } }
      .scrollbox-wrapper .scrollbox .scrollContent:last-child {
        margin-right: 0; }
      .scrollbox-wrapper .scrollbox .scrollContent:first-child {
        margin-left: 0; }
      .scrollbox-wrapper .scrollbox .scrollContent .scrollImageInner {
        height: 200px; }
      .scrollbox-wrapper .scrollbox .scrollContent .scrollTitle {
        font-weight: 500;
        font-size: 1.2rem;
        padding: 10px 10px 11px 0;
        white-space: normal; }
        .scrollbox-wrapper .scrollbox .scrollContent .scrollTitle .titleLink {
          color: #469b8a;
          font-size: 20px; }
        .scrollbox-wrapper .scrollbox .scrollContent .scrollTitle .location-scroll {
          font-size: 16px;
          font-weight: 400;
          color: #414141;
          text-transform: capitalize; }
      .scrollbox-wrapper .scrollbox .scrollContent .carousel-indicators li {
        width: 8px;
        height: 8px;
        border-radius: 100%; }
  .scrollbox-wrapper .scroll-control-btn {
    position: absolute;
    border-radius: 50%;
    height: 32px;
    width: 32px;
    padding: 0;
    background-color: #5fad7a;
    color: #FFF;
    top: 107px; }
  @media screen and (max-width: 600px) {
    .scrollbox-wrapper .scroll-control-btn-hide {
      display: none; } }
  .scrollbox-wrapper .scroll-control-btn:hover {
    color: #FFF;
    background-color: #4ead9a; }
  .scrollbox-wrapper .scroll-control-btn:focus {
    box-shadow: 0 0 0 0.2rem rgba(70, 155, 138, 0.25); }
  .scrollbox-wrapper .scroll-control-btn-right {
    right: -16px; }
  .scrollbox-wrapper .scroll-control-btn-left {
    left: -16px; }
  .scrollbox-wrapper .pn-Advancer {
    /* Reset the button */
    height: 100%;
    padding: 0;
    border: 0;
    /* Now style it as needed */
    top: 0;
    bottom: 0;
    /* Set the buttons invisible by default */
    opacity: 0.5; }
    .scrollbox-wrapper .pn-Advancer:focus {
      outline: 0; }
  .scrollbox-wrapper .pn-Advancer_hidden {
    opacity: 0.0; }
  .scrollbox-wrapper .scroll-card-image-cover {
    background-size: cover;
    background-position: center;
    height: 100%;
    min-height: 246px;
    max-width: 100%;
    border-radius: .6rem; }

.scrollcard-wrapper {
  position: relative; }
  .scrollcard-wrapper .scrolling-cards {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-overflow-scrolling: touch;
    flex-wrap: nowrap; }
    .scrollcard-wrapper .scrolling-cards::-webkit-scrollbar {
      display: none; }
    .scrollcard-wrapper .scrolling-cards .scrolling-cards_contents {
      float: left;
      transition: transform 0.2s ease-in-out; }
    .scrollcard-wrapper .scrolling-cards .scrolling-cards_contents-no-transition {
      transition: none; }
    .scrollcard-wrapper .scrolling-cards .scrolling-card {
      min-width: 312px;
      margin: 5px 16px 0 16px;
      padding: 25px 25px;
      border: 0 solid rgba(250, 250, 250, 0);
      display: inline-flex;
      border-radius: 1rem; }
      .scrollcard-wrapper .scrolling-cards .scrolling-card:last-child {
        margin-right: 0; }
      .scrollcard-wrapper .scrolling-cards .scrolling-card:first-child {
        margin-left: 0; }
      .scrollcard-wrapper .scrolling-cards .scrolling-card .carousel-indicators li {
        width: 8px;
        height: 8px;
        border-radius: 100%; }
  .scrollcard-wrapper .scroll-control-btn {
    position: absolute;
    border-radius: 50%;
    height: 32px;
    width: 32px;
    padding: 0;
    background-color: #5fad7a;
    color: #FFF;
    top: 50%; }
  @media screen and (max-width: 600px) {
    .scrollcard-wrapper .scroll-control-btn-hide {
      display: none; } }
  .scrollcard-wrapper .scroll-control-btn:hover {
    color: #FFF;
    background-color: #4ead9a; }
  .scrollcard-wrapper .scroll-control-btn:focus {
    box-shadow: 0 0 0 0.2rem rgba(70, 155, 138, 0.25); }
  .scrollcard-wrapper .scroll-control-btn-right {
    right: -16px; }
  .scrollcard-wrapper .scroll-control-btn-left {
    left: -16px; }
  .scrollcard-wrapper .pn-Advancer_hidden {
    opacity: 0.0; }

.h-spacer-5 {
  margin-bottom: 5rem; }

.super-reg {
  font-size: 50%;
  position: relative;
  bottom: 0.5em;
  font-weight: 300; }

.text-wh-orange, .text-wh-orange:hover {
  color: #f7941d; }

.text-wh-mint, .text-wh-mint:hover {
  color: #5eb283; }

.toggle-checkbox {
  line-height: 26px; }
  .toggle-checkbox input[type=checkbox] {
    opacity: 0;
    position: absolute; }
    .toggle-checkbox input[type=checkbox] + label {
      position: relative;
      display: inline-block;
      transition: 0.4s ease;
      -webkit-transition: 0.4s ease;
      -moz-transition: 0.4s ease;
      -o-transition: 0.4s ease;
      -ms-transition: 0.4s ease;
      height: 26px;
      width: 43px;
      border: 1px solid #f0f0f0;
      border-radius: 52px;
      cursor: pointer;
      margin-bottom: 0; }
      .toggle-checkbox input[type=checkbox] + label:before {
        content: "";
        position: absolute;
        display: block;
        transition: 0.2s cubic-bezier(0.24, 0, 0.5, 1);
        -webkit-transition: 0.2s cubic-bezier(0.24, 0, 0.5, 1);
        -moz-transition: 0.2s cubic-bezier(0.24, 0, 0.5, 1);
        -o-transition: 0.2s cubic-bezier(0.24, 0, 0.5, 1);
        -ms-transition: 0.2s cubic-bezier(0.24, 0, 0.5, 1);
        height: 26px;
        width: 43px;
        top: 0;
        left: 0;
        border-radius: 52px; }
      .toggle-checkbox input[type=checkbox] + label:after {
        content: "";
        position: absolute;
        display: block;
        box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 4px 0px 0 rgba(0, 0, 0, 0.04), 0 4px 9px rgba(0, 0, 0, 0.13), 0 3px 3px rgba(0, 0, 0, 0.05);
        transition: 0.35s cubic-bezier(0.54, 1.6, 0.5, 1);
        -webkit-transition: 0.35s cubic-bezier(0.54, 1.6, 0.5, 1);
        -moz-transition: 0.35s cubic-bezier(0.54, 1.6, 0.5, 1);
        -o-transition: 0.35s cubic-bezier(0.54, 1.6, 0.5, 1);
        -ms-transition: 0.35s cubic-bezier(0.54, 1.6, 0.5, 1);
        background: #f7f7f7;
        height: 24px;
        width: 24px;
        top: 0px;
        left: 0px;
        border-radius: 52px; }
    .toggle-checkbox input[type=checkbox]:checked + label:before {
      background: #5eb283;
      transition: width 0.2s cubic-bezier(0, 0, 0, 0.1);
      -webkit-transition: width 0.2s cubic-bezier(0, 0, 0, 0.1);
      -moz-transition: width 0.2s cubic-bezier(0, 0, 0, 0.1);
      -o-transition: width 0.2s cubic-bezier(0, 0, 0, 0.1);
      -ms-transition: width 0.2s cubic-bezier(0, 0, 0, 0.1); }
    .toggle-checkbox input[type=checkbox]:checked + label:after {
      left: 20px; }
  .toggle-checkbox.toggle-sm {
    line-height: 20px; }
    .toggle-checkbox.toggle-sm input[type=checkbox] + label {
      height: 20px;
      width: 35px; }
      .toggle-checkbox.toggle-sm input[type=checkbox] + label:before {
        height: 20px;
        width: 35px; }
      .toggle-checkbox.toggle-sm input[type=checkbox] + label:after {
        height: 19px;
        width: 19px; }
    .toggle-checkbox.toggle-sm input[type=checkbox]:checked + label:after {
      left: 16px; }

.checkbox-inline {
  margin-right: 0.8rem;
  margin-top: 0px;
  display: inline-block; }

.stepper-logo-top {
  background-color: #00634b;
  padding: 0.25rem 1rem; }
  .stepper-logo-top .stepper-inner {
    margin: 0 auto; }
  .stepper-logo-top .u_logo_size-stepper img {
    width: 100%; }

.nav-bar {
  background-color: #00634b;
  top: 0;
  left: 0;
  right: 0; }
  .nav-bar .navbar {
    padding-top: 0;
    padding-bottom: 0; }
    .nav-bar .navbar .has-megamenu {
      position: static !important; }
    .nav-bar .navbar .megamenu {
      width: 100vw;
      position: absolute;
      left: 50%;
      right: 50%;
      top: 50px;
      margin-left: -50vw;
      margin-right: -50vw;
      height: 300px;
      padding: 0px 0px;
      border-radius: 0 !important;
      box-shadow: none;
      background-color: #FFF;
      -webkit-box-shadow: none; }
      .nav-bar .navbar .megamenu .list-heading {
        list-style: none !important;
        padding-bottom: 0.8rem;
        background-color: #FFF;
        color: #414141;
        font-size: 1.25rem;
        font-weight: 400; }
      .nav-bar .navbar .megamenu .list-item {
        list-style: none;
        padding: 0;
        margin: 0;
        background-color: #FFF; }
      .nav-bar .navbar .megamenu .list-link {
        padding: 0px;
        text-decoration: none;
        font-size: 1rem;
        color: #818181;
        display: block;
        transition: 0.3s;
        color: #5a5a5a;
        font-weight: 300;
        line-height: 1.5rem; }
    .nav-bar .navbar .nav-link {
      padding-top: 1rem;
      padding-bottom: 1rem; }
    .nav-bar .navbar .top-links {
      font-size: .875rem;
      padding-right: 1rem;
      padding-left: 1rem; }
    .nav-bar .navbar .custom-carrot::after {
      color: #f7941d;
      border-top: .5em solid;
      border-right: .4em solid transparent;
      border-bottom: 0;
      border-left: .4em solid transparent; }
    .nav-bar .navbar .search-megamenu {
      width: 100vw;
      position: absolute;
      left: 50%;
      right: 50%;
      top: 50px;
      margin-left: -50vw;
      margin-right: -50vw;
      height: 60px;
      padding: 0px 0px;
      box-shadow: none;
      background-color: #FFF;
      -webkit-box-shadow: none; }
      .nav-bar .navbar .search-megamenu .search-box:focus {
        border-color: #5eb283;
        box-shadow: 0 0 0 0.2rem rgba(94, 178, 131, 0.25); }
  .nav-bar .nav-link {
    color: #FFF;
    position: relative; }
  .nav-bar .nav-link:hover {
    color: #f7941d; }
  .nav-bar .mobile-logo {
    max-width: 68%; }

@media screen and (min-width: 768px) {
  .nav-bar {
    background-repeat: repeat-x;
    background-position: top center;
    height: 53px; }

  .mobile-logo {
    display: none; } }
@media screen and (max-width: 767px) {
  .nav-bar {
    position: relative;
    height: 60px; }

  .navbar-toggler {
    color: #FFF; }

  .navbar {
    padding: 0.25rem 1rem !important; } }
#sidebar {
  width: 300px;
  position: fixed;
  top: 0;
  left: -300px;
  height: 100vh;
  z-index: 4500;
  background: #FFF;
  color: #414141;
  transition: all 0.3s;
  overflow-y: scroll;
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2); }
  #sidebar #dismiss {
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    background: #FFF;
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
  #sidebar #dismiss:hover {
    background: #fff;
    color: gainsboro; }
  #sidebar .sidebar-header {
    padding: 30px;
    background: #FFF; }
  #sidebar ul.components {
    padding: 4rem 0 20px; }
  #sidebar ul p {
    color: #fff;
    padding: 10px; }
  #sidebar ul li a {
    padding: 1rem 10px 1rem 0;
    display: block; }
  #sidebar ul li a:hover {
    color: #414141;
    background: #fff;
    text-decoration: none; }
  #sidebar ul li.active > a,
  #sidebar a[aria-expanded="true"] {
    border-bottom: 1px solid rgba(220, 220, 220, 0) !important; }
  #sidebar .sidebar-inner:focus {
    outline: none; }
  #sidebar .sidebar-inner .sidebar-links-title {
    padding-top: 21px !important;
    padding-bottom: 21px !important;
    font-weight: 500; }
    #sidebar .sidebar-inner .sidebar-links-title .inner-chevron {
      transition: .5s; }
  #sidebar .sidebar-inner .sidebar-links {
    color: #414141;
    border-bottom: 1px solid gainsboro;
    margin-right: 10px;
    flex: 1; }
  #sidebar .sidebar-inner .sidebar-links.active {
    color: #67bb89; }

#sidebar.active {
  left: 0; }

.logo-bar__img {
  position: absolute;
  width: 380px;
  height: 80px;
  top: 20px;
  z-index: 2; }
  .logo-bar__img img {
    height: 70px; }
.logo-bar .logo-bar-link {
  height: 40px;
  right: 0;
  bottom: 5px;
  border-radius: 3px;
  color: #FFF;
  font-size: 0.875rem;
  line-height: 40px;
  height: 50px;
  padding: 12px 12px 14px 12px; }
.logo-bar .logo-bar-button {
  height: 40px;
  right: 0;
  bottom: 5px;
  color: #f0f0f0; }
  .logo-bar .logo-bar-button a {
    border-radius: 3px;
    background-color: rgba(56, 160, 120, 0.4);
    color: #FFF;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 40px;
    height: 50px;
    padding: 12px 12px 14px 12px; }
    .logo-bar .logo-bar-button a img:first-child {
      padding-right: 11px;
      padding-bottom: 2px; }
    .logo-bar .logo-bar-button a img:last-child {
      padding-left: 11px;
      padding-bottom: 2px; }
  .logo-bar .logo-bar-button a:hover {
    text-decoration: none;
    color: #f0f0f0; }
  .logo-bar .logo-bar-button a:hover {
    background-color: rgba(75, 192, 147, 0.4); }

@media screen and (max-width: 767px) {
  .logo-bar {
    height: 0px; }
    .logo-bar .logo-bar-div {
      display: none; } }
@media screen and (min-width: 768px) {
  .logo-bar {
    background: #00634b;
    height: 60px;
    width: 100%; }
    .logo-bar .logo-bar-div {
      position: relative;
      width: 100%;
      height: 100%; } }
@media screen and (max-width: 767px) {
  .logo-bar {
    height: 0px; }
    .logo-bar > div {
      display: none; } }
.site-logo-bar {
  background: #00634b;
  width: 100%; }
  .site-logo-bar .site-logo {
    height: 60px;
    margin-top: 1rem;
    margin-bottom: 1rem; }
    @media screen and (max-width: 767px) {
      .site-logo-bar .site-logo {
        height: 50px;
        margin-top: 0.3rem;
        margin-bottom: 0.3rem; } }
  .site-logo-bar .nav-toggle-container {
    display: none; }
    @media screen and (max-width: 767px) {
      .site-logo-bar .nav-toggle-container {
        display: flex; } }
    .site-logo-bar .nav-toggle-container .nav-toggle {
      padding: 0.25rem 0.75rem;
      font-size: 1.25rem;
      line-height: 1;
      background-color: transparent;
      border: 1px solid transparent;
      border-radius: 0.25rem;
      color: #fff; }
  .site-logo-bar .link-button-container .link-button {
    background-color: #5eb283;
    border-radius: 5rem;
    display: inline-block;
    font-weight: 400;
    color: #fff;
    text-align: center;
    padding: 0.6rem 1.75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 5rem; }
    @media screen and (max-width: 767px) {
      .site-logo-bar .link-button-container .link-button {
        display: none !important; } }

.error-page .error-header {
  font-size: 5rem;
  font-weight: 600;
  margin-bottom: 1rem; }
.error-page .error-subheader {
  font-weight: 300;
  margin-bottom: 2rem; }
.error-page .error-links, .error-page .error-links:hover {
  font-weight: 300;
  color: #f7941d; }

.become-a-partner {
  background-color: #f0f0f0;
  min-height: 709px; }
  .become-a-partner .join-banner {
    position: relative;
    min-height: 400px;
    background: url(/res/images/become-a-partner/become-a-partner-join-background-image.svg) no-repeat center center/cover, linear-gradient(45deg, #007d63, #67bb89); }
    @media screen and (max-width: 850px) {
      .become-a-partner .join-banner {
        min-height: 400px; } }
    .become-a-partner .join-banner .top-text {
      color: white;
      max-width: 285px;
      margin-top: auto;
      margin-bottom: auto; }
      @media screen and (max-width: 850px) {
        .become-a-partner .join-banner .top-text {
          padding-top: 1.5rem; } }
      .become-a-partner .join-banner .top-text .main-text {
        font-size: 7rem;
        font-weight: 800;
        display: block; }
      .become-a-partner .join-banner .top-text .sub-text {
        font-size: 1.5rem;
        font-weight: 400;
        line-height: 1.8rem;
        padding-bottom: 7rem;
        display: block; }
        @media screen and (max-width: 850px) {
          .become-a-partner .join-banner .top-text .sub-text {
            padding-bottom: 0rem; } }
    @media screen and (max-width: 850px) {
      .become-a-partner .join-banner .top-image-col {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    .become-a-partner .join-banner .top-image {
      width: 100%;
      height: auto;
      padding-top: 93px; }
      @media screen and (max-width: 850px) {
        .become-a-partner .join-banner .top-image {
          padding-top: 0; } }
  .become-a-partner .image-white-txt {
    color: white;
    width: 75%;
    margin: auto; }
  .become-a-partner .top-div-padding {
    padding-bottom: 6rem;
    padding-top: 6rem; }
  .become-a-partner .our-history-padding {
    padding-top: 6rem; }
  .become-a-partner .our-purpose {
    background: url(/res/images/become-a-partner/become-a-partner-our-purpose-image.jpg) center center/cover;
    min-height: 800px;
    background-position: bottom; }
  .become-a-partner .our-purpose-chevron {
    width: 5rem;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3rem;
    display: block; }
  .become-a-partner .our-why-chevron {
    margin-left: auto;
    margin-right: auto;
    margin-top: 6rem;
    margin-bottom: 18rem;
    display: block;
    max-width: 70%;
    width: 100%;
    height: auto; }
  .become-a-partner .quote-marks {
    height: 3rem;
    width: auto;
    margin-right: auto;
    margin-bottom: 2rem;
    display: block; }
  .become-a-partner .our-history {
    position: relative;
    min-height: 400px;
    background: url(/res/images/become-a-partner/become-a-partner-our-history-background-image.svg), linear-gradient(45deg, #007d63, #67bb89);
    background-size: 250%;
    background-position: top;
    background-repeat: no-repeat; }
    @media screen and (max-width: 850px) {
      .become-a-partner .our-history {
        min-height: 400px; } }
    .become-a-partner .our-history .our-history-image {
      padding-top: 10rem;
      width: 100%;
      height: auto;
      margin-bottom: -15.5%; }
  .become-a-partner .our-why {
    background-image: url(/res/images/become-a-partner/become-a-partner-our-why-image.png);
    background-color: #59a1db;
    background-position: bottom;
    background-repeat: no-repeat;
    min-height: 1000px;
    background-size: 100vw; }
    @media screen and (max-width: 800px) {
      .become-a-partner .our-why {
        background-size: 180vw; } }
    .become-a-partner .our-why .why-subheading {
      font-weight: 500;
      line-height: 1.2;
      font-size: 1.25rem;
      text-align: center;
      margin-bottom: 1.5rem; }
  .become-a-partner .our-offer {
    background: url(/res/images/become-a-partner/become-a-partner-our-offer-background.svg) no-repeat center center/cover, linear-gradient(45deg, #f0f0f0, white); }
    .become-a-partner .our-offer .offer-title {
      color: #6e6e6e;
      margin-bottom: 6rem !important; }
    .become-a-partner .our-offer .offer-img {
      width: 100%;
      height: auto;
      padding: 0rem 4rem 2rem 4rem; }
    .become-a-partner .our-offer .success-img {
      max-width: 300px;
      height: auto;
      display: block;
      margin-left: auto;
      margin-right: auto;
      padding-bottom: 3rem;
      padding-top: 3rem; }
      @media screen and (max-width: 350px) {
        .become-a-partner .our-offer .success-img {
          max-width: 100%; } }
    .become-a-partner .our-offer .offer-list-pre-text {
      text-align: center !important;
      width: 50%;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 5rem;
      margin-top: 5rem; }
    .become-a-partner .our-offer .offer-list {
      font-size: 1rem; }
      .become-a-partner .our-offer .offer-list .offer-row {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
        padding-left: 0.5rem; }
        .become-a-partner .our-offer .offer-list .offer-row .list-icon {
          font-size: 1.5rem;
          color: #5eb283; }
  .become-a-partner .testimonials {
    background: url(/res/images/become-a-partner/become-a-partner-our-history-background-image.svg) no-repeat center center/cover, linear-gradient(45deg, #007d63, #67bb89);
    min-height: 500px; }
    @media screen and (max-width: 400px) {
      .become-a-partner .testimonials .testimonials-heading {
        font-size: 2.3rem; } }
    .become-a-partner .testimonials .quote-icon {
      color: #f7941d;
      font-size: 4rem; }
  .become-a-partner .faq-div {
    padding-bottom: 6rem; }
    .become-a-partner .faq-div .faq-card {
      position: relative;
      display: flex;
      flex-direction: column;
      min-width: 0;
      word-wrap: break-word;
      background-color: white;
      background-clip: border-box;
      border-radius: 0.8rem; }
      .become-a-partner .faq-div .faq-card .faq-header {
        padding: 1.5rem 1.5rem 1.5rem 1.5rem;
        margin-bottom: 0; }
      .become-a-partner .faq-div .faq-card .faq-button {
        font-size: 1.2rem;
        color: #6e6e6e;
        font-weight: 600; }
      .become-a-partner .faq-div .faq-card .faq-button:focus {
        box-shadow: None; }
      .become-a-partner .faq-div .faq-card .faq-chevron {
        color: #f9c761;
        font-size: 1.8rem; }
      .become-a-partner .faq-div .faq-card .faq-card-body {
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
        min-height: 1px;
        padding: 0rem 2.3rem 3rem 2.3rem;
        color: #6e6e6e; }
  .become-a-partner .our-values {
    background-color: white;
    padding-bottom: 4rem; }
    .become-a-partner .our-values .value-img {
      width: 100%;
      height: auto; }
  .become-a-partner .become-a-partner-btn {
    padding: 20px 30px !important;
    border-radius: 0.5rem;
    border-color: #67bb89;
    border-width: 2px;
    color: #67bb89;
    font-size: 1.25rem;
    line-height: 1.6rem; }
  .become-a-partner .become-a-partner-btn:hover {
    background-color: #67bb89;
    color: white; }
  .become-a-partner .our-history-btn {
    color: white;
    padding: 10px 20px !important;
    border-color: white;
    border-radius: 0.4rem;
    font-size: 1.1rem;
    border-width: 2px; }
  .become-a-partner .our-history-btn:hover {
    background-color: white;
    color: #399871; }
  .become-a-partner .our-why-btn {
    color: white;
    padding: 10px 20px !important;
    border-color: white;
    border-radius: 0.4rem;
    font-size: 1.1rem;
    border-width: 2px; }
  .become-a-partner .our-why-btn:hover {
    background-color: white;
    color: #5aa1db; }
  .become-a-partner .btn:focus {
    box-shadow: none !important; }
  .become-a-partner .scrolling-card {
    padding: 2.5rem !important; }
    .become-a-partner .scrolling-card hr {
      border-top: 4px solid #fafafa;
      margin-top: 2rem; }
  .become-a-partner .testimonials-profile-pic {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important; }
  .become-a-partner p {
    color: #6e6e6e; }
  .become-a-partner .section-heading {
    font-size: 3.5rem;
    font-weight: 600;
    margin-bottom: 3rem !important; }
  .become-a-partner .h-spacer-6 {
    margin-top: 6rem; }
  .become-a-partner .blog-title {
    font-weight: 600;
    margin-top: 1rem;
    line-height: 1.4rem;
    color: #414141 !important; }
  .become-a-partner .related-blogs a {
    color: #67bb89; }
  .become-a-partner .related-blogs a:hover {
    color: #67bb89;
    text-decoration: underline; }
  .become-a-partner .grey-110 {
    color: #6e6e6e; }
  .become-a-partner .quote-title {
    margin-top: auto; }

.booking-extras .main-panel {
  padding-bottom: 100px; }
  .booking-extras .main-panel .extras-quantity {
    width: 60%; }
  .booking-extras .main-panel .extra-desc {
    font-weight: 600;
    font-size: 1.1rem; }
  .booking-extras .main-panel .extra-p-spacing {
    margin-bottom: 1.8rem;
    line-height: 20px; }
  .booking-extras .main-panel .extra-price {
    color: #5eb283;
    font-weight: 400;
    line-height: 17px;
    margin-top: 0.2rem;
    margin-bottom: 0.5rem; }
  .booking-extras .main-panel .extra-label {
    margin-bottom: 0.2rem;
    font-weight: 400;
    font-size: 0.9rem; }
.booking-extras .quantity-button {
  padding: 0;
  color: #5eb283;
  font-size: 1.3rem; }
.booking-extras .quantity-display {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  font-weight: 500; }
.booking-extras .quantity-button:focus {
  outline: 0px !important;
  -webkit-appearance: none;
  box-shadow: none !important; }
.booking-extras .extras_display, .booking-extras .collapsing {
  height: 15rem;
  /* [NUM_OF_LINES] x [LINE_HEIGHT] */
  transition: .8s; }
.booking-extras .extras_display {
  position: relative;
  /* For ...'s content absolute positioning */
  display: block;
  overflow: hidden; }
  .booking-extras .extras_display .fade-box {
    position: absolute;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    margin: 0;
    padding: 50px 0; }
.booking-extras .extras_display:before {
  content: ' ...';
  position: absolute;
  right: 0;
  bottom: 0; }
.booking-extras .extras_display.show {
  height: auto; }
  .booking-extras .extras_display.show .fade-box {
    display: none; }
.booking-extras .extras_display.show:before {
  display: none; }
.booking-extras .extracollapsebtn a.collapsed:after {
  content: 'Show More'; }
.booking-extras .extracollapsebtn a:not(.collapsed):after {
  content: 'Show Less'; }
.booking-extras .extraremove {
  padding: 0 0 0 0.8rem;
  font-size: 1.2rem; }

.booking-start {
  padding-bottom: 9rem; }
  .booking-start .start-booking-tabs .nav-tabs .nav-link.active,
  .booking-start .start-booking-tabs .nav-tabs .nav-item.show .nav-link {
    background-color: #FFF;
    border-bottom: 3px solid #f7941d; }
  .booking-start .start-booking-tabs .nav-tabs .nav-link {
    border: 0px; }
  .booking-start .start-booking-tabs .nav-tabs .nav-link.active,
  .booking-start .start-booking-tabs .nav-tabs .nav-item.show .nav-link {
    color: #58595b;
    font-size: 1.125rem; }
  .booking-start .start-booking-tabs .nav-link {
    padding: 0.875rem 2rem; }
  .booking-start .start-booking-tabs .nav-tabs {
    border-bottom: 1px solid #e0e0e0; }
  .booking-start .start-booking-tabs a,
  .booking-start .start-booking-tabs a:hover,
  .booking-start .start-booking-tabs a:focus {
    color: #58595b;
    font-size: 1.125rem; }
  @media screen and (max-width: 576px) {
    .booking-start .start-booking-tabs .nav-link {
      padding: 0.875rem 1rem; } }
  .booking-start .availability-calendar .month-select {
    margin-top: 1.35rem;
    color: #414141;
    display: block;
    font-size: 16px;
    padding: 0.375rem 2rem 0.375rem 0.75rem;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    height: calc(1.5em + .75rem + 2px);
    background-clip: padding-box;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23469b7a%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E), linear-gradient(to bottom, #fff 0%, #fff 100%);
    background-repeat: no-repeat, repeat;
    background-position: right 0.7em top 50%, 0 0;
    background-size: 0.65em auto, 100%; }
  .booking-start .availability-calendar .booked {
    background-color: #ffbe69;
    color: #FFF; }
  .booking-start .availability-calendar .booked:hover {
    background-color: #f7941d; }
  .booking-start .availability-calendar .available {
    background-color: #5eb283;
    color: #FFF; }
  .booking-start .availability-calendar .available:hover {
    background-color: rgba(34, 116, 86, 0.77); }
  .booking-start .availability-calendar .cant-book {
    background: repeating-linear-gradient(45deg, #e0e0e0, #e0e0e0 10px, #c9c8c9 10px, #c9c8c9 17px); }
  .booking-start .availability-calendar .unavailable {
    background-color: transparent;
    color: #58595b; }
  .booking-start .availability-calendar .telephone {
    background: repeating-linear-gradient(45deg, #e0e0e0, #e0e0e0 10px, #c9c8c9 10px, #c9c8c9 17px); }
  .booking-start .availability-calendar .availableminimumstay {
    color: #FFF;
    background: repeating-linear-gradient(45deg, #4fba8c, #4fba8c 10px, #57ce9b 10px, #57ce9b 17px); }
  .booking-start .availability-calendar .availableminimumstay:hover {
    background: repeating-linear-gradient(45deg, rgba(34, 116, 86, 0.77), rgba(34, 116, 86, 0.77) 10px, #62a78e 10px, #62a78e 17px); }
  .booking-start .availability-calendar .closed {
    color: #58595b;
    background-color: #c9c8c9; }
  .booking-start .availability-calendar .closed:hover {
    background-color: #ababab; }
  .booking-start .availability-calendar table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 5px;
    text-align: center;
    margin-top: 1rem;
    margin-bottom: 2rem;
    table-layout: fixed; }
    .booking-start .availability-calendar table th {
      color: #333333;
      padding: 12px 0;
      font-weight: 300; }
    .booking-start .availability-calendar table td {
      padding: 12px 0;
      background-color: #cacaca; }
  .booking-start .availability-calendar .calendar-key .key-row {
    margin-top: 5px;
    margin-bottom: 5px;
    margin-left: 0;
    margin-right: 0; }
  .booking-start .availability-calendar .calendar-key .key-color {
    width: 68px;
    height: 12px;
    margin-right: 14px;
    display: inline-block; }
  .booking-start .unit-type-box {
    margin-top: 20px;
    border: 1px solid #ddd;
    position: relative; }
    .booking-start .unit-type-box .type-header {
      background-color: #5eb283;
      color: #fff;
      padding: 8px 15px; }
      .booking-start .unit-type-box .type-header .type-heading-text {
        font-size: 1.2rem;
        margin: 0; }
    .booking-start .unit-type-box .cabin-icons {
      padding: 15px; }
      .booking-start .unit-type-box .cabin-icons .icon-wrapper {
        padding: 0 9px 5px 0; }
        .booking-start .unit-type-box .cabin-icons .icon-wrapper p {
          margin-bottom: 0;
          font-size: 14px; }
      .booking-start .unit-type-box .cabin-icons .green-icon {
        color: #5eb283;
        padding-right: 5px;
        font-size: 25px; }
      .booking-start .unit-type-box .cabin-icons .green-icon-stacked {
        color: #5eb283;
        padding-right: 5px;
        font-size: 12px; }
      @media screen and (max-width: 576px) {
        .booking-start .unit-type-box .cabin-icons {
          padding: 15px 15px 18px 15px; } }
    .booking-start .unit-type-box .essentials-title {
      padding: 0px 15px;
      font-size: 1rem; }
    @media screen and (max-width: 576px) {
      .booking-start .unit-type-box .essentials-items {
        padding-bottom: 0.8rem !important; } }
    .booking-start .unit-type-box .essentials-container {
      padding: 8px 15px; }
      .booking-start .unit-type-box .essentials-container .deselected-label {
        color: #969696; }
      .booking-start .unit-type-box .essentials-container .quantity-button {
        padding: 0;
        color: #5eb283;
        font-size: 1.3rem; }
      .booking-start .unit-type-box .essentials-container .quantity-button:focus {
        outline: 0px !important;
        -webkit-appearance: none;
        box-shadow: none !important; }
    .booking-start .unit-type-box .collapse-link {
      color: #5eb283; }
    .booking-start .unit-type-box .availability-text {
      color: #f7941d;
      font-weight: 600;
      padding-bottom: 0.5rem;
      font-size: 14px;
      padding-top: 1rem; }
    .booking-start .unit-type-box .offer-text {
      color: #f7941d;
      font-weight: 600;
      padding-bottom: 0.5rem;
      font-size: 14px; }
    .booking-start .unit-type-box .guest-select {
      display: block;
      font-size: 16px;
      padding: 0.375rem 2rem 0.375rem 0.75rem;
      border: 1px solid #ced4da;
      border-radius: 0.25rem;
      height: calc(1.5em + .75rem + 2px);
      background-clip: padding-box;
      -moz-appearance: none;
      -webkit-appearance: none;
      appearance: none;
      background-image: url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23469b7a%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E), linear-gradient(to bottom, #fff 0%, #fff 100%);
      background-repeat: no-repeat, repeat;
      background-position: right 0.7em top 50%, 0 0;
      background-size: 0.65em auto, 100%; }
    .booking-start .unit-type-box .type-box-bottom {
      padding: 10px 15px; }
      .booking-start .unit-type-box .type-box-bottom .booking-info {
        bottom: 20px;
        right: 15px; }
      .booking-start .unit-type-box .type-box-bottom .price-text {
        color: #5eb283;
        font-weight: 600;
        font-size: 1.2rem;
        padding-right: 1rem; }
      .booking-start .unit-type-box .type-box-bottom .telephone-text {
        color: #5eb283;
        font-weight: 600;
        font-size: 1.2rem; }
      .booking-start .unit-type-box .type-box-bottom .collapse:not(.show) {
        display: block;
        height: 25px !important;
        overflow: hidden; }
      .booking-start .unit-type-box .type-box-bottom .collapsing {
        min-height: 25px !important; }
  .booking-start .unavailable-building {
    position: absolute;
    background-color: rgba(255, 255, 255, 0.6);
    height: 100%;
    width: 100%;
    z-index: 500; }
    .booking-start .unavailable-building .building-inner {
      background-color: #979797;
      color: #FFF;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      border-radius: 50%;
      width: 165px;
      height: 165px; }
      .booking-start .unavailable-building .building-inner .inner-text {
        position: relative;
        left: 15%;
        top: 50%;
        transform: translate(0, -50%);
        max-width: 70%;
        max-height: 70%;
        text-align: center; }
        .booking-start .unavailable-building .building-inner .inner-text p {
          margin-bottom: 0.6rem;
          line-height: 20px; }
  .booking-start .quantity-display {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-weight: 500; }
  .booking-start .quantity-button {
    padding: 0;
    color: #5eb283;
    font-size: 1.3rem; }
  .booking-start .quantity-button:focus {
    outline: 0px !important;
    -webkit-appearance: none;
    box-shadow: none !important; }
  .booking-start .essentialquantitybuttons {
    margin-right: 0.5rem; }
  .booking-start .carousel-container {
    background-color: #fafafa; }

.bookonline {
  /* top left*/
  /* The popup bubble styling. */
  /* The parent of the bubble. A zero-height div at the top of the tip. */
  /* This element draws the tip. */
  /* JavaScript will position this div at the bottom of the popup tip. */ }
  .bookonline .bedding-optional {
    background-color: #81c1d0;
    border: 1px solid #81c1d0; }
  .bookonline .bedding-included {
    background-color: #5ec098;
    border: 1px solid #5ec098; }
  .bookonline .bedding-not-provided {
    background-color: #eaaf9c;
    border: 1px solid #eaaf9c; }
  .bookonline .deposit-option {
    background-color: #c1ca94;
    border: 1px solid #c1ca92; }
  .bookonline .hot-tub-included {
    background-color: #5ec098;
    border: 1px solid #5ec098; }
  .bookonline .hot-tub-optional {
    background-color: #81c1d0;
    border: 1px solid #81c1d0; }
  .bookonline .pill-container {
    margin-bottom: auto;
    margin-top: auto; }
    @media screen and (max-width: 768px) {
      .bookonline .pill-container {
        margin-bottom: 1rem;
        margin-top: 0.5rem; } }
  .bookonline .pill {
    color: #ffffff;
    padding-top: 0.1rem;
    padding-bottom: 0.2rem;
    padding-right: 0.45rem;
    padding-left: 0.45rem;
    margin-bottom: 0.4rem;
    font-size: 0.8rem;
    font-weight: 700;
    margin-right: 0.3rem;
    display: inline-block; }
  .bookonline .price-text {
    color: #5eb283;
    margin-top: auto; }
    .bookonline .price-text .from {
      font-size: 1rem;
      font-weight: 500; }
    .bookonline .price-text .price {
      font-size: 1.5rem;
      font-weight: 700; }
  @media screen and (max-width: 767px) {
    .bookonline .list-tabs-desktop {
      position: sticky;
      top: 0;
      left: 0;
      right: 0;
      z-index: 16;
      margin-left: -1.5rem;
      margin-right: -1.5rem; } }
  .bookonline .list-tabs-desktop .nav-tabs .nav-link.active,
  .bookonline .list-tabs-desktop .nav-tabs .nav-item.show .nav-link {
    border-bottom: 3px solid #5eb283; }
    @media screen and (max-width: 767px) {
      .bookonline .list-tabs-desktop .nav-tabs .nav-link.active,
      .bookonline .list-tabs-desktop .nav-tabs .nav-item.show .nav-link {
        background-color: #fff;
        color: #5eb283;
        border: 0; } }
  .bookonline .list-tabs-desktop .nav-tabs .nav-link {
    border: 0px; }
  .bookonline .list-tabs-desktop .nav-tabs .nav-link.active,
  .bookonline .list-tabs-desktop .nav-tabs .nav-item.show .nav-link {
    color: #58595b; }
    @media screen and (max-width: 767px) {
      .bookonline .list-tabs-desktop .nav-tabs .nav-link.active,
      .bookonline .list-tabs-desktop .nav-tabs .nav-item.show .nav-link {
        color: #5eb283; } }
  .bookonline .list-tabs-desktop .nav-link {
    padding: 0.5rem 1rem; }
    @media screen and (max-width: 767px) {
      .bookonline .list-tabs-desktop .nav-link {
        background-color: #5eb283;
        color: #fff;
        border: 0;
        flex: 1 1 auto;
        border-radius: 0;
        text-align: center; } }
  .bookonline .list-tabs-desktop .nav-tabs {
    border-bottom: 1px solid #e0e0e0; }
    @media screen and (max-width: 767px) {
      .bookonline .list-tabs-desktop .nav-tabs {
        border: 0; } }
  .bookonline .list-tabs-desktop a,
  .bookonline .list-tabs-desktop a:hover,
  .bookonline .list-tabs-desktop a:focus {
    color: #58595b;
    font-size: 1.125rem; }
    @media screen and (max-width: 767px) {
      .bookonline .list-tabs-desktop a,
      .bookonline .list-tabs-desktop a:hover,
      .bookonline .list-tabs-desktop a:focus {
        font-size: 16px;
        font-weight: 300;
        color: #fff; } }
  @media screen and (max-width: 576px) {
    .bookonline .list-tabs-desktop .nav-link {
      padding: 0.5rem 1rem; } }
  @media screen and (min-width: 768px) {
    .bookonline .list-column {
      padding-left: 1.5rem !important; } }
  .bookonline .chevron-green {
    color: #5eb283; }
  @media screen and (max-width: 767px) {
    .bookonline .desktop-filters {
      display: none; } }
  .bookonline .desktop-filters .filter-clear-btn {
    padding: 5px 25px; }
  @media screen and (min-width: 768px) {
    .bookonline .mobile-filters {
      display: none; } }
  .bookonline .filter-btns .update-btn {
    background-color: #5eb283;
    border-color: #5eb283;
    color: #FFF; }
  .bookonline .filter-btns .clear-btn {
    background-color: #FFF;
    border-color: #5eb283;
    color: #5eb283; }
  .bookonline .filter-top {
    color: #fff;
    background-color: #5eb283;
    font-weight: 400; }
    .bookonline .filter-top .filter-top-title {
      padding: 0.5rem;
      margin-bottom: 0; }
  .bookonline .filter-heading {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    color: #414141;
    font-weight: 600; }
  .bookonline .filter-heading:hover {
    text-decoration: none; }
  .bookonline .filter-body {
    padding: 0.3rem 0 0.75rem; }
  .bookonline .filter-entry {
    font-size: 16px;
    font-weight: 300; }
  .bookonline .booking-bar-desktop {
    padding-top: 2rem; }
    @media screen and (max-width: 767px) {
      .bookonline .booking-bar-desktop {
        display: none; } }
  @media screen and (max-width: 768px) {
    .bookonline .map-container {
      margin-left: -1.5rem;
      margin-right: -1.5rem;
      margin-top: 0rem !important; } }
  .bookonline .booking-bar-mobile {
    padding-bottom: 1rem; }
    @media screen and (min-width: 768px) {
      .bookonline .booking-bar-mobile {
        display: none; } }
    .bookonline .booking-bar-mobile .search-input {
      padding: 1rem 0 0; }
      .bookonline .booking-bar-mobile .search-input .form-control {
        padding: 1.8rem 1rem !important;
        font-size: 1.1rem; }
      .bookonline .booking-bar-mobile .search-input .mobile_search_btn {
        font-size: 1.25rem;
        padding-right: 1rem; }
      .bookonline .booking-bar-mobile .search-input .searchInput {
        border-bottom-left-radius: 0;
        border-right-color: transparent; }
        .bookonline .booking-bar-mobile .search-input .searchInput:focus {
          border-color: #ced4da;
          box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0); }
      .bookonline .booking-bar-mobile .search-input .btnInput {
        border-bottom-right-radius: 0;
        color: #469b8a;
        background-color: #fff;
        border-color: #ced4da;
        border-left-color: transparent; }
        .bookonline .booking-bar-mobile .search-input .btnInput:focus {
          box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0); }
    .bookonline .booking-bar-mobile .mobile-summary {
      border-top: none;
      background-color: gainsboro;
      border-top-right-radius: 0;
      border-top-left-radius: 0;
      text-overflow: ellipsis;
      white-space: nowrap;
      display: inline-block;
      overflow: hidden;
      width: 100%;
      cursor: pointer;
      text-align: left; }
      .bookonline .booking-bar-mobile .mobile-summary:focus {
        border-color: #ced4da;
        box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0); }
      .bookonline .booking-bar-mobile .mobile-summary .booking-btns {
        color: #469b8a; }
    .bookonline .booking-bar-mobile .mobile-summary:focus {
      outline: 0px; }
  .bookonline .mobile-modal .labelled-input {
    background-color: #FFF;
    color: #414141;
    text-align: left;
    height: 3.5rem;
    padding: 3px 6px 6px 11px;
    margin-top: 12px;
    border: 1px solid gainsboro;
    border-radius: 5px; }
    @media screen and (min-width: 766px) {
      .bookonline .mobile-modal .labelled-input {
        margin-right: 1rem; } }
    .bookonline .mobile-modal .labelled-input label {
      font-size: 1rem;
      font-weight: 400;
      line-height: 14px;
      margin: 0 0 3px;
      padding: 0; }
    .bookonline .mobile-modal .labelled-input input {
      height: 1.2rem;
      border: 0 solid #000;
      padding: 0;
      margin: 0;
      font-weight: 300; }
    .bookonline .mobile-modal .labelled-input input:read-only {
      background-color: transparent; }
    .bookonline .mobile-modal .labelled-input input:focus {
      outline: 0px !important;
      -webkit-appearance: none;
      box-shadow: none !important; }
  .bookonline .mobile-modal .text-top-m {
    margin-top: 0.4rem; }
  .bookonline .mobile-modal .btn-guest-number {
    color: #5eb283;
    background: white;
    border: 1px solid #ddd;
    box-shadow: rgba(0, 0, 0, 0); }
  .bookonline .property-card-container {
    border-radius: 0.7rem !important; }
    .bookonline .property-card-container .carousel-item {
      height: 282px !important; }
    .bookonline .property-card-container .carousel-control-btn {
      z-index: 11; }
    .bookonline .property-card-container .property-list-card {
      background-color: #fff; }
      @media screen and (max-width: 768px) {
        .bookonline .property-card-container .property-list-card {
          border-bottom-left-radius: 0.3rem;
          border-bottom-right-radius: 0.3rem; } }
      .bookonline .property-card-container .property-list-card .property-card-link {
        color: #5eb283;
        text-decoration: none; }
      .bookonline .property-card-container .property-list-card .property-header {
        font-weight: 500;
        line-height: 1.8rem;
        color: #5eb283;
        font-size: 1.8rem !important; }
      .bookonline .property-card-container .property-list-card .property-header:hover {
        text-decoration: underline; }
      .bookonline .property-card-container .property-list-card .location-text {
        font-size: 0.8rem;
        font-weight: 500;
        color: #5a5a5a;
        line-height: 1.2;
        margin-bottom: 0; }
      .bookonline .property-card-container .property-list-card .distance-text {
        background-color: #f0f0f0;
        color: #5a5a5a;
        padding: 5px;
        margin-top: .8rem;
        margin-bottom: 0;
        font-weight: 300;
        font-size: 80%; }
      .bookonline .property-card-container .property-list-card .facility-icons {
        color: #5eb283;
        font-size: 1.4rem;
        margin-bottom: 0.6rem;
        padding-top: 0.5rem;
        margin-top: auto; }
      .bookonline .property-card-container .property-list-card .price-info-2 {
        color: #414141;
        width: 50%;
        font-size: 0.8rem;
        line-height: 1rem;
        margin-bottom: 0.55rem;
        margin-top: auto;
        padding-right: 0.5rem; }
      .bookonline .property-card-container .property-list-card .price-container {
        justify-content: space-between; }
      .bookonline .property-card-container .property-list-card .telephone_only-container .telephone-only-text {
        font-size: 1rem;
        font-weight: 500; }
      .bookonline .property-card-container .property-list-card .telephone_only-container .telephone-only-symbol {
        font-size: 1.5rem;
        margin-left: 0.5rem; }
    .bookonline .property-card-container .card-body {
      height: 100%;
      padding: 1.4rem 1.8rem 1.8rem 1.8rem; }
      @media screen and (max-width: 768px) {
        .bookonline .property-card-container .card-body {
          padding: 1.8rem; } }
    .bookonline .property-card-container .card-right-chevron {
      background-color: #5eb283;
      color: #FFF;
      border-top-right-radius: 0.6rem;
      border-bottom-right-radius: 0.6rem; }
      .bookonline .property-card-container .card-right-chevron:hover {
        color: #FFF;
        text-decoration: none;
        background-color: #4ead9a; }
      .bookonline .property-card-container .card-right-chevron .inner {
        padding: 0 5px; }
  .bookonline .offer-box {
    background-color: #5eb283;
    color: #fff; }
    .bookonline .offer-box h2 {
      font-size: 1.2rem;
      font-weight: 700 !important; }
    .bookonline .offer-box p {
      margin-top: 0;
      margin-bottom: 1rem; }
    .bookonline .offer-box a, .bookonline .offer-box a:hover {
      color: #fff; }
  .bookonline .overlay-icons {
    top: 20px;
    right: 20px;
    position: absolute;
    z-index: 12;
    height: 2.1rem; }
  .bookonline .ribbon {
    width: 170px;
    height: 170px;
    overflow: hidden;
    position: absolute; }
  .bookonline .ribbon span {
    position: absolute;
    display: block;
    width: 265px;
    padding: 10px 0;
    background-color: #5eb283;
    color: #fff;
    font: 700 14px/1 "Lato", sans-serif;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
    text-transform: uppercase;
    text-align: center; }
  .bookonline .ribbon-top-left {
    top: 0;
    left: 0;
    z-index: 10; }
  .bookonline .ribbon-top-left span {
    right: -3px;
    top: 18px;
    transform: rotate(-45deg); }
  .bookonline .page-header {
    width: 100%;
    height: 300px;
    background: url(/res/images/become-a-partner/become-a-partner-our-history-background-image.svg) no-repeat center center/cover, linear-gradient(45deg, #007d63, #5fae7a);
    text-transform: capitalize;
    background-size: 200%;
    background-position: top;
    background-repeat: no-repeat; }
    .bookonline .page-header .page-heading {
      color: #fff;
      align-self: center !important; }
    .bookonline .page-header .page-subheading {
      font-size: 1.8rem;
      color: #fff;
      margin-bottom: 0;
      font-weight: 300; }
  .bookonline .location-header {
    width: 100%;
    height: 400px;
    background-color: #5eb283;
    background-size: cover;
    background-position: center center;
    max-width: none;
    text-transform: capitalize; }
    .bookonline .location-header .location-heading {
      color: #fff;
      align-self: center !important; }
    .bookonline .location-header .location-subheading {
      font-size: 2.25rem;
      color: #fff;
      margin-bottom: 0;
      font-weight: 300; }
  .bookonline .lower-page-text {
    background-color: #fff;
    margin-bottom: 6rem; }
    .bookonline .lower-page-text img {
      max-width: 100%;
      padding-bottom: 1rem; }
    .bookonline .lower-page-text a, .bookonline .lower-page-text a:hover {
      color: #f7941d; }
    .bookonline .lower-page-text h2 {
      font-size: 1.5rem !important; }
    .bookonline .lower-page-text h3 {
      font-size: 1.5rem !important;
      margin-top: 3.5rem;
      margin-bottom: 1rem;
      font-weight: 700; }
    .bookonline .lower-page-text h4 {
      margin-top: 4rem;
      margin-bottom: 1rem;
      font-weight: 700; }
  .bookonline .location-caption .caption-link {
    color: #fff; }
  .bookonline .location-caption .caption-link:hover {
    color: #fff; }
  .bookonline .location-caption .caption-title {
    padding: 0.75rem 1.25rem;
    background-color: #5eb283;
    font-size: 1.15rem; }
  .bookonline .location-caption .card-image-cover-tall {
    background-size: cover;
    background-position: center;
    height: 100%;
    min-height: 300px;
    max-width: 100%; }
    @media screen and (max-width: 576px) {
      .bookonline .location-caption .card-image-cover-tall {
        min-height: 250px; } }
    .bookonline .location-caption .card-image-cover-tall .overlay-centered-text {
      color: #FFF;
      font-weight: bold;
      line-height: 1.4rem;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      text-transform: capitalize;
      text-align: center;
      font-size: 1.2rem; }
  .bookonline .cluster_map {
    height: 80vh;
    width: 100%; }
  .bookonline .map-pop-up .popup-image-top {
    width: 100%;
    height: auto; }
  .bookonline .map-pop-up .popup-btn-close {
    position: absolute;
    top: 0;
    right: 0;
    color: #FFF; }
  .bookonline .map-pop-up .popup-card {
    display: block;
    padding: 1.4rem; }
    .bookonline .map-pop-up .popup-card p {
      margin-bottom: 0 !important; }
    .bookonline .map-pop-up .popup-card .popup-sitename {
      color: #5eb283;
      padding-bottom: 0.6rem;
      font-size: 1.5rem; }
    .bookonline .map-pop-up .popup-card .popup-icons {
      color: #5eb283;
      font-size: 1.2rem;
      padding-bottom: 0.8rem; }
    .bookonline .map-pop-up .popup-card .popup-location {
      color: #5a5a5a;
      text-transform: capitalize;
      font-size: 0.8rem;
      margin-bottom: 1rem !important; }
    .bookonline .map-pop-up .popup-card .popup-price-text {
      color: #5eb283;
      font-size: 1.2rem;
      text-align: right !important; }
  .bookonline .popup-bubble {
    /* Position the bubble centred-above its parent. */
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-50%, -100%);
    /* Style the bubble. */
    min-height: 160px;
    background-color: white;
    font-family: Lato !important;
    overflow-y: auto;
    box-shadow: 0 2px 10px 1px rgba(0, 0, 0, 0.5); }
  .bookonline .popup-bubble-anchor {
    /* Position the div a fixed distance above the tip. */
    position: absolute;
    width: 100%;
    /* TIP_HEIGHT= */
    bottom: 25px;
    left: 0; }
  .bookonline .popup-bubble-anchor::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    /* Center the tip horizontally. */
    transform: translate(-50%, 0);
    /* The tip is a https://css-tricks.com/snippets/css/css-triangle/ */
    width: 0;
    height: 0;
    /* The tip is 8px high, and 12px wide. */
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    /* TIP_HEIGHT= */
    border-top: 8px solid white; }
  .bookonline .popup-container {
    cursor: auto;
    height: 0;
    position: absolute;
    /* The max width of the info window. */
    width: 283px; }
  .bookonline .location-caption-title h2 {
    color: #414141;
    padding-bottom: 12px;
    font-weight: 600;
    font-size: 1.5rem; }
  .bookonline .location-caption {
    margin-left: -0.5rem !important;
    margin-right: -0.5rem !important; }
  .bookonline .bookonline-carousel-inner {
    border-top-left-radius: 0.6rem;
    border-bottom-left-radius: 0.6rem; }
    @media screen and (max-width: 768px) {
      .bookonline .bookonline-carousel-inner {
        border-top-left-radius: 0.6rem;
        border-bottom-left-radius: 0rem;
        border-top-right-radius: 0.6rem; } }
  .bookonline .price-info {
    margin-right: auto;
    margin-bottom: 1.5rem;
    margin-top: 1rem; }
    .bookonline .price-info p {
      margin-bottom: 0 !important; }
    @media screen and (max-width: 576px) {
      .bookonline .price-info {
        width: 70%;
        line-height: 1.3rem;
        text-indent: -0.4rem;
        padding-left: 0.4rem; } }
  .bookonline .modal-dates-guests {
    display: flex;
    flex-direction: column; }
  .bookonline .mobile-modal-btn {
    height: 50px; }
  .bookonline .close-custom {
    font-size: 2.25rem; }

.customer-details .details-form {
  margin-bottom: 5rem; }
.customer-details .error {
  border-color: red; }

.homepage .feefo-review-widget-product {
  margin-bottom: 6rem; }
.homepage .section-title {
  color: #414141;
  padding-bottom: 12px;
  font-weight: 600;
  font-size: 1.5rem; }
.homepage .our-story-title {
  color: #414141;
  padding-bottom: 12px;
  margin-top: 1rem;
  font-weight: 600;
  font-size: 1.5rem; }
.homepage .caption-container {
  margin-bottom: 6rem; }
.homepage .caption-margin {
  margin-left: -0.5rem;
  margin-right: -0.5rem; }
.homepage .rounded-8 {
  border-radius: 0.8rem; }
.homepage .homepage-text {
  font-family: Lato !important;
  margin-left: 8%;
  margin-right: 8%;
  padding-top: 4rem; }
  .homepage .homepage-text .homepage-heading {
    font-size: 2.6rem;
    font-weight: 500; }
  .homepage .homepage-text .homepage-splash-text {
    font-size: 1.25rem;
    font-weight: 300;
    margin-bottom: 5rem; }
@media screen and (max-width: 768px) {
  .homepage .voucher-flash {
    display: none; } }
.homepage .voucher-flash .voucher-roundel {
  width: 150px;
  height: 150px; }
.homepage .voucher-bar {
  height: 60px;
  color: white;
  padding-top: 12px;
  font-size: 1.4rem;
  font-weight: 600;
  background-color: #5eb283; }
  @media screen and (min-width: 768px) {
    .homepage .voucher-bar {
      display: none; } }
  .homepage .voucher-bar .voucher-bar-content {
    display: inline-flex; }
  .homepage .voucher-bar .voucher-icon {
    margin-top: 5px;
    margin-left: 20px;
    margin-right: 20px; }
.homepage .voucher-flash-container {
  padding-bottom: 4rem;
  padding-right: 1rem;
  display: flex;
  justify-content: end; }
.homepage .feefo-logo-container {
  padding-bottom: 8rem;
  padding-right: 1rem;
  display: flex;
  justify-content: end; }
  @media screen and (max-width: 1040px) {
    .homepage .feefo-logo-container {
      padding-bottom: 23rem; } }
  @media screen and (max-width: 767px) {
    .homepage .feefo-logo-container {
      padding-bottom: 17rem;
      padding-right: 6rem; } }
  @media screen and (max-width: 680px) {
    .homepage .feefo-logo-container {
      padding-right: 5rem; } }
  @media screen and (max-width: 576px) {
    .homepage .feefo-logo-container {
      padding-right: 3rem; } }
  @media screen and (max-width: 470px) {
    .homepage .feefo-logo-container {
      padding-right: 1rem; } }
.homepage .feefo-logo {
  width: 150px; }
  @media screen and (max-width: 1040px) {
    .homepage .feefo-logo {
      width: 120px; } }
  @media screen and (max-width: 470px) {
    .homepage .feefo-logo {
      width: 110px; } }
.homepage .homepage-caption {
  margin-left: -7px;
  margin-right: -7px; }
.homepage .splash-img {
  background: url(/res/images/home/home_banner.jpg) center center/cover;
  width: 100%;
  height: 600px;
  position: relative;
  max-width: none; }
  @media screen and (max-width: 1040px) {
    .homepage .splash-img {
      background-position: 40% center; } }
  @media screen and (max-width: 767px) {
    .homepage .splash-img {
      height: 440px;
      background: url(/img-srv/home_banner_mobile_2_SYONRMJWDKXM/home_banner_mobile_2.jpeg) center center/cover; } }
  .homepage .splash-img .overlay-txt {
    padding-top: 8rem; }
    @media screen and (max-width: 767px) {
      .homepage .splash-img .overlay-txt {
        padding-top: 5rem; } }
    .homepage .splash-img .overlay-txt .text-image {
      max-width: 230px;
      max-height: 145px; }
      @media screen and (max-width: 767px) {
        .homepage .splash-img .overlay-txt .text-image {
          max-width: 130px; } }
    .homepage .splash-img .overlay-txt .splash-txt {
      color: #fff;
      max-width: 210px;
      line-height: 1.3rem; }
      @media screen and (max-width: 767px) {
        .homepage .splash-img .overlay-txt .splash-txt {
          max-width: 130px; } }
  .homepage .splash-img .guarantee-div {
    position: absolute;
    bottom: 0;
    margin: auto;
    color: #FFF;
    right: 0; }
    @media screen and (min-width: 768px) {
      .homepage .splash-img .guarantee-div {
        left: 0;
        right: 0;
        padding-bottom: 40px;
        text-align: center; } }
  @media screen and (max-width: 767px) {
    .homepage .splash-img .desktop-booking-bar {
      display: none; } }
.homepage .grey-overlay {
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
  color: #FFF;
  width: 100%;
  height: 48px; }
  @media screen and (min-width: 1116px) {
    .homepage .grey-overlay {
      text-align: center; }
      .homepage .grey-overlay ul {
        list-style: none;
        margin-top: 0;
        margin-bottom: 0;
        padding-top: 10px;
        padding-left: 0px;
        padding-right: 0px; }
        .homepage .grey-overlay ul li {
          display: inline;
          padding: 0 15px; }
      .homepage .grey-overlay .mobile-text {
        display: none; } }
  @media screen and (max-width: 1115px) {
    .homepage .grey-overlay ul {
      position: relative;
      list-style: none;
      padding: 0; }
      .homepage .grey-overlay ul li {
        text-align: center;
        position: absolute;
        width: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        opacity: 0; }
    .homepage .grey-overlay .mobile-text {
      opacity: 1 !important; } }
.homepage .mobile-booking-bar {
  background-color: #00634b; }
.homepage .newsletter-section {
  background: linear-gradient(45deg, #007d63, #67bb89);
  background-size: 100%;
  background-position: top;
  background-repeat: no-repeat;
  padding-top: 4rem;
  padding-bottom: 3rem; }
  @media screen and (max-width: 576px) {
    .homepage .newsletter-section {
      padding: 3rem 0.5rem 3rem 0.5rem; } }
  .homepage .newsletter-section .newsletter-heading {
    color: #fff;
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 3rem; }
    @media screen and (max-width: 576px) {
      .homepage .newsletter-section .newsletter-heading {
        width: 250px; } }
  .homepage .newsletter-section .newsletter-input {
    border-radius: 2rem;
    font-size: 1.3rem;
    padding: 1.5rem;
    border: none;
    box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.04); }
    @media screen and (max-width: calc(768px - 1px)) {
      .homepage .newsletter-section .newsletter-input {
        margin-bottom: 2rem; } }
    @media screen and (max-width: calc(992px - 1px)) {
      .homepage .newsletter-section .newsletter-input {
        margin-bottom: 2rem; } }
  .homepage .newsletter-section .subscribe-btn {
    background-color: #f9c761;
    border-color: #f9c761;
    color: #533d13;
    box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.04);
    border-radius: 2rem;
    border-radius: 2rem;
    font-size: 1.3rem;
    width: 100%; }
  .homepage .newsletter-section .subscribe-btn:focus {
    box-shadow: 0 0 0 0.2rem rgba(249, 199, 97, 0.25); }
  .homepage .newsletter-section .subscribe-btn:hover {
    filter: contrast(110%); }
  .homepage .newsletter-section .newsletter-recaptcha-text {
    color: white; }
    .homepage .newsletter-section .newsletter-recaptcha-text a {
      color: #f9c761; }
.homepage .caption-item {
  padding-left: 7px;
  padding-right: 7px;
  margin-bottom: 1rem; }
  @media screen and (max-width: 576px) {
    .homepage .caption-item {
      padding-left: 0;
      padding-right: 0; } }
  .homepage .caption-item .caption-image {
    max-height: 310px;
    height: auto; }
  .homepage .caption-item .caption-banner {
    background-image: url("/res/images/home/mint-bar.png");
    background-repeat: repeat;
    position: absolute;
    transition: 0.5s;
    bottom: 0;
    left: 7px;
    right: 7px;
    height: 60px;
    color: #fff;
    font-size: 1.5rem;
    padding: 13px 13px 13px 30px; }
    @media screen and (max-width: 576px) {
      .homepage .caption-item .caption-banner {
        left: 0;
        right: 0; } }
  .homepage .caption-item .caption-icon {
    position: absolute;
    transition: 0.5s;
    top: 10%;
    right: 7px;
    height: 72px;
    width: 72px;
    z-index: 11;
    background-color: #5eb283; }
    @media screen and (max-width: 576px) {
      .homepage .caption-item .caption-icon {
        right: 0; } }
  .homepage .caption-item .overlay {
    opacity: 0;
    transition: 0.5s;
    height: 100%;
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 7px;
    right: 7px; }
    @media screen and (max-width: 576px) {
      .homepage .caption-item .overlay {
        left: 0;
        right: 0; } }
    .homepage .caption-item .overlay .overlay-text {
      text-align: center;
      color: #FFF !important;
      width: 100%;
      font-size: 18px;
      display: inline-block;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      padding-left: 18%;
      padding-right: 18%; }
    .homepage .caption-item .overlay .overlay-btn {
      display: block;
      width: 60%;
      border-radius: 5px;
      padding: 10px 15px;
      margin: 5% auto 0; }
.homepage .caption-item:hover .overlay {
  transition: 0.5s;
  opacity: 1; }
.homepage .caption-item:hover .caption-banner {
  transition: 0.5s;
  opacity: 0; }
.homepage .caption-item:hover .caption-icon {
  transition: 0.5s;
  opacity: 0; }
.homepage .social-media-footer {
  width: 100%;
  background-color: #00634b;
  padding: 15px 2.8rem 0; }
  .homepage .social-media-footer .desktop-display {
    position: relative; }
    .homepage .social-media-footer .desktop-display a {
      position: absolute; }
    @media screen and (max-width: 1170px) {
      .homepage .social-media-footer .desktop-display {
        display: none; } }
  .homepage .social-media-footer .mobile-display {
    color: #FFF; }
    @media screen and (min-width: 1171px) {
      .homepage .social-media-footer .mobile-display {
        display: none; } }
    .homepage .social-media-footer .mobile-display .label-text {
      vertical-align: middle;
      height: 57px;
      line-height: 57px; }
.homepage .featured-sites-container {
  margin-bottom: 6rem;
  margin-top: 3rem; }
.homepage .wigwam-usp-container {
  margin-bottom: 6rem;
  margin-top: 5rem; }
  .homepage .wigwam-usp-container .icon {
    font-size: 3rem;
    color: #67bb89; }
  .homepage .wigwam-usp-container .usp-title {
    font-weight: 700;
    font-size: 1.5rem;
    margin-bottom: 0.6rem;
    margin-top: 0.6rem; }
.homepage .our-story-section .img-card {
  background-size: cover;
  background-position: center; }
.homepage .our-story-section .short-img {
  height: 200px;
  border-radius: 1.5rem; }
.homepage .our-story-section .our-story-btn {
  background-color: #67bb89;
  color: white;
  border-radius: 2rem;
  font-size: 1.3rem;
  width: 100%;
  padding: 0.5rem; }
.homepage .our-story-section .our-story-btn:hover {
  filter: contrast(115%); }
.homepage .our-story-section .our-story-title {
  color: #414141;
  padding-bottom: 12px;
  margin-top: 1rem;
  font-weight: 600;
  font-size: 1.5rem;
  max-width: 200px; }
  @media screen and (max-width: 576px) {
    .homepage .our-story-section .our-story-title {
      text-align: center;
      max-width: none; } }
@media screen and (max-width: 576px) {
  .homepage .our-story-section .our-story-body {
    text-align: center; } }
.homepage .our-story-section .our-story-text-container {
  padding-right: 3rem; }
  @media screen and (max-width: 576px) {
    .homepage .our-story-section .our-story-text-container {
      padding-right: 15px; } }
.homepage .our-story-section .our-story-image-1-height {
  height: 310px;
  border-radius: 1.5rem; }
  @media screen and (max-width: 992px) {
    .homepage .our-story-section .our-story-image-1-height {
      height: 200px; } }
.homepage .our-story-section .our-story-image-2-height {
  height: 310px;
  border-radius: 1.5rem; }
  @media screen and (max-width: 576px) {
    .homepage .our-story-section .our-story-image-2-height {
      height: 200px; } }
@media screen and (max-width: 992px) {
  .homepage .our-story-section .our-story-image-1 {
    order: 2; } }
@media screen and (max-width: 768px) {
  .homepage .our-story-section .our-story-image-1 {
    display: none; } }
@media screen and (max-width: 992px) {
  .homepage .our-story-section .our-story-image-2 {
    order: 1; } }
@media screen and (max-width: 992px) {
  .homepage .our-story-section .our-story-image-3 {
    display: none; } }
@media screen and (max-width: 992px) {
  .homepage .our-story-section .our-story-image-4 {
    order: 3; } }
@media screen and (max-width: 992px) {
  .homepage .our-story-section .our-story-image-5 {
    order: 4; } }
.homepage .location-caption .caption-link {
  color: #fff; }
.homepage .location-caption .caption-link:hover {
  color: #fff; }
.homepage .location-caption .caption-title {
  padding: 0.75rem 1.25rem;
  background-color: #5eb283;
  font-size: 1.15rem; }
.homepage .location-caption .card-image-cover-tall {
  background-size: cover;
  background-position: center;
  height: 100%;
  min-height: 300px;
  max-width: 100%; }
  @media screen and (max-width: 576px) {
    .homepage .location-caption .card-image-cover-tall {
      min-height: 250px; } }
  .homepage .location-caption .card-image-cover-tall .overlay-centered-text {
    color: #FFF;
    font-weight: bold;
    line-height: 1.4rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-transform: capitalize;
    text-align: center;
    font-size: 1.2rem; }
.homepage .search-caption .caption-link {
  color: #fff; }
.homepage .search-caption .caption-link:hover {
  color: #fff;
  text-decoration: none; }
.homepage .search-caption .caption-title {
  padding: 0.75rem 1.25rem;
  background-color: #5eb283;
  font-size: 1.15rem; }
.homepage .search-caption .card-image-cover-tall {
  background-size: cover;
  background-position: center;
  height: 100%;
  position: relative;
  min-height: 172px;
  max-width: 100%; }
  .homepage .search-caption .card-image-cover-tall .glamping-searches-title {
    color: #FFF;
    line-height: 1.4rem;
    font-size: 1rem;
    position: absolute;
    bottom: 0;
    padding: 1rem; }

.news-article {
  min-height: 709px;
  padding-bottom: 50px;
  background-color: #f0f0f0; }
  .news-article .page-content {
    background-color: #fff; }
    .news-article .page-content .featured-image {
      width: 100%;
      height: auto; }
    .news-article .page-content .page-content-body {
      padding: 2.5rem; }
      .news-article .page-content .page-content-body h1 {
        font-size: 2.2rem;
        margin-bottom: 2rem; }
      .news-article .page-content .page-content-body h2 {
        font-size: 1.86rem;
        font-weight: 500;
        line-height: 1.2;
        margin-bottom: 2rem; }
      .news-article .page-content .page-content-body h3 {
        font-size: 1.5rem;
        font-weight: 500;
        line-height: 1.2;
        margin-bottom: 1.5rem; }
      .news-article .page-content .page-content-body p {
        color: #5a5a5a;
        font-size: 1rem; }
      .news-article .page-content .page-content-body ul, .news-article .page-content .page-content-body ol {
        text-align: left; }
      .news-article .page-content .page-content-body img {
        width: 100% !important;
        margin-top: 1rem;
        margin-bottom: 1rem; }
      .news-article .page-content .page-content-body a, .news-article .page-content .page-content-body a:hover {
        color: #f7941d; }

.news-home {
  min-height: 709px;
  padding-bottom: 50px;
  background-color: #f0f0f0; }
  .news-home .news-header {
    margin-top: 1.5rem;
    margin-bottom: 1rem; }
  .news-home .news-card {
    background-color: #fff;
    margin-bottom: 2.5rem; }
    .news-home .news-card .featured-image {
      width: 100%;
      height: auto; }
    .news-home .news-card .news-card-body {
      padding: 2.5rem; }
  .news-home .page-header {
    width: 100%;
    height: 200px;
    background: url(/res/images/become-a-partner/become-a-partner-our-history-background-image.svg) no-repeat center center/cover, linear-gradient(45deg, #007d63, #5fae7a);
    text-transform: capitalize;
    background-size: 200%;
    background-position: top;
    background-repeat: no-repeat;
    margin-bottom: 1rem; }
    .news-home .page-header .page-heading {
      color: #fff;
      align-self: center !important;
      margin: auto;
      text-align: center; }
    .news-home .page-header .page-subheading {
      font-size: 1.8rem;
      color: #fff;
      margin-bottom: 0;
      font-weight: 300; }
  .news-home .more-info-container {
    padding-top: 2rem;
    font-weight: 400; }
    .news-home .more-info-container a {
      color: #5eb283 !important; }
  .news-home .news-card-date {
    margin-bottom: 1rem;
    font-weight: 400;
    color: #b4b4b4; }

.payment-page {
  /* Layout */
  /* Inputs */
  /* Buttons and links */
  /* Code block */
  /* Stripe Element placeholder */
  /* Responsiveness */
  /* Animated form */ }
  .payment-page .sr-root {
    display: flex;
    flex-direction: row;
    width: 100%;
    max-width: 980px;
    padding: 48px;
    align-content: center;
    justify-content: center;
    height: auto;
    min-height: 100vh;
    margin: 0 auto; }
  .payment-page .sr-main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    align-self: center;
    padding: 75px 50px;
    width: 400px; }
  .payment-page .sr-field-error {
    color: #697386;
    text-align: left;
    font-size: 13px;
    line-height: 17px;
    margin-top: 12px; }
  .payment-page .sr-input,
  .payment-page input[type="text"] {
    border: 1px solid #d1d2d4;
    border-radius: 2%;
    padding: 5px 12px;
    height: 44px;
    width: 100%;
    transition: box-shadow 0.2s ease;
    background: white;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none; }
  .payment-page .sr-input:focus,
  .payment-page input[type="text"]:focus,
  .payment-page button:focus,
  .payment-page .focused {
    box-shadow: 0 0 0 1px rgba(50, 151, 211, 0.3), 0 1px 1px 0 rgba(0, 0, 0, 0.07), 0 0 0 4px rgba(50, 151, 211, 0.3);
    outline: none;
    z-index: 9; }
  .payment-page .sr-input::placeholder,
  .payment-page input[type="text"]::placeholder {
    color: gainsboro; }
  .payment-page .sr-result {
    height: 44px;
    -webkit-transition: height 1s ease;
    -moz-transition: height 1s ease;
    -o-transition: height 1s ease;
    transition: height 1s ease;
    color: #697386;
    overflow: auto; }
  .payment-page .sr-result code {
    overflow: scroll; }
  .payment-page .sr-result.expand {
    height: 350px; }
  .payment-page .sr-combo-inputs-row {
    box-shadow: 0 0 0 0.5px rgba(50, 50, 93, 0.1), 0 2px 5px 0 rgba(50, 50, 93, 0.1), 0 1px 1.5px 0 rgba(0, 0, 0, 0.07);
    border-radius: 7px; }
  .payment-page .pay-button {
    background: #469b8a;
    border-radius: .25rem;
    color: white;
    border: 0;
    padding: 12px 16px;
    margin-top: 2rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    display: block;
    box-shadow: 0 4px 5.5px 0 rgba(0, 0, 0, 0.07);
    width: 100%; }
  .payment-page .pay-button:hover {
    filter: contrast(115%); }
  .payment-page .pay-button:active {
    transform: translateY(0px) scale(0.98);
    filter: brightness(0.9); }
  .payment-page .pay-button:disabled {
    opacity: 0.5;
    cursor: none; }
  .payment-page code,
  .payment-page pre {
    font-family: "SF Mono", "IBM Plex Mono", "Menlo", monospace;
    font-size: 12px; }
  .payment-page .sr-card-element {
    padding-top: 12px; }
  @media (max-width: 720px) {
    .payment-page .sr-root {
      flex-direction: column;
      justify-content: flex-start;
      padding: 48px 20px;
      min-width: 320px; }
    .payment-page .sr-header__logo {
      background-position: center; }
    .payment-page .sr-payment-summary {
      text-align: center; }
    .payment-page .sr-content {
      display: none; }
    .payment-page .sr-main {
      width: 100%;
      height: 305px; } }
@-webkit-keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
@keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
  .payment-page .hidden {
    display: none; }
@keyframes field-in {
  0% {
    opacity: 0;
    transform: translateY(8px) scale(0.95); }
  100% {
    opacity: 1;
    transform: translateY(0px) scale(1); } }
@keyframes form-in {
  0% {
    opacity: 0;
    transform: scale(0.98); }
  100% {
    opacity: 1;
    transform: scale(1); } }
  .payment-page .customRadioDiv .custom-control-input:checked ~ .custom-control-label::before {
    border-color: #469b8a;
    background-color: #469b8a; }
  .payment-page .customRadioDiv .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
    background-color: #81c6b8;
    border-color: #81c6b8; }
  .payment-page .customRadioDiv .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #469b8a; }
  .payment-page .customRadioDiv .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(70, 155, 138, 0.25); }

.btn-orange {
  color: #FFF;
  background-color: #f7941d;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); }

.greyTermInner {
  overflow-y: scroll;
  max-height: 200px;
  background: #d1d2d4;
  color: grey;
  padding: 10px; }
  .greyTermInner h1 {
    font-size: 1.2rem !important;
    color: #414141 !important;
    padding-top: 0px !important; }
  .greyTermInner h3 {
    font-size: 1.2rem;
    color: #414141; }
  .greyTermInner p {
    color: #414141; }

.greyTermBord {
  border: 1px solid #ccc;
  margin-bottom: 2.9375rem;
  margin-top: 2rem; }

.payment-page-inner .payment-header {
  margin-bottom: 1.5rem; }
.payment-page-inner .payment-sub-header {
  font-size: 1.5rem; }
.payment-page-inner .payment-booking-number {
  color: #469b8a;
  margin-bottom: 1.5rem; }
.payment-page-inner .payment-text-inner {
  font-weight: 300;
  margin-bottom: 3rem; }
.payment-page-inner .payment-mb-2 {
  margin-bottom: 2rem; }

.search-page {
  padding-top: 2rem;
  padding-bottom: 60px; }
  .search-page .searchBar {
    padding: 2rem 0rem;
    margin-bottom: 1.75rem; }
    .search-page .searchBar .form-control:focus {
      border-color: #f7941d;
      box-shadow: 0px 0px 8px 3px rgba(247, 148, 29, 0.25); }
  .search-page .searchResults {
    margin-bottom: 3.175rem; }
    .search-page .searchResults .searchH3 {
      margin-bottom: 2rem;
      color: #f7941d; }
    .search-page .searchResults .searchH4 {
      margin-bottom: 0.8rem;
      font-size: 1.3rem;
      font-weight: 400; }
    .search-page .searchResults .searchLink {
      color: #414141; }
    .search-page .searchResults .searchLink:hover {
      color: #f7941d; }
  .search-page .searchInner {
    margin-bottom: 2rem; }

.franchise-top-bar .center-section {
  position: relative;
  margin-left: -1.5rem;
  margin-right: -1.5rem; }
.franchise-top-bar .scrollingMenu {
  white-space: nowrap;
  overflow-x: hidden;
  -ms-overflow-style: none;
  /* Internet Explorer 10+ */
  scrollbar-width: none;
  /* Firefox */
  justify-content: space-between;
  width: 100%;
  display: flex; }
  @media screen and (max-width: 1000px) {
    .franchise-top-bar .scrollingMenu {
      overflow-x: scroll; } }
  .franchise-top-bar .scrollingMenu .menu-link {
    padding: 1rem 1.5rem;
    color: #5eb283;
    display: inline-block;
    text-align: center;
    font-size: 1rem;
    font-weight: 700; }
  .franchise-top-bar .scrollingMenu .menu-link-selected {
    color: #414141; }
.franchise-top-bar .scrollingMenu::-webkit-scrollbar {
  display: none;
  /* Safari and Chrome */ }
.franchise-top-bar .scrollRightIcon {
  position: absolute;
  right: 0;
  width: 33px;
  height: 100%;
  top: 0;
  background-image: linear-gradient(to left, #fff 90%, rgba(255, 255, 255, 0));
  display: flex;
  cursor: pointer; }
.franchise-top-bar .scrollLeftIcon {
  position: absolute;
  left: 0;
  width: 33px;
  height: 100%;
  top: 0;
  background-image: linear-gradient(to right, #fff 90%, rgba(255, 255, 255, 0));
  display: flex;
  cursor: pointer; }
.franchise-top-bar .scrollIcon {
  color: #414141; }

.site-page .main-content {
  padding: 0 0 1.5rem 0; }
  @media screen and (max-width: 650px) {
    .site-page .main-content {
      padding: 2rem 0; } }
.site-page .deposit-cancel-bar {
  margin: 1rem 2.5rem 0 0; }
  @media screen and (max-width: 650px) {
    .site-page .deposit-cancel-bar {
      margin: 2rem 2.5rem 0 0; } }
  .site-page .deposit-cancel-bar .display-icon {
    width: 32px !important; }
  .site-page .deposit-cancel-bar .display-text {
    font-size: 1rem;
    line-height: 1.2rem;
    margin: 0;
    color: #5a5a5a; }
.site-page .main-gallery {
  border-radius: 12px;
  overflow: hidden;
  height: 428px; }
  @media screen and (min-width: 767px) {
    .site-page .main-gallery {
      height: 450px; } }
  .site-page .main-gallery .primary-image-wrapper {
    height: 270px;
    width: 100%; }
    @media screen and (min-width: 767px) {
      .site-page .main-gallery .primary-image-wrapper {
        height: 100%; } }
    @media screen and (min-width: 767px) {
      .site-page .main-gallery .primary-image-wrapper {
        width: 50%; } }
  .site-page .main-gallery .primary-image {
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center; }
    .site-page .main-gallery .primary-image:hover {
      filter: brightness(80%); }
  .site-page .main-gallery .secondary-image-wrapper {
    height: 150px;
    width: 100%; }
    @media screen and (min-width: 767px) {
      .site-page .main-gallery .secondary-image-wrapper {
        width: calc(50% - 8px);
        height: 100%; } }
  .site-page .main-gallery .secondary-image {
    height: 100%;
    width: 100%;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: calc(50% - (8px / 2));
    position: relative;
    background-size: cover;
    background-position: center; }
    .site-page .main-gallery .secondary-image:hover {
      filter: brightness(90%); }
    @media screen and (min-width: 767px) {
      .site-page .main-gallery .secondary-image {
        height: calc(50% - (8px / 2)); } }
  .site-page .main-gallery .secondary-image-lg-only {
    margin-top: 8px; }
    @media screen and (max-width: calc(767px - 1px)) {
      .site-page .main-gallery .secondary-image-lg-only {
        display: none; } }
  .site-page .main-gallery .more-photos-btn {
    position: absolute;
    border-radius: 50px;
    font-weight: 600;
    right: 10%;
    bottom: 10%;
    padding: 0.3rem 0.7rem 0.3rem 0.7rem; }
  @media screen and (min-width: 767px) {
    .site-page .main-gallery .more-photos-sm-only {
      display: none; } }
  @media screen and (max-width: calc(767px - 1px)) {
    .site-page .main-gallery .more-photos-lg-only {
      display: none; } }
.site-page .section-heading {
  font-size: 1.37rem;
  margin-bottom: 1rem;
  font-weight: 600;
  line-height: 1.2; }
.site-page .section-padding {
  padding-top: 2rem;
  padding-bottom: 2rem; }
.site-page .top-section-padding {
  padding-bottom: 2rem; }
.site-page .section-link, .site-page .section-link:hover {
  color: #5eb283;
  font-weight: 500;
  display: block;
  margin-top: 1rem; }
.site-page .description h1 {
  font-size: 2.2rem; }
.site-page .description h2 {
  font-size: 1.37rem;
  font-weight: 600;
  padding-top: 2rem; }
.site-page .description h2:first-of-type {
  padding-top: 0; }
.site-page .description h3 {
  font-size: 1.2rem;
  font-weight: 600;
  margin-top: 3rem;
  margin-bottom: 1rem; }
.site-page .description h4 {
  font-size: 1.2rem;
  font-weight: 600;
  margin-top: 3rem;
  margin-bottom: 1rem; }
.site-page .description h1, .site-page .description h2 {
  color: #414141;
  padding-bottom: 1.25rem; }
.site-page .description p {
  margin-top: 0;
  margin-bottom: 1.5rem;
  color: #5a5a5a; }
.site-page .description a, .site-page .description a:hover {
  color: #5eb283; }
.site-page .description table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  margin-top: 40px;
  margin-bottom: 40px; }
  .site-page .description table tr:nth-child(even) {
    background-color: white; }
  .site-page .description table tr:nth-child(odd) {
    background-color: #f4f2f2; }
  .site-page .description table th {
    background-color: #5eb283;
    color: #FFF;
    font-weight: normal;
    padding: 10px 5px;
    border-style: none;
    overflow: hidden;
    word-break: normal;
    padding-left: 20px; }
  .site-page .description table td {
    padding: 10px 5px;
    border-style: none;
    overflow: hidden;
    word-break: normal;
    padding-left: 20px; }
    .site-page .description table td p {
      margin: 0; }
.site-page .description table.noColorTab {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  width: 100%;
  margin-bottom: 40px;
  margin-top: 40px; }
  .site-page .description table.noColorTab tr {
    background-color: #FFF !important; }
  .site-page .description table.noColorTab td {
    border: solid 3px #F2F2F2 !important;
    text-align: center;
    vertical-align: top; }
    .site-page .description table.noColorTab td img {
      max-width: 150px;
      width: 100%; }
    .site-page .description table.noColorTab td img.fullWidthImg {
      max-width: 100%; }
    .site-page .description table.noColorTab td h3 {
      margin: 1rem 0; }
.site-page .facilities .group-header {
  margin-top: 1.5rem;
  margin-bottom: 1rem;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5; }
.site-page .facilities .facility-icon {
  color: #5eb283;
  margin-right: 0.5rem;
  font-size: 1.5rem; }
.site-page .address-display p {
  margin: 0 0 1rem !important;
  padding: 0 !important; }
.site-page .phone-title {
  font-size: 1.37rem;
  margin-top: 2rem;
  font-weight: 600; }
.site-page .section-collapse.collapse:not(.show) {
  display: block;
  height: 27ex;
  overflow: hidden; }
.site-page .section-collapse.collapsing {
  height: 15rem; }
.site-page .nocollapse {
  height: auto !important; }
.site-page .caption-menu {
  padding: 4rem 0 4rem; }
  .site-page .caption-menu .card-item {
    margin: 10px 0; }
    .site-page .caption-menu .card-item .card-item-body {
      position: relative;
      background-size: cover;
      background-position: center;
      height: 100%;
      min-height: 300px;
      max-width: 100%; }
      .site-page .caption-menu .card-item .card-item-body .overlay-centered-text {
        color: #FFF;
        font-weight: bold;
        line-height: 1.4rem;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        text-transform: capitalize;
        text-align: center;
        font-size: 1.2rem; }
.site-page h1 {
  font-size: 1.8rem !important; }

.white-bg {
  background-color: #fff; }

hr {
  margin-top: 0rem;
  margin-bottom: 0rem; }

.special-offers-page .offer-card .card-img-top {
  border-radius: 0; }
.special-offers-page .offer-card .offer-card-body {
  padding: 1.8rem; }
.special-offers-page .offer-card .site-title {
  font-size: 2.15rem;
  font-weight: 400;
  line-height: 2.2rem;
  color: #414141;
  margin-bottom: 0.6rem; }
.special-offers-page .offer-card .site-address {
  font-size: 1.1rem;
  font-weight: 400;
  color: #58595b;
  margin-bottom: 0.8rem; }
.special-offers-page .offer-card p {
  font-size: 0.9rem;
  line-height: 1.2rem;
  margin-bottom: 0.8rem;
  color: #58595b; }
.special-offers-page .offer-card .offer-card-footer {
  background-color: rgba(0, 0, 0, 0);
  border-top: rgba(0, 0, 0, 0);
  padding: 0.75rem 1.9rem 2.8125rem 1.25rem; }
  .special-offers-page .offer-card .offer-card-footer .book-link, .special-offers-page .offer-card .offer-card-footer .book-link:hover {
    color: #f7941d;
    font-size: 1.875rem; }
  .special-offers-page .offer-card .offer-card-footer .book-icon {
    font-size: 26px;
    margin-left: 12px; }
@media screen and (max-width: 576px) {
  .special-offers-page .offer-card {
    margin: 30px 0px; } }

.titleTop {
  padding-top: 4rem;
  padding-bottom: 2.875rem;
  text-align: center; }
  .titleTop .main-title {
    font-size: 3.25rem;
    color: #1d1d1b;
    margin-bottom: 0px;
    line-height: 1;
    font-weight: 300; }
  .titleTop .main-subtitle {
    font-size: 2.25rem;
    color: #979797;
    margin-bottom: 0px;
    font-weight: 300; }

.dotted-offer {
  border-top: 4px dotted #d1d2d4;
  margin: 0 0 2.25rem; }

@media screen and (min-width: 576px) {
  .offerHeight {
    height: 670px; } }
@media screen and (min-width: 576px) and (max-width: 830px) {
  .card-columns {
    column-count: 2; } }
.standard_page {
  background-color: #f0f0f0;
  min-height: 709px;
  padding-bottom: 50px; }
  .standard_page .title_bar {
    background-color: #5eb283;
    margin: 0 auto 1.2rem;
    padding: 2.5rem 0 2.75rem; }
    .standard_page .title_bar h1 {
      color: #fff;
      font-size: 3.25rem;
      font-weight: 300;
      margin-right: 30px;
      margin-left: 30px;
      margin-bottom: 0; }
    .standard_page .title_bar h2 {
      font-size: 2.25rem;
      font-weight: 300;
      color: rgba(25, 87, 67, 0.9);
      margin-right: 30px;
      margin-left: 30px;
      margin-bottom: 0; }
  .standard_page .side-menu {
    padding: 1.56rem 0 3.5rem;
    margin: auto;
    position: sticky;
    top: 0; }
    .standard_page .side-menu .menu-heading {
      color: #414141;
      font-size: 1rem;
      padding: 0 1.4rem;
      font-weight: 600; }
    .standard_page .side-menu .menu-link {
      padding: 0.5rem 1.4rem;
      font-weight: 300; }
      .standard_page .side-menu .menu-link a {
        color: #414141; }
    .standard_page .side-menu .menu-link.active {
      background-color: #5eb283; }
      .standard_page .side-menu .menu-link.active a {
        color: #fff !important; }
  .standard_page .page-content {
    background-color: #fff; }
    .standard_page .page-content h1 {
      margin: 0 2.5rem;
      font-size: 2.2rem;
      padding-top: 2.5rem;
      padding-bottom: 1.25rem; }
    .standard_page .page-content h2 {
      font-size: 1.86rem;
      margin: 0 2.5rem;
      padding-top: 2.5rem;
      padding-bottom: 1.25rem;
      font-weight: 500;
      line-height: 1.2; }
    .standard_page .page-content h3 {
      font-size: 1.5rem;
      padding-bottom: 1.25rem;
      font-weight: 500;
      line-height: 1.2;
      margin: 1rem 2.5rem 0; }
    .standard_page .page-content h4 {
      margin: 1rem 2.5rem 0;
      padding-bottom: 1.25rem; }
    .standard_page .page-content h5 {
      margin: 1rem 2.5rem 0;
      padding-bottom: 1.25rem; }
    .standard_page .page-content h6 {
      margin: 1rem 2.5rem 0;
      padding-bottom: 1.25rem; }
    .standard_page .page-content p {
      color: #5a5a5a;
      margin: 0 2.5rem 1.5rem;
      font-size: 1rem; }
    .standard_page .page-content ul {
      text-align: left;
      margin: 0rem 2.5rem 1.5rem; }
    .standard_page .page-content ol {
      text-align: left;
      margin: 0rem 2.5rem 1.5rem; }
    .standard_page .page-content img {
      width: 100% !important; }
    .standard_page .page-content a,
    .standard_page .page-content a:hover {
      color: #f7941d; }
  @media screen and (min-width: 700px) {
    .standard_page .newsletter-sign-up {
      height: 609px; } }
  @media screen and (max-width: 699px) {
    .standard_page .newsletter-sign-up {
      height: 753px; } }

.voucher-purchase .page-header {
  width: 100%;
  min-height: 200px;
  background: url(/res/images/become-a-partner/become-a-partner-our-history-background-image.svg) no-repeat center center/cover, linear-gradient(45deg, #007d63, #5fae7a);
  text-transform: capitalize;
  background-size: 200%;
  background-position: top;
  background-repeat: no-repeat;
  margin-bottom: 1rem; }
  .voucher-purchase .page-header .page-heading {
    color: #fff;
    align-self: center !important;
    margin: auto;
    text-align: center; }
  .voucher-purchase .page-header .page-subheading {
    font-size: 1.8rem;
    color: #fff;
    margin-bottom: 0;
    font-weight: 300; }
.voucher-purchase .form-section {
  padding-bottom: 5.25rem !important; }
  .voucher-purchase .form-section .page-splash-text {
    color: #414141;
    font-size: 1.375rem;
    margin-bottom: 2.5rem;
    line-height: 1.65rem;
    font-weight: 300; }
  .voucher-purchase .form-section .narrow-field {
    max-width: 75px; }
  .voucher-purchase .form-section .form-label {
    font-size: 1rem;
    font-weight: 400;
    color: #414141;
    margin-bottom: 0.25rem; }
  .voucher-purchase .form-section .cost-summary {
    color: #414141;
    font-size: 1.375rem;
    font-weight: 400;
    margin-top: 2.5rem;
    margin-bottom: 0; }
  .voucher-purchase .form-section .message-box {
    height: 200px; }
  .voucher-purchase .form-section input:focus, .voucher-purchase .form-section textarea:focus, .voucher-purchase .form-section select:focus {
    box-shadow: 0 0 0 0.2rem #b4dbc5;
    border-color: #5eb283; }
  .voucher-purchase .form-section .tandc-heading {
    color: #5eb283;
    font-size: 1.75rem;
    margin-top: 1rem; }
  .voucher-purchase .form-section .your-details h2 {
    margin-bottom: 2rem;
    margin-top: 1rem;
    font-size: 1.75rem; }
  @media screen and (max-width: 768px) {
    .voucher-purchase .form-section .voucher-image {
      display: none; } }
  .voucher-purchase .form-section .complete-pre-heading {
    font-size: 1.5rem;
    padding-top: 4rem; }
  .voucher-purchase .form-section .complete-heading {
    font-size: 4.5rem;
    font-weight: 600;
    color: #5eb283; }
  @media screen and (min-width: 768px) {
    .voucher-purchase .form-section .voucher-image-mobile {
      display: none; } }
  .voucher-purchase .form-section .tandcbox {
    background-color: #f0f0f0;
    max-height: 200px;
    overflow-y: scroll;
    padding: 10px;
    border: 1px solid gainsboro; }
  .voucher-purchase .form-section .buy-btn {
    font-weight: 400;
    font-size: 1.875rem;
    padding: 0.375rem 2.75rem; }

.center1000 {
  max-width: 1148px;
  margin: auto;
  padding: 0 1.5rem; }

.grey240bg {
  background-color: #f4f2f2; }

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