@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-ExtraLight.ttf');
    font-weight: 200;
}

@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-Light.ttf');
    font-weight: 300;
}

@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-Regular.ttf');
    font-weight: 400;
}

@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-Medium.ttf');
    font-weight: 500;
}

@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-SemiBold.ttf');
    font-weight: 600;
}

@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-Bold.ttf');
    font-weight: 700;
}

@font-face {
    font-family: 'Nunito';
    src: url('../fonts/Nunito-ExtraBold.ttf');
    font-weight: 800;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Thin.ttf');
    font-weight: 100;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-ExtraLight.ttf');
    font-weight: 200;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Light.ttf');
    font-weight: 300;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Regular.ttf') format('truetype');
    font-weight: 400;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Medium.ttf');
    font-weight: 500;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-SemiBold.ttf');
    font-weight: 600;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Bold.ttf');
    font-weight: 700;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-ExtraBold.ttf');
    font-weight: 800;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Black.ttf');
    font-weight: 900;
}

/*Mulish*/

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-Thin.ttf');
    font-weight: 100;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-ExtraLight.ttf');
    font-weight: 200;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-Light.ttf');
    font-weight: 300;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-Regular.ttf') format('truetype');
    font-weight: 400;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-Medium.ttf');
    font-weight: 500;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-SemiBold.ttf');
    font-weight: 600;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-Bold.ttf');
    font-weight: 700;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-ExtraBold.ttf');
    font-weight: 800;
}

@font-face {
    font-family: 'Mulish';
    src: url('../fonts/Mulish-Black.ttf');
    font-weight: 900;
}


@font-face {
    font-family: 'Lora';
    src: url('../fonts/Lora-Regular.ttf');
    font-weight: 400;
}

@font-face {
    font-family: 'Lora';
    src: url('../fonts/Lora-Medium.ttf');
    font-weight: 500;
}

@font-face {
    font-family: 'Lora';
    src: url('../fonts/Lora-SemiBold.ttf');
    font-weight: 600;
}

@font-face {
    font-family: 'Lora';
    src: url('../fonts/Lora-Bold.ttf');
    font-weight: 700;
}

/*fonts_fin*/

body {
    line-height: 1.5;
    font-family: 'Open Sans';
    font-weight: 400;
    overflow-x: hidden;
}

* {
    margin: 0;
    box-sizing: border-box;
}

p {
    font-size: 16px;
    font-family: 'Open Sans';
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: 'Mulish';
}

.h6,
h6 {
    font-size: 1.1rem;
}

::before,
::after {
    box-sizing: border-box;
}

.header .row {
    display: flex;
    flex-wrap: wrap;
}

.v-center {
    align-items: center;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

a {
    color: #ad0034;
    text-decoration: none;
}

a:hover {
    color: #830028;
}

.accordion {
    --bs-accordion-color: #212529;
    --bs-accordion-bg: #fff;
    --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
    --bs-accordion-border-color: var(--bs-border-color);
    --bs-accordion-border-width: 1px;
    --bs-accordion-border-radius: 0rem;
    --bs-accordion-inner-border-radius: 0px;
    --bs-accordion-btn-padding-x: 1.25rem;
    --bs-accordion-btn-padding-y: 1rem;
    --bs-accordion-btn-color: #212529;
    --bs-accordion-btn-bg: var(--bs-accordion-bg);
    --bs-accordion-btn-icon: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e);
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon-transform: rotate(-180deg);
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ff6600'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
    --bs-accordion-btn-focus-border-color: #ffd4a6;
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(253, 141, 13, 0.25);
    --bs-accordion-body-padding-x: 1.25rem;
    --bs-accordion-body-padding-y: 1rem;
    --bs-accordion-active-color: #ff6600;
    --bs-accordion-active-bg: #fae5ce;
}

.nav-pills {
    --bs-nav-pills-border-radius: 0rem;
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: #000000;
}

.nav {
    --bs-nav-link-padding-x: 1rem;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-nav-link-font-weight: ;
    --bs-nav-link-color: var(--bs-link-color);
    --bs-nav-link-hover-color: var(--bs-link-hover-color);
    --bs-nav-link-disabled-color: #7d786c;
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.cursor-pointer {
    cursor: pointer;
}

.font-14 {
    font-size: 14px;
}

.font-15 {
    font-size: 15px;
}

.font-16 {
    font-size: 16px;
}

.font-17 {
    font-size: 17px;
}

.font-18 {
    font-size: 18px;
}

.font-19 {
    font-size: 19px;
}

.font-20 {
    font-size: 20px;
}

.font-22 {
    font-size: 22px;
}

.font-24 {
    font-size: 24px;
}

.color-1 {
    color: #004E6D;
}

.flex-basis-10 {
    flex-basis: 10%;
}

.flex-basis-15 {
    flex-basis: 15%;
}

.flex-basis-20 {
    flex-basis: 20%;
}

.flex-basis-25 {
    flex-basis: 25%;
}

.flex-basis-30 {
    flex-basis: 30%;
}

.flex-basis-40 {
    flex-basis: 40%;
}

.flex-basis-50 {
    flex-basis: 50%;
}

.flex-basis-60 {
    flex-basis: 60%;
}

.flex-basis-70 {
    flex-basis: 70%;
}

.flex-basis-80 {
    flex-basis: 80%;
}

.flex-basis-90 {
    flex-basis: 90%;
}

/*Header*/
.header {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1021;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .1);
}

.header .item-left {
    flex: 0 0 16%;
}



.header .logo a {
    font-size: 24px;
    font-weight: 600;
    color: #000;
    text-decoration: none;
}

.header .item-center {
    flex: 0 0 70%;

}

.header .item-right {
    flex: 0 0 14%;
    background-color: white;
    display: flex;
    justify-content: flex-end;
}

.header .item-right a {
    text-decoration: none;
    font-size: 16px;
    color: #555555;
    display: inline-block;
    margin-left: 10px;
}

.header .menu {
    text-align: end;
}

.header .menu>ul>li {
    display: inline-block;
    line-height: 75px;
    margin-left: 10px;
    padding: 0px 3px;
}


.header .menu>ul>li>a {
    font-size: 16px;
    font-weight: 500;
    color: #000000;
    position: relative;
    text-transform: capitalize;
    transition: color 0.3s ease;
}

.header .menu>ul>li .sub-menu {
    position: absolute;
    z-index: 100;
    background-color: #fff;
    box-shadow: -1px 17px 20px 0px rgba(0, 0, 0, 0.3);
    padding: 20px 30px;
    transition: opacity 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
    opacity: 0;
    visibility: hidden;
}

@media(min-width: 992px) {
    .header .menu>ul>li.menu-item-has-children:hover .sub-menu {
        visibility: visible;
        opacity: 1;
    }

    .vertical-tabs .nav-pills .nav-link::before {
        content: '';
        display: block;
        border-top: 8px solid transparent;
        border-left: 10px solid #000000;
        border-bottom: 8px solid transparent;
        position: absolute;
        top: 50%;
        right: -10px;
        transform: translateY(-50%);
        opacity: 0;
    }

    .vertical-tabs .nav-pills .nav-link.active::before {
        opacity: 1;
    }

}

.header .menu>ul>li .sub-menu>ul>li {
    line-height: 1;
}

