.elementor-kit-1397{--e-global-color-primary:#887125;--e-global-color-secondary:#F6F3E9;--e-global-color-text:#202020;--e-global-color-accent:#655D52;--e-global-color-13f4851a:#B89933;--e-global-color-52235058:#D4CCC0;--e-global-color-21f8c9b7:#000;--e-global-color-47eea86e:#FFF;--e-global-color-6cb047a:#FFFFFF00;--e-global-typography-primary-font-family:"Prompt";--e-global-typography-primary-font-size:64px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:76.8px;--e-global-typography-primary-letter-spacing:0em;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:27px;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-text );font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;line-height:27px;letter-spacing:0px;}.elementor-kit-1397 e-page-transition{background-color:#FFBC7D;}.elementor-kit-1397 a{color:#918677;font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:500;text-decoration:underline;}.elementor-kit-1397 a:hover{color:#655D52;}.elementor-kit-1397 h1{color:#F6F6F6;font-family:"Prompt", Sans-serif;font-size:64px;font-weight:400;line-height:76.8px;letter-spacing:0px;}.elementor-kit-1397 h2{color:var( --e-global-color-accent );font-family:"DM Sans", Sans-serif;font-size:24px;font-weight:400;line-height:28.8px;}.elementor-kit-1397 h3{color:var( --e-global-color-text );font-family:"Prompt", Sans-serif;font-size:48px;font-weight:400;line-height:57.6px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1200px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-1397{--e-global-typography-primary-font-size:32px;--e-global-typography-primary-line-height:38.4px;--e-global-typography-text-font-size:16px;--e-global-typography-text-line-height:24px;font-size:16px;line-height:24px;}.elementor-kit-1397 a{font-size:16px;}.elementor-kit-1397 h1{font-size:32px;line-height:38.4px;}.elementor-kit-1397 h2{font-size:22px;line-height:26.4px;}.elementor-kit-1397 h3{font-size:32px;line-height:38.4px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//*--- Hotel Avenida Gran Via ---*/
/* General */
html {
    overflow-x: hidden;
}
html:has(body.popup-menu-open) {
    overflow: hidden;
}

.wpml-ls-legacy-dropdown-click:hover .wpml-ls-sub-menu {
    visibility: visible;
}

body::-webkit-scrollbar-track {
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #FFF8F0;
}
body::-webkit-scrollbar {
	width: 10px;
	background-color: #FFF8F0;
}
body::-webkit-scrollbar-thumb {
	background-color: var(--e-global-color-primary);
	border: 1px solid #FFF8F0;
}

.elementor-icon-wrapper,
.elementor-button-icon,
.elementor-icon-box-icon {
    display: flex!important;
    justify-content: center;
    align-items: center;
}

/* paddings */
.content-boxed-first {
    padding: 80px 32px 48px;
}
.content-boxed {
    padding: 48px 32px 48px;
}
.content-boxed-last {
    padding: 48px 32px 80px;
}
.content-full {
    padding: 48px 0;
}
.content-boxed-m {
    padding: 80px 32px;
}
.content-boxed-last-m {
    padding: 80px 0 0;
}
.ptm {
    padding-top: 48px;
}
.pbfull {
    padding-bottom: 96px;
}
.plr {
    padding-left: 32px;
    padding-right: 32px;
}

/* Heros */
#hero-home,
#hero-pages {
    position: relative;
}

/* heading */
#h1-hero  {
    position: absolute;
    left: 50%;
    bottom: 320px;
    transform: translateX(-50%);
}
#hero-pages #h1-hero  {
    bottom: 330px;
}
#h1-hero h1 {
    color: #F6F6F6;
    font-family: "Prompt", Sans-serif;
    font-size: 64px;
    font-weight: 400;
    line-height: 76.80px!important;
    text-decoration: none;
    text-align: center;
}

.title-section-h2 h2,
.title-section-h3 h3,
.title-section-h3 h2,
.title-legal h2,
#legal-section .title-legal2 h2,
#legal-section .title-legal2 h3 {
    text-align: left;
}
.titles-center .title-section-h2 h2,
.titles-center .title-section-h3 h3,
.titles-center .title-section-h3 h2 {
    text-align: center;
}
.title-section-h2 h2 {
    font-family: "DM Sans", Sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 28.8px!important;
    color: var(--e-global-color-accent);
}
.title-section-h3 h3,
.title-section-h3 h2,
.title-legal h2,
#legal-section .title-legal2 h2,
#legal-section .title-legal2 h3 {
    font-family: "Prompt", Sans-serif;
    font-weight: 400;
    font-size: 48px;
    line-height: 57.6px!important;
    color: var(--e-global-color-text);
}
.t-white .title-section-h2 h2,
.t-white .title-section-h3 h3,
.t-white .title-section-h3 h2  {
    color: #fff;
}

