.elementor-2017 .elementor-element.elementor-element-f42f89a{--display:flex;--min-height:70vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:59px;--padding-left:0px;--padding-right:0px;}.elementor-2017 .elementor-element.elementor-element-f42f89a:not(.elementor-motion-effects-element-type-background), .elementor-2017 .elementor-element.elementor-element-f42f89a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#3D3D3D;background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-2017 .elementor-element.elementor-element-afd9fd7{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--padding-top:3%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-a577acd > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-a577acd.elementor-element{--align-self:flex-start;}.elementor-2017 .elementor-element.elementor-element-a577acd{text-align:start;}.elementor-2017 .elementor-element.elementor-element-a577acd .elementor-heading-title{font-family:"Six Caps", Sans-serif;font-size:80px;font-weight:normal;text-transform:uppercase;line-height:1em;letter-spacing:-0.3px;color:var( --e-global-color-text );}.elementor-2017 .elementor-element.elementor-element-9422df2 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2017 .elementor-element.elementor-element-9422df2{text-align:start;}.elementor-2017 .elementor-element.elementor-element-9422df2 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:20px;font-weight:700;color:#EC0043;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2017 .elementor-element.elementor-element-3181a31{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2017 .elementor-element.elementor-element-299f6e2{--display:flex;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-2017 .elementor-element.elementor-element-64f598a{--divider-border-style:solid;--divider-color:#EBEBEB;--divider-border-width:2px;}.elementor-2017 .elementor-element.elementor-element-64f598a > .elementor-widget-container{margin:0px 0px 012px 0px;padding:0px 0px 0px 0px;}.elementor-2017 .elementor-element.elementor-element-64f598a .elementor-divider-separator{width:100%;}.elementor-2017 .elementor-element.elementor-element-64f598a .elementor-divider{padding-block-start:8px;padding-block-end:8px;}.elementor-2017 .elementor-element.elementor-element-469ddd5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-2017 .elementor-element.elementor-element-b3ae577{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:02px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:012px;--padding-left:0px;--padding-right:0px;}.elementor-2017 .elementor-element.elementor-element-c190a06{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2017 .elementor-element.elementor-element-59712e5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2017 .elementor-element.elementor-element-59712e5{text-align:start;}.elementor-2017 .elementor-element.elementor-element-59712e5 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:25px;font-weight:600;color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(12px/2);}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(12px/2);}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(12px/2);}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-12px/2);}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-12px/2);}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-item:not(:last-child):after{content:"";border-color:#EBEBEB;}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:1px;}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:1px;}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-2017 .elementor-element.elementor-element-e56b54a{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-item > .elementor-icon-list-text, .elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2017 .elementor-element.elementor-element-e56b54a .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-2017 .elementor-element.elementor-element-f65da73{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-2017 .elementor-element.elementor-element-b638fec .avdiv_wid_gallery{--thumbnails-gal-height:210px;--thumbnails-gal-gap:5px;}.elementor-2017 .elementor-element.elementor-element-b638fec .avdivimg_gallery>div{border-radius:15px 15px 15px 15px;}.elementor-widget-call-to-action .elementor-cta__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-call-to-action .elementor-cta__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-call-to-action .elementor-cta__button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-call-to-action .elementor-ribbon-inner{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta .elementor-cta__bg, .elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 > .elementor-widget-container{border-radius:0px 0px 0px 0px;}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta__content{min-height:100px;text-align:center;}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta__bg-wrapper{min-width:450px;min-height:200px;}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta__title{font-family:"Quicksand", Sans-serif;font-size:25px;font-weight:700;color:var( --e-global-color-text );}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta__description{font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:900;color:var( --e-global-color-secondary );}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta__button{font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;color:#FFF;background-color:var( --e-global-color-primary );border-color:#02010100;padding:12px 32px 12px 32px;}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta__button:hover{color:#FFF;background-color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-8cc2ed5 .elementor-cta:not(:hover) .elementor-cta__bg-overlay{background-color:#EC004300;}.elementor-2017 .elementor-element.elementor-element-008263a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-2017 .elementor-element.elementor-element-98aba99 > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-98aba99.elementor-element{--align-self:flex-start;}.elementor-2017 .elementor-element.elementor-element-98aba99{text-align:start;}.elementor-2017 .elementor-element.elementor-element-98aba99 .elementor-heading-title{font-family:"Six Caps", Sans-serif;font-size:80px;font-weight:normal;text-transform:uppercase;line-height:1em;letter-spacing:-0.3px;color:var( --e-global-color-text );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-620eb6d{--divider-border-style:solid;--divider-color:#EBEBEB;--divider-border-width:2px;}.elementor-2017 .elementor-element.elementor-element-620eb6d > .elementor-widget-container{margin:0px 0px 012px 0px;padding:0px 0px 0px 0px;}.elementor-2017 .elementor-element.elementor-element-620eb6d .elementor-divider-separator{width:100%;}.elementor-2017 .elementor-element.elementor-element-620eb6d .elementor-divider{padding-block-start:8px;padding-block-end:8px;}.elementor-2017 .elementor-element.elementor-element-6ca739d{--display:flex;--min-height:50vh;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:0.25;--border-radius:10px 10px 10px 10px;}.elementor-2017 .elementor-element.elementor-element-6ca739d:not(.elementor-motion-effects-element-type-background), .elementor-2017 .elementor-element.elementor-element-6ca739d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://loob.es/valencia/wp-content/uploads/Junior-Suite-Loob-Valencia.webp");background-position:center center;background-size:cover;}.elementor-2017 .elementor-element.elementor-element-6ca739d::before, .elementor-2017 .elementor-element.elementor-element-6ca739d > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-6ca739d > .e-con-inner > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-6ca739d > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-6ca739d > .e-con-inner > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-6ca739d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-d6eaab7 );--background-overlay:'';}.elementor-2017 .elementor-element.elementor-element-3028732{--display:flex;--min-height:50vh;--justify-content:flex-end;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;--z-index:5;--e-con-transform-transition-duration:700ms;}.elementor-2017 .elementor-element.elementor-element-7bf53d8 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:22px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-42aae41{color:var( --e-global-color-827f773 );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2017 .elementor-element.elementor-element-8f7ef19 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );border-radius:5px 5px 5px 5px;}.elementor-2017 .elementor-element.elementor-element-8f7ef19 .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-8f7ef19 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-827f773 );border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-8f7ef19 > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-8f7ef19 .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-8f7ef19 .elementor-button:focus svg{fill:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-778b65e .elementor-button{background-color:#EC004300;font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-778b65e .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-778b65e .elementor-button:focus{background-color:var( --e-global-color-827f773 );color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-778b65e > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-778b65e .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-778b65e .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-4e6e7ed{--display:flex;--min-height:50vh;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:0.25;--border-radius:10px 10px 10px 10px;}.elementor-2017 .elementor-element.elementor-element-4e6e7ed:not(.elementor-motion-effects-element-type-background), .elementor-2017 .elementor-element.elementor-element-4e6e7ed > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://loob.es/valencia/wp-content/uploads/Master-Suite-Loob-Valencia.webp");background-position:center center;background-size:cover;}.elementor-2017 .elementor-element.elementor-element-4e6e7ed::before, .elementor-2017 .elementor-element.elementor-element-4e6e7ed > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-4e6e7ed > .e-con-inner > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-4e6e7ed > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-4e6e7ed > .e-con-inner > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-4e6e7ed > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-d6eaab7 );--background-overlay:'';}.elementor-2017 .elementor-element.elementor-element-d27d6d4{--display:flex;--min-height:50vh;--justify-content:flex-end;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;--z-index:5;--e-con-transform-transition-duration:700ms;}.elementor-2017 .elementor-element.elementor-element-52382f9 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:22px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-92d20e2{color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-1d550ad .elementor-button{background-color:var( --e-global-color-primary );font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );border-radius:5px 5px 5px 5px;}.elementor-2017 .elementor-element.elementor-element-1d550ad .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-1d550ad .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-827f773 );border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-1d550ad > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-1d550ad .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-1d550ad .elementor-button:focus svg{fill:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-6908ad1 .elementor-button{background-color:#EC004300;font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-6908ad1 .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-6908ad1 .elementor-button:focus{background-color:var( --e-global-color-827f773 );color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-6908ad1 > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-6908ad1 .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-6908ad1 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-1bd6f80{--display:flex;--min-height:50vh;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:0.25;--border-radius:10px 10px 10px 10px;}.elementor-2017 .elementor-element.elementor-element-1bd6f80:not(.elementor-motion-effects-element-type-background), .elementor-2017 .elementor-element.elementor-element-1bd6f80 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://loob.es/valencia/wp-content/uploads/Suite-Grey-Loob-Valencia.webp");background-position:center left;background-size:cover;}.elementor-2017 .elementor-element.elementor-element-1bd6f80::before, .elementor-2017 .elementor-element.elementor-element-1bd6f80 > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-1bd6f80 > .e-con-inner > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-1bd6f80 > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-1bd6f80 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-1bd6f80 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-d6eaab7 );--background-overlay:'';}.elementor-2017 .elementor-element.elementor-element-5c124e6{--display:flex;--min-height:50vh;--justify-content:flex-end;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;--z-index:5;--e-con-transform-transition-duration:700ms;}.elementor-2017 .elementor-element.elementor-element-6810ba2 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:22px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-8ca6f6f{color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-16da9c1 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );border-radius:5px 5px 5px 5px;}.elementor-2017 .elementor-element.elementor-element-16da9c1 .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-16da9c1 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-827f773 );border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-16da9c1 > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-16da9c1 .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-16da9c1 .elementor-button:focus svg{fill:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-eea570c .elementor-button{background-color:#EC004300;font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-eea570c .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-eea570c .elementor-button:focus{background-color:var( --e-global-color-827f773 );color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-eea570c > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-eea570c .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-eea570c .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-14fa877{--display:flex;--min-height:50vh;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:0.25;--border-radius:10px 10px 10px 10px;}.elementor-2017 .elementor-element.elementor-element-14fa877:not(.elementor-motion-effects-element-type-background), .elementor-2017 .elementor-element.elementor-element-14fa877 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://loob.es/valencia/wp-content/uploads/Premium-Suite-Loob-Valencia.webp");background-position:center center;background-size:cover;}.elementor-2017 .elementor-element.elementor-element-14fa877::before, .elementor-2017 .elementor-element.elementor-element-14fa877 > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-14fa877 > .e-con-inner > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-14fa877 > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-14fa877 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-14fa877 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-d6eaab7 );--background-overlay:'';}.elementor-2017 .elementor-element.elementor-element-74ab40b{--display:flex;--min-height:50vh;--justify-content:flex-end;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;--z-index:5;--e-con-transform-transition-duration:700ms;}.elementor-2017 .elementor-element.elementor-element-e8f18eb .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:22px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-da06f75{color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-ea27d60 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );border-radius:5px 5px 5px 5px;}.elementor-2017 .elementor-element.elementor-element-ea27d60 .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-ea27d60 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-827f773 );border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-ea27d60 > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-ea27d60 .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-ea27d60 .elementor-button:focus svg{fill:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-fb59afd .elementor-button{background-color:#EC004300;font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-fb59afd .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-fb59afd .elementor-button:focus{background-color:var( --e-global-color-827f773 );color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-fb59afd > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-fb59afd .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-fb59afd .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-13716de{--display:flex;--min-height:50vh;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:0.25;--border-radius:10px 10px 10px 10px;}.elementor-2017 .elementor-element.elementor-element-13716de:not(.elementor-motion-effects-element-type-background), .elementor-2017 .elementor-element.elementor-element-13716de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://loob.es/valencia/wp-content/uploads/Suite-Junpre-Loob-Valencia.webp");background-position:center center;background-size:cover;}.elementor-2017 .elementor-element.elementor-element-13716de::before, .elementor-2017 .elementor-element.elementor-element-13716de > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-13716de > .e-con-inner > .elementor-background-video-container::before, .elementor-2017 .elementor-element.elementor-element-13716de > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-13716de > .e-con-inner > .elementor-background-slideshow::before, .elementor-2017 .elementor-element.elementor-element-13716de > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-d6eaab7 );--background-overlay:'';}.elementor-2017 .elementor-element.elementor-element-39edf24{--display:flex;--min-height:50vh;--justify-content:flex-end;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;--z-index:5;--e-con-transform-transition-duration:700ms;}.elementor-2017 .elementor-element.elementor-element-e858596 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:22px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-93e401a{color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-ade8ac0 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );border-radius:5px 5px 5px 5px;}.elementor-2017 .elementor-element.elementor-element-ade8ac0 .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-ade8ac0 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-827f773 );border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-ade8ac0 > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-ade8ac0 .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-ade8ac0 .elementor-button:focus svg{fill:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-6011226 .elementor-button{background-color:#EC004300;font-family:"Quicksand", Sans-serif;font-size:15px;font-weight:700;fill:var( --e-global-color-827f773 );color:var( --e-global-color-827f773 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-827f773 );}.elementor-2017 .elementor-element.elementor-element-6011226 .elementor-button:hover, .elementor-2017 .elementor-element.elementor-element-6011226 .elementor-button:focus{background-color:var( --e-global-color-827f773 );color:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-6011226 > .elementor-widget-container{margin:2% 0% 0% 0%;padding:2% 0% 0% 0%;}.elementor-2017 .elementor-element.elementor-element-6011226 .elementor-button:hover svg, .elementor-2017 .elementor-element.elementor-element-6011226 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-2017 .elementor-element.elementor-element-931610f{--e-n-carousel-swiper-slides-gap:10px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:0px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:0px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;}@media(min-width:768px){.elementor-2017 .elementor-element.elementor-element-c190a06{--width:40%;}}@media(max-width:1366px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-call-to-action .elementor-cta__title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-call-to-action .elementor-cta__button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-call-to-action .elementor-ribbon-inner{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-call-to-action .elementor-cta__title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-call-to-action .elementor-cta__button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-call-to-action .elementor-ribbon-inner{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-2017 .elementor-element.elementor-element-931610f{--e-n-carousel-swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-2017 .elementor-element.elementor-element-f42f89a{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:98px;--padding-bottom:73px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-2017 .elementor-element.elementor-element-a577acd > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2017 .elementor-element.elementor-element-a577acd{text-align:start;}.elementor-2017 .elementor-element.elementor-element-a577acd .elementor-heading-title{font-size:70px;}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-call-to-action .elementor-cta__title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-call-to-action .elementor-cta__button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-call-to-action .elementor-ribbon-inner{font-size:var( --e-global-typography-accent-font-size );}.elementor-2017 .elementor-element.elementor-element-98aba99 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2017 .elementor-element.elementor-element-98aba99{text-align:start;}.elementor-2017 .elementor-element.elementor-element-98aba99 .elementor-heading-title{font-size:70px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-2017 .elementor-element.elementor-element-931610f{--e-n-carousel-swiper-slides-to-display:1;}}@media(min-width:2400px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-call-to-action .elementor-cta__title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-call-to-action .elementor-cta__button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-call-to-action .elementor-ribbon-inner{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for container, class: .elementor-element-6ca739d *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-6ca739d::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4e6e7ed *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1bd6f80 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-1bd6f80::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-14fa877 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-14fa877::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13716de *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-13716de::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ca739d *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-6ca739d::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4e6e7ed *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1bd6f80 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-1bd6f80::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-14fa877 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-14fa877::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13716de *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-13716de::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ca739d *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-6ca739d::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4e6e7ed *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1bd6f80 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-1bd6f80::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-14fa877 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-14fa877::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13716de *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-13716de::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ca739d *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-6ca739d::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4e6e7ed *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1bd6f80 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-1bd6f80::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-14fa877 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-14fa877::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13716de *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-13716de::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ca739d *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-6ca739d::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4e6e7ed *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1bd6f80 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-1bd6f80::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-14fa877 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-14fa877::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13716de *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-13716de::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ca739d *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-6ca739d:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-6ca739d::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-6ca739d .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4e6e7ed *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-4e6e7ed:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-4e6e7ed::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-4e6e7ed .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1bd6f80 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-1bd6f80:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-1bd6f80::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-1bd6f80 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-14fa877 *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-14fa877:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877 .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-14fa877:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-14fa877::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-14fa877 .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13716de *//* ===== Tarjeta con fondo fijo (no se mueve) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de.roomcard {
  position: relative;
  overflow: hidden;
  border-radius: 14px;        /* opcional */
}

