/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Template: generatepress
Author: Tom Usborne
Author URI: https://tomusborne.com
Description: Default GeneratePress child theme
Version: 0.1
Updated: 2024-10-31 11:47:59

*/

* {
	background-color: transparent;
}

[data-scroll-container] {
    overflow: hidden;
}

[data-scroll-section] {
    min-height: 100vh;
}

/* Colores globales onetbooking */

html {
  --ob-primary-50: #fdf2f7;
  --ob-primary-100: #fce7f0;
  --ob-primary-200: #fbcfe3;
  --ob-primary-300: #f9a8cc;
  --ob-primary-400: #f472ac;
  --ob-primary-500: #ec4891;
  --ob-primary-600: #db2777;
  --ob-primary-700: #be1862;
  --ob-primary-800: #9d1753;
  --ob-primary-900: #831848;
  --ob-primary-950: #500727;
}

figure.w-100 img {
 width: 100%;
}

div.h-100 img, div.h-100 figure, div.h-100 div, div.h-100 span {
 height: 100%;
}

figure.h-400 img {
 height: 400px;
}


.widget-reservas {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 999;
}

/* Cabecera y menú */
nav {
	display: none !important;
}

.wp-block-columns.alignfull.is-layout-flex.wp-container-core-columns-is-layout-1.wp-block-columns-is-layout-flex {
	height: 100dvh;
}

@media (min-width: 900px) {
    .site-header .main-menu-trigger {
        transition: color .4s cubic-bezier(0.45,0,0.55,1);
    }
}

.site-header .main-menu-trigger {
    transition: color .2s cubic-bezier(0.45,0,0.55,1);
}

.site-header .booking-link, .site-header .main-menu-trigger, .site-header .site-image {
    display: inline-flex;
    position: relative;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 10;
}

.site-header .booking-link {
    margin-left: auto;
    text-decoration: none;
}

@media (hover: hover) {
    :where(a), :where(button) {
        transition: color .2s cubic-bezier(0.45,0,0.55,1);
    }
}

.site-header {
    --header-background-color: #eeede4;
    --header-background-position: -100%;
    --header-transition-ease: cubic-bezier(.76,0,.24,1);
    --header-transition-duration-border: 0ms;
    --header-transition-duration-background: .8s;
}
.site-header, div.wp-container-core-group-is-layout-1 {
	background-color: transparent;
    align-items: center;
    animation: slide-in .8s forwards;
    /*display: grid;*/
    grid-template-columns: 1fr auto 1fr;
    height: 4.5rem;
    /*justify-content: space-between;*/
    padding: 0 2rem;
    position: fixed;
    top: -1px;
    transition: transform .2s cubic-bezier(0.5,1,0.89,1), opacity .2s;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: 100vw;
    z-index: 100;
}

.site-header:after {
	margin-left: -2%;
}

.site-header:after {
    /*background-color: var(--ob-primary-600);*/ /* Descomentar cuanto se tenga el color del hotel y eliminar el background del elemento */
    background-color: #CEFFA3; /* Eliminar o comentar cuando se tenga el color del hotel */
    transform: translateY(var(--header-background-position));
    transition: background-color var(--header-transition-duration-background) var(--header-transition-ease), transform var(--header-transition-duration-background) var(--header-transition-ease);
    z-index: 1;
}

.site-header:after, .site-header:before {
    content: "";
    height: 100vh;
    position: absolute;
    top: 0;
    width: 100%;
}

.site-header:before {
    background-color: var(--header-border-color, transparent);
    left: 0;
    transform: translateY(calc(var(--header-background-position) + .0625rem));
    transition: background-color .1s cubic-bezier(0.45,0,0.55,1), transform var(--header-transition-duration-border) var(--header-transition-ease);
    z-index: 0;
}

.site-header .booking-link:after, .site-header .main-menu-trigger:after {
    content: "";
    top: -2em;
    right: -2em;
    bottom: -2em;
    left: -2em;
    position: absolute;
}

a.booking-link.has-link-color {
	font-weight: 700;
}

/*.site-header .booking-link:after, .site-header .main-menu-trigger:after {
    inset: -2em;
}*/

:where(button), :where(input) {
    background: none;
    border: 0;
    cursor: pointer;
    font-family: var(--sans-serif);
    font-size: inherit;
}