/* text */
.text-container,
.text-container > .e-con-inner {
    gap: 24px;
}
.titles-section,
.text-container .titles-section {
    gap: 12px;
}
.gap-cont,
.gap-cont > .e-con-inner {
    gap: 40px;
}
.cont-text,
.cont-text > .e-con-inner {
    gap: 12px;
}

.text-section,
.text-section p,
.text-section .elementor-widget-container {
    font-family: "DM Sans", Sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px!important;
    color: var(--e-global-color-text);
    text-align: left;
}
.text-section.text-center,
.text-section.text-center p,
.text-section.text-center .elementor-widget-container {
    text-align: center;
}
.t-white .text-section,
.t-white .text-section p,
.t-white .text-section .elementor-widget-container,
.text-section.t-white,
.text-section.t-white p,
.text-section.t-white .elementor-widget-container {
    color: #fff;
}

/* Botones */
.btn-site a {
    position: relative;
    background-color: transparent;
    padding: 16px 24px;
    border-radius: 4px;
    font-family: "DM Sans", Sans-serif;
    font-weight: 500;
    font-size: 18px;
    text-decoration: none;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.btn-site.btn-primary-site a {
    border: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
}
.btn-site.btn-secondary-site a {
    border: 2px solid var(--e-global-color-primary);
    background-color: var(--e-global-color-primary);
    color: #fff;
}
.btn-site.btn-primary-site.btn-white a {
    border: 2px solid #fff;
    color: #fff;
}

.btn-site.btn-primary-site a:hover {
    background-color: var(--e-global-color-secondary);
    border: 2px solid #655D52;
    color: #655D52;
    font-size: 18px;
    text-decoration: underline;
}
.btn-site.btn-secondary-site a:hover {
    border: 2px solid #746020;
    background-color: #746020;
    color: #fff;
    font-size: 18px;
}
.btn-site.btn-primary-site.btn-white a:hover {
    background-color: var(--e-global-color-secondary);
    border: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
    font-size: 18px;
    text-decoration: underline;
}

/* anchor hero */
#anchor-start-section a {
    position: absolute;
    left: 50%;
    bottom: 120px;
    transform: translateX(-50%);
}
#anchor-start {
    opacity: 0;
    pointer-events: none;
}

/* Carousel */
/* dots carousel */
#hero-home #carousel-hero .swiper.swiper-initialized,
#rooms-section .carousel-site .swiper.swiper-initialized,
#madrid-section .carousel-site .swiper.swiper-initialized {
    padding: 0;
}
#location-section #carousel-location .swiper.swiper-initialized {
    padding-bottom: 32px;
}

.swiper-pagination span.swiper-pagination-bullet {
    background-color: #D4CCC0;
    opacity: 1;
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-pagination span.swiper-pagination-bullet:hover,
#location-section #carousel-location .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
#location-section #carousel-location .swiper-pagination span.swiper-pagination-bullet:hover {
    background-color: #B89933;
}
#location-section #carousel-location .swiper-pagination span.swiper-pagination-bullet {
    background-color: #D4CCC0;
}

#location-section #carousel-location .img-cell::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 10%, rgba(0, 0, 0, 0.3) 29%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
}

/* Imgs section */
.imgs-section {
    position: relative;
}
.imgs-section .container-img1 {
    width:  calc(100% - 108px);
    height: calc(580px - 56px);
}
.imgs-section .container-img1.img-right {
    width:  calc(100% - 70px);
    height: calc(718px - 165px);
}
.imgs-section .container-img2 {
    position: absolute;
    width: 47%;
    height: 282px;
    right: 0;
    bottom: 0;
    box-shadow: -1px 9px 60px 0px #00000026;
}
.imgs-section .container-img2.img-right {
    width: 62%;
    height: 434px;
    left: 0;
}

/* Containers img full */
#offers-section .cont-offers,
#tour-section .cont-tour,
#gastro-section .cont-gastro {
    position: relative;
}
#offers-section .cont-offers::before,
#tour-section .cont-tour::before,
#gastro-section .cont-gastro::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        to right,
        rgba(0, 0, 0, 0.8) 10%,
        rgba(0, 0, 0, 0.3) 29%, 
        rgba(0, 0, 0, 0)   100% 
    );
    pointer-events: none;
}
#offers-section .text-container,
#tour-section .text-container {
    max-width: 400px;
}



/* Header and Finder */
body[data-mirai-modal="true"] #header,
body[data-mirai-modal="true"] #hero-home .elementor-widget-template,
body[data-mirai-modal="true"] #hero-pages .elementor-widget-template {
    z-index: 6;
}

/* finder */
#finder-content {
    padding: 12px;
    border-radius: 4px;
    background: #6E6E6EA3;
    backdrop-filter: blur(4px);
}
#finder {
    width: auto;
    bottom: 189px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