.header .menu>ul>li .sub-menu>ul>li>a {
    display: inline-block;
    padding: 10px 0;
    font-size: 15px;
    color: #555555;
    transition: color 0.3s ease;
    text-decoration: none;
    text-transform: capitalize;
}

.header .menu>ul>li .single-column-menu {
    min-width: 280px;
    max-width: 350px;
    text-align: start;
}

.header .menu>ul>li .sub-menu.mega-menu>.list-item>ul>li {
    line-height: 1;
    display: block;
}

.header .menu>ul>li .sub-menu.mega-menu>.list-item>ul>li>a {
    padding: 10px 0;
    display: inline-block;
    font-size: 15px;
    color: #555;
    transition: color 0.3s ease;
}

.header .menu>ul>li .sub-menu.mega-menu {
    left: 50%;
    transform: translateX(-50%);
    display: none;
}

.header .menu>ul>li .sub-menu.mega-menu-column-4 {
    max-width: 1100px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    padding: 20px 15px;
}

.header .menu>ul>li .sub-menu.mega-menu-column-4>.list-item {
    flex: 0 0 25%;
    padding: 0 15px;
}

.header .menu>ul>li .sub-menu.mega-menu-column-4>.list-item .title {
    font-size: 16px;
    color: #ad0034;
    font-weight: 500;
    line-height: 1;
    padding: 10px 0;
}

.header .menu>ul>li .sub-menu.mega-menu-column-4>.list-item img {
    max-width: 100%;
    width: 100%;
    vertical-align: middle;
    border-radius: 6px;
    margin-top: 10px;
    /* padding: 0px 25px; */
    object-fit: cover;
}

.header .menu>ul>li .sub-menu.mega-menu>.list-item>ul>li>a:hover,
.header .menu>ul>li .sub-menu>ul>li>a:hover,
.header .item-right a:hover,
.header .menu>ul>li:hover>a {
    color: #cc0000;
}

.header .menu>ul>li .sub-menu.mega-menu-column-4 .list-botton {
    flex: auto;
    text-align: center;
}

.header .menu>ul>li .sub-menu.mega-menu-column-4>.list-item:hover h4 {
    color: #860028;
}

/*header top*/
.header-top {
    background-color: #f7f7f7;
    border-bottom: 1px solid #e5e5e5;
}

.header-top-item.item-top-left {
    flex: 0 0 50%;
}

.header-top-item.item-top-right {
    flex: 0 0 50%;
}

.header .header-top-item .tn-left {
    margin-left: 25px;
}

.header .header-top-item .tn-left li {
    list-style: none;
    display: inline-block;
    font-size: 15px;
    color: #B24115;
    font-weight: 500;
    padding: 14px 0 12px;
    margin-right: 15px;
    position: relative;
}

.header-top-item.item-top-left .tn-left a {
    color: #B24115;
}

.header-top-item.item-top-left .tn-left a:hover {
    text-decoration: underline;
}

.header .header-top-item .tn-left li:nth-child(1):after {
    position: absolute;
    right: -11px;
    top: 0;
    width: 1px;
    height: 100%;
    background: #B24115;
    content: "";
}

.header .header-top-item .tn-right {
    text-align: right;
}

.header .header-top-item .tn-right .top-social {
    display: inline-block;
    margin-right: 35px;
    padding: 13px 0;
}

.header .header-top-item .tn-right .useful-links {
    display: inline-block;
    margin-right: 5px;
    padding: 13px 0;
}

.header .header-top-item .tn-right .top-social a {
    margin-left: 15px;
}

.header .header-top-item .tn-right .top-social a svg {
    margin-top: -2px;
}

.header .header-top-item .tn-right .top-social a,
.header .header-top-item .tn-right .useful-links a {
    color: #B24115;
}

.header .header-top-item .tn-right .top-social a:hover,
.header .header-top-item .tn-right .useful-links a:hover {
    color: #B24115;
    text-decoration: underline;
}

/*banner*/
.banner-section {
    background-color: red;
    height: 700px;
    width: 100%;
    display: block;
}

.mobile-menu-head,
.mobile-menu.trigger {
    display: none;
}

.logo {
    text-align: center;
}

.logo>a>img {
    width: 112px;
}

.contenedor-2 {
    background-color: #fbe4eb6e;
    background-image: url("../img/patron-1.png");
    background-repeat: repeat;
}

.contenedor-3 {
    background-color: #fafafa;

}

.bloque-secundario .text-book {
    color: #ad0034;
}

.btn-outline-dark.primero{
    color: #ad0034;
    border: solid 1px #ad0034;
}

.btn-outline-dark.primero:hover,
.btn-outline-dark.primero:focus,
.btn-outline-dark.primero:active{
    color: #fff;
    background-color: #ad0034;
    border: solid 1px #ad0034;
}

.bloque-secundario p {
    font-size: 16px;
    margin-bottom: 0px;
}

.bloque-inicial p {
    text-align: justify;
}

.bloque-inicial h1 {
    font-size: 31px;
}

.modal-localizacion {
    height: 180px;
    overflow: hidden;
}

.modal-localizacion img {
    object-fit: cover;
    object-position: center -70px;
}

#ubicacionModal .modal-body,
#hotelModal .modal-body,
#restauranteModal .modal-body,
#spaModal .modal-body,
#experienciasModal .modal-body {
    --bs-modal-padding: 0rem;
}

.modal-body p {
    font-size: 16px;
}

.pills-object span {
    background-color: #EBEEF1;
    color: #1a2b49;
    line-height: 1.125rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    padding: 5px 8px;
    border-radius: 4px;
    margin-right: 8px;
}

.btn {
    --bs-btn-border-radius: 0;
}

.btn-book {
    outline: none;
    border: 2px solid #830028;
    font-family: 'Lato', sans-serif;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    display: inline-block;
    background: #830028;
    color: #fff;
    z-index: 1;
}

.btn-book:after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    left: 0;
    direction: rtl;
    z-index: -1;
    background: #ffffff;
    transition: all 0.3s ease;
}

.btn-book:hover {
    border: 2px solid #830028;
    color: #830028 !important;
}

.btn-book:hover:after {
    left: auto;
    right: 0;
    width: 100%;
}

.btn-link {
    --bs-btn-color: #fff;
    --bs-btn-bg: #3070B8;
    --bs-btn-border-color: #3070B8;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #1e5ca3;
    --bs-btn-hover-border-color: #1b76dd;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #1b76dd;
    --bs-btn-active-border-color: #1b76dd;
    ;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #3070B8;
    --bs-btn-disabled-border-color: #3070B8;
}

.text-book {
    font-size: 14px;
    color: #ad0034;
    margin-bottom: 5px;
}

.bg-primario {
background: #830028;
}

.alert-container {
    background: #fbe4eb;
    color: #830028;
    border-radius: 5px;
    padding: 20px;
}

.alert-container .titulo-alert {
    color: #830028;
    font-weight: 600;
    margin-bottom: 10px;
}

.alert-container-2 {
    background: #B3E3FA;
    color: #3e3d48;
    border-radius: 5px;
    padding: 20px;
}

.alert-container-2 .titulo-alert {
    color: #252339;
    font-weight: 600;
    margin-bottom: 10px;
}