.site-header.menu-is-open {
	/*--header-background-color: var(--ob-primary-600);*/ /* Descomentar cuanto se tenga el color del hotel y eliminar el background del elemento */
    --header-background-color: #CEFFA3; /* Eliminar o comentar cuando se tenga el color del hotel */
    --header-background-position: 0px;
    --header-border-color: rgba(0,0,0,0.55);
    --header-transition-duration-border: .8s;
    --header-transition-duration-background: .85s;
}

.site-header-menu.open {
    opacity: 1;
    transform: translateY(0);
    transition: all .8s cubic-bezier(.25,1,.5,1) .5s;
    --site-header-menu-border-scale: 1;
	overscroll-behavior: contain;
}

.site-header-menu.open .site-header-menu-column.content:after {
    transition: transform 1s cubic-bezier(.25,1,.5,1) 1.5s;
}

@media (min-width: 900px) {
    .site-header-menu {
        flex-direction: row;
    }
}
.site-header-menu {
    display: flex;
    flex-direction: column;
    height: 100vh;
    height: 100dvh;
    left: 0;
    opacity: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    pointer-events: none;
    position: fixed;
    top: 0;
    transform: translateY(-5%);
    transition: all .3s cubic-bezier(.32,0,.67,0);
    width: 100vw;
    z-index: 3;
}

.site-header-menu-column.content {
    color: var(--contrast);
    display: flex;
    flex-direction: column;
    gap: min(4.2vh, 3rem);
    justify-content: space-between;
    min-height: 100%;
    padding: 4.5rem 2rem 2rem;
}

.site-header-menu-column.content:after {
    background-color: rgba(0,0,0,0.15);
    content: "";
    display: block;
    /*height: calc(100% - 4.5rem - 2rem);*/
	height: calc(100% - 4.5rem - 4.5rem);
    position: absolute;
    right: 0;
    top: 4.5rem;
    transform: scaleY(var(--site-header-menu-border-scale, 0));
    transform-origin: top;
    transition: transform .4s cubic-bezier(.25,1,.5,1);
    width: 1px;
}

@media (min-width: 900px) {
    .site-header-menu-column {
        position: relative;
        width: 50vw;
    }
}

.site-header-menu.open .site-header-menu-column * {
    pointer-events: all;
}

.site-header-menu .main-menu {
    display: flex;
    flex-direction: column;
    list-style: none;
    /*width: 100%;*/
}

.site-header-menu .main-menu li {
    border-top: 1px solid rgba(0,0,0,0.15);
    position: relative;
}

@media (hover: hover) {
    .site-header-menu .main-menu li a {
        color: #000;
		text-decoration: none;
    }
}

.site-header-menu .main-menu-link {
    display: block;
    padding-block: min(2.7vh, 2rem);
    text-decoration: none;
}

.wp-block-list.main-menu {
	margin: 0;
}

.text-subhead-scaling {
    font-size: min(2.6vh, 1.875vw);
    line-height: min(3.4vh, calc(1.875vw*1.3));
}

.text-subhead, .text-subhead-scaling {
    font-family: Poiret One;
    letter-spacing: .05em;
    margin-block-start: 0;
}

.site-header-menu .main-menu li:after {
    background-color: var(--contrast);
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    top: -1px;
    transform: scaleX(var(--scale, 0));
    transform-origin: left;
    transition: transform .4s cubic-bezier(0.45,0,0.55,1);
    width: 100%;
}

@media (hover: hover) {
    .site-header-menu .main-menu li:has(:hover):after {
        --scale: 1;
    }
}

button.gb-button-3f1f73e9:hover, button.gb-button-3f1f73e9:active, button.gb-button-3f1f73e9:focus, .link-field.booking-link {
    background-color: transparent !important;
}

.link-field.booking-link:hover {
	color: var(--ob-primary-600) !important;
}

button.gb-button-3f1f73e9.menu-is-open, button.gb-button-3f1f73e9.menu-is-open:hover, button.gb-button-3f1f73e9.menu-is-open:active, button.gb-button-3f1f73e9.menu-is-open:focus, .menu-is-open .link-field.booking-link {
    color: var(--contrast) !important;
}

.menu-is-open #gspb_iconBox-id-gsbp-8cef211.site-image svg, .menu-is-open #gspb_iconBox-id-gsbp-8cef211 svg path, .menu-is-open #gspb_iconBox-id-gsbp-8cef211.site-image:hover svg, .menu-is-open #gspb_iconBox-id-gsbp-8cef211:hover svg path {
	fill: var(--contrast)!important;
}

