@charset "UTF-8";
/* ===GETTING COLORS FROM PALETTE=== */
/**
 * The function palette is used by the following functions
 * text-color(), border-color() and bg-color()
 */
/* ===BACKGROUND COLOR FUNCTION=== */
/* ===TEXT COLOR FUNCTION=== */
/* ===BORDER COLOR FUNCTION=== */
/* ===GETTING BUTTONS STYLE FROM MAP=== */
/* ===GETTING BREAKPOINT VALUE FROM MAP=== */
/* ===GETTING VALUE FROM GENERIC MAP=== */
/* ===GET FONT FAMILY NAME FROM NESTED MAP=== */
/* ===REM FUNCTION=== */
/**
 * Sassy functions to get the rem equivalent of a px value
 * preset-css-env will take care of fallback for older browsers
 * !NOTE: you only need to change the $rem-baseline value if your base size 
 * is different from 10px (use _var_typography.scss in case)
 * @param value is referred to px
 * Credits: Rowan Manning
 */
/**
 * Given an image name this mixin returns a path
 * for the relative image.
 *
 * @param $image the name of the image to link.
 */
/* ===WEB FONTS MANAGEMENT=== */
/**
* Use this mixin to easely generate a @font-face rule.
* It uses the font-path property provided by postcss rucksack
* to generate bulletproof src sets in @font-face
*/
/**
 * @param $fonts-map
 * Generating @font-face rule from the given $fonts map
 * You can just update the font map to add a new font-face rule
 */
/**
 * Sets the font for this weight.
 * @param $family the font family to set.
 * @param $weight one of 'bolder', 'heavy', 'bold', 'semibold', 'normal' (default),
 * 'light', 'lighter' or 'thin'
 */
/**
 * Sets the secondary fonts for this weight.
 * @param $weight one of "light", "normal" (default), "bold" or "bolder" (if provided by font).
 * Take care not to use this mixin to apply the primary font,
 * whenever it is already declared for the body element and inherited from it.
 */
/**
 * Applies the font smoothing
 * Used for better cross browser support
 * Ref: https://maximilianhoffmann.com/posts/better-font-rendering-on-osx
 */
/**
 * Absolute  positioning an element
 */
/** Triangle helper mixin
 * @param {Direction} $direction - Triangle direction, either `top`, `right`, `bottom` or `left`
 * @param {Color} $color [currentcolor] - Triangle color
 * @param {Length} $size [1em] - Triangle size
*/
/** grid column no bootstrap
 * @param $col_size - the number of column the element should take from 1 to 12
*/
/* mixin for multiline */
/**
 * Ref: https://www.smashingmagazine.com/2014/06/sassy-z-index-management-for-complex-layouts/
 * In order to maintain the stacking order of the elements,
 * we can set up a Sass list which represents the order in which we want our elements to appear,
 * from lowest to highest, like shown below.
 * (Note that if we want to add an element to the existing stacking order,
 * we just have to update the list with our new element)
 * In order to retrieve the z-index value to assign to each element,
 * you can use the index() sass function, for i.e. .modal {z-index: index($elements, modal)}
 */
body.modal-open {
  position: fixed; }

.btn {
  min-width: 0;
  width: 100%; }

.booking-app {
  padding: 0 0  2.5rem; }
  .booking-app.booking-details {
    padding-bottom: 0; }
  .booking-app .checkout-flow {
    padding-bottom:  2rem; }
  .booking-app .go-back-link {
    padding-bottom:  1.5rem; }
  .booking-app .package-intro {
    padding: 0  0.9375rem  1.5rem; }
    .booking-app .package-intro .intro-box {
      justify-content: center; }
  .booking-app .package-details .package-media {
    padding-bottom:  4.5rem; }
  .booking-app .package-details .package-description {
    padding-bottom:  2rem; }
    .booking-app .package-details .package-description .accomodation-title .product-name,
    .booking-app .package-details .package-description .accomodation-title h1 {
      padding-bottom:  1.5rem; }
    .booking-app .package-details .package-description .accomodation-title h1 {
      font-size:  1.75rem; }
  .booking-app .package-details .accomodation-services {
    margin-bottom:  2rem; }
  .booking-app .package-details .accomodation-details > div {
    text-align: center; }
  .booking-app .package-details .accomodation-details .accordion {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto; }
  .booking-app .package-details .accomodation-details .services-button {
    margin: 0 auto; }
  .booking-app .package-details .sidebar-experience .experience-instructions {
    text-align: center; }
  .booking-app .booking-customize .extra-notes-box button  {
    max-width: 100%;
    padding:  0.9375rem; }
    .booking-app .booking-customize .extra-notes-box button  span {
      font-size:  1rem; }

.contact-us-landing-page h1 {
  font-size:  2.5rem; }

.contact-us-landing-page .card-body {
  padding: 0; }

.error-page {
  margin-top:  6.25rem; }
  .error-page h1 {
    font-size:  3.125rem;
    margin-bottom:  1.375rem; }
  .error-page .error-content p.error-404-message {
    font-size:  1.25rem;
    margin-bottom:  2.625rem; }