body:not(.cat-home) #finder {
    bottom: initial;
    top: 449px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.cat-room-detail #finder,
.cat-offer-detail #finder {
    display: none;
}

#finder.finder-active {
    position: fixed;
    bottom: 0;
}
body:not(.cat-home) #finder.finder-active {
    position: fixed;
    top: calc(100vh - 92px);
}

body[data-mirai-modal="true"] #finder {
    z-index: 1;
}

#finder ui-finder > ui-layer-content + ui-view {
    background-color: #CCCCCC;
}
#finder ui-finder > ui-button {
    border-radius: 0 4px 4px 0;
    font-family: "DM Sans", Sans-serif;
    font-size: 18px;
    font-weight: 500;
}

/* Header */
header.elementor-location-header {
    overflow: hidden;
}
/* Logo */
#header .logo-cont {
    min-width: 153px;
}
#header .logo-cont,
#header #logo-site img {
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
.elementor-sticky--effects#header .logo-cont {
    min-width: 85px;
}
.elementor-sticky--effects#header #logo-site img {
    width: 85px;
    max-width: 85px;
}
/* Lang */
#header .lang-icon > .elementor-widget-container {
    padding: 0;
}
#header .wpml-ls-legacy-dropdown-click a,
#header .wpml-ls-legacy-dropdown-click a span {
    font-family: "Prompt", Sans-serif;
    font-size: 16px;
    font-weight: 400;
    text-decoration: none;
}
#header .wpml-ls-legacy-dropdown-click a {
    padding: 11px;
    border-radius: 50%;
    border: 1px solid #746020;
    transition: all 0.35s ease;
    -webkit-transition: all 0.35s ease;
}
#header .wpml-ls-legacy-dropdown-click a:hover {
    border: 1px solid var(--e-global-color-primary);
}
#header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
    position: relative;
}
#header .wpml-ls-legacy-dropdown-click a,
#header .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a {
    color: #746020;
}
#header .wpml-ls-legacy-dropdown-click a:hover,
#header .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a:hover {
    color: var(--e-global-color-primary);
}
#header  .wpml-ls-legacy-dropdown-click a span {
    vertical-align: initial;
}
.wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
    border: none;
}
.wpml-ls-legacy-dropdown-click a,
.wpml-ls-legacy-dropdown-click a:hover, 
.wpml-ls-legacy-dropdown-click a:focus, 
.wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover>a {
    background-color: transparent;
    border: none;
    transition: all 0.35s ease;
    -webkit-transition: all 0.35s ease;
}
#header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
    display: none;
}

#header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle + ul.wpml-ls-sub-menu {
    padding-top: 11px;
    border-radius: 50%;
    background-color: transparent;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#header .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle + ul.wpml-ls-sub-menu li {
    margin-top: 6px;
    border-radius: 50%;
    background-color: #f6f3e98c;
    backdrop-filter: blur(10px);
    box-shadow: 0px 4px 4px 0px #00000026;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
/* Phone */
#header .phone-header .phone-icon {
    border-radius: 50%;
    border: 1px solid #746020;
    transition: all 0.35s ease;
    -webkit-transition: all 0.35s ease;
}
#header .phone-header:hover .phone-icon,
#header .phone-header:hover .phone-icon svg path {
    color: var(--e-global-color-primary);
    fill: var(--e-global-color-primary);
    border-color: var(--e-global-color-primary);
}
/* Club */
#header .club {
    padding: 11px;
    border-radius: 50%;
    border: 1px solid #746020;
    transition: all 0.35s ease;
    -webkit-transition: all 0.35s ease;
}
#header .club [data-mirai-component="session"],
#header .club .login {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 16px;
}
#header .club .login {
    position: relative;
}
#header .club .login::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 16px;
    height: 16px;
    background-image: url("https://static-resources-elementor.mirai.com/wp-content/uploads/sites/1600/club-hover.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#header .club img {
    width: 16px;
    height: 16px;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#header .club:hover {
    border-color: var(--e-global-color-primary);
}
#header .club:hover .login::after {
    opacity: 1;
}
#header .club:hover img {
    opacity: 0;
}

/* Comportamiento de Header al abrirse Pop up */
body.popup-menu-open #header {
    z-index: 999999;
    pointer-events: none;
}
body.popup-menu-open #header,
body.popup-menu-open #header #header-cont,
body.popup-menu-open #header::after {
    background: transparent;
    backdrop-filter: none;
    box-shadow: none;
}
body.popup-menu-open #header .cont-right {
    opacity: 0;
}

/* Header - menú hamburguesa */
#header-cont .menu-cont,
body.popup-menu-open #header #logo-site,
body.popup-menu-open #header #logo-site-img {
    position: relative;
    pointer-events: visible;
    cursor: pointer;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#header-cont .menu-cont::after,