.site-header .site-image.media.big {
    transform: scale(1.42) translateY(.375rem);
}

@media (min-width: 900px) {
    .site-header .site-image.media {
        transition: transform .6s cubic-bezier(0.45,0,0.55,1);
    }
}

.wp-block-button.has-custom-font-size.btn-elegir.is-style-fill.has-poiret-one-font-family {
	text-align: end;
}

/* Menú scroll */
.menu-scrolled {
    /*background-color: #eeede4;*/
    transition: background-color 0.85s ease, color 0.85s ease;
	--header-background-position: calc(-100% + 4.5rem);
}

.menu-scrolled a {
    color: #000000 !important; /* Texto negro */
}

.menu-scrolled .gb-button {
    color: #000000 !important; /* Botón texto negro */
}

.menu-scrolled:after {
	background-color: #eeede4 !important;
}

#gspb_iconBox-id-gsbp-8cef211.site-image.small svg, #gspb_iconBox-id-gsbp-8cef211.small svg path, #gspb_iconBox-id-gsbp-8cef211.site-image.small:hover svg, #gspb_iconBox-id-gsbp-8cef211.small:hover svg path {
	fill: var(--contrast)!important;
}

/* Elemento mail-dirección-tel */
.wp-block-group.alignfull.group-scrolldown.widget-reservas.has-global-padding.is-layout-constrained.wp-container-core-group-is-layout-20.wp-block-group-is-layout-constrained {
	padding-top: 0!important;
}

.richtext {
    font-size: 0.875rem !important;
    line-height: 1.26875rem;
}

.site-header-menu .contact-info p {
    margin-bottom: 0 !important;
	margin-block-start: 0 !important;
}

.site-header-menu .contact-info p {
    margin-bottom: 0 !important;
	margin-block-start: 0 !important;
}

.site-header-menu .contact-info a {
	color: inherit;
}

.richtext .text-body, .richtext p:not([class]) {
    margin-bottom: 1rem;
}

.richtext :last-child {
    margin-bottom: 0 !important;
}

/* Imagenes que cambian en la cabecera */
.site-header-menu-column.images {
    position: relative;
}

.site-header-menu-column.images .media, .site-header-menu-column.images .media img, .site-header-menu-column.images .media video {
    height: 100%;
}

@media (min-width: 900px) {
    .site-header-menu-column.images .media {
        padding: 4.5rem 2rem 2rem;
    }
}

.site-header-menu-column.images .media {
    opacity: 0;
    padding: 4.5rem 2rem;
    position: absolute;
    transition: opacity .6s cubic-bezier(0.45,0,0.55,1);
}

:where(.media) {
    height: auto;
    width: 100%;
}

:where(.media) {
    position: relative;
}

.media :where(img), .media :where(video) {
    height: auto;
    -o-object-fit: cover;
    object-fit: cover;
    vertical-align: middle;
    width: 100%;
}

.image img {
	background-position: 50% 50%;
    object-position: 50% 50%;
}

.site-header-menu-column.images .media.visible {
    opacity: 1;
}

.site-header-menu-column .media .noise-container figure {
	height: 100%;
}

/* Elemento sticky en columnas con texto */

.sticky-col div, .sticky-col-left div {
	position: sticky;
	top: calc(4.5rem + 2rem / 2);
	padding-left:var(--wp--preset--spacing--30);
}

.sticky-col {
	border-left: 1px solid #00000026;
}

.sticky-col-left {
	border-right: 1px solid #00000026;
}

/* Elemento sticky en columnas sin texto */

.sticky-col-st div, .sticky-col-left-st div {
	position: sticky;
	top: calc(4.5rem + 2rem / 2);
	padding-left:var(--wp--preset--spacing--30);
}

/* Efectos al hacer scroll */
.fade-in-scroll {
    opacity: 0;
    /*transform: translateY(20px);*/
    transition: opacity 2s ease-out, transform 2s ease-out;
}

.fade-in-scroll.visible {
    opacity: 1;
    /*transform: translateY(0);*/
}

/* Estilo de todos los botones de la web */
.botones a:before, .botones-light a:before {
	inset: 0 4px;
}

.botones a:after, .botones-light a:after {
	inset: 4px 0;
}

.botones a:before, .botones a:after, .botones-light a:before, .botones-light a:after {
    content: "";
    pointer-events: none;
    position: absolute;
    transition-duration: .2s;
    transition-property: inset, border-color;
}