.alert-container-3 {
    background: #F7FAFC;
    color: #3e3d48;
    border-radius: 5px;
    padding: 20px;
}

.alert-container-3 .titulo-alert {
    color: #252339;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

.alert-container-4 {
    background: #F7FAFC;
    color: #3e3d48;
    border-radius: 5px;
    padding: 20px;
}

.alert-container-4 .titulo-alert {
    color: #252339;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

.panel-imagen-paginas {
    height: calc(70vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas.reserva,
.panel-imagen-paginas.contacto {
    height: calc(40vh - 100px);
    max-height: 250px;
}

.panel-imagen-paginas .panel-imagen {
    height: 100%;
}

.panel-imagen-paginas .panel-imagen .imagen-seccion {
    width: 100%;
    background: url(../img/hotel/quechua-plaza-hotel-habitaciones.jpg) top center no-repeat;
    background-size: cover;
    background-position: center center;
    height: calc(70vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas .panel-imagen .seccion-contacto {
    width: 100%;
    background: url(../img/hotel/contactanos-quechua-plaza-hotel-1900.jpg) center center no-repeat;
    background-size: cover;
    height: calc(40vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas .panel-imagen .seccion-restaurante {
    width: 100%;
    background: url(../img/hotel/restaurante-quechua-hotel-cusco.jpg) top center no-repeat;
    background-size: cover;
    height: calc(70vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas .panel-imagen .seccion-spa {
    width: 100%;
    background: url(../img/hotel/spa-quechua-hotel-cusco.jpg) top center no-repeat;
    background-size: cover;
    height: calc(70vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas .panel-imagen .seccion-servicios {
    width: 100%;
    background: url(../img/hotel/servicios-quechua-hotel-cusco.jpg) top center no-repeat;
    background-size: cover;
    height: calc(70vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas .panel-imagen .seccion-reserva {
    width: 100%;
    background: url(../img/hotel/galeria-quechua-plaza-hotel-1900.jpg) center center no-repeat;
    background-size: cover;
    height: calc(40vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas .panel-imagen .seccion-nosotros {
    width: 100%;
    background: url(../img/hotel/sobre-nosotros-quechua-plaza-hotel-1900.jpg) center center no-repeat;
    background-size: cover;
    height: calc(40vh - 100px);
    max-height: 700px;
}

.panel-imagen-paginas .imagen-panel-texto {
    position: absolute;
    width: 300px;
    height: auto;
    background-color: #00000085;
    margin-top: -120px;
    padding: 10px 0px;
}

.panel-imagen-paginas .imagen-panel-texto .panel-texto-titulo {
    font-size: 20px;
    line-height: 1.5em;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    text-align: center;
}

.panel-imagen-paginas .imagen-panel-texto .panel-imagen-icon {
    align-items: center;
    justify-content: center;
    margin-top: 5px;
}

.panel-imagen-paginas .imagen-panel-texto .imagen-icon {
    padding: 1px 6px;
    background-color: #fff;
    color: #ad0034;
    border-radius: 50px;
    width: 32px;
    height: 32px;
    margin-left: 5px;
    font-size: 20px;
}

/*carusel*/
.imagen-principal-carrusel .img-responsive {
    width: 100%;
}

.imagen-principal-carrusel .splide__slide {
    height: 35vw;
}

.imagen-principal-carrusel .splide__arrow {
    background: #fff0;
}

.imagen-principal-carrusel .splide__arrow svg {
    fill: #fff;
    height: 1.5em;
    width: 1.5em;
}

.imagen-principal-carrusel .splide__arrow--prev {
    left: 4em;
}

.imagen-principal-carrusel .splide__arrow--next {
    right: 4em;
}

.imagen-principal-carrusel .splide__title {
    bottom: 5.5rem;
    color: #ffffff;
    font-size: 25px;
    left: 5.5rem;
    line-height: 1.5em;
    position: absolute;
    z-index: 2;
    background: #2d2d2d;
}

.imagen-principal-carrusel .splide__subtitle {
    bottom: 3.5rem;
    color: #ffffff;
    font-size: 20px;
    left: 5.5rem;
    line-height: 1.5em;
    position: absolute;
    transform: translateZ(1px);
    z-index: 2;
}

.imagen-principal-carrusel .splide__pagination {
    justify-content: flex-end;
    margin-right: 85px;
    margin-bottom: 20px;
}

.imagen-principal-carrusel .splide__pagination__page {
    margin: 5px;
    width: 10px;
    height: 10px;
}

.imagen-principal-carrusel .splide__pagination__page.is-active {
    transform: scale(1.9);
}

.splide__read_more {
    display: flex;
    color: #000000;
    font-weight: 700;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    flex-direction: row;
    cursor: pointer;
    padding: 8px 0px;
}

#splide-detalles-hotel .splide__arrow--next {
    right: -2.5rem;
    transform: translateY(-50%);
}

#splide-detalles-hotel .splide__arrow--prev {
    left: -2.5rem;
    transform: scaleX(1) translateY(-50%);
}

#splide-detalles-hotel .splide__arrow {
    background: #0000;
    border: 0;
    color: #e5eeee;
    position: absolute;
    top: 50%;
}

#splide-detalles-hotel .splide-subtitle {
    font-size: 0.85em;
}

#splide-detalles-hotel .splide__pagination--custom {
    bottom: -3rem;
}

#splide-detalles-hotel .splide__pagination--custom .splide__pagination__page {
    align-items: center;
    background: #363e40;
    border-radius: 4px;
    color: #c4d5d7;
    display: inline-flex;
    font-size: 0.8rem;
    height: 1.6rem;
    justify-content: center;
    line-height: 1;
    margin-left: 0.5rem;
    width: 1.6rem;
}

#splide-detalles-hotel .splide__pagination__page.is-active {
    background: #000000;
    color: #fff;
}

.splide-galleria img {
    cursor: pointer;
}

.vertical-tabs .accordion-header {
    display: none;
}

.vertical-tabs .accordion-button {
    font-weight: 600;
}

.vertical-tabs .nav-pills {
    display: flex;
}

.vertical-tabs .tab-pane.fade {
    display: none;
    opacity: 0;
}

.vertical-tabs .tab-content>.active {
    display: block;
    opacity: 1;
}

.vertical-tabs .collapse:not(.show) {
    display: block;
}

.vertical-tabs .nav-pills .nav-link {
    position: relative;
    text-align: start;
    margin-bottom: 8px;
}

.vertical-tabs .nav-pills .nav-link .d-flex {
    border: 1px solid #fcb955;
}

.vertical-tabs .nav-pills .nav-link .d-flex img {
    filter: grayscale(1);
    transition: filter .23s ease-in-out;
}

.vertical-tabs .nav-pills .nav-link.active .d-flex {
    border: 1px solid #000000;
}

.vertical-tabs .nav-pills .nav-link.active .d-flex img {
    filter: grayscale(0);
}

.vertical-tabs .nav-link {
    padding: 0px;
}

.foto-boton-galeria {
    position: relative;
    cursor: pointer;
    background: #FFFFFF;
    color: #1F1F1F;
    box-shadow: 0 0 8px rgba(25, 27, 32, .2);
    border: 1px solid rgba(25, 27, 32, .2);
    padding: 8px 12px;
    border-radius: 50px;
    margin-left: -70px;
    top: 40%;
}

.foto-boton-habitacion {
    position: absolute;
    cursor: pointer;
    background: #FFFFFF;
    color: #1F1F1F;
    box-shadow: 0 0 8px rgba(25, 27, 32, .2);
    border: 1px solid rgba(25, 27, 32, .2);
    padding: 2px 12px;
    border-radius: 50px;
    right: 138px;
    text-align: right;
    margin-top: 85px;
    display: inline-block;
}

/*habitaciones*/
.listado-habitaciones {
    background-color: #fff;
}

.listado-habitaciones .imagen-habitacion {
    flex-basis: 30%;
    justify-content: center;
    align-items: center;
    overflow: hidden
}

.listado-habitaciones img {
    flex-shrink: 0;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    cursor: pointer;
}

.listado-habitaciones .destacado-habitacion {
    flex-basis: 35%;
    padding: 20px 0px;
}

.listado-habitaciones .servicios-habitacion {
    flex-basis: 35%;
}

.caracteristicas-habitacion .caracter {
    margin: 0px 8px;
    text-align: center;
}

.caracteristicas-habitacion .caracter .caracter-icon {
    font-size: 25px;
}

.caracteristicas-habitacion .caracter .caracter-descripcion {
    font-size: 15px;
}

/*fin-habitaciones*/

/*galeria*/
.contenedor-imagen>div {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2em;
    color: #ffeead;
}

.contenedor-imagen>div>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    cursor: pointer;
}

.contenedor-imagen {
    display: grid;
    grid-gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-auto-rows: 200px;
    grid-auto-flow: dense;
}

.contenedor-imagen .horizontal {
    grid-column: span 2;
}

.contenedor-imagen .vertical {
    grid-row: span 2;
}

.contenedor-imagen .big {
    grid-column: span 2;
    grid-row: span 2;
}

/*fin-galeria*/

/*restaurante*/
.c-restaurante {
    position: relative;
}

.c-restaurante-child {
    position: relative;
    display: flex;
    height: 40rem;
}

.contenedor-restaurante {
    position: absolute;
    height: 40rem;
    width: 100%;
    min-height: 28rem;
    margin-bottom: 2.5rem;
}

.contenedor-restaurante .conter {
    width: 100%;
    max-height: 41rem;
    margin-right: 10rem;
    min-height: 41rem;
    overflow: hidden;
    height: 100%;
    margin-left: auto;
    position: relative;
}

.contenedor-restaurante img {
    --tw-translate-y: -59%;
    --tw-translate-x: 0;
    --tw-rotate: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    width: 100%;
    height: auto;
    margin: 0px;
    z-index: 40;
    top: 50%;
    right: 0px;
    position: absolute;
    max-width: 100%;
    display: block;
    vertical-align: middle;
}

.contenedor-rest-descripcion {
    display: flex;
    top: auto;
    position: absolute;
    flex-wrap: wrap;
    flex-direction: row;
    width: 100%;
    z-index: 50;
}

.contenedor-rest-descripcion .conter-descripcion {
    flex-grow: 0;
    width: 33.333333%;
    margin-left: 2rem;
    flex-shrink: 0;
    display: block;
    box-sizing: border-box;
    position: relative;
}

.contenedor-rest-descripcion .conter-descripcion .descripcion {
    padding: 1rem 2.5rem 1rem 2.5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    width: 100%;
    min-height: 35.8rem;
    margin-left: 4rem;
    margin-bottom: 4rem;
    justify-content: center;
    flex-direction: column;
    display: flex;
    z-index: 20;
    position: relative;
    box-shadow: 0px 15px 34px 3px rgba(0, 0, 0, 0.27);
}

/*fin-restaurante*/

.icon {
    background-color: #eee;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    font-size: 20px;
    padding: 10px 15px;
}

.badge span {
    padding: 4px 8px 6px 8px;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center
}

.badge.ba-green span {
    background-color: #ecffed;
    color: #06b906;
}

.badge.ba-blue span {
    background-color: #ecefff;
    color: #0621b9;
}

.tarjeta-descripcion-ser {
    padding: 15px 10px;
}

.tarjeta-descripcion-ser .tarjeta-sub {
    background-color: #ebebeb;
    padding: 2px 10px;
    display: inline-flex;
}

.tarjeta-descripcion-ser .tarjeta-titulo {
    padding: 10px 2px;
    margin-top: 2px;
    margin-bottom: 5px;
}

.tarjeta-descripcion-ser a {
    float: right;
}

.tarjeta-descripcion-cont {
    padding: 20px 25px;
    background-color: #fff;
    box-shadow: 0px 15px 34px 3px rgba(0, 0, 0, 0.08);

}

.tarjeta-descripcion-cont .tarjeta-sub {
    background-color: #ebebeb;
    padding: 2px 10px;
    display: inline-flex;
}

.tarjeta-descripcion-cont .tarjeta-titulo {
    padding: 10px 2px;
    margin-top: 2px;
    margin-bottom: 10px;
}

.tarjeta-descripcion-cont .tarjeta-lista>li {
    margin-bottom: 10px;
}

.tarjeta-descripcion-cont .tarjeta-lista>li div:nth-child(1) {
    color: #014D6D;
    font-size: 19px;
    font-weight: 600;
}

/*Cantindad input*/
.qty-reserv {
    width: 160px;
}

.qty {
    flex-basis: 25%;
}

.qty .count {
    color: #000;
    display: inline-block;
    vertical-align: top;
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
    padding: 0 2px;
    min-width: 35px;
    text-align: center;
}

.qty .plus,
.qty .minus {
    cursor: pointer;
    display: inline-block;
    vertical-align: top;
    color: white;
    width: 26px;
    height: 26px;
    font-size: 17px;
    text-align: center;
    border-radius: 50%;
    background-clip: padding-box;
    margin: auto 0;
    padding-top: 0px;
    background-color: rgb(241, 141, 26) !important;
}

.qty .minus:hover {
    background-color: #000000 !important;
}

.qty .plus:hover {
    background-color: #000000 !important;
}

/*Prevent text selection*/
.qty span {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.qty input {
    border: 0;
    width: 2%;
}

.qty input::-webkit-outer-spin-button,
.qty input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.qty input:disabled {
    background-color: white;
}

.demo__input input {
    width: 225px;
    cursor: pointer;
}

/*Cantindad input FIN*/
.list-included {
    margin-left: 25px;
}

.list-included li {
    list-style-type: disc;
}

/*tarjetas-reserva*/
.thumbnailrooms {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08);
    transition: 0.3s;
    border-radius: 8px 8px 0px 0px;
    padding: 0px !important;
    margin-bottom: 20px;
}

.thumbnailrooms.destacado {
    border: 1px solid #abd0ff;
}

.thumbnailrooms:hover {
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.3);
}

.thumbnailrooms .img-rooms {
    height: 15svh;
    overflow-y: hidden;
}

.thumbnailrooms .team-img {
    border-radius: 8px 8px 0px 0px;
    object-fit: cover;
    object-position: right 0em bottom 35px;
    width: 100%;
}

.thumbnailrooms .roomslist {
    padding: 20px;
    color: #333;
}

.thumbnailrooms hr.datelist.number-2 {
    padding-top: 0px;
    border: 0;
    height: 1px;
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
    margin-top: 14px;
    margin-bottom: 10px
}

.thumbnailrooms .precio-reserva {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;

}

.thumbnailrooms .precio-reserva>div {
    margin-bottom: 10px;
    margin-top: 10px;
}

.thumbnailrooms .btn.btn-moreinfo.btnlistbook-over {
    position: absolute;
    margin-top: -42px;
    width: 120px;
    height: 45px;
    padding-top: 10px;
}

.thumbnailrooms .more-features-box-text-icon {
    float: left;
    width: 30px;
    height: 30px;
    padding-top: 0px;
    margin-left: 3px;
    margin-right: 10px;
    border-radius: 50%;
    color: #fff;
}

.thumbnailrooms .input-group-service {
    margin-left: 10px;
}

.thumbnailrooms .more-features-box-text-icon .mdi {

    font-size: 22px;
    padding: 0px 0px 0px 5px;
}

.thumbnailrooms .input-group-service-b {
    background-color: #e2e2e2;
    padding: 10px 15px 5px 15px;
    border-radius: 5px;
    margin-right: 8px;
    margin-top: -5px;
    margin-left: 10px;
    margin-bottom: 20px;
    display: inline-flex;
    align-items: center;
}

.thumbnailrooms .input-group-service-b p {
    margin-bottom: 0px;
}

.thumbnailrooms .input-group-service-b .mdi {
    font-size: 22px;
    margin-left: 5px;
}

.thumbnailrooms .input-price {
    font-weight: 600;
    font-size: 14px;
    margin-left: 10px;
    margin-bottom: 5px;
}

.thumbnailrooms .hidden {
    display: none !important;
}

.reserva-hidden {
    opacity: 0;
}

#reserve-bottom {
    position: fixed;
    background: #004E6D;
    color: #fff;
    width: 100%;
    bottom: 0;
    z-index: 2222;
    box-shadow: 0px 8px 55px 0px rgba(0, 0, 0, 0.25);
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.reserva-info {
    display: flex;
    align-items: center;
    padding: 15px;
    float: right;
    margin: 0px 5%;
}

.reserva-info button+div {
    display: flex;
    padding: 10px 25px;
    color: #fff;
    font-size: 20px;
}

.reserva-info button+div .nro-nights {
    margin-left: 5px;
}

.reserva-info button+div .cost-hab {
    font-size: 21px;
    margin-left: 5px;
    font-weight: 700;
}

/*tarjetas-reserva FIN*/

/*boton up*/
.btn-scroll-up.visible {
    top: 1.85rem;
}

.btn-scroll-up {
    background: #f0f0f0;
    color: #000;
    border: none;
    left: 50%;
    max-width: calc(100% - 1em*2);
    position: fixed;
    top: -3rem;
    transform: translateX(-50%);
    transition: top .5s ease;
    white-space: nowrap;
    z-index: 9999;
    box-shadow: 0 3px 5px -1px rgba(0, 0, 0, .2), 0 5px 8px 0 rgba(0, 0, 0, .14), 0 1px 14px 0 rgba(0, 0, 0, .12);
    font-size: 1.05rem;
    font-weight: 500;
    line-height: 1.25rem;
    letter-spacing: .01786em;
    text-transform: none;
    align-items: center;
    border-radius: 1.8rem;
    box-sizing: border-box;
    cursor: pointer;
    display: inline-flex;
    margin: 0;
    padding: 0.38rem 1.15rem;
    overflow: hidden;
}

.text-scroll-up {
    padding: 0.25rem 0;
}

/*boton up FIN*/
/*resumen compra*/
.reginfo p {
    margin-bottom: 5px;
}

.reginfo .noches-info {
    font-size: 18px;
    font-weight: 700;
    margin-top: 15px;
    margin-bottom: 20px;
}

.addinfo {
    display: flex;
    margin-top: 15px;
    margin-bottom: 10px;
}

.addinfo p {
    background-color: #000000;
    padding: 5px 15px;
    margin-right: 10px;
    color: #fff;
}

.thumbnail.rooms {
    margin-bottom: 8px;

}

.thumbnail.total .reginfo,
.thumbnail.rooms .reginfo {
    display: flex;
    justify-content: space-between;

    font-weight: 600;
    background: #fbfbfb;
    border-bottom: 1px solid #004e6d3a;
}

.reginfo p.roomdesc {
    display: inline-block;
    padding-top: 10px;
    padding-left: 15px;
    color: #302F37;
    font-size: 16px;
}

.reginfo p.roomprice {
    float: right;
    padding-top: 8px;
    padding-right: 15px;
    color: #302F37;
    font-size: 16px;
}

.thumbnail.total .reginfo {
    background: #fce3b6;
}

.thumbnail.total .reginfo {
    font-weight: 700;
}

.alertas {
    text-align: center;
    padding: 10px 15px;
    margin-top: 20px;
}

/*resumen compra FIN*/
.pagar-contenedor {
    padding: 15px 15px 5px 15px;
}

.btn.btn-primary-pagar {
    background-color: #0031D0;
    color: #fff;
    --bs-btn-border-radius: 0.375rem;
    width: 100%;
}

.btn.btn-primary-pagar:hover {
    background-color: #062fb4;
}

.cargar-busqueda.loading {
    overflow: hidden;
    position: relative;
    z-index: 0;
    top: 0;
    left: 0;
    height: 350px;
    width: 100%;
    background-image: url(../img/templo-del-agua-hotel.png), url(../img/cargar.gif);
    background-position: left 50% top 85px, left 50% top 32px;
    background-repeat: no-repeat, no-repeat;
    background-size: 180px, 120px;
}

.habitacion-destacado {
    position: absolute;
    padding: 4px 15px 4px 15px;
    background: #0170ff;
    margin-top: 10px;
    margin-left: 10px;
    font-size: 15px;
    color: #fff;
    border-radius: 8px;
}

.succespaybloque {
    background-color: #F5F5F5;
    padding: 20px 25px;
}

.terminos-condiciones p {
    text-align: justify;
}

.add-room-title {
    color: #155724;
    display: none;
}

.add-room-title.activo {
    display: block;
}

.chip-nights {

    padding: 5px 25px;
    font-size: 16px;
    line-height: 36px;
    border-radius: 8px;
    border-top-left-radius: 0px;
    background-color: #000;
    color: #fff;
}

.pills-object>div.soldout-price>span {
    background-color: #ffc0c0;
    color: #c71700;
}

.pills-object>div.soldout-price>span+div {
    color: #c71700;
}

.precio-reserva.sold-out-message {
    justify-content: left;
}

.precio-reserva.sold-out-message div:nth-child(1) {
    color: red;
    font-size: 16px;
    font-weight: 600;
    text-align: left;
}

.precio-reserva.sold-out-message div:nth-child(2) {
    font-size: 14px;
    font-weight: 500;
}

.regular-price {
    font-size: 14px !important;
    font-weight: 400 !important;
    margin-left: 0px;
    margin-top: 4px;
}

.regular-price span:nth-child(1) {
    text-decoration-line: line-through;
    color: rgb(247, 99, 1);
}

.regular-price div:nth-child(2) {
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: green;
}

.float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 40px;
    right: 40px;
    background-color: #25d366;
    color: #FFF;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 3px #999;
    z-index: 15;
}

.float:hover {
    background-color: #0fb34b;
    color: #FFF;
}

.my-float {
    margin-top: 16px;
}

.float .mdi-whatsapp::before {
    padding-top: 6px;
}

.tarifa-lista {
    list-style-type: disc;
    padding: 0px 20px;
}

.tarifa-lista li {
    font-size: 14px;
}

.politicas-tarifa p {
    font-size: 14px;
}

.tarifas-resumen {

    display: inline-flex;
    padding: 3px 8px;
    margin: auto;
    border-radius: 6px;
    margin-left: 10px;
    margin-bottom: 10px;
}

.tarifas-resumen.hab-1 {
    background: #d3dafd;
}

.tarifas-resumen.hab-2 {
    background: #d3fdd3;
}

.bloque-tarifas {
    padding: 20px;
    border-radius: 10px;
    margin-bottom: 10px;
}

.bloque-tarifas.tar-1 {
    background: #d3dafd42;
}

.bloque-tarifas.tar-2 {
    background: #d3fdd945;
}

/** Para el datepicker*/
.extra-price {
    pointer-events: none;
    font-size: 12px;
    margin-top: 3px;
    font-weight: 500;
}

.datepicker__month-day {
    padding: 5px 12px;
    font-size: 17px;
    font-weight: 600;
}

.datepicker__month-day--first-day-selected {
    border-radius: 12px 0 0 12px;
}

.datepicker__month-day--last-day-selected {
    border-radius: 0 12px 12px 0;
}

.calendar-hotel {
    cursor: pointer;
    border-radius: 5px;
    font-size: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
    background-color: #fff;
    border: 1px solid transparent;
}

.calendar-hotel {
    color: #ad0034;
    max-width: 220px;
    align-items: center;
    appearance: none;
    cursor: pointer;
    display: flex;
    justify-content: center;
}

.calendar-hotel svg {
    min-width: 25px;
    fill: #ad0034;
}

.calendar-hotel span:nth-child(1) {
    font-size: 17px;
    font-weight: 700;
    white-space: nowrap;
}

.calendar-hotel span:nth-child(2) {

    font-size: 32px;
    font-weight: 700;
    display: inline-table;
    line-height: 1;
    width: 100%;
}

.calendar-hotel span:nth-child(3) {
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
}

#control-date .date-input.hasDatepicker {
    opacity: 0;
    height: 0px;
    margin-bottom: -5px;
}

.calendar-search .dropdown-toggle::after {
    display: none;
}

.calendar-search .dropdown-toggle {
    padding: 0px 5px;
    font-size: 30px;
    background: #fff;
    color: #000;
    border: 0px solid;
}

/*medias*/

.search-calendar {
    gap: 20px;
}

#summary {
    font-size: 16px;
    line-height: 1.5;
}

#summary div.collapse:not(.show) {
    height: 150px !important;
    overflow: hidden;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    padding-bottom: 10px;
}

#summary div.collapsing {
    min-height: 150px !important;
}

#summary a.collapsed:after {
    content: '+ Leer más';
}

#summary a:not(.collapsed):after {
    content: '- Leer menos';
}