#header-cont .menu-cont::before,
#header-cont .menu-cont i::before {
    position: absolute;
    content: "";
    width: 35px;
    height: 4px;
    border-radius: 8px;
    background-color: var(--e-global-color-text);
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#header-cont .menu-cont::after {
    top: 3px;
    left: 0;
}
#header-cont .menu-cont::before {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
#header-cont .menu-cont i {
    position: relative;
    width: 35px;
    height: 35px;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#header-cont .menu-cont i::before {
    bottom: 3px;
}

#header-cont .menu-cont:hover::after,
#header-cont .menu-cont:hover::before,
#header-cont .menu-cont:hover i::before {
    background-color: var(--e-global-color-primary);
}

body.popup-menu-open #header-cont .menu-cont {
    pointer-events: visible;
}
body.popup-menu-open #header-cont .menu-cont::before {
    opacity: 0;
}
body.popup-menu-open #header-cont .menu-cont::after {
    top: calc(50% - 2px);
    left: 0;
    transform: rotate(45deg);
}
body.popup-menu-open #header-cont .menu-cont i::before {
    bottom: calc(50% - 2px);
    left: 0;
    transform: rotate(-45deg);
}

/* Footer */
#footer .logo-footer a img {
    filter: brightness(10);
}
#footer .details-hover,
#footer .menu-hover li a,
#footer .developed-mirai.details-hover #developed-wrapper a {
    position: relative;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#footer .details-hover {
    width: auto;
}
#footer .menu-hover {
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#footer .menu-hover li a {
    width: max-content;
}
#footer .details-hover.address-footer .address-data {
    max-width: 170px;
}
#footer .details-hover::after,
#footer .menu-hover li a::after,
#footer .developed-mirai.details-hover #developed-wrapper a::after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #fff;
    border-radius: 4px;
    opacity: 0;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#footer .details-hover:hover::after,
#footer .menu-hover li:hover a::after,
#footer .menu-hover li.current-menu-item a::after,
#footer .developed-mirai.details-hover:hover #developed-wrapper a::after {
    width: 100%;
    background-color: #D4CCC0;
    opacity: 1;
}
#footer .developed-mirai.details-hover::after,
#footer .developed-mirai.details-hover:hover::after {
    display: none;
}
#footer .details-hover .elementor-widget-container,
#footer .details-hover .elementor-widget-container [class*="mi-vcard-"],
#footer .details-hover .elementor-widget-container [class*="mi-vcard-"] a,
#footer .details-hover .elementor-widget-container > div,
#footer .details-hover .elementor-widget-container > div a,
#footer .details-hover i::before,
#footer .details-hover svg path,
#footer .details-hover li a,
#footer .details-hover .elementor-widget-container [data-mirai-component="bookingQuery"] ui-pressable > ui-text,
#footer .details-hover #developed-wrapper,
#footer .details-hover #developed-wrapper a,
#footer .menu-hover li a,
#footer .menu-hover i::before,
#footer .menu-hover svg path {
    color: #fff;
    fill: #fff;
    font-size: 16px;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#footer .rrss-container .menu-hover {
    padding: 7px;
    background-color: #fff;
    border-radius: 4px;
}
#footer .rrss-container .menu-hover i::before,
#footer .rrss-container .menu-hover svg path,
#footer .rrss-container .menu-hover:hover i::before,
#footer .rrss-container .menu-hover:hover svg path {
    color: var(--e-global-color-primary);
    fill: var(--e-global-color-primary);
    font-size: 18px;
}
#footer .details-hover .elementor-widget-container,
#footer .details-hover .elementor-widget-container [class*="mi-vcard-"],
#footer .details-hover .elementor-widget-container [class*="mi-vcard-"] a,
#footer .details-hover .elementor-widget-container > div,
#footer .details-hover .elementor-widget-container > div a,
#footer .details-hover li a,
#footer .details-hover .elementor-widget-container [data-mirai-component="bookingQuery"] ui-pressable > ui-text,
#footer .details-hover #developed-wrapper,
#footer .details-hover #developed-wrapper a,
#footer .menu-hover li a {
    font-family: "DM Sans", Sans-serif;
    font-weight: 400;
    line-height: 24px!important;
    text-decoration: none;
}
#footer .details-hover svg {
    width: 16px;
    height: 16px;
}
#footer .details-hover:hover .elementor-widget-container,
#footer .details-hover:hover .elementor-widget-container [class*="mi-vcard-"],
#footer .details-hover:hover .elementor-widget-container [class*="mi-vcard-"] a,
#footer .details-hover:hover .elementor-widget-container > div,
#footer .details-hover:hover .elementor-widget-container > div a,
#footer .details-hover:hover i::before,
#footer .details-hover:hover svg path,
#footer .details-hover:hover li a,
#footer .details-hover:hover .elementor-widget-container [data-mirai-component="bookingQuery"] ui-pressable > ui-text,
#footer .details-hover:hover #developed-wrapper a,
#footer .menu-hover li:hover a,
#footer .menu-hover li.current-menu-item a,
#footer .menu-hover:hover i::before,
#footer .menu-hover:hover svg path {
    color: #D4CCC0;
    fill: #D4CCC0;
}
#footer .rrss-container .menu-hover:hover {
    background-color: #D4CCC0;
}
#footer .developed-mirai.details-hover #developed-wrapper a {
    font-family: "Poppins", Sans-serif;
    font-weight: 700;
}