.botones a:before, .botones a:after {
	border: 1px solid #00000026;
}

.botones-light a:before, .botones-light a:after {
	border: 1px solid #fff;
}

.p-boton p:not(:first-of-type) .botones a, .p-boton p:not(:first-of-type) .botones-light a {
    --cta-margin-top: 1.5rem;
}

.botones a, .botones-light a {
	display: inline-flex;
    justify-content: center;
    min-width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)*2rem)/12 + 2rem)* 2 - 2rem);
    padding: 1rem 3rem;
    position: relative;
    text-align: center;
    text-decoration: none;
	font-family: Poiret One, display;
	font-weight: 600;
	font-size: 0.875rem;
}

.botones a {
	color: black;
}

.botones-light a {
	color: white;
}

p.botones a, p.botones-light a {
    border: 2px solid transparent;
    transition: color .3s, border-color .3s;
}

p.botones:hover a, p.botones-light:hover a {
	font-family: Poiret One, display;
	font-weight: 600;
	font-size: 0.875rem;
	text-decoration: none;
    /*border: solid 1px black;
	transition: color .2s cubic-bezier(0.45,0,0.55,1);*/
}

p.botones:hover a {
	color: black;
	border-color: black;
}

p.botones-light:hover a {
	color: white;
	border-color: white;
}

p.botones a:hover:before,
p.botones a:hover:after,
p.botones-light a:hover:before,
p.botones-light a:hover:after {
    content: none; /* Eliminar los pseudo-elementos al hacer hover */
}

/* Estilo de los listados */
.listado li::marker {
    content: "- ";
}

/* Estilo de todos los enlaces */

a {
	color: currentcolor;
	text-decoration: underline
}

a:hover {
	color: var(--ob-primary-600)
}

@media (hover: hover) {
    :where(a) {
        transition: color .2s cubic-bezier(0.45,0,0.55,1);
    }
}

/* Imágenes cta */
.image-teaser {
	height: 100vh;
	margin-top: 1.5rem;
	position: relative;
}

/* Textos dentro de cta */
.wp-block-cover .wp-block-cover__inner-container {
	height: 100%
}

.grupo {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 2rem 0;
}

.text-tag {
	font-size: 0.75rem;
  line-height: 1.05rem;
  letter-spacing: .04em;
}

.text-subtitle {
	font-size: 0.875rem;
  line-height: 1.26rem;
  letter-spacing: .04em;
}

/* Estilo de los cards */
.tarjetas {
	box-shadow: inset 0 0 0 1px rgba(0,0,0,0.15);
	transition: box-shadow .3s cubic-bezier(0.45,0,0.55,1);
	padding: 2.5rem 2rem 0;
	aspect-ratio: .75 / 1;
	position: relative;
}

.tarjetas:hover {
	box-shadow: inset 0 0 0 .5rem black;
}

.tarjetas div {
	height: 100%
}

.tarjetas>div>div {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 2rem 0;
}

.tarjetas:after {
    border: 1px solid rgba(0,0,0,0.15);
    content: "";
    top: .5rem;
    right: .5rem;
    bottom: .5rem;
    left: .5rem;
    position: absolute;
}

/* Estilo de los hr */
.wp-block-separator {
    border: none;
}

/* Estilo Hero habitaciones */
.transition-target {
    display: flex;
    flex-direction: column;
}

/* Estilo grid Hero habitaciones */

.room-information-white {
	color: #F0F0F0;
    align-items: end;
    display: inline-grid;
    gap: 1rem;
    grid-template-columns: 1fr auto 1fr;
    justify-items: center;
}

.room-information-white .nuxt-icon {
    font-size: 3rem;
	margin-block-start: 0px;
}

.room-information-white * {
    line-height: .9;
}

/* Estilo listado items habitaciones */
.bullets .list {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 3rem;
    justify-content: center;
    padding:3rem 2rem;
    width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)*3 - 2rem);
}

.bullets .list, .bullets-media img, .bullets-media video {
    aspect-ratio: 3 / 4;
}

.bullets .list:before {
    top: 4px;
    right: 0;
    bottom: 4px;
    left: 0;
}
.bullets .list:after, .bullets .list:before {
    border: 1px solid rgba(0,0,0,0.15);
    content: "";
    position: absolute;
}

@media (min-width: 900px) {
    .text-button-label {
        font-size: 0.875rem !important;
        line-height: 1.225rem !important;
    }
}

