@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

:root {

  /* Set by Compass from Design Wizard: */
  --branding-default: #E9E8DD;
  --branding-hovered: #91957b; /* auto: 16% darker */
  --branding-pressed: #122635; /* auto: 32% darker */

  /* Aliases (derive from above): */
  --brand-color: var(--branding-default);
  --brand-color-rgb: 27, 56, 78;
  --brand-hovered: var(--branding-hovered);
  --brand-pressed: var(--branding-pressed);

  --brand-color-2: #91957b;
  --brand-color-2-hovered: #E9E8DD;
  --custom-text-1: #91957b;

  /* Customisable text/bg variants: */
  --text-over-branding: #FFF;
  --brand-color-text: var(--brand-color-2);
  --brand-color-background: var(--brand-color);
  --brand-color-border: var(--brand-color);

  /* Make all spacing 25% larger: */
  --spacing-1x: 10px;

  /* Use Montserrat for headings: */
  --font-stack-sans-serif: 'Roboto', Helvetica, Arial, Lucida, sans-serif;
  --footer-font: 'Roboto', Helvetica, Arial, Lucida, sans-serif;
  --headline-font: 'Roboto', Helvetica, Arial, Lucida, sans-serif;

  /* Increase paragraph size: */
  --text-size-paragraph: 16px;
  --line-height-paragraph: 24px;

  --border-radius-1x: 0px;

  /* Make primary images wider (cinematic): */
  --img-ratio-primary: 21 / 9;
  --img-ratio-room-primary: 21 / 9;
  --img-ratio-rate-primary: 21 / 9;

  /* Make secondary images square: */
  --img-ratio-secondary: 1 / 1;
  --img-ratio-room-secondary: 1 / 1;
  --img-ratio-rate-secondary: 1 / 1;

  /* Different ratios for mobile: */
  --img-ratio-primary-mobile: 16 / 9;
  --img-ratio-room-primary-mobile: 4 / 3;

  /* Warmer background tones: */
  --background-surface: #FAF8F5;
  --base-depth: #F5F0EB;
  --text-default: #4A3728;
  --border-default: #E0D5C8;

  /* Transition */
  --custom-transition: all 0.5s ease;
}


@media screen and (max-width: 991px) {

  :root {
    --font-size-body: 14px;
    --font-size-20: 20px;
    --font-size-22: 22px;

    --container-max-width: 1200px;

  }

}