.bg-flexible {
    background: #d3dafd;
    color: #000000;
}

.bg-noreembolsable {
    background: #d3fdd3;
    color: #000000;
}

.precio-mas-bajo .precio-numero {
    font-size: 25px;
}

.precio-mas-bajo .uso-tarjeta {
    font-size: 12px;
}

.info-hotel p {
    font-size: 15px;
}

.info-hotel .mdi {
    color: #000000;
}

.info-hotel .phone-info {
    color: #374151;
    text-decoration: underline;
}

.iframe-maps {
    height: 28vw;
}

.iframe-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

.imagen-principal-carrusel .splide__slide img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

#v-pills-tab .nav-link:not(.active):hover {
    background-color: #fff3e8;
}

#habitaciones-lista .accordion-header button {
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.2;
}

#habitaciones-lista .accordion-button:not(.collapsed) {
    color: #000;
    background-color: #fff;
}

/*galeria habitaciones*/
.galeria-top {
    margin-top: 20px;
}

#galeria-hab .foto-galeria {
    position: relative;
    user-select: none;
    width: 100%;
    height: 50vw;
    min-height: 380px;
    max-height: 400px;
    border-radius: 4px;
    margin-left: 0;
    margin-right: 0;
}

#galeria-hab .foto-collage {
    position: relative;
    display: none;
    grid-gap: 8px;
    grid-template-columns: 4fr 1fr 1fr;
    background-color: #EBEEF1;
    width: 100%;
    height: 100%;
}