.text-button-label {
    font-size: 0.75rem;
    line-height: 1.05rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.bullets .items {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    text-align: center;
}

.bullets .items li {
    list-style: none;
}

@media (max-width: 900px) {
    .text-tag {
    font-size: 0.625rem;
    line-height: 0.875rem;
    }
}
.text-tag {
	font-size: 0.75rem;
    line-height: 1.05rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.bullets .list:after {
    top: 0;
    right: 4px;
    bottom: 0;
    left: 4px;
}

.bullets .list:after, .bullets .list:before {
    border: 1px solid rgba(0,0,0,0.15);
    content: "";
    position: absolute;
}

.bullets .list:after {
    inset: 0 4px;
}

@media (min-width: 900px) {
    .bullets-media.media-1 {
        width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/12 + 2rem)* 6 - 2rem);
    }
	.bullets-media {
        width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)* 3 - 2rem);
    }
}

@media (min-width: 900px) {
    .bullets-item {
        position: sticky;
        top: calc(4.5rem + 2rem);
    }
}

/* Estilo card salones y gracias por contactar */
.bullets-salon .list {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 3rem;
    justify-content: center;
    padding:3rem 2rem;
    width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)*3 - 2rem);
	text-align: center;
	font-family: 'Poiret One';
	color: black;
}

.bullets-salon .list:before {
    top: 4px;
    right: 0;
    bottom: 4px;
    left: 0;
}

.bullets-salon .list:after, .bullets-salon .list:before {
    border: 1px solid rgba(0,0,0,0.15);
    content: "";
    position: absolute;
}

.bullets-salon .list:after {
    top: 0;
    right: 4px;
    bottom: 0;
    left: 4px;
}

.bullets-salon .list:after, .bullets-salon .list:before {
    border: 1px solid rgba(0,0,0,0.15);
    content: "";
    position: absolute;
}

.bullets-salon .list:after {
    inset: 0 4px;
}

.bullets-salon .wp-block-column {
	align-self: center;
}

.bullets-width {
	width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)*4 - 1.5rem) !important;
}

/* Estilo imagen horizontal habitaciones */
.gallery-landscape.reversed {
    flex-direction: column-reverse;
}

.module {
    overflow-x: clip;
}

@media (min-width: 900px) {
    .gallery-landscape {
        flex-direction: row;
    }
}

.gallery-landscape {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin: 0 2rem;
    padding: 2.5rem 0;
}

@media (min-width: 900px) {
    .gallery-landscape.reversed .right {
        margin-left: auto;
        width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)* 9 - 2rem);
    }
	
	.gallery-landscape-media {
        position: sticky !important;
        top: calc(4.5rem + 2rem);
    }
}

.gallery-landscape-media {
    position: relative;
}

.media {
    height: auto;
    width: 100%;
}

.media .noise-container {
    height: 100%;
    position: relative;
    width: 100%;
}

.gallery-landscape.reversed .right img, .gallery-landscape.reversed .right video {
    aspect-ratio: 3 / 2;
	background-position: 50% 50%;
    object-position: 50% 50%;
}

.media :where(img), .media :where(video) {
    height: auto;
    object-fit: cover;
    vertical-align: middle;
    width: 100%;
}

.image {
    background-size: cover;
}

.bullets .sticky-col div, .bullets .sticky-col-left div {
	position: sticky;
	top: calc(4.5rem + 2rem);
	padding-left:var(--wp--preset--spacing--30);
}

/* Estilo Slider Habitaciones*/
.slider-content-zone {
	/*aspect-ratio: 3 / 4;*/
    display: inline-flex;
    text-decoration: none;
    transition: box-shadow .3s var(--ease-in-out);
	height: 100%;
    overflow: clip;
    position: absolute;
}

.item-content.room-card {
	height: auto;
    /*max-width: 37.5rem;*/
	margin-bottom: 2.5rem;
    /*margin-top: 4rem;*/
    position: relative;
    z-index: 1;
    align-items: center;
    aspect-ratio: 3 / 4;
	background: #eeede4;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.2);
    display: inline-flex;
    flex-direction: column;
	position: relative;
    text-decoration: none;
    transition: box-shadow .3s cubic-bezier(0.45,0,0.55,1);
	/*width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)* 4 - 2rem);*/
}