/* Home */
/* adv */
#adv-web .title-adv {
    max-width: 390px;
}
#adv-web .list-adv .adv-item {
    display: flex;
    flex: 1 1 calc((100% - (24px * 3)) / 3);
}
#adv-web .title-section-h2 h2 {
    font-size: 18px;
    line-height: 27px!important;
}
#adv-web .title-section-h3 h3 {
    font-size: 28px;
    line-height: 33.6px!important;
}
/* rooms */
#rooms-section {
    position: relative;
}



/* Ubicación */
#map-section .details-hover .elementor-widget-container [class*="mi-vcard-"],
#map-section .details-hover .elementor-widget-container [class*="mi-vcard-"] a,
#map-section .details-hover .elementor-widget-container > div,
#map-section .details-hover .elementor-widget-container > div a,
#map-section .details-hover .elementor-widget-container,
#map-section .details-hover .elementor-widget-container a {
    font-family: "Prompt", Sans-serif;
    color: var(--e-global-color-text);
    font-weight: 400;
    font-size: 24px;
    line-height: 33.6px!important;
    -webkit-transition: all 0.35s ease;
    transition: all 0.35s ease;
}
#map-section .details-hover:hover .elementor-widget-container [class*="mi-vcard-"],
#map-section .details-hover:hover .elementor-widget-container [class*="mi-vcard-"] a,
#map-section .details-hover:hover .elementor-widget-container > div,
#map-section .details-hover:hover .elementor-widget-container > div a,
#map-section .details-hover:hover .elementor-widget-container,
#map-section .details-hover:hover .elementor-widget-container a {
    color: var(--e-global-color-primary);
}



/* Club */
.cat-mirai-club ui-signup[data-role="signup"] {
    margin: 64px auto;
}
.cat-mirai-club div[data-mirai-component="profile"] > ui-view[data-role="view"] {
    margin: 64px 16px;
}



/* Rooms & Offers */
#main .rooms-listing-wrapper {
    padding: 20px 17px;
}
#main .rooms-detail-wrapper {
    padding: 56px 17px 20px;
}
#main .offers-listing-wrapper {
    padding: 40px 17px 65px;
}
#main .offers-detail-wrapper {
    padding: 80px 32px 64px;
}

#main .rooms-listing-wrapper h2,
#main .rooms-listing-wrapper h3,
#main .rooms-listing-wrapper h3 a,
#main .rooms-detail-wrapper h2,
#main .offers-listing-wrapper h2,
#main .offers-detail-wrapper .offer-wrapper h2 {
    font-family: "Prompt", Sans-serif;
    font-weight: 400;
    font-size: 48px;
    line-height: 57.6px!important;
    text-decoration: none;
    color: var(--e-global-color-text);
}
#main .rooms-listing-wrapper p,
#main .rooms-listing-wrapper p span,
#main .rooms-detail-wrapper p,
#main .offers-detail-wrapper .offer-wrapper p {
    font-family: "DM Sans", Sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 27px !important;
    text-decoration: none;
    color: var(--e-global-color-text);
}
#main .rooms-listing-wrapper .room-detail ul,
#main .rooms-detail-wrapper .room-box-price,
#main .rooms-detail-wrapper .offers-listing li a.offer-link,
#main .offers-listing-wrapper .offers-listing .offer .offer-link,
#main .offers-detail-wrapper .offer-wrapper {
    background-color: var(--e-global-color-secondary);
}
#main .rooms-listing-wrapper a.more-info {
    position: relative;
    background-color: transparent;
    padding: 16px 24px;
    border-radius: 4px;
    font-family: "DM Sans", Sans-serif;
    font-weight: 500;
    font-size: 18px;
    text-decoration: none;
    border: 2px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
#main .rooms-listing-wrapper a.more-info:hover {
    background-color: var(--e-global-color-secondary);
    border: 2px solid #655D52;
    color: #655D52;
    font-size: 18px;
    text-decoration: underline;
}