#galeria-hab .foto-galeria-collage {
    display: grid;
}

.foto-collage-image {
    overflow: hidden;
    cursor: pointer;
    width: 100%;
    height: 100%;
    transition: box-shadow .2s;
}

#galeria-hab .foto-collage-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right 0em bottom 0em;
}

#galeria-hab .foto-collage-image-1 {
    grid-column: 1;
    grid-row: 1/3;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
}

#galeria-hab .foto-collage-image-2 {
    grid-column: 2/4;
    grid-row: 1;
    border-top-right-radius: 2px;
}

#galeria-hab .foto-collage-image-3 {
    grid-column: 2;
    grid-row: 2;
}

#galeria-hab .foto-collage-image-4 {
    grid-column: 3;
    grid-row: 2;
    border-bottom-right-radius: 2px;
}

#galeria-hab .foto-collage-image-origen {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#galeria-hab .foto-boton-galeria-2 {
    position: absolute;
    cursor: pointer;
    left: 24px;
    bottom: 24px;
    background: #FFFFFF;
    color: #1F1F1F;
    box-shadow: 0 0 8px rgba(25, 27, 32, .2);
    border: 1px solid rgba(25, 27, 32, .2);
    padding: 8px 12px;
    border-radius: 4px;
    min-height: 40px;

}