/* Fondo: en Elementor usa Estilo → Fondo (Cover, Center). 
   Si quieres efecto fijo respecto al viewport: Attachment = Fixed
   (ojo en móviles a veces no funciona). */

/* ===== Wrapper de textos (lo único que se desplaza) ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
  position: absolute;
  left: 0; right: 0; bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  text-align: center;
  padding: 0 16px;
  transition: transform 1.4s cubic-bezier(.16,1,.3,1);

  will-change: transform;
}

/* En hover: sube el bloque (título + botón) para dejar sitio al texto */
.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__content {
  transform: translateY(-24px);      /* ajusta intensidad */
}

/* ===== Texto oculto → fade + desplazamiento suave ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
  opacity: 0;
  max-height: 0;
  transform: translateY(18px);
  transition:
    opacity 1.2s ease,
    transform 1.4s cubic-bezier(.16,1,.3,1),
    max-height 1.4s ease;
  transition-delay: 0.12s;
  overflow: hidden;
  pointer-events: none;
}


.elementor-2017 .elementor-element.elementor-element-13716de:hover .roomcard__desc {
  opacity: 1;
  max-height: 160px;
  transform: translateY(0);
  pointer-events: auto;
}

/* ===== Título y botón también más suaves ===== */
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de .elementor-button {
  transition: transform 0.9s cubic-bezier(.25,.46,.45,.94);
}

.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-heading-title,
.elementor-2017 .elementor-element.elementor-element-13716de:hover .elementor-button {
  transform: translateY(-4px);
}

/* (Opcional) Overlay para legibilidad */
.elementor-2017 .elementor-element.elementor-element-13716de::after {
  content: "";
  position: absolute; inset: 0;
}

/* ===== Móviles (sin hover): mostrar el texto siempre o por tap ===== */
@media (pointer: coarse) {
  /* Mostrar siempre en táctiles */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__desc {
    opacity: 1;
    max-height: 160px;
    transform: translateY(0);
    pointer-events: auto;
  }
  /* Y no desplazar el wrapper para que no tape el botón */
  .elementor-2017 .elementor-element.elementor-element-13716de .roomcard__content {
    transform: none !important;
  }
}/* End custom CSS */