.hotel-room-card {

    background: #fff;

    border-radius: 24px;

    overflow: hidden;

    box-shadow: 0 8px 30px rgba(0, 0, 0, .06);

    transition: .35s;

    display: flex;

    flex-direction: column;

    height: 100%;

}

.hotel-room-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 20px 50px rgba(0, 0, 0, .12);

}


/* IMAGEN */
.hotel-room-card__image-wrapper {

    position: relative;

    display: block;

    overflow: hidden;

    aspect-ratio: 4/3;

}

.hotel-room-card__image {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform .8s ease;

}

.hotel-room-card:hover .hotel-room-card__image {

    transform: scale(1.08);

}

/* TAGLINE */
.hotel-room-card__tagline {

    position: absolute;

    top: 20px;

    left: 20px;

    padding: 8px 14px;

    border-radius: 999px;

    background: rgba(255, 248, 240, .9);

    backdrop-filter: blur(6px);

    font-size: 11px;

    letter-spacing: .2em;

    text-transform: uppercase;

}

/* CONTENIDO */
.hotel-room-card__content {

    padding: 30px;

    display: flex;

    flex-direction: column;

    flex: 1;

}

/* TITULO */

.hotel-room-card__title {

    margin: 0;

    font-size: 24px;

    font-family: "Cormorant Garamond", ui-serif, Georgia, serif;

}

/* TEXTO */
.hotel-room-card__excerpt {

    margin-top: 18px;

    color: #666;

    line-height: 1.8;

    flex: 1;

}

/* Características */
.hotel-room-card__features {

    display: flex;

    gap: 25px;

    padding-top: 20px;

    border-top: 1px solid #eee;

}

.hotel-room-card__feature {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    font-size: 14px;

    color: #666;

}

.hotel-room-card__feature-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 18px;

    height: 18px;

    flex-shrink: 0;

}

.hotel-room-card__feature-icon svg {

    width: 18px;

    height: 18px;

    display: block;

}

/* Botón */
.hotel-room-card__button {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    margin-top: 30px;

    height: 48px;

    border-radius: 999px;

    padding: 0 28px;

    background: #7B4A24 ! important;

    color: #fff;

    text-decoration: none;

    transition: .25s;

    width: 100%;

    font-size: 16px;

}

.hotel-room-card__button:hover {

    background: #5F371A;

}


/* ROOMS component */
.hotel-rooms {

    margin: 100px 0;

}

.hotel-rooms__header {

    max-width: 750px;

    margin: 0 auto 70px;

    text-align: center;

}

.hotel-rooms__subtitle {

    text-transform: uppercase;

    letter-spacing: .25em;

    font-size: 13px;

}

.hotel-rooms__title {

    margin-top: 10px;

    font-size: 54px;

}

.hotel-rooms-grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 40px;

}

.hotel-rooms-slider {
    --swiper-theme-color: #666;
}

.hotel-rooms-slider .swiper-button-prev,
.hotel-rooms-slider .swiper-button-next {
    width: 42px;
    height: 42px;

    background: #fff;

    border-radius: 50%;

    box-shadow: 0 4px 15px rgba(0, 0, 0, .15);

    transition: all .25s ease;
}


.hotel-rooms-slider .swiper-button-prev:hover,
.hotel-rooms-slider .swiper-button-next:hover {
    transform: scale(1.08);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .2);
}

.hotel-rooms-slider .swiper-button-prev:after,
.hotel-rooms-slider .swiper-button-next:after {
    font-size: 14px;
    font-weight: 700;
    color: #333;
}

.hotel-rooms-slider .swiper-navigation-icon {
    width: 15px;
    height: 15px;
}