#galeria-hab .tour-info-first {
    font-size: 14px;
}

#galeria-hab .tour-info-first span {
    background-color: #EBEEF1;
    color: #1a2b49;
    line-height: 1.125rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    padding: 5px 8px;
    border-radius: 4px;
    margin-right: 8px;
}

#galeria-hab .foto-boton-galeria:hover,
.foto-boton-galeria:active,
.foto-boton-galeria:focus {
    text-decoration: none;
}

.splide__slide.is-active:after {
    background: #b4e900;
    background: linear-gradient(0deg, #87de1d, #b4e900);
}

/*---*/

#splide-botones-habitacion .splide__track {
    padding-right: 10px;
}

#splide-botones-habitacion .splide__arrow.splide__arrow--prev {
    top: -2.3em;
}

#splide-botones-habitacion .splide__arrow.splide__arrow--next {
    bottom: -2.3em;
}

#nav-book {
    position: fixed;
    transform: translateY(-100%);
    top: 0px;
    width: 100%;
    z-index: 9999;
    right: 0px;
    left: 0px;
    background-color: #fff !important;
    -webkit-box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .15);
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, .15);
    transition: all 0.2s ease-in;
}

/*suite slider*/
.suites-hab {
    background-color: #ffffff;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 20px 0px;
}

.suites-hab .suites-img {
    background-size: cover;
    background-position-y: 60%;
    width: 100%;
    overflow: hidden;
}

