/* Fonts */
/* default letter spacing for titles */
/* Main neutral scale */
/* Interaction Color */
/* Brand colors */
/* Accesibility */
/* z-index */
/* rhythm */
/* Icon in button defaut size */
/* Box shadow */
/* LEGACY DEPRECATED */
/* LEGACY DEPRECATED END */
/* screen Dimensions */
/* Mixings */
/* components */
/* Mapa de la página principal */
.home__map-container {
  height: 30rem;
}
/* Encabezado de la página principal */
.home__header {
  display: table;
  height: 100vh;
  margin-bottom: calc(var(--homeImageOffset, var(--headerHeight, 6rem)) * -1);
  position: relative;
  top: calc(var(--homeImageOffset, var(--headerHeight, 6rem)) * -1);
  width: 100%;
  /* apple devices fixes */
}
@media all and (device-width: 375px) and (device-height: 667px), all and (device-width: 414px) and (device-height: 736px), all and (device-width: 320px) and (device-height: 568px) {
  .home__header {
    height: calc(100vh - 62px);
  }
}
@media only screen and (orientation: landscape) {
  .home__header {
    height: 100vh;
  }
}
.home__header::before {
  content: '';
  height: 100%;
  position: absolute;
  width: 100%;
}
.home__header-text {
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: center;
  margin: 0 1.5rem;
  padding: 1.5rem 0;
  position: relative;
  top: -2.5rem;
  z-index: 1;
  /* apple devices fixes */
}
@media all and (device-width: 375px) and (device-height: 667px), all and (device-width: 414px) and (device-height: 736px), all and (device-width: 320px) and (device-height: 568px) {
  .home__header-text {
    height: calc(100vh - 62px);
  }
}
@media only screen and (orientation: landscape) {
  .home__header-text {
    top: 0;
  }
}
.home__header-text-hotel,
.home__header-text-destination,
.home__header-text-official {
  margin: 0 0 1rem;
}
.home__header-text-destination {
  order: 0;
}
.home__header-text-hotel {
  order: 1;
}
.home__header-text-official {
  order: 2;
}
.home__header-highlights {
  order: 3;
}
.home__header {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.home__header::before {
  background-color: var(--imageOverlayBgColor, var(--homeHeaderOverlayBgColor, hsla(0, 0%, 0%, 0.5)));
}
.home__header-text {
  font-weight: 700;
  text-align: center;
}
.home__header-text-destination {
  color: var(--homeHeaderTextDestinationColor, var(--colorMain, hsl(45, 37%, 54%)));
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  text-shadow: var(--homeHeaderTextDestinationShadow, 0 0.1rem 0.3rem hsla(0, 0%, 0%, 0.25));
}
@media only screen and (min-width: 400px) {
  .home__header-text-destination {
    font-size: 1.8rem;
  }
}
@media only screen and (device-width : 414px) and (device-height : 736px)
            and (-webkit-device-pixel-ratio : 3), only screen and (device-width : 375px) and (device-height : 812px)
            and (-webkit-device-pixel-ratio : 3) {
  .home__header-text-destination {
    font-size: 2rem;
  }
}
.home__header-text-hotel {
  color: var(--homeHeaderTextHotelColor, #fff);
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  text-shadow: var(--homeHeaderTextHotelShadow, 0 0.1rem 0.3rem hsla(0, 0%, 0%, 0.25));
}
@media only screen and (device-width : 414px) and (device-height : 736px)
            and (-webkit-device-pixel-ratio : 3), only screen and (device-width : 375px) and (device-height : 812px)
            and (-webkit-device-pixel-ratio : 3) {
  .home__header-text-hotel {
    font-size: 3rem;
  }
}
.home__header-text-official {
  color: var(--homeHeaderTextOfficialColor, var(--colorMain, hsl(45, 37%, 54%)));
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  text-shadow: var(--homeHeaderTextOfficialShadow, 0 0.1rem 0.3rem hsla(0, 0%, 0%, 0.25));
  text-transform: uppercase;
}
@media only screen and (device-width : 414px) and (device-height : 736px)
            and (-webkit-device-pixel-ratio : 3), only screen and (device-width : 375px) and (device-height : 812px)
            and (-webkit-device-pixel-ratio : 3) {
  .home__header-text-official {
    font-size: 1.6rem;
  }
}
.header--internal {
  background-color: var(--headerInternalBackgroundColor, var(--colorCorporate, hsl(202, 69%, 10%)));
}
.header__menu-button {
  background: none;
  border: 0;
  color: var(--headerMenuButtonColor, hsl(0, 0%, 97.4%));
  font-size: 2.8rem;
  outline: none;
}
.header__menu-button::after {
  content: 'menu';
  display: block;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.9rem;
  line-height: 0.4;
}
.header {
  height: var(--headerHeight, 6rem);
  position: relative;
}
.header--internal {
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding-left: 0.5rem;
}
.header--internal,
.header__logo {
  display: -webkit-flex;
  display: flex;
}
.header__logo {
  height: 100%;
  width: auto;
}
.header__logo img {
  -webkit-align-self: center;
  align-self: center;
  height: unset;
  max-height: 5rem;
  max-width: var(--headerLogoMaxWithS, 10rem);
  min-height: unset;
}
@media only screen and (min-width: 400px) {
  .header__logo img {
    max-width: var(--headerLogoMaxWithM, 14rem);
  }
}
.header__logo-container {
  z-index: 100;
}
.header__logo-container--open {
  z-index: var(--headeLogoZindexOpen, 500);
}
.header__navigation {
  display: -webkit-flex;
  display: flex;
  padding-right: 5rem;
  position: relative;
}
.header__menu-button {
  display: none;
  height: 4.2rem;
  margin: 0;
  padding: 0;
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
  width: 4.2rem;
  z-index: 500;
}
.header__menu-button.active {
  display: block;
  height: 5.2rem;
  right: 0;
  top: 0;
  width: 5.2rem;
}

