/**
Public and common SCSS file
 */
:root {
  --eh-success: #87af07;
  --eh-success-hover: #779a06;
  --eh-disabled-light:#DDD;
  --eh-disabled-medium:#999;
  --eh-disabled-dark:#333;
  --bs-warning: #ff7600;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: var( --eh-success);
  --bs-btn-border-color: var( --eh-success);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--eh-success-hover);
  --bs-btn-hover-border-color: var(--eh-success-hover);
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--eh-success-hover);
  --bs-btn-active-border-color: var(--eh-success-hover);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var( --eh-success);
  --bs-btn-disabled-border-color: var( --eh-success);
}

.h1, h1 {
  font-size: 2rem;
}

.service-renderer {
  padding: 30px;
}

.flash-error {
  background-color: var(--bs-danger);
  color: #FFF;
  padding: 6px 16px;
  color: #FFF;
  border-radius: 6px;
}

.flash-warning {
  background-color: var(--bs-warning);
  color: #FFF;
  padding: 6px 16px;
  color: #FFF;
  border-radius: 6px;
}

.flash-success {
  background-color: var(--bs-success);
  color: #FFF;
  padding: 6px 16px;
  color: #FFF;
  border-radius: 6px;
}

.pointer {
  cursor: pointer;
}

header {
  position: sticky;
  top: 0;
  z-index: 100;
}

.top-header {
  background-color: var(--bs-secondary);
  color: #FFF;
  font-size: 12px;
  line-height: 18px;
  display: flex;
  justify-content: end;
  gap: 30px;
  align-items: center;
  padding: 10px 20px;
}
.top-header a {
  text-decoration: none;
  color: #FFF;
}

.main-header {
  background-color: #FFF;
  /*display: flex;
  justify-content: end;
  gap: 30px;
  align-items: center;*/
  padding: 10px 20px;
}
.main-header .header-logo {
  max-width: 150px;
}
.main-header .nav-item {
  padding: 0 16px;
}
.main-header .nav-item a {
  font-size: 18px;
  font-weight: 600;
  text-decoration: none;
  padding: 6px 0;
}
.main-header .nav-item a:not(.btn) {
  color: #444;
  border-bottom: 1px solid transparent;
}
.main-header .nav-item a:not(.btn):hover {
  border-bottom: 1px solid var(--bs-primary);
  color: var(--bs-primary);
}
.main-header .nav-item a.btn {
  padding: 6px 12px;
}
.main-header .cart-header {
  color: #286090;
}

footer {
  background-color: #F7F7F7;
  padding: 40px 20px;
  font-size: 13px;
}
footer a {
  color: #727272;
  text-decoration: none;
}

.tunnel {
  display: flex;
  justify-content: space-around;
  vertical-align: middle;
  margin: 30px 0;
}
.tunnel .header {
  opacity: 0.25;
  font-size: 40px;
  font-weight: bold;
}
.tunnel .header.active {
  opacity: 1;
  color: #1faae1;
}
.tunnel .header.active a {
  text-decoration: none;
  color: #1faae1;
}

#cart-header a {
  position: relative;
  min-width: 120px;
  display: inline-block;
  text-align: center;
}
#cart-header a .cart-header {
  color: var(--bs-primary);
}
#cart-header a #cart-countdown {
  position: absolute;
  width: 100%;
  bottom: -20px;
  font-size: 12px;
  line-height: 14px;
  white-space: nowrap;
  color: var(--bs-primary);
}