.suites-hab .suites-content {
    padding: 20px 10px 20px 10px;
}

.suites-hab .suites-content a h6:hover {
    color: #ad0034 !important;
}

.suites-hab .suites-info {
    display: flex;
}

/*fin suite slider*/

#splide-suites>.splide__arrows .splide__arrow {
    background: #ffffff;
}

#splide-suites>.splide__arrows .splide__arrow--prev {
    left: -2em;
}

#splide-suites>.splide__arrows .splide__arrow--next {
    right: -2em;
}


.splide-images-galeria .splide__arrow {
    -ms-flex-align: center;
    align-items: center;
    background: #000000;
    border: 0;
    border-radius: 0%;
    cursor: pointer;
    display: -ms-flexbox;

    height: 1.5em;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: .7;
    padding: 0;
    position: absolute;
    top: 10%;
    transform: translateY(-10%);
    /* width: 2em; */
    z-index: 1;

}

.splide-images-galeria .splide__arrow svg {
    fill: #fff;
    height: 1em;
    width: 1em;
}

.splide-images-galeria .splide__arrow--prev {
    left: unset;
    right: 4em;
}

.splide-images-galeria .splide__pagination--custom .splide__pagination__page {
    align-items: center;
    background: #ffffff;
    border-radius: 0px;
    color: #ffffff;
    display: inline-flex;
    font-family: Splide Heading, sans-serif;
    font-size: 9px;
    height: 15px;
    width: 15px;
    justify-content: center;
    line-height: 1;
    margin-left: .5rem;

}

.splide-images-galeria .splide__pagination--custom .splide__pagination__page.is-active {
    background: #3d3d3d;
    color: #192123;
}

.splide-images-galeria .splide__pagination {
    justify-content: flex-start;
}

.read-more {
    color: #ad0034;
    font-weight: 600;
    cursor: pointer;
}



@media (min-width: 768px) {
    .datepicker {
        width: 690px;
    }

    .search-calendar {
        gap: 8px;
    }

    .bloque-inicial h1 {
        font-size: 24px;
    }

}

@media only screen and (min-width: 290px) and (max-width: 576px) {

    .calendar-search .dropdown-toggle {
        padding: 0px 0px;
        font-size: 25px;
        background: #fff;
        color: #000;
    }

    .float {
        position: fixed;
        width: 50px;
        height: 50px;
        bottom: 43px;
        right: 26px;

        font-size: 25px;

    }

    .hotel-header-name svg {
        width: 15px;
        height: 15px;
    }

    .hotel-header-name h6 {
        font-size: 15px;
    }

    #splide-suites>.splide__arrows .splide__arrow--prev {
        left: 0.5em;
    }

    #splide-suites>.splide__arrows .splide__arrow--next {
        right: 0.5em;
    }

    .contenedor-imagen .horizontal {
        grid-column: span 2;
    }

    .contenedor-imagen .vertical.vertical-2 {
        grid-row: span 1;
    }

    .iframe-maps {
        height: 85vw;
    }

    .imagen-principal-carrusel .splide__slide {
        height: 90vw !important;
    }

    .bloque-inicial h1 {
        font-size: 22px;
    }

    .search-calendar {
        gap: 0px;
    }

    .calendar-hotel span:nth-child(1) {
        font-size: 14px;
    }

    .calendar-hotel span:nth-child(2) {
        font-size: 21px;
    }

    .calendar-hotel span:nth-child(3) {
        font-size: 12px;
    }

    .calendar-hotel svg {
        min-width: 8px;
        width: 25px;
    }

    .datepicker__inner {
        padding: 11px;
    }

    .datepicker {
        width: 315px;
        left: 2%;
    }

    .datepicker__months:before {
        left: 100%;
    }

    .datepicker__month-day {
        padding: 3px 5px;
        font-size: 15px;
    }

    .calendar-hotel {
        min-width: 179px;
        max-width: none;
    }

    .demo__input input {
        width: 80vw;
    }

    .demo__input .form-control {
        padding: 0.375rem 2.55rem;
        text-align: center;
    }

    .thumbnailrooms .team-img {
        object-position: right 0em bottom 30px;
    }

    .logo>a>img {
        width: 100px;
    }
}