#main .rooms-listing-wrapper .common-services { 
    padding: 0 32px;
}
#main .rooms-listing-wrapper .room-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
#main .rooms-listing-wrapper .room-price {
    display: none;
}
#main .rooms-listing-wrapper .rooms-listing .room-box,
#main .rooms-listing-wrapper .rooms-listing .room-item {
    border: none;
}

.cat-room-detail #main .rooms-detail-wrapper .room {
    background-color: transparent;
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 0;
}
.cat-room-detail #main .offers-listing {
    padding: 24px 0;
}



/* Gallery */
header.elementor-slideshow__header {
    display: none;
}
.cat-photos .dialog-type-buttons .dialog-widget-content a.dialog-close-button,
.cat-photos .dialog-type-buttons .dialog-widget-content a.dialog-close-button:hover {
    font-size: 20px;
    text-decoration: none;
}



/* Legal */
#legal-section .title-legal2 h2,
#legal-section .title-legal2 h3 {
    font-size: 28px;
    line-height: 33.6px!important;
}
#legal-section .ul-legal + .text-section {
    padding-top: 12px;
}
/* tabla */
#legal-section .table-legal {
  width: 100%;
  overflow-x: auto;
}
#legal-section .table-legal table {
  width: 100%;
}
#legal-section .table-legal table th,
#legal-section .table-legal table td {
  padding: 12px;
  min-width: 250px;
}

#legal-section .table-legal table tr:first-child th,
#legal-section .table-legal table tr:first-child td,
#legal-section .table-legal table tr:nth-child(even) td,
#legal-section .table-legal table tr:nth-child(odd):not(:first-child) td {
  font-family: "DM Sans", Sans-serif;
  font-size: 18px;
  line-height: 27px !important;
  text-align: left;
}
#legal-section .table-legal table tr:first-child th,
#legal-section .table-legal table tr:first-child td {
  background-color: #887125;
  border: 1px solid #ffffff;
  color: #ffffff;
  font-weight: 500;
}
#legal-section .table-legal table tr:nth-child(even) td,
#legal-section .table-legal table tr:nth-child(odd):not(:first-child) td {
    color: #202020;
    font-weight: 400;
}
#legal-section .table-legal table tr:nth-child(even) td {
  background-color: #ffffff;
}
#legal-section .table-legal table tr:nth-child(odd):not(:first-child) td {
  background-color: #F6F3E9;
}
#legal-section .table-legal table td:empty {
  text-align: center;
}
/* Barra scroll tabla */
#legal-section .table-legal::-webkit-scrollbar {
  height: 8px; 
  background: transparent; 
}
#legal-section .table-legal::-webkit-scrollbar-track {
  background: #f0f0f0;
  border-radius: 4px;
}
#legal-section .table-legal::-webkit-scrollbar-thumb {
  background: #887125;
  border-radius: 4px;
}
#legal-section .table-legal::-webkit-scrollbar-thumb:hover {
  background: #5c4b19; 
}
#legal-section .table-legal {
  scrollbar-width: thin;
  scrollbar-color: #887125  #f0f0f0; 
}



@media (min-width: 1200px) and (max-width: 1317px) {
    #hero-pages,
    #hero-pages .cont-hero {
        max-height: 450px;
        min-height: 450px;
    }

    #hero-pages,
    #hero-pages .cont-hero {
        max-height: 450px;
        min-height: 450px;
    }
    #h1-hero {
        bottom: 268px;
    }
    #hero-pages #h1-hero {
        bottom: 200px;
    }

    /* anchor hero */
    #anchor-start-section a {
        bottom: 68px;
    }
    #hero-pages #anchor-start-section a {
        bottom: 32px;
    }

    /* Carousel */
    /* dots carousel */
    #hero-home .swiper-pagination {
        top: calc(var(--e-n-carousel-dots-vertical-position) - 20px);
    }

    /* finder */
    #finder {
        bottom: 136px;
    }
    body:not(.cat-home) #finder {
        bottom: initial;
        top: 265px;
    }

    /* Home */
    .list-adv {
        gap: 24px;
        justify-content: space-between;
    }
}