#booking-sidebar .card {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid #E2001A;
  border-radius: 4px;
  box-shadow: none;
}
#booking-sidebar .card .card-heading {
  border-color: #E2001A;
  background-color: #E2001A;
  color: #FFF;
  padding: 6px 10px;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
}
#booking-sidebar .card label {
  font-weight: bold;
}
#booking-sidebar .card .btn-departure,
#booking-sidebar .card .btn-arrival,
#booking-sidebar .card .btn-roundtype {
  border: 1px solid #AAA;
  margin: 4px;
}
#booking-sidebar .card .btn-departure.selected,
#booking-sidebar .card .btn-arrival.selected,
#booking-sidebar .card .btn-roundtype.selected {
  background-color: var(--eh-success);
  color: #FFF;
  border-color: #849b1a;
}
#booking-sidebar .card .btn-departure.selected:before,
#booking-sidebar .card .btn-arrival.selected:before,
#booking-sidebar .card .btn-roundtype.selected:before {
  content: "\f00c";
  font-family: "Font Awesome 7 Pro";
  padding-right: 6px;
}
#booking-sidebar .card .btn:not(.selected):not(.btn-link) {
  background-color: #DDD;
  opacity: 0.75;
}
#booking-sidebar .card .form-control, #booking-sidebar .card .hasDatepicker {
  box-shadow: none;
  border: 1px solid #9a9a9a;
  padding: 2px 8px;
  height: 28px;
  width: 65px;
}
#booking-sidebar .card .btn-link {
  padding-left: 4px;
  padding-right: 4px;
}

.hidden-calendar {
  max-height: 0px;
  opacity: 0;
}

#fill-informations {
  margin: 0 40px;
  border: 3px dashed #EEE;
  color: #CCC;
  border-radius: 10px;
  font-size: 22px;
  text-align: left;
  padding: 30px;
  position: sticky;
  top: 150px;
}

.bounce-left {
  animation: slideleft 1s ease-in-out infinite;
  margin-right: 20px;
}

@keyframes slideleft {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(10px, 0);
  }
}
.bounce-up {
  animation: slideUp 1s ease-in-out infinite;
  margin-right: 20px;
}

@keyframes slideUp {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, 10px);
  }
}
.bounce-right {
  animation: slideright 1s ease-in-out infinite;
  margin-left: 20px;
}

@keyframes slideright {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(10px, 0);
  }
}
#booking-calendar,
#booking-calendar-back {
  line-height: 20px;
  font-size: 14px;
  font-weight: 400;
}
#booking-calendar .fc-toolbar h2,
#booking-calendar-back .fc-toolbar h2 {
  font-size: 16px;
}
#booking-calendar .fc-content-skeleton thead td,
#booking-calendar-back .fc-content-skeleton thead td {
  height: 25px;
}
#booking-calendar .fc-button,
#booking-calendar-back .fc-button {
  border-radius: 0 !important;
  height: auto !important;
  padding: 0 !important;
}
#booking-calendar .fc-daygrid-day-number,
#booking-calendar-back .fc-daygrid-day-number {
  color: var(--bs-body-color);
  text-decoration: none;
  padding: 2px;
}
#booking-calendar .fc-toolbar.fc-header-toolbar,
#booking-calendar-back .fc-toolbar.fc-header-toolbar {
  margin-bottom: 8px;
}
#booking-calendar .fc-col-header-cell-cushion,
#booking-calendar-back .fc-col-header-cell-cushion {
  color: var(--bs-body-color);
  text-decoration: none;
}
#booking-calendar .fc-daygrid-day-events,
#booking-calendar-back .fc-daygrid-day-events {
  display: none;
}
#booking-calendar td.day-available,
#booking-calendar-back td.day-available {
  background-color: #286090;
  cursor: pointer;
}
#booking-calendar td.day-available .fc-daygrid-day-number,
#booking-calendar-back td.day-available .fc-daygrid-day-number {
  color: #FFF;
  font-weight: bold;
}
#booking-calendar td.day-closed,
#booking-calendar-back td.day-closed {
  background-color: #EEE;
}
#booking-calendar td.day-closed .fc-daygrid-day-number,
#booking-calendar-back td.day-closed .fc-daygrid-day-number {
  color: #AAA;
}
#booking-calendar td.day-closed.fc-other-month,
#booking-calendar-back td.day-closed.fc-other-month {
  background-color: transparent;
}
#booking-calendar td.day-selected,
#booking-calendar-back td.day-selected {
  background-color: var(--eh-success);
  cursor: pointer;
}
#booking-calendar td.day-selected .fc-daygrid-day-number,
#booking-calendar-back td.day-selected .fc-daygrid-day-number {
  color: #FFF;
  font-weight: bold;
}
#booking-calendar td.day-selected .fc-daygrid-day-number:before,
#booking-calendar-back td.day-selected .fc-daygrid-day-number:before {
  content: "\f00c";
  font-family: "Font Awesome 7 Pro";
  padding-right: 8px;
  font-weight: normal;
}