.gspb_sliderinner-id-gsbp-cb5c68c div.item-content.room-card,
.gspb_sliderinner-id-gsbp-4777006 div.item-content.room-card,
.gspb_sliderinner-id-gsbp-170dc14 div.item-content.room-card,
.gspb_sliderinner-id-gsbp-da09b92 div.item-content.room-card {
	max-width: 37.5rem;
	margin-top: 4rem;
	width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)* 4 - 2rem);
}

.item-content.room-card:hover {
	box-shadow: inset 0 0 0 8px rgba(0,0,0);
}

@media (min-width: 900px) {
    /*.item-content.room-card {*/
        /*height: 100%;*/
        /*width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)* 6 - 2rem);
    }*/
	
	.gspb_sliderinner-id-gsbp-cb5c68c div.item-content.room-card,
	.gspb_sliderinner-id-gsbp-4777006 div.item-content.room-card,
	.gspb_sliderinner-id-gsbp-170dc14 div.item-content.room-card,
	.gspb_sliderinner-id-gsbp-da09b92 div.item-content.room-card {
		width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem)/ 12 + 2rem)* 6 - 2rem);
	}
}

.room-card-top {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-bottom: auto;
    padding: 3rem;
    text-align: center;
	z-index: 2;
}

.room-card-media {
    padding: 0 calc(2rem + .5rem);
}

@media (min-width: 900px) {
    .room-card-media {
        padding: 0 2rem;
    }
}

.gspb_slider-id-gsbp-8b5685e .swiper-slide-inner {
    /*min-height: 100vw !important;*/
}

.room-card:after {
	border: 1px solid rgba(0,0,0,0.2);
	content: "";
	top: .5rem;
	right: .5rem;
	bottom: .5rem;
	left: .5rem;
	position: absolute;
	z-index: 0;
}

.room-card-bottom {
	margin: 1.5rem 2rem 0;
	padding: 1.5rem 1.5rem 2rem;
	width: calc(100% - 2rem* 2);
}

@media (min-width: 900px) {
	.room-card-bottom {
		margin: 1.5rem 2rem 0;
		padding: 1.5rem 2rem 2rem;
		width: calc(100% - 2.5rem* 2);
		align-items: center;
		border-top: 1px solid rgba(0,0,0,0.15);
		text-align: center;
		position: relative;
		z-index: 2
	}
}

.gb-block-image-926cfd42 {
	margin-block-start: 0;
}

.text-decoration-none a {
	text-decoration: none !important;
	margin-top: 1.5rem;
    transition: color .3s cubic-bezier(0.45, 0, 0.55, 1);
	font-weight: 700;
	letter-spacing: .04em;
}

/* Estilo grid slider habitaciones */
.room-card .page-transition-anchor {
    display: flex;
    flex-direction: column;
}

.room-information {
    align-items: end;
    display: inline-grid;
    gap: 1rem;
    grid-template-columns: 1fr auto 1fr;
    justify-items: center;
}

.room-information-type {
    grid-column: 2;
    height: .9em;
}

.room-information-persons {
    grid-column: 1;
    grid-row: 2;
    justify-self: right;
}

.room-information .nuxt-icon {
    font-size: 3rem;
	margin-block-start: 0px;
}

.room-information-icon {
    grid-column: 2;
    grid-row: 2;
    fill: currentColor;
}

.room-information-size {
    grid-column: 3;
    grid-row: 2;
    justify-self: left;
}

.room-information * {
    line-height: .9;
}

/* Estilo página Habitaciones */
.gb-grid-wrapper-4b716d2f {
    /*flex-wrap: nowrap !important;*/
    /*gap: 2.5rem 2rem;*/
}

/* Estilo página Restaurante */
.carrousel-scrollbar .swiper-scrollbar {
	background-color: var(--carousel-scrollbar-background-color, rgba(0,0,0,0.15));
    height: .0625rem;
    margin-inline: 2rem;
    position: relative;
    width: calc(100% - 2rem* 2);
    z-index: 1;
	margin-block: 1.5rem;
}

/* Asegura que la barra de desplazamiento del slider se vea como si fuera el primer elemento */
.wp-block-greenshift-blocks-swiper .swiper-scrollbar {
    position: absolute;
    top: -50px;
    left: 0;
    z-index: 10;
    pointer-events: none;
}

/* Footer */
.site-footer, .site-footer-content {
    display: flex;
    flex-direction: column;
    position: relative;
}