@media (max-width: 1200px) {
    /* paddings */
    .content-boxed-first {
        padding: 56px 32px 32px;
    }
    .content-boxed {
        padding: 32px;
    }
    .content-boxed-last {
        padding: 32px 32px 56px;
    }
    .content-full {
        padding: 32px 0;
    }
    .content-boxed-m {
        padding: 56px 32px;
    }
    .content-boxed-last-m {
        padding: 56px 0 0;
    }
    .ptm {
        padding-top: 32px;
    }
    .pbfull {
        padding-bottom: 64px;
    }

    /* heading */
    #h1-hero  {
        bottom: 322px;
    }
    #hero-pages #h1-hero {
        bottom: 308px;
    }
    #h1-hero h1 {
        font-size: 32px;
        line-height: 38.4px!important;
    }

    .title-section-h2 h2 {
        font-size: 22px;
        line-height: 26.4px!important;
    }
    .title-section-h3 h3,
    .title-section-h3 h2,
    .title-legal h2 {
        font-size: 32px;
        line-height: 38.4px!important;
    }

    /* text */
    .text-container,
    .text-container > .e-con-inner {
        gap: 16px;
    }
    .text-section,
    .text-section p,
    .text-section .elementor-widget-container {
        font-size: 16px;
        line-height: 24px!important;

    }

    /* anchor hero */
    #anchor-start-section a {
        bottom: 96px;
    }

    /* Carousel */
    /* dots carousel */
    #location-section #carousel-location .swiper.swiper-initialized {
        padding-bottom: 24px;
    }

    /* Imgs section */
    .imgs-section {
        max-width: 540px;
    }
    .imgs-section .container-img1 {
        width:  calc(100% - 105px);
        height: calc(460px - 44px);
    }
    .imgs-section .container-img2 {
        width: 39%;
        height: 222px;
    }
    .imgs-section.imgs-right-section {
        max-width: 615px;
    }
    .imgs-section .container-img1.img-right {
        width:  calc(100% - 160px);
        height: calc(460px - 106px);
    }
    .imgs-section .container-img2.img-right {
        width: 43%;
        height: 280px;
    }

    /* Containers img full */
    #offers-section .cont-offers {
        clip-path: inset(0);
        overflow: hidden;
    }
    #offers-section .cont-offers::before,
    #tour-section .cont-tour::before,
    #gastro-section .cont-gastro::before {
        background: rgba(0, 0, 0, 0.4);
    }
    #offers-section .text-container,
    #tour-section .text-container {
        max-width: 370px;
    }

    /* finder */
    #finder {
        bottom: 178px;
    }
    body:not(.cat-home) #finder {
        bottom: initial;
        top: 470px;
    }

    /* Header - menú hamburguesa */
    #header-cont .menu-cont,
    #header-cont .menu-btn {
        max-height: 28px;
    }
    #header-cont .menu-cont::after,
    #header-cont .menu-cont::before,
    #header-cont .menu-cont i::before {
        width: 28px;
    }
    #header-cont .menu-cont i {
        width: 28px;
        height: 28px;
    }
    #header-cont .menu-cont::after {
        top: 0;
    }
    #header-cont .menu-cont i::before {
        bottom: 0;
    }



    /* Home */
    /* adv */
    #adv-web .title-adv {
        max-width: 100%;
    }

    #adv-web .title-section-h2 h2 {
        font-size: 16px;
        line-height: 24px!important;
    }
    #adv-web .title-section-h3 h3 {
        font-size: 24px;
        line-height: 28.8px!important;
    }    



    /* Ubicación */
    #map-section .details-hover .elementor-widget-container [class*="mi-vcard-"],
    #map-section .details-hover .elementor-widget-container [class*="mi-vcard-"] a,
    #map-section .details-hover .elementor-widget-container > div,
    #map-section .details-hover .elementor-widget-container > div a,
    #map-section .details-hover .elementor-widget-container,
    #map-section .details-hover .elementor-widget-container a {
        font-size: 22px;
        line-height: 26.4px!important;
    }



    /* Club */
    .cat-mirai-club ui-signup[data-role="signup"] {
        margin: 40px auto;
    }
    .cat-mirai-club div[data-mirai-component="profile"] > ui-view[data-role="view"] {
        margin: 40px 16px;
    }



    /* Rooms & Offers */
    #main .rooms-listing-wrapper {
        padding: 0 17px;
    }
    #main .rooms-detail-wrapper {
        padding: 32px 17px 0;
    }
    #main .offers-listing-wrapper {
        padding: 26px 9px 48px;
    }
    #main .offers-detail-wrapper {
        padding: 56px 17px 40px;
    }

    #main .rooms-listing-wrapper h2,
    #main .rooms-listing-wrapper h3,
    #main .rooms-listing-wrapper h3 a,
    #main .rooms-detail-wrapper h2,
    #main .offers-listing-wrapper h2,
    #main .offers-detail-wrapper .offer-wrapper h2 {
        font-size: 32px;
        line-height: 38.4px!important;
    }
    #main .rooms-listing-wrapper p,
    #main .rooms-listing-wrapper p span,
    #main .rooms-detail-wrapper p,
    #main .offers-detail-wrapper .offer-wrapper p {
        font-size: 16px;
        line-height: 24px !important;
    }

    #main .rooms-listing-wrapper .common-services { 
        padding: 0 32px;
    }

    /* Legal */
    #legal-section .title-legal2 h2,
    #legal-section .title-legal2 h3 {
        font-size: 24px;
        line-height: 28.8px!important;
    }
    /* Tabla*/
    #legal-section .table-legal table tr:first-child th,
    #legal-section .table-legal table tr:first-child td,
    #legal-section .table-legal table tr:nth-child(even) td,
    #legal-section .table-legal table tr:nth-child(odd):not(:first-child) td {
    font-size: 16px;
    line-height: 24px !important;
    }
}