#booking-calendar-container label,
#booking-calendar-back-container label {
  color: #FFF;
  background-color: var(--bs-primary);
  margin-top: 30px;
  margin-bottom: 6px;
  padding: 2px 4px;
  border-radius: 2px;
  display: block;
}

.tours-table th {
  font-weight: normal;
}
.tours-table .btn-select-tourday.selected {
  background-color: var(--eh-success);
  color: #FFF;
  border-color: #849b1a;
}
.tours-table .btn-select-tourday.selected:before {
  content: "\f00c";
  font-family: "Font Awesome 7 Pro";
  padding-right: 6px;
}

#btn-validate-tours {
  background-color: var(--eh-success);
  color: #FFF;
}
#btn-validate-tours:hover, #btn-validate-tours:active, #btn-validate-tours:focus {
  color: #FFF;
}

.btn-pricecategory {
  background-color: #FFF;
  border-color: var(--bs-info);
  color: var(--bs-info);
  padding: 4px 10px;
}
.btn-pricecategory.selected {
  background-color: var(--eh-success);
  border-color: var(--eh-success);
  color: #FFF;
}
.btn-pricecategory.selected:before {
  content: "\f00c";
  font-family: "Font Awesome 7 Pro";
  padding-right: 6px;
}
.btn-pricecategory.selected:hover, .btn-pricecategory.selected:active, .btn-pricecategory.selected:focus {
  color: #FFF;
}

.btn-xs {
  padding: 2px 4px;
  font-size: 13px;
  line-height: 13px;
  border-radius: 3px;
}

.category-tips {
  display: flex;
  flex-direction: row;
  justify-content: left;
  align-items: center;
  color: #e31e32;
  font-size: 14px;
  gap: 10px;
  padding-top: 10px;
}

.choose-category .category-tips {
  background-color: #ffffff;
  position: absolute;
  top: 4px;
  bottom: 4px;
  right: -440px;
  width: 450px;
  text-align: left;
  z-index: 9;
  border: 3px dashed #AAA;
  color: #e31e32;
  border-radius: 10px;
  font-size: 18px;
  padding: 20px;
}

.passenger-price {
  opacity: 1;
  transition: opacity 250ms;
}
.passenger-price.pending {
  opacity: 0.25;
}

#btn-validate-passengers .fa-spinner {
  display: none;
}
#btn-validate-passengers.pending .fa-spinner {
  display: inline-block;
}
#btn-validate-passengers.pending .fa-check {
  display: none;
}

form label.required:after {
  content: "*";
  color: var(--bs-danger);
  padding-left: 3px;
}

.form-alert ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.column-amount {
  width: 120px;
}

/**
Responsive
 */
@media screen and (max-width: 1023px) {
  #navbarHeaderNav {
    order: 10;
    background-color: #FFF;
    box-shadow: 0 4px 20px #EEE;
    border-radius: 10px;
    padding: 10px;
  }
}
@media screen and (max-width: 767px) {
  .tunnel .header {
    font-size: 20px;
  }
  .format-responsive thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .format-responsive tr {
    border-bottom: 3px solid #ddd;
    display: block;
    margin-bottom: 0.625em;
  }
  .format-responsive td {
    border-bottom: 1px solid #ddd;
    display: block;
    font-size: 0.8em;
    text-align: left !important;
  }
  .format-responsive td.column-amount {
    width: 100%;
  }
  .format-responsive td:before {
    /*
    * aria-label has no advantage, it won't be read inside a table
    content: attr(aria-label);
    */
    content: attr(data-label);
    float: none;
    display: block;
    text-align: left;
    font-weight: bold;
    text-transform: uppercase;
    padding-bottom: 2px;
  }
  .format-responsive td:last-child {
    border-bottom: 0;
  }
  .format-responsive .passenger-number {
    text-align: left !important;
  }
  .choose-category .category-tips {
    top: unset;
    right: unset;
    bottom: unset;
    left: unset;
    width: 95%;
    margin-top: 10px;
    height: 180px;
  }
  .btn-booking-prevnext {
    flex-direction: column-reverse;
    gap: 20px;
  }
}

/*# sourceMappingURL=public.css-auQX3nY.map */