@media screen {

  /* ----- Content ----- */
  .heading-5,
  .button--branded .paragraph,
  .button--secondary .paragraph {
    font-family: var(--headline-font);
  }
  
  .avvio-calendar .check-in,
  .avvio-calendar .range,
  .avvio-calendar .hovered:hover::before, .avvio-calendar .check-out::before {
    background-color: var(--branding-default);
  }

  .avvio-calendar__date:not(.check-out):not(.unavailable):hover,
  .avvio-calendar .hovered {
    background-color: var(--branding-hovered);
  }

  .mda-table .date-header .state.active {
    background-color: var(--branding-default);
  }

  .mda-table__hovered:not(.mda-table__closed, .mda-table__no-checkin, .mda-table__no-depart):hover, .mda-table__col-price.mda-table__stay-date:not(.mda-table__no-checkin, .mda-table__checkout-date):hover, .mda-table__hovered:hover ~ .mda-table__hovered:not(.mda-table__checkout-date) {
    background-color: var(--branding-default);
  }

  .button--branded {
    text-transform: uppercase;
    color: white;
    background-color: var(--brand-color-2);
    transition: var(--custom-transition);
  }

  .button--branded:hover {
    color: var(--brand-color-2);
    background-color: var(--brand-color-2-hovered);
  }

  /* ----- Header ----- */
  .header-style-3 .logo img {
    max-width: 150px;
    transition: var(--custom-transition);
  }

  .header-style-3 .logo img:hover {
    opacity: .5;
  }

  .header-style-3 .backtosite a {
    display: flex;
    font-family: var(--headline-font);
    font-size: 14px;
    font-weight: 600;
    line-height: 19.6px;
    text-transform: uppercase;
    justify-content: center;
    align-items: center;
    padding: 6px 25px;
    color: white;
    background-color: var(--brand-color-2);
    transition: var(--custom-transition);
  }

  .header-style-3 .backtosite a:hover {
    color: var(--brand-color-2);
    background-color: transparent;
  }

  /* ----- Footer ----- */
  .footer-big {
    background: var(--branding-default);
    color: var(--custom-text-1);
  }

  .footer-big .footer-top {
    display: flex;
    justify-content: space-between;
    max-width: 1205px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .footer-big .contact {
    width: 20.875%;
  }

  .footer-big .contact-container .address {
    font-family: var(--footer-font);
    font-weight: 400;
    font-size: clamp(.88rem,.3vw + .76rem,1.13rem);
    line-height: clamp(1.4rem, .62vw + 1.17rem, 1.91rem);
    letter-spacing: .27px;
  }

  .footer-big .contact-container .address a {
    font-family: var(--footer-font);
    font-weight: 400;
    font-size: 17px;
    transition: var(--custom-transition);
  }

  .footer-big .contact-container .address a:hover {
    color: var(--branding-default);
  }

  .footer-big .contact-container p {
    font-family: var(--footer-font);
    font-weight: 300;
    font-size: 15px;
    line-height: 18px;
    padding-bottom: 15px;
    color: #666666;
  }

  .footer-big .contact-container p a {
    color: #666666;
    position: relative;
    transition: var(--custom-transition);
  }

  .footer-big .contact-container p a::before {
    content: "";
    position: absolute;
    background-color: var(--branding-default);
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    transition: var(--custom-transition);
  }

  .footer-big .contact-container p a:hover::before {
    width: 100%;
  }

  .footer-big .contact-container a {
    font-family: var(--footer-font);
    font-weight: 300;
    font-size: 15px;
    line-height: 18px;
  }

  .footer-big .socials {
    width: 20.875%;;
  }

  .footer-big .socials-container {
    display: block;
  }

  .footer-big .socials-container .socials-icon {
    display: flex;
  }

  .footer-big .socials-container a {
    color: white;
    background: var(--brand-color-2);
    border-radius: 4px;
    margin-bottom: 8px;
    margin-right: 10px;
    padding: 10px;
    gap: 10px;
    transition: var(--custom-transition);
  }

  .footer-big .socials-container a i {
    font-size: 20px;
    margin: 0;
  }

  .footer-big .socials-container a:hover {
    color: var(--branding-hovered);
    background: transparent;
    border: none;
  }

  .footer-big .contact-logo {
    width: 20.875%;
  }

  .footer-big .contact-logo img {
    opacity: 1;
    transition: var(--custom-transition);
  }

  .footer-big .contact-logo img:hover {
    opacity: 0.7;
  }

  .footer-big .contact-logo a {
    display: flex;
    justify-content: center;
  }

  .footer-big .contact-logo a svg {
    height: 100%;
    object-fit: contain;
    width: 100%;
    transition: var(--custom-transition);
  }

  .footer-big .contact-logo a svg:hover {
    opacity: .7;
  }

  .footer-big .subscribe a {
    border: 1px solid white;
    border-radius: 4px;
    box-sizing: border-box;
    color: white;
    background-color: transparent;
    transition: var(--custom-transition);

    display: inline-flex;
    align-items: center;
    cursor: pointer;
    flex-direction: row-reverse;
    font-family: var(--footer-font);
    font-size: clamp(1rem, .15vw + .94rem, 1.13rem);
    font-weight: 700;
    gap: 10px;
    justify-content: space-between;
    letter-spacing: 2.5px;
    line-height: clamp(1rem, .45vw + .83rem, 1.38rem);
    padding: 17px 24px;
    text-decoration: none;
    text-transform: uppercase;
    word-break: normal;
  }

  .footer-big .subscribe a:hover {
    border-color: var(--brand-color-2-hovered);
    background-color: var(--brand-color-2-hovered);
  }

  .footer-big .footer-menu {
    width: 20.875%;
    padding: 0;
  }

  .footer-big .footer-menu-links {
    columns: 1;
  }

  .footer-big .footer-menu-links .menu-item {
    padding: 0;
  }

  .footer-big .footer-menu-links span,
  .footer-big .contact-container span,
  .footer-big .socials-container span,
  .footer-big .contact-container span {
    display: flex;
    font-family: var(--headline-font);
    font-size: 18px;
    font-weight: 300;
    margin-top: 15px;
    padding-bottom: 10px;
  }

  .footer-big .footer-menu-links .menu-item a {
    font-size: 15px;
    letter-spacing: 0;
    color: var(--custom-text-1);
  }

  .footer-big .footer-menu-links .menu-item a::after {
    background: var(--brand-color-2);
  }

  .footer-big .partners-container-group {
    height: 60px;
    max-width: 187px;

    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 70px;
    position: relative;
  }

  .footer-big .partners-container-group::after {
    background: #d6d2c4;
    content: "";
    display: block;
    height: 40px;
    width: 1px;
  }

  .footer-big .partners-container-group a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  .footer-big .partners-container-group a img {
    height: 100%;
    object-fit: contain;
    width: 100%;
    transition: var(--custom-transition);
  }

  .footer-big .partners-container-group a img:hover {
    opacity: .7;
  }

  .footer-big .partners-container-bkg {
    margin: 0;
    padding: 0;
    gap: 10px;
    align-items: flex-start;
    justify-content: flex-start;
  }

  .footer-big .partners-container-bkg a {
    height: 100%;
    position: relative;
    display: block;
    opacity: 1;
  }

  .footer-big .partners-container-bkg a img {
    display: flex;
    max-width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .footer-big .partners-container-bkg img {
    filter: none;
  }

  .footer-big .partners-container-bkg a:hover img {
    filter: none;
  }

  .footer-big .contact-container h1,
  .footer-big .subscribe h1,
  .footer-big .partners-title h1 {
    font-family: ;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1.05px;
    font-size: clamp(1.25rem, .45vw + 1.08rem, 1.63rem);
    line-height: clamp(2.13rem, .38vw + 1.98rem, 2.44rem);
    padding: 0;
    margin: 0;
    margin-bottom: 32px;
  }

  .footer-big .partners-title h1 {
    text-align: center;
    margin-top: 60px;
  }

  .footer-big .contact-shr-container {
    max-width: none;
    font-family: var(--footer-font);
    font-weight: 400;
    color: var(--custom-text-1);
    background: white;
    letter-spacing: .27px;
    font-size: clamp(0.88rem, 0.76rem + 0.3vw, 1.13rem);
    line-height: clamp(1.4rem, 1.17rem + 0.62vw, 1.91rem);
  }

  .footer-big .contact-shr-container a {
    color: var(--brand-color-2);
    transition: var(--custom-transition);
  }

  .footer-big .contact-shr-container a:hover {
    color: var(--brand-color-2-hovered);
  }

}


/* ----- Tablet specific ----- */
@media screen and (max-width: 991px) {

  .footer-big .footer-top {
    flex-direction: column;
  }

  .footer-big .footer-menu,
  .footer-big .contact,
  .footer-big .socials,
  .footer-big .contact-logo {
    width: 100%;
    padding-top: 0;
  }

  .footer-big .footer-menu-links span, .footer-big .contact-container span, .footer-big .socials-container span, .footer-big .contact-container span {
    justify-content: center;
  }

  .footer-big .footer-menu-links {
    text-align: center;
  }

  .footer-big .contact-details {
    text-align: center;
  }

  .footer-big .socials {
    flex-direction: column;
  }

  .footer-big .contact-logo {
    order: 1;
  }

  .footer-big .footer-menu, 
  .footer-big .contact, 
  .footer-big .socials {
    order: 2;
  }

}

@media screen and (max-width: 767px) {

}


/* ----- Mobile specific ----- */
@media screen and (max-width: 499px) {

  .footer-big .partners-container-bkg {
    justify-content: center;
  }

}

@media screen and (max-width: 320px) {

}