@media (max-width: 767px) {
    /* paddings */
    .content-boxed-first {
        padding: 48px 24px 24px;
    }
    .content-boxed {
        padding: 24px;
    }
    .content-boxed-last {
        padding: 24px 24px 48px;
    }
    .content-full {
        padding: 24px 0;
    }
    .content-boxed-m {
        padding: 48px 24px;
    }
    .content-boxed-last-m {
        padding: 48px 0 0;
    }
    .ptm {
        padding-top: 24px;
    }
   .pbfull {
        padding-bottom: 48px;
    }
    .plr {
        padding-left: 24px;
        padding-right: 24px;
    }

    /* heading */
     #h1-hero  {
         bottom: 218px;
    }
    #hero-pages #h1-hero {
        bottom: 148px;
    }

    /* text */
    .gap-cont,
    .gap-cont > .e-con-inner {
        gap: 32px;
    }
    
    /* anchor hero */
    #anchor-start-section a {
        bottom: 132px;
    }
    body:not(.cat-home) #anchor-start-section a {
        bottom: 60px;
    }

    /* Imgs section */
    .imgs-section,
    .imgs-section.imgs-right-section {
        max-width: 100%;
    }
    .imgs-section .container-img1 {
        width:  calc(100% - 56px);
        height: calc(320px - 31px);
    }
    .imgs-section .container-img2 {
        width: 41%;
        height: 156px;
    }
    .imgs-section .container-img1.img-right {
        width:  calc(100% - 36px);
        height: calc(320px - 74px);
    }
    .imgs-section .container-img2.img-right {
        width: 55%;
        height: 193px;
    }

    /* Containers img full */
    #offers-section .text-container,
    #tour-section .text-container {
        max-width: 100%;
    }
    
    /* finder */
    #finder {
        left: 0;
        right: 0;
        bottom: 0;
        transform: none;
    }
    body:not(.cat-home) #finder {
        top: initial;
        bottom: 0;
    }
    body:not(.cat-home) #finder.finder-active {
        position: fixed;
        top: calc(100vh - 72px);
    }
    #finder-content {
        padding: 12px;
        background: #fff;
        border-radius: 0;
        backdrop-filter: blur(0);
    }

    /* Header */
    /* Logo */
    #header .logo-cont,
    .elementor-sticky--effects#header .logo-cont {
        min-width: 96px;
    }
    .elementor-sticky--effects#header #logo-site img {
        width: 96px;
        max-width: 96px;
    }

    /* Header - menú hamburguesa */
    #header-cont .menu-cont,
    #header-cont .menu-btn {
        max-height: 21px;
    }
    #header-cont .menu-cont::after,
    #header-cont .menu-cont::before,
    #header-cont .menu-cont i::before {
        width: 21px;
    }
    #header-cont .menu-cont i {
        width: 21px;
        height: 21px;
    }



    /* Club */
    .cat-mirai-club ui-signup[data-role="signup"] {
        margin: 32px 10px;
    }
    .cat-mirai-club div[data-mirai-component="profile"] > ui-view[data-role="view"] {
        margin: 32px 8px;
    }



    /* Rooms & Offers */
    #main .rooms-listing-wrapper {
        padding: 0 9px 28px;
    }
    #main .rooms-detail-wrapper {
        padding: 24px 9px 0;
    }
    #main .offers-listing-wrapper {
        padding: 18px 7px 45px;
    }
    #main .offers-detail-wrapper {
        padding: 48px 9px 32px;
    }

    #main .rooms-listing-wrapper .common-services { 
        padding: 0;
    }
}

@media (max-height: 450px) {
    #hero-pages,
    #hero-pages .cont-hero {
        max-height: 300px;
        min-height: 300px;
    }
    /* heading */
     #h1-hero  {
        bottom: 143px;
    }
    #hero-pages #h1-hero {
        bottom: 60px;
    }

    /* anchor hero */
    #hero-home #anchor-start-section,
    #hero-pages #anchor-start-section {
        display: none;
    }

    /* Finder */
    #finder,
    #finder.finder-active,
    body:not(.cat-home) #finder,
    body:not(.cat-home) #finder.finder-active {
        position: fixed;
        top: initial;
        bottom: 0;
    }

    /* Carousel */
    /* dots carousel */
    #hero-home .swiper-pagination {
        display: none;
    }
}/* End custom CSS */