@media(max-width: 991px) {
    .logo {
        text-align: left;
        margin-left: 15px;
        padding: 5px 0px;
    }

    .header .item-right a {
        font-size: 15px;
    }

    .imagen-principal-carrusel .splide__slide {
        height: 60vw;
    }

    .bloque-inicial h1 {
        font-size: 24px;
    }

    .c-restaurante-child {
        height: 39rem;
    }

    .contenedor-rest-descripcion .conter-descripcion {
        width: 50%;
        margin-left: 0rem;
    }

    .contenedor-rest-descripcion .conter-descripcion .descripcion {
        padding: 0rem 2rem 0rem 2rem;
        width: 100%;
        min-height: 34.8rem;
        margin-left: 0rem;
        margin-bottom: 0rem;
    }

    .contenedor-restaurante .conter {
        width: 100%;
        max-height: 42rem;
        margin-right: 0rem;
        min-height: 44rem;
        position: relative;
    }

    .contenedor-restaurante img {
        object-fit: cover;
        min-width: 100%;
        min-height: 100%;
        --tw-translate-y: -71%;
    }

    .panel-imagen-paginas {
        height: calc(40vh - 100px);
        max-height: 700px;
    }

    .panel-imagen-paginas.reserva {
        height: calc(40vh - 100px);
        max-height: 250px;
    }

    .panel-imagen-paginas .panel-imagen .imagen-seccion {
        height: calc(40vh - 100px);
    }

    .panel-imagen-paginas .panel-imagen .seccion-contacto {
        height: calc(40vh - 100px);
    }

    .panel-imagen-paginas .panel-imagen .seccion-restaurante {
        height: calc(40vh - 100px);
    }

    .panel-imagen-paginas .panel-imagen .seccion-spa {
        height: calc(40vh - 100px);
    }

    .panel-imagen-paginas .panel-imagen .seccion-servicios {
        height: calc(40vh - 100px);
    }

    .panel-imagen-paginas .panel-imagen .seccion-reserva {
        height: calc(40vh - 100px);
    }

    .panel-imagen-paginas .panel-imagen .seccion-nosotros {
        height: calc(40vh - 100px);
    }

    .panel-imagen-paginas .imagen-panel-texto {
        width: 200px;
        margin-top: -110px;
        padding: 10px 0px;
    }

    .panel-imagen-paginas .imagen-panel-texto .panel-texto-titulo {
        font-size: 16px;
    }

    .panel-imagen-paginas .imagen-panel-texto .imagen-icon {
        padding: 3px 7px;
        width: 30px;
        height: 30px;
        margin-left: 5px;
        font-size: 16px;
    }

    .vertical-tabs .nav-pills .nav-link .d-flex img {
        display: none;
    }

    .imagen-principal-carruse .splide__slide {
        height: 100%;
    }

    .imagen-principal-carrusel .splide__title {
        bottom: 3rem;
        color: #ffffff;
        font-size: 18px;
        left: 2.5rem;
        line-height: 1.5em;
        position: absolute;
        z-index: 2;
        background-color: #00000065;
    }

    .imagen-principal-carrusel .splide__arrow--next {
        right: 2em;
    }

    .imagen-principal-carrusel .splide__arrow--prev {
        left: 2em;
    }

    .imagen-principal-carrusel .splide__pagination {
        margin-right: 25px;
        margin-bottom: 10px;
    }

    .header-top {
        display: none;
    }

    .header .item-center {
        order: 3;
        flex: 0 0 100%;
    }

    .header .item-left,
    .header .item-right {
        flex: 1 0;
    }

    .v-center {
        justify-content: space-between;
    }

    .header .mobile-menu-trigger {
        display: flex;
        height: 30px;
        width: 30px;
        margin-left: 15px;
        cursor: pointer;
        align-items: center;
        justify-content: center;
    }

    .header .mobile-menu-trigger span {
        display: block;
        height: 2px;
        background-color: #333333;
        width: 24px;
        position: relative;
    }

    .header .mobile-menu-trigger span:before,
    .header .mobile-menu-trigger span:after {
        content: '';
        position: absolute;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #333333;
    }

    .header .mobile-menu-trigger span:before {
        top: -6px;
    }

    .header .mobile-menu-trigger span:after {
        top: 6px;
    }

    /**/
    .calendar-search .mobile-menu-trigger {
        display: flex;
        height: 30px;
        width: 30px;
        margin-left: 15px;
        cursor: pointer;
        align-items: center;
        justify-content: center;
    }

    .calendar-search .mobile-menu-trigger span {
        display: block;
        height: 2px;
        background-color: #333333;
        width: 24px;
        position: relative;
    }

    .calendar-search .mobile-menu-search span:before,
    .calendar-search .mobile-menu-search span:after {
        content: '';
        position: absolute;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #333333;
    }

    .calendar-search .mobile-menu-search span:before {
        top: -6px;
    }

    .calendar-search .mobile-menu-search span:after {
        top: 6px;
    }

    /**/

    .header .item-right {
        align-items: center;
    }

    .header .menu {
        position: fixed;
        width: 320px;
        background-color: #ffffff;
        left: 0;
        top: 0;
        height: 100%;
        overflow: hidden;
        transform: translate(-100%);
        transition: all 0.5s ease;
        z-index: 1099;
    }

    .header .menu.active {
        transform: translate(0%);
        text-align: start;
    }

    .header .menu>ul>li {
        line-height: 1;
        margin: 0;
        display: block;
    }

    .header .menu>ul>li>a {
        display: block;
        line-height: 50px;
        height: 50px;
        padding: 0 50px 0 15px;
        display: block;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }

    .header .menu>ul>li>a>.mdi {
        position: absolute;
        height: 50px;
        width: 50px;
        top: 0;
        right: 0;
        text-align: center;
        line-height: 50px;
        transform: rotate(-90deg);
    }

    .header .menu .mobile-menu-head {
        display: flex;
        height: 50px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        justify-content: space-between;
        align-items: center;
        position: relative;
        z-index: 501;
        position: sticky;
        background-color: #fff;
        top: 0;
    }

    .header .menu .mobile-menu-head .go-back {
        height: 50px;
        width: 50px;
        border-right: 1px solid rgba(0, 0, 0, 0.1);
        cursor: pointer;
        line-height: 50px;
        text-align: center;
        color: #000;
        font-size: 16px;
        display: none;
    }

    .header .menu .mobile-menu-head.active .go-back {
        display: block;
    }

    .header .menu .mobile-menu-head .current-menu-title {
        font-size: 15px;
        font-weight: 500;
        color: #000;
    }

    .header .menu .mobile-menu-head .mobile-menu-close {
        height: 50px;
        width: 50px;
        border-left: 1px solid rgba(0, 0, 0, 0.1);
        cursor: pointer;
        line-height: 50px;
        text-align: center;
        color: #000;
        font-size: 25px;
    }

    .header .menu .menu-main {
        height: 100%;
        overflow-x: hidden;
        overflow-y: auto;
    }

    .header .menu>ul>li .sub-menu.mega-menu,
    .header .menu>ul>li .sub-menu {
        visibility: visible;
        opacity: 1;
        position: absolute;
        box-shadow: none;
        margin: 0;
        padding: 15px;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        padding-top: 65px;
        max-width: none;
        min-width: auto;
        display: none;
        transform: translateX(0%);
        overflow-y: auto;
    }

    .header .menu>ul>li .sub-menu.active {
        display: block;
    }

    @keyframes slideLeft {
        0% {
            opacity: 0;
            transform: translateX(100%);
        }

        100% {
            opacity: 1;
            transform: translateX(0%);
        }
    }

    @keyframes slideRight {
        0% {
            opacity: 1;
            transform: translateX(0%);
        }

        100% {
            opacity: 0;
            transform: translateX(100%);
        }
    }

    .header .menu>ul>li .sub-menu.mega-menu-column-4>.list-item img {
        margin-top: 0;
    }

    .header .menu>ul>li .sub-menu.mega-menu-column-4>.list-item.text-center .title {
        margin-bottom: 20px;
    }

    .header .menu>ul>li .sub-menu.mega-menu-column-4>.list-item {
        flex: 0 0 100%;
        padding: 0px;
    }

    .header .menu>ul>li .sub-menu>ul>li>a,
    .header .menu>ul>li .sub-menu.mega-menu>.list-item>ul>li>a {
        display: block;
    }

    header .menu>ul>li .sub-menu.mega-menu>.list-item>ul {
        margin-bottom: 15px;
    }

    .menu-overlay {
        position: fixed;
        background-color: rgba(0, 0, 0, 0.5);
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 1098;
        visibility: hidden;
        opacity: 0;
        transition: all 0.5s ease;
    }

    .menu-overlay.active {
        visibility: visible;
        opacity: 1;
    }
}

@media (max-width: 768px) {
    .reserva-info button+div {
        font-size: 16px;
        flex-wrap: wrap;
        align-content: space-between;
        justify-content: space-around;
    }

    .qty-reserv {
        width: 130px;
    }

    .c-restaurante-child {
        height: 40rem;
    }

    .contenedor-restaurante {
        position: relative;
    }

    .contenedor-restaurante .conter {
        width: 100%;
        max-height: 42rem;
        margin-right: 0rem;
        min-height: 44rem;
        position: relative;
    }

    .contenedor-restaurante img {
        object-fit: cover;
        min-width: 100%;
        min-height: 30%;
        --tw-translate-y: -165%;
    }

    .contenedor-rest-descripcion {
        top: 202px;
    }

    .contenedor-rest-descripcion .conter-descripcion {
        width: 100%;
        margin-left: 0rem;
    }

    .contenedor-rest-descripcion .conter-descripcion .descripcion {
        padding: 1rem 2rem 1rem 2rem;
        width: 100%;
        min-height: 25.8rem;
        margin-left: 0rem;
        margin-bottom: 0rem;
    }

    .listado-habitaciones {
        flex-direction: column;
    }

    .vertical-tabs .accordion-header {
        display: block;
    }

    .vertical-tabs .nav-pills {
        display: none;
    }

    .vertical-tabs .tab-pane.fade {
        display: block;
        opacity: 1;
    }

    .vertical-tabs .collapse:not(.show) {
        display: none;
    }
}

/*medias-fin*/