.login-page,
.checkout-login {
  margin-top: 0 !important; }
  .login-page .login-form-nav,
  .checkout-login .login-form-nav {
    margin-bottom: 0; }
  .login-page .card-header,
  .checkout-login .card-header {
    padding: 0;
    background: none;
    border-bottom: 0;
    border-top: 0;
    font-size:  1.25rem;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing:  0.03125rem; }
  .login-page .card-body,
  .checkout-login .card-body {
    padding: 0; }
  .login-page .card,
  .checkout-login .card {
    border-radius: 0;
    padding: 15px;
    width: 100%;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #e1dddb;
    padding-bottom: 1.5rem; }
  .login-page form.login,
  .login-page form.registration,
  .checkout-login form.login,
  .checkout-login form.registration {
    padding-top:  1rem; }
  .login-page .tab-content > .tab-pane,
  .checkout-login .tab-content > .tab-pane {
    padding: 0 15px; }
  .login-page .login-page-wrapper,
  .checkout-login .login-page-wrapper {
    padding-right: 0;
    padding-left: 0; }
  .login-page form.trackorder,
  .checkout-login form.trackorder {
    padding-top:  2.5rem;
    border-top: 1px solid #bfb9b2;
    margin-top:  2.5rem; }
  .login-page .remember-me .custom-control-label,
  .checkout-login .remember-me .custom-control-label {
    padding-top: 3px; }
  .login-page .form-control-label,
  .checkout-login .form-control-label {
    font-size:  0.75rem;
    margin-bottom: 0; }
  .login-page .form-group.custom-control.custom-checkbox,
  .checkout-login .form-group.custom-control.custom-checkbox {
    word-break: break-all; }
  .login-page .privacy-policy,
  .checkout-login .privacy-policy {
    margin-top:  0.5rem;
    font-size:  0.75rem; }
  .login-page .forgot-password,
  .checkout-login .forgot-password {
    margin-top: -8px; }

.myaccount-condovendita .accordion .accordion-trigger {
  padding-top: 15px;
  padding-bottom: 15px; }
  .myaccount-condovendita .accordion .accordion-trigger i {
    top: 15px; }

.myaccount-condovendita .accordion .accordion-target {
  padding-bottom:  0.9375rem; }
  .myaccount-condovendita .accordion .accordion-target .contovendita-accordion-content {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .myaccount-condovendita .accordion .accordion-target .contovendita-accordion-content button {
      min-height: auto;
      padding: 0 15px;
      text-transform: none;
      position: relative;
      color: #bc260b; }
      .myaccount-condovendita .accordion .accordion-target .contovendita-accordion-content button i {
        position: absolute;
        right: 0; }

.alert {
  min-width: 100%; }

.accomodation-note .alert {
  margin-top:  1.5rem; }

.add-to-cart-messages {
  transform: translate(-50%, 0);
  position: fixed;
  top: 10%;
  width: 80%;
  left: 50%; }
  .add-to-cart-messages.booking-alert.alert-success {
    padding: 1.5rem 1rem; }
    .add-to-cart-messages.booking-alert.alert-success img {
      width: 1.5rem;
      height: 1.5rem;
      margin-bottom: 0.2rem; }

.date-picker {
  width: 100% !important;
  height: 100vh; }
  .date-picker .vc-container {
    width: 100%; }

.filter-date-picker {
  position: relative;
  top: 60px; }
  .filter-date-picker img {
    position: relative;
    top: 31px;
    left: 230px; }

footer.main-footer .col.col-links {
  flex-grow: unset;
  flex-basis: unset; }

footer .footer-section-title {
  padding: 20px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border: none !important; }
  footer .footer-section-title:after {
    display: none; }
  footer .footer-section-title .icon-plus {
    margin-left: auto;
    color: #be8021;
    font-size:  1.1875rem;
    width: 20px;
    overflow: hidden; }
  footer .footer-section-title .icon-minus {
    display: none;
    margin-left: auto;
    color: #be8021;
    font-size: 1px;
    width: 20px;
    overflow: hidden; }

footer .active .footer-section-title .icon-plus {
  display: none; }

footer .active .footer-section-title .icon-minus {
  display: block; }

footer .col-links {
  border-bottom: 1px solid #fff; }
  footer .col-links .footer-link {
    display: block;
    padding: 5px 0; }

footer .footer-social {
  padding-top: 0; }

footer .footer-social-links {
  display: flex;
  flex-wrap: wrap; }
  footer .footer-social-links .footer-section-title {
    margin-bottom: 0;
    padding-bottom: 10px; }
  footer .footer-social-links .footer-link {
    flex-grow: 1; }

footer .footer-newsletter .footer-section-title {
  margin-bottom: 0;
  padding-bottom: 10px; }

footer .newletterFooter {
  border-top: 1px solid #fff;
  margin-top: 20px; }
  footer .newletterFooter form {
    height: unset;
    padding-bottom: 20px; }

.gift-overlay {
  width: 100% !important;
  height: 100vh; }
  .gift-overlay h2 {
    font-size:  1.875rem; }
  .gift-overlay button.btn-confirm {
    max-width: 240px;
    margin: 0 auto;
    margin-top:  2rem; }
  .gift-overlay .vc-container {
    width: 100%; }

.newletterFooter {
  padding-bottom: 4rem; }

.newsletter-modal.show {
  overflow-y: scroll; }

.newsletter-modal .modal-header h2 {
  padding: 0; }

.order-recap .grand-total {
  font-size:  1.375rem !important; }

.order-recap .exchangeable-gifts-title {
  margin: 0; }

.order-recap.order-recap-checkout {
  margin-left: -15px;
  margin-right: -15px; }

.site-search {
  background-color: #f3f1f1; }
  .site-search form {
    padding: 0 13px; }
  .site-search input {
    border-bottom: none;
    font-size:  0.875rem;
    background-color: transparent; }
    .site-search input:focus {
      background-color: transparent; }
  .site-search .fa-search {
    right: 2.2em; }
    .site-search .fa-search:before {
      content: none; }

.custom-tooltip .tooltiptext {
  left: 50%;
  transform: translateX(-27%); }

.three-col-text .triple-text-carousel .carousel-inner {
  min-height:  9.375rem; }

/*# sourceMappingURL=sm-max.css.map*/