.site-footer {
    align-items: flex-start;
    /*height: 100vh;*/
    margin-top: auto;
    width: 100vw;
}

@media (min-width: 900px) {
    .site-footer-content {
        align-items: flex-start;
        justify-content: space-between;
    }
}

.site-footer-content {
    /*align-items: center;*/
    background: var(--ob-primary-600);
    flex-grow: 1;
    /*justify-content: center;*/
    padding: 2rem 2rem 8rem;
    width: 100%;
}

.site-footer-content .content {
    margin: 0 !important;

}

.site-footer, .site-footer-content {
    display: flex;
    flex-direction: column;
    position: relative;
}

.site-footer .content {
    aspect-ratio: 1 / 1;
    background: #eeede4;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 80%;
    padding: 2rem;
    text-align: center;
    width: 25rem;
    z-index: 1;
}

.site-footer .background-image {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    position: absolute;
}

.site-footer .background-image {
    inset: 0;
    position: absolute;
}

.site-footer-content:after {
    background: linear-gradient(transparent, var(--ob-primary-600));
    bottom: 0;
    content: "";
    height: 6rem;
    left: 0;
    position: absolute;
    width: 100%;
}

.site-footer .footer-bottom {
    background-color: var(--ob-primary-600);
    margin-top: auto;
    padding: 1rem 2rem;
    width: 100%;
    z-index: 1;
}

@media (min-width: 900px) {
    .site-footer .footer-bottom .newsletter-link {
        width: calc(calc(calc(100vw - 2rem*2 - (12 - 1)* 2rem) / 12 + 2rem)* 3 - 2rem);
    }
}
.site-footer .footer-bottom .newsletter-link {
    border-bottom: 1px solid rgba(0,0,0,0.15);
    display: inline-block;
    margin-bottom: 1rem;
    margin-left: 0;
    padding: 1rem 0;
    position: relative;
    text-decoration: none;
    /*width: 100%;*/
}

.site-footer .footer-bottom .newsletter-link:after {
    background: currentColor;
    bottom: -1px;
    content: "";
    height: .125rem;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .2s;
    width: 100%;
}

@media (min-width: 900px) {
    /*.site-footer .footer-menus {
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
    }*/
}

@media (min-width: 900px) {
    .site-footer .footer-bottom .socia-media-menu {
        gap: 1rem;
    }
}

.site-footer .footer-bottom .socia-media-menu {
    display: flex;
    gap: 2rem;
    /*padding: 1rem 0;*/
}

@media (min-width: 900px) {
    .site-footer .footer-bottom .footer-menu {
        display: flex;
        gap: 0 2rem;
        padding-block: 0;
    }
}

.site-footer .footer-bottom .footer-menu {
    display: grid;
    flex-wrap: wrap;
    gap: 2rem;
    /*grid-template-columns: 1fr 1fr*/;
    list-style: none;
    padding-block: 1rem;
}

.site-footer .footer-bottom .footer-menu li {
    display: inline-flex;
	padding-right: 2rem;
}

.site-footer .footer-bottom .footer-menu ul {
    margin-left: 0;
}

.site-footer .media {
	max-width: 100% !important;
	margin-block-start: 0 !important;
}

.site-footer .media .noise-container {
	max-width: 100% !important;
}

.site-footer-content .media .noise-container img {
	height: 682px !important;
}

.footer-bottom {
	max-width: 100% !important;
}

.footer-bottom a, .site-footer-content .contact-info a {
	text-decoration: none;
}

.site-footer-content .contact-info p {
	margin-block-start: 0 !important;
	margin-bottom: 0.75rem;
}

.footer-bottom a:hover {
	color: #eeede4;
}

.footer-menus, .footer-menus .wp-block-columns.is-layout-flex.wp-container-core-columns-is-layout-7.wp-block-columns-is-layout-flex {
	margin-left: 0 !important;
	margin-block-start: 0;
}

.footer-menus {
	margin-right: 0 !important;
	max-width: 100%;
}

.footer-menus .wp-block-columns.is-layout-flex.wp-container-core-columns-is-layout-7.wp-block-columns-is-layout-flex {
	margin-right: 0 !important;
	max-width: 100%;
}

.socia-media-menu svg {
	width: 30px !important;
    height: 30px !important;
}

.socia-media-menu {
	place-content: center;
}

.socia-media-menu .gspb_iconBox-id-gsbp-862033e {
	margin-top: 0;
}

.site-footer footer.site-info {
	display: none;
}