1<!DOCTYPE html> 2<html lang="es"> 3 4<head> 5 <meta charset="utf-8" /> 6 <meta name="description" content="Palacio Del Infante Don Juan Manuel Hotel Spa en Belmonte. Web Oficial. Hotel de 4* estrellas situado en Infante Don Juan Manuel 2, Belmonte, Belmonte. Reserve online al Mejor Precio." /> 7 <meta name="robots" content="index, follow" /> 8 <meta name="viewport" content="width=device-width, initial-scale=1" saf="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1, user-scalable=yes" class="metaViewport"> 9 <meta property="og:url" content="https://www.hotelspainfantedonjuanmanuel.es" /> 10 <meta property="og:title" content="Palacio Del Infante Don Juan Manuel Hotel Spa en Belmonte. Web Oficial"/> 11 <meta property="og:description" content="Palacio Del Infante Don Juan Manuel Hotel Spa en Belmonte. Web Oficial. Hotel de 4* estrellas situado en Infante Don Juan Manuel 2, Belmonte, Belmonte. Reserve online al Mejor Precio." /> 12 <meta property="og:site_name" content="Palacio Del Infante Don Juan Manuel Hotel Spa"/> 13 <meta property="og:type" content="hotel"/> 14 <meta property="og:image" class="openGraphFirstImage" content="https://synergy.booking-channel.com/api/hotels/413/medias/222#Claustro%20interior%20del%20Palacio%20del%20Infante%20Don%20Juan%20Manuel%20en%20Belmonte%20con%20arcos%20de%20piedra,%20mesas%20lounge%20y%20ambiente%20elegante" /> 15 <meta property="business:contact_data:street_address" content="Infante Don Juan Manuel 2, Belmonte " /> 16 <meta property="business:contact_data:locality" content="Belmonte" /> 17 <meta property="business:contact_data:postal_code" content="16640" /> 18 <meta property="business:contact_data:country_name" content="España" /> 19 <meta property="place:latitude" content="39.561326" /> 20 <meta property="place:longitude" content="-2.702624" /> 21 22 <title>Palacio Del Infante Don Juan Manuel Hotel Spa en Belmonte. Web Oficial</title> 23 24 25 <!-- Critical css --> 26 <style> 27 *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body,html{width:100%;scroll-behavior: smooth;}body{margin:0;padding:0;background-color:#f3f3f3;font:400 14px/1 Catamaran,sans-serif;color:#474242;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;padding-bottom:70px;} 28 .sta-mainDispo *{box-sizing: content-box;} 29 main.sta-mainDispo ~ * :after, 30 main.sta-mainDispo ~ * :before, 31 main.sta-mainDispo :after, 32 main.sta-mainDispo :before{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box} 33 34 /* generic */ 35 figure{margin:0} 36 main{display:block;min-height:calc(100vh - 420px)} 37 @media(min-width:768px){ 38 main{min-height:calc(100vh - 320px)} 39 } 40 @media(min-width:1024px){ 41 main{min-height:calc(100vh - 218px)} 42 } 43 @media(min-width:1280px){ 44 main{min-height:calc(100vh - 155px)} 45 } 46 47 main.sta-mainDispo{min-height: calc(100vh - 420px);} 48 49 .sta-inputFixed{position:fixed;left:-999px;top:0;opacity:0;height:0;width:0} 50 a,h1,h2,h3,h4,h5,h6,p,span{margin:0;padding:0;font:inherit;color:inherit} 51 h1:empty, 52 h2:empty, 53 h3:empty, 54 h4:empty, 55 h5:empty, 56 h6:empty, 57 p:empty, 58 span:empty{margin:0!important;padding:0!important} 59 input[type=number]{-moz-appearance:textfield} 60 a{text-decoration:none} 61 a:visited{color:inherit} 62 :focus{outline:0} 63 a:active, 64 a:hover{color:inherit;outline:0} 65 a[href^="javascript"]{cursor:default} 66 li,ul{list-style:none;margin:0;padding:0} 67 b,strong{font-weight:700} 68 code,kbd,pre,samp{font-family:monospace,serif;font-size:1em} 69 pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word} 70 small{font-size:80%} 71 img{border:0} 72 svg:not(:root){overflow:hidden} 73 fieldset{border:none;margin:0 2px;padding:.35em .625em .75em} 74 legend{border:0;padding:0} 75 button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:1;border:none;background-color:transparent;padding:0} 76 button,input{line-height:normal} 77 button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;border:none} 78 button[disabled],input[disabled]{cursor:default} 79 input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0} 80 input[type=search]{-webkit-appearance:textfield;box-sizing:content-box} 81 input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none} 82 button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0} 83 /* END generic */ 84 85 @media(min-width:768px){ 86 body{padding-bottom:80px} 87 } 88 @media(min-width:1024px){ 89 body{padding-bottom:0} 90 } 91 @media(max-width:1023px){ 92 body.bar-spacer{padding-bottom:150px} 93 } 94 @media(max-width:1023px) and (min-width:768px){ 95 body.bar-spacer{padding-bottom:160px} 96 } 97 98 .sta-noScroll, 99 .sta-noScroll body{overflow:hidden} 100 101 .botonGC{border:2px solid #474242;color:#474242;font:700 16px/1 Catamaran,sans-serif;letter-spacing:.1em;text-decoration:none;display:inline-block;vertical-align:middle;text-transform:uppercase;padding:14px 15px 11px;min-width:240px;border-radius:2px;text-align:center;cursor:pointer;margin:5px 10px} 102 .botonGC.sta-fondoWhite{background: #fff;color: #474242;} 103 .botonGC.sta-white{background: #474242;color: #fff;} 104 @media(min-width:1280px){ 105 .botonGC:focus, 106 .botonGC:hover{background-color:#c2a472;color:#fff;border-color:transparent;transition:cubic-bezier(.785,.135,.15,.86) .7s} 107 } 108 109 details{margin-bottom:4px;line-height: 23px;} 110 details summary{list-style:none;position:relative;padding:0 40px 10px 0;cursor:pointer;transition:color .3s} 111 details summary *[class^='icoGlobal-'], 112 details summary *[class^='icon-']{border:2px solid;border-radius:50%;line-height:32px;width:36px;display:inline-block;text-align:center;color:#c2a472} 113 details summary:after{content:'\e919';font:20px icomoon;position:absolute;right:0;top:0;border:2px solid;width:36px;text-align:center;border-radius:50%;padding:3px 0 9px 0px;transition:.5s} 114 details[open] summary:after{transform:rotate(180deg)} 115 details p{line-height: 23px;} 116 @media(min-width:1280px){ 117 details summary:hover{color:#c2a472} 118 details summary:hover:after{background:#c2a472;border-color:#c2a472;color:#fff} 119 } 120 121 body.resize-on *{-webkit-transition:none!important;-moz-transition:none!important;-ms-transition:none!important;-o-transition:none!important;transition:none!important} 122 body.lb-disable-scrolling, 123 body.noscroll{overflow:hidden!important} 124 .sta-oculto, 125 .hidden{display:none!important} 126 body{transition:.5s} 127 body.hideBody{opacity:0;transition:all .3s;background-color:#474242;overflow:hidden} 128 129 .imgOcultaAda{position:absolute;
129left:0;top:0;width:1px;height:1px;opacity:0;visibility:hidden;pointer-events:none} 130 131 /* tpl-cookie */ 132 #sta-cookies, .tpl-cookie #sta-cookies_config {position:fixed; top:0; left:-999px} 133input#sta-cookies:checked~.tpl-cookie {opacity:0; visibility:hidden} 134.tpl-cookie {position:fixed; left:0; top:0; right:0; bottom:0; overflow:auto; font:14px Catamaran, sans-serif; opacity:1; visibility:visible; z-index:1000; transition:1s} 135.tpl-cookie .sta-cookie_table {display:table; width:100%; height:100%} 136.tpl-cookie .sta-cookie_cell {display:table-cell; vertical-align:middle; background:rgba(0, 0, 0, .5)} 137.tpl-cookie .sta-cookie_content {padding:30px 10px} 138.tpl-cookie .sta-cookie_content2 {box-shadow:0 0 20px 1px #000} 139.tpl-cookie .sta-cookie_logo {padding:10px 20px; background:#00111B; color:#fff; font-size:17px; text-transform:uppercase; display:none} 140.tpl-cookie.sta-idiomas .sta-cookie_logo {display:flex} 141.tpl-cookie .sta-cookie_logo svg {fill:#fff; display:block} 142.tpl-cookie .sta-cookie_idi {margin-left:auto} 143.tpl-cookie .sta-cookie_idiLabel {display:block; height:33px; width:33px; border:2px solid; border-radius:50%; text-align:center; cursor:pointer} 144.tpl-cookie .sta-cookie_idiLabel {position:relative} 145.tpl-cookie .sta-cookie_idiLabel span {font-size:13px; line-height:30px} 146.tpl-cookie .sta-cookie_idiLabel span:after {content:''; position:absolute; left:50%; top:100%; border-left:3px solid transparent; border-right:3px solid transparent; border-top:4px solid #fff; margin:7px 0 0 -2px} 147.tpl-cookie .sta-cookie_idiLabel ul {position:absolute; top:100%; right:10px; margin-top:18px; background:#00111b; padding:9px 12px; margin-right:-5px; font-size:13px; text-transform:none; text-align:left; opacity:0; visibility:hidden; transition:.5s} 148.tpl-cookie .sta-cookie_idiLabel input:checked~ul {opacity:1; visibility:visible} 149.tpl-cookie .sta-cookie_idiLabel ul li:not(:last-of-type) {border-bottom:1px solid #fff} 150.tpl-cookie .sta-cookie_idiLabel ul a {display:block; padding:5px 0; position:relative; transition:padding-left .3s} 151.tpl-cookie .sta-cookie_idiLabel ul a:before {content:''; position:absolute; top:10px; left:-2px; border-top:3px solid transparent; border-bottom:3px solid transparent; border-left:0 solid #fff; transition:border-left-width .3s} 152.tpl-cookie .sta-cookie_idiLabel ul a:hover, .tpl-cookie .sta-cookie_idiLabel ul a.sta-active {padding-left:8px} 153.tpl-cookie .sta-cookie_idiLabel ul a:hover:before, .tpl-cookie .sta-cookie_idiLabel ul a.sta-active:before {border-left-width:4px} 154.tpl-cookie .sta-cookie_info {background:#fff; padding:25px 20px} 155.tpl-cookie .sta-cookie_info .sta-cookie_texto {margin-bottom:30px} 156.tpl-cookie .sta-cookie_info .sta-cookie_texto a {color:#00111B; text-decoration:underline} 157.tpl-cookie .sta-cookies_config .sta-cookie_cell, .tpl-cookie .sta-cookie_info .sta-cookie_cell {vertical-align:middle; background:none;} 158.tpl-cookie .sta-cookie_info .sta-cookie_cell {vertical-align:middle; flex:1; text-align:center;} 159.tpl-cookie .sta-cookies_config .sta-cookie_cell {float:left;} 160.tpl-cookie .sta-cookie_cell > button, .tpl-cookie .sta-cookie_cell > label {box-sizing:border-box; padding:10px; border:2px solid #132223; background:#132223!important; color:#e4eaeb; min-width:150px; display:block; font-weight:bold; text-transform:uppercase; letter-spacing:.05em; width:100%;} 161.tpl-cookie .sta-cookies_config .sta-cookie_cell:first-of-type {float:right;} 162.tpl-cookie .sta-cookie_info .sta-cookie_cell:last-of-type {text-align:right; float:right; margin-left:auto;} 163.tpl-cookie .sta-cookie_config {font-weight:bold; padding:10px 0; display:inline-block; color:black} 164label.sta-cookie_config {cursor:pointer;} 165.tpl-cookie .sta-cookies_confirm, .tpl-cookie .fn-enableAll {padding:10px; border:2px solid #00111B; background:#00111B; color:#fff; min-width:150px; margin:0 0 0 auto; display:block; font-weight:bold; text-transform:uppercase; letter-spacing:.05em} 166.tpl-cookie #sta-cookies_config:checked~.sta-cookie_table .sta-cookie_info, .tpl-cookie .sta-cookies_config {display:none; background:#fff; padding:25px 20px 35px} 167.tpl-cookie #sta-cookies_config:checked~.sta-cookie_table .sta-cookies_config {display:block} 168.tpl-cookie .sta-cookies_config ul {margin-bottom:70px} 169.tpl-cookie .sta-cookies_config ul li {list-style:none} 170.tpl-cookie .sta-cookies_config ul li:not(:last-of-type) {padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid #00111B} 171.tpl-cookie .sta-cookies_config .sta-cookies_cont {display:block; position:relative; padding-bottom:40px} 172.tpl-cookie .sta-cookies_config .sta-cookies_cont .sta-cookies_title {display:block; font-weight:bold; color:#00111B; margin-bottom:8px; font-size:15px} 173.tpl-cookie .sta-cookies_config .sta-cookies_label input {position:fixed; left:-999px; top:0} 174.tpl-cookie .sta-cookies_config .sta-cookies_label .sta-cookies_icon {position:absolute; right:0; bottom:0; width:66px; height:35px; border-radius:50px; overflow:hidden; z-index:1; background:#dadada; background:linear-gradient(to bottom, #ddd, #ccc)} 175.tpl-cookie .sta-cookies_config .sta-cookies_label .sta-cookies_icon:after {content:''; position:absolute; left:0; top:0; bottom:0; right:0; background:transparent; transition:background .5s} 176.tpl-cookie .sta-cookies_config .sta-cookies_label .sta-cookies_icon span {position:absolute; right:36px; bottom:5px; top:5px; width:25px; background:#fff; box-shadow:0 1px 5px rgba(0, 0, 0, .5); border-radius:50%; z-index:1; transition:right .5s} 177.tpl-cookie .sta-cookies_config .sta-cookies_label input:checked~.sta-cookies_icon span {right:5px} 178.tpl-cookie .sta-cookies_config .sta-cookies_label input:checked~.sta-cookies_icon:after {background:#222} 179.tpl-cookie .sta-cookies_config .sta-cookies_label.sta-disabled {cursor:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAMAAAC6V+0/AAABHVBMVEX/AAD/AgP/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAH/AAH/AQH/AQH/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/kZH/AAD/AQH/ExP/FBT/Ghr/HBz/MTH/MzP/OTn/Ojv/PDz/PT3/Tk7/UVH/UlL/VFT/VVX/YGD/YmL/jY3/kpL/lJT/lZX/n5/
179/oKD/oaH/vLz/vr7/wcH/wsL/w8P/x8f/yMj/zc3/8fH/8vL/9fX/9vb/9/f/+vr////74QKfAAAANnRSTlMAAgUODxAREhQVF1daXV9gY2ZnaGtvcnOSmZqam6Giu76/wcPExtfb3d7h5Ofs7e7v8PHy/v5/hlqtAAAA0ElEQVR42mIAAxYheUBT84CmQRCDQfhb27Zt1dq2/U/uf4sxuh6/3UmWNlke7axWXuM0aTPNmfUC7Bwc7AL0leV2+fJj9vt6DgxG1gBwZ0mP29AiVcwSdZvqMyzUqA3Otxy9gC6NwZvdFvoFk1pl588c9fZYFxyauXoCKTp6Clpj999Vb58NjcO7OfoNU+qEMyv0/hp6VDUPj47CYp3UBNtPqT4AtCmsH7j6CK+VPm+AYUWVDQDsHR3vAwyVK6l1jrT5DuXVdo2vbLI60V2vqABwNFT27mngMwAAAABJRU5ErkJggg=='), no-drop} 180.tpl-cookie .sta-cookies_config .sta-cookies_label.sta-disabled .sta-cookies_icon {background:#222; border-color:#222} 181.tpl-cookie .sta-cookies_config .sta-cookies_label.sta-disabled .sta-cookies_icon span {right:5px} 182.tpl-cookie .sta-cookie_logo {background:#00111B; display:none} 183.tpl-cookie .sta-cookie_logo svg {height:30px; width:146px} 184.tpl-cookie {font-family:'Roboto', sans-serif} 185.tpl-cookie .sta-cookie_logo, .tpl-cookie .sta-cookies_config .sta-cookies_label .sta-cookies_title {font-family:(second)} 186 187@media(min-width: 801px) { 188.tpl-cookie .sta-cookie_logo {padding:15px 20px} 189.tpl-cookie .sta-cookie_content {padding:30px 20px} 190.tpl-cookie .sta-cookie_content {max-width:850px; margin:0 auto} 191.tpl-cookie .sta-cookies_config .sta-cookies_cont {padding:0 50px 0 0} 192.tpl-cookie .sta-cookies_config .sta-cookies_cont div {max-width:540px} 193.tpl-cookie .sta-cookies_config .sta-cookies_label .sta-cookies_icon {bottom:50%; margin-bottom:-18px} 194} 195 196@media (max-width: 800px) { 197.sta-cookie_table {flex-direction:column; justify-content:center; align-items:center;} 198.tpl-cookie .sta-cookie_cell .sta-cookie_table {flex-direction:row; flex-wrap:wrap;} 199} 200 201@media (max-width: 800px) { 202.tpl-cookie .sta-cookie_cell .sta-cookie_table .sta-cookie_cell:first-child {flex:1 1 100%;} 203.tpl-cookie .sta-cookie_cell .sta-cookie_table .sta-cookie_cell:nth-child(2), .tpl-cookie .sta-cookie_cell .sta-cookie_table .sta-cookie_cell:nth-child(3) {flex:0 0 calc((100% - 13px) / 2);} 204} 205 206@media(max-width: 400px) { 207.tpl-cookie .sta-cookie_cell > button, .tpl-cookie .sta-cookie_cell > label {min-width:unset; padding:8px; font-size:10px;} 208} 209 210.tpl-cookie .sta-cookie_cell .sta-cookie_table {display:flex; gap:13px;} 211 /* FIN tpl-cookie */ 212 213
214 .tgl-cover-air{position:relative;min-height:calc(100vh - 70px)} 215 .tgl-globalAlertas-air[alertas=''] ~ main > .tgl-cover-air:first-child{min-height:500px} 216 .tgl-cover-air.sta-video-on.sta-videoMovil .sta-cover-air_video{display:block} 217 @media(min-width:1280px){ 218 .tgl-cover-air.sta-video-on .sta-cover-air_video{display:block} 219 } 220 @media(max-width:800px){ 221 body .tgl-globalAlertas-air ~ main .tgl-cover-air.sta-devices-hide{min-height: 0!important;} 222 .tgl-cover-air.sta-devices-hide>div:not(.sta-cover-air_engine){display:none} 223 } 224 .tgl-cover-air.sta-logo_center .sta-cover-air_logo{position:absolute;top:50%;left:0;width:100%;padding-top:0;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)} 225 .tgl-cover-air.sta-text_center .sta-cover-air_intro{height:100%} 226 .tgl-cover-air.sta-text_center .sta-cover-air_intro .sta-cover-air_text{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);left:0;width:100%;padding-bottom:0}
227 .tgl-cover-air.sta-text_center .sta-cover-air_intro .sta-cover-scroll{position:absolute;left:calc(50% - 21px);bottom:30px} 228 @media(max-width:1023px){ 229 .tgl-cover-air.sta-cover_hide-ondevices{display:none} 230 } 231 @media(max-width:374px){ 232 /*.tgl-cover-air{min-height:498px}*/ 233 } 234 @media(min-width:768px){ 235 .tgl-cover-air{min-height:768px} 236 .tgl-cover-air.sta-text_center .sta-cover-air_intro .sta-cover-scroll{bottom:60px;left:calc(50% - 24px)} 237 .tgl-cover-air.sta-text_center:not(.sta-motorBottom) .sta-cover-air_intro .sta-cover-scroll{bottom:220px} 238 .tgl-cover-air.sta-hide-engine .sta-cover-air_intro{padding:0 15px 40px} 239 } 240 .tgl-cover-air.sta-hide-engine .sta-cover-air_engine{display:none} 241 @media(min-width:1024px){ 242 .tgl-cover-air{position:relative;/*height:100vh*/} 243 .tgl-cover-air.sta-logo_center .sta-cover-air_logo{display:block} 244 .tgl-cover-air.sta-text_center .sta-cover-air_intro .sta-cover-scroll{bottom:125px} 245 .tgl-cover-air.sta-hide-engine.sta-text_center .sta-cover-air_intro .sta-cover-scroll{bottom:40px} 246 } 247 @media(min-width:1680px){
248 .tgl-cover-air{height:100vh} 249 .tgl-cover-air.sta-logo_center .sta-cover-air_logo img{width:260px} 250 } 251 .tgl-cover-air .sta-cover-air_multimedia{position:absolute;z-index:1;top:0;left:0;width:100%;height:100%;overflow:hidden} 252 .tgl-cover-air .sta-cover-air_multimedia:before{content:'';position:absolute;z-index:1;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.1)} 253 .tgl-cover-air .sta-cover-air_multimedia .sta-cover-air_photo{position:relative;width:100%;height:100%;background-position:50% 50%;background-size:cover;background-repeat:no-repeat} 254 .tgl-cover-air .sta-cover-air_video{display:none;position:absolute;z-index:1;top:0;left:0;width:100%;height:100%;pointer-events:none} 255 .tgl-cover-air .sta-cover-air_video:before{content:'';position:absolute;z-index:1;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.1)} 256 .tgl-cover-air .sta-cover-air_video .sta-cover-air_video-element{position:relative;overflow:hidden;width:100%;height:100%;min-height:100%;min-width:100%;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s;opacity:0;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) 1s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) 1s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) 1s;-o-transition:all cubic-bezier(.785,.135,.15,.86) 1s;transition:all cubic-bezier(.785,.135,.15,.86) 1s}
257 .tgl-cover-air .sta-cover-air_video .sta-cover-air_video-element.fn-loaded{opacity:1} 258 .tgl-cover-air .sta-cover-air_video .sta-cover-air_video-element .embed_youtube{object-fit:cover;object-position:center;position:relative} 259 .tgl-cover-air.not-videoCover .sta-cover-air_video .sta-cover-air_video-element .embed_youtube{width:100%;height:100%} 260 .tgl-cover-air .sta-cover-air_video .sta-cover-air_video-element .wistia_embed{height:100%;width:100%} 261 .tgl-cover-air .sta-cover-air_video .sta-cover-air_video-element .wistia_embed video{object-fit:cover!important;object-position:center!important;width:100%;height:100%} 262 .tgl-cover-air.not-videoCover .sta-cover-air_video .sta-cover-air_video-element .wistia_embed video{object-fit:contain!important} 263 .tgl-cover-air .sta-cover-air_logo{position:relative;z-index:3;text-align:center;padding-top:20px} 264 .tgl-cover-air .sta-cover-air_logo img{display:inline-block;width:138px;height:auto;filter:drop-shadow(2px 2px 2px rgba(71, 66, 66, .3));-webkit-filter:drop-shadow(2px 2px 2px rgba(71, 66, 66, .3));-moz-filter:drop-shadow(2px 2px 2px rgba(71, 66, 66, .3));-ms-filter:drop-shadow(2px 2px 2px rgba(71, 66, 66, .3));-o-filter:drop-shadow(2px 2px 2px rgba(71, 66, 66, .3))} 265 @media(min-width:768px){
266 .tgl-cover-air .sta-cover-air_logo{padding-top:50px} 267 .tgl-cover-air .sta-cover-air_logo img{width:220px} 268 } 269 @media(min-width:1024px){ 270 .tgl-cover-air .sta-cover-air_logo{display:none} 271 } 272 @media(max-height: 600px){ 273 /* .tgl-cover-air{min-height: 575px !important;} */ 274 } 275 .tgl-cover-air .sta-cover-air_intro{position:absolute;z-index:2;bottom:0;left:0;width:100%;text-align:center;padding:0 15px 65px} 276 @media(max-width:767px){ 277 _::-webkit-full-page-media, _:future, :root .tgl-cover-air .sta-cover-air_intro {padding-bottom: 125px} 278 } 279 .tgl-cover-air .sta-cover-air_intro .sta-cover-air_text{color:#fff;font-size:24px;letter-spacing:.02em;padding-bottom:15px;text-shadow:2px 2px 2px rgba(0,0,0,.3)} 280 .tgl-cover-air .sta-cover-air_intro .sta-cover-air_scroll{display:inline-block} 281 @media(min-width:768px){ 282 .tgl-cover-air .sta-cover-air_intro{padding:0 15px 185px} 283 .tgl-cover-air.sta-motorBottom .sta-cover-air_intro{padding-bottom:158px} 284 .tgl-cover-air .sta-cover-air_intro .sta-cover-air_text{font-size:40px} 285 } 286 @media(min-width:770px) and (max-width:800px){
287 .tgl-cover-air .sta-cover-air_intro{padding:0 15px 30px} 288 } 289 @media(min-width:1680px){ 290 .tgl-cover-air{height: 900px;} 291 .tgl-cover-air .sta-cover-air_intro .sta-cover-air_text{font-size:46px} 292 } 293 @media(min-width:801px){ 294 .tgl-cover-air .sta-cover-air_engine{position:absolute;z-index:4;bottom:0;left:0;width:100%;padding-bottom:30px;height:170px} 295 .tgl-cover-air .sta-cover-air_engine>div{position:absolute;top:0;left:0;width:100%} 296 .tgl-cover-air.sta-motorBottom .sta-cover-air_engine>div{top:auto;bottom:0} 297 .tgl-cover-air.sta-motorBottom .sta-cover-air_engine #default_sygy_element_engine > div > div{max-width:none} 298 .tgl-cover-air.sta-motorBottom .sta-cover-air_engine #default_sygy_element_engine > div > div > div{max-width:980px;margin:0 auto;position: relative;} 299 } 300 301 302 303 304 .tgl-menus-air{position:relative;z-index:99;opacity:0;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 305 .tgl-menus-air.sta-dispo{position:static;z-index: 500;} 306 .tgl-menus-air.sta-dispo.sta-openMenu{z-index: 999;} 307 .tgl-menus-air.sta-hide-book .sta-menus-air_nav-action{display:none} 308 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-tels{display:inline-block} 309 .tgl-menus-air .sta-menus-air_nav-links.fn-open .sta-menus-air_links-element.sta-child > .sta-menus-air_links-element-wrapper .sta-menus-air_links-element-text:before{content:'\e000';font:14px 'Icons';position:absolute;top:50%;right:0;margin-top:-5px} 310 .tgl-menus-air.sta-book-aside .fn-show-book {display:none}; 311 .tgl-menus-air.sta-burguer-right .sta-menus-air_nav-logo{right:0;margin-right:0}; 312 .tgl-menus-air.sta-show-links:not(.sta-logo-center) .sta-menus-air_nav-logo{left:0;margin-left:0;} 313 @media(min-width:1280px){ 314 .tgl-menus-air.sta-dispo{position:relative} 315 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_nav .sta-menus-air_nav-wrapper{text-align:center} 316 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_links-element.fn-logo .sta-menus-air_links-element-wrapper{padding-left:15px;padding-right:15px;z-index:3} 317 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_links-element .sta-menus-air_links-element-logo{display:inline-block;width:150px;height:85px;background-position:50% 50%;background-size:contain;background-repeat:no-repeat} 318 .tgl-menus-air .sta-menus-air_links-element.sta-child .sta-menus-air_links-element-wrapper > .sta-menus-air_links-element-text:before, 319 .tgl-menus-air.sta-fixed.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element.sta-child .sta-menus-air_links-element-wrapper > .sta-menus-air_links-element-text:before{content:none} 320 .tgl-menus-air .sta-menus-air_nav-links.fn-open .sta-menus-air_links-element.sta-child > .sta-menus-air_links-element-wrapper .sta-menus-air_links-element-text:before{content:none} 321 } 322 @media(min-width:1280px) and (min-width:1680px){ 323 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_links-element.fn-logo .sta-menus-air_links-element-wrapper{padding-left:50px;padding-right:50px} 324 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_links-element .sta-menus-air_links-element-logo{height:110px} 325 } 326 @media(min-width:801px){ 327 .tgl-menus-air.sta-book-aside.sta-book-fixed.fn-show-book .sta-menus-air_nav-action-aside{pointer-events:auto;opacity:1} 328 .tgl-menus-air.sta-book-aside.sta-book-fixed .sta-menus-air_nav-action-aside{opacity:0;pointer-events:none} 329 .tgl-menus-air.sta-book-aside.sta-book-fixed.sta-motorRedirect .sta-menus-air_nav-action-aside{opacity:1;pointer-events:auto} 330 .tgl-menus-air.sta-book-aside.sta-book-fixed .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn{display:none} 331 .tgl-menus-air.sta-book-aside.sta-book-fixed.sta-motorRedirect .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn{display:block} 332 .tgl-menus-air.sta-book-aside.sta-book-fixed.sta-motorRedirect .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn.sta-scroll-book{display:none} 333 .tgl-menus-air.sta-book-aside.sta-book-fixed .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn.sta-scroll-book{display:block}
334 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action{display:none!important} 335 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action-aside{display:block;position:fixed;bottom:150px;right:0;width:95px;height:260px;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 336 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn{display:block;text-align:center;font-size:0;width:260px;height:95px;background-color:#C2A472;padding-bottom:15px;cursor:pointer;-webkit-transform:rotate(-90deg) translateY(-69%) translateX(-33%) translateZ(0);-moz-transform:rotate(-90deg) translateY(-69%) translateX(-33%) translateZ(0);-ms-transform:rotate(-90deg) translateY(-69%) translateX(-33%) translateZ(0);-o-transform:rotate(-90deg) translateY(-69%) translateX(-33%) translateZ(0);transform:rotate(-90deg) translateY(-69%) translateX(-33%) translateZ(0);-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 337 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn.sta-scroll-book{display:none} 338 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:before{content:'';display:inline-block;vertical-align:middle;height:100%;width:0;opacity:0} 339 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn .sta-menus-air_action-aside-btn-text{display:inline-block;vertical-align:middle;font:700 26px/1 Catamaran,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#fff;-webkit-transition: all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition: all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition: all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition: all cubic-bezier(.785,.135,.15,.86) .7s;transition: all cubic-bezier(.785,.135,.15,.86) .7s} 340 } 341 @media(min-width:1024px){ 342 .tgl-globalAlertas-air[alertas="1"] ~ .tgl-menus-air.sta-openMenu .sta-menus-air_nav, 343 .tgl-globalAlertas-air[alertas="2"] ~ .tgl-menus-air.sta-openMenu .sta-menus-air_nav{position:fixed} 344 .tgl-globalAlertas-air[alertas="1"] ~ .tgl-menus-air.sta-openMenu.sta-dispo .sta-menus-air_nav, 345 .tgl-globalAlertas-air[alertas="2"] ~ .tgl-menus-air.sta-openMenu.sta-dispo .sta-menus-air_nav{position:relative} 346 .tgl-menus-air{z-index:202} 347 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:focus, 348 .tgl-menus-air.sta-book-aside .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:hover{background-color:#474242} 349 .tgl-menus-air.sta-book-aside.sta-reservaGrey .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:focus, 350 .tgl-menus-air.sta-book-aside.sta-reservaGrey .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:hover{background-color:#d2d2d2} 351 .tgl-menus-air.sta-book-aside.sta-reservaGrey .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:focus .sta-menus-air_action-aside-btn-text, 352 .tgl-menus-air.sta-book-aside.sta-reservaGrey .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:hover .sta-menus-air_action-aside-btn-text{color:#000} 353 .tgl-menus-air.sta-book-aside.sta-textReservaGC .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:focus .sta-menus-air_action-aside-btn-text, 354 .tgl-menus-air.sta-book-aside.sta-textReservaGC .sta-menus-air_nav-action-aside .sta-menus-air_nav-action-aside-btn:hover .sta-menus-air_action-aside-btn-text{color:#C2A472} 355 .tgl-menus-air.sta-logo-center.sta-openMenu .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover, .tgl-menus-air.sta-logo-center.sta-openMenu .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:before{left: 20px;} 356 } 357 @media(min-width:1280px){ 358 .tgl-menus-air.sta-logo-center:not(.sta-show-links).sta-menu-white .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-simple{display:none} 359 .tgl-menus-air.sta-logo-center:not(.sta-show-links).sta-menu-white .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-white{display:block} 360 .tgl-menus-air.sta-logo-center:not(.sta-show-links) .sta-menus-air_nav-logo{display:block;padding:10px;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%)} 361 .tgl-menus-air.sta-logo-center:not(.sta-show-links) .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-simple{display:block} 362 .tgl-menus-air.sta-logo-center:not(.sta-show-links) .sta-menus-air_nav .sta-menus-air_nav-wrapper{text-align:left} 363 .tgl-menus-air.sta-logo-center:not(.sta-show-links) .sta-menus-air_nav-action{position:absolute;top:0;right:0;left:auto} 364 .tgl-menus-air.sta-logo-center:not(.sta-show-links):not(.sta-book-aside) .sta-menus-air_nav-action{position:relative} 365 .tgl-menus-air.sta-logo-center:not(.sta-show-links).sta-burguer-right .sta-menus-air_nav .sta-menus-air_nav-wrapper{text-align:right} 366 .tgl-menus-air.sta-logo-center:not(.sta-show-links).sta-logoOff_top .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-white{display:none} 367 } 368 /* @media(min-width:1280px) and (min-width:1680px){ 369 .tgl-menus-air.sta-logo-center:not(.sta-show-links) .sta-menus-air_nav-btns{padding-left:40px} 370 } */ 371 @media(min-width:1280px){ 372 .tgl-menus-air.sta-logo-off:not(.sta-show-links):not(.sta-book-fixed).fn-show-logo .sta-menus-air_nav-logo{display:block;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%)} 373 .tgl-menus-air.sta-logo-off:not(.sta-show-links):not(.sta-book-fixed).fn-show-logo .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-simple{display:block} 374 .tgl-menus-air.sta-logo-off:not(.sta-show-links):not(.sta-book-fixed) .sta-menus-air_nav .sta-menus-air_nav-wrapper{text-align:left} 375 .tgl-menus-air.sta-logo-off:not(.sta-show-links):not(.sta-book-fixed) .sta-menus-air_nav-action{position:absolute;top:0;right:0;left:auto} 376 } 377 @media(min-width:1280px) and (min-width:1680px){ 378 .tgl-menus-air.sta-logo-off:not(.sta-show-links):not(.sta-book-fixed) .sta-menus-air_nav-btns{padding-left:40px} 379 } 380 @media(min-width:1280px){ 381 .tgl-menus-air.sta-logo-off .sta-menus-air_nav-logo{display:none} 382 } 383 @media(min-width:1280px){ 384 /* .tgl-menus-air.sta-book-fixed.sta-motorRedirect.fn-show-book .sta-menus-air_nav-action-btn.sta-scroll-book{display:none} */ 385 .tgl-menus-air.sta-book-fixed.sta-motorScroll.fn-show-book .sta-menus-air_nav-action-btn.sta-scroll-book{display:inline-block} 386 /* .tgl-menus-air.sta-book-fixed.fn-show-book .sta-menus-air_nav-action-btn.sta-scroll-book{display:inline-block} */ 387 /* .tgl-menus-air.sta-book-fixed.sta-motorScroll .sta-menus-air_nav-action-btn.sta-scroll-book, */ 388 /* .tgl-menus-air.sta-book-fixed .sta-menus-air_nav-action-btn{display:none} */ 389 .tgl-menus-air.sta-logo-center.sta-burguer-right .sta-menus-air_nav-morebtns, 390 .tgl-menus-air.sta-book-fixed:not(.sta-logo-between_links):not(.fn-show-book) .sta-menus-air_nav-morebtns{/* padding-right:20px */} 391 .tgl-menus-air.sta-book-fixed.sta-motorScroll.fn-show-book .sta-menus-air_nav-action-btn.sta-scroll-book{display: grid;transition:all cubic-bezier(.785,.135,.15,.86) .1s;} 392 .tgl-menus-air.sta-book-fixed.sta-motorScroll .sta-menus-air_nav-action-btn.sta-scroll-book {display: inline-block;transition:all cubic-bezier(.785,.135,.15,.86) .1s;} 393 } 394 @media(min-width:1280px){ 395 .tgl-menus-air.sta-logo-center:not(.sta-show-links).fn-show-book.sta-logo-center .sta-menus-air_nav-logo{display:block;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%)} 396 } 397 @media(min-width:1680px){ 398 .tgl-menus-air.sta-logo-center.sta-burguer-right .sta-menus-air_nav-morebtns, 399 .tgl-menus-air.sta-book-fixed:not(.sta-logo-between_links):not(.fn-show-book) .sta-menus-air_nav-morebtns{/* padding-right:25px */} 400 } 401 @media(max-width:1679px){ 402 .tgl-menus-air .sta-menus-air_links-element.fn-logo{display:none} 403 } 404 @media(min-width:1280px){ 405 .tgl-menus-air.sta-show-links .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-simple{display:block} 406 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu){ 407 position:static;width:auto;height:auto;overflow:visible;opacity:1;pointer-events:auto;display:inline-block;vertical-align:middle;background-color:transparent} 408 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-photo, 409 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_nav-links-close{display:none} 410 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper{padding:0 15px;width:auto;font-size:0} 411 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element{display:inline-block;vertical-align:middle;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 412 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element{vertical-align:top} 413 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element:not(.fn-logo){margin-top:35px} 414 .tgl-menus-air.sta-logo-between_links.sta-show-links.sta-book-aside.sta-logo-off .sta-menus-air_nav-morebtns{vertical-align:top;margin-top:12px} 415 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper{padding:12px 10px 10px;border:none} 416 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper:after,.tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper:before{content:none} 417 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper>.sta-menus-air_links-element-text{position:relative;font:700 15px/1 Catamaran,sans-serif} 418 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper>.sta-menus-air_links-element-text:after{content:'';position:absolute;top:calc(100% + 5px);left:50%;width:0;height:1px;background-color:#c2a472;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%);-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 419 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element:focus>.sta-menus-air_links-element-wrapper>.sta-menus-air_links-element-text,.tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element:hover>.sta-menus-air_links-element-wrapper>.sta-menus-air_links-element-text{color:#c2a472;transition:color .5s} 420 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper:focus>.sta-menus-air_links-element-text:after,.tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper:hover>.sta-menus-air_links-element-text:after{width:100%} 421 } 422 @media(min-width:1280px) and (min-width:1680px){ 423 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper{padding:15px 15px 13px} 424 .tgl-menus-air.sta-show-links .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element>.sta-menus-air_links-element-wrapper>.sta-menus-air_links-element-text{font-size:16px} 425 } 426 @media(min-width:1280px){
427 .tgl-menus-air.sta-show-links .sta-menus-air_nav-btns{display:none} 428 } 429 @media(min-width:1280px){ 430 .tgl-menus-air.sta-menu-white.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:focus .sta-menus-air_links-element-text,.tgl-menus-air.sta-menu-white.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:hover .sta-menus-air_links-element-text{color:#fff} 431 .tgl-menus-air.sta-menu-white.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:focus .sta-menus-air_links-element-text:after,.tgl-menus-air.sta-menu-white.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:hover .sta-menus-air_links-element-text:after{width:100%!important} 432 .tgl-menus-air.sta-menu-white.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-text{color:#fff;text-shadow:2px 2px 2px rgba(0,0,0,.3)} 433 .tgl-menus-air.sta-menu-white.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-text:after{background-color:#fff!important} 434 .tgl-menus-air.sta-menu-white .sta-menus-air_nav{top:40px;background-color:transparent} 435 .tgl-menus-air.sta-menu-white .sta-menus-air_nav .sta-menus-air_nav-wrapper{border-bottom:none} 436 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-logo{padding-top:0} 437 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-simple{display:none} 438 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-white{display:block;width:170px;height:auto;filter:drop-shadow(2px 2px 2px rgba(0, 0, 0, .3))} 439 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element.sta-secondary:after{background-color:#fff} 440 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-text{color:#fff;text-shadow:2px 2px 2px rgba(0,0,0,.3)} 441 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element:focus .sta-menus-air_btns-element-icon,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element:focus .sta-menus-air_btns-element-text,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-icon,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-text{color:#fff} 442 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element:focus .sta-menus-air_btns-element-icon:after,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-icon:after{color:#fff} 443 .tgl-menus-air.sta-menu-white .sta-menus-air_languages .sta-menus-air_languages-wrapper{background-color:rgba(0,0,0,.6)} 444 .tgl-menus-air.sta-menu-white .sta-menus-air_languages-element .sta-menus-air_element-btn{color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.7)} 445 .tgl-menus-air.sta-menu-white .sta-menus-air_languages-element .sta-menus-air_element-btn:before{color:#fff} 446 .tgl-menus-air.sta-menu-white .sta-menus-air_languages-element .sta-menus-air_element-btn.sta-active{color:#fff} 447 .tgl-menus-air.sta-menu-white .sta-menus-air_languages-element .sta-menus-air_element-btn:focus, 448 .tgl-menus-air.sta-menu-white .sta-menus-air_languages-element .sta-menus-air_element-btn:hover{color:#fff} 449 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper:before{color:#fff} 450 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element.sta-lang.sta-lang-planet .sta-menus-air_morebtns-element-wrapper:after{color:#fff} 451 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:before{background-color:#fff} 452 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover{top:calc(100% + 10px)} 453 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-wrapper{border-color:#fff;box-shadow:2px 2px 2px rgba(0,0,0,.3)} 454 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-text{color:#fff} 455 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-icon:before{color:#fff} 456 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:hover.sta-lang .sta-menus-air_morebtns-element-wrapper:after, 457 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:focus.sta-lang .sta-menus-air_morebtns-element-wrapper:after{color:#C2A472} 458 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:focus.sta-lang .sta-menus-air_morebtns-element-wrapper:before,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:hover.sta-lang .sta-menus-air_morebtns-element-wrapper:before{color:#fff} 459 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:focus .sta-menus-air_morebtns-element-wrapper,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:hover .
459sta-menus-air_morebtns-element-wrapper{background-color:#fff;border-color:transparent} 460 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:focus .sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-text,.tgl-menus-air.sta-menu-whi.tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_nav-links-closete .sta-menus-air_nav-morebtns-element:hover .sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-text{color:#c2a472} 461 .tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:focus .sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-icon:before,.tgl-menus-air.sta-menu-white .sta-menus-air_nav-morebtns-element:hover .sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-icon:before{color:#c2a472} 462 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-text{color: #c2a472} 463 } 464 .tgl-menus-air .sta-menus-air_nav{position:fixed;bottom:0;left:0;width:100%;background-color:#fff;-webkit-transition:background cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:background cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:background cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:background cubic-bezier(.785,.135,.15,.86) .7s;transition:background cubic-bezier(.785,.135,.15,.86) .7s} 465 .tgl-menus-air.sta-dispo .sta-menus-air_nav{position:relative;z-index: 60;} 466 .tgl-menus-air.sta-dispo.sta-openMenu .sta-menus-air_nav{z-index: 999;} 467 .tgl-menus-air .sta-menus-air_nav .sta-menus-air_nav-wrapper{position:relative;height:70px;border-top:1px solid #cccbcc;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s;border-bottom: 1px solid #cccbcc;} 468 .tgl-menus-air.sta-dispo.sta-openMenu .sta-menus-air_nav .sta-menus-air_nav-wrapper{position:fixed;top:0;left:0;right:0;z-index:70} 469 470 @media(min-width:768px){ 471 .tgl-menus-air .sta-menus-air_nav .sta-menus-air_nav-wrapper{height:80px} 472 } 473 @media(min-width:1024px){ 474 .tgl-menus-air .sta-menus-air_nav{bottom:auto;top:0;position:absolute} 475 .tgl-menus-air.sta-fixed .sta-menus-air_nav{position:fixed} 476 .tgl-menus-air.sta-dispo.sta-fixed .sta-menus-air_nav{position:relative} 477 .tgl-menus-air .sta-menus-air_nav .sta-menus-air_nav-wrapper{border-top:none;text-align:right;font-size:0} 478 } 479 @media(min-width:1680px){ 480 .tgl-menus-air .sta-menus-air_nav .sta-menus-air_nav-wrapper{height:90px} 481 } 482 .tgl-menus-air .sta-menus-air_nav-action-aside{display:none} 483 .tgl-menus-air .sta-menus-air_nav-logo{display:none;color:#C2A472}/* color for javaScript */ 484 .tgl-menus-air.sta-dispo .sta-menus-air_nav-logo{height:100%;display:flex;justify-content:center;align-items:center} 485 .tgl-menus-air.sta-dispo .sta-menus-air_nav-logo a{display:flex;height:100%; align-items: center} 486 .tgl-menus-air.sta-dispo .sta-menus-air_nav-logo .sta-menus-air_logo-img{display:none;height:57.5%;width:auto;} 487 .tgl-menus-air.sta-dispo .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-simple{display:block} 488 .tgl-menus-air.fn-show-book .sta-menus-air_nav-logo {left: 0;margin-left: 0;} 489 @media(min-width:1024px){ 490 .tgl-menus-air .sta-menus-air_nav-logo{display:block;position:absolute;left:0;margin-left:0;top:0;height:100%;padding:10px 0 10px 40px;transition: all cubic-bezier(.785,.135,.15,.86) .7s;} 491 .tgl-menus-air .sta-menus-air_nav-logo a{display:block;height:100%} 492 .tgl-menus-air .sta-menus-air_nav-logo .sta-menus-air_logo-img{display:none;height:100%;width:auto} 493 .tgl-menus-air .sta-menus-air_nav-logo .sta-menus-air_logo-img.sta-simple{display:block} 494 .tgl-menus-air.sta-dispo .sta-menus-air_nav-logo .sta-menus-air_logo-img{height:100%;margin-top:0} 495 .tgl-menus-air.sta-show-links .sta-menus-air_nav-logo {left: 0;margin-left: 0;transition: all cubic-bezier(.785,.135,.15,.86) .7s;} 496 } 497 @media(min-width:1680px){ 498 .tgl-menus-air .sta-menus-air_nav-logo{padding:20px 0 20px 45px} 499 } 500 .tgl-menus-air .sta-menus-air_nav-links{position:fixed;top:0;left:0;width:100%;height:calc(100% - 70px);background-color:#f3f3f3;overflow:hidden;overflow-y:auto;display:none;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 501 .tgl-menus-air.sta-menuDesplegable .sta-menus-air_nav-links{-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .5s, z-index 0s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .5s, z-index 0s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .5s, z-index 0s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .5s, z-index 0s;transition:all cubic-bezier(.785,.135,.15,.86) .5s, z-index 0s} 502 .tgl-menus-air.sta-dispo .sta-menus-air_nav-links{z-index:200} 503 .tgl-menus-air.sta-dispo .sta-menus-air_nav-links{height:100%} 504 .tgl-menus-air .sta-menus-air_nav-links.fn-open{display:block} 505 .tgl-menus-air .sta-menus-air_nav-links.sta-submenu{z-index:2} 506 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_nav-links-close{display:none} 507 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-wrapper{padding:30px 50px 55px} 508 .tgl-menus-air.sta-dispo .sta-menus-air_nav-links .sta-menus-air_links-wrapper{padding-top:75px} 509 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-title{font:700 12px/1 Catamaran,sans-serif;text-transform:uppercase;
509color:#7b7777;letter-spacing:.05em;padding-bottom:10px;opacity:1!important} 510 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_nav-links .sta-menus-air_links-title{display:none} 511 @media(max-width:374px){ 512 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-wrapper{padding:15px 30px 55px} 513 } 514 @media(min-width:768px){ 515 .tgl-menus-air .sta-menus-air_nav-links{height:calc(100% - 80px)} 516 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-wrapper{padding:40px 90px 75px} 517 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-title{padding-top:30px} 518 } 519 @media(min-width:1024px){ 520 .tgl-menus-air .sta-menus-air_nav-links{bottom:0;top:auto} 521 /* .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_nav-links-close{display:block;position:absolute;top:22px;right:22px} */ 522 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_nav-links-close{display:block;position:fixed;top:102px;right:39px} 523 .tgl-menus-air.sta-dispo .sta-menus-air_nav-links .sta-menus-air_nav-links-close{top:20px} 524 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-wrapper{padding:60px 65px 75px;max-width:720px;margin:0 auto;text-align:left} 525 } 526 @media(min-width:1280px){ 527 .tgl-menus-air .sta-menus-air_nav-links{font-size:0;text-align:left} 528 .tgl-menus-air .sta-menus-air_nav-links:before{content:'';display:inline-block;vertical-align:middle;height:100%;width:0;opacity:0} 529 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-wrapper{display:inline-block;vertical-align:middle;width:50%;max-width:inherit;padding:60px 65px 75px 85px} 530 } 531 @media(min-width:1366px){ 532 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-wrapper{padding:60px 115px 75px} 533 } 534 @media(min-width:1680px){ 535 .tgl-menus-air .sta-menus-air_nav-links{height:calc(100% - 90px)} 536 } 537 .tgl-menus-air .sta-menus-air_links-btn{margin-top:20px;opacity:1!important} 538 @media(min-width:768px){ 539 .tgl-menus-air .sta-menus-air_links-btn{margin-top:40px} 540 } 541 @media(min-width:1280px){ 542 .tgl-menus-air .sta-menus-air_links-btn{margin-left:-25px} 543 .tgl-menus-air.sta-dispo.sta-openMenu .sta-menus-air_nav .sta-menus-air_nav-wrapper{position:relative;top:auto;left:auto;right:auto;z-index:auto} 544 } 545 .tgl-menus-air .sta-menus-air_links-element.sta-idiomasMenu .sta-menus-air_links-element-wrapper{padding:13px 0 11px 30px;position:relative} 546 .tgl-menus-air .sta-menus-air_links-element.sta-idiomasMenu .sta-menus-air_links-element-wrapper:after{content:'\e004';position:absolute;left:0;top:50%;font:24px/1px Icons} 547 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper{display:block;padding:20px 0 4px;border-bottom:1px solid #cccbcc} 548 .tgl-menus-air .sta-menus-air_links-element.sta-child .sta-menus-air_links-element-wrapper{position:relative} 549 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper[role="button"]{cursor:pointer} 550 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-text{font:700 15px/1.6666666667 Catamaran,sans-serif;letter-spacing:.03em;color:#474242;text-transform:uppercase;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 551 .tgl-menus-air .sta-menus-air_nav-links .sta-menus-air_links-title:empty{display:none} 552 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-subtext{font:400 12px/1 Catamaran,sans-serif;color:#7b7777;letter-spacing:.02em;padding:2px 0 4px} 553 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-subtext:empty{display:none} 554 @media(max-width:374px){ 555 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper{padding:15px 0 2px} 556 } 557 @media(min-width:500px){ 558 .tgl-menus-air .sta-menus-air_links-element.sta-idiomasMenu{display: none;} 559 } 560 @media(min-width:768px){ 561 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper{padding:30px 0 5px} 562 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-text{display:inline-block;vertical-align:middle;font-size:20px;letter-spacing:.1em} 563 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-subtext{display:inline-block;vertical-align:middle;font-size:14px;letter-spacing:.04em;padding:5px 0 0 10px} 564 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-subtext:before{content:'/';display:inline-block;vertical-align:middle;margin-right:10px} 565 } 566 @media(min-width:1024px){ 567 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper{padding:20px 0 4px} 568 } 569 @media(min-width:1280px){ 570 .tgl-menus-air .sta-menus-air_links-element{-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 571 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element{transition:none} 572 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper{position:relative;padding:24px 0 6px;cursor:pointer} 573 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:before{content:'\e91f';position:absolute;right:15px;bottom:16px;font-family:icomoon;
573font-size:7px;color:#c2a472;opacity:0;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 574 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:after{content:'';position:absolute;left:0;bottom:-1px;width:0;height:2px;background-color:#c2a472;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 575 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:focus:before,.tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:hover:before{right:10px;opacity:1} 576 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:focus:after,.tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:hover:after{width:30px} 577 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:focus .sta-menus-air_links-element-text,.tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:hover .sta-menus-air_links-element-text{color:#c2a472} 578 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-text{font-size:18px} 579 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-subtext{font-size:16px} 580 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-logo{display:none} 581 } 582 @media(min-width:1800px){ 583 .tgl-menus-air .sta-menus-air_links-element .sta-menus-air_links-element-text{font-size:20px} 584 } 585 .tgl-menus-air .sta-menus-air_links-photo{display:none} 586 @media(min-width:1280px){ 587 .tgl-menus-air .sta-menus-air_links-photo{display:inline-block;vertical-align:middle;height:100%;width:50%;padding:80px 80px 80px 0} 588 .tgl-menus-air .sta-menus-air_links-photo .sta-menus-air_photo-img{display:block;width:100%;height:100%;background-position:50% 50%;background-size:cover;background-repeat:no-repeat;background-color:#fff;border-radius:4px} 589 } 590 @media(min-width:1680px){ 591 .tgl-menus-air .sta-menus-air_links-photo{padding:90px} 592 } 593 .tgl-menus-air .sta-menus-air_nav-btns{position:absolute;left:0;top:0;height:100%;font-size:0;padding:0 8px} 594 .noscroll .tgl-menus-air.sta-dispo .sta-menus-air_nav-links.fn-open + .sta-menus-air_nav-btns{z-index:200} 595 .tgl-menus-air .sta-menus-air_nav-btns:before{content:'';display:inline-block;vertical-align:middle;width:0;height:100%;opacity:0;pointer-events:none} 596 @media(min-width:540px){ 597 .tgl-menus-air .sta-menus-air_nav-btns{padding:0 15px} 598 } 599 @media(min-width:1024px){ 600 .tgl-menus-air .sta-menus-air_nav-btns{position:relative;display:inline-block;vertical-align:middle;padding:0} 601 } 602 @media(min-width:1280px){ 603 .tgl-menus-air .sta-menus-air_nav-btns:focus>:not(:hover),.tgl-menus-air .sta-menus-air_nav-btns:hover>:not(:hover){opacity:.7} 604 } 605 .tgl-menus-air .sta-menus-air_nav-btns-element{position:relative;display:inline-block;vertical-align:middle;padding:5px 9px;cursor:pointer} 606 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-text{position:absolute;top:100%;left:0;width:100%;font:700 9px/1 Catamaran,sans-serif;text-transform:uppercase;text-align:center;overflow:hidden;text-overflow:ellipsis} 607 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon{font-size:31px} 608 @media(max-width:374px){ 609 .tgl-menus-air .sta-menus-air_nav-btns-element{padding:2px 8px} 610 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon{font-size:25px} 611 } 612 @media(max-width:1023px){ 613 .tgl-menus-air .sta-menus-air_nav-btns-element.fn-close .sta-menus-air_btns-element-icon:before{content:'\e916'} 614 } 615 @media(min-width:540px){ 616 .tgl-menus-air .sta-menus-air_nav-btns-element{padding:5px 15px} 617 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-text{font-size:11px} 618 } 619 @media(min-width:1024px){ 620 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-text{transition:all cubic-bezier(.785,.135,.15,.86) .1s} 621 .tgl-menus-air .sta-menus-air_nav-btns-element{padding:10px 25px;font-size:0} 622 /* .tgl-menus-air .sta-menus-air_nav-btns-element.fn-close .icon-menu:before{content: "\e916";} */ 623 .tgl-menus-air .sta-menus-air_nav-btns-element.fn-close{display:none} 624 .tgl-menus-air .sta-menus-air_nav-btns-element.sta-secondary:after{content:'';position:absolute;
624top:calc(50% - 10px);right:0;width:1px;height:20px;background-color:#474242} 625 .tgl-menus-air .sta-menus-air_nav-btns-element.sta-secondary .sta-menus-air_btns-element-icon{display:none} 626 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-text{position:relative;top:0;display:inline-block;vertical-align:middle;font:600 24px/1 Catamaran,sans-serif;letter-spacing:.06em;width:auto;padding-top:3px;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 627 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon{display:inline-block;vertical-align:middle;padding-left:20px;} 628 } 629 @media(min-width:1280px){ 630 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-btns-element:focus .sta-menus-air_btns-element-icon:after, 631 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-icon:after, 632 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-btns-element:focus .sta-menus-air_btns-element-icon:before, 633 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-icon:before{color: #c2a472} 634 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon:after{transition:all cubic-bezier(.785,.135,.15,.86) .1s} 635 .tgl-menus-air .sta-menus-air_nav-btns-element{transition:all cubic-bezier(.785,.135,.15,.86) .7s} 636 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon{position:relative;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 637 .tgl-menus-air .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon:after{content:'\e91f';position:absolute;left:0;top:calc(50% - 5px);font-size:7px;color:#c2a472;opacity:0;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 638 .tgl-menus-air .sta-menus-air_nav-btns-element:focus .sta-menus-air_btns-element-text, 639 .tgl-menus-air .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-text{color:#c2a472} 640 .tgl-menus-air .sta-menus-air_nav-btns-element:focus .sta-menus-air_btns-element-icon:after, 641 .tgl-menus-air .sta-menus-air_nav-btns-element:hover .sta-menus-air_btns-element-icon:after{opacity:1;left:5px} 642 } 643 .tgl-menus-air .sta-menus-air_nav-morebtns{position:absolute;right:0;top:0;height:100%;font-size:0;padding:0 8px} 644 .tgl-menus-air .sta-menus-air_nav-morebtns:before{content:'';display:inline-block;vertical-align:middle;width:0;height:100%;opacity:0;pointer-events:none} 645 @media(min-width:540px){ 646 .tgl-menus-air .sta-menus-air_nav-morebtns{padding:0 15px} 647 } 648 @media(min-width:1024px){ 649 .tgl-menus-air .sta-menus-air_nav-morebtns{position:relative;display:inline-block;vertical-align:middle;padding:0} 650 } 651 .tgl-menus-air .sta-menus-air_nav-morebtns-element{position:relative;vertical-align:middle;padding:5px 16px;display:none;cursor:pointer} 652 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang{display:inline-block;padding:0} 653 /* .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper{display:none} */ 654 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper:before{content:'\e920';position:absolute;bottom:calc(100% + 6px);left:calc(50% - 2px);font-family:icomoon;font-size:6px;color:#474242;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 655 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper:before{display: none;} 656 .tgl-menus-air.sta-dispo .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper:before{content:'\e91e';top:calc(100% + 6px);bottom:auto} 657 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang.sta-notIdiomas .sta-menus-air_morebtns-element-wrapper:before{content:none} 658 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang.sta-lang-planet .sta-menus-air_morebtns-element-wrapper{border:none} 659 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang.sta-lang-planet .sta-menus-air_morebtns-element-wrapper:after{content:'\e929';position:absolute;top:0;left:0;font-family:'icomoon';font-size:33px;color:#474242;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 660 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang.sta-lang-planet .sta-menus-air_morebtns-element-text{display:none} 661 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-wrapper{position:relative;width:33px;
661height:33px;border:2px solid #474242;border-radius:50%;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 662 .noscroll .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang input:checked + .sta-menus-air_morebtns-element-wrapper{z-index:187} 663 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-text{position:absolute;top:50%;left:0;width:100%;text-align:center;font:700 13px/1px Catamaran,sans-serif;text-transform:uppercase;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 664 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-icon{position:absolute;top:50%;left:0;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);width:100%;text-align:center} 665 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-icon:before{display:inline-block;font-size:15px;color:#474242;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 666 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover{position:absolute;bottom:calc(100% + 30px);right:0;width:180px;text-align:center;padding:8px 0 5px;border-radius:4px;background-color:#fff;box-shadow:0 0 4px rgba(0,0,0,.4);font:600 18px/1 Catamaran,sans-serif;color:#474242;letter-spacing:.05em;visibility:hidden;opacity:0;-webkit-transform:scale(.6);-moz-transform:scale(.6);-ms-transform:scale(.6);-o-transform:scale(.6);transform:scale(.6);transform-origin:center top;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 667 .tgl-menus-air.sta-dispo .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover{top:calc(100% + 30px);right:0;bottom:auto;z-index:61} 668 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:before{content:'\e91e';position:absolute;top:calc(100% - 1px);right:21px;font-family:icomoon;font-size:7px;color:#fff;text-shadow:0 3px 4px rgba(0,0,0,.4);-webkit-transform:none;-moz-transform:none;-ms-transform:none;-o-transform:none;transform:none} 669 .tgl-menus-air.sta-dispo .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:before{bottom:calc(100% - 1px);top:auto;content:'\e920';text-shadow:0 -3px 4px rgba(0,0,0,.4)} 670 @media(min-width:500px){ 671 .tgl-menus-air.sta-dispo .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover{left:calc(50% - 80px);right:auto} 672 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover{left:calc(50% - 90px);right:auto} 673 .tgl-menus-air.sta-dispo .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:before, 674 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:before{left:calc(50% - 3px);right:auto} 675 .tgl-menus-air .sta-menus-air_nav-morebtns-element{display:inline-block} 676 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang{padding:5px 16px} 677 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper{display:block} 678 .tgl-menus-air.sta-dispo .sta-menus-air_nav-morebtns-element.sta-lang input:checked ~ .sta-menus-air_morebtns-element-wrapper{display:none} 679 } 680 .tgl-menus-air .sta-menus-air_nav-morebtns .sta-menus-air_nav-morebtns-element.sta-tels:only-child .sta-menus-air_morebtns-element-hover{left:auto;right:0} 681 .tgl-menus-air .sta-menus-air_nav-morebtns .sta-menus-air_nav-morebtns-element.sta-tels:only-child .sta-menus-air_morebtns-element-hover:before{left:auto;right:35px} 682 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover a{display:block;margin-top:5px;color:#474242;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 683 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover a:first-child{margin-top:0} 684 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover a.sta-whatsapp:before{content:'\e075';font:14px Icons;margin-right:5px;vertical-align:middle} 685 @media(min-width:768px) and (min-width:1280px){ 686 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover a:hover, 687 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover a:focus{color:#C2A472} 688 } 689 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:focus, 690 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:hover, 691 .tgl-menus-air .sta-menus-air_nav-morebtns-element:focus .sta-menus-air_morebtns-element-hover,
692 .tgl-menus-air .sta-menus-air_nav-morebtns-element:hover .sta-menus-air_morebtns-element-hover{visibility:visible;opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1)} 693 @media(min-width:501px) and (max-width:1023px){ 694 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover{top:auto;bottom:calc(100% + 14px);left:calc(50% - 80px);width:160px;font-size:16px} 695 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:before{bottom:auto;top:calc(100% - 1px)} 696 .tgl-menus-air .sta-menus-air_nav-morebtns .sta-menus-air_nav-morebtns-element.sta-tels:only-child .sta-menus-air_morebtns-element-hover:before{right:23px} 697 } 698 @media(min-width:1024px){ 699 .tgl-menus-air .sta-menus-air_nav-action{padding-right: 28px;} 700 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover{top:calc(100% + 14px);bottom:auto} 701 .tgl-menus-air .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-hover:before{content:'\e920';bottom:calc(100% - 1px);top:auto;text-shadow:0 -3px 4px rgba(0,0,0,.4)} 702 .tgl-menus-air .sta-menus-air_nav-morebtns-element{padding:10px 25px} 703 .tgl-menus-air .sta-menus-air_nav-morebtns-element:before{content:'';position:absolute;top:calc(50% - 10px);left:0;width:1px;height:20px;background-color:#474242} 704 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper:before{content:'\e91e';top:calc(100% + 6px);bottom:auto} 705 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang .sta-menus-air_morebtns-element-wrapper:before{display: block;} 706 } 707 @media(min-width:1280px){ 708 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-morebtns-element:focus .sta-menus-air_morebtns-element-wrapper, 709 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-morebtns-element:hover .sta-menus-air_morebtns-element-wrapper{border-color: #c2a472;} 710 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-morebtns-element:hover .sta-menus-air_morebtns-element-icon, 711 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-morebtns-element:hover .sta-menus-air_morebtns-element-icon::before, 712 .tgl-menus-air .sta-menus-air_nav-morebtns-element:hover.sta-lang .sta-menus-air_morebtns-element-wrapper:after, 713 .tgl-menus-air .sta-menus-air_nav-morebtns-element:focus.sta-lang .sta-menus-air_morebtns-element-wrapper:after{color:#C2A472} 714 .tgl-menus-air .sta-menus-air_nav-morebtns-element:focus.sta-lang .sta-menus-air_morebtns-element-wrapper:before, 715 .tgl-menus-air .sta-menus-air_nav-morebtns-element:hover.sta-lang .sta-menus-air_morebtns-element-wrapper:before{top:calc(100% + 9px);color:#c2a472} 716 .tgl-menus-air .sta-menus-air_nav-morebtns-element:focus .sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-text,.tgl-menus-air .sta-menus-air_nav-morebtns-element:hover .sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-text{color:#c2a472} 717 } 718 @media(max-width:1279px){ 719 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang input:checked~.sta-menus-air_languages{display:block;pointer-events:auto} 720 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang input:checked~.sta-menus-air_morebtns-element-wrapper:before{display:none} 721 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang input:checked~.sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-text{font-size:0;-webkit-transition:none;-moz-transition:none;-ms-transition:none;-o-transition:none;transition:none} 722 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang input:checked~.sta-menus-air_morebtns-element-wrapper .sta-menus-air_morebtns-element-text:before{content:'\e916';display:inline-block;color:#474242;margin-top:-1px;font:20px/3px icomoon;} 723 .tgl-menus-air .sta-menus-air_languages{position:fixed;top:0;left:0;width:100%;height:calc(100% - 70px);font-size:0;text-align:center;background-color:#f3f3f3;display:none;pointer-events:none;overflow:hidden;overflow-y:auto} 724 .tgl-menus-air.sta-dispo .sta-menus-air_languages{z-index:200;height:100%} 725 .tgl-menus-air .sta-menus-air_languages:before{content:'';display:inline-block;vertical-align:middle;width:0;height:100%} 726 .tgl-menus-air .sta-menus-air_languages:after{content:'\e916';font:20px/29px icomoon;color:#474242;position:absolute;top:30px;right:30px;border:2px solid #474242;border-radius:50%;width:33px;text-align:center} 727 .tgl-menus-air .sta-menus-air_languages .sta-menus-air_languages-wrapper{display:inline-block;vertical-align:middle;width:240px;padding:35px 0} 728 .tgl-menus-air .sta-menus-air_languages .sta-menus-air_languages-title{font:700 12px/1 Catamaran,sans-serif;letter-spacing:.05em;
728color:#7b7777;text-transform:uppercase} 729 .tgl-menus-air .sta-menus-air_languages .sta-menus-air_languages-list{padding-top:30px} 730 .tgl-menus-air .sta-menus-air_languages-element{padding-bottom:20px} 731 .tgl-menus-air .sta-menus-air_languages-element:last-child{padding-bottom:0} 732 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn{display:block;font:700 16px/1 Catamaran,sans-serif;letter-spacing:.1em;color:#474242;text-transform:uppercase;border:2px solid #474242;border-radius:2px;padding:14px 0 11px} 733 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn.sta-active{background-color:#c2a472;border-color:transparent;color:#fff} 734 } 735 @media(max-width:1279px) and (min-width:768px){ 736 .tgl-menus-air .sta-menus-air_languages{height:calc(100% - 80px)} 737 } 738 @media(max-width:1279px) and (min-width:1024px){ 739 .tgl-menus-air .sta-menus-air_languages{bottom:0;top:auto} 740 } 741 @media(min-width:1280px){ 742 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang:hover .sta-menus-air_morebtns-element-wrapper:before{color: #c2a472;} 743 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-lang input:checked~.sta-menus-air_languages{opacity:1;pointer-events:auto} 744 .tgl-menus-air .sta-menus-air_languages{position:absolute;top:calc(100% + 14px);right:0;text-align:left;opacity:0;pointer-events:none;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 745 .tgl-menus-air.sta-dispo .sta-menus-air_nav-morebtns-element.sta-lang input:checked ~ .sta-menus-air_morebtns-element-wrapper{display:block} 746 .tgl-menus-air.sta-dispo .sta-menus-air_languages{z-index:61} 747 .tgl-menus-air .sta-menus-air_languages .sta-menus-air_languages-wrapper{padding:10px 10px;background-color:#fff;box-shadow:2px 2px 2px rgba(0,0,0,.3)} 748 .tgl-menus-air .sta-menus-air_languages .sta-menus-air_languages-title{display:none} 749 .tgl-menus-air .sta-menus-air_languages-element:last-child .sta-menus-air_element-btn{border-bottom:none} 750 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn{position:relative;display:block;font:400 13px/1 Catamaran,sans-serif;letter-spacing:.02em;padding:14px 0 10px;border-bottom:1px solid #cccbcc;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 751 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn:before{content:'\e91f';position:absolute;left:0;top:16px;font-family:icomoon;font-size:5px;color:#474242;opacity:0;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .7s} 752 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn.sta-active{font-weight:700;padding-left:8px} 753 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn.sta-active:before{opacity:1} 754 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn:focus,.tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn:hover{padding-left:8px} 755 .tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn:focus:before,.tgl-menus-air .sta-menus-air_languages-element .sta-menus-air_element-btn:hover:before{opacity:1} 756 } 757 @media(min-width:1280px) and (min-width:1680px){ 758 .tgl-menus-air .sta-menus-air_languages{top:calc(100% + 19px)} 759 } 760 .tgl-menus-air .sta-menus-air_nav-action{position:absolute;top:50%;left:50%;-webkit-transform:translateY(-50%) translateX(-50%);-moz-transform:translateY(-50%) translateX(-50%);-ms-transform:translateY(-50%) translateX(-50%);-o-transform:translateY(-50%) translateX(-50%);transform:translateY(-50%) translateX(-50%);padding-right: 28px;}
761 .tgl-menus-air.sta-dispo .sta-menus-air_nav-action{display:none} 762 @media(min-width:1024px){ 763 .tgl-menus-air .sta-menus-air_nav-action{position:relative;display:inline-block;vertical-align:middle;top:0;left:0;-webkit-transform:none;-moz-transform:none;-ms-transform:none;-o-transform:none;transform:none;height:100%; padding-right: 0;} 764 } 765 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-action-btn{background: #c2a472; color: #fff; border: 2px solid #c2a472;} 766 .tgl-menus-air .sta-menus-air_nav-action-btn{text-align:center;overflow:hidden;padding:13px 0 11px;width:170px;border:2px solid #474242;border-radius:2px;display:none;cursor:pointer;-webkit-transition:width cubic-bezier(.785,.135,.15,.86) .1s;-moz-transition:width cubic-bezier(.785,.135,.15,.86) .1s;-ms-transition:width cubic-bezier(.785,.135,.15,.86) .1s;-o-transition:width cubic-bezier(.785,.135,.15,.86) .1s;transition:width cubic-bezier(.785,.135,.15,.86) .1s} 767 .tgl-menus-air.sta-motorRedirect .sta-menus-air_nav-logo{left:0;margin-left: 0;transition:all cubic-bezier(.785,.135,.15,.86) .1s} 768 .tgl-menus-air.sta-motorRedirect .sta-menus-air_nav-action-btn.sta-btn-green, 769 .tgl-menus-air.sta-motorScroll .sta-menus-air_nav-action-btn.sta-scroll-book{display:block} 770 .tgl-menus-air .sta-menus-air_nav-action-btn.sta-btn-green{border-color:transparent;background-color:#c2a472} 771 .tgl-menus-air .sta-menus-air_nav-action-btn.sta-btn-green .sta-menus-air_action-btn-text{color:#fff} 772 .tgl-menus-air .sta-menus-air_nav-action-btn .sta-menus-air_action-btn-text{font:700 17px/1 Catamaran,sans-serif;letter-spacing:.1em;text-transform:uppercase;-webkit-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-moz-transition:all cubic-bezier(.785,.135,.15,.86) .7s;-ms-transition:all cubic-bezier(.785,.135,.15,.86) .2s;-o-transition:all cubic-bezier(.785,.135,.15,.86) .7s;transition:all cubic-bezier(.785,.135,.15,.86) .2s} 773 @media(max-width:374px){ 774 .tgl-menus-air .sta-menus-air_nav-action-btn{width:140px} 775 .tgl-menus-air .sta-menus-air_nav-action-btn .sta-menus-air_action-btn-text{letter-spacing:.05em} 776 } 777 @media(min-width:540px){ 778 .tgl-menus-air .sta-menus-air_nav-action-btn{width:240px} 779 } 780 @media(min-width:801px){ 781 .tgl-menus-air.sta-motorScroll:not(.fn-show-book):not(.sta-openMenu) .sta-menus-air_nav-action-btn.sta-scroll-book{width: 0;opacity: 0; border:0;padding:0;display: none;transition: all cubic-bezier(.785,.135,.15,.86) .1s;} 782 .tgl-menus-air.sta-motorScroll.fn-show-book .sta-menus-air_nav-action-btn.sta-scroll-book{width: 250px;opacity: 1;} 783 } 784 @media(min-width:1024px){ 785 .tgl-menus-air .sta-menus-air_nav-action-btn{font-size:0;width:250px;margin:14px 25px 14px 0} 786 .tgl-menus-air .sta-menus-air_nav-action-btn.sta-btn-green{height:100%;margin:0;border-radius:0} 787 .tgl-menus-air .sta-menus-air_nav-action-btn.sta-btn-green .sta-menus-air_action-btn-text{font-size:24px} 788 .tgl-menus-air .sta-menus-air_nav-action-btn:before{content:'';display:inline-block;vertical-align:middle;width:0;height:100%;opacity:0;pointer-events:none} 789 .tgl-menus-air .sta-menus-air_nav-action-btn .sta-menus-air_action-btn-text{display:inline-block;vertical-align:middle;font-size:18px;letter-spacing:.06em;padding-top:3px} 790 } 791 @media(min-width:1280px){ 792 .sta-btnReverse .tgl-menus-air.sta-reservaGrey .sta-menus-air_nav-action-btn.sta-btn-green:hover{background-color: #d2d2d2;border-color: #d2d2d2;} 793 .sta-btnReverse .tgl-menus-air.sta-reservaGrey .sta-menus-air_nav-action-btn.sta-btn-green:hover .sta-menus-air_action-btn-text{color:#474242} 794 .sta-btnReverse .tgl-menus-air.sta-reservaGrey.sta-textReservaGC .sta-menus-air_nav-action-btn.sta-btn-green:hover .sta-menus-air_action-btn-text{color: #C2A472;} 795 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-action-btn.sta-btn-green:hover{background-color: #c2a472;border-color: #c2a472;} 796 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-action-btn.sta-btn-green:hover .sta-menus-air_action-btn-text{color:#fff} 797 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-action-btn:focus, 798 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-action-btn:hover{background: none; border-color: #474242;} 799 800 .tgl-menus-air .sta-menus-air_nav-action-btn:focus, 801 .tgl-menus-air .sta-menus-air_nav-action-btn:hover{background-color:#c2a472;border-color:transparent} 802 .tgl-menus-air .sta-menus-air_nav-action-btn:focus.sta-btn-green, 803 .tgl-menus-air .sta-menus-air_nav-action-btn:hover.sta-btn-green{background-color:#474242} 804 .tgl-menus-air.sta-reservaGrey .sta-menus-air_nav-action-btn:focus.sta-btn-green, 805 .tgl-menus-air.sta-reservaGrey .sta-menus-air_nav-action-btn:hover.sta-btn-green{background-color:#d2d2d2} 806 .tgl-menus-air.sta-reservaGrey .sta-menus-air_nav-action-btn:focus.sta-btn-green .sta-menus-air_action-btn-text, 807 .tgl-menus-air.sta-reservaGrey .sta-menus-air_nav-action-btn:hover.sta-btn-green .sta-menus-air_action-btn-text{color:#000} 808 .tgl-menus-air.sta-textReservaGC .sta-menus-air_nav-action-btn:focus.sta-btn-green .sta-menus-air_action-btn-text, 809 .tgl-menus-air.sta-textReservaGC .sta-menus-air_nav-action-btn:hover.sta-btn-green .sta-menus-air_action-btn-text{color:#C2A472} 810 .tgl-menus-air .sta-menus-air_nav-action-btn:focus .sta-menus-air_action-btn-text, 811 .tgl-menus-air .sta-menus-air_nav-action-btn:hover .sta-menus-air_action-btn-text{color:#fff} 812 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-action-btn:focus .sta-menus-air_action-btn-text, 813 .sta-btnReverse .tgl-menus-air .sta-menus-air_nav-action-btn:hover .sta-menus-air_action-btn-text{color: #474242;} 814 } 815 @media(min-width:1680px){ 816 .tgl-menus-air .sta-menus-air_nav-action-btn{margin:20px 25px 20px 0} 817 } 818 @media(min-width:1800px){ 819 .tgl-menus-air .sta-menus-air_nav-action-btn{width:260px} 820 } 821 822 823 @media(min-width:801px){ 824 .tgl-motor-air #default_sygy_element_engine>div>div{max-width:none} 825 .tgl-motor-air #default_sygy_element_engine>div>div>div{max-width:980px;margin:0 auto} 826 } 827 828 @media(min-width:1280px){ 829 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element.sta-child{position:relative} 830 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element.sta-child:hover .sta-menus-air_nav-links{opacity:1;visibility:visible;transition:opacity .5s,visibility .5s,z-index 0s;z-index:1} 831 .tgl-menus-air.sta-menuDesplegable.sta-show-links.sta-menu-white .sta-menus-air_nav-links:not(.sta-submenu)>.sta-menus-air_links-wrapper>.sta-menus-air_links-element.sta-child>.sta-menus-air_links-element-wrapper>.sta-menus-air_links-element-text:after{content:none} 832 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element, 833 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-text{transition:none} 834 /* .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_nav-links{display:none;opacity:0;overflow:hidden} */ 835 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:after, 836 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_nav-links:before{content:none} 837 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_nav-links.sta-submenu{height:auto;width:250px;text-align:center;background-color:#fff;border-radius:10px;position:absolute;top:50px;left:50%;margin-left:-125px;overflow:visible;display:block;bottom:auto;visibility:hidden;opacity:0;z-index:0} 838 839 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-text{font-size:16px} 840 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element .sta-menus-air_links-element-wrapper:before{content:none} 841 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_nav-links .sta-menus-air_links-element .sta-menus-air_links-wrapper{padding:0;width:100%;text-align:center} 842 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element.sta-child .sta-menus-air_links-element-wrapper{padding:15px 10px 12px} 843 844 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-btn.sta-btn-moreinfo_back{display:none} 845 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_nav-links .sta-menus-air_nav-links-close{display:none} 846 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-photo{display:none} 847 848 .tgl-menus-air.sta-menuDesplegable.sta-show-links.sta-menu-white .sta-menus-air_links-wrapper.fn-listaLinkHijos .sta-menus-air_links-element .sta-menus-air_links-element-text{color:#474242;text-shadow:none} 849 .tgl-menus-air.sta-menuDesplegable.sta-show-links.sta-menu-white .sta-menus-air_links-wrapper.fn-listaLinkHijos .sta-menus-air_links-element:hover .
849sta-menus-air_links-element-wrapper:hover .sta-menus-air_links-element-text{color:#c2a472} 850 .tgl-menus-air.sta-menuDesplegable.sta-show-links.sta-menu-white .sta-menus-air_nav-links .sta-menus-air_links-wrapper.fn-listaLinkHijos:before{content:'';border-right:15px solid transparent;border-left:15px solid transparent;border-bottom:10px solid #fff;bottom:100%;left:50%;margin-left:-15px;width:0;height:0;position:absolute} 851 .tgl-menus-air.sta-menuDesplegable.sta-show-links .sta-menus-air_links-element:last-of-type .sta-menus-air_links-element-wrapper{border-bottom:none} 852 } 853 854 /*Inicio tgl-avisos-air*/ 855.tgl-avisos-air{background:#474242;padding:15px 40px;position:relative;color:#fff;text-align:center;font:14px 'Catamaran',sans-serif;border-bottom:1px solid #cccbcc} 856.tgl-avisos-air:nth-of-type(even){background:#fff;color:#474242} 857.tgl-avisos-air .sta-avisos-air_container .sta-avisos-air_close{position:absolute;right:5px;top:50%;margin-top:-16px;width:34px;font:10px/32px 'Icons';text-align:center;display:block;cursor:pointer;border:1px solid #fff;border-radius:50%} 858.tgl-avisos-air:nth-of-type(even) .sta-avisos-air_container .sta-avisos-air_close{border-color:#474242} 859.tgl-avisos-air .sta-avisos-air_container .sta-avisos-air_close:after{content:'\e05d'} 860.tgl-avisos-air.sta-notClose .sta-avisos-air_close{display:none} 861.tgl-avisos-air .sta-avisos-air_text a{text-decoration:underline} 862@media(min-width:901px){ 863 .tgl-avisos-air{padding:10px 35px;font-size:17px} 864 .tgl-avisos-air .sta-avisos-air_container .sta-avisos-air_close{top:50%;margin-top:-16px} 865 .tgl-avisos-air .sta-avisos-air_max{max-width:1240px;margin:0 auto} 866} 867/*Fin tgl-avisos-air*/ 868 869/* for corporate login */ 870.tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-corporate.hideLogin { 871 display: none; 872} 873.tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-corporate:not(.hideLogin) { 874 display: inline-block; 875} 876.tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-corporate .sta-menus-air_morebtns-element-wrapper{ 877 display: flex; 878 align-items: center; 879 justify-content: center; 880} 881.tgl-menus-air:not(.sta-menu-white) .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-wrapper > div#cms-login > div > button svg { 882 fill: #000; 883} 884.tgl-menus-air:not(.sta-menu-white) .sta-menus-air_nav-morebtns-element:hover > .sta-menus-air_morebtns-element-wrapper > div#cms-login > div > button svg, 885.tgl-menus-air .sta-menus-air_nav-morebtns-element:hover > .sta-menus-air_morebtns-element-wrapper > div#cms-login > div > button svg { 886 fill: #000; 887} 888.tgl-menus-air .sta-menus-air_nav-morebtns-element > .sta-menus-air_morebtns-element-wrapper > div#cms-login > div > button span { 889 font-size: 20px; 890 width: 33px; 891 height: 33px; 892} 893@media(min-width:500px) { 894 .tgl-menus-air .sta-menus-air_nav-morebtns-element.sta-corporate { 895 padding: 5px 16px; 896 } 897} 898/* end for corporate login */ 899 900/* Test A/B */ 901 902.tgl-menus-air.testAB .sta-menus-air_nav{background-color: #0B2952 !important;} 903.tgl-menus-air.testAB .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-wrapper {border-color: #fff !important;} 904.tgl-menus-air.testAB .sta-menus-air_action-btn-text{color:#0B2952 !important;} 905.tgl-menus-air.testAB .sta-menus-air_nav-action-btn .sta-menus-air_action-btn-text{color:#0B2952 !important;} 906.tgl-menus-air.testAB .sta-menus-air_nav-action-btn{background-color: #fff !important; border-color: #fff !important;} 907.tgl-menus-air.testAB .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-icon:before{color:#fff !important;} 908.tgl-menus-air.testAB .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-text{color:#fff !important;} 909.tgl-menus-air.testAB .sta-menus-air_nav-morebtns-element .sta-menus-air_morebtns-element-text{color: #fff !important;} 910.tgl-menus-air.testAB .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-text{color:#fff !important} 911.tgl-menus-air.testAB .sta-menus-air_nav-wrapper .sta-menus-air_nav-btns-element .sta-menus-air_btns-element-icon::before{color: #fff !important;} 912</style> 913 <!-- END Critical css --> 914 915 <!-- THEME --> 916
916<script type="module"> 917 import {importFonts} from '/templates/cadenas/corporativaair/js/libraries/keytelFunctions.js'; 918 // import { importFonts } from '/src/libraries/keytelFunctions.js'; 919 920 (function () { 921 const themeFonts = [ 922 { family: 'Georgia, serif', weights: '100;200;300;400;500;600;700;800;900' }, 923 { family: 'Georgia, serif', weights: '100;200;300;400;500;600;700;800;900' }, 924 { family: 'Raleway, sans-serif', weights: '100;200;300;400;500;600;700;800;900' }, 925 ]; 926 importFonts(themeFonts); 927 })(); 928</script>
928 929 930<style> 931 /* ========================= 932 DEFAULT VALUES 933 ========================== */ 934 :root{ 935 936 /* Colors */ 937 --color-principal: #000; 938 939 --color-background: #f3f3f3; 940 --color-cards: #fff; 941 942 --color-text: #000; 943 --color-text-secondary: #ffffff; 944 945 --color-text-buttons: #fff; 946 --color-shadow-box: #0000001a; 947 948 /* Fonts */ 949 --font-title: 'Roboto', sans-serif; 950 --font-subtitle: 'Roboto', sans-serif; 951 --font-body: 'Roboto', sans-serif; 952 953 --font-size-base: clamp(14px, 2vw, 16px); 954 --font-size-h5: clamp(15px, 2.5vw, 18px); 955 --font-size-h4: clamp(17px, 3vw, 20px); 956 --font-size-h3: clamp(21px, 3.5vw, 26px); 957 --font-size-h2: clamp(28px, 4vw, 34px); 958 --font-size-h1: clamp(36px, 4.5vw, 56px); 959 960 --font-size-buttons: clamp(16px, 2.5vw, 18px); 961 --font-size-buttons-small: clamp(14px, 2vw, 16px); 962 963 /* Radius */ 964 --radius-elements: 16px; 965 --radius-buttons: 100px; 966 --radius-buttons-secondary: 100px; 967 968 /* Spacing*/ 969 --spacing-title: clamp(16px, 3vw, 24px); 970 --spacing-subtitle: clamp(16px, 3vw, 24px); 971 972 --spacing-items: clamp(16px, 3vw, 24px); 973 974 --spacing-items-image: clamp(16px, 3vw, 24px); 975 --spacing-items-title: clamp(12px, 2vw, 16px); 976 --spacing-items-subtitle: clamp(12px, 2vw, 16px); 977 978 } 979 980 /* ========== 981 OVERRIDES 982 ============= */ 983 /*#region Colors*/ 984 @supports (color: #ccbba2) { 985 :root { --color-principal: #ccbba2; } 986 } 987 988 @supports (color: ) { 989 :root { --color-background: ; } 990 } 991 992 @supports (color: ) { 993 :root { --color-cards: ; } 994 } 995 996 @supports (color: ) { 997 :root { --color-text: ; } 998 } 999 1000 @supports (color: ) { 1001 :root { --color-text-secondary: ; } 1002 } 1003 1004 @supports (color: ) { 1005 :root { --color-text-buttons: ; } 1006 } 1007 1008 @supports (color: ) { 1009 :root { --color-shadow-box: ; } 1010 } 1011 /*#endregion Colors*/ 1012 1013 @supports (font-family: Georgia, serif) { 1014 :root { --font-title: Georgia, serif, sans-serif; } 1015 } 1016 1017 @supports (font-family: Georgia, serif) { 1018 :root { --font-subtitle: Georgia, serif, var(--font-title), sans-serif; } 1019 } 1020 1021 @supports (font-family: Raleway, sans-serif) { 1022 :root { --font-body: Raleway, sans-serif, sans-serif; } 1023 } 1024 1025 /*Clamping values using GOOGLE recomended ratios*/ 1026 @supports (font-size: 16px) { 1027 :root { --font-size-base: clamp(calc(16px * 0.875), 2vw, 16px); } 1028 } 1029 1030 @supports (font-size: ) { 1031 :root { --font-size-h1: clamp(calc( * 0.82), 4vw, ); } 1032 } 1033 1034 @supports (font-size: 34px) { 1035 :root { --font-size-h2: clamp(calc(34px * 0.82), 4vw, 34px); } 1036 } 1037 1038 @supports (font-size: ) { 1039 :root { --font-size-h3: clamp(calc( * 0.8), 3.5vw, ); } 1040 } 1041 1042 @supports (font-size: ) { 1043 :root { --font-size-h4: clamp(calc( * 0.85), 3vw, ); } 1044 } 1045 1046 @supports (font-size: ) { 1047 :root { --font-size-h5: clamp(calc( * 0.85), 2.5vw, ); } 1048 } 1049 1050 @supports (font-size: ) { 1051 :root { --font-size-buttons: clamp(calc( * 0.88), 2.5vw, ); } 1052 } 1053 1054 @supports (font-size: ) { 1055 :root { --font-size-buttons-small: clamp(calc( * 0.85), 2vw, ); } 1056 } 1057 1058 /*#endregion Fonts*/ 1059 1060 /*#region Radius*/ 1061 @supports (border-radius: ) { 1062 :root { --radius-elements: ; } 1063 } 1064 1065 @supports (border-radius: ) { 1066 :root { --radius-buttons: ; } 1067 } 1068 1069 @supports (border-radius: ) { 1070 :root { --radius-buttons-secondary: ; } 1071 } 1072 /*#endregion Radius*/ 1073 1074 /*#endregion Spacing*/ 1075 @supports (margin: ) { 1076 :root { --spacing-title: clamp(calc( * 0.7), 3vw, ); } 1077 } 1078 1079 @supports (margin: ) { 1080 :root { --spacing-subtitle: clamp(calc( * 0.7), 3vw, ); } 1081 } 1082 1083 @supports (margin: ) { 1084 :root { --spacing-items: clamp(calc( * 0.7), 3vw, ); } 1085 } 1086 1087 @supports (margin: ) { 1088 :root { --spacing-items-image: clamp(calc( * 0.7), 3vw, ); } 1089 } 1090 1091 @supports (margin: ) { 1092 :root { --spacing-items-title: clamp(calc( * 0.75), 2vw, ); } 1093 } 1094 1095 @supports (margin: ) { 1096 :root { --spacing-items-subtitle: clamp(calc( * 0.75), 2vw, ); } 1097 } 1098 /*#endregion Spacing*/ 1099</style> 1100 1101 <!-- END THEME--> 1102 1103 <link rel="canonical" href="https://www.hotelspainfantedonjuanmanuel.es" /> 1104 <link rel="preload" href="/templates/cadenas/air/css/style.css?_=202504220925" as="style" onload="this.onload=null;this.rel='stylesheet'"/> 1105 <noscript><link rel="stylesheet" href="/templates/cadenas/air/css/style.css?_=202504220925"></noscript> 1106 1107 <!-- Arabic Style --> 1108 <link rel="preload" href="/templates/cadenas/air/css/arStyle.css?_=202403070948" as="style" onload="this.onload=null;'es' === 'ar' ? this.rel='stylesheet' : false"/> 1109 <noscript><link rel="stylesheet" href="/templates/cadenas/air/css/arStyle.css?_=202428061420"></noscript> 1110 <!-- END Arabic Style --> 1111 1112 1113 <link rel="preload" class="gamaCromatica" href="/templates/cadenas/air/css/colors/dc6d47.css?_=202410081021" as="style" onload="this.onload=null;this.rel='stylesheet'"> 1114 <noscript><link rel="stylesheet" href="/templates/cadenas/air/css/colors/dc6d47.css?_=202410081021"></noscript> 1115 1116 1117 <!-- SWIPER IMPORT --> 1118 <link rel="preload" href="/js/libraries/swiper/swiper.min.css?_=202405290837" as="style" onload="this.onload=null;this.rel='stylesheet'"/> 1119 <noscript><link rel="stylesheet" href="/js/libraries/swiper/swiper.min.css?_=202405290837"></noscript> 1120
1120<script src="/js/libraries/swiper/swiper.js?_=202405290837" defer></script>
1120 1121 <!-- END SWIPER IMPORT --> 1122 1123 <!-- SCROLL --> 1124
1124<script src="/templates/cadenas/corporativaair/js/data-scroll.js" defer></script>
1124 1125 <!-- END SCROLL --> 1126 1127 <!-- Plantilla fuente dual --> 1128
1128<script> 1129 (function() { 1130 if ("".trim() === "") { 1131 var link = document.createElement("link"); 1132 link.id = "font-preload"; 1133 link.rel = "preload"; 1134 link.href = "/templates/cadenas/air/css/fonts/Dual-font.css?_=202428061342"; 1135 link.as = "style"; 1136 link.onload = function() {this.onload = null;this.rel = "stylesheet";}; 1137 document.head.appendChild(link); 1138 } 1139 })(); 1140 </script>
1140 1141 1142 <!-- Fuente por variable --> 1143 <style> 1144 :root { 1145 --mainFont: ''; 1146 --bodyFont: ''; 1147 --subtitleFont: ''; 1148 --backgroundColor: #f3f3f3; 1149 } 1150 </style> 1151 <link rel="preconnect" href="https://fonts.googleapis.com"> 1152 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 1153
1153<script> 1154 const mainTitleFont = ""; 1155 const bodyFont = ""; 1156 const subtitleFont = ""; 1157 function espaciosPorMas(texto) {return texto.replace(/ /g, "+");} 1158 if (!subtitleFont || subtitleFont.trim() === "") { 1159 document.documentElement.style.setProperty("--subtitleFont", bodyFont || mainTitleFont || "Catamaran"); 1160 } 1161 if (mainTitleFont && bodyFont) { 1162 var linkTitle = document.createElement("link"); 1163 linkTitle.rel = "stylesheet"; 1164 linkTitle.href = "https://fonts.googleapis.com/css2?family="+espaciosPorMas("")+"&display=swap"; 1165 document.head.appendChild(linkTitle); 1166 var linkBody = document.createElement("link"); 1167 linkBody.rel = "stylesheet"; 1168 linkBody.href = "https://fonts.googleapis.com/css2?family="+espaciosPorMas("")+"&display=swap"; 1169 document.head.appendChild(linkBody); 1170 if (subtitleFont && subtitleFont !== mainTitleFont && subtitleFont !== bodyFont) { 1171 var linkSubtitle = document.createElement("link"); 1172 linkSubtitle.rel = "stylesheet"; 1173 linkSubtitle.href = "https://fonts.googleapis.com/css2?family="+espaciosPorMas("")+"&display=swap"; 1174 document.head.appendChild(linkSubtitle); 1175 } 1176 } else if(mainTitleFont && !bodyFont){ 1177 document.documentElement.style.setProperty("--bodyFont", mainTitleFont); 1178 var link = document.createElement("link"); 1179 link.rel = "stylesheet"; 1180 link.href = "https://fonts.googleapis.com/css2?family="+espaciosPorMas("")+"&display=swap"; 1181 document.head.appendChild(link); 1182 if (subtitleFont && subtitleFont !== mainTitleFont) { 1183 var linkSubtitle = document.createElement("link"); 1184 linkSubtitle.rel = "stylesheet"; 1185 linkSubtitle.href = "https://fonts.googleapis.com/css2?family="+espaciosPorMas("")+"&display=swap"; 1186 document.head.appendChild(linkSubtitle); 1187 } 1188 } else { 1189 var link = document.createElement("link"); 1190 link.rel = "stylesheet"; 1191 link.href = "https://fonts.googleapis.com/css2?family="+espaciosPorMas("Catamaran")+"&display=swap"; 1192 document.head.appendChild(link); 1193 } 1194 </script>
1194 1195 1196 1197 1198 <link rel="preload" href="/fonts/icons.css" as="style" onload="this.onload=null;this.rel='stylesheet'"/> 1199 <noscript><link rel="stylesheet" href="/fonts/icons.css"></noscript> 1200 1201 <link rel="preload" href="/templates/cadenas/air/fonts/icomoon/style.css" as="style" onload="this.onload=null;this.rel='stylesheet'"/> 1202 <noscript><link rel="stylesheet" href="/templates/cadenas/air/fonts/icomoon/style.css"></noscript> 1203 1204 <link rel="preload" href="/newicons/style.css" as="style" onload="this.onload=null;this.rel='stylesheet'"/> 1205 <noscript><link rel="stylesheet" href="/newicons/style.css"></noscript> 1206 1207 <link rel="shortcut icon" href="/templates/cadenas/air/images/hotels/HTL00310/favicon.ico" /> 1208 <link rel="alternate" hreflang="x-default" href="https://www.hotelspainfantedonjuanmanuel.es/en/home.html"/> 1209<link rel="alternate" hreflang="es" href="https://www.hotelspainfantedonjuanmanuel.es/"/> 1210<link rel="alternate" hreflang="en" href="https://www.hotelspainfantedonjuanmanuel.es/en/home.html"/> 1211<link rel="alternate" hreflang="fr" href="https://www.hotelspainfantedonjuanmanuel.es/fr/home.html"/> 1212 1213 1214 1215
1215<script rel="preload" src="/js/libraries/common/14.9.5.min.js" as="script"></script>
1215 1216
1216<script src="/ja/controlCookies.js?_=202010261030" as="script"></script>
1216 1217 1218 1219 <!-- Google Tag Manager --> 1220
1220<script>
vendor: 353 bytes, lines 1220-1225
1220 1221 (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 1222 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 1223 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 1224 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 1225 })(window,document,'script','dataLayer','
1225GTM-WVW86LK
vendor: 7 bytes, lines 1225-1226
1225'); 1226
1226</script>
1226 1227 <!-- End Google Tag Manager --> 1228 1229
1229<script type="text/javascript"> 1230 if(!!(navigator.userAgent.match(/Trident/) && !navigator.userAgent.match(/MSIE/))){ 1231 var cssFilesArr = ["/templates/cadenas/air/css/style.css?_=202111161200", "/templates/cadenas/air/css/colors/dc6d47.css?_=202403070948","/fonts/icons.css","/templates/cadenas/air/fonts/icomoon/style.css","https://fonts.googleapis.com/css2?family=Catamaran:wght@400;600;700&display=swap"]; 1232 function loadcssfile(cssFilesArr){ 1233 for(var x = 0; x < cssFilesArr.length; x++) { 1234 var fileref=document.createElement("link"); 1235 fileref.setAttribute("rel", "stylesheet"); 1236 fileref.setAttribute("type", "text/css"); 1237 fileref.setAttribute("href", cssFilesArr[x]); 1238 document.getElementsByTagName("head")[0].appendChild(fileref); 1239 } 1240 }; 1241 loadcssfile(cssFilesArr); 1242 } 1243 </script>
1243 1244 1245 <!-- Google Analytic --> 1246
1246<script>var codhotUA = "G-Y1EXV1ZYQV";</script>
1246 1247 <!-- END Google Analytic --> 1248 1249 1250 <!-- Style Buttons Contenidos --> 1251 <style>.tableGrande{overflow:auto;width:100%;}.tableGrande table{width:100%;border:1px solid #000;border-collapse: collapse;}.tableGrande table th,.tableGrande table td{border:1px solid #000;padding:5px;}.tableGrande table tr:nth-child(even) {background-color: #dddddd;}ul.listaPersonalizada {padding-left: 20px;display: inline-block;text-align: left;}ul.listaPersonalizada li{list-style: disc;}</style> 1252 <!-- End Style Buttons Contenidos --> 1253 1254 <!-- Cookies v6 --> 1255
1255<script type="text/javascript" src="/modulos/buscador_V6/templates/forms/js/cookies.min.js?_=2609300939"></script>
1255 1256 <!-- End Cookies v6 --> 1257 1258 <!-- Codigo Free Hotel --> 1259 <style>.editorial-content.invert .editorial-content-image-wrapper { margin-left: 0; margin-right: var(--inline-padding);}@media (max-width: 1023px) { .editorial-content .editorial-content-container { padding-inline: 20px; }}.new-gallery .btn-container{margin-top:100px;}.layout-v4 .masonry-grid:not(:first-child) {padding-top: 100px;}/* === FIX CABECERA ===*/body:has(main .cabecera-air.version-3) main.global-container, body:has(main .cabecera-air.version-4) main.global-container {display: flow-root;}:root body main.global-container.sta-init-space:has([html="MENU/tgl-opiniones-air"]) {padding-top: 0px !important;}/* === END FIX CABECERA ===*/</style> 1260 <!-- End Codigo Free Hotel --> 1261 1262
1262<script> 1263 const { group: engine_group, hotel_code: engine_hotel_code } = {"version_cms":"2026-09-30 18:02:43","web_type":"WI","hotel_code":"HTL00310","group":"asociados","hotel_id":413,"config":{"app_code":"cms-engine","theme_values":{"mainColor":"rgb(73 144 227)","thirdColor":"#4a90e2","custom_blur":"blur(40px)","custom_padding":"20px","defaultColor":null,"STgoldTier":"#ab9662","STsilverTier":"#939798","STblueTier":"#506caf","fontFamily4":"Montserrat , sans-serif","resizableImages":false,"secondColor":"#ab8753","backgroundColor":"#736351","backgroundEngine":"#7b777700","calendarColor":"#ccbba2","colorFont":"#000000","engineColorFont":"#fff","headerColorFont":"#fff","headerColorIcons":"#9b9b9b","headerColorDynamicText":"#ffffff","fontFamily1":"Roboto , sans-serif","fontFamily3":"Icons","fontFamily2":"DroidSerif"},"dropdown_position":"bottom","isolate":0,"show_date_format":"minified","id_button_engine":null,"positions":{"engine_position":"relative"},"links":{"transportLink":{"value":null,"icon":"e90b","target":"","showIn":"","text":{"es":{"translatable_value":"Transportes"},"ca":{"translatable_value":"Transports"},"en":{"translatable_value":"Transport"},"it":{"translatable_value":"Trasporto"},"de":{"translatable_value":"Transport"},"pt":{"translatable_value":"Transporte"},"ru":{"translatable_value":"\u0422\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442"},"nl":{"translatable_value":"Vervoer"},"fr":{"translatable_value":"Transport"},"bg":{"translatable_value":"\u0422\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442"},"vi":{"translatable_value":"V\u1eadn t\u1ea3i"},"sl":{"translatable_value":"Transferji"},"ja":{"translatable_value":"\u79fb\u7ba1"}},"url":[]},"activitiesLink":{"value":null,"showIn":"","icon":"e908","target":"","text":{"es":{"translatable_value":"Actividades"},"ca":{"translatable_value":"Activitats"},"en":{"translatable_value":"Activities"},"it":{"translatable_value":"Attivit\u00e0"},"de":{"translatable_value":"Aktivit\u00e4ten"},"pt":{"translatable_value":"Atividades"},"ru":{"translatable_value":"\u041c\u0435\u0440\u043e\u043f\u0440\u0438\u044f\u0442\u0438\u044f"},"nl":{"translatable_value":"Activiteiten"},"fr":{"translatable_value":"Activit\u00e9s"},"bg":{"translatable_value":"\u0414\u0435\u0439\u043d\u043e\u0441\u0442\u0438"},"vi":{"translatable_value":"C\u00e1c ho\u1ea1t \u0111\u1ed9ng"},"sl":{"translatable_value":"Dejavnosti"},"ja":{"translatable_value":"\u6d3b\u52d5\u5185\u5bb9"}},"url":[]},"rentLink":{"value":null,"icon":"e909","showIn":"","target":"","url":[],"text":{"es":{"translatable_value":"Rentacar"},"ca":{"translatable_value":"Rentacar"},"en":{"translatable_value":"Rent a car"},"it":{"translatable_value":"Rent a car"},"de":{"translatable_value":"Rent a car"},"pt":{"translatable_value":"Rent a car"},"hu":{"translatable_value":"Rent a car"},"ar":{"translatable_value":"Rent a car"},"gl":{"translatable_value":"Rent a car"},"zi":{"translatable_value":"Rent a car"},"tr":{"translatable_value":"Rent a car"},"fr":{"translatable_value":"Rent a car"},"nl":{"translatable_value":"Rent a car"},"ru":{"translatable_value":"Rent a car"},"bg":{"translatable_value":"\u041a\u043e\u043b\u0438 \u043f\u043e\u0434 \u043d\u0430\u0435\u043c"},"vi":{"translatable_value":"Thu\u00ea m\u1ed9t chi\u1ebfc xe"},"sl":{"translatable_value":"Rentacar"},"sk":{"translatable_value":"Rentacar"},"ja":{"translatable_value":"\u30ec\u30f3\u30bf\u30ab\u30fc"}}}},"back_drop":false,"last_searchs_extended":true,"show_texts":false,"theme":"roundedThemeV2","ignore_synergy_config":true,"max_rooms":10,"default_lang":"autodetect","engine_active":true,"prices_active":true,"max_adults":8,"default_adults":2,"max_childs":4,"default_childs":0,"enable_wi_url":true,"show_modal_view":false,"engine_visible":true,"drop_down_list_type":false,"enable_promotion_code":true,"engine_type":"standard","focus_on_modal_view":false,"mobile":{"engine_visible":false},"occups_free":{"baby":{"start":0,"end":2},"child":{"start":3,"end":11},"max_babies":1,"max_occups_free":6}},"currency_code":"EUR","i18n":{"translationControl":{"tag":"translationControl"},"precio_subtotal":{"tag":"importe subtotal"},"mejor precio garantizado":{"tag":"mejor precio garantizado"}
1263,"habitaci\u00f3n":{"tag":"habitaci\u00f3n","has_plural":1,"plural":"habitaciones"},"ni\u00f1o":{"tag":"ni\u00f1o","has_plural":1,"plural":"ni\u00f1os"},"entrada":{"tag":"entrada"},"salida":{"tag":"salida"},"adulto":{"tag":"adulto","has_plural":1,"plural":"adultos"},"aceptar":{"tag":"aceptar"},"confirmar":{"tag":"confirmar"},"vuelo + hotel":{"tag":"vuelo + hotel"},"aplicar":{"tag":"aplicar"},"c\u00f3digo promocional":{"tag":"c\u00f3digo promocional"},"hotel":{"tag":"hotel","has_plural":1,"plural":"hoteles"},"Insertar c\u00f3digo promocional":{"tag":"insertar c\u00f3digo promocional"},"vuelo_mas_hotel_link":{"tag":null},"destino":{"tag":"destino"},"*Ni\u00f1os de 2 a 11 a\u00f1os":{"tag":"Ni\u00f1os de 3 a 11 a\u00f1os. Beb\u00e9s de 0-2 a\u00f1os cuna gratuita seg\u00fan disponibilidad. En caso de no haber cuna disponible, tendr\u00e1 que compartir cama con los padres."},"buscar":{"tag":"buscar"},"buscar por destino o por hotel":{"tag":"Buscar por destino o por hotel"},"ir al listado de hoteles":{"tag":"ir al listado de hoteles"},"no se han encontrado destinos con este nombre":{"tag":"No se han encontrado destinos con este nombre"},"tus \u00faltimas b\u00fasquedas":{"tag":"Tus \u00faltimas b\u00fasquedas"},"\u00bfQuieres a\u00f1adir un traslado?":{"tag":"\u00bfQuieres a\u00f1adir un traslado?"},"test":{"tag":"test"},"hoteles en":{"tag":"hoteles en"},"clean_and_safe_link":{"tag":null},"insertar c\u00f3digo promocional":{"tag":"Insertar c\u00f3digo promocional"},"tengo un c\u00f3digo de descuento":{"tag":"tengo un c\u00f3digo de descuento"},"aplicado":{"tag":"aplicado"},"c\u00f3digo descuento":{"tag":"C\u00f3digo descuento"},"tengo un c\u00f3digo promocional":{"tag":"tengo un c\u00f3digo promocional"},"rent_link":{"tag":"https:\/\/palaciodelinfantedonjuanmanuelhotelspa.paquetedinamico.com\/home-hotel.xhtml?agency=palaciodelinfantedonjuanmanuelhotelspa&language=ESµsite=hotusa-trc&tripType=ONLY_CAR&utm_source=palaciodelinfantedonjuanmanuelhotelspa&utm_medium=portal&utm_campaign=palaciodelinfantedonjuanmanuelhotelspa_es"},"transfers_link":{"tag":null},"activities_link":{"tag":"https:\/\/palaciodelinfantedonjuanmanuelhotelspa.paquetedinamico.com\/home-hotel.xhtml?agency=palaciodelinfantedonjuanmanuelhotelspa&language=ESµsite=hotusa-trc&tripType=ONLY_TICKET&utm_source=palaciodelinfantedonjuanmanuelhotelspa&utm_medium=portal&utm_campaign=palaciodelinfantedonjuanmanuelhotelspa_es"},"transferencias":{"tag":"Traslados"},"alquileres":{"tag":"Rentacar"},"actividades":{"tag":"Actividades"},"transportes":{"tag":"Transportes"},"\u00bfA d\u00f3nde te gustar\u00eda ir?":{"tag":"\u00bfA d\u00f3nde te gustar\u00eda ir?"},"Elige el destino o el hotel":{"tag":"Elige el destino o el hotel"},"\u00bfCu\u00e1ndo quieres ir?":{"tag":"\u00bfCu\u00e1ndo quieres ir?"},"\u00bfCu\u00e1ndo?":{"tag":"\u00bfCu\u00e1ndo?"},"Hu\u00e9spedes":{"tag":"Hu\u00e9spedes"},"restricci\u00f3n : Anticipaci\u00f3n m\u00ednima {value} d\u00edas":{"tag":"Anticipaci\u00f3n m\u00ednima: {value} d\u00edas"},"restricci\u00f3n : Estancia m\u00ednima {value} noches":{"tag":"Estancia m\u00ednima: {value} noches"},"restricci\u00f3n : No se permite salida permitir salida":{"tag":"No se permite salida"},"restricci\u00f3n : No se permitir entrada":{"tag":"No se permite entrada"},"* Estos precios son orientativos y podr\u00edan variar":{"tag":"* Estos precios son orientativos y podr\u00edan variar"},"* Precios aproximados":{"tag":"* Precios aproximados"},"* Precios aproximados en {currency}":{"tag":"* Precios aproximados en {currency}"},"* Precios aproximados para 2 personas.":{"tag":"* Precios aproximados para 2 personas."},"para 2 personas.":{"tag":"para 2 personas."},"ocupacion":{"tag":"ocupacion"},"eliminar adulto":{"tag":"eliminar un adulto"},"a\u00f1adir adulto":{"tag":"a\u00f1adir un adulto"},"eliminar ni\u00f1o":{"tag":"eliminar un ni\u00f1o"},"a\u00f1adir un ni\u00f1o":{"tag":"a\u00f1adir un ni\u00f1o"},"eliminar habitacion completa":{"tag":"eliminar la habitacion completa"},"eliminar una habitacion":{"tag":"eliminar una habitacion"},"a\u00f1adir otra habitacion":{"tag":"A\u00f1adir otra habitaci\u00f3n"},"confirmar busqueda":{"tag":"confirmar busqueda reserva"},"busca destino":{"tag":"Busca un hotel o destino"},"elige fecha":{"tag":"elige la fecha de la reserva"},"elige ocupantes":{"tag":"elige los ocupantes"},"codigo promo":{"tag":"introduce el codigo promocional"},"cerrar busqueda":{"tag":"cerrar busqueda de reserva"},"coincidencia texto":{"tag":"Sugerencia: hotel o destino coincidente"}
1263,"a\u00f1adir ni\u00f1o":{"tag":"a\u00f1adir un ni\u00f1o"},"edad del ni\u00f1o":{"tag":"edad del ni\u00f1o","has_plural":1,"plural":"edad de los ni\u00f1os"},"a\u00f1o":{"tag":"a\u00f1o","has_plural":1,"plural":"a\u00f1os"},"motor":{"tag":"Reservar"},"siguiente":{"tag":"siguiente"},"anterior":{"tag":"anterior"},"aceptar y continuar":{"tag":"aceptar y continuar"},"transport_link":{"tag":"https:\/\/palaciodelinfantedonjuanmanuelhotelspa.paquetedinamico.com\/home-hotel.xhtml?agency=palaciodelinfantedonjuanmanuelhotelspa&language=ESµsite=hotusa-trc&tripType=FLIGHT_HOTEL&utm_source=palaciodelinfantedonjuanmanuelhotelspa&utm_medium=portal&utm_campaign=palaciodelinfantedonjuanmanuelhotelspa_es"}},"lang_info":{"code":"ES","syn2_code":"es","date_format":"DD\/MM\/YYYY","decimal_separator":",","thousand_separator":"."},"avail_url":"https:\/\/www.hotelspainfantedonjuanmanuel.es\/disponibilidad.html","currencies":[{"id":1,"code":"EUR","symbol":"\u20ac","name":"Euro","ratio":1,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":true,"override":false,"exception":[]},{"id":2,"code":"USD","symbol":"$","name":"D\u00f3lar de los Estados Unidos","ratio":1.13453,"decimals":2,"main":1,"position":true,"thousand_separator":".","decimal_separator":",","use_symbol":true,"override":false,"exception":[{"code":"BB","position":true,"thousand_separator":",","decimal_separator":"."},{"code":"UG","position":true,"thousand_separator":",","decimal_separator":"."},{"code":"US","position":true,"thousand_separator":",","decimal_separator":"."}]},{"id":4,"code":"GBP","symbol":"\u00a3","name":"Reino Unido libra esterlina","ratio":0.85645,"decimals":2,"main":1,"position":true,"thousand_separator":".","decimal_separator":",","use_symbol":true,"override":false,"exception":[]},{"id":5,"code":"ARS","symbol":"ARS","name":"Peso Argentino","ratio":1730.09805,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":20,"code":"MAD","symbol":"MAD","name":"Dirham de Marruecos","ratio":10.98754,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":28,"code":"AUD","symbol":"AUD","name":"D\u00f3lar australiano","ratio":1.6211,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":29,"code":"AZN","symbol":"AZN","name":"Manat azer\u00ed","ratio":1.92864,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":41,"code":"BRL","symbol":"BRL","name":"Real brasile\u00f1o","ratio":5.9177,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":43,"code":"BGN","symbol":"BGN","name":"Lev b\u00falgaro","ratio":1.9558,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":46,"code":"CAD","symbol":"CAD","name":"D\u00f3lar canadiense","ratio":1.60966,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":50,"code":"CLP","symbol":"CL$","name":"Peso chileno","ratio":1104.40847,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":51,"code":"CNY","symbol":"CN\u00a5","name":"Yuan Renminbi chino","ratio":7.6117,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":52,"code":"COP","symbol":"COP","name":"Peso colombiano","ratio":3782.41663,"decimals":0,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":55,"code":"NZD","symbol":"NZ$","name":"D\u00f3lar de Nueva Zelanda","ratio":2.0076,"decimals":2,"main":0,"position":false,"thous
1263and_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":58,"code":"CUC","symbol":"CUC","name":"Peso Cubano Convertible","ratio":1.13453,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":60,"code":"CZK","symbol":"CZK","name":"Corona Checa","ratio":24.411,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":61,"code":"DKK","symbol":"DKK","name":"Corona danesa","ratio":7.4754,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":63,"code":"DOP","symbol":"DOP","name":"Peso dominicano","ratio":67.46815,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":72,"code":"GEL","symbol":"GEL","name":"Lari georgiano","ratio":2.94713,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":80,"code":"HKD","symbol":"HKD","name":"D\u00f3lar de Hong Kong","ratio":8.9091,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":81,"code":"HUF","symbol":"HUF","name":"Flor\u00edn H\u00fangaro","ratio":366.38,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":83,"code":"INR","symbol":"INR","name":"Rupia india","ratio":108.87597,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":84,"code":"IDR","symbol":"IDR","name":"Rupia Indonesia","ratio":20256.86,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":87,"code":"ILS","symbol":"ILS","name":"Nuevo Sheqel israel\u00ed","ratio":3.48018,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":89,"code":"JPY","symbol":"JPY","name":"Yen Japon\u00e9s","ratio":178.41,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":94,"code":"KRW","symbol":"KRW","name":"Won surcoreano","ratio":1536.63691,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":103,"code":"CHF","symbol":"CHF","name":"Franco suizo","ratio":0.9461,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":109,"code":"MYR","symbol":"MYR","name":"Ringgit de Malasia","ratio":4.634,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":114,"code":"MXN","symbol":"MXN","name":"Peso mexicano","ratio":20.48886,"decimals":2,"main":0,"position":false,"thousand_separator":",","decimal_separator":".","use_symbol":false,"override":false,"exception":[]},{"id":125,"code":"NOK","symbol":"NOK","name":"Corona Noruega","ratio":10.8735,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":131,"code":"PEN","symbol":"PEN","name":"Nuevo Sol peruano","ratio":3.90551,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":132,"code":"PHP","symbol":"PHP","name":"Peso filipino","ratio":71.022,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":133,"code":"PLN","symbol":"PLN","name":"Zloty Polaco","ratio":4.3653,"decimals":2,"main":0,"position":false,"thous
1263and_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":134,"code":"QAR","symbol":"QAR","name":"Riyal Qatar\u00ed","ratio":4.12968,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":135,"code":"RON","symbol":"RON","name":"Leu Rumano","ratio":5.2786,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":136,"code":"RUB","symbol":"RUB","name":"Rublo Ruso","ratio":95.28017,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":141,"code":"SAR","symbol":"SAR","name":"Rial Saudi Arabia Saudita Riyal","ratio":4.25447,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":145,"code":"SGD","symbol":"SGD","name":"D\u00f3lar de Singapur","ratio":1.4504,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":149,"code":"ZAR","symbol":"ZAR","name":"Rand del africano del sur","ratio":18.5887,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":154,"code":"SEK","symbol":"SEK","name":"Corona sueca","ratio":11.321,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":159,"code":"THB","symbol":"THB","name":"Baht tailand\u00e9s","ratio":38.056,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":163,"code":"TRY","symbol":"TRY","name":"Lira turca","ratio":55.6398,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":167,"code":"AED","symbol":"AED","name":"Emiratos \u00c1rabes Unidos Dirham","ratio":4.16655,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":172,"code":"VND","symbol":"VND","name":"Dong de Vietnam","ratio":29463,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":173,"code":"XOF","symbol":"CFA","name":"Franco de \u00c1frica occidental","ratio":655.957,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]}]}; 1264 window.frontLoader = window.frontLoader || {}; 1265 if (engine_group && !window.frontLoader.group) { 1266 window.frontLoader.group = engine_group; 1267 } 1268 if(engine_hotel_code && !window.frontLoader.hotel_code){ 1269 window.frontLoader.hotel_code = engine_hotel_code; 1270 } 1271 </script>
1271 1272
1272<script> 1273 window.dataSeo = { 1274 favicon : location.origin + "/templates/cadenas/air/images/hotels/HTL00310/favicon.ico", 1275 metaHome : "Palacio Del Infante Don Juan Manuel Hotel Spa en Belmonte. Web Oficial. Hotel de 4* estrellas situado en Infante Don Juan Manuel 2, Belmonte, Belmonte. Reserve online al Mejor Precio.", 1276 imgFirst : "", 1277 indice : "https://www.hotelspainfantedonjuanmanuel.es/", 1278 idioma : "es", 1279 hotel : { 1280 url : location.origin, 1281 id : "HTL00310", 1282 name : "Palacio Del Infante Don Juan Manuel Hotel Spa", 1283 stars : "4", 1284 address : "Infante Don Juan Manuel 2, Belmonte ", 1285 city : "Belmonte", 1286 province : "Castilla-La Mancha", 1287 country : "España", 1288 cp : "16640", 1289 textTel : "", 1290 tel : "967 170 784", 1291 text2Tel : "", 1292 tel2 : "", 1293 1294 fax : "", 1295 mail : "[email protected]", 1296 check_in : "16:00", 1297 check_out : "12:00", 1298 coord : { 1299 lat : "39.561326", 1300 log : "-2.702624" 1301 } 1302 }, 1303 opinions : { 1304 nota : "8.4", 1305 max : "10", 1306 min : "0", 1307 count : "293" 1308 }, 1309 seo : { 1310 text1 : "Mejor precio online garantizado. ¡Solo disponible en nuestra WEB OFICIAL!", 1311 text2 : "" 1312 } 1313 } 1314 </script>
1314 1315 1316 <!-- Structured Data Hotel -->
1317<script> 1318(function () { 1319 1320 var path = window.location.pathname; 1321 1322 // MISMO estilo de lógica que tu "IF ... ENDIF" 1323 var _show_structured_data = ( 1324 path === '/' || 1325 path === '/home' || 1326 path.indexOf('/home') !== -1 1327 ); 1328 1329 if (!_show_structured_data) return; 1330 1331 var script = document.createElement('script'); 1332 script.type = 'application/ld+json'; 1333 script.title = "Hotel"; 1334 1335 script.text = JSON.stringify({ 1336 "@context": "https://schema.org", 1337 "@type": ["Hotel", "LocalBusiness"], 1338 "name": "Palacio Del Infante Don Juan Manuel Hotel Spa", 1339 "url": "https://www.hotelspainfantedonjuanmanuel.es", 1340 "logo": "/templates/cadenas/air/images/hotels/HTL00310/favicon.ico", 1341 "image": "https://synergy.booking-channel.com/api/hotels/413/medias/222#Claustro%20interior%20del%20Palacio%20del%20Infante%20Don%20Juan%20Manuel%20en%20Belmonte%20con%20arcos%20de%20piedra,%20mesas%20lounge%20y%20ambiente%20elegante", 1342 "description": "Palacio Del Infante Don Juan Manuel Hotel Spa en Belmonte. Web Oficial. Hotel de 4* estrellas situado en Infante Don Juan Manuel 2, Belmonte, Belmonte. Reserve online al Mejor Precio.", 1343 "address": { 1344 "@type": "PostalAddress", 1345 "streetAddress": "Infante Don Juan Manuel 2, Belmonte ", 1346 "addressLocality": "Belmonte", 1347 "postalCode": "16640", 1348 "addressCountry": "España" 1349 }, 1350 "starRating": { 1351 "@type": "Rating", 1352 "ratingValue": "4" 1353 }, 1354 "geo": { 1355 "@type": "GeoCoordinates", 1356 "latitude": 39.561326, 1357 "longitude": -2.702624 1358 }, 1359 "priceRange": "Mejor precio online garantizado. ¡Solo disponible en nuestra WEB OFICIAL!", 1360 "telephone": "967 170 784", 1361 "faxNumber": "", 1362 "hasMap": "", 1363 "sameAs": "", 1364 "email": "[email protected]" 1365 1366 1367 ,"aggregateRating": { 1368 "@type": "AggregateRating", 1369 "ratingValue": "8.4", 1370 "reviewCount": "293", 1371 "bestRating": "10", 1372 "worstRating": "0" 1373 } 1374 1375 }); 1376 1377 document.head.appendChild(script); 1378 1379})(); 1380</script>
1380 1381 <!-- END Structured Data Hotel --> 1382</head> 1383 1384<body class=""> 1385 <!-- Google Tag Manager (noscript) -->
vendor: 71 bytes, lines 1385-1386
1385 1386 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
1386GTM-WVW86LK
vendor: 86 bytes, lines 1386-1387
1386" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 1387
1387<!-- End Google Tag Manager (noscript) --> 1388 1389 <!-- Cookies --> 1390 <div cookie html="MENU/tpl-cookis.html"> 1391 <!-- 1392 Clase extra: 1393 "sta-idiomas" : activa el selector de idiomas dentro de las cookies 1394 "sta-backBlack" : Black version 1395 --> 1396 <input tabindex="-1" type="checkbox" id="sta-cookies" aria-label="open cookies" checked> 1397 <div class="tpl-cookie _sta-idiomas"> 1398 <input tabindex="-1" type="checkbox" id="sta-cookies_config"> 1399 1400 <div class="sta-cookie_table"> 1401 <div class="sta-cookie_cell"> 1402 <div class="sta-cookie_content"> 1403 <div class="sta-cookie_content2"> 1404 <div class="sta-cookie_logo"> 1405 <div class="" tag="g_cookies_logo"></div> 1406 <div class="sta-cookie_idi"> 1407 <li class="sta-menus-air_languages-element"> 1408 <a href="https://www.hotelspainfantedonjuanmanuel.es/en/home.html" rel="alternate" hreflang="en" class="sta-menus-air_element-btn" 1409 tabindex="0">English</a> 1410</li> 1411<li class="sta-menus-air_languages-element"> 1412 <a href="https://www.hotelspainfantedonjuanmanuel.es/fr/home.html" rel="alternate" hreflang="fr" class="sta-menus-air_element-btn" 1413 tabindex="0">Français</a> 1414</li> 1415<li class="sta-menus-air_languages-element"> 1416 <a href="" rel="alternate" hreflang="es" class="sta-menus-air_element-btn sta-active" 1417 tabindex="0">Español</a> 1418</li> 1419 </div> 1420 </div> 1421 <div class="sta-cookie_info"> 1422 <div class="sta-cookie_texto" tag="g_cookies_intro">Utilizamos cookies de primera parte y de terceros para finalidades analÃticas sobre el uso de la web, personalizar el contenido en base a tus preferencias, y publicidad personalizada en base a un perfil a partir de la recopilación de tus hábitos de navegación. Para más información puedes leer nuestra polÃtica de cookies. Puedes aceptar todas las cookies mediante el botón âAceptarâ o puedes configurar o rechazar su uso pulsando en âConfigurarâ. <a href="/cookies.html" target="_blank">PolÃtica de cookies</a></div> 1423 <div class="sta-cookie_table"> 1424 <div class="sta-cookie_cell"> 1425 <label class="sta-cookie_config" for="sta-cookies_config">Configurar</label> 1426 </div> 1427 <div class="sta-cookie_cell"> 1428 <button type="button" class="sta-cookie_config fn-disableAll fn-confirm">Rechazar todo</button> 1429 </div> 1430 <div class="sta-cookie_cell"> 1431 <button type="button" class="sta-cookies_confirm fn-confirm">Acepto</button> 1432 </div> 1433 </div> 1434 </div> 1435 <div class="sta-cookies_config"> 1436 <ul class="sta-cookies_lista"> 1437 <li> 1438 <div class="sta-cookies_cont"> 1439 <div class="sta-cookies_title" tag="g_cookie_title_necesarias">Cookies técnicas esenciales</div> 1440 <div tag="g_cookie_cont_necesarias">Son necesarias para gestionar la navegación dentro de la web o para mantener al usuario conectado. No se pueden desactivar porque afectarÃa al funcionamiento de la web.</div> 1441 <label class="sta-cookies_label sta-disabled"> 1442 <span class="sta-cookies_icon"><span></span></span> 1443 </label> 1444 </div> 1445 </li> 1446 <li> 1447 <div class="sta-cookies_cont"> 1448 <div class="sta-cookies_title" tag="g_cookie_title_person">Cookies de personalización</div> 1449 <div tag="g_cookie_cont_person">Necesarias para recordar determinadas preferencias del usuario. </div> 1450 <label class="sta-cookies_label"> 1451 <input type="checkbox" checked id="functional"> 1452 <span class="sta-cookies_icon"><span></span></span> 1453 </label> 1454 </div> 1455 </li> 1456 <li> 1457 <div class="sta-cookies_cont"> 1458 <div class="sta-cookies_title" tag="g_cookie_title_anali">Cookies analÃticas</div> 1459 <div tag="g_cookie_cont_anali">Nos ayudan a nosotros y a terceros a recopilar información sobre el uso de la web, a efectos de realizar un análisis estadÃstico para poder mejorar la estructura y los contenidos.</div> 1460 <label class="sta-cookies_label"> 1461 <input type="checkbox" checked id="analytics">
1462 <span class="sta-cookies_icon"><span></span></span> 1463 </label> 1464 </div> 1465 </li> 1466 <li> 1467 <div class="sta-cookies_cont"> 1468 <div class="sta-cookies_title" tag="g_cookie_title_publi">Cookies publicitarias comportamentales</div> 1469 <div tag="g_cookie_cont_publi">Ayudan a recopilar los hábitos de navegación del usuario para crear un perfil de sus intereses y para mostrarle anuncios adaptados a los mismos.</div> 1470 <label class="sta-cookies_label"> 1471 <input type="checkbox" checked id="publicity"> 1472 <span class="sta-cookies_icon"><span></span></span> 1473 </label> 1474 </div> 1475 </li> 1476 </ul> 1477 <div class="sta-cookie_table"> 1478 <div class="sta-cookie_cell"> 1479 <button type="button" class="sta-cookies_confirm fn-confirm">Confirmar selección</button> 1480 </div> 1481 <div class="sta-cookie_cell"> 1482 <button type="button" class="sta-cookie_config fn-disableAll fn-confirm">Rechazar todo</button> 1483 </div> 1484 <div class="sta-cookie_cell"> 1485 <button type="button" class="sta-cookie_config fn-enableAll fn-confirm">Aceptar todo</button> 1486 </div> 1487 </div> 1488 </div> 1489 </div> 1490 </div> 1491 </div> 1492 </div> 1493 </div> 1494</div> 1495 1496 <!-- End Cookies --> 1497 1498 1499<!-- Alertas --> 1500<div alertas class="tgl-globalAlertas-air"> 1501 <!-- 1502 CLASES 1503 "show-badge" - mostrar la etiqueta (tag de traducción) 1504 "no-link" - elimina el efecto del hover sobre el texto 1505--> 1506<div class="preheader preheader--static no-link" data-scroll=""> 1507 <a href="#" class="preheader__link"> 1508 <span class="preheader__badge"></span> 1509 <span class="preheader__text">15% descuento reservando en la web oficial</span> 1510 <span class="preheader__arrow">âº</span> 1511 </a> 1512</div> 1513<style> 1514 /* PREHEADER MODULE â V1 ESTÃTICA */ 1515 :root { 1516 --preheader-bg: var(--color-principal, #000); 1517 --preheader-text: var(--color-text-secondary, #fff); 1518 --preheader-font: var(--font-body, 'Roboto', sans-serif); 1519 --preheader-height: 40px; 1520 --preheader-font-size: clamp(12px, 2vw, 14px); 1521 } 1522 1523 /* ---- PREHEADER BASE ---- */ 1524 .preheader {width: 100%;background-color: var(--preheader-bg);color: var(--preheader-text);font-family: var(--preheader-font);font-size: var(--preheader-font-size);line-height: 1;overflow: hidden;} 1525 .preheader--static {display: flex;align-items: center;justify-content: center;height: var(--preheader-height);gap: 12px;} 1526 1527 /* Etiqueta NEW â oculta por defecto */ 1528 .preheader .preheader__badge {display: none;border: 1.5px solid var(--preheader-text);border-radius: 20px;padding: 4px 14px;font-size: 12px;font-weight: 700;letter-spacing: 1px;line-height: 1.2;flex-shrink: 0;} 1529 1530 /* Mostrar badge con clase "show-badge" */ 1531 .preheader.show-badge .preheader__badge {display: inline-flex;align-items: center;} 1532 .preheader .preheader__text {font-weight: 400;letter-spacing: 0.3px;} 1533 .preheader .preheader__arrow {font-size: 18px;line-height: 1;flex-shrink: 0;} 1534 .preheader .preheader__link {display: flex;align-items: center;justify-content: center;gap: 12px;color: inherit;text-decoration: none;height: 100%;width: fit-content;} 1535 .preheader:not(.no-link) a.preheader__link:hover {opacity: 0.85;text-decoration: none;} 1536 .preheader:not(.no-link) a.preheader__link:hover .preheader__text {text-decoration: underline;} 1537 .preheader .preheader__text a {color: inherit;} 1538 .preheader.no-link .preheader__link {pointer-events: none;cursor: default;} 1539 .preheader.no-link .preheader__arrow {display: none;} 1540 1541 /* RESPONSIVE */ 1542 @media (max-width: 800px) { 1543 .preheader .preheader__link {padding-inline: 20px;} 1544 } 1545</style> 1546 1547 1548</div> 1549<!-- END alertas --> 1550 1551<!-- Header --> 1552 <aside class="tgl-menus-air sta-menu-white sta-book-fixed _sta-book-aside sta-show-links"> 1553 <nav class="site-nav Volver" data-scroll=""> 1554 <!-- HEADER --> 1555 <header class="header hv-2" id="header"> 1556 <div class="header-content"> 1557 <!-- Logo + Hamburguesa (cuando overflow) --> 1558 <div class="header-left"> 1559 <a href="https://www.hotelspainfantedonjuanmanuel.es/" class="logo"> 1560 <img src="/templates/cadenas/air/images/hotels/HTL00310/logo_infantedonjuan.jpg" alt="Palacio Del Infante Don Juan Manuel Hotel Spa"> 1561 </a> 1562 <button class="hamburger-btn" id="hamburgerBtn" onclick="toggleSideMenu()"></button> 1563 </div> 1564 1565 <!-- Navegación principal desktop --> 1566 <nav class="main-nav" id="mainNav"> 1567 1568 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/"> 1569 <div class="nav-item-header"> 1570 <a href="https://www.hotelspainfantedonjuanmanuel.es/" class="nav-link" onclick="handleNavClick(event, this)">Home</a> 1571 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1572 </div> 1573 <div class="nav-dropdown"> 1574 <ul> 1575 1576 </ul> 1577 </div> 1578 </div> 1579 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/habitaciones.html"> 1580 <div class="nav-item-header"> 1581 <a href="https://www.hotelspainfantedonjuanmanuel.es/habitaciones.html" class="nav-link" onclick="handleNavClick(event, this)">Habitaciones</a> 1582 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1583 </div> 1584 <div class="nav-dropdown"> 1585 <ul> 1586 1587 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-doble-o-twin-2-camas.html">
1587Habitación doble o twin (2 camas)</a></li> 1588 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-doble-uso-individual.html">Habitación doble uso individual</a></li> 1589 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-doble-con-vistas-al-castillo.html">Habitación doble con vistas al castillo</a></li> 1590 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-cuadruple.html">Habitación cuádruple</a></li> 1591 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/junior-suite.html">Junior Suite</a></li> 1592 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/suite.html">Suite</a></li> 1593 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-triple.html">Habitación triple</a></li> 1594 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-superior-con-vistas.html">Habitación superior con vistas</a></li> 1595 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/suite-familiar.html">Suite familiar</a></li> 1596 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/estancia-en-doble-o-twin-desayuno-cena-y-concierto-tributo-a-jose-luis.html">Estancia en Doble o Twin + desayuno, cena y concierto tributo a Jose Luis Perales</a></li> 1597 </ul> 1598 </div> 1599 </div> 1600 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/restaurante.html"> 1601 <div class="nav-item-header"> 1602 <a href="https://www.hotelspainfantedonjuanmanuel.es/restaurante.html" class="nav-link" onclick="handleNavClick(event, this)">Restaurante</a> 1603 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1604 </div> 1605 <div class="nav-dropdown"> 1606 <ul> 1607 1608 </ul> 1609 </div> 1610 </div> 1611 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/promociones.html"> 1612 <div class="nav-item-header"> 1613 <a href="https://www.hotelspainfantedonjuanmanuel.es/promociones.html" class="nav-link" onclick="handleNavClick(event, this)">Promociones</a> 1614 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1615 </div> 1616 <div class="nav-dropdown"> 1617 <ul> 1618 1619 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/doble-relax-incluye-acceso-al-spa.html">Doble relax (incluye acceso al spa)</a></li> 1620 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/paquete-vino-y-relax.html">Paquete vino y relax</a></li> 1621 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/clientes-empresa.html">Clientes empresa</a></li> 1622 </ul> 1623 </div> 1624 </div> 1625 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/spa.html"> 1626 <div class="nav-item-header"> 1627 <a href="https://www.hotelspainfantedonjuanmanuel.es/spa.html" class="nav-link" onclick="handleNavClick(event, this)">Spa</a> 1628 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1629 </div> 1630 <div class="nav-dropdown"> 1631 <ul> 1632 1633 </ul> 1634 </div> 1635 </div> 1636 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/eventos.html"> 1637 <div class="nav-item-header"> 1638 <a href="https://www.hotelspainfantedonjuanmanuel.es/eventos.html" class="nav-link" onclick="handleNavClick(event, this)">Eventos</a> 1639 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1640 </div> 1641 <div class="nav-dropdown"> 1642 <ul> 1643 1644 </ul> 1645 </div> 1646 </div> 1647 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/belmonte.html"> 1648 <div class="nav-item-header"> 1649 <a href="https://www.hotelspainfantedonjuanmanuel.es/belmonte.html" class="nav-link" onclick="handleNavClick(event, this)">Belmonte</a> 1650 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1651 </div> 1652 <div class="nav-dropdown"> 1653 <ul> 1654 1655 </ul> 1656 </div> 1657 </div> 1658 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/galeria.html"> 1659 <div class="nav-item-header"> 1660 <a href="https://www.hotelspainfantedonjuanmanuel.es/galeria.html" class="nav-link" onclick="handleNavClick(event, this)">GalerÃa</a> 1661 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1662 </div> 1663 <div class="nav-dropdown"> 1664 <ul> 1665 1666 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitaciones.html">
1666Habitaciones</a></li> 1667 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/restaurante.html">Restaurante</a></li> 1668 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/eventos.html">Eventos</a></li> 1669 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/spa.html">Spa</a></li> 1670 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/instalaciones.html">Instalaciones</a></li> 1671 </ul> 1672 </div> 1673 </div> 1674 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/contacto.html"> 1675 <div class="nav-item-header"> 1676 <a href="https://www.hotelspainfantedonjuanmanuel.es/contacto.html" class="nav-link" onclick="handleNavClick(event, this)">Contacto</a> 1677 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1678 </div> 1679 <div class="nav-dropdown"> 1680 <ul> 1681 1682 </ul> 1683 </div> 1684 </div> 1685 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/opiniones.html"> 1686 <div class="nav-item-header"> 1687 <a href="https://www.hotelspainfantedonjuanmanuel.es/opiniones.html" class="nav-link" onclick="handleNavClick(event, this)">Opiniones</a> 1688 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1689 </div> 1690 <div class="nav-dropdown"> 1691 <ul> 1692 1693 </ul> 1694 </div> 1695 </div> 1696 </nav> 1697 1698 <!-- Sección derecha --> 1699 <div class="right-section"> 1700 <div class="user-section"> 1701 <button class="user-icon-btn"> 1702 1703 </button> 1704 </div> 1705 1706 <div class="language-selector"> 1707 <button class="lang-btn" onclick="toggleLanguage()"> 1708 <span id="currentLang">Es</span> 1709 </button> 1710 <ul class="lang-dropdown" id="langDropdown"> 1711 <li class="sta-menus-air_languages-element"> 1712 <a href="https://www.hotelspainfantedonjuanmanuel.es/en/home.html" rel="alternate" hreflang="en" class="sta-menus-air_element-btn" 1713 tabindex="0">English</a> 1714</li> 1715<li class="sta-menus-air_languages-element"> 1716 <a href="https://www.hotelspainfantedonjuanmanuel.es/fr/home.html" rel="alternate" hreflang="fr" class="sta-menus-air_element-btn" 1717 tabindex="0">Français</a> 1718</li> 1719<li class="sta-menus-air_languages-element"> 1720 <a href="" rel="alternate" hreflang="es" class="sta-menus-air_element-btn sta-active" 1721 tabindex="0">Español</a> 1722</li> 1723 </ul> 1724 </div> 1725 1726 <!-- Botón Menú para mobile --> 1727 <button class="menu-text-btn" id="menuTextBtn" onclick="toggleSideMenu()"> 1728 <span>Menú </span> 1729 </button> 1730 1731 <button class="reservar-btn" onclick="handleReservar()">Reservar </button> 1732 </div> 1733 </div> 1734 </header> 1735 1736 <!-- MENà LATERAL (cuando hay overflow o mobile) --> 1737 <div class="side-menu-overlay" id="sideMenuOverlay" onclick="toggleSideMenu()"></div> 1738 <div class="side-menu" id="sideMenu"> 1739 <div class="side-menu-header"> 1740 <a href="https://www.hotelspainfantedonjuanmanuel.es/" class="logo"> 1741 <img src="/templates/cadenas/air/images/hotels/HTL00310/logo_infantedonjuan.jpg" alt="Palacio Del Infante Don Juan Manuel Hotel Spa"> 1742 </a> 1743 <div class="side-menu-actions" id="sideMenuActions"> 1744 <!-- Los botones se clonarán aquà dinámicamente en mobile --> 1745 </div> 1746 <button class="side-menu-close" onclick="toggleSideMenu()"></button> 1747 </div> 1748 <div class="side-menu-right"> 1749 <div class="side-menu-content"> 1750 1751 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/"> 1752 <div class="nav-item-header"> 1753 <a href="https://www.hotelspainfantedonjuanmanuel.es/" class="nav-link" onclick="handleNavClick(event, this)">Home</a> 1754 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1755 </div> 1756 <div class="nav-dropdown"> 1757 <ul> 1758 1759 </ul> 1760 </div> 1761 </div> 1762 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/habitaciones.html"> 1763 <div class="nav-item-header"> 1764 <a href="https://www.hotelspainfantedonjuanmanuel.es/habitaciones.html" class="nav-link" onclick="handleNavClick(event, this)">Habitaciones</a> 1765 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1766 </div> 1767 <div class="nav-dropdown"> 1768 <ul> 1769 1770 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-doble-o-twin-2-camas.html">
1770Habitación doble o twin (2 camas)</a></li> 1771 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-doble-uso-individual.html">Habitación doble uso individual</a></li> 1772 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-doble-con-vistas-al-castillo.html">Habitación doble con vistas al castillo</a></li> 1773 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-cuadruple.html">Habitación cuádruple</a></li> 1774 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/junior-suite.html">Junior Suite</a></li> 1775 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/suite.html">Suite</a></li> 1776 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-triple.html">Habitación triple</a></li> 1777 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitacion-superior-con-vistas.html">Habitación superior con vistas</a></li> 1778 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/suite-familiar.html">Suite familiar</a></li> 1779 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/estancia-en-doble-o-twin-desayuno-cena-y-concierto-tributo-a-jose-luis.html">Estancia en Doble o Twin + desayuno, cena y concierto tributo a Jose Luis Perales</a></li> 1780 </ul> 1781 </div> 1782 </div> 1783 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/restaurante.html"> 1784 <div class="nav-item-header"> 1785 <a href="https://www.hotelspainfantedonjuanmanuel.es/restaurante.html" class="nav-link" onclick="handleNavClick(event, this)">Restaurante</a> 1786 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1787 </div> 1788 <div class="nav-dropdown"> 1789 <ul> 1790 1791 </ul> 1792 </div> 1793 </div> 1794 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/promociones.html"> 1795 <div class="nav-item-header"> 1796 <a href="https://www.hotelspainfantedonjuanmanuel.es/promociones.html" class="nav-link" onclick="handleNavClick(event, this)">Promociones</a> 1797 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1798 </div> 1799 <div class="nav-dropdown"> 1800 <ul> 1801 1802 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/doble-relax-incluye-acceso-al-spa.html">Doble relax (incluye acceso al spa)</a></li> 1803 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/paquete-vino-y-relax.html">Paquete vino y relax</a></li> 1804 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/clientes-empresa.html">Clientes empresa</a></li> 1805 </ul> 1806 </div> 1807 </div> 1808 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/spa.html"> 1809 <div class="nav-item-header"> 1810 <a href="https://www.hotelspainfantedonjuanmanuel.es/spa.html" class="nav-link" onclick="handleNavClick(event, this)">Spa</a> 1811 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1812 </div> 1813 <div class="nav-dropdown"> 1814 <ul> 1815 1816 </ul> 1817 </div> 1818 </div> 1819 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/eventos.html"> 1820 <div class="nav-item-header"> 1821 <a href="https://www.hotelspainfantedonjuanmanuel.es/eventos.html" class="nav-link" onclick="handleNavClick(event, this)">Eventos</a> 1822 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1823 </div> 1824 <div class="nav-dropdown"> 1825 <ul> 1826 1827 </ul> 1828 </div> 1829 </div> 1830 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/belmonte.html"> 1831 <div class="nav-item-header"> 1832 <a href="https://www.hotelspainfantedonjuanmanuel.es/belmonte.html" class="nav-link" onclick="handleNavClick(event, this)">Belmonte</a> 1833 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1834 </div> 1835 <div class="nav-dropdown"> 1836 <ul> 1837 1838 </ul> 1839 </div> 1840 </div> 1841 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/galeria.html"> 1842 <div class="nav-item-header"> 1843 <a href="https://www.hotelspainfantedonjuanmanuel.es/galeria.html" class="nav-link" onclick="handleNavClick(event, this)">GalerÃa</a> 1844 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1845 </div> 1846 <div class="nav-dropdown"> 1847 <ul> 1848 1849 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitaciones.html">
1849Habitaciones</a></li> 1850 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/restaurante.html">Restaurante</a></li> 1851 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/eventos.html">Eventos</a></li> 1852 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/spa.html">Spa</a></li> 1853 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/instalaciones.html">Instalaciones</a></li> 1854 </ul> 1855 </div> 1856 </div> 1857 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/contacto.html"> 1858 <div class="nav-item-header"> 1859 <a href="https://www.hotelspainfantedonjuanmanuel.es/contacto.html" class="nav-link" onclick="handleNavClick(event, this)">Contacto</a> 1860 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1861 </div> 1862 <div class="nav-dropdown"> 1863 <ul> 1864 1865 </ul> 1866 </div> 1867 </div> 1868 <div class="nav-item " data-link="https://www.hotelspainfantedonjuanmanuel.es/opiniones.html"> 1869 <div class="nav-item-header"> 1870 <a href="https://www.hotelspainfantedonjuanmanuel.es/opiniones.html" class="nav-link" onclick="handleNavClick(event, this)">Opiniones</a> 1871 <button class="nav-toggle" onclick="toggleDropdown(this)"></button> 1872 </div> 1873 <div class="nav-dropdown"> 1874 <ul> 1875 1876 </ul> 1877 </div> 1878 </div> 1879 </div> 1880 <div class="side-menu-footer"> 1881 <a href="mailto:[email protected]" class="side-menu-contact">[email protected]</a> 1882 <a href="tel:+34 967 170 784" class="side-menu-contact">+34 967 170 784</a> 1883 </div> 1884 </div> 1885 </div> 1886 1887 <!-- BARRA INFERIOR MOBILE --> 1888 <div class="mobile-bottom-bar" id="mobileBottomBar"> 1889 <button class="mobile-contactar-btn" onclick="window.location.href='/contacto.html'"></button> 1890 <button class="reservar-btn mobile-reservar-btn" onclick="handleReservar()">Reservar </button> 1891 </div> 1892 1893</nav> 1894 1895<style> 1896 :root .site-nav { 1897 /* Theme Colors */ 1898 --header-bg-scrolled: var(--color-background, #fff); 1899 --header-shadow: rgba(0, 0, 0, 0.15); 1900 --side-menu-bg: #1a1a1a; 1901 1902 /* Text Colors */ 1903 --text-light: #fff; 1904 --text-dark: var(--color-text, #333333); 1905 1906 /* Overlay */ 1907 --overlay-bg: rgba(0, 0, 0, 0.7); 1908 --overlay-blur: blur(3px); 1909 } 1910 1911 .site-nav *:focus:not(:focus-visible) {outline: none;} 1912 1913 /* FUENTES */ 1914 /* Elementos del menú */ 1915 .site-nav .nav-link, .site-nav .side-menu-link {font-family: var(--font-body);} 1916 /* Subelementos del menú */ 1917 .site-nav .nav-dropdown a, .site-nav .side-menu-children a {font-family: var(--font-body);} 1918 /* Botones y enlaces del header */ 1919 .site-nav .menu-text-btn, .site-nav .reservar-btn, .site-nav .lang-btn, .site-nav .side-menu-contact, .site-nav #langDropdown .sta-menus-air_element-btn {font-family: var(--font-body);} 1920 1921 /* WHITE ICON */ 1922 .site-nav #header:not(.scrolled) .header-content .logo img {filter: brightness(0) invert(1);} 1923 .site-nav #header .header-content .logo img {transition: transform 0.3s ease, filter 0.3s ease;} 1924 .site-nav #header .header-content .hamburger-btn, .site-nav #header .header-content .main-nav {transition: margin 0.3s ease;} 1925 1926 /* BIG ICON */ 1927 body:not(:has(main .cabecera-air.version-3)):not(:has(main .cabecera-air.version-4)) .site-nav.big-logo .header.hv-2:not(.scrolled) {.header-left .logo img {transform: scale(1.5) translateY(15px) translateX(15px);}.header-left .hamburger-btn{margin-left: 50px}.main-nav{margin-left: 30px}} 1928 1929 /* NAV */ 1930 .site-nav {position: relative;z-index: 499;a {text-underline-offset: 5px;}} 1931 1932 /* mantener comportamiento fixed de cada bloque */ 1933 .site-nav > .header, .site-nav > .side-menu, .site-nav > .side-menu-overlay, .site-nav > .mobile-bottom-bar {position: fixed;} 1934
1935 /* Background-color */ 1936 :root .site-nav.background-color { 1937 --header-bg-scrolled: #ccbba2; 1938 } 1939 1940 /* Font-white */ 1941 :root .site-nav.font-white { 1942 --text-dark: #fff; 1943 --text-light: #333333; 1944 --header-shadow: rgba(255, 255, 255, 0.15); 1945 } 1946 1947 /* ==================== HEADER PRINCIPAL ==================== */ 1948 .sta-fixed .site-nav .header {position: fixed !important;} 1949 .site-nav .header {position: absolute;top: 0;left: 0;right: 0;z-index: 497;transition: background-color 0.2s ease, box-shadow 0.2s ease;} 1950 1951 @media (max-width: 800px) { 1952 .site-nav .header {z-index: 500;} 1953 } 1954 .site-nav .header.scrolled {background-color: var(--header-bg-scrolled);box-shadow: 0 2px 10px var(--header-shadow);} 1955 .site-nav:has(.side-menu.active) .header {box-shadow: unset;} 1956 .site-nav .header-content {max-width: 1600px;margin: 0 auto;padding: 20px 30px;display: flex;align-items: center;gap: 40px;} 1957 1958 /* HEADER LEFT - Logo + Hamburguesa */ 1959 .site-nav .header-left {display: flex;align-items: center;gap: 20px;flex-shrink: 0;} 1960 .site-nav .logo {cursor: pointer;display: block;} 1961 .site-nav .logo img {height: 50px;width: auto;} 1962 1963 /* Hamburguesa - oculta por defecto en desktop */ 1964 .site-nav .hamburger-btn {display: none;background: none;border: none;cursor: pointer;width: 24px;height: 18px;position: relative;padding: 0;} 1965 .site-nav .hamburger-btn::before, .site-nav .hamburger-btn::after {content: '';position: absolute;left: 0;width: 100%;height: 2px;background: var(--text-light);transition: background-color 0.2s ease, box-shadow 0.2s ease;} 1966 .site-nav .hamburger-btn::before {top: 0;box-shadow: 0 8px 0 var(--text-light);} 1967 .site-nav .hamburger-btn::after {bottom: 0;} 1968 .site-nav .header.scrolled .hamburger-btn::before, .site-nav .header.scrolled .hamburger-btn::after {background-color: var(--text-dark);} 1969 .site-nav .header.scrolled .hamburger-btn::before {box-shadow: 0 8px 0 var(--text-dark);} 1970 1971 /* Mostrar hamburguesa cuando hay overflow */ 1972 .site-nav.nav-overflow .hamburger-btn {display: block;} 1973 .site-nav.nav-overflow .main-nav {display: none;} 1974 1975 /* ==================== NAVEGACIÃN PRINCIPAL DESKTOP ==================== */ 1976 .site-nav .main-nav {display: flex;align-items: center;gap: 5px;flex: 1;} 1977 .site-nav .nav-item {position: relative;display: flex;flex-direction: column;align-items: flex-start;} 1978 .site-nav .nav-item-header {display: flex;align-items: center;flex-shrink: 0;} 1979 .site-nav .nav-link, .site-nav .nav-link:visited {color: var(--text-light);text-decoration: none;font-size: 15px;padding: 10px 15px;transition: color 0.3s ease, opacity 0.3s ease;white-space: nowrap;} 1980 .site-nav .header.scrolled .nav-link {color: var(--text-dark);} 1981 1982 /* Toggle para dropdown - solo visible si tiene hijos */ 1983 .site-nav .nav-toggle {display: none;background: none;border: none;cursor: pointer;padding: 10px 5px;color: var(--text-light);transition: transform 0.3s ease;} 1984 .site-nav .nav-toggle::after {content: '\e013';font-family: 'Icons';font-size: 10px;line-height: 1;} 1985 .site-nav .header.scrolled .nav-toggle::after {color: var(--text-dark);} 1986 .site-nav .nav-item.sta-child .nav-toggle {display: flex;align-items: center;} 1987 .site-nav .nav-item.expanded .nav-toggle {transform: rotate(180deg);} 1988 1989 /* Hover en desktop para mostrar dropdown */ 1990 @media (min-width: 801px) { 1991 .site-nav:not(.nav-overflow) .nav-item.sta-child:hover {/* Simular expanded sin la clase */} 1992 .site-nav:not(.nav-overflow) .nav-item.sta-child:hover .nav-dropdown {opacity: 1;visibility: visible;transform: translateY(0);} 1993 .site-nav .nav-item.sta-child:hover .nav-toggle {transform: rotate(180deg);} 1994 .site-nav:not(.nav-overflow) .nav-item.sta-child a {padding-right: 0;} 1995 .site-nav.nav-overflow a:hover {color: var(--text-light);} 1996 .site-nav.nav-overflow .nav-item.sta-child:not(.expanded):hover .nav-link, .site-nav.nav-overflow .nav-item.sta-child:not(.expanded):hover .nav-toggle {color: var(--text-light) !important;} 1997 } 1998 .site-nav .nav-item.expanded .nav-link {color: color-mix(in srgb, var(--color-principal) 70%, white) !important;text-decoration: underline;text-underline-offset: 5px;} 1999 .site-nav .header:not(.scrolled) {.nav-item .nav-item-header a:hover, .nav-item .nav-item-header a, .nav-item.sta-child:hover .nav-toggle, .nav-item.sta-child .nav-toggle, .lang-btn, .reservar-btn, .user-icon-btn {color: #fff !important;border-color: #fff !important;}.user-icon-btn .injected-svg[data-src*="briefCase"] * {stroke: #fff !important;}.user-icon-btn .injected-svg:not([data-src*="briefCase"]) * {fill: #fff !important;}.nav-item.expanded .nav-link, .nav-item.expanded .nav-toggle::after {color: #fff !important}} 2000 .site-nav .nav-item.expanded .nav-toggle::after {color: color-mix(in srgb, var(--color-principal) 70%, white) !important;} 2001 2002 /* Dropdown */ 2003 .site-nav .nav-dropdown {position: absolute;top: 100%;left: 0;margin-top: 0;background: var(--header-bg-scrolled);border-radius: var(--radius-elements);box-shadow: 0 4px 30px rgba(0, 0, 0, 0.15);opacity: 0;visibility: hidden;transform: translateY(-10px);transition: all 0.3s ease;min-width: 220px;z-index: 500;} 2004 .site-nav .nav-item.expanded .nav-dropdown {opacity: 1;visibility: visible;transform: translateY(0);} 2005 .site-nav .nav-dropdown ul {list-style: none;} 2006 .site-nav .nav-dropdown li {border-bottom: 1px solid #e5e5e5;} 2007 .site-nav .nav-dropdown li:last-child {border-bottom: none;} 2008 .site-nav .nav-dropdown a {display: block;padding: 15px 25px;color: var(--text-dark);text-decoration: none;font-size: 15px;transition: color 0.3s ease, background-color 0.3s ease;} 2009 .site-nav:not(.background-color) .nav-dropdown a:hover {color: var(--color-principal);background-color: rgba(0, 0, 0, 0.02);} 2010 2011 /* Dropdown dentro del side-menu: comportamiento inline sin modal */ 2012 .site-nav .side-menu .nav-dropdown {position: static !important;background: transparent !important;border-radius: 0 !important;box-shadow: none !important;opacity: 1 !important;visibility: visible !important;transform: none !important;margin: 0 !important;padding: 0 !important;min-width: auto !important;max-height: 0;overflow: hidden;transition: none !important;} 2013 .site-nav .side-menu .nav-item.expanded .nav-dropdown {max-height: 1000px;padding: 10px 0 10px 20px !important;} 2014 .site-nav .side-menu .nav-dropdown ul {background: transparent !important;padding: 0 !important;margin: 0 !important;} 2015 .site-nav .side-menu .nav-dropdown li {border: none !important;background: transparent !important;margin-bottom: 12px;} 2016 .site-nav .side-menu .nav-dropdown li:last-child {margin-bottom: 0;} 2017 .site-nav .side-menu .nav-dropdown a {color: color-mix(in srgb, var(--text-light) 90%, var(--text-dark)) !important;background: transparent !important;padding: 5px !important;font-size: 16px;font-weight: 300;} 2018 .site-nav .side-menu .nav-dropdown a:hover {color: white !important;background: transparent !important;} 2019 2020 /* Ocultar toggle si no tiene hijos */ 2021 .site-nav .nav-item:not(.sta-child) .nav-toggle {display: none;} 2022 .site-nav .nav-item:not(.sta-child) .nav-dropdown {display: none;} 2023 2024 /* ==================== SECCIÃN DERECHA ==================== */ 2025 .site-nav .right-section {display: flex;align-items: center;gap: 15px;flex-shrink: 0;margin-left: auto;} 2026 2027 /* USER ICON */ 2028 .site-nav .user-section {position: relative;display: flex;align-items: center;} 2029 .site-nav .user-icon-btn:has( > div:empty) {display: none;} 2030 .site-nav .user-icon-btn {background: none;border: none;cursor: pointer;padding: 5px;display: flex;align-items: center;justify-content: center;transition: opacity 0.3s ease;border-radius: var(--radius-buttons);width: 38px;height: 38px;} 2031 .site-nav .user-icon-btn .injected-svg[data-src*="briefCase"] * {stroke: var(--text-light) !important;} 2032 .site-nav .header.scrolled .user-icon-btn .injected-svg[data-src*="briefCase"] * {stroke: var(--text-dark) !important;} 2033 .site-nav .user-icon-btn .injected-svg:not([data-src*="briefCase"]) * {fill: var(--text-light) !important;} 2034 .site-nav .header.scrolled .user-icon-btn .injected-svg:not([data-src*="briefCase"]) * {fill: var(--text-dark) !important;} 2035 .site-nav .header.scrolled .user-icon-btn {border-color: var(--text-dark);} 2036 2037 /* SELECTOR DE IDIOMA */ 2038 .site-nav .language-selector {position: relative;} 2039 .site-nav .lang-btn {display: flex;align-items: center;gap: 8px;background: none;color: var(--text-light);font-size: 14px;cursor: pointer;transition: opacity 0.3s ease;border-radius: var(--radius-buttons);padding: 10px;height: 38px;} 2040 .site-nav .header.scrolled .lang-btn {color: var(--text-dark);border-color: var(--text-dark);} 2041 .site-nav .lang-btn:hover {opacity: 0.7;} 2042 .site-nav .lang-btn::before {content: '\e004';font-size: 18px;font-family: 'Icons';line-height: 1;} 2043 .site-nav .lang-btn::after {content: '\e013';font-size: 10px;line-height: 1;font-family: 'Icons';} 2044 .site-nav .lang-dropdown {position: absolute;top: 100%;right: 0;margin-top: 10px;background: var(--header-bg-scrolled);border-radius: var(--radius-elements);box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);overflow: hidden;opacity: 0;visibility: hidden;transform: translateY(-10px);transition: all 0.3s ease;min-width: 150px;padding: 0;list-style: none;z-index: 500;} 2045 .site-nav .lang-dropdown.active {opacity: 1;visibility: visible;transform: translateY(0);} 2046 .site-nav #langDropdown .sta-menus-air_languages-element {list-style: none !important;padding: 0 !important;} 2047 .site-nav #langDropdown .sta-menus-air_element-btn {display: block;padding: 15px 20px;cursor: pointer;border-bottom: 1px solid #e0e0e0;transition: background-color 0.2s ease;color: var(--text-dark);font-size: 15px;text-decoration: none;font-weight: 400;position: relative;border-right: unset !important;border-left: unset !important;border-top: unset !important;text-align: start !important;} 2048 .site-nav #langDropdown .sta-menus-air_languages-element:last-child .sta-menus-air_element-btn {border-bottom: none;} 2049 .site-nav #langDropdown .sta-menus-air_element-btn:hover {background-color: color-mix(in srgb, var(--header-bg-scrolled) 92%, black);} 2050 .site-nav #langDropdown .sta-menus-air_element-btn.sta-active {font-weight: bold;} 2051 .site-nav #langDropdown .sta-menus-air_languages-element .sta-menus-air_element-btn.sta-active {background: transparent !important;pointer-events: none;} 2052 .site-nav #langDropdown .sta-menus-air_languages-element .sta-menus-air_element-btn {text-transform: lowercase !important;} 2053 .site-nav #langDropdown .sta-menus-air_languages-element .sta-menus-air_element-btn::first-letter {text-transform: uppercase !important;} 2054 .site-nav a.sta-menus-air_element-btn.sta-active:after {position: absolute;right: 20px;content: "";width: 4px;height: 4px;font-size: 62px;border-radius: 100%;line-height: 0;top: calc(50% - 4px);background: var(--text-dark);} 2055 .site-nav #langDropdown .sta-menus-air_element-btn.sta-active:before, .site-nav #langDropdown .sta-menus-air_languages-element .sta-menus-air_element-btn:before {content: '' !important;} 2056 2057 /* BOTÃN RESERVAR */ 2058 .site-nav .header:not(.scrolled) .reservar-btn {background: #ffffff59;backdrop-filter: blur(3px);} 2059 .site-nav .reservar-btn {background: var(--color-principal);color: var(--color-text-buttons);border: none;padding-inline: 25px;border-radius: var(--radius-buttons);font-size: 14px;cursor: pointer;transition: opacity 0.3s ease;font-weight: 500;height: 40px;} 2060 .site-nav .reservar-btn:hover {opacity: 0.9;} 2061 2062 /* ==================== BOTÃN MENÃ MOBILE ==================== */ 2063 .site-nav .menu-text-btn {display: none;align-items: center;gap: 8px;background: var(--header-bg-scrolled);box-shadow: 0 0px 10px 4px var(--header-shadow);color: var(--text-dark);font-size: 14px;cursor: pointer;border-radius: var(--radius-buttons);padding: 0 15px;height: 38px;transition: all 0.3s ease;} 2064 .site-nav .menu-text-btn::after {content: '';display: none;} 2065 .site-nav .menu-text-btn.active::after {content: '\e001';font-family: 'Icons';font-size: 12px;line-height: 1;display: block;} 2066 .site-nav.background-color .menu-text-btn {background: var(--color-principal);* {color:#fff;}} 2067 .site-nav.background-color .menu-text-btn:after {color: #fff;} 2068 2069 /* ==================== MENÃ LATERAL ==================== */ 2070 .site-nav .side-menu-overlay {position: fixed;top: 0;left: 0;right: 0;bottom: 0;background: rgba(0, 0, 0, 0.5);z-index: 498;opacity: 0;visibility: hidden;transition: opacity 0.2s ease-out, visibility 0.2s ease-out;} 2071 2072 @media (max-width: 800px) { 2073 .site-nav .side-menu-overlay {top: 72px;} 2074 .site-nav .side-menu .nav-link, .site-nav .side-menu .nav-dropdown a, .site-nav .nav-toggle {color: var(--text-dark);} 2075 .site-nav .side-menu .nav-dropdown a {color: color-mix(in srgb, var(--text-dark) 90%, var(--text-light)) !important;} 2076 .site-nav .side-menu .nav-dropdown a:hover {color: color-mix(in srgb, var(--text-dark) 80%, var(--text-light)) !important;} 2077 .site-nav .nav-link, .site-nav .nav-link:visited {padding: 10px 15px 10px 0;} 2078 .site-nav .nav-item {padding-block: 10px;} 2079 .site-nav .side-menu-content > .nav-item:not(:last-child) {border-bottom: 1px solid color-mix(in srgb, var(--text-dark) 50%, transparent);} 2080 } 2081 .site-nav .side-menu-overlay.active {opacity: 1;visibility: visible;} 2082 .site-nav .side-menu {position: fixed;top: 0;left: 0;bottom: 0;width: 100%;max-width: 700px;background: var(--side-menu-bg);z-index: 499;transform: translateX(-100%);transition: transform 0.4s ease;display: flex;flex-direction: row;} 2083 .site-nav .side-menu.active {transform: translateX(0);padding-block: 15px;} 2084 2085 /* Header del side menu - columna izquierda */ 2086 .site-nav .side-menu-header {width: 300px;height: fit-content;flex-shrink: 0;display: flex;flex-direction: row;align-items: start;justify-content: space-around;padding: 30px;} 2087 .site-nav .side-menu-header .logo {/* margin-bottom: 20px; */align-self: center;max-width: 80%;} 2088 .site-nav .side-menu-header .logo img {height: 70px;filter: brightness(0) invert(1);max-width: 100%;} 2089 .site-nav .side-menu-actions {display: none;} 2090 .site-nav .side-menu-close {background: none;border: none;cursor: pointer;width: 30px;height: 30px;position: relative;display: flex;align-self: center;justify-content: center;margin-top: 0;}
2091 .site-nav .side-menu-close::after {content: '\e001';font-family: 'Icons';font-size: 17px;color: white;line-height: 1;} 2092 2093 /* Columna derecha - contenedor para content y footer */ 2094 .site-nav .side-menu-right {flex: 1;display: flex;flex-direction: column;height: 100%;overflow: hidden;border-left: 1px solid var(--text-light);} 2095 .site-nav .side-menu-right .nav-link {font-size: 20px;white-space: normal;overflow-wrap: break-word;word-break: break-word;} 2096 .site-nav .side-menu-content {height: 80%;flex-shrink: 0;overflow-y: auto;overflow-x: hidden;padding: 50px 80px;display: block;} 2097 .site-nav .side-menu-item {margin-bottom: 5px;/* Layout columna: header arriba, children abajo */display: flex;flex-direction: column;position: relative;} 2098 .site-nav .side-menu-item:last-child {margin-bottom: 0;} 2099 .site-nav .side-menu-item-header {display: flex;align-items: center;justify-content: space-between;/* Mantener header en su posición fija */flex-shrink: 0;} 2100 .site-nav .side-menu-link {flex: 1;color: white;text-decoration: none;font-size: 22px;font-weight: 400;padding: 12px 0;display: block;transition: color 0.3s ease;} 2101 .site-nav .side-menu-link:hover {color: var(--color-principal);} 2102 .site-nav .side-menu-toggle {display: none;background: none;border: none;cursor: pointer;width: 40px;height: 40px;align-items: center;justify-content: center;color: white;transition: transform 0.3s ease;} 2103 .site-nav .side-menu-toggle::after {content: '\e013';font-family: 'Icons';font-size: 12px;line-height: 1;} 2104 .site-nav .side-menu-item.sta-child .side-menu-toggle {display: flex;} 2105 .site-nav .side-menu-item.expanded .side-menu-toggle {transform: rotate(180deg);} 2106 .site-nav .side-menu-item.expanded .side-menu-link {color: var(--color-principal);text-decoration: underline;text-underline-offset: 5px;} 2107 .site-nav .side-menu-children {list-style: none;padding: 0;margin: 0;/* INLINE SUBMENU: posición estática, empuja contenido hacia abajo */position: static !important;display: flex;flex-direction: column;max-height: 0;overflow: hidden;opacity: 0;transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.4s ease;background: transparent !important;box-shadow: none !important;border: none !important;border-radius: 0 !important;width: 100%;} 2108 .site-nav .side-menu-item.expanded .side-menu-children {max-height: 1000px;opacity: 1;padding: 15px 0 15px 20px;background: transparent !important;} 2109 .site-nav .side-menu-children li {margin-bottom: 12px;padding: 0;background: transparent !important;border: none !important;display: block;width: 100%;} 2110 .site-nav .side-menu-children li:last-child {margin-bottom: 0;} 2111 .site-nav .side-menu-children a {color: rgba(255, 255, 255, 0.7);text-decoration: none;font-size: 16px;font-weight: 300;transition: color 0.3s ease;display: block;padding: 5px 0;background: transparent !important;border: none !important;} 2112 .site-nav .side-menu-children a:hover {color: white;background: transparent !important;} 2113 .site-nav .side-menu-footer {height: 20%;flex-shrink: 0;padding: 30px 90px;display: flex;flex-direction: column;justify-content: center;} 2114 .site-nav .side-menu-contact {display: block;color: rgba(255, 255, 255, 0.7);text-decoration: none;font-size: 14px;margin-bottom: 10px;transition: color 0.3s ease;} 2115 .site-nav .side-menu-contact:last-child {margin-bottom: 0;} 2116 .site-nav .side-menu-contact:hover {color: white;} 2117 2118 /* ==================== MOBILE STYLES ==================== */ 2119 @media (max-width: 800px) { 2120 .site-nav .header-content {padding: 15px 20px;gap: 15px;} 2121 .site-nav .logo img {height: 40px;} 2122 2123 /* Ocultar hamburguesa en mobile - usar botón Menú */ 2124 .site-nav .hamburger-btn {display: none !important;} 2125 2126 /* Mostrar botón Menú en mobile */ 2127 .site-nav .menu-text-btn {display: flex;} 2128 2129 /* Ocultar navegación principal en mobile */ 2130 .site-nav .main-nav {display: none !important;} 2131 2132 /* Ocultar reservar en header en mobile */ 2133 .site-nav .header-content .reservar-btn {display: none;} 2134 .site-nav .right-section {gap: 10px;} 2135 .site-nav .lang-btn {width: 38px;height: 38px;justify-content: center;padding: 0;} 2136 .site-nav .lang-btn:before, .site-nav .lang-btn:after {content: '';} 2137 2138 /* Side menu en mobile - layout vertical */ 2139 .site-nav .side-menu {max-width: 100%;flex-direction: column;background: var(--header-bg-scrolled);top: 73px;z-index: 498;transform: translateX(0);opacity: 0;visibility: hidden;transition: opacity 0.2s ease-out, visibility 0.2s ease-out;} 2140 .site-nav .side-menu.active {opacity: 1;visibility: visible;} 2141 .site-nav .side-menu-header {display: none;} 2142 2143 /* En mobile, side-menu-right ocupa todo */ 2144 .site-nav .side-menu-right {width: 100%;border-left: unset !important;} 2145 2146 /* Resetear transform para mobile */ 2147 .site-nav .side-menu {left: 0 !important;} 2148 .site-nav .side-menu-content {padding: 30px 25px;height: 100%;} 2149 .site-nav .side-menu-footer {height: 20%;background: #f5f5f5;} 2150 .site-nav .side-menu-link {color: var(--text-dark);font-size: 20px;padding: 15px 0;border-bottom: 1px solid rgba(0, 0, 0, 0.1);} 2151 .site-nav .side-menu-item:last-child .side-menu-link {border-bottom: none;} 2152 .site-nav .side-menu-item.expanded .side-menu-link {border-bottom: none;color: var(--color-principal);text-decoration: underline;text-underline-offset: 5px;} 2153 2154 .site-nav .side-menu-children {/* MOBILE INLINE: sin modal, sin background, solo hijos debajo */position: static !important;background: transparent !important;border: none !important;box-shadow: none !important;border-radius: 0 !important;} 2155 .site-nav .side-menu-item.expanded .side-menu-children {padding: 5px 0 15px 15px;background: transparent !important;} 2156 .site-nav .side-menu-item:last-child .side-menu-children {border-bottom: none;} 2157 .site-nav .side-menu-children a {color: rgba(0, 0, 0, 0.6);background: transparent !important;} 2158 .site-nav .side-menu-children a:hover {color: var(--text-dark);background: transparent !important;} 2159 .site-nav .side-menu-children li {margin-bottom: 15px;background: transparent !important;} 2160 .site-nav .side-menu-toggle::after {color: var(--text-dark);} 2161 .site-nav .side-menu-footer {display: none;} 2162 2163 /* BARRA INFERIOR MOBILE */ 2164 .site-nav .mobile-bottom-bar {position: fixed;bottom: 20px;left: 20px;right: 20px;background: rgba(0, 0, 0, 0.3);backdrop-filter: blur(30px);padding: 12px;display: flex;align-items: center;gap: 8px;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);border-radius: calc(var(--radius-buttons) + 12px);z-index: 497;transition: opacity 0.3s ease, visibility 0.3s ease;} 2165 .site-nav .mobile-bottom-bar.hidden {opacity: 0;visibility: hidden;} 2166 .site-nav .mobile-contactar-btn {width: 48px;
2166height: 48px;background: white;border: none;border-radius: var(--radius-buttons);display: flex;align-items: center;justify-content: center;cursor: pointer;flex-shrink: 0;} 2167 .site-nav .mobile-contactar-btn::before {content: '\e07d';font-size: 22px;line-height: 1;font-family: 'Icons';color: #000;} 2168 .site-nav .mobile-reservar-btn {flex: 1;font-size: 20px;height: 48px;} 2169 } 2170 2171 @media (min-width: 801px) { 2172 .site-nav .mobile-bottom-bar {display: none !important;} 2173 } 2174 2175 /* ==================== UTILIDADES ==================== */ 2176 .site-nav .loginStatesWrapper {z-index: 498 !important;} 2177 .site-nav .user-icon-btn:not(:has(#cms-login)) {display: none !important;} 2178 .site-nav .user-icon-btn:before {content: '';height: 40%;background: #cdcdcd;width: 1px;position: absolute;right: -8px;} 2179 .site-nav .user-icon-btn .injected-svg {transform: scale(0.8);} 2180 main.global-container.sta-init-space:not(.sta-dispo):not(.sta-mainDispo) {padding-top: 94px !important;} 2181 .tgl-menus-air.sta-dispo .site-nav .header {position: relative !important;} 2182 .tgl-menus-air.sta-dispo .mobile-bottom-bar {display: none !important;} 2183</style> 2184
2185<script> 2186 // Scroll effect 2187 window.addEventListener('scroll', function() { 2188 const header = document.getElementById('header'); 2189 const mainContainer = document.querySelector('main.global-container'); 2190 const secondChild = mainContainer ? mainContainer.children[1] : null; 2191 const hasSpecialHero = secondChild && (secondChild.classList.contains('hero-container') || secondChild.classList.contains('tgl-cover-air') || secondChild.classList.contains('cabecera-air') || secondChild.classList.contains('thanks-module')); 2192 const hasDispoMenu = document.querySelector('.tgl-menus-air.sta-dispo'); 2193 2194 if (hasDispoMenu) { 2195 header.classList.add('scrolled'); 2196 } else if (!hasSpecialHero) { 2197 header.classList.add('scrolled'); 2198 } else if (window.scrollY > 50) { 2199 header.classList.add('scrolled'); 2200 } else { 2201 header.classList.remove('scrolled'); 2202 } 2203 }); 2204 2205 // Verificar overflow de navegación 2206 function checkNavOverflow() { 2207 const nav = document.querySelector('.site-nav'); 2208 const mainNav = document.getElementById('mainNav'); 2209 const headerContent = document.querySelector('.header-content'); 2210 const rightSection = document.querySelector('.right-section'); 2211 const headerLeft = document.querySelector('.header-left'); 2212 2213 if (!mainNav || window.innerWidth <= 800) { 2214 nav.classList.remove('nav-overflow'); 2215 return; 2216 } 2217 2218 // Temporalmente mostrar nav para medir 2219 nav.classList.remove('nav-overflow'); 2220 2221 // Calcular ancho total de los nav-items considerando el gap de 5px 2222 const navItems = Array.from(mainNav.querySelectorAll('.nav-item')); 2223 const navWidth = navItems.reduce((total, item) => total + item.offsetWidth, 0) + (navItems.length - 1) * 5; 2224 2225 // Agregar margen adicional para colapsar antes y evitar scroll horizontal 2226 const availableWidth = headerContent.offsetWidth - headerLeft.offsetWidth - rightSection.offsetWidth - 160; 2227 2228 if (navWidth >= availableWidth) { 2229 nav.classList.add('nav-overflow'); 2230 } 2231 } 2232 2233 // Toggle side menu 2234 function toggleSideMenu() { 2235 const sideMenu = document.getElementById('sideMenu'); 2236 const overlay = document.getElementById('sideMenuOverlay'); 2237 const bottomBar = document.getElementById('mobileBottomBar'); 2238 const menuBtn = document.getElementById('menuTextBtn'); 2239 const header = document.getElementById('header'); 2240 const isActive = sideMenu.classList.contains('active'); 2241 2242 sideMenu.classList.toggle('active'); 2243 overlay.classList.toggle('active'); 2244 document.body.style.overflow = sideMenu.classList.contains('active') ? 'hidden' : ''; 2245 2246 // Toggle menu button state 2247 if (menuBtn) { 2248 menuBtn.classList.toggle('active'); 2249 } 2250 2251 // En mobile, agregar clase scrolled al header cuando el menú está activo 2252 if (window.innerWidth <= 800 && header) { 2253 if (sideMenu.classList.contains('active')) { 2254 header.classList.add('scrolled'); 2255 } else { 2256 // Solo quitar scrolled si el usuario no ha hecho scroll 2257 if (window.scrollY <= 50) { 2258 const mainContainer = document.querySelector('main.global-container'); 2259 const secondChild = mainContainer ? mainContainer.children[1] : null; 2260 const hasSpecialHero = secondChild && (secondChild.classList.contains('hero-container') || secondChild.classList.contains('tgl-cover-air') || secondChild.classList.contains('cabecera-air') || secondChild.classList.contains('thanks-module')); 2261 2262 if (hasSpecialHero) { 2263 header.classList.remove('scrolled'); 2264 } 2265 } 2266 } 2267 2268 if (bottomBar) { 2269 if (sideMenu.classList.contains('active')) { 2270 bottomBar.classList.add('hidden'); 2271 } else { 2272 bottomBar.classList.remove('hidden'); 2273 } 2274 } 2275 } 2276 } 2277 2278 // Toggle dropdown desktop 2279 function toggleDropdown(button) { 2280 const navItem = button.closest('.nav-item'); 2281 const wasExpanded = navItem.classList.contains('expanded'); 2282 2283 // Cerrar todos los dropdowns 2284 document.querySelectorAll('.nav-item.expanded').forEach(item => { 2285 item.classList.remove('expanded'); 2286 }); 2287 2288 // Si no estaba expandido, expandir 2289 if (!wasExpanded) { 2290 navItem.classList.add('expanded'); 2291 } 2292 } 2293 2294 // Handle nav link click 2295 function handleNavClick(event, element) { 2296 const navItem = element.closest('.nav-item'); 2297 const link = element.getAttribute('href'); 2298 const hasChildren = navItem.classList.contains('sta-child'); 2299 2300 // Si tiene URL, navegar 2301 if (link && link !== '' && link !== '#' && link !== 'javascript:void0') { 2302 return; // Dejar que el enlace funcione 2303 } 2304 2305 // Si no tiene URL pero tiene hijos, expandir 2306 if (hasChildren) { 2307 event.preventDefault(); 2308 const toggleBtn = navItem.querySelector('.nav-toggle'); 2309 if (toggleBtn) { 2310 toggleDropdown(toggleBtn); 2311 } 2312 } 2313 } 2314 2315 // Toggle side submenu 2316 function toggleSideSubmenu(button) { 2317 const menuItem = button.closest('.side-menu-item'); 2318 const wasExpanded = menuItem.classList.contains('expanded'); 2319 2320 // Cerrar todos los submenús 2321 document.querySelectorAll('.side-menu-item.expanded').forEach(item => { 2322 item.classList.remove('expanded'); 2323 }); 2324 2325 // Si no estaba expandido, expandir 2326 if (!wasExpanded) { 2327 menuItem.classList.add('expanded'); 2328 } 2329 } 2330 2331 // Handle side menu link click 2332 function handleSideMenuClick(event, element) { 2333 const menuItem = element.closest('.side-menu-item'); 2334 const link = element.getAttribute('href'); 2335 const hasChildren = menuItem.classList.contains('sta-child'); 2336 2337 // Si tiene URL, navegar 2338 if (link && link !== '' && link !== '#' && link !== 'javascript:void0') { 2339 return; 2340 } 2341 2342 // Si no tiene URL pero tiene hijos, expandir 2343 if (hasChildren) { 2344 event.preventDefault(); 2345 const toggleBtn = menuItem.querySelector('.side-menu-toggle'); 2346 if (toggleBtn) { 2347 toggleSideSubmenu(toggleBtn); 2348 } 2349 } 2350 } 2351 2352 // Toggle language dropdown 2353 function toggleLanguage() { 2354 const dropdown = document.getElementById('langDropdown'); 2355 if (dropdown) { 2356 dropdown.classList.toggle('active'); 2357 } 2358 } 2359 2360 // Helper para toggle de idioma en elementos clonados 2361 function toggleLanguageClone(event) { 2362 event.stopPropagation(); 2363 const button = event.currentTarget; 2364 const dropdown = button.nextElementSibling; 2365 if (dropdown) { 2366 dropdown.classList.toggle('active'); 2367 } 2368 } 2369 2370 // Función para limpiar items sin clase sta-child 2371 function checkAndCleanMenuItems() { 2372 document.querySelectorAll('.nav-item, .side-menu-item').forEach(item => { 2373 if (!item.classList.contains('sta-child')) { 2374 const ul = item.querySelector('ul, .nav-dropdown ul, .side-menu-children'); 2375 if (ul) { 2376 ul.querySelectorAll('li').forEach(li => li.remove()); 2377 } 2378 } 2379 }); 2380 } 2381 2382 // Inicializar 2383 document.addEventListener('DOMContentLoaded', function() { 2384 // Idioma activo 2385 let currentLangCode = 'Es'; 2386 let foundLang = false; 2387 2388 // Intentar obtener el idioma del atributo lang del HTML 2389 const htmlLang = document.documentElement.getAttribute('lang'); 2390 if (htmlLang) { 2391 currentLangCode = htmlLang; 2392 foundLang = true; 2393 } 2394 2395 // Si no se encontró en el HTML, buscar el elemento activo 2396 if (!foundLang) { 2397 const activeLink = document.querySelector('.sta-menus-air_languages-element .sta-menus-air_element-btn.sta-active'); 2398 if (activeLink) { 2399 const activeLang = activeLink.getAttribute('hreflang'); 2400 if (activeLang) { 2401 currentLangCode = activeLang; 2402 } 2403 } 2404 } 2405 2406 // Formatear: primera letra mayúscula, resto minúsculas 2407 currentLangCode = currentLangCode.charAt(0).toUpperCase() + currentLangCode.slice(1).toLowerCase(); 2408 2409 document.getElementById('currentLang').textContent = currentLangCode; 2410 2411 // Limpiar items sin hijos 2412 checkAndCleanMenuItems();
2413 2414 // Verificar overflow 2415 checkNavOverflow(); 2416 }); 2417 2418 // Resize listener 2419 window.addEventListener('resize', function() { 2420 checkNavOverflow(); 2421 }); 2422 2423 // Cerrar dropdowns al hacer clic fuera 2424 document.addEventListener('click', function(e) { 2425 // Cerrar dropdown de idioma 2426 const langSelector = document.querySelector('.language-selector'); 2427 if (langSelector && !langSelector.contains(e.target)) { 2428 document.getElementById('langDropdown').classList.remove('active'); 2429 } 2430 2431 // Cerrar dropdowns de navegación 2432 if (!e.target.closest('.nav-item')) { 2433 document.querySelectorAll('.nav-item.expanded').forEach(item => { 2434 item.classList.remove('expanded'); 2435 }); 2436 } 2437 }); 2438 2439 // Handle Reservar button 2440 function handleReservar() { 2441 const element = document.getElementById('default_sygy_element_engine'); 2442 if (element) { 2443 if (window.innerWidth <= 800) { 2444 window.document.dispatchEvent(new CustomEvent("showModalEngine")); 2445 } else { 2446 const elementPosition = element.getBoundingClientRect().top + window.pageYOffset; 2447 window.scrollTo({ top: elementPosition - 120, behavior: 'smooth' }); 2448 } 2449 } else { 2450 window.location.href = 'https://www.hotelspainfantedonjuanmanuel.es/reservar.html'; 2451 } 2452 } 2453 2454 // Cerrar con tecla Escape 2455 document.addEventListener('keydown', function(e) { 2456 if (e.key === 'Escape') { 2457 const sideMenu = document.getElementById('sideMenu'); 2458 if (sideMenu.classList.contains('active')) { 2459 toggleSideMenu(); 2460 } 2461 2462 document.querySelectorAll('.nav-item.expanded').forEach(item => { 2463 item.classList.remove('expanded'); 2464 }); 2465 2466 document.getElementById('langDropdown').classList.remove('active'); 2467 } 2468 }); 2469 2470 // Cerrar menú idiomas al hacer scroll 2471 window.addEventListener('scroll', function() { 2472 const container = document.querySelector('.tgl-menus-air.sta-dispo'); 2473 // Solo ejecutar si está dentro del contenedor especificado 2474 if (container) { 2475 const menuDropdown = document.getElementById('langDropdown'); 2476 if (menuDropdown && menuDropdown.classList.contains('active')) { 2477 menuDropdown.classList.remove('active'); 2478 } 2479 } 2480 }); 2481 2482 document.addEventListener('DOMContentLoaded', function() {window.dispatchEvent(new Event('scroll'));}); 2483</script>
2483 2484 </aside> 2485<!-- END Header --> 2486 2487<main class="global-container"> 2488 2489 <h1 style="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;">Palacio Del Infante Don Juan Manuel Hotel Spa en Belmonte. Web Oficial</h1> 2490 2491 2492 2493<div class="hero-container show-version-1 text-down motor-down" style="visibility:hidden" data-scroll=""> 2494 2495 <section class="tpl-hero-air" data-video-bg="" data-carousel='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/178#Escritorio en habitaci\u00f3n del Palacio del Infante Don Juan Manuel en Belmonte con libros, silla de madera y ventana con vistas al exterior","name":"Escritorio en habitaci\u00f3n del Palacio del Infante Don Juan Manuel en Belmonte con libros, silla de madera y ventana con vistas al exterior"}]'> 2496 <div class="sta-hero-bg-video"></div> 2497 <div class="sta-hero-carousel"></div> 2498 2499 <!-- Video thumbnail (solo versión 2) --> 2500 <div class="sta-hero-video-thumb" data-video-id=""> 2501 <div class="wistia_embed wistia_async_ controlsVisibleOnLoad=false playButton=false autoPlay=true muted=true" style="width:100%;height:100%;"> </div> 2502 </div> 2503 2504 <div class="sta-hero-content"> 2505 <div class="sta-hero-left"> 2506 <h2 class="sta-hero-title">Máximo bienestar en un entorno único</h2> 2507 <span class="sta-hero-subtitle"></span> 2508 2509 <!-- Botones (versión 2 y 3) --> 2510 <div class="sta-hero-buttons"> 2511 <a href="https://www.hotelspainfantedonjuanmanuel.es/reservar.html" class="sta-hero-btn sta-hero-btn-primary"></a> 2512 <a href="" class="sta-hero-btn sta-hero-btn-secondary"></a> 2513 <button class="sta-hero-btn-video" onclick="openVideoModal()"></button> 2514 </div> 2515 2516 <!-- Motor (versión 1 y 2) --> 2517 <div class="sta-hero-engine-container"> 2518 <div class="sta-hero-engine"><!-- GLOBAL Motor MONO -->
2519<script src="/modulos/myTrackings_V2/templates/public/utils/ads.min.js?_=202607070800" async></script>
vendor: 1 bytes, line 2519
2519
2520<script src="/modulos/myTrackings_V2/templates/public/js/myTrackings_V2.min.js?_=202607070800" async></script>
2520 2521
2522<script> 2523 var {config: engine_config, lang_info, i18n, currencies, group, hotel_id, hotel_code, web_type, currency_code, ...resto} = {"version_cms":"2026-09-30 18:02:43","web_type":"WI","hotel_code":"HTL00310","group":"asociados","hotel_id":413,"config":{"app_code":"cms-engine","theme_values":{"mainColor":"rgb(73 144 227)","thirdColor":"#4a90e2","custom_blur":"blur(40px)","custom_padding":"20px","defaultColor":null,"STgoldTier":"#ab9662","STsilverTier":"#939798","STblueTier":"#506caf","fontFamily4":"Montserrat , sans-serif","resizableImages":false,"secondColor":"#ab8753","backgroundColor":"#736351","backgroundEngine":"#7b777700","calendarColor":"#ccbba2","colorFont":"#000000","engineColorFont":"#fff","headerColorFont":"#fff","headerColorIcons":"#9b9b9b","headerColorDynamicText":"#ffffff","fontFamily1":"Roboto , sans-serif","fontFamily3":"Icons","fontFamily2":"DroidSerif"},"dropdown_position":"bottom","isolate":0,"show_date_format":"minified","id_button_engine":null,"positions":{"engine_position":"relative"},"links":{"transportLink":{"value":null,"icon":"e90b","target":"","showIn":"","text":{"es":{"translatable_value":"Transportes"},"ca":{"translatable_value":"Transports"},"en":{"translatable_value":"Transport"},"it":{"translatable_value":"Trasporto"},"de":{"translatable_value":"Transport"},"pt":{"translatable_value":"Transporte"},"ru":{"translatable_value":"\u0422\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442"},"nl":{"translatable_value":"Vervoer"},"fr":{"translatable_value":"Transport"},"bg":{"translatable_value":"\u0422\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442"},"vi":{"translatable_value":"V\u1eadn t\u1ea3i"},"sl":{"translatable_value":"Transferji"},"ja":{"translatable_value":"\u79fb\u7ba1"}},"url":[]},"activitiesLink":{"value":null,"showIn":"","icon":"e908","target":"","text":{"es":{"translatable_value":"Actividades"},"ca":{"translatable_value":"Activitats"},"en":{"translatable_value":"Activities"},"it":{"translatable_value":"Attivit\u00e0"},"de":{"translatable_value":"Aktivit\u00e4ten"},"pt":{"translatable_value":"Atividades"},"ru":{"translatable_value":"\u041c\u0435\u0440\u043e\u043f\u0440\u0438\u044f\u0442\u0438\u044f"},"nl":{"translatable_value":"Activiteiten"},"fr":{"translatable_value":"Activit\u00e9s"},"bg":{"translatable_value":"\u0414\u0435\u0439\u043d\u043e\u0441\u0442\u0438"},"vi":{"translatable_value":"C\u00e1c ho\u1ea1t \u0111\u1ed9ng"},"sl":{"translatable_value":"Dejavnosti"},"ja":{"translatable_value":"\u6d3b\u52d5\u5185\u5bb9"}},"url":[]},"rentLink":{"value":null,"icon":"e909","showIn":"","target":"","url":[],"text":{"es":{"translatable_value":"Rentacar"},"ca":{"translatable_value":"Rentacar"},"en":{"translatable_value":"Rent a car"},"it":{"translatable_value":"Rent a car"},"de":{"translatable_value":"Rent a car"},"pt":{"translatable_value":"Rent a car"},"hu":{"translatable_value":"Rent a car"},"ar":{"translatable_value":"Rent a car"},"gl":{"translatable_value":"Rent a car"},"zi":{"translatable_value":"Rent a car"},"tr":{"translatable_value":"Rent a car"},"fr":{"translatable_value":"Rent a car"},"nl":{"translatable_value":"Rent a car"},"ru":{"translatable_value":"Rent a car"},"bg":{"translatable_value":"\u041a\u043e\u043b\u0438 \u043f\u043e\u0434 \u043d\u0430\u0435\u043c"},"vi":{"translatable_value":"Thu\u00ea m\u1ed9t chi\u1ebfc xe"},"sl":{"translatable_value":"Rentacar"},"sk":{"translatable_value":"Rentacar"},"ja":{"translatable_value":"\u30ec\u30f3\u30bf\u30ab\u30fc"}}}},"back_drop":false,"last_searchs_extended":true,"show_texts":false,"theme":"roundedThemeV2","ignore_synergy_config":true,"max_rooms":10,"default_lang":"autodetect","engine_active":true,"prices_active":true,"max_adults":8,"default_adults":2,"max_childs":4,"default_childs":0,"enable_wi_url":true,"show_modal_view":false,"engine_visible":true,"drop_down_list_type":false,"enable_promotion_code":true,"engine_type":"standard","focus_on_modal_view":false,"mobile":{"engine_visible":false},"occups_free":{"baby":{"start":0,"end":2},"child":{"start":3,"end":11},"max_babies":1,"max_occups_free":6}},"currency_code":"EUR","i18n":{"translationControl":{"tag":"translationControl"},"precio_subtotal":{"tag":"importe subtotal"},"mejor precio garantizado":{"tag":"mejor precio garantizado"}
2523,"habitaci\u00f3n":{"tag":"habitaci\u00f3n","has_plural":1,"plural":"habitaciones"},"ni\u00f1o":{"tag":"ni\u00f1o","has_plural":1,"plural":"ni\u00f1os"},"entrada":{"tag":"entrada"},"salida":{"tag":"salida"},"adulto":{"tag":"adulto","has_plural":1,"plural":"adultos"},"aceptar":{"tag":"aceptar"},"confirmar":{"tag":"confirmar"},"vuelo + hotel":{"tag":"vuelo + hotel"},"aplicar":{"tag":"aplicar"},"c\u00f3digo promocional":{"tag":"c\u00f3digo promocional"},"hotel":{"tag":"hotel","has_plural":1,"plural":"hoteles"},"Insertar c\u00f3digo promocional":{"tag":"insertar c\u00f3digo promocional"},"vuelo_mas_hotel_link":{"tag":null},"destino":{"tag":"destino"},"*Ni\u00f1os de 2 a 11 a\u00f1os":{"tag":"Ni\u00f1os de 3 a 11 a\u00f1os. Beb\u00e9s de 0-2 a\u00f1os cuna gratuita seg\u00fan disponibilidad. En caso de no haber cuna disponible, tendr\u00e1 que compartir cama con los padres."},"buscar":{"tag":"buscar"},"buscar por destino o por hotel":{"tag":"Buscar por destino o por hotel"},"ir al listado de hoteles":{"tag":"ir al listado de hoteles"},"no se han encontrado destinos con este nombre":{"tag":"No se han encontrado destinos con este nombre"},"tus \u00faltimas b\u00fasquedas":{"tag":"Tus \u00faltimas b\u00fasquedas"},"\u00bfQuieres a\u00f1adir un traslado?":{"tag":"\u00bfQuieres a\u00f1adir un traslado?"},"test":{"tag":"test"},"hoteles en":{"tag":"hoteles en"},"clean_and_safe_link":{"tag":null},"insertar c\u00f3digo promocional":{"tag":"Insertar c\u00f3digo promocional"},"tengo un c\u00f3digo de descuento":{"tag":"tengo un c\u00f3digo de descuento"},"aplicado":{"tag":"aplicado"},"c\u00f3digo descuento":{"tag":"C\u00f3digo descuento"},"tengo un c\u00f3digo promocional":{"tag":"tengo un c\u00f3digo promocional"},"rent_link":{"tag":"https:\/\/palaciodelinfantedonjuanmanuelhotelspa.paquetedinamico.com\/home-hotel.xhtml?agency=palaciodelinfantedonjuanmanuelhotelspa&language=ESµsite=hotusa-trc&tripType=ONLY_CAR&utm_source=palaciodelinfantedonjuanmanuelhotelspa&utm_medium=portal&utm_campaign=palaciodelinfantedonjuanmanuelhotelspa_es"},"transfers_link":{"tag":null},"activities_link":{"tag":"https:\/\/palaciodelinfantedonjuanmanuelhotelspa.paquetedinamico.com\/home-hotel.xhtml?agency=palaciodelinfantedonjuanmanuelhotelspa&language=ESµsite=hotusa-trc&tripType=ONLY_TICKET&utm_source=palaciodelinfantedonjuanmanuelhotelspa&utm_medium=portal&utm_campaign=palaciodelinfantedonjuanmanuelhotelspa_es"},"transferencias":{"tag":"Traslados"},"alquileres":{"tag":"Rentacar"},"actividades":{"tag":"Actividades"},"transportes":{"tag":"Transportes"},"\u00bfA d\u00f3nde te gustar\u00eda ir?":{"tag":"\u00bfA d\u00f3nde te gustar\u00eda ir?"},"Elige el destino o el hotel":{"tag":"Elige el destino o el hotel"},"\u00bfCu\u00e1ndo quieres ir?":{"tag":"\u00bfCu\u00e1ndo quieres ir?"},"\u00bfCu\u00e1ndo?":{"tag":"\u00bfCu\u00e1ndo?"},"Hu\u00e9spedes":{"tag":"Hu\u00e9spedes"},"restricci\u00f3n : Anticipaci\u00f3n m\u00ednima {value} d\u00edas":{"tag":"Anticipaci\u00f3n m\u00ednima: {value} d\u00edas"},"restricci\u00f3n : Estancia m\u00ednima {value} noches":{"tag":"Estancia m\u00ednima: {value} noches"},"restricci\u00f3n : No se permite salida permitir salida":{"tag":"No se permite salida"},"restricci\u00f3n : No se permitir entrada":{"tag":"No se permite entrada"},"* Estos precios son orientativos y podr\u00edan variar":{"tag":"* Estos precios son orientativos y podr\u00edan variar"},"* Precios aproximados":{"tag":"* Precios aproximados"},"* Precios aproximados en {currency}":{"tag":"* Precios aproximados en {currency}"},"* Precios aproximados para 2 personas.":{"tag":"* Precios aproximados para 2 personas."},"para 2 personas.":{"tag":"para 2 personas."},"ocupacion":{"tag":"ocupacion"},"eliminar adulto":{"tag":"eliminar un adulto"},"a\u00f1adir adulto":{"tag":"a\u00f1adir un adulto"},"eliminar ni\u00f1o":{"tag":"eliminar un ni\u00f1o"},"a\u00f1adir un ni\u00f1o":{"tag":"a\u00f1adir un ni\u00f1o"},"eliminar habitacion completa":{"tag":"eliminar la habitacion completa"},"eliminar una habitacion":{"tag":"eliminar una habitacion"},"a\u00f1adir otra habitacion":{"tag":"A\u00f1adir otra habitaci\u00f3n"},"confirmar busqueda":{"tag":"confirmar busqueda reserva"},"busca destino":{"tag":"Busca un hotel o destino"},"elige fecha":{"tag":"elige la fecha de la reserva"},"elige ocupantes":{"tag":"elige los ocupantes"},"codigo promo":{"tag":"introduce el codigo promocional"},"cerrar busqueda":{"tag":"cerrar busqueda de reserva"},"coincidencia texto":{"tag":"Sugerencia: hotel o destino coincidente"}
2523,"a\u00f1adir ni\u00f1o":{"tag":"a\u00f1adir un ni\u00f1o"},"edad del ni\u00f1o":{"tag":"edad del ni\u00f1o","has_plural":1,"plural":"edad de los ni\u00f1os"},"a\u00f1o":{"tag":"a\u00f1o","has_plural":1,"plural":"a\u00f1os"},"motor":{"tag":"Reservar"},"siguiente":{"tag":"siguiente"},"anterior":{"tag":"anterior"},"aceptar y continuar":{"tag":"aceptar y continuar"},"transport_link":{"tag":"https:\/\/palaciodelinfantedonjuanmanuelhotelspa.paquetedinamico.com\/home-hotel.xhtml?agency=palaciodelinfantedonjuanmanuelhotelspa&language=ESµsite=hotusa-trc&tripType=FLIGHT_HOTEL&utm_source=palaciodelinfantedonjuanmanuelhotelspa&utm_medium=portal&utm_campaign=palaciodelinfantedonjuanmanuelhotelspa_es"}},"lang_info":{"code":"ES","syn2_code":"es","date_format":"DD\/MM\/YYYY","decimal_separator":",","thousand_separator":"."},"avail_url":"https:\/\/www.hotelspainfantedonjuanmanuel.es\/disponibilidad.html","currencies":[{"id":1,"code":"EUR","symbol":"\u20ac","name":"Euro","ratio":1,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":true,"override":false,"exception":[]},{"id":2,"code":"USD","symbol":"$","name":"D\u00f3lar de los Estados Unidos","ratio":1.13453,"decimals":2,"main":1,"position":true,"thousand_separator":".","decimal_separator":",","use_symbol":true,"override":false,"exception":[{"code":"BB","position":true,"thousand_separator":",","decimal_separator":"."},{"code":"UG","position":true,"thousand_separator":",","decimal_separator":"."},{"code":"US","position":true,"thousand_separator":",","decimal_separator":"."}]},{"id":4,"code":"GBP","symbol":"\u00a3","name":"Reino Unido libra esterlina","ratio":0.85645,"decimals":2,"main":1,"position":true,"thousand_separator":".","decimal_separator":",","use_symbol":true,"override":false,"exception":[]},{"id":5,"code":"ARS","symbol":"ARS","name":"Peso Argentino","ratio":1730.09805,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":20,"code":"MAD","symbol":"MAD","name":"Dirham de Marruecos","ratio":10.98754,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":28,"code":"AUD","symbol":"AUD","name":"D\u00f3lar australiano","ratio":1.6211,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":29,"code":"AZN","symbol":"AZN","name":"Manat azer\u00ed","ratio":1.92864,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":41,"code":"BRL","symbol":"BRL","name":"Real brasile\u00f1o","ratio":5.9177,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":43,"code":"BGN","symbol":"BGN","name":"Lev b\u00falgaro","ratio":1.9558,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":46,"code":"CAD","symbol":"CAD","name":"D\u00f3lar canadiense","ratio":1.60966,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":50,"code":"CLP","symbol":"CL$","name":"Peso chileno","ratio":1104.40847,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":51,"code":"CNY","symbol":"CN\u00a5","name":"Yuan Renminbi chino","ratio":7.6117,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":52,"code":"COP","symbol":"COP","name":"Peso colombiano","ratio":3782.41663,"decimals":0,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":55,"code":"NZD","symbol":"NZ$","name":"D\u00f3lar de Nueva Zelanda","ratio":2.0076,"decimals":2,"main":0,"position":false,"thous
2523and_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":58,"code":"CUC","symbol":"CUC","name":"Peso Cubano Convertible","ratio":1.13453,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":60,"code":"CZK","symbol":"CZK","name":"Corona Checa","ratio":24.411,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":61,"code":"DKK","symbol":"DKK","name":"Corona danesa","ratio":7.4754,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":63,"code":"DOP","symbol":"DOP","name":"Peso dominicano","ratio":67.46815,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":72,"code":"GEL","symbol":"GEL","name":"Lari georgiano","ratio":2.94713,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":80,"code":"HKD","symbol":"HKD","name":"D\u00f3lar de Hong Kong","ratio":8.9091,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":81,"code":"HUF","symbol":"HUF","name":"Flor\u00edn H\u00fangaro","ratio":366.38,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":83,"code":"INR","symbol":"INR","name":"Rupia india","ratio":108.87597,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":84,"code":"IDR","symbol":"IDR","name":"Rupia Indonesia","ratio":20256.86,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":87,"code":"ILS","symbol":"ILS","name":"Nuevo Sheqel israel\u00ed","ratio":3.48018,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":89,"code":"JPY","symbol":"JPY","name":"Yen Japon\u00e9s","ratio":178.41,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":94,"code":"KRW","symbol":"KRW","name":"Won surcoreano","ratio":1536.63691,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":103,"code":"CHF","symbol":"CHF","name":"Franco suizo","ratio":0.9461,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":109,"code":"MYR","symbol":"MYR","name":"Ringgit de Malasia","ratio":4.634,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":114,"code":"MXN","symbol":"MXN","name":"Peso mexicano","ratio":20.48886,"decimals":2,"main":0,"position":false,"thousand_separator":",","decimal_separator":".","use_symbol":false,"override":false,"exception":[]},{"id":125,"code":"NOK","symbol":"NOK","name":"Corona Noruega","ratio":10.8735,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":131,"code":"PEN","symbol":"PEN","name":"Nuevo Sol peruano","ratio":3.90551,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":132,"code":"PHP","symbol":"PHP","name":"Peso filipino","ratio":71.022,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":133,"code":"PLN","symbol":"PLN","name":"Zloty Polaco","ratio":4.3653,"decimals":2,"main":0,"position":false,"thous
2523and_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":134,"code":"QAR","symbol":"QAR","name":"Riyal Qatar\u00ed","ratio":4.12968,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":135,"code":"RON","symbol":"RON","name":"Leu Rumano","ratio":5.2786,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":136,"code":"RUB","symbol":"RUB","name":"Rublo Ruso","ratio":95.28017,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":141,"code":"SAR","symbol":"SAR","name":"Rial Saudi Arabia Saudita Riyal","ratio":4.25447,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":145,"code":"SGD","symbol":"SGD","name":"D\u00f3lar de Singapur","ratio":1.4504,"decimals":2,"main":1,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":149,"code":"ZAR","symbol":"ZAR","name":"Rand del africano del sur","ratio":18.5887,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":154,"code":"SEK","symbol":"SEK","name":"Corona sueca","ratio":11.321,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":159,"code":"THB","symbol":"THB","name":"Baht tailand\u00e9s","ratio":38.056,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":163,"code":"TRY","symbol":"TRY","name":"Lira turca","ratio":55.6398,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":167,"code":"AED","symbol":"AED","name":"Emiratos \u00c1rabes Unidos Dirham","ratio":4.16655,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":172,"code":"VND","symbol":"VND","name":"Dong de Vietnam","ratio":29463,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]},{"id":173,"code":"XOF","symbol":"CFA","name":"Franco de \u00c1frica occidental","ratio":655.957,"decimals":2,"main":0,"position":false,"thousand_separator":".","decimal_separator":",","use_symbol":false,"override":false,"exception":[]}]}; 2524 window.frontLoader = window.frontLoader || {}; 2525 window.frontLoader['cms-engine'] = {config: {...engine_config, ...resto}, i18n}; 2526 2527 if (lang_info && !window.frontLoader.lang_info) { 2528 window.frontLoader.lang_info = lang_info; 2529 } 2530 2531 if (currencies && !window.frontLoader.currencies) { 2532 window.frontLoader.currencies = currencies; 2533 } 2534 2535 if (group && !window.frontLoader.group) { 2536 window.frontLoader.group = group; 2537 } 2538 2539 if (hotel_id && !window.frontLoader.hotel_id) { 2540 window.frontLoader.hotel_id = hotel_id; 2541 } 2542 2543 if (hotel_code && !window.frontLoader.hotel_code) { 2544 window.frontLoader.hotel_code = hotel_code; 2545 } 2546 2547 if (web_type && !window.frontLoader.web_type) { 2548 window.frontLoader.web_type = web_type; 2549 } 2550 2551 if (currency_code && !window.frontLoader.currency_code) { 2552 window.frontLoader.currency_code = currency_code; 2553 } 2554 2555 2556 const migration = true; 2557 if (!migration) { 2558 window.frontLoader['cms-engine'].config = _.defaults({ 2559 engine_visible:false, 2560 }, window.frontLoader['cms-engine'].config); 2561 } 2562</script>
2562 2563<div> 2564 <div id="default_sygy_element_engine" ></div> 2565</div>
2566<script 2567 src="/igm/synergycms_searchengine/build/static/js/main.js?_=2609300939"> 2568</script>
2568 2569 2570<!-- --> 2571 </div> 2572 </div> 2573 </div> 2574 2575 <!-- Imagen derecha (solo versión 3) --> 2576 <div class="sta-hero-right"> 2577 <div class="sta-hero-carousel-v3"></div> 2578 <img src="https://synergy.booking-channel.com/api/hotels/413/medias/178#Escritorio en habitación del Palacio del Infante Don Juan Manuel en Belmonte con libros, silla de madera y ventana con vistas al exterior"> 2579 <div class="sta-hero-bg-video"></div> 2580 </div> 2581 </div> 2582 2583 <!-- Scroll (solo versión 1) --> 2584 <div class="sta-hero-scroll"> 2585 <div class="sta-hero-scroll-arrow"></div> 2586 <span class="sta-hero-scroll-text"></span> 2587 </div> 2588 2589 2590 </section> 2591 2592 2593 <!-- Modal de video compartida entre versiones --> 2594 <div class="sta-hero-video-modal" id="videoModal"> 2595 <button class="sta-hero-video-modal-close" onclick="closeVideoModal()">Ã</button> 2596 <div class="sta-hero-video-modal-content" id="modalVideoContainer"> 2597 </div> 2598 </div> 2599</div> 2600<style> 2601.tgl-menus-air{z-index: 202 !important}; 2602 2603.sta-hero-engine-container{z-index: 100;} 2604 2605 2606 /* VARIABLES Y CONFIGURACIÃN */ 2607.hero-container {position: relative; visibility: visible !important;} 2608.hero-container.background-color {--backgroundColor: ;} 2609.hero-container.background-color.show-version-3 .sta-hero-left {background-color: var(--backgroundColor) !important;} 2610.hero-container.font-white.show-version-3 .sta-hero-title, 2611.hero-container.font-white.show-version-3 .sta-hero-subtitle, 2612.hero-container.font-white.show-version-3 .sta-hero-btn-video {color: var(--color-text-secondary) !important;} 2613.hero-container.font-white.show-version-3 .sta-hero-btn-video::before {background: var(--color-text-secondary) !important;} 2614.hero-container.font-white.show-version-3 .sta-hero-btn-video::after {border-left-color: var(--color-text) !important;} 2615 2616 /* CONTENEDOR PRINCIPAL */ 2617.tpl-hero-air {position: relative;width: 100%;padding-top: 80px;min-height:100vh;display: flex;align-items: center;justify-content: center;background-size: cover;background-position: center;background-repeat: no-repeat;font-family: var(--font-body);} 2618.tpl-hero-air:not(.show-version-3) {background-image: url('') !important;} 2619 2620 /* VIDEO DE FONDO */ 2621.sta-hero-bg-video {position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 0;display: none;overflow: hidden;} 2622.sta-hero-bg-video .wistia_embed {width: 100%;height: 100%;} 2623.sta-hero-bg-video .wistia_embed video {object-fit: cover !important;width: 100% !important;height: 100% !important;} 2624.sta-hero-bg-video iframe {position: absolute;top: 50%;left: 50%;width: 100vw;height: 100vh;transform: translate(-50%, -50%);object-fit: cover;} 2625.sta-hero-bg-video::after {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.5);z-index: 1;pointer-events: none;} 2626.hero-container.no-filter .sta-hero-bg-video::after {display: none;} 2627 2628 /* CONTENIDO Y LAYOUT */ 2629.sta-hero-content {width: 100%;max-width: 1400px;display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;color: var(--color-text-secondary);position: relative;} 2630.sta-hero-left {width: 100%;} 2631.sta-hero-right {display: none;} 2632 2633 /* TÃTULOS Y SUBTÃTULOS */ 2634.sta-hero-title {font-family: var(--font-title) !important;font-weight: 600;line-height: 1.1;margin-bottom: var(--spacing-title);letter-spacing: 1px;text-transform: uppercase;font-size: calc(var(--font-size-h2) * 1.65);} 2635.sta-hero-subtitle {font-family: var(--font-subtitle) !important;font-weight: 300;line-height: 1.5;margin-bottom: calc(var(--spacing-subtitle) * 1.67);display: block;font-size: var(--font-size-h3);} 2636 2637 /* BOTONES GENERALES */ 2638.sta-hero-btn {display: inline-block;padding: 15px 0px;color: var(--color-text-secondary);text-decoration: none;font-size: var(--font-size-buttons-small);font-weight: 600;text-transform: uppercase;letter-spacing: 1px;transition: all 0.3s ease;cursor: pointer;margin-top: var(--spacing-items);} 2639.sta-hero-btn-primary {position: absolute;bottom: 0;left: 0;width: 100%;background: var(--color-principal);color: var(--color-text-buttons);border: none;border-radius: 0;text-align: center;padding: 18px 0;margin: 0;z-index: 10;display: inline-block;} 2640.sta-hero-btn-primary:hover {background: color-mix(in srgb, var(--color-principal) 85%, #000);color: var(--color-text-buttons);} 2641.sta-hero-buttons {display: none;} 2642.sta-hero-btn-video {display: none;} 2643.sta-hero-btn-secondary {display: none;} 2644 2645 /* MODAL DE VIDEO */ 2646.sta-hero-video-modal {display: none;position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0,0,0,0.9);z-index: 9999;align-items: center;justify-content: center;} 2647.sta-hero-video-modal.active {display: flex;} 2648.sta-hero-video-modal-content {width: 90%;max-width: 1200px;aspect-ratio: 16/9;position: relative;} 2649.sta-hero-video-modal-close {position: absolute;top: -20px;right: 0;color: var(--color-text-secondary);font-size: 32px;
2649cursor: pointer;background: none;border: none;padding: 10px;} 2650 2651 /* CARRUSEL DE IMÃGENES */ 2652.sta-hero-carousel {position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 0;overflow: hidden;} 2653.sta-hero-carousel-item {position: absolute;top: 0;left: 0;width: 100%;height: 100%;opacity: 0;transition: opacity 1s ease-in-out;background-size: cover;background-position: center;background-repeat: no-repeat;z-index: 0;} 2654.sta-hero-carousel-item.active {opacity: 1;} 2655.sta-hero-carousel-v3 {position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 0;overflow: hidden;display: none;} 2656 2657 /* SCROLL INDICATOR */ 2658.sta-hero-scroll {position: absolute;bottom: 0;left: 50%;transform: translateX(-50%);display: flex;flex-direction: column;align-items: center;z-index: 1;color: var(--color-text-secondary);animation: bounce 2s infinite;cursor: pointer;} 2659.sta-hero-scroll-arrow {width: 2px;height: 25px;background: var(--color-text-secondary);position: relative;margin-bottom: 8px;} 2660.sta-hero-scroll-arrow::after {content: '';position: absolute;bottom: -5px;left: 50%;transform: translateX(-50%);width: 0;height: 0;border-left: 8px solid transparent;border-right: 8px solid transparent;border-top: 10px solid var(--color-text-secondary);} 2661.sta-hero-scroll-text {font-size: calc(var(--font-size-base) * 0.75);font-weight: 300;letter-spacing: 1px;text-transform: uppercase;text-align: center;} 2662@keyframes bounce {0%, 20%, 50%, 80%, 100% {transform: translateX(-50%) translateY(0);}40% {transform: translateX(-50%) translateY(-10px);}60% {transform: translateX(-50%) translateY(-5px);}} 2663 2664 /* ENGINE (MOTOR DE RESERVAS) */ 2665.sta-hero-engine {width: 100%;max-width: 3200px;margin-top: var(--spacing-items);} 2666 2667 /* VERSION 1 - ESTILOS COMPLETOS */ 2668.show-version-1 .tpl-hero-air[data-video-bg] .sta-hero-bg-video {display: block;} 2669.show-version-1 .tpl-hero-air[data-video-bg] {background-image: none} 2670.show-version-1 .w-bottom-bar {display: none !important;} 2671.show-version-1 .sta-hero-title {padding: 0 20px;} 2672.show-version-1 .sta-hero-subtitle {margin-bottom: calc(var(--spacing-subtitle) * 2.08);padding: 0 20px;font-size: calc(var(--font-size-h3) * 0.85);} 2673.show-version-1 .sta-hero-content {margin-bottom: calc(var(--spacing-subtitle) * 2.08);} 2674.show-version-1 .sta-hero-left {display: flex;flex-direction: column;align-items: center;} 2675.show-version-1 .sta-hero-engine {margin-top: 0;} 2676 2677/* VERSION 1 - Configuración texto abajo */ 2678.show-version-1.text-down .sta-hero-content {margin-bottom: 0;} 2679.show-version-1.text-down .sta-hero-subtitle {max-width: 900px;margin-bottom: calc(var(--spacing-subtitle) * 2.92);} 2680.show-version-1.text-down .sta-hero-scroll {display: none;} 2681.show-version-1.text-down .sta-hero-btn-primary {display: inline-block;} 2682 2683/* VERSION 1 - Configuración motor abajo */ 2684.show-version-1.motor-down .tpl-hero-air {align-items: stretch;} 2685.show-version-1.motor-down .sta-hero-content {margin-bottom: 0;padding-bottom: 0;} 2686.show-version-1.motor-down .sta-hero-engine-container {bottom: 30px;left: 50%;width: 100%;max-width: 1400px;padding: 0 20px;box-sizing: border-box;} 2687.show-version-1.motor-down .sta-hero-scroll {display: none;} 2688.show-version-1.motor-down .sta-hero-btn-primary {display: none;} 2689 2690/* VERSION 1 - Texto abajo + Motor abajo combinados */ 2691.show-version-1.text-down .tpl-hero-air {align-items: flex-end;padding-bottom: 30px;} 2692.show-version-1.text-down.motor-down .sta-hero-engine-container {position: relative;bottom: auto;left: auto;transform: none;max-width: none;padding: 0;} 2693 2694 /* VERSION 2 - ESTILOS COMPLETOS */ 2695.show-version-2 .tpl-hero-air {justify-content: flex-start;} 2696.show-version-2 .tpl-hero-air[data-video-bg] .sta-hero-bg-video {display: block;} 2697.show-version-2 .tpl-hero-air[data-video-bg] {background-image: none } 2698.show-version-2 .sta-hero-content {align-items: flex-start;justify-content: center;text-align: left;} 2699.show-version-2 .sta-hero-btn-primary {display: block;width: 100%;background: var(--color-cards);color: var(--color-text);border: none;border-radius: var(--radius-buttons);text-align: center;position: relative;padding: 15px 0px;margin-top: var(--spacing-items);} 2700.show-version-2 .sta-hero-engine {left: 0;padding-left: 0;width: 100%;max-width: 1200px;margin-top: 0;display: flex;} 2701 2702/* VERSION 2 - Video Thumbnail */ 2703.sta-hero-video-thumb {display: none;} 2704.sta-hero-video-thumb .wistia_embed {width: 100%;height: 100%;pointer-events: none;} 2705.show-version-2 .sta-hero-video-thumb {display: block;position: absolute;border-radius: calc(var(--radius-elements) / 2);overflow: hidden;cursor: pointer;z-index: 2;box-shadow: 0 4px 12px rgba(0,0,0,0.4);transition: all 0.3s ease;} 2706.show-version-2 .sta-hero-video-thumb:hover {transform: scale(1.05);} 2707.show-version-2 .sta-hero-video-thumb::after {content: '';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 50px;height: 50px;background: rgba(255,255,255,0.15);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);border-radius: 50%;pointer-events: none;transition: all 0.3s ease;z-index: 1;} 2708.show-version-2 .sta-hero-video-thumb::before {content: '';position: absolute;top: 50%;left: 50%;transform: translate(-40%, -50%);width: 0;height: 0;border-left: 16px solid var(--color-text-secondary);border-top: 10px solid transparent;border-bottom: 10px solid transparent;z-index: 2;pointer-events: none;} 2709.show-version-2 .sta-hero-video-thumb:hover::after {background: rgba(255,255,255,0.25);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);} 2710 2711 /* VERSION 3 - ESTILOS COMPLETOS */ 2712.show-version-3 .tpl-hero-air {padding-top: 0;background-image: none !important;min-height: 0;} 2713.show-version-3 .tpl-hero-air::before {display: none;} 2714.show-version-3 .sta-hero-content {flex-direction: column;align-items: stretch;max-width: 100%;height: 100%;} 2715.show-version-3 .sta-hero-left {flex: 1;display: flex;flex-direction: column;justify-content: center;padding-top: 60px;text-align: left;color: var(--color-text);} 2716.show-version-3 .sta-hero-right {display: flex;flex: 1;align-items: center;justify-content: center;overflow: hidden;position: relative;} 2717.show-version-3 .sta-hero-right img {width: 100%;height: 100%;object-fit: cover;border-radius: 0;}
2718.show-version-3 .sta-hero-right[data-video-bg] img {display: none;} 2719.show-version-3 .sta-hero-right[data-video-bg] .sta-hero-bg-video {display: block;position: absolute;} 2720.show-version-3 .sta-hero-right .sta-hero-carousel-v3 {display: block;} 2721.show-version-3 .sta-hero-title {color: var(--color-text);margin-bottom: var(--spacing-title);text-transform: none;font-weight: 700;} 2722.show-version-3 .sta-hero-subtitle {color: var(--color-text);font-size: var(--font-size-h5);margin-bottom: calc(var(--spacing-subtitle) * 1.25);line-height: 1.6;} 2723.show-version-3 .sta-hero-buttons {display: flex;gap: var(--spacing-items-title);} 2724.show-version-3 .sta-hero-btn-primary {display: none;} 2725.show-version-3 .sta-hero-btn-secondary {display: flex;padding: 15px 40px;background: var(--color-principal);color: var(--color-text-buttons);text-decoration: none;font-size: var(--font-size-base);font-weight: 600;text-transform: uppercase;letter-spacing: 1px;border: none;border-radius: var(--radius-buttons);transition: all 0.3s ease;cursor: pointer;margin: 0;align-items: center;justify-content: center;} 2726.show-version-3 .sta-hero-btn-video {display: inline-flex;align-items: center;gap: 10px;padding: 15px 8px;background: transparent;color: var(--color-text);border: none;text-decoration: none;font-size: var(--font-size-base);font-weight: 600;cursor: pointer;position: relative;} 2727.show-version-3 .sta-hero-btn-video::before {content: '';display: inline-block;width: 50px;height: 50px;background: var(--color-text);border-radius: 50%;position: relative;flex-shrink: 0;} 2728.show-version-3 .sta-hero-btn-video::after {content: '';position: absolute;left: 34px;top: 50%;transform: translate(-50%, -50%);width: 0;height: 0;border-left: 14px solid var(--color-text-secondary);border-top: 7px solid transparent;border-bottom: 7px solid transparent;} 2729.show-version-3 .sta-hero-engine-container {margin-top: 0;position: absolute;bottom: 90px;} 2730.show-version-3 .sta-hero-scroll {display: none;} 2731 2732 /* RESPONSIVE - MOBILE (BASE) */ 2733.show-version-2 .sta-hero-content {padding-top: 400px;padding-left: 20px;padding-right: 20px;padding-bottom: 30px;} 2734.show-version-2 .sta-hero-left {padding: 0;} 2735.show-version-2 .sta-hero-title {font-size: calc(var(--font-size-h2) * 0.94);padding: 0;} 2736.show-version-2 .sta-hero-subtitle {font-size: var(--font-size-h3);padding: 0;} 2737.show-version-2 .sta-hero-video-thumb {top: 330px;left: 20px;right: auto;width: 190px;height:110px;} 2738.show-version-2 .sta-hero-scroll {display: none;} 2739 2740.show-version-3 .sta-hero-content {padding: 0;} 2741.show-version-3 .sta-hero-left {padding: 100px 20px 30px 20px;} 2742.show-version-3 .sta-hero-right {padding: 0;} 2743.show-version-3 .sta-hero-title {font-size: calc(var(--font-size-h2) * 0.94);} 2744.show-version-3 .sta-hero-subtitle {font-size: var(--font-size-base);} 2745.show-version-3 .sta-hero-btn-secondary, 2746.show-version-3 .sta-hero-btn-video {justify-content: center;height: 50px;} 2747 2748@media (max-width: 968px) { 2749.show-version-1.text-left .sta-hero-content {align-items: flex-start;text-align: left;} 2750.show-version-1.text-left .sta-hero-left {align-items: flex-start;} 2751.show-version-1.text-left .sta-hero-title {text-align: left;} 2752.show-version-1.text-left .sta-hero-subtitle {text-align: left;} 2753.tpl-hero-air {height: calc(100vh - 75px);} 2754} 2755 2756@media (max-width: 969px) { 2757.show-version-3 .sta-hero-engine-container {left: 0;} 2758} 2759 2760@media (max-width:375px) { 2761.show-version-2 .sta-hero-video-thumb {top:350px;} 2762} 2763 2764 /* RESPONSIVE - TABLET (641px+) */ 2765@media (min-width: 641px) { 2766.sta-hero-title {font-size: calc(var(--font-size-h2) * 1.42);} 2767.sta-hero-subtitle {font-size: var(--font-size-h5);} 2768 2769/* Version 1 Tablet */ 2770.show-version-1.text-down .tpl-hero-air {padding-bottom: 150px;} 2771 2772/* Version 2 Tablet */ 2773.show-version-2 .sta-hero-content {padding-top: 400px;padding-left: 40px;padding-right: 40px;padding-bottom: 30px;} 2774.show-version-2 .sta-hero-left {padding: 0;} 2775.show-version-2 .sta-hero-title {font-size: calc(var(--font-size-h2) * 1.32);padding: 0;} 2776.show-version-2 .sta-hero-subtitle {padding: 0;} 2777.show-version-2 .sta-hero-video-thumb {width: 210px;height: 130px;top: 330px;left: 40px;} 2778.show-version-2 .sta-hero-video-thumb::after {width: 40px;height: 40px;} 2779.show-version-2 .sta-hero-video-thumb::before {border-left: 15px solid var(--color-text-secondary);border-top: 9px solid transparent;border-bottom: 9px solid transparent;} 2780 2781/* Version 3 Tablet */ 2782.show-version-3 .sta-hero-content {flex-direction: column;padding: 0;} 2783.show-version-3 .sta-hero-left {padding: 100px 40px 30px 40px;} 2784.show-version-3 .sta-hero-right {min-height: 400px;} 2785.show-version-3 .sta-hero-title {font-size: calc(var(--font-size-h2) * 1.24);} 2786.show-version-3 .sta-hero-buttons {flex-direction: row;} 2787} 2788 2789@media (min-width: 801px) {
2790.show-version-1.motor-down .sta-hero-scroll {display: none;} 2791.show-version-1.motor-down .sta-hero-engine-container {display: block;position: absolute;transform: translateX(-50%)} 2792.show-version-1.text-down .sta-hero-subtitle {margin-bottom: calc(var(--spacing-subtitle) * 1.25);} 2793.tpl-hero-air:not(.show-version-3) {background-image: url('https://synergy.booking-channel.com/api/hotels/413/medias/178#Escritorio en habitación del Palacio del Infante Don Juan Manuel en Belmonte con libros, silla de madera y ventana con vistas al exterior') !important;} 2794} 2795 2796 /* RESPONSIVE - DESKTOP (969px+) */ 2797@media (min-width: 969px) { 2798.sta-hero-title {font-size: calc(var(--font-size-h2) * 1.53);} 2799.sta-hero-subtitle {font-size: calc(var(--font-size-h3) * 1.08);} 2800.sta-hero-btn-primary {display: none;} 2801 2802/* Version 1 Desktop */ 2803.show-version-1.text-down .tpl-hero-air {padding-bottom: 180px;} 2804.show-version-1.text-down.motor-down .tpl-hero-air {padding-bottom: 30px;} 2805 2806/* Version 2 Desktop */ 2807.show-version-2 .sta-hero-video-thumb {width: 270px;height: 150px;top: 120px;right: 80px;left: auto;} 2808.show-version-2 .sta-hero-video-thumb::after {width: 60px;height: 60px;} 2809.show-version-2 .sta-hero-video-thumb::before {border-left: 20px solid var(--color-text-secondary);border-top: 12px solid transparent;border-bottom: 12px solid transparent;} 2810.show-version-2 .sta-hero-content {padding-top: 180px;padding-left: 0;padding-right: 0;} 2811.show-version-2 .sta-hero-left {padding: 0;} 2812.show-version-2 .sta-hero-title {padding: 0 60px;} 2813.show-version-2 .sta-hero-subtitle {font-size: calc(var(--font-size-h3) * 1.23);padding: 0 60px;} 2814 2815/* Version 3 Desktop */ 2816.show-version-3 .sta-hero-content {flex-direction: row;padding: 0;height: 100vh;} 2817.show-version-3 .sta-hero-left {padding: 80px 0px;justify-content: center;} 2818.show-version-3 .sta-hero-right {border-radius: var(--radius-elements) 0 0 var(--radius-elements);padding-top: 90px;} 2819.show-version-3 .sta-hero-right img {border-radius: var(--radius-elements) 0 0 var(--radius-elements);} 2820.show-version-3 .sta-hero-title {font-size: calc(var(--font-size-h2) * 1.42);padding: 0 60px;} 2821.show-version-3 .sta-hero-subtitle {font-size: var(--font-size-h5);max-width: 500px;padding: 0 60px;} 2822.show-version-3 .sta-hero-engine {display: flex;} 2823.show-version-3 .sta-hero-buttons {padding: 0 60px;} 2824} 2825 2826@media (min-width: 969px) and (max-height: 780px) { 2827.show-version-2 .sta-hero-content {padding-top: 0px;} 2828.show-version-2 .sta-hero-title {font-size: calc(var(--font-size-h2) * 1.17);} 2829.show-version-2 .sta-hero-video-thumb {display: none;} 2830.show-version-3 .sta-hero-subtitle {font-size: calc(var(--font-size-base) * 0.81);} 2831.show-version-3 .sta-hero-engine-container {bottom:40px;} 2832.show-version-3 .sta-hero-title {font-size: calc(var(--font-size-h2) * 1.17);} 2833} 2834 2835@media (max-height: 700px) { 2836.show-version-2 .sta-hero-video-thumb {top: 250px;} 2837.show-version-2 .sta-hero-content {padding-top:350px;} 2838} 2839 2840@media (min-width:1201px) { 2841.show-version-3 .sta-hero-title {font-size: calc(var(--font-size-h2) * 1.88);padding: 0;} 2842.show-version-3 .sta-hero-subtitle {font-size: var(--font-size-h3);max-width: 600px;padding: 0;} 2843.show-version-3 .sta-hero-buttons {padding: 0;} 2844.show-version-3 .sta-hero-left {padding: 160px 60px;} 2845 2846/* Version 2 Desktop 1201px+ */ 2847.show-version-2 .sta-hero-left {padding: 0 60px;} 2848.show-version-2 .sta-hero-title {padding: 0;} 2849.show-version-2 .sta-hero-subtitle {padding: 0;} 2850} 2851 2852/* QUITAR MOTORES */ 2853.show-version-1.no-engine .sta-hero-engine-container, 2854.show-version-2.no-engine .sta-hero-engine-container, 2855.show-version-3.no-engine .sta-hero-engine-container {display: none !important;} 2856 2857/* Quitar boton video */ 2858.hero-container.no-video .sta-hero-btn-video{display: none !important;} 2859 2860 2861</style>
2862<script src="https://fast.wistia.com/assets/external/E-v1.js" async></script>
vendor: 2 bytes, line 2862
2862
2863<script> 2864 (function () { 2865 var mobileImg = ''; 2866 2867 if (!mobileImg || /^\$/.test(mobileImg.trim())) return; 2868 if (!window.matchMedia('(max-width: 767px)').matches) return; 2869 2870 2871 var heroRightImg = document.querySelector('.sta-hero-right img'); 2872 if (heroRightImg) heroRightImg.src = mobileImg; 2873 })(); 2874 2875 // Modal de video 2876 var activeModalVideoId = ''; 2877 2878 document.querySelectorAll('.sta-hero-video-thumb').forEach(function(thumb) { 2879 thumb.addEventListener('click', function() { 2880 openVideoModal(thumb.getAttribute('data-video-id')); 2881 }); 2882 }); 2883 2884 function getHeroModalVideoId() { 2885 var thumb = document.querySelector('.sta-hero-video-thumb[data-video-id]'); 2886 var thumbVideoId = thumb ? thumb.getAttribute('data-video-id') : ''; 2887 var fallbackId = ''; 2888 var resolved = (thumbVideoId || fallbackId || '').trim(); 2889 return resolved; 2890 } 2891 2892 function renderModalWistiaIframe(container, videoId) { 2893 container.innerHTML = '<iframe src="https://fast.wistia.net/embed/iframe/' + encodeURIComponent(videoId) + '?autoplay=1&playsinline=1" title="Video" allow="autoplay; fullscreen" allowfullscreen frameborder="0" style="width:100%;height:100%;position:absolute;top:0;left:0;"></iframe>'; 2894 } 2895 2896 function openVideoModal(videoIdFromClick) { 2897 var container = document.getElementById('modalVideoContainer'); 2898 var modal = document.getElementById('videoModal'); 2899 var videoId = (videoIdFromClick || getHeroModalVideoId() || '').trim(); 2900 2901 if (!videoId || videoId.indexOf('{_MENU_') === 0) { 2902 return; 2903 } 2904 2905 activeModalVideoId = videoId; 2906 container.innerHTML = ''; 2907 2908 var embedDiv = document.createElement('div'); 2909 embedDiv.className = 'wistia_responsive_padding'; 2910 embedDiv.style.padding = '56.25% 0 0 0'; 2911 embedDiv.style.position = 'relative'; 2912 2913 var innerDiv = document.createElement('div'); 2914 innerDiv.className = 'wistia_responsive_wrapper'; 2915 innerDiv.style.height = '100%'; 2916 innerDiv.style.left = '0'; 2917 innerDiv.style.position = 'absolute'; 2918 innerDiv.style.top = '0'; 2919 innerDiv.style.width = '100%'; 2920 2921 var videoDiv = document.createElement('div'); 2922 videoDiv.className = 'wistia_embed wistia_async_' + videoId + ' videoFoam=true controlsVisibleOnLoad=true playbar=true playButton=true volumeControl=true fullscreenButton=true settingsControl=true qualityControl=true'; 2923 videoDiv.style.height = '100%'; 2924 videoDiv.style.position = 'relative'; 2925 videoDiv.style.width = '100%'; 2926 2927 innerDiv.appendChild(videoDiv); 2928 embedDiv.appendChild(innerDiv); 2929 container.appendChild(embedDiv); 2930 2931 modal.classList.add('active'); 2932 2933 if (window._wq) { 2934 window._wq.push({ 2935 id: videoId, 2936 options: { 2937 controlsVisibleOnLoad: true, 2938 playbar: true, 2939 playButton: true, 2940 volumeControl: true, 2941 fullscreenButton: true, 2942 settingsControl: true, 2943 qualityControl: true, 2944 playbackRateControl: true 2945 }, 2946 onReady: function(video) { 2947 video.play(); 2948 } 2949 }); 2950 } 2951 2952 setTimeout(function() { 2953 if (!container.querySelector('iframe')) { 2954 renderModalWistiaIframe(container, videoId); 2955 } 2956 }, 1600); 2957 } 2958 2959 function closeVideoModal() { 2960 var modal = document.getElementById('videoModal'); 2961 var container = document.getElementById('modalVideoContainer'); 2962 var videoId = activeModalVideoId || getHeroModalVideoId(); 2963 2964 if (window._wq && videoId) { 2965 window._wq.push({ 2966 id: videoId, 2967 onReady: function(video) { 2968 video.pause(); 2969 video.time(0); 2970 } 2971 }); 2972 } 2973 2974 container.innerHTML = ''; 2975 modal.classList.remove('active'); 2976 } 2977 2978 document.getElementById('videoModal')?.addEventListener('click', function(e) { 2979 if (e.target === this) { 2980 closeVideoModal(); 2981 } 2982 });
2983 2984 // Video de fondo (funciona en versiones 1, 2 y 3) 2985 document.addEventListener('DOMContentLoaded', function() { 2986 document.querySelectorAll('[data-video-bg]').forEach(element => { 2987 const videoId = element.getAttribute('data-video-bg'); 2988 const heroRight = element.querySelector('.sta-hero-right'); 2989 const isVersion3 = element.closest('.hero-container').classList.contains('show-version-3'); 2990 2991 // Seleccionar el contenedor correcto según la versión 2992 const videoContainer = isVersion3 2993 ? (heroRight ? heroRight.querySelector('.sta-hero-bg-video') : null) 2994 : element.querySelector('.sta-hero-bg-video'); 2995 2996 const carouselContainer = isVersion3 2997 ? element.querySelector('.sta-hero-carousel-v3') 2998 : element.querySelector('.sta-hero-carousel'); 2999 3000 // PRIORIDAD: Si hay video, mostrar video y NO carrusel 3001 if (videoContainer && videoId && videoId.trim() !== '') { 3002 videoContainer.innerHTML = `<div class="wistia_embed wistia_async_${videoId} fitStrategy=cover autoPlay=true muted=true playbar=false controlsVisibleOnLoad=false endVideoBehavior=loop playButton=false volumeControl=false fullscreenButton=false settingsControl=false qualityControl=false playbackRateControl=false copyLinkAndThumbnailEnabled=false" style="width:100%;height:100%;position:absolute;pointer-events:none;"> </div>`; 3003 videoContainer.style.display = 'block'; 3004 3005 // Ocultar carrusel si hay video 3006 if (carouselContainer) { 3007 carouselContainer.style.display = 'none'; 3008 } 3009 3010 // VERSION 3: Ocultar imagen estática si hay video 3011 if (isVersion3 && heroRight) { 3012 const img = heroRight.querySelector('img'); 3013 if (img) img.style.display = 'none'; 3014 } 3015 3016 return; // Salir, no procesar carrusel 3017 } 3018 }); 3019 3020 // Carrusel de imágenes automático (solo si NO hay video) 3021 document.querySelectorAll('[data-carousel]').forEach(element => { 3022 const videoId = element.getAttribute('data-video-bg'); 3023 const carouselData = element.getAttribute('data-carousel'); 3024 const heroRight = element.querySelector('.sta-hero-right'); 3025 const isVersion3 = element.closest('.hero-container').classList.contains('show-version-3'); 3026 const isNoFilter = element.closest('.hero-container').classList.contains('no-filter'); 3027 3028 // Seleccionar el contenedor correcto según la versión 3029 const carouselContainer = isVersion3 3030 ? element.querySelector('.sta-hero-carousel-v3') 3031 : element.querySelector('.sta-hero-carousel'); 3032 3033 let hasValidCarousel = false; 3034 3035 // Solo mostrar carrusel si NO hay video Y hay datos válidos 3036 if ((!videoId || videoId.trim() === '') && carouselContainer && carouselData && carouselData.trim() !== '' && carouselData !== '[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/178#Escritorio en habitaci\u00f3n del Palacio del Infante Don Juan Manuel en Belmonte con libros, silla de madera y ventana con vistas al exterior","name":"Escritorio en habitaci\u00f3n del Palacio del Infante Don Juan Manuel en Belmonte con libros, silla de madera y ventana con vistas al exterior"}]' && carouselData !== '') { 3037 try { 3038 const images = JSON.parse(carouselData); 3039 3040 if (Array.isArray(images) && images.length > 0) { 3041 hasValidCarousel = true; 3042 3043 // Mostrar carrusel y ocultar background-image 3044 carouselContainer.style.display = 'block'; 3045 element.style.backgroundImage = 'none'; 3046 3047 // Crear items del carrusel
3048 images.forEach((img, index) => { 3049 const item = document.createElement('div'); 3050 item.className = 'sta-hero-carousel-item'; 3051 if (index === 0) item.classList.add('active'); 3052 item.style.backgroundImage = isNoFilter ? `url('${img.url}')` : `linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('${img.url}')`; 3053 carouselContainer.appendChild(item); 3054 }); 3055 3056 // VERSION 3: Ocultar imagen estática si hay carrusel 3057 if (isVersion3 && heroRight) { 3058 const img = heroRight.querySelector('img'); 3059 if (img) img.style.display = 'none'; 3060 } 3061 3062 // Auto-rotación cada 5 segundos 3063 if (images.length > 1) { 3064 let currentIndex = 0; 3065 3066 setInterval(() => { 3067 const items = carouselContainer.querySelectorAll('.sta-hero-carousel-item'); 3068 items[currentIndex].classList.remove('active'); 3069 currentIndex = (currentIndex + 1) % items.length; 3070 items[currentIndex].classList.add('active'); 3071 }, 5000); 3072 } 3073 } 3074 } catch (e) { 3075 console.error('Error parsing carousel data:', e); 3076 } 3077 } 3078 3079 // Si no hay carrusel válido, ocultarlo para mostrar la imagen de fondo 3080 if (!hasValidCarousel && carouselContainer) { 3081 carouselContainer.style.display = 'none'; 3082 } 3083 }); 3084 }); 3085 3086 3087 3088 // Ocultar video thumb si no hay video Wistia 3089 document.addEventListener('DOMContentLoaded', function() { 3090 document.querySelectorAll('.sta-hero-video-thumb').forEach(thumb => { 3091 const videoId = thumb.getAttribute('data-video-id'); 3092 if (!videoId || videoId.trim() === '') { 3093 thumb.style.display = 'none'; 3094 } else { 3095 thumb.style.removeProperty('display'); 3096 } 3097 }); 3098 }); 3099 3100 // Scroll smooth 3101 document.addEventListener('DOMContentLoaded', function() { 3102 const scrollElement = document.querySelector('.sta-hero-scroll'); 3103 if (scrollElement) { 3104 scrollElement.addEventListener('click', function() { 3105 window.scrollBy({ 3106 top: window.innerHeight, 3107 behavior: 'smooth' 3108 }); 3109 }); 3110 } 3111 }); 3112 3113 document.addEventListener('click', function (e) { 3114 if (window.innerWidth <= 801) return; 3115 const dateContainer = e.target.closest('[class*="dateContainer-"]'); 3116 if (!dateContainer) return; 3117 requestAnimationFrame(function check() { 3118 const datepicker = document.querySelector('[class*="datepicker-"]'); 3119 if (datepicker) { 3120 const bottom = datepicker.getBoundingClientRect().bottom + window.scrollY; 3121 window.scrollTo({ top: bottom / 3, behavior: 'smooth' }); 3122 } else { 3123 requestAnimationFrame(check); 3124 } 3125 }); 3126 }); 3127 3128</script>
3128 3129 3130 <section class="editorial-content hide-subtitle invert" id="editorial-content-148900" data-scroll=""> 3131 <div class="editorial-content-container"> 3132 <div class="editorial-content-image-wrapper" data-wistia-id=""> 3133 <img class="editorial-content-image" src="https://synergy.booking-channel.com/api/hotels/413/medias/222#Claustro interior del Palacio del Infante Don Juan Manuel en Belmonte con arcos de piedra, mesas lounge y ambiente elegante" alt="Un viaje a la historia con el confort de hoy" /> 3134 </div> 3135 <div class="editorial-content-wrapper"> 3136 <span class="editorial-content-highlight"></span> 3137 <h2 class="editorial-content-title">Un viaje a la historia con el confort de hoy</h2> 3138 <span class="editorial-content-subtitle"></span> 3139 <span class="editorial-content-description"><p>El <b>Palacio Del Infante Don Juan Manuel Hotel Spa</b>, situado en Belmonte, Cuenca, se encuentra en lo que antaño fue la primera fortaleza de Belmonte, <b>convertida en monasterio años más tarde</b>.<br/><br/>La historia, tradición y cultura del lugar se funden con <b>la modernidad</b>, <b>la calidad y la comodidad</b> de nuestro hotel, un remanso de tranquilidad donde disfrutará de una estancia inolvidable.<br/><br/>Descubra las instalaciones del <b>Palacio Del Infante Don Juan Manuel Hotel Spa</b> y viaje atrás en el tiempo desde sus instalaciones, completamente rehabilitadas pero conservando la esencia y la inspiración de la <b>arquitectura e historia originarias.</b><br/><br/></p></span> 3140 <a href="" class="editorial-content-button"></a> 3141 </div> 3142 3143 </div> 3144</section> 3145 3146<style> 3147.editorial-content { 3148 --textColor: var(--color-text); 3149 --inline-padding: 100px; 3150 --backgroundColor: var(--color-background); 3151 background-color: var(--backgroundColor); 3152 3153 width: 100%; 3154 box-sizing: border-box; 3155 3156 &.background-color{ 3157 --backgroundColor: ; 3158 } 3159 &.font-white{ 3160 --textColor: #FFFFFF; 3161 } 3162 @media (max-width: 599px) { 3163 &.hide-image{ 3164 .editorial-content-image-wrapper{ 3165 display: none; 3166 } 3167 } 3168 &.center{ 3169 &.variant-2{ 3170 .editorial-content-highlight{ 3171 display: flex; 3172 flex-direction: row; 3173 align-items: center; 3174 line-height: 1; 3175 &::after { 3176 min-width: 20%; 3177 } 3178 &::before { 3179 min-width: 20%; 3180 content: ''; 3181 position: relative; 3182 display: flex; 3183 height: 1px; 3184 background-color: currentColor; 3185 opacity: 0.3; 3186 flex-grow: 1; 3187 margin-right: 16px; 3188 } 3189 } 3190 } 3191 .editorial-content-container{ 3192 text-align: center; 3193 } 3194 .editorial-content-button{ 3195 align-self: center; 3196 } 3197 } 3198 } 3199 @media (min-width: 1024px) { 3200 padding: 0; 3201 &.invert{ 3202 .editorial-content-image-wrapper{ 3203 order:1; 3204 margin: 35px var(--inline-padding) 35px 0px; 3205 } 3206 .editorial-content-wrapper{ 3207 order:0; 3208 padding-left: var(--inline-padding); 3209 padding-right: 0px; 3210 } 3211 } 3212 &.highlight-left{ 3213 .editorial-content-container{ 3214 gap: 120px; 3215 } 3216 .editorial-content-image-wrapper{ 3217 flex: 0 1 35%; 3218 } 3219 .editorial-content-wrapper{ 3220 flex: 0 1 65%; 3221 } 3222 } 3223 &.highlight-center{ 3224 &.variant-2{ 3225 .editorial-content-highlight{ 3226 &::after { 3227 min-width: 35%; 3228 } 3229 &::before { 3230 min-width: 35%; 3231 content: ''; 3232 position: relative; 3233 display: flex; 3234 height: 1px; 3235 background-color: currentColor; 3236 opacity: 0.3; 3237 flex-grow: 1; 3238 margin-right: 16px; 3239 } 3240 } 3241 } 3242 .editorial-content-highlight-wrapper{ 3243 width: 100%; 3244 text-align: center; 3245 padding-top: 35px; 3246 padding-bottom: 30px; 3247 @media (min-width: 1024px) { 3248 padding-inline: var(--inline-padding); 3249 } 3250 } 3251 .editorial-content-container:after{ 3252 content: ''; 3253 display: block; 3254 width: 1px; 3255 background-color: var(--textColor); 3256 margin-block: 35px; 3257 } 3258 .editorial-content-image-wrapper{ 3259 flex: 0 1 50%; 3260 } 3261 3262 .editorial-content-wrapper{ 3263 order: 2; 3264 } 3265 .editorial-content-container:after{ 3266 order: 1; 3267 } 3268 &.invert{ 3269 .editorial-content-wrapper, .editorial-content-container:after{ 3270 order: unset; 3271 } 3272 } 3273 3274 } 3275 &.title-left{ 3276 @media (min-width: 1024px) { 3277 .editorial-content-image-wrapper, 3278 .editorial-content-wrapper{ 3279 flex: 0 1 50%; 3280 } 3281 .editorial-content-title, 3282 .editorial-content-subtitle{ 3283 padding-block: 24px; 3284 } 3285 &.title-left{ 3286 .editorial-content-subtitle{ 3287 display: block !important; 3288 } 3289 } 3290 } 3291 } 3292 &.double-column{ 3293 .editorial-content-description{ 3294 column-count: 2; 3295 column-gap: 24px; 3296 } 3297 } 3298 } 3299 @media (max-width: 1439px) { 3300 --inline-padding: 35px; 3301 } 3302 3303 &.hide-subtitle{ 3304 .editorial-content-subtitle{ 3305 display: none; 3306 } 3307 } 3308 &.image-small{ 3309 .editorial-content-image-wrapper{ 3310 height: 370px; 3311 } 3312 @media (min-width: 1024px) { 3313 .editorial-content-image-wrapper{ 3314 height: unset; 3315 flex: 0 1 40%; 3316 } 3317 .editorial-content-wrapper{ 3318 flex: 0 1 60%; 3319 } 3320 } 3321 } 3322 &.image-full{ 3323 .wistia_embed{ 3324 border-radius: 0px; 3325 width: 120% !important; 3326 right: 8% !important; 3327 } 3328 &.variant-2{ 3329 .editorial-content-image{ 3330 position: absolute; 3331 width: 115%; 3332 transform: translateX(-7%); 3333 @media (min-width: 1024px) { 3334 position: inherit; 3335 width: 100%; 3336 transform: unset; 3337 } 3338 } 3339 @media (max-width: 1023px) { 3340 .editorial-content-image-wrapper{ 3341 overflow:visible; 3342 position:relative; 3343 } 3344 } 3345 } 3346 /* .editorial-content-wrapper{ 3347 padding-top: 40px 3348 } */ 3349 .editorial-content-image-wrapper{ 3350 padding:0; 3351 margin: 0; 3352 3353 } 3354 .editorial-content-image{ 3355 border-radius: 0; 3356 } 3357 } 3358 3359 .editorial-content-container { 3360 display:flex; 3361 flex-direction: column; 3362 gap: 8px; 3363 max-width: 100%; 3364 color: var(--textColor); 3365 overflow: hidden; 3366 @media (min-width: 1024px) { 3367 flex-direction: row; 3368 gap:72px; 3369 } 3370 } 3371 .editorial-content-wrapper{ 3372 display: flex; 3373 flex-direction: column; 3374 gap: 24px; 3375 box-sizing: border-box; 3376 padding: 40px 24px 40px 24px; 3377 @media (min-width: 1024px) { 3378 flex: 0 1 50%; 3379 padding: 35px var(--inline-padding) 35px 0px; 3380 margin: 0; 3381 } 3382 } 3383 .editorial-content-highlight { 3384 font-family: var(--font-subtitle); 3385 font-size: var(--font-size-base); 3386 font-weight: 700; 3387 letter-spacing: 1px; 3388 text-transform: uppercase; 3389 opacity: 0.9; 3390 position: relative; 3391 } 3392 3393 .editorial-content-title { 3394 font-family: var(--font-title); 3395 font-size: var(--font-size-h2); 3396 font-weight: 700; 3397 margin-bottom: 0px; 3398 } 3399 3400 .editorial-content-subtitle { 3401 font-family: var(--font-subtitle); 3402 font-size: var(--font-size-h3); 3403 line-height: 40px; 3404 font-weight: 500; 3405 } 3406 3407 .editorial-content-description { 3408 font-family: var(--font-body); 3409 font-size: var(--font-size-base); 3410 line-height: 25px; 3411 margin-bottom: 10px; 3412 } 3413 3414 .editorial-content-button { 3415 padding: 16px 24px; 3416 background-color: var(--color-principal); 3417 color: var(--color-text-buttons); 3418 text-decoration: none; 3419 border-radius: var(--radius-buttons); 3420 font-size: var(--font-size-h5); 3421 font-family: var(--font-body); 3422 text-align: center; 3423 align-self: flex-start; 3424 transition: background-color 0.3s ease; 3425 display: none; 3426 &.visible-button { 3427 display: inline-block; 3428 } 3429 &:hover{ 3430 background-color: #0f2a3d; 3431 } 3432 } 3433 3434 .editorial-content-image-wrapper { 3435 width: 100%; 3436 height: 500px; 3437 box-sizing: border-box; 3438 overflow: hidden; 3439 margin-top: 15px; 3440 padding: 25px; 3441 position: relative; 3442 border-radius: var(--radius-elements); 3443 3444 @media (min-width: 1024px) { 3445 flex: 1; 3446 margin:0; 3447 height: unset; 3448 align-self: stretch; 3449 padding: 0; 3450 margin: 35px 0px 35px var(--inline-padding); 3451 } 3452 } 3453 .wistia_embed{ 3454 border-radius: var(--radius-elements); 3455 overflow: hidden; 3456 position:relative; 3457 } 3458 .video-wrapper .wistia_embed, 3459 .video-wrapper .wistia_embed iframe { 3460 width: 100%; 3461 height: 100%; 3462 } 3463 3464 .wistia_embed > div { 3465 position: absolute !important; 3466 top: 50%; 3467 left: 50%; 3468 width: 177.78% !important; 3469 height: 100% !important; 3470 transform: translate(-50%, -50%); 3471 } 3472 3473 .editorial-content-image { 3474 width: 100%; 3475 height: 100%; 3476 display: block; 3477 object-fit: cover; 3478 border-radius: var(--radius-elements); 3479 position: absolute; 3480 top: 0; 3481 left: 0; 3482 } 3483 3484 &.variant-2{ 3485 .editorial-content-wrapper{ 3486 padding-top: 40px; 3487 @media (min-width: 1024px) { 3488 } 3489 } 3490 .editorial-content-highlight{ 3491 display: flex; 3492 flex-direction: row; 3493 align-items: flex-end; 3494 line-height: 1; 3495 &::after { 3496 min-width: 50%; 3497 content: ''; 3498 position: relative; 3499 display: flex; 3500 height: 1px; 3501 background-color: currentColor; 3502 opacity: 0.3; 3503 flex-grow: 1; 3504 margin-left: 16px; 3505 } 3506 } 3507 .editorial-content-title{ 3508 order:1; 3509 @media (min-width: 1024px) { 3510 margin-top: auto; 3511 } 3512 } 3513 .editorial-content-button{ 3514 order:2; 3515 } 3516 .editorial-content-subtitle{ 3517 display: none; 3518 } 3519 } 3520 &.variant-3{ 3521 .editorial-content-container{ 3522 justify-content: center; 3523 align-items: center; 3524 flex-direction: column; 3525 height: auto; 3526 } 3527 &.background-image{ 3528 --textColor: #FFFFFF; 3529 background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.70) 0%, rgba(0, 0, 0, 0.70) 100%), url("https://synergy.booking-channel.com/api/hotels/413/medias/222#Claustro interior del Palacio del Infante Don Juan Manuel en Belmonte con arcos de piedra, mesas lounge y ambiente elegante"); ; 3530 background-size: cover; 3531 background-position: center; 3532 } 3533 .editorial-content-highlight, 3534 .editorial-content-title, 3535 .editorial-content-description{ 3536 text-align: center; 3537 margin: 0; 3538 } 3539 .editorial-content-wrapper{ 3540 flex: 1; 3541 max-width: 1240px; 3542 padding-top: 40px; 3543 @media (min-width: 1024px) { 3544 padding-inline: 100px; 3545 } 3546 } 3547 .editorial-content-subtitle, 3548 .editorial-content-image-wrapper{ 3549 display: none; 3550 } 3551 .editorial-content-button{ 3552 align-self: center; 3553 margin-top: 24px; 3554 } 3555 } 3556
3557 .swiper-controls-overlay { 3558 position: absolute; 3559 inset: 0; 3560 z-index: 10; 3561 opacity: 1; 3562 pointer-events: none; 3563 transition: opacity 0.3s ease; 3564 border-radius: var(--radius-elements); 3565 overflow: hidden; 3566 padding: 25px; 3567 .swiper-controls-overlay-wrapper{ 3568 background: linear-gradient(to top, rgba(0, 0, 0, 0.65) 0%, transparent 75%); 3569 width: 100%; 3570 height: 100%; 3571 border-radius: var(--radius-elements); 3572 } 3573 @media (min-width: 1024px) { 3574 padding: 0; 3575 opacity: 0; 3576 } 3577 } 3578 3579 .editorial-content-image-wrapper:hover .swiper-controls-overlay { 3580 opacity: 1; 3581 pointer-events: all; 3582 } 3583 .swiper-nav-wrapper { 3584 position: absolute; 3585 top: 50%; 3586 left: 0; 3587 width: 100%; 3588 transform: translateY(-50%); 3589 display: flex; 3590 justify-content: space-between; 3591 align-items: center; 3592 pointer-events: none; 3593 z-index: 10; 3594 padding: 0 12px; 3595 box-sizing: border-box; 3596 } 3597 3598 .swiper-button-prev, 3599 .swiper-button-next { 3600 pointer-events: all; 3601 border: none; 3602 border-radius: 50%; 3603 width: 40px; 3604 height: 40px; 3605 display: flex; 3606 align-items: center; 3607 justify-content: center; 3608 cursor: pointer; 3609 transition: all 0.4s ease; 3610 color: white; 3611 font-size: 35px; 3612 @media (min-width: 1024px) { 3613 font-size: 20px; 3614 } 3615 } 3616 @media (max-width: 1023px) { 3617 .swiper-button-prev{ 3618 left: 20px; 3619 } 3620 .swiper-button-next{ 3621 right: 20px; 3622 } 3623 } 3624 3625 .swiper-button-prev:hover, 3626 .swiper-button-next:hover { 3627 transform: scale(1.3); 3628 } 3629 3630 .swiper-button-prev i, 3631 .swiper-button-next i { 3632 font-size: 20px; 3633 color: #333; 3634 } 3635 3636 .swiper-button-prev::after, 3637 .swiper-button-next::after { 3638 display: none; 3639 } 3640 3641 .swiper-pagination { 3642 position: absolute; 3643 bottom: 35px; 3644 left: 0; 3645 width: 100%; 3646 display: flex; 3647 justify-content: center; 3648 align-items: center; 3649 gap: 6px; 3650 z-index: 10; 3651 pointer-events: none; 3652 @media (min-width: 1024px) { 3653 bottom: 12px; 3654 } 3655 } 3656 3657 .swiper-pagination-bullet { 3658 pointer-events: all; 3659 width: 8px; 3660 height: 8px; 3661 border-radius: 50%; 3662 background: rgba(255, 255, 255, 0.6); 3663 opacity: 1; 3664 cursor: pointer; 3665 transition: background 0.2s ease, transform 0.2s ease; 3666 } 3667 3668 .swiper-pagination-bullet-active { 3669 background: rgba(255, 255, 255, 1); 3670 transform: scale(1.3); 3671 } 3672} 3673.w-bottom-bar, 3674.w-bottom-bar-lower{ 3675 display: none !important; 3676} 3677 3678 3679 3680</style> 3681 3682
3683<script type="module"> 3684import {loadWistiaVideos} from '/templates/cadenas/corporativaair/js/libraries/keytelFunctions.js'; 3685 3686function moveHighlightText(module ) { 3687 const highlight = module.querySelector('.editorial-content-highlight'); 3688 const position = [...module.classList].find(cls => cls.startsWith('highlight-')); 3689 3690 3691 if (!position || !highlight) return; 3692 3693 switch(position) { 3694 case 'highlight-left': 3695 3696 const imageWrapper = module.querySelector('.editorial-content-image-wrapper'); 3697 if (imageWrapper) { 3698 imageWrapper.querySelector('img').style.display = 'none'; 3699 imageWrapper.appendChild(highlight); 3700 } 3701 break; 3702 case 'highlight-center': 3703 3704 const highlightWrapper = document.createElement('div'); 3705 highlightWrapper.className = 'editorial-content-highlight-wrapper'; 3706 highlightWrapper.appendChild(highlight); 3707 module.insertBefore(highlightWrapper, module.firstChild); 3708 3709 break; 3710 default: 3711 break; 3712 } 3713 3714} 3715function moveTitleText( module ) { 3716 const title = module.querySelector('.editorial-content-title'); 3717 const subtitle = module.querySelector('.editorial-content-subtitle'); 3718 const position = [...module.classList].find(cls => cls.startsWith('title-left')); 3719 3720 if (!position) return; 3721 3722 const imageWrapper = module.querySelector('.editorial-content-image-wrapper'); 3723 if (imageWrapper) { 3724 imageWrapper.querySelector('img').style.display = 'none'; 3725 if (title) imageWrapper.appendChild(title); 3726 if (subtitle) imageWrapper.appendChild(subtitle); 3727 } 3728} 3729 3730function createImageGallery(module, gallery) { 3731 const wrapper = module.querySelector('.editorial-content-image-wrapper'); 3732 if (!wrapper) return; 3733 3734 wrapper.innerHTML = ''; 3735 wrapper.classList.add('swiper'); 3736 3737 const swiperWrapper = document.createElement('div'); 3738 swiperWrapper.className = 'swiper-wrapper'; 3739 3740 gallery.forEach((img, index) => { 3741 3742 const imageWrapper = document.createElement('div'); 3743 imageWrapper.className = 'gallery-image-wrapper swiper-slide'; 3744 const image = document.createElement('img'); 3745 image.className = 'editorial-content-image'; 3746 image.src = img.url; 3747 image.alt = img.name || `Image ${index + 1}`; 3748 imageWrapper.appendChild(image); 3749 swiperWrapper.appendChild(imageWrapper); 3750 }); 3751 wrapper.appendChild(swiperWrapper); 3752 3753 const overlay = document.createElement('div'); 3754 overlay.className = 'swiper-controls-overlay'; 3755 const overlayWrapper = document.createElement('div'); 3756 overlayWrapper.className = 'swiper-controls-overlay-wrapper'; 3757 overlay.appendChild(overlayWrapper); 3758 3759 const navWrapper = document.createElement('div'); 3760 navWrapper.className = 'swiper-nav-wrapper'; 3761 3762 const prevBtn = document.createElement('button'); 3763 prevBtn.className = 'swiper-button-prev'; 3764 prevBtn.setAttribute('aria-label', 'Previous slide'); 3765 prevBtn.innerHTML = `<div class="newicons-chevron-izquierda"></div>`; 3766 3767 const nextBtn = document.createElement('button'); 3768 nextBtn.className = 'swiper-button-next'; 3769 nextBtn.setAttribute('aria-label', 'Next slide'); 3770 nextBtn.innerHTML = `<div class="newicons-chevron-derecha"></div>`; 3771 3772 navWrapper.appendChild(prevBtn); 3773 navWrapper.appendChild(nextBtn); 3774 3775 const pagination = document.createElement('div'); 3776 pagination.className = 'swiper-pagination'; 3777 3778 overlayWrapper.appendChild(navWrapper); 3779 overlayWrapper.appendChild(pagination); 3780 wrapper.appendChild(overlay); 3781 3782 new Swiper(wrapper, { 3783 slidesPerView: 1, 3784 spaceBetween: 25, 3785 loop: true, 3786 effect: 'fade', 3787 fadeEffect: { 3788 crossFade: true 3789 }, 3790 pagination: { 3791 el: '.swiper-pagination', 3792 clickable: true, 3793 }, 3794 navigation: { 3795 nextEl: '.swiper-button-next', 3796 prevEl: '.swiper-button-prev', 3797 }, 3798 });
3799} 3800 3801function init_editorialContent(id) { 3802 const module = document.querySelector('#editorial-content-' + id); 3803 const wrapper = module.querySelector('.editorial-content-wrapper'); 3804 const imageWrapper = module.querySelector('.editorial-content-image-wrapper'); 3805 const button = module.querySelector('.editorial-content-button'); 3806 const hasLink = !!button && 3807 button.textContent.trim() !== '' && 3808 !!button.getAttribute('href')?.trim(); 3809 const imageGallery = {gallery : JSON.parse('[]')}; 3810 3811 if (imageGallery && imageGallery.gallery.length > 0) { 3812 createImageGallery(module, imageGallery.gallery); 3813 } 3814 3815 if(hasLink) { 3816 module.querySelector('.editorial-content-button').classList.add('visible-button'); 3817 } 3818 3819 let variant = 'default'; 3820 3821 if (module?.classList.contains('variant-2')) { 3822 variant = 'variant-2'; 3823 } else if (module?.classList.contains('variant-3')) { 3824 variant = 'variant-3'; 3825 } else if (module?.classList.contains('variant-4')) { 3826 variant = 'variant-4'; 3827 } 3828 3829 switch(variant) { 3830 case 'variant-2': 3831 if (window.innerWidth < 1024) { 3832 if (imageWrapper) { 3833 wrapper.appendChild(imageWrapper); 3834 } 3835 } 3836 break; 3837 case 'variant-3': 3838 break; 3839 case 'variant-4': 3840 break; 3841 default: 3842 break; 3843 } 3844 if (window.innerWidth >= 600){ 3845 moveHighlightText(module); 3846 moveTitleText(module); 3847 } 3848 if(!(module?.classList.contains('highlight-left') || module?.classList.contains('title-left'))){ 3849 loadWistiaVideos(module); 3850 } 3851 3852} 3853document.addEventListener("DOMContentLoaded", () => { 3854 init_editorialContent('148900'); 3855}); 3856</script>
3856 3857 3858<div class="tpl-carousel-rooms " data-scroll=""> 3859 <div class="sta-carousel-header"> 3860 <h2 class="sta-carousel-title">Nuestras habitaciones</h2> 3861 <span class="sta-carousel-description"> 3862 3863 </span> 3864 </div> 3865 3866 <div class="sta-carousel-container"> 3867 <h2 class="sta-carousel-main-title">_carrusel_hab</h2> 3868 3869 <button class="sta-carousel-nav sta-carousel-prev" aria-label="Anterior"> 3870 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 3871 <polyline points="15 18 9 12 15 6"></polyline> 3872 </svg> 3873 </button> 3874 3875 <div class="sta-carousel-track-container"> 3876 <div class="sta-carousel-track"> 3877 3878 <div class="sta-carousel-slide"> 3879 <div class="sta-room-card"> 3880 <div class="sta-room-image-container"> 3881 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/5#Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con dos camas, vigas de madera y vistas al entorno hist\u00f3rico","name":"Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con dos camas, vigas de madera y vistas al entorno hist\u00f3rico"}]'> 3882 3883 </div> 3884 <div class="sta-room-dots"> 3885 <span class="sta-dot active" data-index="0"></span> 3886 <span class="sta-dot" data-index="1"></span> 3887 <span class="sta-dot" data-index="2"></span> 3888 <span class="sta-dot" data-index="3"></span> 3889 </div> 3890 </div> 3891 <div class="sta-room-content"> 3892 <h3 class="sta-room-title">Habitación doble o twin</h3> 3893 <span class="sta-room-text"> 3894 <p>Habitación para una o dos personas con <b>cama King Size</b> o <b>dos camas individuales</b> de 1.05m. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/></p> 3895 </span> 3896 <div class="sta-room-buttons"> 3897 <a href="/habitacion-doble-o-twin-2-camas.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 3898 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 3899 </div> 3900 </div> 3901 </div> 3902 </div> 3903 <div class="sta-carousel-slide"> 3904 <div class="sta-room-card"> 3905 <div class="sta-room-image-container"> 3906 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/52#Habitaci\u00f3n doble superior del Palacio del Infante Don Juan Manuel en Belmonte con techo abuhardillado, vigas de madera y zona de descanso luminosa","name":"Habitaci\u00f3n doble superior del Palacio del Infante Don Juan Manuel en Belmonte con techo abuhardillado, vigas de madera y zona de descanso luminosa"}]'> 3907 3908 </div> 3909 <div class="sta-room-dots"> 3910 <span class="sta-dot active" data-index="0"></span> 3911 <span class="sta-dot" data-index="1"></span> 3912 <span class="sta-dot" data-index="2"></span> 3913 <span class="sta-dot" data-index="3"></span> 3914 </div> 3915 </div> 3916 <div class="sta-room-content"> 3917 <h3 class="sta-room-title">Habitación doble uso individual</h3>
3918 <span class="sta-room-text"> 3919 <p>Habitación de equipada con <b>cama King Size</b> o <b>dos camas individuales</b> de 1.05m. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/><br/></p> 3920 </span> 3921 <div class="sta-room-buttons"> 3922 <a href="/habitacion-doble-uso-individual.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 3923 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 3924 </div> 3925 </div> 3926 </div> 3927 </div> 3928 <div class="sta-carousel-slide"> 3929 <div class="sta-room-card"> 3930 <div class="sta-room-image-container"> 3931 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/3#Vistas al castillo de Belmonte desde una habitaci\u00f3n del Palacio del Infante Don Juan Manuel con paisaje y tejados tradicionales","name":"Vistas al castillo de Belmonte desde una habitaci\u00f3n del Palacio del Infante Don Juan Manuel con paisaje y tejados tradicionales"}]'> 3932 3933 </div> 3934 <div class="sta-room-dots"> 3935 <span class="sta-dot active" data-index="0"></span> 3936 <span class="sta-dot" data-index="1"></span> 3937 <span class="sta-dot" data-index="2"></span> 3938 <span class="sta-dot" data-index="3"></span> 3939 </div> 3940 </div> 3941 <div class="sta-room-content"> 3942 <h3 class="sta-room-title">Habitación doble con vistas al castillo</h3> 3943 <span class="sta-room-text"> 3944 <p>Habitación doble con fabulosas <b>vistas al Castillo del Marqués de Villena</b>, del s. XV. Cuenta con <b>cama King Size </b>o <b>dos camas individuales</b> de 1.05m. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/><br/></p> 3945 </span> 3946 <div class="sta-room-buttons"> 3947 <a href="/habitacion-doble-con-vistas-al-castillo.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 3948 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 3949 </div> 3950 </div> 3951 </div> 3952 </div> 3953 <div class="sta-carousel-slide"> 3954 <div class="sta-room-card"> 3955 <div class="sta-room-image-container"> 3956 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/75#Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con cama de matrimonio, techo con vigas de madera y zona espaciosa","name":"Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con cama de matrimonio, techo con vigas de madera y zona espaciosa"}]'> 3957 3958 </div> 3959 <div class="sta-room-dots"> 3960 <span class="sta-dot active" data-index="0"></span> 3961 <span class="sta-dot" data-index="1"></span> 3962 <span class="sta-dot" data-index="2"></span> 3963 <span class="sta-dot" data-index="3"></span> 3964 </div> 3965 </div> 3966 <div class="sta-room-content"> 3967 <h3 class="sta-room-title">Habitación cuádruple</h3>
3968 <span class="sta-room-text"> 3969 <p>La habitación cuádruple con capacidad para hasta 4 personas, es <b>ideal para alojarse en familia</b>. Gracias a su <b>amplia capacidad</b> podréis disfrutar juntos de la mejor estancia. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/><br/></p> 3970 </span> 3971 <div class="sta-room-buttons"> 3972 <a href="/habitacion-cuadruple.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 3973 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 3974 </div> 3975 </div> 3976 </div> 3977 </div> 3978 <div class="sta-carousel-slide"> 3979 <div class="sta-room-card"> 3980 <div class="sta-room-image-container"> 3981 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/270#Palacio Del Infante Don Juan Manuel Hotel Spa_Belmonte_Junior Suite Amplia y Elegante para Disfrutar","name":""},{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/271#Palacio Del Infante Don Juan Manuel Hotel Spa_Belmonte_Junior Suite Amplia y Elegante para Disfrutar","name":""}]'> 3982 3983 </div> 3984 <div class="sta-room-dots"> 3985 <span class="sta-dot active" data-index="0"></span> 3986 <span class="sta-dot" data-index="1"></span> 3987 <span class="sta-dot" data-index="2"></span> 3988 <span class="sta-dot" data-index="3"></span> 3989 </div> 3990 </div> 3991 <div class="sta-room-content"> 3992 <h3 class="sta-room-title">Junior Suite</h3> 3993 <span class="sta-room-text"> 3994 <p>Si reserva una de estas habitación el hotel le obsequiará con un <b>detalle de bienvenida</b> en la habitación. Está dotada de una <b>pequeña sala de estar anexa </b>al dormitorio. Especialmente pensada para quien busca mayor comodidad y relax en su estancia en nuestro hotel. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo. <br/><br/></p> 3995 </span> 3996 <div class="sta-room-buttons"> 3997 <a href="/junior-suite.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 3998 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 3999 </div> 4000 </div> 4001 </div> 4002 </div> 4003 <div class="sta-carousel-slide"> 4004 <div class="sta-room-card"> 4005 <div class="sta-room-image-container"> 4006 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/47#Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con sal\u00f3n integrado, chimenea de piedra y vigas de madera","name":"Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con sal\u00f3n integrado, chimenea de piedra y vigas de madera"},{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/272#Palacio Del Infante Don Juan Manuel Hotel Spa_Belmonte_Suite Exclusiva Amplia y Elegante para Disfrutar","name":""},{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/273#Palacio Del Infante Don Juan Manuel Hotel Spa_Belmonte_Suite Exclusiva Amplia y Elegante para Disfrutar","name":""}]'> 4007 4008 </div> 4009 <div class="sta-room-dots">
4010 <span class="sta-dot active" data-index="0"></span> 4011 <span class="sta-dot" data-index="1"></span> 4012 <span class="sta-dot" data-index="2"></span> 4013 <span class="sta-dot" data-index="3"></span> 4014 </div> 4015 </div> 4016 <div class="sta-room-content"> 4017 <h3 class="sta-room-title">Suite</h3> 4018 <span class="sta-room-text"> 4019 <p>Amplia y preciosa habitación <b>pensada para las ocasiones más especiales</b>. Cuenta con un dormitorio con <b>cama King Size</b>, una <b>salita de estar anexa</b> al dormitorio y un <b>dormitorio extra para sus invitados</b> (contacte con nosotros si desea alojar invitados con usted). Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/><br/></p> 4020 </span> 4021 <div class="sta-room-buttons"> 4022 <a href="/suite.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 4023 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 4024 </div> 4025 </div> 4026 </div> 4027 </div> 4028 <div class="sta-carousel-slide"> 4029 <div class="sta-room-card"> 4030 <div class="sta-room-image-container"> 4031 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/155#Habitaci\u00f3n triple del Palacio del Infante Don Juan Manuel en Belmonte con tres camas individuales, mobiliario de madera y ambiente luminoso","name":"Habitaci\u00f3n triple del Palacio del Infante Don Juan Manuel en Belmonte con tres camas individuales, mobiliario de madera y ambiente luminoso"}]'> 4032 4033 </div> 4034 <div class="sta-room-dots"> 4035 <span class="sta-dot active" data-index="0"></span> 4036 <span class="sta-dot" data-index="1"></span> 4037 <span class="sta-dot" data-index="2"></span> 4038 <span class="sta-dot" data-index="3"></span> 4039 </div> 4040 </div> 4041 <div class="sta-room-content"> 4042 <h3 class="sta-room-title">Habitación triple</h3> 4043 <span class="sta-room-text"> 4044 <p>Amplia habitación con <b>tres camas individuales</b> de 1.05m. La habitación triple puede ampliarse previa reserva a cuádruple para estancias familiares. Cuenta con un <b>sofá cama</b> o una <b>pequeña cama extra</b>. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/><br/></p> 4045 </span> 4046 <div class="sta-room-buttons"> 4047 <a href="/habitacion-triple.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 4048 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 4049 </div> 4050 </div> 4051 </div> 4052 </div> 4053 <div class="sta-carousel-slide"> 4054 <div class="sta-room-card"> 4055 <div class="sta-room-image-container"> 4056 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/151#Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con techo de madera inclinado, vigas vistas y zona de descanso luminosa","name":"Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con techo de madera inclinado, vigas vistas y zona de descanso luminosa"}]'> 4057 4058 </div> 4059 <div class="sta-room-dots">
4060 <span class="sta-dot active" data-index="0"></span> 4061 <span class="sta-dot" data-index="1"></span> 4062 <span class="sta-dot" data-index="2"></span> 4063 <span class="sta-dot" data-index="3"></span> 4064 </div> 4065 </div> 4066 <div class="sta-room-content"> 4067 <h3 class="sta-room-title">Habitación superior con vistas</h3> 4068 <span class="sta-room-text"> 4069 <p>Habitación con <b>cama King Size</b> o <b>dos camas individuales</b> con vistas al impresionante <b>atardecer de la llanura manchega</b> o a <b>nuestro patio castellano</b> y Colegiata de San Bartolomé. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/><br/></p> 4070 </span> 4071 <div class="sta-room-buttons"> 4072 <a href="/habitacion-superior-con-vistas.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 4073 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 4074 </div> 4075 </div> 4076 </div> 4077 </div> 4078 <div class="sta-carousel-slide"> 4079 <div class="sta-room-card"> 4080 <div class="sta-room-image-container"> 4081 <div class="sta-room-images-wrapper" data-img='[{"url":"https:\/\/synergy.booking-channel.com\/api\/hotels\/413\/medias\/255#Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con cama amplia, zona de trabajo con escritorio y mobiliario de madera","name":"Habitaci\u00f3n doble del Palacio del Infante Don Juan Manuel en Belmonte con cama amplia, zona de trabajo con escritorio y mobiliario de madera"}]'> 4082 4083 </div> 4084 <div class="sta-room-dots"> 4085 <span class="sta-dot active" data-index="0"></span> 4086 <span class="sta-dot" data-index="1"></span> 4087 <span class="sta-dot" data-index="2"></span> 4088 <span class="sta-dot" data-index="3"></span> 4089 </div> 4090 </div> 4091 <div class="sta-room-content"> 4092 <h3 class="sta-room-title">Suite familiar</h3> 4093 <span class="sta-room-text"> 4094 <p>Nuestra Suite Familiar es una <b>amplia y preciosa habitación</b> pensada para las más <b>especiales ocasiones en familia</b>. Cuenta con <b>dos dormitorios</b>, un dormitorio con <b>cama King Size</b> y un dormitorio con <b>tres camas individuales</b>. Está equipada con aire acondicionado y caja fuerte. Todos nuestros baños tienen ducha con cabezal de lluvia y secador de pelo.<br/><br/></p> 4095 </span> 4096 <div class="sta-room-buttons"> 4097 <a href="/suite-familiar.html" class="sta-room-btn sta-room-btn-secondary">Ver más</a> 4098 <a href="/reservar.html" class="sta-room-btn sta-room-btn-primary">Reservar</a> 4099 </div> 4100 </div> 4101 </div> 4102 </div> 4103 </div> 4104 </div> 4105 <button class="sta-carousel-nav sta-carousel-next" aria-label="Siguiente"> 4106 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 4107 <polyline points="9 18 15 12 9 6"></polyline> 4108 </svg> 4109 </button> 4110 </div> 4111 <div class="sta-carousel-indicators"></div> 4112</div> 4113 4114<style> 4115.tpl-carousel-rooms.background-color {--backgroundColor: #000;background-color: var(--backgroundColor) !important;} 4116.tpl-carousel-rooms.font-white .sta-carousel-title,.tpl-carousel-rooms.font-white .sta-carousel-description,.tpl-carousel-rooms.font-white .sta-carousel-main-title {color: #fff !important;} 4117.tpl-carousel-rooms.font-white .sta-carousel-nav {color: #fff !important;border-color: rgba(255, 255, 255, 0.75) !important;} 4118.tpl-carousel-rooms.font-white .sta-carousel-nav:hover {background-color: rgba(255, 255, 255, 0.1) !important;border-color: rgba(255, 255, 255, 0.75) !important;}
4119.tpl-carousel-rooms.font-white.version-1 .sta-carousel-nav {background-color: #fff !important;color: #000 !important;border-color: #fff !important;} 4120.tpl-carousel-rooms.font-white.version-1 .sta-carousel-nav:hover {background-color: #000 !important;color: #fff !important;border-color: #000 !important;} 4121.tpl-carousel-rooms {width: 100%;padding: 60px 20px;position: relative;background-color: var(--color-background);} 4122.tpl-carousel-rooms.version-2 {background-image: url();background-size: cover;background-position: center;position: relative;min-height: 100vh;display: flex;align-items: center;padding-right: 0;} 4123.tpl-carousel-rooms.version-2::before {content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: rgba(0, 0, 0, 0.75);z-index: 1;} 4124.tpl-carousel-rooms.tpl-carousel-rooms.version-2.no-background-image {background-image: none !important;} 4125.tpl-carousel-rooms.version-2.no-background-image::before {display: none;} 4126.tpl-carousel-rooms.version-2 > * {position: relative;z-index: 2;} 4127.tpl-carousel-rooms.version-3 {padding: 80px 0 80px 5%;} 4128.sta-carousel-header {text-align: center;margin-bottom: 50px;max-width: 900px;margin-left: auto;margin-right: auto;} 4129.sta-carousel-title {font-family: var(--font-title) !important;font-size: var(--font-size-h2);font-weight: 700;margin-bottom: 20px;color: var(--color-text);} 4130.sta-carousel-description {font-family: var(--font-body) !important;font-size: var(--font-size-base);line-height: 1.8;color: var(--color-text);} 4131.tpl-carousel-rooms.version-2 .sta-carousel-header {display: none;} 4132.tpl-carousel-rooms.version-3 .sta-carousel-header {text-align: left;margin-bottom: 0;position: absolute;left: 5%;top: 80px;bottom: 0;max-width: 220px;display: flex;flex-direction: column;max-height: 645px;overflow: hidden;} 4133.tpl-carousel-rooms.version-3 .sta-carousel-title {font-size: var(--font-size-h2);font-weight: 800;line-height: 1.1;margin-bottom: 25px;margin-top: 5px;} 4134.tpl-carousel-rooms.version-3 .sta-carousel-description {font-size: var(--font-size-base);max-width: 100%;line-height: 1.6;color: var(--color-text);} 4135.sta-carousel-container {position: relative;max-width: 1400px;margin: 0 auto;padding: 0 60px;} 4136.tpl-carousel-rooms.version-2 .sta-carousel-container {display: grid;grid-template-columns: 380px 1fr;grid-template-rows: 1fr auto;gap: 60px 80px;align-items: center;max-width: none;padding: 0 0 0 80px;} 4137.tpl-carousel-rooms.version-3 .sta-carousel-container {max-width: none;} 4138.sta-carousel-main-title {display: none;} 4139.tpl-carousel-rooms.version-2 .sta-carousel-main-title {display: block;font-family: var(--font-title) !important;font-size: var(--font-size-h1);font-weight: 700;line-height: 1.15;color: #fff;grid-column: 1;grid-row: 1;align-self: center;margin: 0;} 4140.tpl-carousel-rooms.version-2.no-background-image .sta-carousel-main-title {color: var(--color-text);} 4141.sta-carousel-track-container {overflow: hidden;position: relative;height: 101%;} 4142.tpl-carousel-rooms.version-2 .sta-carousel-track-container {grid-column: 2;grid-row: 1;} 4143.sta-carousel-track {display: flex;transition: transform 0.5s ease-in-out;} 4144.sta-carousel-slide {min-width: 100%;padding: 10px;} 4145.tpl-carousel-rooms.version-1 .sta-carousel-slide,.tpl-carousel-rooms.version-3 .sta-carousel-slide {min-width: 50%;} 4146.tpl-carousel-rooms.version-2 .sta-carousel-slide {min-width: 460px;max-width: 460px;} 4147.sta-room-card {background: var(--color-cards);border-radius: var(--radius-elements);overflow: hidden;box-shadow: 0 2px 10px var(--color-shadow-box);transition: transform 0.3s ease, box-shadow 0.3s ease;height: 100%;display: flex;flex-direction: column;} 4148.tpl-carousel-rooms.grey-card .sta-room-card {background: #323232;color: #fff;} 4149.tpl-carousel-rooms.grey-card .sta-room-title{color: #fff;} 4150.tpl-carousel-rooms.version-1 .sta-room-card {border-radius: var(--radius-elements);} 4151.tpl-carousel-rooms.version-2 .sta-room-card {border: none;border-radius: var(--radius-elements);overflow: hidden;} 4152.tpl-carousel-rooms.version-3 .sta-room-card {border-radius: var(--radius-elements);position: relative;min-height: 450px;background: #1a1a1a;overflow: hidden;display: flex;flex-direction: column;} 4153.tpl-carousel-rooms.version-3 .sta-room-card::before {content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0;background: linear-gradient(to bottom, transparent 0%, transparent 30%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.85) 70%, #1a1a1a 85%, #1a1a1a 100%);z-index: 1;pointer-events: none;} 4154.sta-room-image-container {position: relative;width: 100%;padding-top: 65%;overflow: hidden;} 4155.tpl-carousel-rooms.version-1 .sta-room-image-container {border: 15px solid var(--color-cards);} 4156.tpl-carousel-rooms.version-1.grey-card .sta-room-image-container {border: 15px solid #323232;} 4157.tpl-carousel-rooms .sta-room-images-wrapper {position: absolute;top: 0;left: 0;width: 100%;height: 100%;} 4158.tpl-carousel-rooms .sta-room-images-wrapper .sta-room-image {opacity: 0;transition: opacity 0.5s ease-in-out;pointer-events: none;} 4159.tpl-carousel-rooms.version-1 .sta-room-images-wrapper .sta-room-image{border-radius: calc(var(--radius-elements) - 15px);} 4160.tpl-carousel-rooms .sta-room-images-wrapper .sta-room-image.active {opacity: 1;pointer-events: auto;} 4161.tpl-carousel-rooms.version-2 .sta-room-image-container {padding-top: 0;height: 250px;width: calc(100% - 40px);margin: 20px 20px 0 20px;border-radius: calc(var(--radius-elements) - 15px);overflow: hidden;position: relative;} 4162.sta-room-image {position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-fit: cover;} 4163.tpl-carousel-rooms.version-2 .sta-room-images-wrapper .sta-room-image {position: absolute;} 4164.tpl-carousel-rooms.version-3 .sta-room-image-container {position: absolute;top: 0;left: 0;right: 0;bottom: 0;padding-top: 0;height: 100%;overflow: hidden;border-radius: var(--radius-elements);} 4165.tpl-carousel-rooms.version-3 .sta-room-images-wrapper {display: block;position: absolute;top: 0;left: 0;width: 100%;height: 100%;} 4166.tpl-carousel-rooms.version-3 .sta-room-dots {display: none;} 4167.sta-room-dots {position: absolute;bottom: 15px;left: 50%;transform: translateX(-50%);display: flex;gap: 8px;z-index: 2;} 4168.sta-dot {width: 6px;height: 6px;border-radius: 50%;background: rgba(255, 255, 255, 0.5);
4168cursor: pointer;transition: all 0.3s ease;} 4169.sta-dot.active {background: #fff;width: 24px;border-radius: 4px;} 4170.tpl-carousel-rooms.version-2 .sta-room-dots {display: flex;bottom: 10px;} 4171.sta-room-content {padding: 25px;flex: 1;display: flex;flex-direction: column;} 4172.tpl-carousel-rooms.version-1 .sta-room-content {padding-top: 10px;} 4173.tpl-carousel-rooms.version-2 .sta-room-content {padding: 30px;} 4174.tpl-carousel-rooms.version-3 .sta-room-content {background: transparent;color: #fff;padding: 25px;position: absolute;left: 0;right: 0;bottom: 0;z-index: 2;display: flex;flex-direction: column;} 4175.sta-room-title {font-family: var(--font-title) !important;font-size: var(--font-size-h3);font-weight: 700;margin-bottom: 15px;color: var(--color-text);} 4176.tpl-carousel-rooms.version-1 .sta-room-title {margin-top: 0;font-size: var(--font-size-h3);} 4177.tpl-carousel-rooms.version-2 .sta-room-title {font-size: var(--font-size-h3);margin-bottom: 15px;font-weight: bold;} 4178.tpl-carousel-rooms.version-3 .sta-room-title {color: #fff;font-size: var(--font-size-h3);font-weight: 600;margin-bottom: 12px;} 4179.sta-room-text {font-family: var(--font-body) !important;font-size: var(--font-size-base);margin-bottom: 25px;flex: 1;max-height: 170px;overflow: hidden;} 4180.tpl-carousel-rooms.version-2 .sta-room-text {font-size: var(--font-size-base);margin-bottom: 25px;} 4181.tpl-carousel-rooms.version-3 .sta-room-text {color: rgba(255, 255, 255, 0.7);font-size: var(--font-size-base);margin-bottom: 50px;flex: 1;} 4182.sta-room-buttons {display: flex;gap: 12px;} 4183.tpl-carousel-rooms.version-2 .sta-room-buttons {justify-content: center;gap: 15px;} 4184.sta-room-btn {flex: 1;padding:18px;text-align: center;text-decoration: none;font-family: var(--font-body) !important;font-size: var(--font-size-buttons-small);font-weight: 600;border-radius: var(--radius-buttons);transition: all 0.3s ease;cursor: pointer;letter-spacing: 0.5px;display: flex;align-items: center;justify-content: center;} 4185a.sta-room-btn-secondary:visited{color:var(--color-principal)} 4186a.sta-room-btn-primary:visited{color:var(--color-text-buttons)} 4187.sta-room-btn-secondary {background: var(--color-cards);color: var(--color-principal);border: 2px solid var(--color-principal);border-radius: var(--radius-buttons-secondary);} 4188.sta-room-btn-secondary:hover {background: var(--color-principal);color: var(--color-text-buttons) !important; text-decoration: none;} 4189.sta-room-btn-primary {background: var(--color-principal);color: var(--color-text-buttons);border: 2px solid var(--color-principal);} 4190.sta-room-btn-primary:hover {background: var(--color-cards);border-color: var(--color-principal);color: var(--color-principal) !important;text-decoration: none;} 4191.sta-carousel-nav {position: absolute;top: 50%;transform: translateY(-50%);background: var(--color-cards);color: var(--color-text);border: none;width: 50px;height: 50px;border-radius: 50%;cursor: pointer;display: flex;align-items: center;justify-content: center;transition: all 0.3s ease;z-index: 10;box-shadow: 0 2px 10px var(--color-shadow-box);} 4192.sta-carousel-nav:hover {background: var(--color-cards);box-shadow: 0 4px 15px var(--color-shadow-box);} 4193.sta-carousel-prev {left: 0;} 4194.sta-carousel-next {right: 0;} 4195.tpl-carousel-rooms.version-2 .sta-carousel-prev,.tpl-carousel-rooms.version-2 .sta-carousel-next {position: absolute;grid-column: auto;grid-row: auto;top: auto;bottom: 80px;left: 80px;right: auto;transform: none;background: transparent;border: 3px solid #fff;color: #fff;width: 60px;height: 60px;display: flex;margin-right: 0;} 4196.tpl-carousel-rooms.version-2.no-background-image .sta-carousel-prev,.tpl-carousel-rooms.version-2.no-background-image .sta-carousel-next {border-color: var(--color-text);color: var(--color-text);} 4197.tpl-carousel-rooms.version-2 .sta-carousel-next {left: 160px;} 4198.tpl-carousel-rooms.version-2 .sta-carousel-nav:hover {background: rgba(255, 255, 255, 0.15);border-color: #fff;} 4199.tpl-carousel-rooms.version-2.no-background-image .sta-carousel-nav:hover {background: rgba(0, 0, 0, 0.05);border-color: #000;} 4200.sta-carousel-indicators {display: flex;justify-content: center;gap: 12px;margin-top: 40px;} 4201.sta-carousel-indicators .sta-indicator {width: 40px;height: 4px;background: var(--color-shadow-box);border-radius: 2px;
4201cursor: pointer;transition: all 0.3s ease;} 4202.sta-carousel-indicators .sta-indicator.active {background: var(--color-text);width: 60px;} 4203.tpl-carousel-rooms.version-1.font-white .sta-carousel-indicators .sta-indicator {background-color: #848484;} 4204.tpl-carousel-rooms.version-1.font-white .sta-carousel-indicators .sta-indicator.active {background-color: #fff;} 4205.tpl-carousel-rooms.version-2 .sta-carousel-indicators {display: none;} 4206.tpl-carousel-rooms.version-2.no-background-image .sta-carousel-indicators .sta-indicator {background: rgba(0, 0, 0, 0.2);} 4207.tpl-carousel-rooms.version-2.no-background-image .sta-carousel-indicators .sta-indicator.active {background: #000;} 4208.tpl-carousel-rooms.version-2.font-white .sta-carousel-indicators .sta-indicator {background: rgba(255, 255, 255, 0.4) !important;} 4209.tpl-carousel-rooms.version-2.font-white .sta-carousel-indicators .sta-indicator.active {background: #fff !important;} 4210.tpl-carousel-rooms.version-3 .sta-carousel-indicators {margin-top: 50px;gap: 0;height: 3px;background: var(--color-shadow-box);border-radius: 2px;position: relative;overflow: hidden;max-width: none;margin-left: 0;margin-right: 0;} 4211.tpl-carousel-rooms.version-3 .sta-carousel-indicators .sta-indicator {position: absolute;left: 0;top: 0;height: 100%;background: var(--color-text);border-radius: 2px;transition: width 0.5s ease;width: 0;} 4212.tpl-carousel-rooms.version-3.font-white .sta-carousel-indicators {background-color:#848484 ;} 4213.tpl-carousel-rooms.version-3.font-white .sta-carousel-indicators .sta-indicator {background-color:#fff;} 4214.tpl-carousel-rooms.version-3 .sta-carousel-container {margin-left: 280px;padding: 0 20px 0 40px;} 4215.tpl-carousel-rooms.version-3 .sta-carousel-nav {display: none;} 4216@media (min-width: 968px) { 4217 .tpl-carousel-rooms.version-3 .sta-carousel-indicators {margin-left: 340px;margin-right: 30px;} 4218 .tpl-carousel-rooms.version-3 .sta-room-card{min-height: 600px;} 4219 .tpl-carousel-rooms.version-2 .sta-carousel-next{left: 640px;} 4220 .tpl-carousel-rooms.version-2 .sta-carousel-prev{left: 560px;} 4221 .tpl-carousel-rooms.version-2 .sta-carousel-prev, .tpl-carousel-rooms.version-2 .sta-carousel-next{bottom:-20px} 4222} 4223@media (min-width: 1450px) { 4224 .tpl-carousel-rooms.version-3 .sta-carousel-slide {min-width: 33.333%;} 4225 .tpl-carousel-rooms.version-1 .sta-carousel-slide {min-width: 33.333%;}} 4226@media (min-width: 969px) and (max-width: 1449px) { 4227 .tpl-carousel-rooms.version-3 .sta-carousel-slide {min-width: 50%;}} 4228@media (min-width: 1101px) { 4229 .tpl-carousel-rooms.version-1 .sta-carousel-slide {min-width: 33.333%;}} 4230@media (max-width: 968px) { 4231 .tpl-carousel-rooms.version-2{padding-right: 0;padding-left: 0;} 4232 .tpl-carousel-rooms.version-2 .sta-carousel-prev{left: 50px;} 4233 .tpl-carousel-rooms.version-2 .sta-carousel-next{right: 40px;} 4234 .tpl-carousel-rooms.version-2 .sta-carousel-indicators{left: 70px;bottom: 10px;} 4235 .tpl-carousel-rooms.version-1 .sta-carousel-slide, 4236 .tpl-carousel-rooms.version-3 .sta-carousel-slide {min-width: 50%;} 4237 .tpl-carousel-rooms.version-2 .sta-carousel-slide {min-width: 100%;max-width: 100%;} 4238 .tpl-carousel-rooms.version-2 .sta-carousel-container {grid-template-columns: 1fr;grid-template-rows: auto auto auto;gap: 40px;padding: 0 40px;} 4239 .tpl-carousel-rooms.version-2 .sta-carousel-container::before {font-size: 32px;grid-column: 1;grid-row: 1;text-align: center;} 4240 .tpl-carousel-rooms.version-2 .sta-carousel-track-container {grid-column: 1;grid-row: 2;position: relative;} 4241 .tpl-carousel-rooms.version-2 .sta-carousel-prev, .tpl-carousel-rooms.version-2 .sta-carousel-next {position: absolute;grid-column: auto;grid-row: auto;top:100%;transform: translateY(-50%);width: 50px;height: 50px;margin-right: 0;background: transparent;border: 2px solid #fff;color: #fff;left: 52%;} 4242 .tpl-carousel-rooms.version-2 .sta-carousel-prev {margin-left: -60px;} 4243 .tpl-carousel-rooms.version-2 .sta-carousel-indicators {grid-column: 1;grid-row: 3;justify-content: center;margin-top: 20px;margin-left: 0;} 4244 .tpl-carousel-rooms.version-3 {padding-left: 0;padding-right: 0;} 4245 .tpl-carousel-rooms.version-3 .sta-carousel-header {position: relative;
4245left: auto;top: auto;bottom: auto;transform: none;max-width: 100%;margin-bottom: 30px;text-align: left;padding: 0 20px;display: block;} 4246 .tpl-carousel-rooms.version-3 .sta-carousel-description {display: none;} 4247 .tpl-carousel-rooms.version-3 .sta-carousel-container {margin-left: 0;padding: 0;position: static;} 4248 .tpl-carousel-rooms.version-3 .sta-carousel-nav {display: flex;position: absolute;top: 80px;transform: none;width: 44px;height: 44px;background: transparent;border: 1.5px solid var(--color-text);color: var(--color-text);box-shadow: none;} 4249 .tpl-carousel-rooms.version-3 .sta-carousel-nav:hover {background: rgba(0,0,0,0.08);} 4250 .tpl-carousel-rooms.version-3 .sta-carousel-prev {left: auto;right: 70px;} 4251 .tpl-carousel-rooms.version-3 .sta-carousel-next {right: 20px;} 4252 .tpl-carousel-rooms.version-3.font-white .sta-carousel-nav {border-color: #fff;color: #fff;} 4253 .tpl-carousel-rooms.version-3.font-white .sta-carousel-nav:hover {background: rgba(255,255,255,0.1);} 4254 .tpl-carousel-rooms.version-3 .sta-carousel-indicators {margin-inline: auto; max-width: 40%;} 4255 .tpl-carousel-rooms.version-3 .sta-room-card {min-height: 500px;} 4256 .tpl-carousel-rooms.version-3 .sta-room-card::before {background: linear-gradient(to bottom, transparent 0%, transparent 30%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.85) 70%, #1a1a1a 85%, #1a1a1a 100%) !important;}} 4257 4258@media (max-width: 750px) { 4259 .tpl-carousel-rooms.version-1 .sta-carousel-slide {min-width: 100%;}} 4260@media (max-width: 640px) { 4261.tpl-carousel-rooms {padding: 40px 15px;} 4262.version-1 .sta-carousel-nav{display: none;} 4263.sta-carousel-header {margin-bottom: 30px;} 4264.sta-carousel-container {padding: 0 40px;} 4265.tpl-carousel-rooms.version-1 .sta-carousel-container{padding: 0;} 4266.tpl-carousel-rooms.version-1 .sta-carousel-slide, 4267.tpl-carousel-rooms.version-2 .sta-carousel-slide, 4268.tpl-carousel-rooms.version-3 .sta-carousel-slide {min-width: 100%;} 4269.tpl-carousel-rooms.version-2 .sta-carousel-slide {max-width: 100%;} 4270.sta-carousel-nav {width: 40px;height: 40px;} 4271.sta-carousel-nav svg {width: 20px;height: 20px;} 4272.sta-room-content {padding: 20px;} 4273.sta-room-buttons {flex-direction: row;} 4274.sta-room-btn {padding: 15px;} 4275.tpl-carousel-rooms.version-2 .sta-carousel-container {padding: 0 20px;} 4276.tpl-carousel-rooms.version-2 .sta-carousel-container::before {font-size: 24px;} 4277.tpl-carousel-rooms.version-2 .sta-carousel-nav {width: 45px;height: 45px;} 4278.tpl-carousel-rooms.version-3 {padding-top: 40px;} 4279.tpl-carousel-rooms.version-3 .sta-carousel-header {text-align: left;} 4280.tpl-carousel-rooms.version-3 .sta-carousel-description {display: none;} 4281.tpl-carousel-rooms.version-3 .sta-carousel-container {position: static;} 4282.tpl-carousel-rooms.version-3 .sta-carousel-nav {top: 40px;width: 38px;height: 38px;} 4283.tpl-carousel-rooms.version-3 .sta-carousel-prev {right: 60px;} 4284.tpl-carousel-rooms.version-3 .sta-carousel-next {right: 15px;} 4285.tpl-carousel-rooms.version-3 .sta-room-card {min-height: 550px;} 4286.tpl-carousel-rooms.version-2 .sta-carousel-main-title{padding: 0 10px;} 4287.tpl-carousel-rooms.version-1 .sta-carousel-indicators {gap: 0;height: 4px;background: var(--color-shadow-box);border-radius: 2px;position: relative;overflow: hidden;max-width: 40%;padding: 0;margin: 40px auto;} 4288.tpl-carousel-rooms.version-1 .sta-carousel-indicators .sta-indicator {position: absolute;left: 0;top: 0;height: 100%;background: var(--color-text);border-radius: 2px;transition: all 0.5s ease;} 4289.tpl-carousel-rooms.version-1.font-white .sta-carousel-indicators {background-color:rgba(255, 255, 255, 0.3);} 4290.tpl-carousel-rooms.version-1.font-white .sta-carousel-indicators .sta-indicator {background-color:#fff;}} 4291@media (max-height: 650px) { 4292.tpl-carousel-rooms.version-3 .sta-room-card {min-height: 500px;} 4293.tpl-carousel-rooms.version-2 .sta-carousel-main-title{align-self: flex-start;} 4294.tpl-carousel-rooms.version-2 .sta-carousel-prev, 4295.tpl-carousel-rooms.version-2 .sta-carousel-next{bottom: 300px;} 4296.tpl-carousel-rooms.version-2 .sta-carousel-indicators{bottom: 280px;}} 4297</style> 4298
4299<script> 4300// ==================== CONFIGURACIÃN DEL CARRUSEL ==================== 4301class CarouselRooms { 4302 constructor(element) { 4303 this.carousel = element; 4304 this.track = this.carousel.querySelector('.sta-carousel-track'); 4305 this.slides = Array.from(this.track.querySelectorAll('.sta-carousel-slide')); 4306 this.prevButton = this.carousel.querySelector('.sta-carousel-prev'); 4307 this.nextButton = this.carousel.querySelector('.sta-carousel-next'); 4308 this.indicatorsContainer = this.carousel.querySelector('.sta-carousel-indicators'); 4309 4310 this.currentIndex = 0; 4311 this.slidesPerView = this.getSlidesPerView(); 4312 this.totalSlides = this.slides.length; 4313 this.maxIndex = Math.max(0, this.totalSlides - this.slidesPerView); 4314 4315 this.init(); 4316 } 4317 4318 init() { 4319 this.loadImagesFromDataAttr(); 4320 this.applyBackgroundImages(); 4321 this.createIndicators(); 4322 this.updateCarousel(); 4323 this.attachEvents(); 4324 4325 // Actualizar en resize 4326 window.addEventListener('resize', () => { 4327 this.slidesPerView = this.getSlidesPerView(); 4328 this.maxIndex = Math.max(0, this.totalSlides - this.slidesPerView); 4329 this.createIndicators(); // Recrear indicadores en resize 4330 this.updateCarousel(); 4331 }); 4332 } 4333 4334 loadImagesFromDataAttr() { 4335 // Procesar cada carta para cargar imágenes desde data-img
4336 this.slides.forEach(slide => { 4337 const card = slide.querySelector('.sta-room-card'); 4338 const imageContainer = card.querySelector('.sta-room-image-container'); 4339 const imagesWrapper = card.querySelector('.sta-room-images-wrapper'); 4340 const dotsContainer = card.querySelector('.sta-room-dots'); 4341 4342 if (!imageContainer || !imagesWrapper) return; 4343 4344 const dataImg = imagesWrapper.getAttribute('data-img'); 4345 4346 if (dataImg) { 4347 try { 4348 const imagesData = JSON.parse(dataImg); 4349 4350 // Limpiar contenido existente 4351 imagesWrapper.innerHTML = ''; 4352 if (dotsContainer) { 4353 dotsContainer.innerHTML = ''; 4354 } 4355 4356 // Generar imágenes 4357 imagesData.forEach((imgData, index) => { 4358 const img = document.createElement('img'); 4359 img.src = imgData.url; 4360 img.alt = imgData.name || 'Image ' + (index + 1); 4361 img.classList.add('sta-room-image'); 4362 4363 // La primera imagen es activa por defecto 4364 if (index === 0) { 4365 img.classList.add('active'); 4366 } 4367 4368 imagesWrapper.appendChild(img); 4369 4370 // Crear dot correspondiente 4371 if (dotsContainer) { 4372 const dot = document.createElement('span'); 4373 dot.classList.add('sta-dot'); 4374 dot.setAttribute('data-index', index); 4375 4376 if (index === 0) { 4377 dot.classList.add('active'); 4378 } 4379 4380 dotsContainer.appendChild(dot); 4381 } 4382 }); 4383 } catch (e) { 4384 console.error('Error al parsear data-img JSON:', e); 4385 } 4386 } 4387 }); 4388 } 4389 4390 applyBackgroundImages() { 4391 // Solo para version-3: aplicar imagen activa como background 4392 if (this.carousel.classList.contains('version-3')) {
4393 this.slides.forEach(slide => { 4394 const card = slide.querySelector('.sta-room-card'); 4395 const activeImg = card.querySelector('.sta-room-image.active'); 4396 if (activeImg && card) { 4397 const imgSrc = activeImg.getAttribute('src'); 4398 card.style.backgroundImage = `url(${imgSrc})`; 4399 } 4400 }); 4401 } 4402 } 4403 4404 getSlidesPerView() { 4405 const version = this.carousel.classList.contains('version-2') ? 'version-2' : 4406 this.carousel.classList.contains('version-3') ? 'version-3' : 'version-1'; 4407 4408 const width = window.innerWidth; 4409 4410 if (width <= 640) { 4411 return 1; // Mobile: 1 slide 4412 } else if (width <= 968) { 4413 return version === 'version-2' ? 1 : 2; // Tablet: 2 slides (1 en version-2) 4414 } else if (version === 'version-3') { 4415 // Para version-3: breakpoints especÃficos 4416 if (width >= 1450) { 4417 return 3; // 3 slides a partir de 1450px 4418 } else { 4419 return 2; // 2 slides entre 969px y 1449px 4420 } 4421 } else { 4422 return version === 'version-2' ? 1 : 3; // Desktop: 3 slides (1 en version-2) 4423 } 4424 } 4425 4426 createIndicators() { 4427 if (!this.indicatorsContainer) return; 4428 4429 this.indicatorsContainer.innerHTML = ''; 4430 4431 const isVersion3 = this.carousel.classList.contains('version-3'); 4432 const isVersion1 = this.carousel.classList.contains('version-1'); 4433 const isMobile = window.innerWidth <= 640; 4434 const numberOfIndicators = this.maxIndex + 1; 4435 4436 if (isVersion3) { 4437 // Para version-3: crear una sola barra de progreso 4438 const progressBar = document.createElement('div'); 4439 progressBar.classList.add('sta-indicator'); 4440 this.indicatorsContainer.appendChild(progressBar); 4441 this.indicators = [progressBar]; 4442 } else if (isVersion1 && isMobile) { 4443 // Para version-1 en móvil: crear un bullet móvil 4444 const bullet = document.createElement('div'); 4445 bullet.classList.add('sta-indicator'); 4446 this.indicatorsContainer.appendChild(bullet); 4447 this.indicators = [bullet]; 4448 } else { 4449 // Para otras versiones: crear indicadores normales 4450 for (let i = 0; i < numberOfIndicators; i++) { 4451 const indicator = document.createElement('div'); 4452 indicator.classList.add('sta-indicator'); 4453 if (i === 0) indicator.classList.add('active'); 4454 4455 indicator.addEventListener('click', () => { 4456 this.goToSlide(i); 4457 }); 4458 4459 this.indicatorsContainer.appendChild(indicator); 4460 } 4461 4462 this.indicators = Array.from(this.indicatorsContainer.querySelectorAll('.sta-indicator')); 4463 } 4464 } 4465 4466 attachEvents() { 4467 if (this.prevButton) { 4468 this.prevButton.addEventListener('click', () => this.prevSlide()); 4469 } 4470 4471 if (this.nextButton) { 4472 this.nextButton.addEventListener('click', () => this.nextSlide()); 4473 } 4474 4475 // Soporte táctil y mouse 4476 let startX = 0; 4477 let currentX = 0; 4478 let isDragging = false; 4479 4480 // Eventos táctiles (móvil) 4481 this.track.addEventListener('touchstart', (e) => { 4482 startX = e.touches[0].clientX; 4483 isDragging = true; 4484 }); 4485 4486 this.track.addEventListener('touchmove', (e) => { 4487 if (!isDragging) return; 4488 currentX = e.touches[0].clientX; 4489 }); 4490 4491 this.track.addEventListener('touchend', () => { 4492 if (!isDragging) return; 4493 isDragging = false; 4494 4495 const diff = startX - currentX; 4496 4497 if (Math.abs(diff) > 50) { 4498 if (diff > 0) { 4499 this.nextSlide(); 4500 } else { 4501 this.prevSlide(); 4502 } 4503 } 4504 }); 4505
4506 // Eventos de mouse (desktop) 4507 this.track.addEventListener('mousedown', (e) => { 4508 startX = e.clientX; 4509 isDragging = true; 4510 this.track.style.cursor = 'grabbing'; 4511 e.preventDefault(); // Prevenir selección de texto 4512 }); 4513 4514 this.track.addEventListener('mousemove', (e) => { 4515 if (!isDragging) return; 4516 currentX = e.clientX; 4517 }); 4518 4519 this.track.addEventListener('mouseup', () => { 4520 if (!isDragging) return; 4521 isDragging = false; 4522 this.track.style.cursor = 'grab'; 4523 4524 const diff = startX - currentX; 4525 4526 if (Math.abs(diff) > 50) { 4527 if (diff > 0) { 4528 this.nextSlide(); 4529 } else { 4530 this.prevSlide(); 4531 } 4532 } 4533 }); 4534 4535 // Cuando el mouse sale del track mientras se arrastra 4536 this.track.addEventListener('mouseleave', () => { 4537 if (!isDragging) return; 4538 isDragging = false; 4539 this.track.style.cursor = 'grab'; 4540 }); 4541 4542 // Establecer cursor inicial 4543 this.track.style.cursor = 'grab'; 4544 } 4545 4546 updateCarousel() { 4547 // Obtener el ancho real del primer slide incluyendo gap 4548 const firstSlide = this.slides[0]; 4549 if (!firstSlide) return; 4550 4551 const slideStyles = window.getComputedStyle(firstSlide); 4552 const slideWidth = firstSlide.offsetWidth; 4553 const slideMargin = parseFloat(slideStyles.marginRight) || 0; 4554 const totalSlideWidth = slideWidth + slideMargin; 4555 4556 // Calcular el offset en pÃxeles 4557 const offset = -(this.currentIndex * totalSlideWidth); 4558 4559 this.track.style.transform = `translateX(${offset}px)`; 4560 4561 // Actualizar botones 4562 if (this.prevButton) { 4563 this.prevButton.disabled = this.currentIndex === 0; 4564 this.prevButton.style.opacity = this.currentIndex === 0 ? '0.75' : '1'; 4565 } 4566 4567 if (this.nextButton) { 4568 this.nextButton.disabled = this.currentIndex >= this.maxIndex; 4569 this.nextButton.style.opacity = this.currentIndex >= this.maxIndex ? '0.75' : '1'; 4570 } 4571 4572 // Actualizar indicadores 4573 if (this.indicators && this.indicators.length > 0) { 4574 const isVersion3 = this.carousel.classList.contains('version-3'); 4575 const isVersion1 = this.carousel.classList.contains('version-1'); 4576 const isMobile = window.innerWidth <= 640; 4577 4578 if (isVersion3) { 4579 // Barra de progreso para version-3 4580 const progressBar = this.indicators[0]; 4581 const progress = ((this.currentIndex + 1) / (this.maxIndex + 1)) * 100; 4582 progressBar.style.width = `${progress}%`; 4583 } else if (isVersion1 && isMobile) { 4584 // Bullet móvil para version-1 en móvil 4585 const bullet = this.indicators[0]; 4586 const totalSlides = this.maxIndex + 1; 4587 const lineWidth = (100 / totalSlides); // Ancho de la lÃnea en porcentaje 4588 const position = (this.currentIndex / totalSlides) * 100; // Posición en porcentaje 4589 bullet.style.width = `${lineWidth}%`; 4590 bullet.style.left = `${position}%`; 4591 } else { 4592 // Indicadores normales para otras versiones 4593 this.indicators.forEach((indicator, index) => { 4594 indicator.classList.toggle('active', index === this.currentIndex); 4595 }); 4596 } 4597 } 4598 } 4599 4600 nextSlide() { 4601 if (this.currentIndex < this.maxIndex) { 4602 this.currentIndex++; 4603 this.updateCarousel(); 4604 } 4605 } 4606 4607 prevSlide() { 4608 if (this.currentIndex > 0) { 4609 this.currentIndex--; 4610 this.updateCarousel(); 4611 } 4612 } 4613 4614 goToSlide(index) { 4615 if (index >= 0 && index <= this.maxIndex) { 4616 this.currentIndex = index; 4617 this.updateCarousel(); 4618 } 4619 } 4620} 4621 4622// ==================== INICIALIZACIÃN ==================== 4623document.addEventListener('DOMContentLoaded', () => { 4624 const carouselElements = document.querySelectorAll('.tpl-carousel-rooms'); 4625 4626 // Detectar versión en cada carrusel; si no tiene ninguna, asignar version-1
4627 const versions = ['version-1', 'version-2', 'version-3']; 4628 carouselElements.forEach(carousel => { 4629 const hasVersion = versions.some(v => carousel.classList.contains(v)); 4630 if (!hasVersion) carousel.classList.add('version-1'); 4631 }); 4632 4633 carouselElements.forEach(carousel => { 4634 new CarouselRooms(carousel); 4635 }); 4636}); 4637 4638// ==================== GALERÃA DE IMÃGENES POR HABITACIÃN ==================== 4639// Manejo de múltiples imágenes por habitación en todas las versiones 4640document.addEventListener('DOMContentLoaded', () => { 4641 const carouselContainer = document.querySelector('.tpl-carousel-rooms'); 4642 const roomCards = document.querySelectorAll('.tpl-carousel-rooms .sta-room-card'); 4643 const isVersion3 = carouselContainer && carouselContainer.classList.contains('version-3'); 4644 4645 roomCards.forEach(card => { 4646 const imageContainer = card.querySelector('.sta-room-image-container'); 4647 const imagesWrapper = card.querySelector('.sta-room-images-wrapper'); 4648 const images = card.querySelectorAll('.sta-room-image'); 4649 const dots = card.querySelectorAll('.sta-dot'); 4650 4651 if (images.length === 0 || dots.length === 0) return; 4652 4653 let currentImageIndex = 0; 4654 let autoPlayInterval = null; 4655 4656 // Función para cambiar de imagen 4657 const changeImage = (index) => { 4658 // Remover clase active de todas las imágenes y dots 4659 images.forEach(img => img.classList.remove('active')); 4660 dots.forEach(dot => dot.classList.remove('active')); 4661 4662 // Agregar clase active a la imagen y dot actual 4663 images[index].classList.add('active'); 4664 dots[index].classList.add('active'); 4665 4666 // Para version-3: actualizar el background-image de la card 4667 if (isVersion3) { 4668 const activeImg = images[index]; 4669 const imgSrc = activeImg.getAttribute('src'); 4670 card.style.backgroundImage = `url(${imgSrc})`; 4671 } 4672 4673 currentImageIndex = index; 4674 }; 4675 4676 // Evento click en cada dot 4677 dots.forEach((dot, index) => { 4678 dot.addEventListener('click', (e) => { 4679 e.preventDefault(); 4680 e.stopPropagation(); 4681 changeImage(index); 4682 4683 // Reiniciar autoplay 4684 clearInterval(autoPlayInterval); 4685 startAutoPlay(); 4686 }); 4687 }); 4688 4689 // Función para autoplay 4690 const startAutoPlay = () => { 4691 autoPlayInterval = setInterval(() => { 4692 const nextIndex = (currentImageIndex + 1) % images.length; 4693 changeImage(nextIndex); 4694 }, 3000); 4695 }; 4696 // Iniciar autoplay 4697 startAutoPlay(); 4698 4699 // Pausar autoplay al hacer hover 4700 // Para version-3, usar la card en lugar del imageContainer 4701 const hoverTarget = isVersion3 ? card : imageContainer; 4702 4703 if (hoverTarget) { 4704 hoverTarget.addEventListener('mouseenter', () => { 4705 clearInterval(autoPlayInterval); 4706 }); 4707 4708 // Reanudar autoplay al quitar hover 4709 hoverTarget.addEventListener('mouseleave', () => { 4710 startAutoPlay(); 4711 }); 4712 } 4713 }); 4714}); 4715</script>
4715 4716 <section class="featured fill" id="featured-148911" data-scroll=""> 4717 <div class="featured-wrapper"> 4718 <div class="featured-header"> 4719 <h2 class="featured-title">Servicios del hotel</h2> 4720 </div> 4721 <div class="featured-content"> 4722 4723 <div class="featured-item"> 4724 <div class="featured-item-icon newicons-aire-acondicionado"></div> 4725 <img src="" alt="Aire acondicionado" class="featured-image" data-key="img"/> 4726 <h3 class="featured-item-title" data-key="title">Aire acondicionado</h3> 4727 <span class="featured-item-description" data-key="descriptionShort"></span> 4728 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4729 4730 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4731 </div> 4732 <div class="featured-item"> 4733 <div class="featured-item-icon newicons-wifi"></div> 4734 <img src="" alt="Conexión Wi-fi a internet" class="featured-image" data-key="img"/> 4735 <h3 class="featured-item-title" data-key="title">Conexión Wi-fi a internet</h3> 4736 <span class="featured-item-description" data-key="descriptionShort"></span> 4737 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4738 4739 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4740 </div> 4741 <div class="featured-item"> 4742 <div class="featured-item-icon icoGlobal-34-spa"></div> 4743 <img src="" alt="Spa" class="featured-image" data-key="img"/> 4744 <h3 class="featured-item-title" data-key="title">Spa</h3> 4745 <span class="featured-item-description" data-key="descriptionShort"></span> 4746 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4747 4748 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4749 </div> 4750 <div class="featured-item"> 4751 <div class="featured-item-icon newicons-restaurante-2"></div> 4752 <img src="" alt="Restaurante" class="featured-image" data-key="img"/> 4753 <h3 class="featured-item-title" data-key="title">Restaurante</h3> 4754 <span class="featured-item-description" data-key="descriptionShort"></span> 4755 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4756 4757 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4758 </div> 4759 <div class="featured-item"> 4760 <div class="featured-item-icon newicons-servicio-habitaciones"></div> 4761 <img src="" alt="Servicio de habitaciones" class="featured-image" data-key="img"/> 4762 <h3 class="featured-item-title" data-key="title">Servicio de habitaciones</h3> 4763 <span class="featured-item-description" data-key="descriptionShort"></span> 4764 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4765 4766 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4767 </div> 4768 <div class="featured-item"> 4769 <div class="featured-item-icon icoGlobal-466-cafe"></div> 4770 <img src="" alt="Bar - cafeterÃa" class="featured-image" data-key="img"/> 4771 <h3 class="featured-item-title" data-key="title">Bar - cafeterÃa</h3> 4772 <span class="featured-item-description" data-key="descriptionShort"></span> 4773 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4774 4775 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4776 </div> 4777 <div class="featured-item"> 4778 <div class="featured-item-icon icoGlobal-7-recepcion"></div> 4779 <img src="" alt="ConserjerÃa" class="featured-image" data-key="img"/> 4780 <h3 class="featured-item-title" data-key="title">ConserjerÃa</h3> 4781 <span class="featured-item-description" data-key="descriptionShort"></span> 4782 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4783 4784 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4785 </div> 4786 <div class="featured-item"> 4787 <div class="featured-item-icon newicons-parking"></div> 4788 <img src="" alt="Parking gratuito" class="featured-image" data-key="img"/> 4789 <h3 class="featured-item-title" data-key="title">Parking gratuito</h3>
4790 <span class="featured-item-description" data-key="descriptionShort"></span> 4791 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4792 4793 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4794 </div> 4795 <div class="featured-item"> 4796 <div class="featured-item-icon newicons-evento-2"></div> 4797 <img src="" alt="Salones para eventos" class="featured-image" data-key="img"/> 4798 <h3 class="featured-item-title" data-key="title">Salones para eventos</h3> 4799 <span class="featured-item-description" data-key="descriptionShort"></span> 4800 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4801 4802 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4803 </div> 4804 <div class="featured-item"> 4805 <div class="featured-item-icon icoGlobal-365-telefono"></div> 4806 <img src="" alt="Business center" class="featured-image" data-key="img"/> 4807 <h3 class="featured-item-title" data-key="title">Business center</h3> 4808 <span class="featured-item-description" data-key="descriptionShort"></span> 4809 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4810 4811 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4812 </div> 4813 <div class="featured-item"> 4814 <div class="featured-item-icon newicons-consigna-equipaje"></div> 4815 <img src="" alt="Consigna de equipajes" class="featured-image" data-key="img"/> 4816 <h3 class="featured-item-title" data-key="title">Consigna de equipajes</h3> 4817 <span class="featured-item-description" data-key="descriptionShort"></span> 4818 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4819 4820 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4821 </div> 4822 <div class="featured-item"> 4823 <div class="featured-item-icon newicons-piscina"></div> 4824 <img src="" alt="Piscina exterior" class="featured-image" data-key="img"/> 4825 <h3 class="featured-item-title" data-key="title">Piscina exterior</h3> 4826 <span class="featured-item-description" data-key="descriptionShort"></span> 4827 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4828 4829 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4830 </div> 4831 <div class="featured-item"> 4832 <div class="featured-item-icon icoGlobal-26-camarero"></div> 4833 <img src="" alt="Servicio de banquetes y celebraciones" class="featured-image" data-key="img"/> 4834 <h3 class="featured-item-title" data-key="title">Servicio de banquetes y celebraciones</h3> 4835 <span class="featured-item-description" data-key="descriptionShort"></span> 4836 <!-- ELSE _MENU_HIJO_XT_URL_ENLACE --> 4837 4838 <!-- ENDIF _MENU_HIJO_XT_URL_ENLACE --> 4839 </div> 4840 </div> 4841 <div class="featured-bottom-line"></div> 4842 </div> 4843</section> 4844<style> 4845 4846.featured{ 4847 --textColor: var(--color-text); 4848 --textColor: var(--color-text); 4849 --swiper-navigation-color: #fff; 4850 --groupSize: 6; 4851 4852 color: var(--textColor); 4853 4854 width: 100%; 4855 display: flex; 4856 justify-content: center; 4857 overflow:hidden; 4858 position: relative; 4859 background-color: var(--color-background); 4860 4861 &.background-color{ 4862 --background-color: ; 4863 background-color: var(--background-color); 4864 } 4865 &.font-white{ 4866 --textColor: #FFFFFF; 4867 } 4868 &.fill{ 4869 .featured-content-wrapper{ 4870 display: flex; 4871 flex-direction: column; 4872 justify-content: space-around; 4873 @media (min-width: 1024px){ 4874 flex-direction: row; 4875 gap: 96px; 4876 padding-inline: 0; 4877 } 4878 } 4879 .featured-item{ 4880 width: auto; 4881 flex: 1; 4882 } 4883 } 4884 4885 .featured-wrapper{ 4886 padding: 40px 25px; 4887 width: 100%; 4888 max-width: 1250px; 4889 display: flex; 4890 flex-direction: column; 4891 box-sizing: border-box; 4892 4893 @media (min-width: 1024px){ 4894 padding: 35px 100px; 4895 } 4896 } 4897 4898 .featured-header{ 4899 text-align: center; 4900 display: flex; 4901 align-items: center; 4902 gap: 24px; 4903 margin-bottom: 48px; 4904 4905 &::before, 4906 &::after{ 4907 content: ''; 4908 flex: 1; 4909 height: 1px; 4910 background-color: var(--textColor); 4911 } 4912 4913 .featured-title{ 4914 font-size: var(--font-size-h2); 4915 font-family: var(--font-title); 4916 font-weight: 700; 4917 margin: 0; 4918 display: -webkit-box; 4919 -webkit-box-orient: vertical; 4920 -webkit-line-clamp: 3; 4921 overflow: hidden; 4922 @media (min-width: 1024px){ 4923 flex: 0 1 60%; 4924 } 4925 } 4926 @media (min-width: 1024px){ 4927 gap: 48px; 4928 .featured-title{ 4929 flex: unset; 4930 } 4931 } 4932 } 4933 4934 .featured-content{ 4935 width: 100%; 4936 display: flex; 4937 flex-direction: row; 4938 justify-content: center; 4939 row-gap: 36px; 4940 column-gap: 96px; 4941 position: relative; 4942 box-sizing: border-box; 4943 @media (min-width: 1024px){ 4944 flex-direction: column; 4945 row-gap: 48px; 4946 } 4947 } 4948 .featured-content-wrapper{ 4949 position:relative; 4950 display: grid; 4951 grid-template-columns: 1fr; 4952 grid-template-rows: repeat(var(--groupSize), 1fr); 4953 width: 200px; 4954 margin-bottom: 24px; 4955 gap: 36px; 4956 &:not(:last-child):after{ 4957 content: ''; 4958 position: absolute; 4959 right: calc(-96px / 2); 4960 width: 1px; 4961 height: 100%; 4962 background-color: var(--textColor); 4963 } 4964 @media (min-width: 1024px){ 4965 min-height: 90px; 4966 width: 100%; 4967 grid-template-rows: 1fr; 4968 grid-template-columns: repeat(var(--groupSize), 1fr); 4969 margin: 0; 4970 gap: 48px 96px; 4971 padding-inline: 48px; 4972 &:not(:last-child):after{ 4973 content: ''; 4974 position: absolute; 4975 left: 50%; 4976 bottom: -24px; 4977 width: 100%; 4978 height: 1px; 4979 background-color: var(--textColor); 4980 transform: translateX(-50%); 4981 } 4982 } 4983 } 4984 .featured-item{ 4985 position: relative; 4986 display: flex; 4987 flex-direction: row; 4988 align-items: center; 4989 justify-content: start; 4990 gap: 8px; 4991 min-width: 50px; 4992 flex: 1; 4993 4994 .featured-item-icon{ 4995 font-size: 36px; 4996 color: var(--textColor); 4997 } 4998 .featured-image{ 4999 display: none; 5000 } 5001 .featured-item-title{ 5002 font-size: var(--font-size-base); 5003 font-family: var(--font-body); 5004 font-weight: 400; 5005 text-align: left; 5006 margin: 0; 5007 } 5008 .featured-item-description{ 5009 display: none; 5010 font-family: var(--font-body); 5011 } 5012 5013 @media (min-width: 1024px){ 5014 flex-direction: column; 5015 align-items: center; 5016 justify-content: flex-start; 5017 5018 &:not(:first-child):before{ 5019 position: absolute; 5020 content: " "; 5021 height: 100%; 5022 width: 1px; 5023 background-color: var(--textColor); 5024 left: calc(-96px / 2); 5025 } 5026 .featured-item-title{ 5027 text-align: center; 5028 } 5029 } 5030 } 5031 5032 .featured-btn{ 5033 display: none; 5034 } 5035 5036 .featured-bottom-line{ 5037 bottom: 0; 5038 left: 0; 5039 width: 100%; 5040 height: 1px; 5041 margin-top: 16px; 5042 background-color: var(--textColor); 5043 } 5044 5045 &.variant-2{ 5046 position: relative; 5047 --textColor: #FFFFFF; 5048 .featured-wrapper{ 5049 padding: 0; 5050 gap: 64px; 5051 @media (min-width: 600px){ 5052 max-width: 100%; 5053 } 5054 } 5055 5056 .featured-header{ 5057 position: absolute; 5058 z-index: 10; 5059 width: 100%; 5060 top: 40px; 5061 justify-content: center; 5062 &::before, 5063 &::after{ 5064 display: none; 5065 } 5066 @media (min-width: 600px){ 5067 top: 70px; 5068 } 5069 } 5070 .featured-title{ 5071 max-width: 850px; 5072 } 5073 .featured-content-wrapper{ 5074 padding:0; 5075 } 5076 .featured-content{ 5077 flex-direction: row; 5078 } 5079 .featured-item{ 5080 position: relative; 5081 padding: 160px 20px 100px 20px; 5082 justify-content: center; 5083 flex-direction: column; 5084 gap: 24px; 5085 min-width: 100vw; 5086 box-sizing: border-box; 5087 &::before{ 5088 content: ''; 5089 position: absolute; 5090 top: 0; 5091 left: 0; 5092 width: 100%; 5093 height: 100%; 5094 background: linear-gradient(0deg, rgba(0, 0, 0, 0.70) 0%, rgba(0, 0, 0, 0.70) 100%); 5095 z-index: 1; 5096 } 5097 .featured-item-icon{ 5098 display:none; 5099 } 5100 .featured-image{ 5101 position:absolute; 5102 z-index: 0; 5103 top: 0; 5104 left: 0; 5105 display: block; 5106 width: 100%; 5107 height: 100%; 5108 object-fit: cover; 5109 5110 @media (min-width: 600px){ 5111 width: 100vw; 5112 object-position: center; 5113 } 5114 } 5115 .featured-item-title{ 5116 position: relative; 5117 z-index: 2; 5118 font-size: var(--font-size-h2); 5119 font-weight: 700; 5120 text-align: center; 5121 } 5122 .featured-item-description{ 5123 position: relative; 5124 z-index: 2; 5125 display: block; 5126 text-align: center; 5127 overflow: hidden; 5128 text-overflow: ellipsis; 5129 font-size: var(--font-size-base); 5130 max-width: 850px; 5131 } 5132 @media (min-width: 1024px){ 5133 padding: 155px 20px 100px 20px; 5134 } 5135 @media (min-width: 600px){ 5136 min-width: 100%; 5137 width: 100%; 5138 padding-bottom: 70px; 5139 justify-content: start; 5140 .featured-item-description{ 5141 height: auto; 5142 } 5143 } 5144 } 5145 .featured-bottom-line{ 5146 display: none; 5147 } 5148 .swiper-pagination{ 5149 --swiper-theme-color: #fff; 5150 --swiper-pagination-color: #fff; 5151 position: absolute; 5152 top: unset; 5153 bottom: 40px; 5154 left: 25px; 5155 right: 25px; 5156 width: 40%; 5157 margin: auto; 5158 } 5159 .swiper-pagination-progressbar{ 5160 background: rgba(243, 243, 243, 0.5); 5161 } 5162 .swiper-button-next, 5163 .swiper-button-prev{ 5164 right: 48px; 5165 width: 24px; 5166 transition: all 0.3s ease; 5167 &.swiper-button-prev{ 5168 right: 0px; 5169 left: 48px; 5170 } 5171 svg path { 5172 fill:transparent; 5173 } 5174 &:after{ 5175 display: none; 5176 } 5177 &:hover { 5178 color:var(--color-principal); 5179 } 5180 @media (max-width: 600px){ 5181 display:none; 5182 } 5183 } 5184 .featured-btn{ 5185 display: flex; 5186 padding: 16px 24px; 5187 justify-content: center; 5188 align-items: center; 5189 font-size: var(--font-size-buttons); 5190 background-color: var(--color-principal); 5191 color: var(--color-text-buttons); 5192 border: 1px solid var(--color-principal); 5193 border-radius: var(--radius-buttons); 5194 transition: all 0.3s ease; 5195 z-index: 2; 5196 &:hover{ 5197 background-color: transparent; 5198 color: var(--color-principal); 5199 } 5200 } 5201 } 5202} 5203 5204</style> 5205
5206<script type="module"> 5207import {initializeSwiper} from '/templates/cadenas/corporativaair/js/libraries/keytelFunctions.js'; 5208 5209const CONFIG_FEATURED = { 5210 GROUP_SIZE: parseInt('') || 5, 5211}; 5212 5213 5214 5215function init_featured(menuId) { 5216 const module = document.querySelector(`#featured-${menuId}`); 5217 const container = module?.querySelector('.featured-content'); 5218 const itemList = Array.from(container.children); 5219 5220 const groupSize = window.innerWidth >= 1024 5221 ? CONFIG_FEATURED.GROUP_SIZE 5222 : Math.ceil(itemList.length / 2); 5223 5224 if ( !container) return; 5225 5226 // Calcular groupSize según la resolución 5227 5228 5229 // Establecer la variable CSS groupSize dinámicamente 5230 module.style.setProperty('--groupSize', groupSize); 5231 5232 let variant = 'default'; 5233 5234 if (module?.classList.contains('variant-2')) { 5235 variant = 'variant-2'; 5236 } else if (module?.classList.contains('variant-3')) { 5237 variant = 'variant-3'; 5238 } 5239 5240 switch(variant) { 5241 case 'variant-2': 5242 const swiperConfig = { 5243 loop: true, 5244 slidesPerView: 1, 5245 spaceBetween: 0, 5246 pagination: { 5247 el: ".featured .swiper-pagination", 5248 clickable: true, 5249 type: "progressbar", 5250 }, 5251 navigation: { 5252 addIcons: false, 5253 nextEl: '.featured .swiper-button-next', 5254 prevEl: '.featured .swiper-button-prev', 5255 enabled: false, 5256 }, 5257 breakpoints: { 5258 600: { 5259 pagination: false, 5260 navigation: { 5261 enabled: true, 5262 } 5263 }, 5264 }, 5265 } 5266 initializeSwiper(container, itemList, swiperConfig, 5267 { 5268 showButtons:true, 5269 prevButton: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-left-icon lucide-chevron-left"><path d="m15 18-6-6 6-6"/></svg>', 5270 nextButton: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right-icon lucide-chevron-right"><path d="m9 18 6-6-6-6"/></svg>' 5271 }); 5272 break; 5273 default: 5274 groupItems(container, itemList, groupSize); 5275 break; 5276 } 5277 5278} 5279 5280// Función para agrupar elementos y agregarlos al contenedor 5281function groupItems(container, itemList, groupSize){ 5282 container.innerHTML = ''; 5283 5284 for (let i = 0; i < itemList.length; i += groupSize) { 5285 const wrapper = document.createElement('div'); 5286 wrapper.className = 'featured-content-wrapper'; 5287 5288 const group = itemList.slice(i, i + groupSize); 5289 5290 group.forEach((child) => { 5291 wrapper.appendChild(child); 5292 }); 5293 5294 wrapper.setAttribute('data-items', group.length); 5295 container.appendChild(wrapper); 5296 } 5297} 5298 5299document.addEventListener("DOMContentLoaded", () => { 5300 init_featured('148911'); 5301}); 5302</script>
5302 5303 <section class="bundle variant-2" id="bundle-148925" data-scroll=""> 5304 <div class="bundle-wrapper"> 5305 <div class="bundle-header"> 5306 <h2 class="bundle-header-title">Promociones</h2> 5307 <div class="bundle-header-subtitle"><p>Descubra nuestros packs y promociones especiales, diseñados para ofrecerle experiencias únicas en un entorno histórico incomparable.<br/></p></div> 5308 </div> 5309 5310 <div class="bundle-content"> 5311 <div class="bundle-item"> 5312 5313 <div class="bundle-image-wrapper"> 5314 <img 5315 class="bundle-image" 5316 src="https://synergy.booking-channel.com/api/hotels/413/medias/261#Palacio Del Infante Don Juan Manuel Hotel Spa_Belmonte_Doble relax" alt="Doble relax" 5317 /> 5318 </div> 5319 <h3 class="bundle-title">Doble relax</h3> 5320 <div class="bundle-description"><p>Sumérjase en una escapada pensada para desconectar en un ambiente relajante con esta promoción. La promoción incluye: habitación doble estándar y acceso al circuito de spa.<br/><br/></p></div> 5321 5322 <ul class="bundle-features"> 5323 5324 </ul> 5325 5326 5327 5328 <a 5329 href="/doble-relax-incluye-acceso-al-spa.html" 5330 class="bundle-btn" 5331 >Más información</a> 5332 5333 5334 5335 <div class="bundle-text-extra"></div> 5336 </div> 5337 <div class="bundle-item"> 5338 5339 <div class="bundle-image-wrapper"> 5340 <img 5341 class="bundle-image" 5342 src="https://synergy.booking-channel.com/api/hotels/413/medias/262#Palacio Del Infante Don Juan Manuel Hotel Spa_Belmonte_Vino & relax" alt="Vino & relax" 5343 /> 5344 </div> 5345 <h3 class="bundle-title">Vino & relax</h3> 5346 <div class="bundle-description"><p>Disfrute de una experiencia que combina el placer del buen vino con el descanso absoluto. Esta promoción incluye: 1 noche de alojamiento en habitación doble básica, desayuno, visita a la bodega MontReaga, acceso al spa del hotel.<br/><br/></p></div> 5347 5348 <ul class="bundle-features"> 5349 5350 </ul> 5351 5352 5353 5354 <a 5355 href="/paquete-vino-y-relax.html" 5356 class="bundle-btn" 5357 >Más información</a> 5358 5359 5360 5361 <div class="bundle-text-extra"></div> 5362 </div> 5363 </div> 5364 5365 <a href="https://www.hotelspainfantedonjuanmanuel.es/Promociones.html" class="bundle-link">Ver todas</a> 5366 5367 </div> 5368 5369</section> 5370 5371<style> 5372 5373.bundle { 5374 background-color: var(--color-background); 5375 --textColor: var(--color-text); 5376 * { 5377 box-sizing: border-box; 5378 margin: 0; 5379 line-height: 1.5; 5380 } 5381 5382 &.hide-header:not(&.variant-3){ 5383 .bundle-header{ 5384 display: none; 5385 } 5386 } 5387 &.hide-link:not(&.variant-3){ 5388 .bundle-link{ 5389 display: none; 5390 } 5391 } 5392 &.hide-label:not(&.variant-3){ 5393 .bundle-label{ 5394 display: none; 5395 } 5396 } 5397 5398 &.background-color{ 5399 background-color: !important; 5400 .bundle-header{ 5401 &::before { 5402 background-color: !important; 5403 } 5404 } 5405 } 5406 &.font-white{ 5407 --textColor: #fff; 5408 } 5409 .bundle-wrapper { 5410 max-width: 1440px; 5411 padding: 40px 25px; 5412 width: 100%; 5413 margin-inline: auto; 5414 display: flex; 5415 flex-direction: column; 5416 gap: 48px; 5417 @media (min-width: 1024px){ 5418 padding: 35px 100px; 5419 gap: 64px; 5420 } 5421 } 5422 .bundle-header { 5423 display: flex; 5424 flex-direction: column; 5425 align-items: center; 5426 max-width: 815px; 5427 margin-inline: auto; 5428 } 5429 .bundle-header-title{ 5430 font-family: var(--font-title); 5431 font-size: var(--font-size-h2); 5432 margin-bottom: var(--spacing-title); 5433 color: var(--textColor); 5434 text-align: center; 5435 word-break: break-word; 5436 } 5437 .bundle-header-subtitle{ 5438 font-family: var(--font-body); 5439 font-size: var(--font-size-base); 5440 color: var(--textColor); 5441 margin-top: 0; 5442 text-align: center; 5443 word-break: break-word; 5444 } 5445 5446 .bundle-content{ 5447 display: flex; 5448 flex-direction: column; 5449 gap: 48px; 5450 align-items: stretch; 5451 @media(min-width: 1024px){ 5452 display: grid; 5453 grid-template-columns: repeat(2, 1fr); 5454 gap: 48px; 5455 5456 & > :last-child:nth-child(odd) { 5457 grid-column: span 2; 5458 } 5459 } 5460 } 5461 5462 .bundle-item{ 5463 position: relative; 5464 display: flex; 5465 flex-direction: column; 5466 align-items: flex-start; 5467 min-height: 400px; 5468 padding: 48px 24px; 5469 color: #fff; 5470 border-radius: var(--radius-elements); 5471 box-shadow: 0 8px 20px 0 var(--color-shadow-box); 5472 > * { 5473 z-index: 2; 5474 } 5475 @media (min-width: 1024px){ 5476 min-height: 500px; 5477 padding: 48px; 5478 } 5479 } 5480 .bundle-image-wrapper { 5481 position: absolute; 5482 width: 100%; 5483 height: 100%; 5484 inset: 0; 5485 overflow: hidden; 5486 border-radius: var(--radius-elements); 5487 z-index: 1; 5488 5489 &::before { 5490 content: ''; 5491 position: absolute; 5492 inset: 0; 5493 background: rgba(0, 0, 0, 0.55); 5494 mix-blend-mode: multiply; 5495 z-index: 1; 5496 border-radius: inherit; 5497 } 5498 @media (min-width: 1024px){ 5499 &::before { 5500 background: linear-gradient(90deg, #000 0%, #b3b3b3 52.1%); 5501 } 5502 } 5503 } 5504 .bundle-image{ 5505 width: 100%; 5506 height: 100%; 5507 object-fit: cover; 5508 border-radius: var(--radius-elements); 5509 } 5510 .bundle-label, 5511 .bundle-title, 5512 .bundle-description, 5513 .bundle-features, 5514 .bundle-cta,
5515 .bundle-text-extra{ 5516 @media (min-width: 1024px){ 5517 max-width: 550px; 5518 } 5519 } 5520 5521 .bundle-label{ 5522 font-family: var(--font-body); 5523 font-size: var(--font-size-base); 5524 color: #fff; 5525 border-radius: var(--radius-buttons); 5526 padding: 8px 16px; 5527 border: 0.5px solid rgba(243, 243, 243, 0.50); 5528 background: rgba(0, 0, 0, 0.25); 5529 backdrop-filter: blur(25px); 5530 margin-bottom: 36px; 5531 @media (min-width: 600px){ 5532 margin-bottom: 48px; 5533 } 5534 } 5535 .bundle-title{ 5536 font-family: var(--font-title); 5537 font-size: var(--font-size-h2); 5538 margin-bottom: var(--spacing-title); 5539 font-weight: 700; 5540 } 5541 .bundle-description{ 5542 font-family: var(--font-body); 5543 font-size: var(--font-size-base); 5544 5545 margin-bottom: 24px; 5546 5547 @media (min-width: 600px){ 5548 margin-bottom: 48px; 5549 5550 } 5551 @media (min-width: 1024px){ 5552 display: -webkit-box; 5553 -webkit-line-clamp: 3; 5554 -webkit-box-orient: vertical; 5555 overflow: hidden; 5556 } 5557 } 5558 .bundle-features{ 5559 list-style: none; 5560 display: flex; 5561 flex-direction: column; 5562 gap: 8px; 5563 margin-bottom: 36px; 5564 padding: 0; 5565 @media (min-width: 600px){ 5566 gap: 16px; 5567 margin-bottom: 48px; 5568 } 5569 } 5570 .bundle-feature{ 5571 display: flex; 5572 align-items: center; 5573 gap: 16px; 5574 } 5575 .bundle-feature-text{ 5576 font-family: var(--font-body); 5577 font-size: var(--font-size-base); 5578 } 5579 .bundle-feature-icon{ 5580 font-size: 24px; 5581 } 5582 .bundle-btn{ 5583 font-family: var(--font-body); 5584 font-size: var(--font-size-buttons); 5585 border-radius: var(--radius-buttons); 5586 color: #000; 5587 background-color: #fff; 5588 border: 1px solid #fff; 5589 padding: 16px 24px; 5590 cursor: pointer; 5591 transition: all 0.3s ease; 5592 margin-bottom: 24px; 5593 text-decoration: none; 5594 &:hover { 5595 background-color: #0000003c; 5596 backdrop-filter: blur(25px); 5597 color: #fff; 5598 } 5599 } 5600 .bundle-text-extra{ 5601 font-family: var(--font-body); 5602 font-size: var(--font-size-base); 5603 color: #fff; 5604 margin-top: auto; 5605 } 5606 5607 .bundle-link{ 5608 font-family: var(--font-body); 5609 font-size: var(--font-size-buttons); 5610 border-radius: var(--radius-buttons); 5611 color: var(--color-text-buttons); 5612 background-color: var(--color-principal); 5613 border: 1px solid var(--color-principal); 5614 text-decoration: none; 5615 width: fit-content; 5616 margin-inline: auto; 5617 padding: 16px 36px; 5618 transition: all 0.3s ease; 5619 &:hover { 5620 background-color: var(--color-principal-hover); 5621 color: var(--color-principal); 5622 } 5623 &:empty { 5624 display: none; 5625 } 5626 } 5627 5628 &.variant-2{ 5629 .bundle-label, 5630 .bundle-features, 5631 .bundle-text-extra{ 5632 display: none; 5633 } 5634 .bundle-item{ 5635 justify-content: flex-end; 5636 padding: 24px; 5637 height: 430px; 5638 min-height: unset; 5639 } 5640 .bundle-image-wrapper{ 5641 &::before { 5642 background: linear-gradient(0deg, #000 0%, #fff 68.3%); 5643 mix-blend-mode: multiply; 5644 } 5645 } 5646 .bundle-content{ 5647 @media (min-width: 1024px){ 5648 grid-template-columns: repeat(3, 1fr); 5649 & > :last-child:nth-child(odd) { 5650 grid-column: unset; 5651 } 5652 } 5653 } 5654 .bundle-title{ 5655 font-size: var(--font-size-h3); 5656 margin-bottom: 10px; 5657 } 5658 .bundle-description{ 5659 margin-bottom: 16px; 5660 display: -webkit-box; 5661 -webkit-line-clamp: 2; 5662 -webkit-box-orient: vertical; 5663 overflow: hidden; 5664 @media (min-width: 600px){ 5665 margin-bottom: 36px; 5666 } 5667 } 5668 .bundle-btn{ 5669 background-color: transparent; 5670 border: 1px solid #fff; 5671 color: #fff; 5672 margin-bottom: 0; 5673 &:hover { 5674 background-color: #fff; 5675 color: #000; 5676 } 5677 } 5678 } 5679 5680 &.variant-3{ 5681 overflow: hidden; 5682 .bundle-wrapper{ 5683 display: grid; 5684 grid-template-columns: minmax(200px, 315px) 1fr; 5685 gap: clamp(32px, 6vw, 90px); 5686 align-items: start; 5687 @media (max-width: 1023px){ 5688 display: flex; 5689 flex-direction: column; 5690 } 5691 } 5692 .bundle-header{ 5693 max-width: unset; 5694 align-items: flex-start; 5695 position: sticky; 5696 top: 24px; 5697 z-index: 10; 5698 height: 100%; 5699 &::before { 5700 content: ''; 5701 position: absolute; 5702 left:-410%; 5703 top: -80px; 5704 width: calc(510% + 45px); 5705 height: 112%; 5706 background: var(--color-background); 5707 z-index: -1; 5708 pointer-events: none; 5709 } 5710 @media (max-width: 1023px){ 5711 position: static; 5712 &::before { 5713 display: none; 5714 } 5715 } 5716 } 5717 .bundle-header-title, 5718 .bundle-header-subtitle{ 5719 @media (min-width: 1024px){ 5720 text-align: left; 5721 } 5722 } 5723
5724 .bundle-carousel-column { 5725 min-width: 0; 5726 display: flex; 5727 width: 100%; 5728 flex-direction: column; 5729 gap: 48px; 5730 } 5731 .bundle-content{ 5732 display: flex; 5733 flex-direction: row; 5734 gap: 0; 5735 } 5736 .bundle-label, 5737 .bundle-features, 5738 .bundle-text-extra{ 5739 display: none; 5740 } 5741 5742 .bundle-swiper { 5743 width: 100%; 5744 overflow: visible; 5745 } 5746 .bundle-item{ 5747 padding: 16px; 5748 max-height: 550px; 5749 height: 100%; 5750 width: 370px; 5751 max-width: unset; 5752 flex-shrink: 0; 5753 color: var(--textColor); 5754 background-color: var(--color-cards); 5755 gap: 24px; 5756 5757 } 5758 5759 .bundle-item.swiper-slide-prev { 5760 left: -32px; 5761 } 5762 5763 .bundle-image-wrapper{ 5764 position: relative; 5765 z-index: inherit; 5766 height: 220px; 5767 } 5768 .bundle-title, 5769 .bundle-description, 5770 .bundle-btn{ 5771 margin: 0; 5772 line-height: 1.5; 5773 display: -webkit-box; 5774 -webkit-box-orient: vertical; 5775 overflow: hidden; 5776 } 5777 .bundle-title{ 5778 -webkit-line-clamp: 2; 5779 } 5780 .bundle-description{ 5781 -webkit-line-clamp: 3; 5782 } 5783 .bundle-btn{ 5784 border-radius: var(--radius-buttons); 5785 color: var(--color-text-buttons); 5786 background-color: var(--color-principal); 5787 border: 1px solid var(--color-principal); 5788 text-decoration: none; 5789 width: fit-content; 5790 padding: 16px 36px; 5791 transition: all 0.3s ease; 5792 &:hover { 5793 background-color: var(--color-principal-hover); 5794 color: var(--color-principal); 5795 } 5796 } 5797 5798 .bundle-swiper-nav { 5799 display: flex; 5800 gap: 12px; 5801 @media (max-width: 1023px){ 5802 justify-content: center; 5803 } 5804 } 5805 5806 .bundle-swiper-prev, 5807 .bundle-swiper-next { 5808 display: flex; 5809 align-items: center; 5810 justify-content: center; 5811 width: 62px; 5812 height: 62px; 5813 border-radius: 50%; 5814 border: 1px solid var(--textColor); 5815 background: transparent; 5816 cursor: pointer; 5817 font-size: 32px; 5818 color: var(--textColor); 5819 transition: all 0.2s ease; 5820 5821 &:hover { 5822 background: var(--color-principal); 5823 border-color: var(--color-principal); 5824 color: var(--color-text-buttons); 5825 } 5826 5827 &.swiper-button-disabled { 5828 opacity: 0.3; 5829 pointer-events: none; 5830 } 5831 } 5832 5833 .bundle-link{ 5834 display: none; 5835 } 5836 } 5837} 5838 5839</style> 5840
5841<script type="module"> 5842 import Swiper from 'https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.mjs'; 5843 5844 function removeBtn(container){ 5845 const btnUrl = { 5846 url: '' 5847 } 5848 const btn = container.querySelector('.bundle-link'); 5849 if(btnUrl.url){ 5850 btn.href = btnUrl.url; 5851 } 5852 if(btn.innerHTML.trim() != ''){ 5853 btn.classList.remove('hidden'); 5854 } 5855 } 5856 5857 function init_bundles(id) { 5858 const module = document.getElementById(id); 5859 const items = module.querySelectorAll(".bundle-item"); 5860 5861 removeBtn(module); 5862 5863 const variant = module.classList.contains("variant-2") ? "variant-2" 5864 : module.classList.contains("variant-3") ? "variant-3" 5865 : "default"; 5866 5867 switch (variant) { 5868 case "variant-3": 5869 const content = module.querySelector(".bundle-content"); 5870 content.classList.add("swiper-wrapper"); 5871 items.forEach(item => item.classList.add("swiper-slide")); 5872 5873 const swiperEl = document.createElement("div"); 5874 swiperEl.classList.add("swiper", "bundle-swiper"); 5875 5876 const columnWrapper = document.createElement("div"); 5877 columnWrapper.classList.add("bundle-carousel-column"); 5878 content.parentNode.insertBefore(columnWrapper, content); 5879 columnWrapper.appendChild(swiperEl); 5880 swiperEl.appendChild(content); 5881 5882 const prevBtn = document.createElement("button"); 5883 prevBtn.classList.add("bundle-swiper-prev"); 5884 prevBtn.innerHTML = '<span class="newicons-flecha-izquierda"></span>'; 5885 5886 const nextBtn = document.createElement("button"); 5887 nextBtn.classList.add("bundle-swiper-next"); 5888 nextBtn.innerHTML = '<span class="newicons-flecha-derecha"></span>'; 5889 5890 const navWrapper = document.createElement("div"); 5891 navWrapper.classList.add("bundle-swiper-nav"); 5892 navWrapper.appendChild(prevBtn); 5893 navWrapper.appendChild(nextBtn); 5894 5895 columnWrapper.appendChild(navWrapper); 5896 5897 new Swiper(swiperEl, { 5898 slidesPerView: "auto", 5899 spaceBetween: 32, 5900 grabCursor: true, 5901 navigation: { 5902 prevEl: prevBtn, 5903 nextEl: nextBtn, 5904 }, 5905 breakpoints: { 5906 0: { 5907 slidesPerView: 1, 5908 }, 5909 1024: { 5910 } 5911 } 5912 }); 5913 break; 5914 default: 5915 break; 5916 } 5917 5918 } 5919 5920 document.addEventListener("DOMContentLoaded", function() { 5921 init_bundles("bundle-148925"); 5922 }); 5923</script>
5923 5924 <section class="featured variant-2" id="featured-148932" data-scroll=""> 5925 <div class="featured-wrapper"> 5926 <div class="featured-header"> 5927 <h2 class="featured-title">Eventos</h2> 5928 </div> 5929 <div class="featured-content"> 5930 5931 <div class="featured-item"> 5932 <div class="featured-item-icon "></div> 5933 <img src="https://synergy.booking-channel.com/api/hotels/413/medias/196#Ceremonia de boda en el exterior del Palacio del Infante Don Juan Manuel en Belmonte con pareja caminando por el pasillo y invitados a ambos lados" alt="evento_1" class="featured-image" data-key="img"/> 5934 <h3 class="featured-item-title" data-key="title">Tu boda ideal</h3> 5935 <span class="featured-item-description" data-key="descriptionShort"><p>Uno de los dÃas más felices para una pareja es el dÃa de su boda. En el Palacio Del Infante Don Juan Manuel lo sabemos muy bien y por eso nuestro equipo pone toda su dedicación para que este dÃa sea aún más especial para vosotros. No dudéis en solicitar información o concertar una cita con nosotros para conocer nuestras instalaciones y servicios<br/><br/></p></span> 5936 5937 5938 <a 5939 href="/templates/cadenas/air/images/hotels/HTL00310/salones/bodas.pdf" 5940 class="featured-btn" 5941 >Más información</a> 5942 5943 5944 </div> 5945 <div class="featured-item"> 5946 <div class="featured-item-icon "></div> 5947 <img src="https://synergy.booking-channel.com/api/hotels/413/medias/105#Banquete de boda en el claustro del Palacio del Infante Don Juan Manuel en Belmonte con mesas redondas, sillas vestidas y copas preparadas" alt="evento_2" class="featured-image" data-key="img"/> 5948 <h3 class="featured-item-title" data-key="title">Espacio para reuniones</h3> 5949 <span class="featured-item-description" data-key="descriptionShort"><p>La peculiar arquitectura del edificio, que conserva en todos los rincones vestigios de épocas pasadas, se hace especialmente notable en nuestros espacios para reuniones, creando un entorno con carácter y personalidad propia.<br/><br/>Nuestro departamento de eventos estará encantado de asesorarle, recomendándole una cuidada selección de servicios y actividades para que su evento sea un éxito.<br/></p></span> 5950 5951 5952 <a 5953 href="/templates/cadenas/air/images/hotels/HTL00310/salones/MICE.pdf" 5954 class="featured-btn" 5955 >Más información</a> 5956 5957 5958 </div> 5959 </div> 5960 <div class="featured-bottom-line"></div> 5961 </div> 5962</section> 5963<style> 5964 5965.featured{ 5966 --textColor: var(--color-text); 5967 --textColor: var(--color-text); 5968 --swiper-navigation-color: #fff; 5969 --groupSize: 6; 5970 5971 color: var(--textColor); 5972 5973 width: 100%; 5974 display: flex; 5975 justify-content: center; 5976 overflow:hidden; 5977 position: relative; 5978 background-color: var(--color-background); 5979 5980 &.background-color{ 5981 --background-color: ; 5982 background-color: var(--background-color); 5983 } 5984 &.font-white{ 5985 --textColor: #FFFFFF; 5986 } 5987 &.fill{ 5988 .featured-content-wrapper{ 5989 display: flex; 5990 flex-direction: column; 5991 justify-content: space-around; 5992 @media (min-width: 1024px){ 5993 flex-direction: row; 5994 gap: 96px; 5995 padding-inline: 0; 5996 } 5997 } 5998 .featured-item{ 5999 width: auto; 6000 flex: 1; 6001 } 6002 } 6003 6004 .featured-wrapper{ 6005 padding: 40px 25px; 6006 width: 100%; 6007 max-width: 1250px; 6008 display: flex; 6009 flex-direction: column; 6010 box-sizing: border-box; 6011 6012 @media (min-width: 1024px){ 6013 padding: 35px 100px; 6014 } 6015 } 6016 6017 .featured-header{ 6018 text-align: center; 6019 display: flex; 6020 align-items: center; 6021 gap: 24px; 6022 margin-bottom: 48px; 6023 6024 &::before, 6025 &::after{ 6026 content: ''; 6027 flex: 1; 6028 height: 1px; 6029 background-color: var(--textColor); 6030 } 6031 6032 .featured-title{ 6033 font-size: var(--font-size-h2); 6034 font-family: var(--font-title); 6035 font-weight: 700; 6036 margin: 0; 6037 display: -webkit-box; 6038 -webkit-box-orient: vertical; 6039 -webkit-line-clamp: 3; 6040 overflow: hidden; 6041 @media (min-width: 1024px){ 6042 flex: 0 1 60%; 6043 } 6044 } 6045 @media (min-width: 1024px){ 6046 gap: 48px; 6047 .featured-title{ 6048 flex: unset; 6049 } 6050 } 6051 } 6052 6053 .featured-content{ 6054 width: 100%; 6055 display: flex; 6056 flex-direction: row; 6057 justify-content: center; 6058 row-gap: 36px; 6059 column-gap: 96px; 6060 position: relative; 6061 box-sizing: border-box; 6062 @media (min-width: 1024px){ 6063 flex-direction: column; 6064 row-gap: 48px; 6065 } 6066 } 6067 .featured-content-wrapper{ 6068 position:relative; 6069 display: grid; 6070 grid-template-columns: 1fr; 6071 grid-template-rows: repeat(var(--groupSize), 1fr); 6072 width: 200px; 6073 margin-bottom: 24px; 6074 gap: 36px; 6075 &:not(:last-child):after{ 6076 content: ''; 6077 position: absolute; 6078 right: calc(-96px / 2); 6079 width: 1px; 6080 height: 100%; 6081 background-color: var(--textColor); 6082 } 6083 @media (min-width: 1024px){ 6084 min-height: 90px; 6085 width: 100%; 6086 grid-template-rows: 1fr; 6087 grid-template-columns: repeat(var(--groupSize), 1fr); 6088 margin: 0; 6089 gap: 48px 96px; 6090 padding-inline: 48px; 6091 &:not(:last-child):after{ 6092 content: ''; 6093 position: absolute; 6094 left: 50%; 6095 bottom: -24px; 6096 width: 100%; 6097 height: 1px; 6098 background-color: var(--textColor); 6099 transform: translateX(-50%); 6100 } 6101 } 6102 } 6103 .featured-item{ 6104 position: relative; 6105 display: flex; 6106 flex-direction: row; 6107 align-items: center; 6108 justify-content: start; 6109 gap: 8px; 6110 min-width: 50px; 6111 flex: 1; 6112 6113 .featured-item-icon{ 6114 font-size: 36px; 6115 color: var(--textColor); 6116 } 6117 .featured-image{ 6118 display: none; 6119 } 6120 .featured-item-title{ 6121 font-size: var(--font-size-base); 6122 font-family: var(--font-body); 6123 font-weight: 400; 6124 text-align: left; 6125 margin: 0; 6126 } 6127 .featured-item-description{ 6128 display: none; 6129 font-family: var(--font-body); 6130 } 6131 6132 @media (min-width: 1024px){ 6133 flex-direction: column; 6134 align-items: center; 6135 justify-content: flex-start; 6136 6137 &:not(:first-child):before{ 6138 position: absolute; 6139 content: " "; 6140 height: 100%; 6141 width: 1px; 6142 background-color: var(--textColor); 6143 left: calc(-96px / 2); 6144 } 6145 .featured-item-title{ 6146 text-align: center; 6147 } 6148 } 6149 } 6150 6151 .featured-btn{ 6152 display: none; 6153 } 6154 6155 .featured-bottom-line{ 6156 bottom: 0; 6157 left: 0; 6158 width: 100%; 6159 height: 1px; 6160 margin-top: 16px; 6161 background-color: var(--textColor); 6162 } 6163 6164 &.variant-2{ 6165 position: relative; 6166 --textColor: #FFFFFF; 6167 .featured-wrapper{ 6168 padding: 0; 6169 gap: 64px; 6170 @media (min-width: 600px){ 6171 max-width: 100%; 6172 } 6173 } 6174 6175 .featured-header{ 6176 position: absolute; 6177 z-index: 10; 6178 width: 100%; 6179 top: 40px; 6180 justify-content: center; 6181 &::before, 6182 &::after{ 6183 display: none; 6184 } 6185 @media (min-width: 600px){ 6186 top: 70px; 6187 } 6188 } 6189 .featured-title{ 6190 max-width: 850px; 6191 } 6192 .featured-content-wrapper{ 6193 padding:0; 6194 } 6195 .featured-content{ 6196 flex-direction: row; 6197 } 6198 .featured-item{ 6199 position: relative; 6200 padding: 160px 20px 100px 20px; 6201 justify-content: center; 6202 flex-direction: column; 6203 gap: 24px; 6204 min-width: 100vw; 6205 box-sizing: border-box; 6206 &::before{ 6207 content: ''; 6208 position: absolute; 6209 top: 0; 6210 left: 0; 6211 width: 100%; 6212 height: 100%; 6213 background: linear-gradient(0deg, rgba(0, 0, 0, 0.70) 0%, rgba(0, 0, 0, 0.70) 100%); 6214 z-index: 1; 6215 } 6216 .featured-item-icon{ 6217 display:none; 6218 } 6219 .featured-image{ 6220 position:absolute; 6221 z-index: 0; 6222 top: 0; 6223 left: 0; 6224 display: block; 6225 width: 100%; 6226 height: 100%; 6227 object-fit: cover; 6228 6229 @media (min-width: 600px){ 6230 width: 100vw; 6231 object-position: center; 6232 } 6233 } 6234 .featured-item-title{ 6235 position: relative; 6236 z-index: 2; 6237 font-size: var(--font-size-h2); 6238 font-weight: 700; 6239 text-align: center; 6240 } 6241 .featured-item-description{ 6242 position: relative; 6243 z-index: 2; 6244 display: block; 6245 text-align: center; 6246 overflow: hidden; 6247 text-overflow: ellipsis; 6248 font-size: var(--font-size-base); 6249 max-width: 850px; 6250 } 6251 @media (min-width: 1024px){ 6252 padding: 155px 20px 100px 20px; 6253 } 6254 @media (min-width: 600px){ 6255 min-width: 100%; 6256 width: 100%; 6257 padding-bottom: 70px; 6258 justify-content: start; 6259 .featured-item-description{ 6260 height: auto; 6261 } 6262 } 6263 } 6264 .featured-bottom-line{ 6265 display: none; 6266 } 6267 .swiper-pagination{ 6268 --swiper-theme-color: #fff; 6269 --swiper-pagination-color: #fff; 6270 position: absolute; 6271 top: unset; 6272 bottom: 40px; 6273 left: 25px; 6274 right: 25px; 6275 width: 40%; 6276 margin: auto; 6277 } 6278 .swiper-pagination-progressbar{ 6279 background: rgba(243, 243, 243, 0.5); 6280 } 6281 .swiper-button-next, 6282 .swiper-button-prev{ 6283 right: 48px; 6284 width: 24px; 6285 transition: all 0.3s ease; 6286 &.swiper-button-prev{ 6287 right: 0px; 6288 left: 48px; 6289 } 6290 svg path { 6291 fill:transparent; 6292 } 6293 &:after{ 6294 display: none; 6295 } 6296 &:hover { 6297 color:var(--color-principal); 6298 } 6299 @media (max-width: 600px){ 6300 display:none; 6301 } 6302 } 6303 .featured-btn{ 6304 display: flex; 6305 padding: 16px 24px; 6306 justify-content: center; 6307 align-items: center; 6308 font-size: var(--font-size-buttons); 6309 background-color: var(--color-principal); 6310 color: var(--color-text-buttons); 6311 border: 1px solid var(--color-principal); 6312 border-radius: var(--radius-buttons); 6313 transition: all 0.3s ease; 6314 z-index: 2; 6315 &:hover{ 6316 background-color: transparent; 6317 color: var(--color-principal); 6318 } 6319 } 6320 } 6321} 6322 6323</style> 6324
6325<script type="module"> 6326import {initializeSwiper} from '/templates/cadenas/corporativaair/js/libraries/keytelFunctions.js'; 6327 6328const CONFIG_FEATURED = { 6329 GROUP_SIZE: parseInt('') || 5, 6330}; 6331 6332 6333 6334function init_featured(menuId) { 6335 const module = document.querySelector(`#featured-${menuId}`); 6336 const container = module?.querySelector('.featured-content'); 6337 const itemList = Array.from(container.children); 6338 6339 const groupSize = window.innerWidth >= 1024 6340 ? CONFIG_FEATURED.GROUP_SIZE 6341 : Math.ceil(itemList.length / 2); 6342 6343 if ( !container) return; 6344 6345 // Calcular groupSize según la resolución 6346 6347 6348 // Establecer la variable CSS groupSize dinámicamente 6349 module.style.setProperty('--groupSize', groupSize); 6350 6351 let variant = 'default'; 6352 6353 if (module?.classList.contains('variant-2')) { 6354 variant = 'variant-2'; 6355 } else if (module?.classList.contains('variant-3')) { 6356 variant = 'variant-3'; 6357 } 6358 6359 switch(variant) { 6360 case 'variant-2': 6361 const swiperConfig = { 6362 loop: true, 6363 slidesPerView: 1, 6364 spaceBetween: 0, 6365 pagination: { 6366 el: ".featured .swiper-pagination", 6367 clickable: true, 6368 type: "progressbar", 6369 }, 6370 navigation: { 6371 addIcons: false, 6372 nextEl: '.featured .swiper-button-next', 6373 prevEl: '.featured .swiper-button-prev', 6374 enabled: false, 6375 }, 6376 breakpoints: { 6377 600: { 6378 pagination: false, 6379 navigation: { 6380 enabled: true, 6381 } 6382 }, 6383 }, 6384 } 6385 initializeSwiper(container, itemList, swiperConfig, 6386 { 6387 showButtons:true, 6388 prevButton: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-left-icon lucide-chevron-left"><path d="m15 18-6-6 6-6"/></svg>', 6389 nextButton: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right-icon lucide-chevron-right"><path d="m9 18 6-6-6-6"/></svg>' 6390 }); 6391 break; 6392 default: 6393 groupItems(container, itemList, groupSize); 6394 break; 6395 } 6396 6397} 6398 6399// Función para agrupar elementos y agregarlos al contenedor 6400function groupItems(container, itemList, groupSize){ 6401 container.innerHTML = ''; 6402 6403 for (let i = 0; i < itemList.length; i += groupSize) { 6404 const wrapper = document.createElement('div'); 6405 wrapper.className = 'featured-content-wrapper'; 6406 6407 const group = itemList.slice(i, i + groupSize); 6408 6409 group.forEach((child) => { 6410 wrapper.appendChild(child); 6411 }); 6412 6413 wrapper.setAttribute('data-items', group.length); 6414 container.appendChild(wrapper); 6415 } 6416} 6417 6418document.addEventListener("DOMContentLoaded", () => { 6419 init_featured('148932'); 6420}); 6421</script>
6421 6422 <section class="bundle hide-header hide-link" id="bundle-148935" data-scroll=""> 6423 <div class="bundle-wrapper"> 6424 <div class="bundle-header"> 6425 <h2 class="bundle-header-title">restaurante_spa</h2> 6426 <div class="bundle-header-subtitle"></div> 6427 </div> 6428 6429 <div class="bundle-content"> 6430 <div class="bundle-item"> 6431 6432 <div class="bundle-image-wrapper"> 6433 <img 6434 class="bundle-image" 6435 src="https://synergy.booking-channel.com/api/hotels/413/medias/188#Mesas del restaurante del Palacio del Infante Don Juan Manuel en Belmonte junto a ventanales con arcos de piedra y vistas a la piscina exterior" alt="Restaurante El Convento" 6436 /> 6437 </div> 6438 <h3 class="bundle-title">Restaurante El Convento</h3> 6439 <div class="bundle-description"><p>Inspirados en los alarifes andalusÃes que levantaron el antiguo alcázar de Belmonte, nuestra cocina rinde homenaje a una tradición que perdura en el tiempo. Cada plato busca dejar huella, combinando historia, creatividad y sabor.<br/><br/></p></div> 6440 6441 <ul class="bundle-features"> 6442 6443 </ul> 6444 6445 6446 6447 <a 6448 href="/restaurante.html" 6449 class="bundle-btn" 6450 >Saber más</a> 6451 6452 6453 6454 <div class="bundle-text-extra"></div> 6455 </div> 6456 <div class="bundle-item"> 6457 6458 <div class="bundle-image-wrapper"> 6459 <img 6460 class="bundle-image" 6461 src="https://synergy.booking-channel.com/api/hotels/413/medias/215#Piscina interior del spa del Palacio del Infante Don Juan Manuel en Belmonte con cascadas de agua, hidromasaje y revestimiento de mosaico" alt="Spa" 6462 /> 6463 </div> 6464 <h3 class="bundle-title">Spa</h3> 6465 <div class="bundle-description"><p>Contacte con nosotros para reservar el acceso al circuito spa o a los servicios de masaje. Consulte nuestras promociones especiales para clientes alojados en el hotel.<br/><br/></p></div> 6466 6467 <ul class="bundle-features"> 6468 6469 </ul> 6470 6471 6472 6473 <a 6474 href="/spa.html" 6475 class="bundle-btn" 6476 >Saber más</a> 6477 6478 6479 6480 <div class="bundle-text-extra"></div> 6481 </div> 6482 </div> 6483 6484 <a href="https://www.hotelspainfantedonjuanmanuel.es/restaurante_spa.html" class="bundle-link"></a> 6485 6486 </div> 6487 6488</section> 6489 6490<style> 6491 6492.bundle { 6493 background-color: var(--color-background); 6494 --textColor: var(--color-text); 6495 * { 6496 box-sizing: border-box; 6497 margin: 0; 6498 line-height: 1.5; 6499 } 6500 6501 &.hide-header:not(&.variant-3){ 6502 .bundle-header{ 6503 display: none; 6504 } 6505 } 6506 &.hide-link:not(&.variant-3){ 6507 .bundle-link{ 6508 display: none; 6509 } 6510 } 6511 &.hide-label:not(&.variant-3){ 6512 .bundle-label{ 6513 display: none; 6514 } 6515 } 6516 6517 &.background-color{ 6518 background-color: !important; 6519 .bundle-header{ 6520 &::before { 6521 background-color: !important; 6522 } 6523 } 6524 } 6525 &.font-white{ 6526 --textColor: #fff; 6527 } 6528 .bundle-wrapper { 6529 max-width: 1440px; 6530 padding: 40px 25px; 6531 width: 100%; 6532 margin-inline: auto; 6533 display: flex; 6534 flex-direction: column; 6535 gap: 48px; 6536 @media (min-width: 1024px){ 6537 padding: 35px 100px; 6538 gap: 64px; 6539 } 6540 } 6541 .bundle-header { 6542 display: flex; 6543 flex-direction: column; 6544 align-items: center; 6545 max-width: 815px; 6546 margin-inline: auto; 6547 } 6548 .bundle-header-title{ 6549 font-family: var(--font-title); 6550 font-size: var(--font-size-h2); 6551 margin-bottom: var(--spacing-title); 6552 color: var(--textColor); 6553 text-align: center; 6554 word-break: break-word; 6555 } 6556 .bundle-header-subtitle{ 6557 font-family: var(--font-body); 6558 font-size: var(--font-size-base); 6559 color: var(--textColor); 6560 margin-top: 0; 6561 text-align: center; 6562 word-break: break-word; 6563 } 6564 6565 .bundle-content{ 6566 display: flex; 6567 flex-direction: column; 6568 gap: 48px; 6569 align-items: stretch; 6570 @media(min-width: 1024px){ 6571 display: grid; 6572 grid-template-columns: repeat(2, 1fr); 6573 gap: 48px; 6574 6575 & > :last-child:nth-child(odd) { 6576 grid-column: span 2; 6577 } 6578 } 6579 } 6580 6581 .bundle-item{ 6582 position: relative; 6583 display: flex; 6584 flex-direction: column; 6585 align-items: flex-start; 6586 min-height: 400px; 6587 padding: 48px 24px; 6588 color: #fff; 6589 border-radius: var(--radius-elements); 6590 box-shadow: 0 8px 20px 0 var(--color-shadow-box); 6591 > * { 6592 z-index: 2; 6593 } 6594 @media (min-width: 1024px){ 6595 min-height: 500px; 6596 padding: 48px; 6597 } 6598 } 6599 .bundle-image-wrapper { 6600 position: absolute; 6601 width: 100%; 6602 height: 100%; 6603 inset: 0; 6604 overflow: hidden; 6605 border-radius: var(--radius-elements); 6606 z-index: 1; 6607 6608 &::before { 6609 content: ''; 6610 position: absolute; 6611 inset: 0; 6612 background: rgba(0, 0, 0, 0.55); 6613 mix-blend-mode: multiply; 6614 z-index: 1; 6615 border-radius: inherit; 6616 } 6617 @media (min-width: 1024px){ 6618 &::before { 6619 background: linear-gradient(90deg, #000 0%, #b3b3b3 52.1%); 6620 } 6621 } 6622 } 6623 .bundle-image{ 6624 width: 100%; 6625 height: 100%; 6626 object-fit: cover; 6627 border-radius: var(--radius-elements); 6628 } 6629 .bundle-label, 6630 .bundle-title, 6631 .bundle-description, 6632 .bundle-features, 6633 .bundle-cta,
6634 .bundle-text-extra{ 6635 @media (min-width: 1024px){ 6636 max-width: 550px; 6637 } 6638 } 6639 6640 .bundle-label{ 6641 font-family: var(--font-body); 6642 font-size: var(--font-size-base); 6643 color: #fff; 6644 border-radius: var(--radius-buttons); 6645 padding: 8px 16px; 6646 border: 0.5px solid rgba(243, 243, 243, 0.50); 6647 background: rgba(0, 0, 0, 0.25); 6648 backdrop-filter: blur(25px); 6649 margin-bottom: 36px; 6650 @media (min-width: 600px){ 6651 margin-bottom: 48px; 6652 } 6653 } 6654 .bundle-title{ 6655 font-family: var(--font-title); 6656 font-size: var(--font-size-h2); 6657 margin-bottom: var(--spacing-title); 6658 font-weight: 700; 6659 } 6660 .bundle-description{ 6661 font-family: var(--font-body); 6662 font-size: var(--font-size-base); 6663 6664 margin-bottom: 24px; 6665 6666 @media (min-width: 600px){ 6667 margin-bottom: 48px; 6668 6669 } 6670 @media (min-width: 1024px){ 6671 display: -webkit-box; 6672 -webkit-line-clamp: 3; 6673 -webkit-box-orient: vertical; 6674 overflow: hidden; 6675 } 6676 } 6677 .bundle-features{ 6678 list-style: none; 6679 display: flex; 6680 flex-direction: column; 6681 gap: 8px; 6682 margin-bottom: 36px; 6683 padding: 0; 6684 @media (min-width: 600px){ 6685 gap: 16px; 6686 margin-bottom: 48px; 6687 } 6688 } 6689 .bundle-feature{ 6690 display: flex; 6691 align-items: center; 6692 gap: 16px; 6693 } 6694 .bundle-feature-text{ 6695 font-family: var(--font-body); 6696 font-size: var(--font-size-base); 6697 } 6698 .bundle-feature-icon{ 6699 font-size: 24px; 6700 } 6701 .bundle-btn{ 6702 font-family: var(--font-body); 6703 font-size: var(--font-size-buttons); 6704 border-radius: var(--radius-buttons); 6705 color: #000; 6706 background-color: #fff; 6707 border: 1px solid #fff; 6708 padding: 16px 24px; 6709 cursor: pointer; 6710 transition: all 0.3s ease; 6711 margin-bottom: 24px; 6712 text-decoration: none; 6713 &:hover { 6714 background-color: #0000003c; 6715 backdrop-filter: blur(25px); 6716 color: #fff; 6717 } 6718 } 6719 .bundle-text-extra{ 6720 font-family: var(--font-body); 6721 font-size: var(--font-size-base); 6722 color: #fff; 6723 margin-top: auto; 6724 } 6725 6726 .bundle-link{ 6727 font-family: var(--font-body); 6728 font-size: var(--font-size-buttons); 6729 border-radius: var(--radius-buttons); 6730 color: var(--color-text-buttons); 6731 background-color: var(--color-principal); 6732 border: 1px solid var(--color-principal); 6733 text-decoration: none; 6734 width: fit-content; 6735 margin-inline: auto; 6736 padding: 16px 36px; 6737 transition: all 0.3s ease; 6738 &:hover { 6739 background-color: var(--color-principal-hover); 6740 color: var(--color-principal); 6741 } 6742 &:empty { 6743 display: none; 6744 } 6745 } 6746 6747 &.variant-2{ 6748 .bundle-label, 6749 .bundle-features, 6750 .bundle-text-extra{ 6751 display: none; 6752 } 6753 .bundle-item{ 6754 justify-content: flex-end; 6755 padding: 24px; 6756 height: 430px; 6757 min-height: unset; 6758 } 6759 .bundle-image-wrapper{ 6760 &::before { 6761 background: linear-gradient(0deg, #000 0%, #fff 68.3%); 6762 mix-blend-mode: multiply; 6763 } 6764 } 6765 .bundle-content{ 6766 @media (min-width: 1024px){ 6767 grid-template-columns: repeat(3, 1fr); 6768 & > :last-child:nth-child(odd) { 6769 grid-column: unset; 6770 } 6771 } 6772 } 6773 .bundle-title{ 6774 font-size: var(--font-size-h3); 6775 margin-bottom: 10px; 6776 } 6777 .bundle-description{ 6778 margin-bottom: 16px; 6779 display: -webkit-box; 6780 -webkit-line-clamp: 2; 6781 -webkit-box-orient: vertical; 6782 overflow: hidden; 6783 @media (min-width: 600px){ 6784 margin-bottom: 36px; 6785 } 6786 } 6787 .bundle-btn{ 6788 background-color: transparent; 6789 border: 1px solid #fff; 6790 color: #fff; 6791 margin-bottom: 0; 6792 &:hover { 6793 background-color: #fff; 6794 color: #000; 6795 } 6796 } 6797 } 6798 6799 &.variant-3{ 6800 overflow: hidden; 6801 .bundle-wrapper{ 6802 display: grid; 6803 grid-template-columns: minmax(200px, 315px) 1fr; 6804 gap: clamp(32px, 6vw, 90px); 6805 align-items: start; 6806 @media (max-width: 1023px){ 6807 display: flex; 6808 flex-direction: column; 6809 } 6810 } 6811 .bundle-header{ 6812 max-width: unset; 6813 align-items: flex-start; 6814 position: sticky; 6815 top: 24px; 6816 z-index: 10; 6817 height: 100%; 6818 &::before { 6819 content: ''; 6820 position: absolute; 6821 left:-410%; 6822 top: -80px; 6823 width: calc(510% + 45px); 6824 height: 112%; 6825 background: var(--color-background); 6826 z-index: -1; 6827 pointer-events: none; 6828 } 6829 @media (max-width: 1023px){ 6830 position: static; 6831 &::before { 6832 display: none; 6833 } 6834 } 6835 } 6836 .bundle-header-title, 6837 .bundle-header-subtitle{ 6838 @media (min-width: 1024px){ 6839 text-align: left; 6840 } 6841 } 6842
6843 .bundle-carousel-column { 6844 min-width: 0; 6845 display: flex; 6846 width: 100%; 6847 flex-direction: column; 6848 gap: 48px; 6849 } 6850 .bundle-content{ 6851 display: flex; 6852 flex-direction: row; 6853 gap: 0; 6854 } 6855 .bundle-label, 6856 .bundle-features, 6857 .bundle-text-extra{ 6858 display: none; 6859 } 6860 6861 .bundle-swiper { 6862 width: 100%; 6863 overflow: visible; 6864 } 6865 .bundle-item{ 6866 padding: 16px; 6867 max-height: 550px; 6868 height: 100%; 6869 width: 370px; 6870 max-width: unset; 6871 flex-shrink: 0; 6872 color: var(--textColor); 6873 background-color: var(--color-cards); 6874 gap: 24px; 6875 6876 } 6877 6878 .bundle-item.swiper-slide-prev { 6879 left: -32px; 6880 } 6881 6882 .bundle-image-wrapper{ 6883 position: relative; 6884 z-index: inherit; 6885 height: 220px; 6886 } 6887 .bundle-title, 6888 .bundle-description, 6889 .bundle-btn{ 6890 margin: 0; 6891 line-height: 1.5; 6892 display: -webkit-box; 6893 -webkit-box-orient: vertical; 6894 overflow: hidden; 6895 } 6896 .bundle-title{ 6897 -webkit-line-clamp: 2; 6898 } 6899 .bundle-description{ 6900 -webkit-line-clamp: 3; 6901 } 6902 .bundle-btn{ 6903 border-radius: var(--radius-buttons); 6904 color: var(--color-text-buttons); 6905 background-color: var(--color-principal); 6906 border: 1px solid var(--color-principal); 6907 text-decoration: none; 6908 width: fit-content; 6909 padding: 16px 36px; 6910 transition: all 0.3s ease; 6911 &:hover { 6912 background-color: var(--color-principal-hover); 6913 color: var(--color-principal); 6914 } 6915 } 6916 6917 .bundle-swiper-nav { 6918 display: flex; 6919 gap: 12px; 6920 @media (max-width: 1023px){ 6921 justify-content: center; 6922 } 6923 } 6924 6925 .bundle-swiper-prev, 6926 .bundle-swiper-next { 6927 display: flex; 6928 align-items: center; 6929 justify-content: center; 6930 width: 62px; 6931 height: 62px; 6932 border-radius: 50%; 6933 border: 1px solid var(--textColor); 6934 background: transparent; 6935 cursor: pointer; 6936 font-size: 32px; 6937 color: var(--textColor); 6938 transition: all 0.2s ease; 6939 6940 &:hover { 6941 background: var(--color-principal); 6942 border-color: var(--color-principal); 6943 color: var(--color-text-buttons); 6944 } 6945 6946 &.swiper-button-disabled { 6947 opacity: 0.3; 6948 pointer-events: none; 6949 } 6950 } 6951 6952 .bundle-link{ 6953 display: none; 6954 } 6955 } 6956} 6957 6958</style> 6959
6960<script type="module"> 6961 import Swiper from 'https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.mjs'; 6962 6963 function removeBtn(container){ 6964 const btnUrl = { 6965 url: '' 6966 } 6967 const btn = container.querySelector('.bundle-link'); 6968 if(btnUrl.url){ 6969 btn.href = btnUrl.url; 6970 } 6971 if(btn.innerHTML.trim() != ''){ 6972 btn.classList.remove('hidden'); 6973 } 6974 } 6975 6976 function init_bundles(id) { 6977 const module = document.getElementById(id); 6978 const items = module.querySelectorAll(".bundle-item"); 6979 6980 removeBtn(module); 6981 6982 const variant = module.classList.contains("variant-2") ? "variant-2" 6983 : module.classList.contains("variant-3") ? "variant-3" 6984 : "default"; 6985 6986 switch (variant) { 6987 case "variant-3": 6988 const content = module.querySelector(".bundle-content"); 6989 content.classList.add("swiper-wrapper"); 6990 items.forEach(item => item.classList.add("swiper-slide")); 6991 6992 const swiperEl = document.createElement("div"); 6993 swiperEl.classList.add("swiper", "bundle-swiper"); 6994 6995 const columnWrapper = document.createElement("div"); 6996 columnWrapper.classList.add("bundle-carousel-column"); 6997 content.parentNode.insertBefore(columnWrapper, content); 6998 columnWrapper.appendChild(swiperEl); 6999 swiperEl.appendChild(content); 7000 7001 const prevBtn = document.createElement("button"); 7002 prevBtn.classList.add("bundle-swiper-prev"); 7003 prevBtn.innerHTML = '<span class="newicons-flecha-izquierda"></span>'; 7004 7005 const nextBtn = document.createElement("button"); 7006 nextBtn.classList.add("bundle-swiper-next"); 7007 nextBtn.innerHTML = '<span class="newicons-flecha-derecha"></span>'; 7008 7009 const navWrapper = document.createElement("div"); 7010 navWrapper.classList.add("bundle-swiper-nav"); 7011 navWrapper.appendChild(prevBtn); 7012 navWrapper.appendChild(nextBtn); 7013 7014 columnWrapper.appendChild(navWrapper); 7015 7016 new Swiper(swiperEl, { 7017 slidesPerView: "auto", 7018 spaceBetween: 32, 7019 grabCursor: true, 7020 navigation: { 7021 prevEl: prevBtn, 7022 nextEl: nextBtn, 7023 }, 7024 breakpoints: { 7025 0: { 7026 slidesPerView: 1, 7027 }, 7028 1024: { 7029 } 7030 } 7031 }); 7032 break; 7033 default: 7034 break; 7035 } 7036 7037 } 7038 7039 document.addEventListener("DOMContentLoaded", function() { 7040 init_bundles("bundle-148935"); 7041 }); 7042</script>
7042 7043 <section class="modulo-valoraciones version-2" id="moduloValoraciones-148940" data-scroll=""> 7044 <!-- Imagen de fondo (visible solo en version-3) --> 7045 <img src="" class="modulo-valoraciones__bg-image" aria-hidden="true"> 7046 <div class="modulo-valoraciones__overlay"></div> 7047 <div class="modulo-valoraciones__wrapper"> 7048 <div class="modulo-valoraciones__container"> 7049 <!-- Contenido principal --> 7050 <div class="modulo-valoraciones__content"> 7051 <!-- GalerÃa de imágenes (visible en default) --> 7052 <div class="modulo-valoraciones__images"> 7053 <img src="" class="modulo-valoraciones__image"> 7054 </div> 7055 <!-- TÃtulo con variantes --> 7056 <h2 class="modulo-valoraciones__title"> 7057 <span class="title-default">Valoraciones</span> 7058 </h2> 7059 7060 <!-- SubtÃtulo (visible en version-2) --> 7061 <span class="modulo-valoraciones__subtitle">Nos recomiendan el 100% de nuestros clientes</span> 7062 7063 <!-- Descripción (visible en version-3) --> 7064 <div class="modulo-valoraciones__description"></div> 7065 7066 <!-- Botón principal --> 7067 <a href="/opiniones.html" class="modulo-valoraciones__btn">Ver opiniones</a> 7068 7069 <!-- Link alternativo (visible en version-2) --> 7070 <a href="/opiniones.html" class="modulo-valoraciones__link">Ver opiniones</a> 7071 </div> 7072 7073 <!-- Puntuación --> 7074 <div class="modulo-valoraciones__rating-wrapper"> 7075 <div class="modulo-valoraciones__rating"> 7076 <svg xmlns="http://www.w3.org/2000/svg" class="modulo-valoraciones__rating-circle" width="375" height="375" viewBox="0 0 375 375" fill="none"> 7077 <g clip-path="url(#paint0_angular_157_144_clip_path)" data-figma-skip-parse="true"><g transform="matrix(0 0.1875 -0.1875 0 187.5 187.5)"><foreignObject x="-1000" y="-1000" width="2000" height="2000"><div xmlns="http://www.w3.org/1999/xhtml" class="gradient-valoraciones" style="background:conic-gradient(from 90deg,rgba(169, 42, 10, 1) 0deg,rgba(255, 255, 255, 0) 360deg);height:100%;width:100%;opacity:1"></div></foreignObject></g></g><path d="M187.5 0C291.053 0 375 83.9466 375 187.5C375 291.053 291.053 375 187.5 375C83.9466 375 0 291.053 0 187.5C0 83.9466 83.9466 0 187.5 0ZM187.5 29.5703C100.278 29.5703 29.5703 100.278 29.5703 187.5C29.5703 274.722 100.278 345.43 187.5 345.43C274.722 345.43 345.43 274.722 345.43 187.5C345.43 100.278 274.722 29.5703 187.5 29.5703Z" data-figma-gradient-fill="{"type":"GRADIENT_ANGULAR","stops":[{"color":{"r":0.66274511814117432,"g":0.16470588743686676,"b":0.039215687662363052,"a":1.0},"position":0.0},{"color":{"r":1.0,"g":1.0,"b":1.0,"a":0.0},"position":1.0}],"stopsVar":[{"color":{"r":0.66274511814117432,"g":0.16470588743686676,"b":0.039215687662363052,"a":1.0},"position":0.0},{"color":{"r":1.0,"g":1.0,"b":1.0,"a":0.0},"position":1.0}],"transform":{"m00":2.2962128075690313e-14,"m01":-375.0,"m02":375.0,"m10":375.0,"m11":2.2962128075690313e-14,"m12":-2.2962128075690313e-14},"opacity":1.0,"blendMode":"NORMAL","visible":true}"/> 7078 <circle cx="187" cy="360" r="15" class="gradient-valoraciones-dot" fill="#AB3011"/> 7079 <defs> 7080 <clipPath id="paint0_angular_157_144_clip_path"><path d="M187.5 0C291.053 0 375 83.9466 375 187.5C375 291.053 291.053 375 187.5 375C83.9466 375 0 291.053 0 187.5C0 83.9466 83.9466 0 187.5 0ZM187.5 29.5703C100.278 29.5703 29.5703 100.278 29.5703 187.5C29.5703 274.722 100.278 345.43 187.5 345.43C274.722 345.43 345.43 274.722 345.43 187.5C345.43 100.278 274.722 29.5703 187.5 29.5703Z"/></clipPath></defs> 7081 </svg>
7082 <span class="modulo-valoraciones__rating-value">8.4</span> 7083 <span class="modulo-valoraciones__rating-max">/ 10</span> 7084 </div> 7085 </div> 7086 </div> 7087</section> 7088<style> 7089/* BASE */ 7090 .modulo-valoraciones * {margin: 0;padding: 0;box-sizing: border-box;} 7091 .modulo-valoraciones {padding: 40px 25px;} 7092 @media (min-width: 800px) {.modulo-valoraciones {padding: 45px 60px;}} 7093 @media (min-width: 1280px) {.modulo-valoraciones {padding: 45px 100px;}} 7094 7095/* THEMING - Variables de color */ 7096 .modulo-valoraciones {--val-text: var(--color-text);--val-bg: var(--color-background);} 7097 .modulo-valoraciones.background-color {--val-bg: ;} 7098 .modulo-valoraciones.font-white {--val-text: #fff;} 7099 7100/* FUENTES */ 7101 /* TÃtulos y número principal del rating */ 7102 .modulo-valoraciones .modulo-valoraciones__title,.modulo-valoraciones .modulo-valoraciones__rating-value {font-family: var(--font-title);} 7103 /* Cuerpo de texto, botones y enlaces */ 7104 .modulo-valoraciones .modulo-valoraciones__subtitle,.modulo-valoraciones .modulo-valoraciones__description,.modulo-valoraciones .modulo-valoraciones__btn,.modulo-valoraciones .modulo-valoraciones__link,.modulo-valoraciones .modulo-valoraciones__rating-max {font-family: var(--font-body);} 7105 7106/* ESTRUCTURA BASE DEL MÃDULO */ 7107 .modulo-valoraciones {background-color: var(--val-bg);position: relative;overflow: hidden;max-width: 100%;} 7108 .modulo-valoraciones__wrapper {max-width: 1200px;margin: 0 auto;position: relative;transition: all 0.4s ease;} 7109 .modulo-valoraciones__container {display: flex;align-items: center;justify-content: space-between;gap: 40px;position: relative;z-index: 2;} 7110 .modulo-valoraciones__content {flex: 1;max-width: 60%;} 7111 .modulo-valoraciones__rating-wrapper {flex: 1;max-width: 40%;justify-items: center;} 7112 7113/* IMÃGENES */ 7114 .modulo-valoraciones__images {display: flex;gap: 0;margin-bottom: 30px;border-radius: var(--radius-elements);overflow: hidden;box-shadow: 0 4px 20px var(--color-shadow-box);} 7115 .modulo-valoraciones__image {width: 100%;height: 220px;object-fit: cover;display: block;} 7116 /* Imagen de fondo (oculta por defecto) */ 7117 .modulo-valoraciones__bg-image {position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-fit: cover;opacity: 0;z-index: 0;transition: opacity 0.4s ease;} 7118 .modulo-valoraciones__overlay {position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: var(--val-bg);filter: opacity(0.8);opacity: 0;z-index: 1;transition: opacity 0.4s ease;} 7119 7120/* TEXTOS */ 7121 .modulo-valoraciones__title {font-size: var(--font-size-h2);font-weight: 400;color: var(--val-text);margin-bottom: 20px;line-height: 1.3;} 7122 .modulo-valoraciones__title strong {font-weight: 700;} 7123 .modulo-valoraciones__subtitle {display: none;font-size: var(--font-size-base);color: var(--val-text);margin-bottom: 0;} 7124 .modulo-valoraciones__description {display: none;font-size: var(--font-size-base);color: var(--val-text);line-height: 1.6;max-width: 700px;margin: 0 auto 30px;} 7125 7126/* BOTONES Y ENLACES */ 7127 .modulo-valoraciones__btn {display: inline-block;background-color: var(--color-principal);color: var(--color-text-buttons);padding: 16px 28px;text-decoration: none;font-size: var(--font-size-buttons);font-weight: 500;border: none;cursor: pointer;border-radius: var(--radius-buttons);transition: background-color 0.3s ease, transform 0.2s ease;} 7128 .modulo-valoraciones__btn:hover {background-color: color-mix(in srgb, var(--color-principal) 80%, black 20%);transform: translateY(-2px);color: var(--color-text-buttons);} 7129 .modulo-valoraciones__btn:visited {color: var(--color-text-buttons);} 7130 .modulo-valoraciones__link {display: none;color: var(--val-text);text-decoration: none;font-size: var(--font-size-base);transition: color 0.3s ease;} 7131 .modulo-valoraciones__link:hover {color: var(--color-principal);text-decoration: underline;} 7132 .modulo-valoraciones__link:visited {color: var(--val-text);} 7133 7134/* CÃRCULO DE PUNTUACIÃN */ 7135 .modulo-valoraciones__rating {position: relative;width: 300px;height: 300px;display: flex;align-items: center;justify-content: center;} 7136 .modulo-valoraciones__rating-circle {position: absolute;width: 100%;height: 100%;.gradient-valoraciones {background: conic-gradient(from 90deg,var(--color-principal) 0deg,rgba(255, 255, 255, 0) 360deg) !important;}.gradient-valoraciones-dot {fill: var(--color-principal)}} 7137 .modulo-valoraciones__rating-bg {fill: none;stroke: var(--color-principal);stroke-width: 8;} 7138 .modulo-valoraciones__rating-progress {fill: none;stroke-width: 8;stroke-linecap: round;stroke: url(#ratingGradient);stroke-dasharray: 565.48;stroke-dashoffset: 73.51;/* 100% - 87% = 13% de 565.48 */transition: stroke-dashoffset 0.5s ease;} 7139 .modulo-valoraciones__rating-value {font-size: 100px;font-weight: 700;color: var(--val-text);z-index: 1;} 7140 .modulo-valoraciones__rating-max {display: none;font-size: 32px;font-weight: 400;color: var(--val-text);} 7141 7142/* VERSION 2 - Barra horizontal compacta */ 7143 .modulo-valoraciones.version-2 {padding: 20px 40px;background-color: var(--val-bg);} 7144 .modulo-valoraciones.version-2 .modulo-valoraciones__wrapper {max-width: 1260px;} 7145 .modulo-valoraciones.version-2 .modulo-valoraciones__container {flex-direction: row;align-items: center;gap: 30px;} 7146 .modulo-valoraciones.version-2 .modulo-valoraciones__content {flex: 1;max-width: none;order: 2;} 7147 .modulo-valoraciones.version-2 .modulo-valoraciones__rating-wrapper {order: 1;flex: unset;flex-shrink: 0;max-width: unset;justify-items: unset;} 7148 .modulo-valoraciones.version-2 .modulo-valoraciones__images {display: none;} 7149 .modulo-valoraciones.version-2 .modulo-valoraciones__title {font-size: var(--font-size-h3);margin-bottom: 5px;} 7150 .modulo-valoraciones.version-2 .modulo-valoraciones__subtitle {display: block;} 7151 .modulo-valoraciones.version-2 .modulo-valoraciones__btn {display: none;} 7152 .modulo-valoraciones.version-2 .modulo-valoraciones__container {position: relative;} 7153 .modulo-valoraciones.version-2 .modulo-valoraciones__link {display: block;position: absolute;right: 0;bottom: 0;transform: translateY(-50%);white-space: nowrap;} 7154 .modulo-valoraciones.version-2 .modulo-valoraciones__rating {width: 100px;height: 100px;> span {color: var(--val-text) !important;}} 7155 .modulo-valoraciones.version-2 .modulo-valoraciones__rating-circle {width: 100px;height: 100px;} 7156 .modulo-valoraciones.version-2 .modulo-valoraciones__rating-bg,.modulo-valoraciones.version-2 .modulo-valoraciones__rating-progress {stroke-width: 6;} 7157 .modulo-valoraciones.version-2 .modulo-valoraciones__rating-value {font-size: 35px;} 7158 7159/* VERSION 3 - Hero con imagen de fondo */ 7160 .modulo-valoraciones.version-3 {padding: 45px 40px;min-height: 400px;text-align: center;max-width: unset;} 7161 .modulo-valoraciones.version-3 .modulo-valoraciones__bg-image {opacity: 1;} 7162 .modulo-valoraciones.version-3 .modulo-valoraciones__overlay {opacity: 1;} 7163 .modulo-valoraciones.version-3 .modulo-valoraciones__rating > span {color: var(--val-text) !important;} 7164 .modulo-valoraciones.version-3 .modulo-valoraciones__container {flex-direction: column;align-items: center;justify-content: center;} 7165 .modulo-valoraciones.version-3 .modulo-valoraciones__content {max-width: 100%;display: flex;flex-direction: column;align-items: center;} 7166 .modulo-valoraciones.version-3 .modulo-valoraciones__rating-wrapper {margin-bottom: 25px;order: 2;} 7167 .modulo-valoraciones.version-3 .modulo-valoraciones__images {display: none;} 7168 .modulo-valoraciones.version-3 .modulo-valoraciones__title {font-weight: 700;margin-bottom: 30px;order: 1;} 7169 .modulo-valoraciones.version-3 .modulo-valoraciones__title strong {font-weight: 700;} 7170 /* Ocultar el texto normal del tÃtulo y mostrar versión alternativa */ 7171 .modulo-valoraciones.version-3 .modulo-valoraciones__description {display: block;order: 3;} 7172 .modulo-valoraciones.version-3 .modulo-valoraciones__btn {order: 4;} 7173 .modulo-valoraciones.version-3 .modulo-valoraciones__rating {width: auto;height: auto;flex-direction: row;gap: 5px;} 7174 .modulo-valoraciones.version-3 .modulo-valoraciones__rating-circle {display: none;} 7175 .modulo-valoraciones.version-3 .modulo-valoraciones__rating-value {font-size: 120px;line-height: 1;} 7176 .modulo-valoraciones.version-3 .modulo-valoraciones__rating-max {display: inline;align-self: flex-end;margin-bottom: 20px;min-width: fit-content;} 7177 .modulo-valoraciones.version-3 .modulo-valoraciones__btn {margin-top: 10px;} 7178 7179/* RESPONSIVE - Mobile (max-width: 800px) */ 7180 @media (max-width: 800px) { 7181 /* ---- VERSION DEFAULT MOBILE ---- */ 7182 .modulo-valoraciones__wrapper {padding: 30px 20px;} 7183 .modulo-valoraciones__wrapper:not(.version-2):not(.version-3) {padding-bottom: 0;padding-inline: 0;}
7184 .modulo-valoraciones:not(.version-2):not(.version-3) {padding-bottom: 0;} 7185 .modulo-valoraciones__container {flex-direction: column;text-align: left;gap: 0;align-items: stretch;} 7186 .modulo-valoraciones__content {max-width: 100%;} 7187 .modulo-valoraciones__title {margin-bottom: 15px;} 7188 .modulo-valoraciones__btn {margin-bottom: 20px;align-self: flex-start;} 7189 /* Imágenes ocupan todo el ancho */ 7190 .modulo-valoraciones__images {margin-bottom: 0;border-radius: 0;margin-left: -25px;margin-right: -25px;width: calc(100% + 50px);position: relative;} 7191 .modulo-valoraciones__images::after {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-color: rgba(0, 0, 0, 0.3);z-index: 1;pointer-events: none;} 7192 .modulo-valoraciones__image {width: 100%;height: 280px;} 7193 /* Rating wrapper */ 7194 .modulo-valoraciones__rating-wrapper {width: 100%;height: 0;position: relative;pointer-events: none;flex: unset;max-width: unset;justify-items: unset;} 7195 /* CÃrculo superpuesto sobre la imagen */ 7196 .modulo-valoraciones__rating {position: absolute;bottom: calc(50% + 50px);left: calc(50% - 90px);width: 180px;height: 180px;border-radius: 50%;z-index: 20;pointer-events: all;} 7197 .modulo-valoraciones__rating-value {font-size: 68px;color: #fff;line-height: 4;} 7198 .modulo-valoraciones__rating-circle {width: 180px;height: 180px;} 7199 7200 /* ---- VERSION 2 MOBILE ---- */ 7201 .modulo-valoraciones.version-2 .modulo-valoraciones__wrapper {padding: 40px 20px;text-align: center;} 7202 .modulo-valoraciones.version-2 .modulo-valoraciones__container {flex-direction: column;align-items: center;gap: 25px;} 7203 .modulo-valoraciones.version-2 .modulo-valoraciones__content {text-align: center;} 7204 .modulo-valoraciones.version-2 .modulo-valoraciones__rating-wrapper {position: static;width: auto;height: auto;} 7205 .modulo-valoraciones.version-2 .modulo-valoraciones__rating {position: static;width: 160px;height: 160px;background: none;} 7206 .modulo-valoraciones.version-2 .modulo-valoraciones__rating-circle {width: 160px;height: 160px;} 7207 .modulo-valoraciones.version-2 .modulo-valoraciones__rating-value {font-size: 58px;} 7208 .modulo-valoraciones.version-2 .modulo-valoraciones__title {margin-bottom: 10px;} 7209 .modulo-valoraciones.version-2 .modulo-valoraciones__subtitle {margin-bottom: 20px;} 7210 .modulo-valoraciones.version-2 .modulo-valoraciones__link {position: static;transform: none;} 7211 7212 /* ---- VERSION 3 MOBILE ---- */ 7213 .modulo-valoraciones.version-3 {min-height: auto;} 7214 .modulo-valoraciones.version-3 .modulo-valoraciones__wrapper {padding: 50px 20px;} 7215 .modulo-valoraciones.version-3 .modulo-valoraciones__container {gap: 15px;text-align: center;} 7216 .modulo-valoraciones.version-3 .modulo-valoraciones__content {display: flex;flex-direction: column;align-items: center;} 7217 .modulo-valoraciones.version-3 .modulo-valoraciones__rating-wrapper {position: static;width: auto;height: auto;} 7218 .modulo-valoraciones.version-3 .modulo-valoraciones__rating {position: static;background: none;} 7219 .modulo-valoraciones.version-3 .modulo-valoraciones__title {margin-bottom: 10px;} 7220 .modulo-valoraciones.version-3 .modulo-valoraciones__rating-value {font-size: 100px;} 7221 .modulo-valoraciones.version-3 .modulo-valoraciones__rating-max {font-size: 34px;margin-bottom: 0;} 7222 .modulo-valoraciones.version-3 .modulo-valoraciones__description {margin-bottom: 25px;text-align: center;} 7223 .modulo-valoraciones.version-3 .modulo-valoraciones__btn {width: 100%;max-width: 280px;text-align: center;margin: 10px auto 0 auto;} 7224 } 7225 7226</style> 7227
7228<script> 7229 // Función para reorganizar elementos en mobile 7230 function reorganizarElementosMobile() { 7231 const modulo = document.getElementById('moduloValoraciones-148940'); 7232 const wrapper = modulo.querySelector('.modulo-valoraciones__wrapper'); 7233 const container = wrapper.querySelector('.modulo-valoraciones__container'); 7234 const content = modulo.querySelector('.modulo-valoraciones__content'); 7235 const ratingWrapper = modulo.querySelector('.modulo-valoraciones__rating-wrapper'); 7236 7237 const images = modulo.querySelector('.modulo-valoraciones__images'); 7238 const title = modulo.querySelector('.modulo-valoraciones__title'); 7239 const subtitle = modulo.querySelector('.modulo-valoraciones__subtitle'); 7240 const description = modulo.querySelector('.modulo-valoraciones__description'); 7241 const btn = modulo.querySelector('.modulo-valoraciones__btn'); 7242 const link = modulo.querySelector('.modulo-valoraciones__link'); 7243 7244 const isMobile = window.innerWidth <= 800; 7245 const isVersion2 = modulo.classList.contains('version-2'); 7246 const isVersion3 = modulo.classList.contains('version-3'); 7247 7248 if (isMobile) { 7249 if (isVersion2) { 7250 // VERSION 2 MOBILE: cÃrculo, tÃtulo, subtÃtulo, link 7251 container.appendChild(ratingWrapper); 7252 container.appendChild(content); 7253 content.appendChild(title); 7254 content.appendChild(subtitle); 7255 content.appendChild(link); 7256 } else if (isVersion3) { 7257 // VERSION 3 MOBILE: tÃtulo, cÃrculo, descripción, botón 7258 container.appendChild(content); 7259 content.appendChild(title); 7260 content.appendChild(ratingWrapper); 7261 content.appendChild(description); 7262 content.appendChild(btn); 7263 } else { 7264 // VERSION DEFAULT MOBILE: tÃtulo, botón, imagen (con cÃrculo superpuesto) 7265 container.appendChild(content); 7266 content.appendChild(title); 7267 content.appendChild(btn); 7268 content.appendChild(images); 7269 container.appendChild(ratingWrapper); 7270 } 7271 } else { 7272 // DESKTOP: restaurar orden 7273 container.innerHTML = ''; 7274 content.innerHTML = ''; 7275 7276 if (isVersion3) { 7277 // VERSION 3 DESKTOP: tÃtulo y rating dentro de content 7278 content.appendChild(title); 7279 content.appendChild(ratingWrapper); 7280 content.appendChild(description); 7281 content.appendChild(btn); 7282 container.appendChild(content); 7283 } else { 7284 // DEFAULT y VERSION 2 DESKTOP: orden original 7285 content.appendChild(images); 7286 content.appendChild(title); 7287 content.appendChild(subtitle); 7288 content.appendChild(description); 7289 content.appendChild(btn); 7290 content.appendChild(link); 7291 7292 container.appendChild(content); 7293 container.appendChild(ratingWrapper); 7294 } 7295 } 7296 } 7297 7298 // Ejecutar al cargar y al cambiar tamaño 7299 window.addEventListener('load', reorganizarElementosMobile); 7300 window.addEventListener('resize', reorganizarElementosMobile); 7301</script>
7301 7302 <section class="reviews-section " data-scroll=""> 7303 <div class="reviews-container"> 7304 <div class="reviews-header"> 7305 <h2 class="reviews-title"> 7306 Lo que dicen nuestros clientes 7307 </h2> 7308 <div class="navigation-buttons"> 7309 <button class="nav-btn prev swiper-button-prev-custom"></button> 7310 <button class="nav-btn next swiper-button-next-custom"></button> 7311 </div> 7312 </div> 7313 7314 <div class="swiper reviewsSwiper"> 7315 <div class="swiper-wrapper" id="reviewsWrapper"> 7316 7317 <div class="swiper-slide"> 7318 <div class="review-card" data-reviewer-name="Sonia Freire"> 7319 <div class="review-header"> 7320 <div class="user-avatar"></div> 7321 <div class="rating"> 7322 <span class="star">â </span> 7323 <span class="rating-value">9.5 / 10</span> 7324 </div> 7325 </div> 7326 <span class="review-text"><p>Maravillosa estancia. Por la ubicación, las instalaciones impresionantes y bien cuidadas y, especialmente por el personal, atento y amable.<br/></p></span> 7327 <button class="read-more-btn" type="button"></button> 7328 <div class="review-footer"> 7329 <div class="reviewer-name">Sonia Freire</div> 7330 <div class="review-date">18/05/2026</div> 7331 </div> 7332 </div> 7333 </div> 7334 <div class="swiper-slide"> 7335 <div class="review-card" data-reviewer-name="Manuel Berdeal GarcÃa"> 7336 <div class="review-header"> 7337 <div class="user-avatar"></div> 7338 <div class="rating"> 7339 <span class="star">â </span> 7340 <span class="rating-value">9.7 / 10</span> 7341 </div> 7342 </div> 7343 <span class="review-text"><p>Muy bien situado y cómodo<br/></p></span> 7344 <button class="read-more-btn" type="button"></button> 7345 <div class="review-footer"> 7346 <div class="reviewer-name">Manuel Berdeal GarcÃa</div> 7347 <div class="review-date">16/05/2026</div> 7348 </div> 7349 </div> 7350 </div> 7351 <div class="swiper-slide"> 7352 <div class="review-card" data-reviewer-name="Angel Millan Campos"> 7353 <div class="review-header"> 7354 <div class="user-avatar"></div> 7355 <div class="rating"> 7356 <span class="star">â </span> 7357 <span class="rating-value">8.7 / 10</span> 7358 </div> 7359 </div> 7360 <span class="review-text"><p>Muy buena experiencia<br/></p></span> 7361 <button class="read-more-btn" type="button"></button> 7362 <div class="review-footer"> 7363 <div class="reviewer-name">Angel Millan Campos</div> 7364 <div class="review-date">10/05/2026</div> 7365 </div> 7366 </div> 7367 </div> 7368 <div class="swiper-slide"> 7369 <div class="review-card" data-reviewer-name="Francisco Catany Prats"> 7370 <div class="review-header"> 7371 <div class="user-avatar"></div> 7372 <div class="rating"> 7373 <span class="star">â </span> 7374 <span class="rating-value">9 / 10</span> 7375 </div> 7376 </div>
7377 <span class="review-text"><p>Hotel muy tranquilo y cómodo para relajarse unos dias.<br/></p></span> 7378 <button class="read-more-btn" type="button"></button> 7379 <div class="review-footer"> 7380 <div class="reviewer-name">Francisco Catany Prats</div> 7381 <div class="review-date">19/04/2026</div> 7382 </div> 7383 </div> 7384 </div> 7385 <div class="swiper-slide"> 7386 <div class="review-card" data-reviewer-name="Lorena Sales Pallares"> 7387 <div class="review-header"> 7388 <div class="user-avatar"></div> 7389 <div class="rating"> 7390 <span class="star">â </span> 7391 <span class="rating-value">10 / 10</span> 7392 </div> 7393 </div> 7394 <span class="review-text"><p>El edificio es precioso y hace que la experiencia sea aun más agradable.<br/></p></span> 7395 <button class="read-more-btn" type="button"></button> 7396 <div class="review-footer"> 7397 <div class="reviewer-name">Lorena Sales Pallares</div> 7398 <div class="review-date">11/04/2026</div> 7399 </div> 7400 </div> 7401 </div> 7402 <div class="swiper-slide"> 7403 <div class="review-card" data-reviewer-name="Carmen Bedmar Huerta"> 7404 <div class="review-header"> 7405 <div class="user-avatar"></div> 7406 <div class="rating"> 7407 <span class="star">â </span> 7408 <span class="rating-value">8.8 / 10</span> 7409 </div> 7410 </div> 7411 <span class="review-text"><p>Me sorprendió muy gratamente el sitio y todo su conjunto en general. Totalmente recomendable<br/></p></span> 7412 <button class="read-more-btn" type="button"></button> 7413 <div class="review-footer"> 7414 <div class="reviewer-name">Carmen Bedmar Huerta</div> 7415 <div class="review-date">29/03/2026</div> 7416 </div> 7417 </div> 7418 </div> 7419 <div class="swiper-slide"> 7420 <div class="review-card" data-reviewer-name="Luis Arance Gonzalez"> 7421 <div class="review-header"> 7422 <div class="user-avatar"></div> 7423 <div class="rating"> 7424 <span class="star">â </span> 7425 <span class="rating-value">9.8 / 10</span> 7426 </div> 7427 </div> 7428 <span class="review-text"><p>Ideal para desconectar. El personal muy atento, comida de 10. Coincidió con San ValentÃn y estuvo genial.<br/></p></span> 7429 <button class="read-more-btn" type="button"></button> 7430 <div class="review-footer"> 7431 <div class="reviewer-name">Luis Arance Gonzalez</div> 7432 <div class="review-date">15/02/2026</div> 7433 </div> 7434 </div> 7435 </div> 7436 <div class="swiper-slide"> 7437 <div class="review-card" data-reviewer-name="Romana MartÃnez MartÃnez"> 7438 <div class="review-header"> 7439 <div class="user-avatar"></div> 7440 <div class="rating"> 7441 <span class="star">â </span> 7442 <span class="rating-value">10 / 10</span> 7443 </div> 7444 </div>
7445 <span class="review-text"><p>Ha sido ideal volver a mi pueblo de nacimiento y comprobar su buen estado de conservación, cuidado y riqueza artÃstica; además, alojada junto con seres queridos en el Palacio, pues ha incrementado ostensiblemente esta vivencia.<br/><br/></p></span> 7446 <button class="read-more-btn" type="button"></button> 7447 <div class="review-footer"> 7448 <div class="reviewer-name">Romana MartÃnez MartÃnez</div> 7449 <div class="review-date">19/01/2026</div> 7450 </div> 7451 </div> 7452 </div> 7453 </div> 7454 <div class="swiper-pagination"></div> 7455 </div> 7456 7457 <div class="navigation-buttons-mobile"> 7458 <button class="nav-btn prev swiper-button-prev-custom-mobile"></button> 7459 <button class="nav-btn next swiper-button-next-custom-mobile"></button> 7460 </div> 7461 </div> 7462 7463 <!-- Modal --> 7464 <div class="modal-overlay" id="reviewModal"> 7465 <div class="modal-content"> 7466 <div class="modal-header"> 7467 <div class="modal-avatar" id="modalAvatar"></div> 7468 <div class="modal-user-info"> 7469 <div class="modal-name" id="modalName"></div> 7470 <div class="modal-date" id="modalDate"></div> 7471 </div> 7472 <button class="modal-close" id="modalClose"></button> 7473 </div> 7474 <div class="modal-body"> 7475 <div class="modal-rating" id="modalRating"></div> 7476 <div class="modal-text" id="modalText"></div> 7477 </div> 7478 </div> 7479 </div> 7480 7481 7482</section> 7483 7484<style> 7485 @import url('https://fonts.googleapis.com/css2?family=Stack+Sans+Headline:[email protected]&display=swap&text="%27'); 7486 /* fuentes */ 7487 /* TÃtulos */ 7488 .reviews-section .reviews-title {font-family: var(--font-title)} 7489 /* SubtÃtulos */ 7490 .reviews-section .reviews-subtitle {font-family: var(--font-subtitle)} 7491 /* Cuerpo de texto, botones y enlaces */ 7492 .reviews-section .reviewer-name, 7493 .reviews-section .review-text, 7494 .reviews-section .review-date, 7495 .reviews-section .read-more-btn, 7496 .reviews-section .rating-value, 7497 .reviews-section .modal-name, 7498 .reviews-section .modal-date, 7499 .reviews-section .modal-text {font-family: var(--font-body)} 7500 7501 /* Estilos base */ 7502 .reviews-section * {margin: 0;padding: 0;box-sizing: border-box;} 7503 .reviews-section {--backgroundColor: var(--color-background); background-color: var(--backgroundColor);} 7504 .reviews-section:not(.version-3) .swiper-pagination {display: none;} 7505 .reviews-section .reviews-container {max-width: 1300px;margin: 0 auto;padding: 40px 20px;position: relative;border-radius: 8px;} 7506 .reviews-section #reviewsWrapper {display: flex;flex-wrap: nowrap;} 7507 .reviews-section #reviewsWrapper .swiper-slide {flex-shrink: 0;height: 100%;position: relative;} 7508 .reviews-section .reviews-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 30px;padding: 0 40px;} 7509 .reviews-section .reviews-title {font-size: 28px;font-weight: 700;color: var(--color-text);} 7510 .reviews-section .navigation-buttons {display: flex;gap: 10px;} 7511 .reviews-section .navigation-buttons-mobile {display: none;} 7512 .reviews-section .nav-btn {width: 40px;height: 40px;border: 1px solid color-mix(var(--color-text), black 10%);background-color: var(--color-cards);border-radius: var(--radius-buttons);display: flex;align-items: center;justify-content: center;cursor: pointer;transition: all 0.3s;} 7513 .reviews-section .nav-btn:hover {background-color: color-mix(var(--color-cards), black 5%);border-color: color-mix(var(--color-text), black 5%);} 7514 .reviews-section .nav-btn::before {content: '';width: 8px;height: 8px;border-top: 2px solid var(--color-text);border-right: 2px solid var(--color-text);} 7515 .reviews-section .nav-btn.prev::before {transform: rotate(-135deg);margin-left: 3px;} 7516 .reviews-section .nav-btn.next::before {transform: rotate(45deg);margin-right: 3px;} 7517 .reviews-section .swiper {width: 100%;padding: 0 40px 20px 40px;overflow: hidden;position: relative;} 7518 .reviews-section .swiper::before {content: "";position: absolute;inset: 0;pointer-events: none;z-index: 10;background: linear-gradient(to right, var(--backgroundColor) 0%, transparent 4%, transparent 96%, var(--backgroundColor) 100%);} 7519 7520 .reviews-section .review-card {background-color: var(--color-cards);border: 1px solid color-mix(var(--color-cards) , black 10%);border-radius: var(--radius-elements);padding: 25px;height: 300px;display: flex;flex-direction: column;position: relative;overflow: hidden;transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1);} 7521 .reviews-section .review-card.expanded {height: auto;} 7522 .reviews-section .review-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 20px;} 7523 .reviews-section .user-avatar {width: 50px;height: 50px;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-size: 20px;font-weight: 600;color: white;} 7524 .reviews-section .rating {display: flex;align-items: center;gap: 10px;font-weight: 600;color: var(--color-text);font-size: 19px;} 7525 .reviews-section .star {color: #E0D46B;font-size: 22px;} 7526 .reviews-section .review-text {color: var(--color-text);line-height: 1.6;flex-grow: 0;font-size: 15px;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 4;-webkit-box-orient: vertical;transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);word-break: break-word;height: 100%;} 7527 .reviews-section .review-card.expanded .review-text {-webkit-line-clamp: 3;display: -webkit-box;overflow: hidden;} 7528 .reviews-section .read-more-btn {background: none;border: none;color: var(--color-principal);font-size: 13px;font-weight: 600;cursor: pointer;text-align: left;transition: color 0.3s;align-self: flex-start;display: inline-block;position: relative;padding-block: 5px;margin-bottom: 20px;} 7529 .reviews-section .read-more-btn:hover {color: color-mix(var(--color-principal), black 5%);text-decoration: underline;} 7530 .reviews-section .review-footer {display: flex;flex-direction: column;gap: 2px;margin-top: auto; color: var(--color-text)} 7531 .reviews-section .reviewer-name {font-weight: 600;font-size: 14px;text-transform: uppercase;letter-spacing: 0.5px;} 7532 .reviews-section .review-date {font-size: 13px;} 7533 7534 @media (max-width: 800px) { 7535 .reviews-section .reviews-container {padding: 30px 15px;display: flex;flex-direction: column;} 7536 .reviews-section .reviews-header {flex-direction: row;justify-content: center;align-items: center;gap: 0;padding: 0 10px;order: 1;} 7537 .reviews-section .navigation-buttons {display: none;} 7538 .reviews-section .reviews-title {font-size: 22px;} 7539 .reviews-section .swiper {padding: 0 40px 20px 40px;order: 2;} 7540 .reviews-section .review-card {padding: 20px;height: 290px;} 7541 .reviews-section .navigation-buttons-mobile {display: flex;gap: 10px;justify-content: center;margin-top: 20px;order: 3;} 7542 } 7543 7544 /* font-white */ 7545 .reviews-section.font-white {background-color: var(--backgroundColor);} 7546 .reviews-section.font-white .reviews-container {background-color: transparent;} 7547 .reviews-section.font-white .reviews-title {color: white;} 7548 .reviews-section.font-white .nav-btn {background-color: transparent;border-color: rgba(255, 255, 255, 0.3);} 7549 .reviews-section.font-white .nav-btn:hover {background-color: rgba(255, 255, 255, 0.1);border-color: rgba(255, 255, 255, 0.6);} 7550 .reviews-section.font-white .nav-btn::before {border-top-color: white;border-right-color: white;} 7551 .reviews-section.font-white .review-card {background-color: rgba(255, 255, 255, 0.05);border-color: rgba(255, 255, 255, 0.1);} 7552 .reviews-section.font-white .rating {color: white;} 7553 .reviews-section.font-white .review-text {color: white;} 7554 .reviews-section.font-white .reviewer-name {color: white;} 7555 .reviews-section.font-white .review-date {color: rgba(255, 255, 255, 0.7);} 7556 7557 /* Modal */ 7558 .reviews-section .modal-overlay {position: fixed;top: 0;left: 0;right: 0;bottom: 0;background-color: rgba(0, 0, 0, 0.6);display: flex;align-items: center;justify-content: center;z-index: 1000;opacity: 0;visibility: hidden;transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.3s;backdrop-filter: blur(4px);padding: 20px;} 7559 .reviews-section .modal-overlay.active {opacity: 1;visibility: visible;} 7560 .reviews-section .modal-content {background: white;border-radius: 16px;max-width: 600px;width: 100%;max-height: 90vh;overflow-y: auto;overflow-x: hidden;position: relative;transform: scale(0.9) translateY(20px);transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);}
7561 .reviews-section .modal-overlay.active .modal-content {transform: scale(1) translateY(0);} 7562 /* Scroll Modal */ 7563 .reviews-section .modal-content::-webkit-scrollbar {width: 3px;} 7564 .reviews-section .modal-content::-webkit-scrollbar-button {display: none;} 7565 .reviews-section .modal-content::-webkit-scrollbar-track {background: transparent;margin-top: 12px;margin-bottom: 12px;background-color: #0000001a;} 7566 .reviews-section .modal-content::-webkit-scrollbar-thumb {background: #888;border-radius: 8px;} 7567 .reviews-section .modal-header {padding: 30px 30px 20px 30px;border-bottom: 1px solid #f0f0f0;display: flex;align-items: center;gap: 15px;position: sticky;top: 0;background-color: #fff;} 7568 .reviews-section .modal-avatar {width: 60px;height: 60px;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-size: 24px;font-weight: 600;color: white;flex-shrink: 0;} 7569 .reviews-section .modal-user-info {flex-grow: 1;} 7570 .reviews-section .modal-name {font-size: 16px;font-weight: 700;color: #000;text-transform: uppercase;letter-spacing: 0.5px;margin-bottom: 4px;} 7571 .reviews-section .modal-date {font-size: 14px;color: #666;} 7572 .reviews-section .modal-close {width: 36px;height: 36px;border: none;background: #f3f3f3;border-radius: 50%;cursor: pointer;display: flex;align-items: center;justify-content: center;transition: all 0.2s;flex-shrink: 0;}
7573 .reviews-section .modal-close:hover {background: #e0e0e0;transform: rotate(90deg);} 7574 .reviews-section .modal-close::before, .reviews-section .modal-close::after {content: '';position: absolute;width: 16px;height: 2px;background: #666;} 7575 .reviews-section .modal-close::before {transform: rotate(45deg);} 7576 .reviews-section .modal-close::after {transform: rotate(-45deg);} 7577 .reviews-section .modal-body {padding: 30px;} 7578 .reviews-section .modal-rating {display: flex;align-items: center;gap: 8px;font-size: 24px;font-weight: 700;color: #000;margin-bottom: 20px;} 7579 .reviews-section .modal-rating .star {color: #E0D46B;font-size: 24px;} 7580 .reviews-section .modal-text {font-size: 16px;line-height: 1.8;color: #333;white-space: pre-wrap;overflow-wrap: break-word;word-break: break-word;hyphens: auto;} 7581 7582 @media (max-width: 800px) { 7583 .reviews-section .modal-content {max-height: 85vh;border-radius: 12px;} 7584 .reviews-section .modal-header {padding: 20px 20px 15px 20px;} 7585 .reviews-section .modal-avatar {width: 50px;height: 50px;font-size: 20px;} 7586 .reviews-section .modal-body {padding: 20px;} 7587 .reviews-section .modal-rating {font-size: 20px;} 7588 .reviews-section .modal-text {font-size: 15px;} 7589 } 7590 7591 /* Modal font-white */
7592 .reviews-section.font-white .modal-overlay {background-color: rgba(0, 0, 0, 0.8);} 7593 .reviews-section.font-white .modal-content {background: #1a1a1a;box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8);} 7594 .reviews-section.font-white .modal-header {border-bottom-color: rgba(255, 255, 255, 0.1);} 7595 .reviews-section.font-white .modal-name {color: white;} 7596 .reviews-section.font-white .modal-date {color: rgba(255, 255, 255, 0.7);} 7597 .reviews-section.font-white .modal-close {background: rgba(255, 255, 255, 0.1);} 7598 .reviews-section.font-white .modal-close:hover {background: rgba(255, 255, 255, 0.2);} 7599 .reviews-section.font-white .modal-close::before, .reviews-section.font-white .modal-close::after {background: white;} 7600 .reviews-section.font-white .modal-rating {color: white;} 7601 .reviews-section.font-white .modal-text {color: rgba(255, 255, 255, 0.9);} 7602 7603 /* Version-2 */ 7604 .reviews-section.version-2 .reviews-container {padding: 60px 100px;position: relative;max-width: 1360px;} 7605 .reviews-section.version-2 .reviews-header {flex-direction: column;align-items: center;text-align: center;gap: 5px;margin-bottom: 40px;} 7606 .reviews-section.version-2 .reviews-title {font-size: 32px;font-weight: 400;} 7607 .reviews-section.version-2 .reviews-subtitle {font-size: 32px;font-weight: 700;display: block;} 7608 .reviews-section.version-2 .review-text {-webkit-line-clamp: 3;} 7609 .reviews-section.version-2 .navigation-buttons, .reviews-section.version-3 .navigation-buttons {position: absolute;width: 100%;left: 0;top: calc(50% + 15px);transform: translateY(-50%);flex-direction: row;justify-content: space-between;padding: 0 20px;pointer-events: none;} 7610 .reviews-section.version-2 .nav-btn, .reviews-section.version-3 .nav-btn {width: 50px;height: 50px;background-color: unset;box-shadow: unset;border: none;pointer-events: all;} 7611 .reviews-section.version-2 .nav-btn.prev::before, .reviews-section.version-3 .nav-btn.prev::before {transform: rotate(-135deg);margin-left: 3px;} 7612 .reviews-section.version-2 .nav-btn.next::before, .reviews-section.version-3 .nav-btn.next::before {transform: rotate(45deg);margin-right: 3px;} 7613 .reviews-section.version-2 .swiper {position: relative;} 7614 .reviews-section.version-2 .review-card {background-color: var(--color-cards);border: noneuser-avatar;box-shadow: 0 4px 12px var(--color-shadow-box);padding: 30px;border-radius: var(--radius-elements);margin-bottom: 60px;height: 180px;justify-content: space-between;gap: 20px;overflow: visible;} 7615 .reviews-section.version-2 .read-more-btn {position: absolute;bottom: 30px;right: 30px;order: unset;padding-block: unset;margin-bottom: unset;} 7616 .reviews-section.version-2 .review-card.expanded {height: auto;} 7617 .reviews-section.version-2 .review-header {flex-direction: column;align-items: flex-start;gap: 15px;margin-bottom: 0;order: 2;} 7618 .reviews-section.version-2 .user-avatar {position: absolute;bottom: -55px;left: 20px;width: 40px;height: 40px;font-size: 18px;} 7619 .reviews-section.version-2 .rating {order: 2;font-size: 19px;} 7620 .reviews-section.version-2 .review-footer {position: absolute;bottom: -55px;left: 75px;order: 3;margin-top: 0;padding-top: 0;gap: 2px;} 7621 .reviews-section.version-2 .reviewer-name {font-size: 14px;display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;overflow: hidden;} 7622 .reviews-section.version-2 .review-date {font-size: 14px;} 7623 7624 @media (max-width: 800px) { 7625 .reviews-section.version-2 .reviews-container {padding: 40px 20px;} 7626 .reviews-section.version-2 .reviews-header {order: 1;margin-bottom: 30px;} 7627 .reviews-section.version-2 .reviews-title {font-size: 24px;} 7628 .reviews-section.version-2 .reviews-subtitle {font-size: 24px;} 7629 .reviews-section.version-2 .navigation-buttons {display: none;} 7630 .reviews-section.version-2 .swiper {padding: 0 40px;} 7631 .reviews-section.version-2 .review-card {margin-bottom: 70px;} 7632 .reviews-section.version-2 .user-avatar {left: 25px;bottom: -55px;width: 40px;height: 40px;font-size: 16px;} 7633 .reviews-section.version-2 .review-footer {left: 75px;bottom: -55px;} 7634 .reviews-section.version-2 .navigation-buttons-mobile {display: none;} 7635 } 7636 7637 /* Version-2 font-white */
7638 .reviews-section.font-white.version-2 .reviews-container {background-color: transparent;} 7639 .reviews-section.font-white.version-2 .nav-btn {background-color: rgba(255, 255, 255, 0.1);border-color: rgba(255, 255, 255, 0.2);} 7640 .reviews-section.font-white.version-2 .review-card {background-color: rgba(255, 255, 255, 0.05);box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);} 7641 7642 /* Version-3 */ 7643 .reviews-section.version-3 .reviews-container {background-color: var(--backgroundColor);padding: 60px 100px;} 7644 .reviews-section.version-3 .reviews-header {flex-direction: column;align-items: flex-start;text-align: left;margin-bottom: 50px;padding: 0 40px;} 7645 .reviews-section.version-3 .reviews-title {font-size: 36px;font-weight: 700;line-height: 1.2;margin: 0 auto;} 7646 .reviews-section.version-3 .reviews-subtitle {display: none;} 7647 .reviews-section.version-3 .swiper {padding: 0 40px 60px 40px;} 7648 .reviews-section.version-3 .review-card {background-color: var(--color-cards);border: none;box-shadow: 0 2px 16px var(--color-shadow-box);padding: 30px 30px 90px 30px;border-radius: var(--radius-elements);position: relative;height: 325px;} 7649 .reviews-section.version-3 .review-card.expanded {height: auto;} 7650 .reviews-section.version-3 .review-card::before {content: '"';position: absolute;top: 85px;right: 25px;font-size: 195px;color: color-mix(var(--color-text), transparent 80%);line-height: 0.25;height: fit-content;} 7651 .reviews-section.version-3 .review-header {flex-direction: column;align-items: flex-start;gap: 15px;margin-bottom: 20px;} 7652 .reviews-section.version-3 .user-avatar {position: absolute;bottom: 24px;left: 30px;width: 45px;height: 45px;font-size: 18px;line-height: 1;} 7653 .reviews-section.version-3 .rating {order: 1;font-size: 22px;font-weight: 700;} 7654 .reviews-section.version-3 .review-text {order: 2;margin-bottom: 0;font-size: 16px;line-height: 1.6;height: 100%;font-weight: 500;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 5;-webkit-box-orient: vertical;word-break: break-word;} 7655 .reviews-section.version-3 .review-card:has(.read-more-btn.hide-modal-button) .review-text {-webkit-line-clamp: 6;} 7656 .reviews-section.version-3 .review-text::before {content: "";position: absolute;top: 245px;left: 0;right: 0;margin-inline: 25px;height: 1px;background-color: color-mix(var(--color-text), transparent 80%)} 7657 .reviews-section.version-3 .review-card.expanded .review-text {-webkit-line-clamp: 2;display: -webkit-box;overflow: hidden;} 7658 .reviews-section.version-3 .read-more-btn {order: 2;margin-bottom: unset;} 7659 .reviews-section.version-3 .rating {order: 1;} 7660 .reviews-section.version-3 .review-footer {position: absolute;bottom: 30px;left: 85px;gap: 3px;} 7661 .reviews-section.version-3 .reviewer-name {font-size: 13px;font-weight: 700;display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;overflow: hidden;} 7662 .reviews-section.version-3 .review-date {font-size: 13px;font-weight: 400;} 7663 .reviews-section.version-3 .swiper-pagination {display: block;bottom: 10px;position: absolute;text-align: center;transition: .3s opacity;transform: translate3d(0, 0, 0);z-index: 10;width: 100%;left: 0;} 7664 .reviews-section.version-3 .swiper-pagination-bullet {width: 50px;height: 2px;border-radius: 2px;background-color: #d0d0d0;opacity: 1;transition: all 0.3s;display: inline-block;margin: 0 4px !important;} 7665 .reviews-section.version-3 .swiper-pagination-bullet-active {background-color: var(--color-text);} 7666 7667 @media (max-width: 800px) { 7668 .reviews-section.version-3 .reviews-container {padding: 40px 20px;} 7669 .reviews-section.version-3 .reviews-header {margin-bottom: 35px;padding: 0 10px;} 7670 .reviews-section.version-3 .reviews-title {font-size: 28px;} 7671 .reviews-section.version-3 .swiper {padding: 0 40px 60px 40px;} 7672 .reviews-section.version-3 .review-card {padding: 30px 25px 85px 25px;height: 315px;} 7673 .reviews-section.version-3 .user-avatar {bottom: 25px;left: 25px;width: 40px;height: 40px;font-size: 16px;} 7674 .reviews-section.version-3 .review-footer {bottom: 25px;left: 75px;} 7675 .reviews-section.version-3 .rating {font-size: 20px;} 7676 .reviews-section.version-3 .review-text {font-size: 15px;} 7677 .reviews-section.version-3 .navigation-buttons-mobile {display: none;} 7678 .reviews-section.version-3 .review-text::before {top: 235px;} 7679 .reviews-section.version-3 .swiper-pagination {display: flex;justify-content: space-between;padding: 0;max-width: 40%;left: 50%; transform: translateX(-50%);} 7680 .reviews-section.version-3 .swiper-pagination-bullet {flex: 1;margin: 0 !important;border-radius: 0;width: unset;} 7681 } 7682 7683 @media (max-width: 400px) { 7684 .reviews-section.version-3 .review-card::before {font-size: 180px;top: 80px;} 7685 } 7686 7687 .reviews-section .hide-modal-button {color: transparent !important;pointer-events: none;} 7688 7689 /* Version-3 font-white */
7690 .reviews-section.font-white.version-3 .reviews-container {background-color: transparent;} 7691 .reviews-section.font-white.version-3 .review-card {background-color: rgba(255, 255, 255, 0.05);box-shadow: 0 2px 16px rgba(255, 255, 255, 0.08)} 7692 .reviews-section.font-white.version-3 .review-card::before {color: rgba(255, 255, 255, 0.3);} 7693 .reviews-section.font-white.version-3 .swiper-pagination-bullet {background-color: rgba(255, 255, 255, 0.3);} 7694 .reviews-section.font-white.version-3 .swiper-pagination-bullet-active {background-color: white;} 7695 .reviews-section.font-white .read-more-btn {color: #fff;text-decoration: underline;} 7696 .reviews-section.font-white.version-3 .swiper-pagination-bullet-active {background-color: #fff;} 7697 7698 /* Background-color */ 7699 .reviews-section.background-color {--backgroundColor: ;} 7700 .reviews-section.background-color .swiper:before {background: linear-gradient(to right, var(--backgroundColor) 0%, transparent 4%, transparent 96%, var(--backgroundColor) 100%);} 7701 .reviews-section.background-color .review-card, .reviews-section.background-color:not(.version-3):not(.version-2) .nav-btn {background-color: color-mix(in srgb, var(--backgroundColor) 80%, white 20%) !important;} 7702 .reviews-section.background-color #reviewModal .modal-header, .reviews-section.background-color #reviewModal .modal-body {background-color: color-mix(in srgb, var(--backgroundColor) 80%, white 20%);} 7703 7704 /* Clase no star review */ 7705 .reviews-section.no-star .rating {display: none;} 7706 .reviews-section.no-star #reviewModal #modalRating {display: none;} 7707 .reviews-section.no-star.version-3 .review-header, .reviews-section.no-star.version-2 .review-header {min-height: 30px;} 7708</style> 7709
7710<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/11.0.5/swiper-bundle.min.js"></script>
vendor: 2 bytes, line 7710
7710
7711<script> 7712 // Colores pastel para los avatares 7713 const userColors = [ 7714 '#AA47BD', '#7B1FA2', '#77919D', '#455A65', 7715 '#EC417A', '#C1175C', '#5D6AC0', '#0388D2', 7716 '#00579B', '#0098A7', '#00897B', '#004D40' 7717 ]; 7718 7719 // Función para obtener la inicial del nombre 7720 function getInitial(name) { 7721 console.log(name) 7722 return name.charAt(0).toUpperCase(); 7723 } 7724 7725 // Función para obtener un color basado en el nombre 7726 function getColorForName(name) { 7727 let hash = 0; 7728 for (let i = 0; i < name.length; i++) { 7729 hash = name.charCodeAt(i) + ((hash << 5) - hash); 7730 } 7731 return userColors[Math.abs(hash) % userColors.length]; 7732 } 7733 7734 // Inicializar avatares con colores e iniciales 7735 function initializeAvatars() { 7736 const reviewCards = document.querySelectorAll('.review-card'); 7737 7738 reviewCards.forEach(card => { 7739 const name = card.dataset.reviewerName; 7740 const avatar = card.querySelector('.user-avatar'); 7741 const initial = getInitial(name); 7742 const bgColor = getColorForName(name); 7743 7744 avatar.textContent = initial; 7745 avatar.style.backgroundColor = bgColor; 7746 }); 7747 } 7748 7749 // Función para detectar si el texto está truncado 7750 function checkTextOverflow() { 7751 const reviewTexts = document.querySelectorAll('.review-text'); 7752 7753 reviewTexts.forEach((textElement) => { 7754 const card = textElement.closest('.review-card'); 7755 const readMoreBtn = card.querySelector('.read-more-btn'); 7756 7757 if (textElement.scrollHeight > textElement.clientHeight) { 7758 readMoreBtn.classList.remove('hide-modal-button'); 7759 } else { 7760 readMoreBtn.classList.add('hide-modal-button'); 7761 } 7762 }); 7763 } 7764 7765 7766 // Manejar click en "Ver más" 7767 function initializeModal() { 7768 const readMoreButtons = document.querySelectorAll('.read-more-btn'); 7769 const modal = document.getElementById('reviewModal'); 7770 const modalClose = document.getElementById('modalClose'); 7771 const modalAvatar = document.getElementById('modalAvatar'); 7772 const modalName = document.getElementById('modalName'); 7773 const modalDate = document.getElementById('modalDate'); 7774 const modalRating = document.getElementById('modalRating'); 7775 const modalText = document.getElementById('modalText'); 7776 7777 readMoreButtons.forEach((btn) => { 7778 btn.addEventListener('click', function(e) { 7779 e.preventDefault(); 7780 e.stopPropagation(); 7781 7782 const card = this.closest('.review-card'); 7783 const name = card.querySelector('.reviewer-name').textContent; 7784 const date = card.querySelector('.review-date').textContent; 7785 const rating = card.querySelector('.rating-value').textContent; 7786 const text = card.querySelector('.review-text').textContent; 7787 7788 const initial = getInitial(name); 7789 const bgColor = getColorForName(name); 7790 7791 // Actualizar contenido del modal 7792 modalAvatar.textContent = initial; 7793 modalAvatar.style.backgroundColor = bgColor; 7794 modalName.textContent = name; 7795 modalDate.textContent = date; 7796 modalRating.innerHTML = `<span class="star">â </span><span>${rating}</span>`; 7797 modalText.textContent = text; 7798 7799 // Mostrar modal 7800 modal.classList.add('active'); 7801 document.body.style.overflow = 'hidden'; 7802 }); 7803 }); 7804 7805 // Cerrar modal 7806 const closeModal = () => { 7807 modal.classList.remove('active'); 7808 document.body.style.overflow = ''; 7809 }; 7810 7811 modalClose.addEventListener('click', closeModal); 7812 7813 modal.addEventListener('click', (e) => { 7814 if (e.target === modal) { 7815 closeModal(); 7816 } 7817 }); 7818 7819 // Cerrar con ESC 7820 document.addEventListener('keydown', (e) => { 7821 if (e.key === 'Escape' && modal.classList.contains('active')) { 7822 closeModal(); 7823 } 7824 }); 7825 } 7826 7827 // Inicializar Swiper 7828 const swiper = new Swiper('.reviewsSwiper', { 7829 slidesPerView: 1, 7830 spaceBetween: 20, 7831 navigation: { 7832 nextEl: '.swiper-button-next-custom, .swiper-button-next-custom-mobile', 7833 prevEl: '.swiper-button-prev-custom, .swiper-button-prev-custom-mobile', 7834 }, 7835 pagination: { 7836 el: '.swiper-pagination', 7837 clickable: true, 7838 }, 7839 breakpoints: { 7840 1280: { 7841 slidesPerView: 3, 7842 spaceBetween: 20 7843 }, 7844 768: { 7845 slidesPerView: 2, 7846 spaceBetween: 20 7847 } 7848 }, 7849 on: { 7850 slideChange: function() { 7851 // Verificar overflow cuando cambia el slide 7852 setTimeout(checkTextOverflow, 100); 7853 } 7854 } 7855 });
7856 7857 // Inicializar todo cuando el DOM esté listo 7858 document.addEventListener('DOMContentLoaded', function() { 7859 initializeAvatars(); 7860 7861 setTimeout(() => { 7862 checkTextOverflow(); 7863 initializeModal(); 7864 }, 200); 7865 }); 7866 7867 // Verificar también cuando cambia el tamaño de la ventana 7868 window.addEventListener('resize', checkTextOverflow); 7869 7870 // Ejemplo para activar el modo font-white (descomentar para probar) 7871 // document.body.classList.add('font-white'); 7872 // document.documentElement.style.setProperty('--backgroundColor', '#1a1a1a'); 7873 7874 // Ejemplo para activar la version-2 (descomentar para probar) 7875 // document.body.classList.add('version-2'); 7876 7877 // Ejemplo para activar la version-3 (descomentar para probar) 7878 // document.body.classList.add('version-3'); 7879</script>
7879 7880
7881<script> 7882document.addEventListener("DOMContentLoaded", () => { 7883 const reviewCards = document.querySelectorAll(".review-card"); 7884 if (!reviewCards.length) return; 7885 7886 const reviews = []; 7887 let ratingSum = 0; 7888 7889 reviewCards.forEach(card => { 7890 const author = card.querySelector(".reviewer-name")?.textContent?.trim() || ""; 7891 const reviewBody = card.querySelector(".review-text")?.textContent?.trim() || ""; 7892 const datePublished = card.querySelector(".review-date")?.textContent?.trim() || ""; 7893 const ratingText = card.querySelector(".rating-value")?.textContent?.trim() || ""; 7894 const ratingValue = parseFloat(ratingText.split("/")[0]) || 0; 7895 7896 ratingSum += ratingValue; 7897 7898 reviews.push({ 7899 "@type": "Review", 7900 "author": { "@type": "Person", "name": author }, 7901 "reviewBody": reviewBody, 7902 "datePublished": datePublished, 7903 "reviewRating": { 7904 "@type": "Rating", 7905 "ratingValue": ratingValue, 7906 "bestRating": "10", 7907 "worstRating": "1" 7908 } 7909 }); 7910 }); 7911 7912 const mainEntity = { 7913 "@context": "https://schema.org", 7914 "@type": "Product", // Cambiar a "Service" o el tipo que corresponda si no es un producto 7915 "name": document.querySelector(".reviews-title")?.textContent?.trim() || "Opiniones", 7916 "review": reviews 7917 }; 7918 7919 if (reviews.length > 1) { 7920 mainEntity.aggregateRating = { 7921 "@type": "AggregateRating", 7922 "ratingValue": (ratingSum / reviews.length).toFixed(1), 7923 "reviewCount": reviews.length, 7924 "bestRating": "10", 7925 "worstRating": "1" 7926 }; 7927 } 7928 7929 const script = document.createElement("script"); 7930 script.type = "application/ld+json"; 7931 script.textContent = JSON.stringify(mainEntity, null, 2); 7932 document.head.appendChild(script); 7933}); 7934</script>
7934 7935 7936 <section class="map variant-2" data-map-config='{ 7937 "mainMarker": { 7938 "lat": "39.561326", 7939 "lng": "-2.702624" 7940 }, 7941 "markers": [ 7942 { 7943 "lat": "", 7944 "lng": "", 7945 "icon": "" 7946 }, 7947 { 7948 "lat": "", 7949 "lng": "", 7950 "icon": "" 7951 }, 7952 { 7953 "lat": "", 7954 "lng": "", 7955 "icon": "" 7956 }, 7957 { 7958 "lat": "", 7959 "lng": "", 7960 "icon": "" 7961 } 7962 ], 7963 "settings": { 7964 "zoom": "17", 7965 "zoomStatic": "", 7966 "styleIdMap": "" 7967 } 7968}' data-scroll=""> 7969 <div class="map-container" id="map-object"> 7970 <div class="map-container-label"> 7971 <div class="map-label-icon newicons-mapa"></div> 7972 <span class="map-label-text"></span> 7973 </div> 7974 </div> 7975 <div class="map-info-container"> 7976 <div class="map-info-header"> 7977 <h2 class="map-title">Palacio Del Infante Don Juan Manuel Hotel Spa</h2> 7978 <span class="map-stars">****</span> 7979 </div> 7980 <div class="map-info-body"> 7981 <div class="map-info-body-wrapper"> 7982 <div class="map-label">Dirección</div> 7983 <div class="map-info-text">C. Infante Don Juan Manuel, 2, </div> 7984 <div class="map-info-text">16640 Belmonte</div> 7985 <div class="map-info-text">Cuenca, España</div> 7986 <div class="map-info-text"></div> 7987 </div> 7988 <div class="map-info-body-wrapper"> 7989 <div class="map-label">Teléfono</div> 7990 <div class="map-info-text"><a href="tel:+34967170784" >+34 967 170 784</a></div> 7991 </div> 7992 <div class="map-info-body-wrapper"> 7993 <div class="map-label">Email</div> 7994 <div class="map-info-text"><a href="mailto:[email protected]" >[email protected]</a></div> 7995 </div> 7996 </div> 7997 <div class="map-info-footer"> 7998 <div class="map-label">SÃguenos</div> 7999 <div class="map-socials"> 8000 8001 <a href="https://www.instagram.com/infantedonjuanmanuel/" target="_blank" class="newicons-instagram map-social-btn"></a> 8002 8003 8004 <a href="https://www.facebook.com/PalacioInfanteDonJuanManuel" target="_blank" class="newicons-facebook map-social-btn"></a> 8005 8006 8007 8008 8009 8010 8011 8012 </div> 8013 </div> 8014 8015 </div> 8016</section> 8017 8018<style> 8019 @media (min-width: 1024px){ 8020 .map.left-box .map-info-container{left: 100px; right: 0 !important;} 8021 } 8022.map{ 8023 --textColor: var(--color-text); 8024 --background-color: var(--color-background); 8025 8026 display: flex; 8027 flex-direction: column; 8028 width: 100%; 8029 position: relative; 8030 background-color: var(--background-color); 8031 8032 &.background-color{ 8033 --background-color: ; 8034 } 8035 &.font-white{ 8036 --textColor: #ffffff; 8037 } 8038 &.hide-socials{ 8039 .map-info-footer{ 8040 display: none; 8041 } 8042 } 8043 @media (max-width: 1023px){ 8044 &.map-lg{ 8045 .map-container{ 8046 height: 850px; 8047 } 8048 } 8049 8050 &.map-sm{ 8051 .map-container{ 8052 height: 440px; 8053 } 8054 } 8055 } 8056 .map-container{ 8057 width: 100%; 8058 height: 570px; 8059 background-color: rgba(127, 255, 212, 0.137); 8060 position: relative; 8061 overflow: hidden; 8062 @media (min-width: 1024px){ 8063 height: 100vh; 8064 } 8065 .map-container-label{ 8066 display: flex; 8067 padding: 16px; 8068 background-color: var(--color-cards); 8069 position: absolute; 8070 z-index: 90; 8071 bottom: 0; 8072 left: 50%; 8073 transform: translate(-50%, 100px); 8074 transition: all 1s ease-in-out; 8075 opacity: 0; 8076 border-radius: var(--radius-elements); 8077 box-shadow: 0 0 32px 0 var(--color-shadow-box); 8078 gap: 8px; 8079 align-items: center; 8080 &.visible{ 8081 opacity: 1;
8082 transform: translate(-50%, -16px); 8083 } 8084 .map-label-text{ 8085 color: var(--textColor); 8086 font-family: var(--font-body); 8087 font-size: var(--font-size-base); 8088 } 8089 .map-label-icon{ 8090 font-size: 16px; 8091 color: var(--textColor); 8092 } 8093 } 8094 } 8095 .map-info-container{ 8096 gap: 24px; 8097 box-sizing: border-box; 8098 padding: 40px 25px;; 8099 display: flex; 8100 flex-direction: column; 8101 background-color: var(--background-color); 8102 z-index: 3; 8103 & :empty:not([class*="newicons-"]):not(br) { 8104 display: none; 8105 } 8106 @media (min-width: 1024px){ 8107 position: absolute; 8108 bottom: 56px; 8109 right: 100px; 8110 width: 450px; 8111 padding: 36px; 8112 justify-content: center; 8113 border-radius: var(--radius-elements); 8114 box-shadow: 0 0 32px 0 var(--color-shadow-box); 8115 8116 } 8117 } 8118 .map-info-header{ 8119 display: flex; 8120 flex-direction: column; 8121 &:after{ 8122 content: ""; 8123 display: block; 8124 width: 100%; 8125 height: 1px; 8126 background-color: var(--textColor); 8127 margin-top: 10px; 8128 } 8129 } 8130 .map-title, 8131 .map-stars{ 8132 font-size: var(--font-size-h2); 8133 font-weight: 700; 8134 margin: 0; 8135 font-family: var(--font-title); 8136 color: var(--textColor); 8137 margin-top: 8px; 8138 } 8139 .map-stars{ 8140 line-height: 28px; 8141 @media (min-width: 1024px){ 8142 line-height: 36px; 8143 } 8144 } 8145 .map-info-body{ 8146 display: flex; 8147 flex-direction: column; 8148 } 8149 .map-info-body-wrapper{ 8150 display: flex; 8151 flex-direction: column; 8152 &:nth-child(1) .map-label{ 8153 margin-top: 0px; 8154 } 8155 } 8156 .map-info-text{ 8157 color: var(--textColor); 8158 font-family: var(--font-body); 8159 font-size: var(--font-size-base); 8160 display:flex; 8161 flex-direction: column; 8162 } 8163 .map-label{ 8164 font-size: var(--font-size-h5); 8165 font-weight: 700; 8166 margin-top: 24px; 8167 margin-bottom: 8px; 8168 font-family: var(--font-title); 8169 color: var(--textColor); 8170 } 8171 .map-info-footer{ 8172 display: flex; 8173 flex-direction: column; 8174 gap: 16px; 8175 .map-label{ 8176 margin-top: 0; 8177 margin-bottom: 0; 8178 } 8179 } 8180 .map-socials{ 8181 display: flex; 8182 gap: 16px; 8183 font-size: 22px; 8184 } 8185 .map-social-btn{ 8186 color: var(--textColor); 8187 font-size: 22px; 8188 text-decoration: none; 8189 transition: color 0.3s ease; 8190 &:hover{ 8191 color: var(--color-principal); 8192 } 8193 } 8194 8195 &.variant-2{ 8196 box-sizing: border-box; 8197 8198 @media (min-width: 1024px){ 8199 flex-direction: row; 8200 padding-right: 100px; 8201 gap: 84px; 8202 min-height: 600px; 8203 8204 } 8205 .map-container{ 8206 @media (min-width: 1024px){ 8207 height: auto; 8208 flex: 4; 8209 } 8210 } 8211 .map-info-container{ 8212 @media (min-width: 1024px){ 8213 box-shadow: none; 8214 position:relative; 8215 bottom: 0; 8216 right: 0; 8217 padding: 0; 8218 padding-block: 70px; 8219 } 8220 } 8221 .map-info-header{ 8222 &:after{ 8223 display: none; 8224 } 8225 } 8226 .map-info-body-wrapper:not(:first-child):has(.map-label:not(:empty)){ 8227 &::before{ 8228 content: ""; 8229 display: block; 8230 width: 100%; 8231 height: 1px; 8232 background-color: var(--textColor); 8233 margin-top: 24px; 8234 } 8235 } 8236 .map-info-footer{ 8237 &::before{ 8238 content: ""; 8239 display: block; 8240 width: 100%; 8241 height: 1px; 8242 background-color: var(--textColor); 8243 } 8244 } 8245 .map-info-footer .map-label{ 8246 margin-top: 8px; 8247 } 8248 &.invert{ 8249 @media (min-width: 1024px){ 8250 padding-right: 0px; 8251 padding-left: 100px 8252 } 8253 .map-info-container{ 8254 order:1; 8255 } 8256 .map-container{ 8257 order:2; 8258 } 8259 } 8260 } 8261 &.variant-3{ 8262 .map-info-container{ 8263 order:1; 8264 } 8265 .map-container{ 8266 order:2; 8267 } 8268 &.invert{ 8269 .map-info-container{ 8270 order:2; 8271 } 8272 .map-container{ 8273 order:1; 8274 } 8275 } 8276 @media (min-width: 1024px){ 8277 flex-direction: column; 8278 gap: 36px; 8279 min-height: 600px; 8280 padding-top: 70px; 8281 &:before, &:after{ 8282 content: ""; 8283 display: block; 8284 width: 100%; 8285 height: 1px; 8286 background-color: var(--textColor); 8287 width: calc(100% - 200px); 8288 transform: translateX(100px); 8289 } 8290 &:before{ 8291 order: 2; 8292 margin-bottom: 20px; 8293 } 8294 .map-container{ 8295 order: 2; 8296 } 8297 .map-info-header{ 8298 display: none; 8299 } 8300 .map-info-container{ 8301 box-shadow: none; 8302 position:relative; 8303 flex-direction: row; 8304 width: 100%; 8305 justify-content: space-between; 8306 bottom: 0; 8307 right: 0; 8308 padding: 0px 100px 0px 100px; 8309 order: 1; 8310 } 8311 .map-info-body{ 8312 flex-direction: row; 8313 gap: 80px; 8314 8315 } 8316 .map-label{ 8317 margin-top: 0;
8318 } 8319 &.invert{ 8320 padding-top: 0; 8321 padding-bottom: 70px; 8322 &:after{ 8323 order: 3; 8324 } 8325 .map-info-container{ 8326 order:2; 8327 } 8328 .map-container{ 8329 order:1; 8330 } 8331 8332 } 8333 } 8334 @media (max-width: 1023px){ 8335 .map-info-body-wrapper:not(:first-child):has(.map-label:not(:empty)), 8336 .map-info-footer{ 8337 &::before{ 8338 content: ""; 8339 display: block; 8340 width: 100%; 8341 height: 1px; 8342 background-color: var(--textColor); 8343 margin-top: 24px; 8344 } 8345 } 8346 } 8347 } 8348} 8349</style> 8350
8351<script> 8352const MAP_CONFIG = { 8353 GOOGLE_MAPS_API_KEY: 'AIzaSyBIGzkPZFZopcTj0yjaTwhNJUv7tISJI0U', 8354 8355 // Default Values 8356 defaults: { 8357 zoom: 16, 8358 zoomStatic: 16, 8359 styleIdStatic: 'c288ed2ef43f3efd2386286c', 8360 styleIdMap: 'c288ed2ef43f3efd2386286c', 8361 markerIcon: '/templates/cadenas/air/images/hotels/HTL00310/map-marker.svg' 8362 }, 8363 8364 // DOM Selectors 8365 selectors: { 8366 mapContainer: '.map', 8367 mapObject: '#map-object' 8368 }, 8369 8370 // Google Maps Options 8371 mapOptions: { 8372 mapTypeControl: false, 8373 scaleControl: false, 8374 fullscreenControl: false, 8375 clickableIcons: false, 8376 streetViewControl: false, 8377 disableDefaultUI: false, 8378 gestureHandling: 'cooperative', 8379 scrollwheel: false 8380 }, 8381 hintLabels: { 8382 "en": { 8383 "desk": "View interactive map", 8384 "mobile": "Tap to view interactive map" 8385 }, 8386 "it": { 8387 "desk": "Visualizza mappa interattiva", 8388 "mobile": "Tocca per vedere la mappa" 8389 }, 8390 "de": { 8391 "desk": "Interaktive Karte anzeigen", 8392 "mobile": "Tippen für Karte" 8393 }, 8394 "ru": { 8395 "desk": "ÐÑкÑÑÑÑ ÐºÐ°ÑÑÑ", 8396 "mobile": "ÐажмиÑе, ÑÑÐ¾Ð±Ñ Ð¾ÑкÑÑÑÑ ÐºÐ°ÑÑÑ" 8397 }, 8398 "ca": { 8399 "desk": "Veure mapa interactiu", 8400 "mobile": "Toca per veure el mapa interactiu" 8401 }, 8402 "ar": { 8403 "desk": "عرض Ø§ÙØ®Ø±Ùطة", 8404 "mobile": "اضغط ÙØ¹Ø±Ø¶ Ø§ÙØ®Ø±Ùطة" 8405 }, 8406 "es": { 8407 "desk": "Ver mapa interactivo", 8408 "mobile": "Toca para ver mapa interactivo" 8409 }, 8410 "pt": { 8411 "desk": "Ver mapa interativo", 8412 "mobile": "Toque para ver o mapa interativo" 8413 }, 8414 "fr": { 8415 "desk": "Voir la carte interactive", 8416 "mobile": "Touchez pour voir la carte interactive" 8417 } 8418 } 8419}; 8420 8421function getMapLanguage() { 8422 const lang = (document.documentElement.lang || 'en').toLowerCase().split('-')[0]; 8423 return MAP_CONFIG.hintLabels[lang] ? lang : 'en'; 8424} 8425 8426function getMapHintLabel(device) { 8427 const lang = getMapLanguage(); 8428 return MAP_CONFIG.hintLabels[lang][device] || MAP_CONFIG.hintLabels.en[device]; 8429} 8430 8431async function loadGoogleMaps() { 8432 try { 8433 return new Promise((resolve, reject) => { 8434 const script = document.createElement("script"); 8435 script.src = 'https://maps.googleapis.com/maps/api/js?key=' + MAP_CONFIG.GOOGLE_MAPS_API_KEY + '&v=weekly'; 8436 script.async = true; 8437 script.defer = true; 8438 8439 script.onload = () => { 8440 if (window.google && window.google.maps) { 8441 resolve(window.google.maps); 8442 } else { 8443 reject(new Error("Google Maps no se cargó correctamente")); 8444 } 8445 }; 8446 script.onerror = (err) => reject(err); 8447 8448 document.head.appendChild(script); 8449 }); 8450 } catch (error) { 8451 console.error('Error cargando scripts del mapa:', error); 8452 return false; 8453 } 8454} 8455 8456///////////////////////////////////////////////// 8457///////////////// MAP RENDER //////////////////// 8458///////////////////////////////////////////////// 8459 8460async function createMarker(config) { 8461 const { map, lat, lng, iconUrl, AdvancedMarkerElement } = config; 8462 8463 const img = document.createElement('img'); 8464 img.src = iconUrl; 8465 img.style.width = '50px'; 8466 img.style.height = '50px'; 8467 8468 const marker = new AdvancedMarkerElement({ 8469 position: { lat, lng }, 8470 map: map, 8471 content: img 8472 }); 8473 8474 return marker; 8475} 8476 8477async function renderMarkers(map, config) { 8478 const { AdvancedMarkerElement } = await google.maps.importLibrary("marker"); 8479 const markers = []; 8480 8481 // Create main marker 8482 if (config.lat && config.lng) { 8483 const mainMarker = await createMarker({ 8484 map, 8485 lat: config.lat, 8486 lng: config.lng, 8487 iconUrl: MAP_CONFIG.defaults.markerIcon, 8488 AdvancedMarkerElement 8489 }); 8490 markers.push(mainMarker); 8491 } 8492 8493 // Create additional markers. If no custom icon was chosen for this one, 8494 // fall back to the same icon as the main marker instead of skipping it. 8495 if (config.markers && config.markers.length > 0) { 8496 for (const markerData of config.markers) { 8497 if (markerData.lat && markerData.lng) { 8498 const marker = await createMarker({ 8499 map, 8500 lat: parseFloat(markerData.lat), 8501 lng: parseFloat(markerData.lng), 8502 iconUrl: markerData.icon || MAP_CONFIG.defaults.markerIcon, 8503 AdvancedMarkerElement 8504 }); 8505 markers.push(marker); 8506 } 8507 } 8508 } 8509 8510 return markers; 8511} 8512 8513function getMapConfig(element) { 8514 try { 8515 const dataConfig = JSON.parse(element.dataset.mapConfig); 8516 if (!dataConfig || dataConfig === 'none') return null; 8517 8518 const { markers = [], settings = {} } = dataConfig; 8519 8520 // Merge settings with defaults 8521 const mergedSettings = { 8522 zoom: parseInt(settings.zoom) || MAP_CONFIG.defaults.zoom, 8523 zoomStatic: parseInt(settings.zoomStatic) || MAP_CONFIG.defaults.zoomStatic, 8524 styleIdStatic: settings.styleIdStatic || MAP_CONFIG.defaults.styleIdStatic, 8525 styleIdMap: settings.styleIdMap || MAP_CONFIG.defaults.styleIdMap, 8526 staticImage: settings.staticImage || null 8527 }; 8528 8529 // unified config object 8530 return { 8531 lat: parseFloat(dataConfig.mainMarker.lat), 8532 lng: parseFloat(dataConfig.mainMarker.lng), 8533 markers: markers.filter(m => m.lat && m.lng), 8534 settings: mergedSettings 8535 }; 8536 } catch (error) { 8537 console.error('Error parseando configuración del mapa:', error); 8538 return null; 8539 } 8540} 8541 8542async function renderMap(mapElement, config) { 8543 8544 const mapDiv = document.querySelector(MAP_CONFIG.selectors.mapObject); 8545 8546 const map = new google.maps.Map(mapDiv, { 8547 8548 center: { lat: config.lat, lng: config.lng }, 8549 8550 zoom: config.settings.zoom, 8551 mapId: config.settings.styleIdMap, 8552 8553 ...MAP_CONFIG.mapOptions, 8554 zoomControl: 'ontouchstart' in document.documentElement ? false : true 8555 }); 8556 8557 const markers = await renderMarkers(map, config); 8558 8559 // Add click handler to fade out ::after pseudo-element 8560 mapDiv.addEventListener('click', function handleMapClick() { 8561 mapDiv.classList.add('map-clicked'); 8562 // Remove listener after first click 8563 mapDiv.removeEventListener('click', handleMapClick); 8564 }, { once: true });
8565} 8566async function renderStaticMap(mapElement, config) { 8567 const mapDiv = document.querySelector(MAP_CONFIG.selectors.mapObject); 8568 const { lat, lng, settings } = config; 8569 const zoom = settings.zoomStatic || MAP_CONFIG.defaults.zoomStatic; 8570 const styleId = settings.styleIdStatic || MAP_CONFIG.defaults.styleIdStatic; 8571 8572 const width = mapDiv.offsetWidth * 2; 8573 const height = mapDiv.offsetHeight * 2; 8574 const size = width + 'x' + height; 8575 8576 const markerUrl = '/templates/cadenas/air/images/hotels/HTL00310/map-marker.svg'; 8577 8578 const staticUrl = 'https://maps.googleapis.com/maps/api/staticmap' 8579 + '?center=' + lat + ',' + lng 8580 + '&zoom=' + zoom 8581 + '&size=' + size 8582 + '&scale=2' 8583 + '&language=' + getMapLanguage() 8584 + '&map_id=' + styleId 8585 + '&key=' + MAP_CONFIG.GOOGLE_MAPS_API_KEY; 8586 8587 // Crear overlay 8588 const overlay = document.createElement('div'); 8589 overlay.style.cssText = [ 8590 'position: absolute', 8591 'inset: 0', 8592 'background-color: rgba(0,0,0,0)', 8593 'transition: background-color 0.3s ease', 8594 'cursor: pointer', 8595 'z-index: 1', 8596 'display: flex', 8597 'align-items: center', 8598 'justify-content: center' 8599 ].join(';'); 8600 8601 const rawHintText = { 8602 desk: "", 8603 mobile: "" 8604 }; 8605 8606 // Icono o texto de ayuda 8607 const hint = document.createElement('span'); 8608 hint.textContent = 8609 rawHintText?.desk === "" 8610 ? getMapHintLabel('desk') 8611 : rawHintText.desk; 8612 hint.style.cssText = [ 8613 'color: white', 8614 'font-family: var(--font-body)', 8615 'font-size: var(--font-size-base)', 8616 'opacity: 0', 8617 'transition: opacity 0.3s ease', 8618 'pointer-events: none', 8619 'text-align: center' 8620 ].join(';'); 8621 8622 overlay.appendChild(hint); 8623 8624 overlay.addEventListener('mouseenter', function () { 8625 overlay.style.backgroundColor = 'rgba(0,0,0,0.4)'; 8626 hint.style.opacity = '1'; 8627 }); 8628 8629 overlay.addEventListener('mouseleave', function () { 8630 overlay.style.backgroundColor = 'rgba(0,0,0,0)'; 8631 hint.style.opacity = '0'; 8632 }); 8633 8634 overlay.addEventListener('click', async function () { 8635 // Limpiar mapa estático 8636 mapDiv.style.backgroundImage = ''; 8637 overlay.remove(); 8638 8639 // Cargar mapa dinámico 8640 try { 8641 await loadGoogleMaps(); 8642 await renderMap(mapElement, config); 8643 } catch (err) { 8644 console.error('Error cargando el mapa dinámico:', err); 8645 } 8646 }); 8647 8648 const img = new Image(); 8649 img.onload = function () { 8650 mapDiv.style.position = 'relative'; 8651 mapDiv.style.backgroundImage = "url('" + markerUrl + "'), url('" + this.src + "')"; 8652 mapDiv.style.backgroundRepeat = 'no-repeat, no-repeat'; 8653 mapDiv.style.backgroundPosition = 'center center, center center'; 8654 mapDiv.style.backgroundSize = '50px 50px, cover'; 8655 mapDiv.appendChild(overlay); 8656 }; 8657 8658 img.onerror = function () { 8659 const fallbackSize = mapDiv.offsetWidth + 'x' + mapDiv.offsetHeight; 8660 const fallbackUrl = staticUrl.replace(size, fallbackSize); 8661 mapDiv.style.backgroundImage = "url('" + markerUrl + "'), url('" + fallbackUrl + "')"; 8662 mapDiv.style.backgroundRepeat = 'no-repeat, no-repeat'; 8663 mapDiv.style.backgroundPosition = 'center center, center center'; 8664 mapDiv.style.backgroundSize = '50px 50px, cover'; 8665 mapDiv.appendChild(overlay); 8666 }; 8667 8668 img.src = staticUrl; 8669} 8670///////////////////////////////////////////////// 8671/////////////////// INIT MAP //////////////////// 8672///////////////////////////////////////////////// 8673 8674function isInLoadRange(element, offset = 800) { 8675 const rect = element.getBoundingClientRect(); 8676 const windowHeight = window.innerHeight || document.documentElement.clientHeight; 8677 8678 return ( 8679 rect.top <= windowHeight + offset && 8680 rect.bottom >= -offset 8681 ); 8682} 8683 8684/** 8685 * Init map when scrolled into view 8686 */ 8687async function initMapOnScroll() { 8688 const mapElement = document.querySelector(MAP_CONFIG.selectors.mapContainer); 8689 8690 if (!mapElement) { 8691 console.warn(`Elemento $ no encontrado`); 8692 return; 8693 } 8694 8695 const config = getMapConfig(mapElement); 8696 if (!config) { 8697 console.warn('Configuración del mapa no valida o no encontrada'); 8698 return; 8699 } 8700 8701 let mapLoaded = false; 8702 8703 const loadMap = async () => { 8704 if (mapLoaded) return; 8705 8706 mapLoaded = true; 8707 console.log('Cargando mapa...'); 8708 8709 try { 8710 await loadGoogleMaps(); 8711 await renderStaticMap(mapElement, config); 8712 } catch (err) { 8713 console.error('Error cargando el mapa:', err); 8714 } 8715 }; 8716 8717 if (isInLoadRange(mapElement)) { 8718 loadMap(); 8719 return; 8720 } 8721 8722 const scrollHandler = () => { 8723 if (isInLoadRange(mapElement)) { 8724 loadMap(); 8725 window.removeEventListener('scroll', scrollHandler); 8726 } 8727 }; 8728 8729 window.addEventListener('scroll', scrollHandler, { passive: true });
8730 8731 if(window.innerWidth > 1024) { 8732 return; 8733 } 8734 const container = document.querySelector('.map-container'); 8735 const label = container.querySelector('.map-container-label'); 8736 const hintLabelText = container.querySelector('.map-label-text'); 8737 const rawHintText = { 8738 desk: "", 8739 mobile: "" 8740 }; 8741 8742 hintLabelText.textContent = 8743 rawHintText?.mobile === "" 8744 ? getMapHintLabel('mobile') 8745 : rawHintText.mobile; 8746 8747 const observer = new IntersectionObserver((entries) => { 8748 entries.forEach(entry => { 8749 if (entry.isIntersecting) { 8750 label.classList.add('visible'); 8751 } 8752 }); 8753 }, { threshold: 1 }); 8754 8755 observer.observe(container); 8756} 8757 8758///////////////////////////////////////////////// 8759/////////// CONTACT DATA MANAGEMENT ///////////// 8760///////////////////////////////////////////////// 8761 8762function processContactData(mapElement) { 8763 const seo = window.dataSeo; 8764 8765 if (!seo || !seo.hotel) return; 8766 8767 // Configuration for contact elements 8768 const contactElements = [ 8769 { selector: '.sta-tel1', dataKey: 'tel', textKey: 'textTel' }, 8770 { selector: '.sta-tel2', dataKey: 'tel2', textKey: 'text2Tel' }, 8771 { selector: '.sta-fax', dataKey: 'fax', textKey: null } 8772 ]; 8773 8774 // Process phone and fax elements 8775 for (const config of contactElements) { 8776 const element = mapElement.querySelector('.sta-map-air_info-element ' + config.selector); 8777 const value = seo.hotel[config.dataKey]; 8778 8779 if (element && value) { 8780 element.href = 'tel:' + value; 8781 const displayText = config.textKey ? (seo.hotel[config.textKey] || value) : value; 8782 element.innerHTML = '<span>' + displayText + '</span>'; 8783 } else if (element) { 8784 element.remove(); 8785 } 8786 } 8787 8788 // Process Email with automatic font-size adjustment 8789 const mail = mapElement.querySelector('.sta-map-air_info-element .sta-mail'); 8790 if (mail && seo.hotel.mail) { 8791 adjustEmailFontSize(mail, seo.hotel.mail, seo.hotel.name); 8792 } else if (mail) { 8793 mail.remove(); 8794 } 8795} 8796 8797function adjustEmailFontSize(mailElement, email, hotelName) { 8798 mailElement.href = 'mailto:' + email + '?subject=' + encodeURI(hotelName || ''); 8799 8800 mailElement.innerHTML = '<span>a</span>'; 8801 const baselineHeight = mailElement.offsetHeight; 8802 8803 mailElement.innerHTML = '<span>' + email + '</span>'; 8804 8805 let fontSize = parseInt(window.getComputedStyle(mailElement).fontSize); 8806 let currentHeight = mailElement.offsetHeight; 8807 8808 const originalTransition = mailElement.style.transition; 8809 mailElement.style.transition = 'none'; 8810 8811 while (currentHeight > baselineHeight && fontSize > 8) { 8812 fontSize--; 8813 mailElement.style.fontSize = fontSize + 'px'; 8814 currentHeight = mailElement.offsetHeight; 8815 } 8816 8817 mailElement.style.transition = originalTransition; 8818} 8819 8820function cleanAddressDuplicates(mapElement) { 8821 const address = mapElement.querySelector('.sta-address'); 8822 if (!address) return; 8823 8824 const cityEl = address.querySelector('.sta-city'); 8825 const provinceEl = address.querySelector('.sta-province'); 8826 const countryEl = address.querySelector('.sta-country'); 8827 8828 if (!cityEl || !provinceEl || !countryEl) return; 8829 8830 const city = cityEl.textContent.trim(); 8831 const province = provinceEl.textContent.trim(); 8832 const country = countryEl.textContent.trim(); 8833 8834 if (city === province || province === country || !province) { 8835 provinceEl.remove(); 8836 } 8837 if (city === country || !country) { 8838 countryEl.remove(); 8839 } 8840} 8841 8842function cleanSocialMedia(mapElement) { 8843 const socialsSection = mapElement.querySelector('.sta-map-air_info-element.socials'); 8844 if (!socialsSection) return; 8845 8846 const socialLinks = socialsSection.querySelectorAll('a'); 8847 const hasLinks = Array.from(socialLinks).some(link => link.href && link.href !== ''); 8848 8849 if (!hasLinks) { 8850 socialsSection.remove(); 8851 } 8852} 8853 8854 8855function initDataManagement() { 8856 const mapElement = document.querySelector(MAP_CONFIG.selectors.mapContainer); 8857 if (!mapElement) return; 8858 8859 try { 8860 cleanAddressDuplicates(mapElement); 8861 processContactData(mapElement); 8862 cleanSocialMedia(mapElement); 8863 } catch (error) { 8864 console.error('Error procesando datos de contacto:', error); 8865 } 8866} 8867 8868/////////////////////////////////////////////////
8869//////////////// INITIALIZATION ///////////////// 8870///////////////////////////////////////////////// 8871 8872//Init when DOM is ready 8873if (document.readyState === 'loading') { 8874 document.addEventListener('DOMContentLoaded', () => { 8875 initDataManagement(); 8876 initMapOnScroll(); 8877 }); 8878} else { 8879 initDataManagement(); 8880 initMapOnScroll(); 8881} 8882</script>
8882 8883 8884 8885 8886 8887 8888 8889 8890 8891 8892 8893 8894 8895 8896 8897 8898 8899 8900 8901 8902 8903 8904</main> 8905 8906<footer> 8907 <!-- Visibles --> 8908 8909 <section class="footer-v2-wrapper black-version" data-scroll=""> 8910 8911 <!-- CONTENIDO PRINCIPAL --> 8912 <section class="footer-v2-content"> 8913 8914 <!-- Columna Marca --> 8915 <article class="footer-v2-brand"> 8916 <img src="/templates/cadenas/air/images/hotels/HTL00310/logo_largo2.png" alt="Palacio Del Infante Don Juan Manuel Hotel Spa" class="footer-v2-logo"> 8917 <p class="footer-v2-description">Hotel Spa con encanto histórico en Belmonte, Cuenca, donde la tradición, el bienestar y el confort se unen para ofrecer una experiencia única y relajante.</p> 8918 <nav class="footer-v2-social"> 8919 <div class="tgl-socialRedes-air"> 8920 <div class="sta-socialRedes-air_container"> 8921 8922 <a href="https://www.instagram.com/infantedonjuanmanuel/" aria-label="instagram" target="_blank" class="sta-socialRedes-air_icon icon-instagram" rel="noopener"></a> 8923 8924 8925 8926 <a href="" aria-label="twitter" target="_blank" class="sta-socialRedes-air_icon icon-twitter" rel="noopener"></a> 8927 8928 8929 8930 <a href="https://www.facebook.com/PalacioInfanteDonJuanManuel" aria-label="facebook" target="_blank" class="sta-socialRedes-air_icon icon-facebook" rel="noopener"></a> 8931 8932 8933 8934 <a href="" aria-label="pinterest" target="_blank" class="sta-socialRedes-air_icon icon-pinterest" rel="noopener"></a> 8935 8936 8937 8938 <a href="" aria-label="youtube" target="_blank" class="sta-socialRedes-air_icon icon-youtube" rel="noopener"></a> 8939 8940 8941 8942 8943 8944 <a href="" aria-label="Foursquare" target="_blank" class="sta-socialRedes-air_icon icon-foursquare" rel="noopener"></a> 8945 8946 8947 8948 <a href="" aria-label="Blog" target="_blank" class="sta-socialRedes-air_icon icon-blog" rel="noopener"></a> 8949 8950 8951 <a href="" aria-label="linkedin" target="_blank" class="sta-socialRedes-air_icon icon-linkedin" rel="noopener"></a> 8952 8953 8954 8955 <a href="" aria-label="foodspotting" target="_blank" class="sta-socialRedes-air_icon icon-foodspotting" rel="noopener"></a> 8956 8957 8958 8959 <a href="" aria-label="tumblr" target="_blank" class="sta-socialRedes-air_icon icon-tumblr" rel="noopener"></a> 8960 8961 8962 8963 <a href="" aria-label="vimeo" target="_blank" class="sta-socialRedes-air_icon icon-vimeo" rel="noopener"></a> 8964 8965 8966 8967 <a href="" aria-label="flickr" target="_blank" class="sta-socialRedes-air_icon icon-flickr" rel="noopener"></a> 8968 8969 8970 8971 <a href="" aria-label="wordpress" target="_blank" class="sta-socialRedes-air_icon icon-wordpress" rel="noopener"></a> 8972 8973 8974 8975 <a href="" aria-label="yelp" target="_blank" class="sta-socialRedes-air_icon icon-yelp" rel="noopener"></a> 8976 8977 8978 8979 <a href="" aria-label="tiktok" target="_blank" class="sta-socialRedes-air_icon icon-tiktok" rel="noopener"></a> 8980 8981 8982 </div> 8983 </div> 8984 </nav> 8985 </article> 8986 8987 <!-- Columna Menú --> 8988 <nav class="footer-v2-nav-col"> 8989 <h3 class="footer-v2-nav-title">Menú</h3> 8990 <ul class="footer-v1-nav-list"> 8991 8992 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/">Home</a></li> 8993 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/habitaciones.html">
8993Habitaciones</a></li> 8994 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/restaurante.html">Restaurante</a></li> 8995 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/promociones.html">Promociones</a></li> 8996 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/spa.html">Spa</a></li> 8997 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/eventos.html">Eventos</a></li> 8998 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/belmonte.html">Belmonte</a></li> 8999 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/galeria.html">GalerÃa</a></li> 9000 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/contacto.html">Contacto</a></li> 9001 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/opiniones.html">Opiniones</a></li> 9002</ul> 9003 </nav> 9004 9005 <!-- Columna Interés --> 9006 <nav class="footer-v2-nav-col"> 9007 <h3 class="footer-v2-nav-title">Interés</h3> 9008 <ul class="footer-v1-nav-list"> 9009 9010 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/proteccion-datos.html">Protección de datos</a></li> 9011 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/cookies.html">PolÃtica de cookies </a></li> 9012 <li><a href="https://www.hotelspainfantedonjuanmanuel.es/aviso-legal.html">Aviso legal</a></li> 9013</ul> 9014 </nav> 9015 9016 <!-- Columna Certificados --> 9017 <article class="footer-v2-certs-col"> 9018 <h3 class="footer-v2-certs-title">Nuestros certificados</h3> 9019 <ul class="footer-v1-nav-list"> 9020 9021 <li><a href="javascript:void0"><a href="https://www.domusselecta.com/ " target="_blank"><img style="width: 20%;" src= "/templates/cadenas/air/images/hotels/HTL00310/Domus_Badge_Web_White_Round.png"/></a></li> 9022</ul> 9023 </article> 9024 9025 </section> 9026 9027 <!-- FOOTER INFERIOR --> 9028 <footer class="footer-v2-bottom"> 9029 <article class="footer-v2-bottom-desk"> 9030 <span class="footer-v2-copyright">Palacio Del Infante Don Juan Manuel Hotel Spa</span> 9031 <span class="footer-v2-powered">Powered by Keytel | Compra segura </span> 9032 </article> 9033 <article class="footer-v2-bottom-mob"> 9034 <span class="footer-v2-powered">Powered by Keytel </span> 9035 <span class="footer-v2-secure">Compra segura </span> 9036 </article> 9037 </footer> 9038 9039</section> 9040<style> 9041/* ========================= 9042 FOOTER V2 - BASE 9043========================== */ 9044.footer-v2-wrapper { margin:0; padding: 40px 25px; box-sizing:border-box; font-family:var(--font-body); font-size:var(--font-size-base); line-height:1.5; color:var(--color-text); } 9045.footer-v2-wrapper *, .footer-v2-wrapper *::before, .footer-v2-wrapper *::after { margin:0; padding:0; box-sizing:border-box; } 9046.footer-v2-wrapper ul { list-style:none; } 9047.footer-v2-wrapper a { text-decoration:none; color:inherit; transition:color 0.3s ease; } 9048.footer-v2-wrapper a:hover { color:var(--color-principal); } 9049.footer-v2-wrapper img { max-width:100%; width:fit-content; display:block; object-fit: contain;} 9050@media (min-width: 768px) {.footer-v2-wrapper {padding: 45px 60px;}} 9051@media (min-width: 1280px) {.footer-v2-wrapper {padding: 45px 100px;}} 9052 9053/* ========================= 9054 CONTENT GRID - DESKTOP 9055========================== */ 9056.footer-v2-wrapper .footer-v2-content { display:grid; grid-template-columns:1.3fr 1fr 1fr 1.5fr; gap:40px; padding-bottom:30px; border-bottom:1px solid #c5c5c5; margin-bottom:30px; } 9057 9058/* ========================= 9059 BRAND COLUMN 9060========================== */ 9061.footer-v2-wrapper .footer-v2-brand { display:flex; flex-direction:column; gap:15px; } 9062.footer-v2-wrapper .footer-v2-logo { height:100px; max-height:100px; } 9063.footer-v2-wrapper .footer-v2-description { font-size:var(--font-size-base); color:var(--color-text); line-height:1.6; font-family:var(--font-body); } 9064 9065/* ========================= 9066 REDES SOCIALES (tgl-socialRedes-air) 9067========================== */ 9068.footer-v2-wrapper .footer-v2-social { display:flex; gap:15px; align-items:center; margin-top:5px; } 9069.footer-v2-wrapper .tgl-socialRedes-air { position:static !important; top:auto !important; left:auto !important; right:auto !important; bottom:auto !important; display:block; width:100%; margin:0; padding:0; float:none; z-index:auto; background:transparent; border:none; box-shadow:none; transform:none; opacity:1; visibility:visible; pointer-events:auto; } 9070.footer-v2-wrapper .sta-socialRedes-air_container { display:flex; right:unset !important; flex-direction:row; flex-wrap:wrap; align-items:center; gap:15px; margin:0; padding:0; justify-content:flex-start; box-shadow:unset; background-color:unset; animation:unset !important; } 9071.footer-v2-wrapper .sta-socialRedes-air_icon { display:flex !important; align-items:center;
9071 margin-bottom:unset !important; justify-content:center; width:24px; height:24px; color:var(--color-text); font-size:24px; line-height:1; text-decoration:none; transition:color 0.3s ease; background-color:unset !important; background:unset; border:none; padding:0; margin:0; float:none; position:static; } 9072.footer-v2-wrapper .sta-socialRedes-air_icon:hover { background-color:unset; } 9073.footer-v2-wrapper .sta-socialRedes-air_icon::before { font-size:24px !important; color:var(--color-text); display:flex; align-items:center; justify-content:center; width:24px; height:24px; line-height:1 !important; top:unset !important; right:unset !important; left:unset !important; } 9074.footer-v2-wrapper .sta-socialRedes-air_icon:hover::before { color:var(--color-principal); transition:color 0.5s ease; } 9075 9076/* ========================= 9077 NAV COLUMNS 9078========================== */ 9079.footer-v2-wrapper .footer-v2-nav-col { display:flex; flex-direction:column; } 9080.footer-v2-wrapper .footer-v2-nav-title { font-family:var(--font-title); font-size:var(--font-size-h4); font-weight:700; color:var(--color-text); margin-bottom:var(--spacing-items); } 9081.footer-v2-wrapper .footer-v1-nav-list { display:flex; flex-direction:column; gap:var(--spacing-items-subtitle); } 9082.footer-v2-wrapper .footer-v1-nav-list li a { font-size:var(--font-size-base); color:var(--color-text); font-family:var(--font-body); } 9083 9084/* ========================= 9085 CERTIFICADOS 9086========================== */ 9087.footer-v2-wrapper .footer-v2-certs-col { display:flex; flex-direction:column; } 9088.footer-v2-wrapper .footer-v2-certs-title { font-family:var(--font-title); font-size:var(--font-size-h4); font-weight:700; color:var(--color-text); margin-bottom:var(--spacing-items); } 9089.footer-v2-wrapper .footer-v1-certs-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap:10px; } 9090.footer-v2-wrapper .footer-v1-cert-item { display:flex; align-items:center; justify-content:center; min-height:70px; padding:10px; } 9091.footer-v2-wrapper .footer-v1-cert-item img { max-width:100%; max-height:60px; object-fit:contain; } 9092 9093/* ========================= 9094 BOTTOM 9095========================== */ 9096.footer-v2-wrapper .footer-v2-bottom { display:flex; flex-direction:column; align-items:center; gap:5px; text-align:center; } 9097.footer-v2-wrapper .footer-v2-bottom-desk { display:flex; flex-direction:column; align-items:center; gap:5px; } 9098.footer-v2-wrapper .footer-v2-bottom-mob { display:none; } 9099.footer-v2-wrapper .footer-v2-copyright { font-size:var(--font-size-base); color:var(--color-text); font-family:var(--font-body); } 9100.footer-v2-wrapper .footer-v2-powered { font-size:var(--font-size-base); color:var(--color-text); font-family:var(--font-body); } 9101.footer-v2-wrapper .footer-v2-secure { font-size:var(--font-size-base); color:var(--color-text); font-family:var(--font-body); } 9102 9103/* ========================= 9104 RESPONSIVE - MOBILE (max-width: 800px) 9105========================== */ 9106@media (max-width: 800px) { 9107.footer-v2-wrapper { padding:30px 20px; } 9108.footer-v2-wrapper .footer-v2-content { grid-template-columns:1fr 1fr; gap:25px; } 9109.footer-v2-wrapper .footer-v2-brand { grid-column:1 / -1; } 9110.footer-v2-wrapper .footer-v2-certs-col { grid-column:1 / -1; } 9111.footer-v2-wrapper .footer-v2-logo { height:80px; max-height:80px; } 9112.footer-v2-wrapper .footer-v2-certs-title { margin-top:10px; } 9113.footer-v2-wrapper .footer-v1-certs-grid { grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));} 9114.footer-v2-wrapper .footer-v2-bottom-desk { display:none; } 9115.footer-v2-wrapper .footer-v2-bottom-mob { display:flex; flex-direction:column; align-items:center; gap:5px; } 9116} 9117 9118/* === BLACK VERSION === */ 9119.footer-v2-wrapper.black-version { 9120 --color-text: #fff; 9121 background-color: rgb(71, 66, 66); 9122 .footer-v1-certs-grid .footer-v1-cert-item {background-color: #f3f3f3;border-radius: var(--radius-elements);} 9123 .footer-v2-brand .footer-v2-logo {filter: brightness(0) contrast(1000) invert(1);} 9124} 9125 9126 9127/* === NO SOCIAL MEDIA ===*/ 9128.footer-v2-wrapper.no-socials .footer-v2-social { 9129 display: none; 9130} 9131</style> 9132 9133 9134 <div html="MENU/tgl-socialRedes-air" class="tgl-socialRedes-air rrss-color"> 9135 <div class="sta-socialRedes-air_container"> 9136 9137 9138 <a href="https://www.instagram.com/infantedonjuanmanuel/" aria-label="instagram" target="_blank" class="sta-socialRedes-air_icon icon-instagram" rel="noopener"></a> 9139 9140 9141 9142 <a href="" aria-label="twitter" target="_blank" class="sta-socialRedes-air_icon icon-twitter" rel="noopener"></a> 9143 9144 9145 9146 <a href="https://www.facebook.com/PalacioInfanteDonJuanManuel" aria-label="facebook" target="_blank" class="sta-socialRedes-air_icon icon-facebook" rel="noopener"></a> 9147 9148 9149 9150 <a href="" aria-label="pinterest" target="_blank" class="sta-socialRedes-air_icon icon-pinterest" rel="noopener"></a> 9151 9152 9153 9154 <a href="" aria-label="youtube" target="_blank" class="sta-socialRedes-air_icon icon-youtube" rel="noopener"></a> 9155 9156 9157 9158 9159 9160 <a href="" aria-label="Foursquare" target="_blank" class="sta-socialRedes-air_icon icon-foursquare" rel="noopener"></a> 9161 9162 9163 9164 <a href="" aria-label="Blog" target="_blank" class="sta-socialRedes-air_icon icon-blog" rel="noopener"></a> 9165 9166 9167 <a href="" aria-label="linkedin" target="_blank" class="sta-socialRedes-air_icon icon-linkedin" rel="noopener"></a> 9168 9169 9170 9171 <a href="" aria-label="foodspotting" target="_blank" class="sta-socialRedes-air_icon icon-foodspotting" rel="noopener"></a> 9172 9173 9174 9175 <a href="" aria-label="tumblr" target="_blank" class="sta-socialRedes-air_icon icon-tumblr" rel="noopener"></a> 9176 9177 9178 9179 <a href="" aria-label="vimeo" target="_blank" class="sta-socialRedes-air_icon icon-vimeo" rel="noopener"></a> 9180 9181 9182 9183 <a href="" aria-label="flickr" target="_blank" class="sta-socialRedes-air_icon icon-flickr" rel="noopener"></a> 9184 9185 9186 9187 <a href="" aria-label="wordpress" target="_blank" class="sta-socialRedes-air_icon icon-wordpress" rel="noopener"></a> 9188 9189 9190 9191 <a href="" aria-label="yelp" target="_blank" class="sta-socialRedes-air_icon icon-yelp" rel="noopener"></a> 9192 9193 9194 9195 <a href="" aria-label="tiktok" target="_blank" class="sta-socialRedes-air_icon icon-tiktok" rel="noopener"></a> 9196 9197 9198 9199 </div> 9200</div> 9201 9202<style> 9203 .tgl-socialRedes-air{ 9204 top: 350px !important; 9205 } 9206</style> 9207 9208 9209 9210 9211 <!-- End Visibles --> 9212 9213 <!-- Modales --> 9214 9215 <section html="MENU/popUp" class="popUp " id="popUp-Home"> 9216 <div class="popUp-wrapper"> 9217 <div class="popUp-buttonContainer" id="buttonContainer"></div> 9218 <button class="popUp-toggleButton hidden" id="toggleButtons" aria-label=""> 9219 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"/><circle cx="12" cy="5" r="1"/><circle cx="12" cy="19" r="1"/></svg> 9220 </button> 9221
9221<script> 9222 let popUpList = [] 9223 </script>
9223 9224 9225 </div> 9226</section> 9227 9228<style> 9229 /*General POPUP STYLES*/ 9230 .popUp { 9231 9232 position: fixed; 9233 z-index: 9999; 9234 bottom: 25px; 9235 right: 25px; 9236 font-family: var(--bodyFont); 9237 9238 @media (min-width: 600px) { 9239 bottom: 25px; 9240 } 9241 9242 &.left{ 9243 left: 25px; 9244 right: auto; 9245 .popUp-wrapper{ 9246 align-items: start; 9247 } 9248 .popUp-buttonContainer{ 9249 align-items: start; 9250 .popUp-iconButton-text{ 9251 order: 1; 9252 } 9253 } 9254 } 9255 .hidden { 9256 display: none !important; 9257 } 9258 a:hover{ 9259 text-decoration: none; 9260 } 9261 } 9262 9263 .popUp-wrapper { 9264 display: flex; 9265 flex-direction: column; 9266 justify-content: center; 9267 align-items: end; 9268 gap: 8px; 9269 } 9270 9271 /*POPUP BUTTONS STYLES*/ 9272 .popUp-toggleButton { 9273 background: var(--color-cards); 9274 border-radius: calc(var(--radius-buttons) * 2); 9275 color: var(--color-text-buttons); 9276 padding: 0.75rem; 9277 cursor: pointer; 9278 transition: all 0.2s ease; 9279 display: flex; 9280 align-items: center; 9281 justify-content: center; 9282 border: none; 9283 box-shadow: 0 2px 7.4px 0 rgba(0, 0, 0, 0.15); 9284 9285 &:hover:not(.active) { 9286 background: color-mix(in srgb, #fff 10%, var(--color-cards)); 9287 transform: translateY(-2px); 9288 } 9289 &.active { 9290 background: color-mix(in srgb, var(--color-principal) 75%, white); 9291 9292 svg { 9293 stroke: white; 9294 } 9295 } 9296 svg { 9297 transform: rotate(90deg); 9298 } 9299 } 9300 9301 .popUp-buttonContainer { 9302 display: flex; 9303 flex-direction: column; 9304 gap: 8px; 9305 justify-content: center; 9306 align-items: end; 9307 transition: all 0.3s ease; 9308 } 9309 9310 .popUp-iconButton { 9311 position: relative; 9312 background: var(--color-cards, #f3f3f3); 9313 border-radius: var(--radius-buttons); 9314 color: var(--color-text); 9315 padding: 0.75rem; 9316 cursor: pointer; 9317 transition: all 0.2s ease; 9318 display: flex; 9319 align-items: center; 9320 justify-content: center; 9321 gap: 0.5rem; 9322 white-space: nowrap; 9323 border: none; 9324 box-shadow: 0 2px 7.4px 0 rgba(0, 0, 0, 0.15); 9325 font-size: var(--font-size-base); 9326 font-size: 24px; 9327 9328 &:hover { 9329 background: color-mix(in srgb, var(--color-principal) 5%, white); 9330 } 9331 9332 &.showText { 9333 padding: 0.75rem 1rem; 9334 9335 .popUp-iconButton-text { 9336 display: inline-flex; 9337 } 9338 } 9339 } 9340 9341 .popUp-iconButton-icon { 9342 display: flex; 9343 align-items: center; 9344 justify-content: center; 9345 9346 svg { 9347 stroke: black; 9348 } 9349 } 9350 9351 .popUp-iconButton-text { 9352 font-size: 0.875rem; 9353 color: var(--color-text); 9354 display: none; 9355 } 9356 9357 /* POPUP MODAL STLYLES */ 9358 .popUp-modal-wrapper { 9359 --text-color: var(--color-text); 9360 position: fixed; 9361 top: 0; 9362 left: 0; 9363 width: 100%; 9364 height: 100%; 9365 background: rgba(0, 0, 0, 0.5); 9366 z-index: 2000; 9367 display: flex; 9368 align-items: flex-end; 9369 opacity: 0; 9370 9371 &:not(.hidden) { 9372 animation: overlay-fade-in 0.3s ease forwards; 9373 9374 .popUp-modal { 9375 animation: modal-mobile-slide-in 0.3s ease forwards; 9376 } 9377 } 9378 9379 &.closing { 9380 animation: overlay-fade-out 0.3s ease forwards !important; 9381 9382 .popUp-modal { 9383 animation: modal-mobile-slide-out 0.3s ease forwards !important; 9384 } 9385 } 9386 &.show-icon{ 9387 .popUp-image-wrapper{ 9388 padding-top:12px; 9389 display: flex; 9390 justify-content: center; 9391 align-items: center; 9392 svg{ 9393 display:block; 9394 stroke-width: 1px; 9395 } 9396 img{ 9397 display:none; 9398 } 9399 } 9400 } 9401 &.font-white{ 9402 --text-color: #FFFFFF; 9403 @media (max-width: 600px) { 9404 &.variant-2{ 9405 .popUp-submenu-item-subtitle, 9406 .popUp-submenu-item-title{ 9407 --text-color: #474242; 9408 } 9409 } 9410 } 9411 9412 } 9413 &.image-centered{ 9414 .popUp-image{ 9415 object-fit:contain; 9416 } 9417 @media (min-width: 600px) { 9418 .popUp-image-wrapper{ 9419 padding: 75px 36px; 9420 } 9421 } 9422 } 9423 &.noBtn{ 9424 .popUp-content-button{ 9425 display: none; 9426 } 9427 } 9428 &.fullImage{ 9429 9430 .popUp-info-wrapper{ 9431 display:none; 9432 } 9433 .popUp-image-wrapper{ 9434 flex: 0 0 100%; 9435 } 9436 9437 @media (max-width: 599px) { 9438 .popUp-modal{ 9439 height: 300px; 9440 padding:0; 9441 } 9442 .popUp-image-wrapper{ 9443 border-radius: 0; 9444 } 9445 } 9446 } 9447 9448 @media (min-width: 600px) { 9449 align-items: center; 9450 justify-content: center; 9451 9452 &:not(.hidden) .popUp-modal { 9453 animation: modal-desktop-scale-in 0.3s ease forwards !important; 9454 } 9455 9456 &.closing .popUp-modal { 9457 animation: modal-desktop-scale-out 0.3s ease forwards !important; 9458 } 9459 &.show-icon .popUp-image-wrapper{ 9460 padding:0; 9461 svg{ 9462 display:none; 9463 } 9464 img{ 9465 display:block; 9466 } 9467 /* TODO: Eliminar cuando exista nueva librerÃa */ 9468 &::before { 9469 display: none; 9470 } 9471 } 9472 /* TODO: Eliminar cuando exista nueva librerÃa */ 9473 &.icomoon .popUp-image-wrapper::before { 9474 display: flex; 9475 align-items: center; 9476 justify-content: center; 9477 } 9478 } 9479 } 9480 9481 .popUp-modal { 9482 background: var(--color-cards, #f3f3f3); 9483 background-size: cover; 9484 background-position: center; 9485 background-repeat: no-repeat; 9486 width: 100%; 9487 border-radius: var(--radius-elements) var(--radius-elements) 0 0; 9488 position: relative; 9489 padding: 32px 16px 16px 16px; 9490 transform: translateY(100%); 9491 overflow:hidden; 9492 9493 @media (min-width: 600px) { 9494 width: 760px; 9495 height: 360px; 9496 border-radius: var(--radius-elements); 9497 display: flex; 9498 flex-direction: row; 9499 padding: 0; 9500 transform: scale(0.9); 9501 } 9502 } 9503 9504 .popUp-modal-bar { 9505 position: absolute; 9506 top: 16px; 9507 left: 50%; 9508 transform: translateX(-50%); 9509 width: 48px; 9510 height: 3px; 9511 background: rgba(209, 213, 219, 0.65); 9512 border-radius: 2px; 9513 cursor: pointer; 9514 9515 @media (min-width: 600px) { 9516 display: none; 9517 } 9518 } 9519 9520 .popUp-closeButton { 9521 display: none !important; 9522 9523 @media (min-width: 600px) { 9524 display: flex !important; 9525 position: absolute; 9526 border: none; 9527 background: none; 9528 padding: 0px; 9529 top: 22px; 9530 right: 16px; 9531 align-items: center; 9532 justify-content: center; 9533 cursor: pointer; 9534 z-index: 10; 9535 } 9536 } 9537 9538 .popUp-content { 9539 display: flex; 9540 flex: 1; 9541 flex-direction: column; 9542 justify-content: space-between; 9543 color: var(--text-color); 9544 height: 100%; 9545 9546 &.variant-2 { 9547 gap: 30px; 9548 } 9549 9550 @media (min-width: 600px) { 9551 flex-direction: row; 9552 padding: 0 !important; 9553 height: 100%; 9554 &.variant-2 { 9555 flex-direction: column; 9556 gap: 0px; 9557 justify-content: unset; 9558 } 9559 } 9560 } 9561 9562 .popUp-image-wrapper { 9563 width: 100%; 9564 overflow: hidden; 9565 border-radius: var(--radius-elements); 9566 height: 180px; 9567 svg{ 9568 display:none; 9569 width:64px; 9570 height:64px; 9571 } 9572 9573 /* TODO: Eliminar cuando exista nueva librerÃa */ 9574 &::before { 9575 display: none; 9576 font-family: 'icomoon'; 9577 font-size: 64px; 9578 color: var(--text-color); 9579 } 9580 9581 @media (min-width: 600px) { 9582 flex: 0 0 50%; 9583 max-height: none; 9584 height: 100%; 9585 border-radius: 0; 9586 margin: 0; 9587 display: flex; 9588 } 9589 } 9590 9591 .popUp-image { 9592 width: 100%; 9593 height: 100%; 9594 object-fit: cover; 9595 object-position: center; 9596 9597 @media (min-width: 600px) { 9598 height: 100%; 9599 width: 100%; 9600 display: block; 9601 } 9602 } 9603 9604 .popUp-info-wrapper { 9605 display: flex; 9606 flex-direction: column; 9607 gap: 8px; 9608 padding-top: 24px; 9609 align-items: center; 9610 9611 @media (min-width: 600px) { 9612 flex: 0 50%; 9613 justify-content: center; 9614 align-items: start; 9615 padding: 48px 43px; 9616 gap: 16px; 9617 text-align: left; 9618 } 9619 } 9620 9621 .popUp-title { 9622 font-family: var(--font-title); 9623 color: var(--text-color); 9624 font-size: 28px; 9625 font-weight: 600; 9626 margin: 0; 9627 9628 @media (min-width: 600px) { 9629 font-size: 28px; 9630 text-align: left; 9631 &.variant-2{ 9632 border-bottom: 1px solid var(--text-color); 9633 padding-block: 24px; 9634 margin-inline: 24px; 9635 } 9636 } 9637 } 9638 9639 .popUp-description { 9640 color: var(--text-color); 9641 font-family: var(--font-body); 9642 font-size: 0.9375rem; 9643 line-height: 1.6; 9644 display: -webkit-box; 9645 -webkit-line-clamp: 4; 9646 -webkit-box-orient: vertical; 9647 overflow: hidden; 9648 text-overflow: ellipsis; 9649 text-align: center;
9650 overflow-wrap: anywhere; 9651 9652 @media (min-width: 600px) { 9653 text-align: left; 9654 font-size: 1rem; 9655 -webkit-line-clamp: unset; 9656 } 9657 } 9658 9659 .popUp-content-button { 9660 background: var(--color-principal); 9661 font-family: var(--font-body); 9662 color: var(--color-text-buttons); 9663 border: none; 9664 border-radius: var(--radius-buttons); 9665 padding: 12px 24px; 9666 font-size: 24px; 9667 font-weight: 400; 9668 cursor: pointer; 9669 transition: background 0.3s ease-in-out; 9670 width: 100%; 9671 margin-top: 16px; 9672 text-align: center; 9673 &:visited{ 9674 color: var(--color-text-buttons); 9675 } 9676 @media (min-width: 600px) { 9677 font-size: 20px; 9678 width: auto; 9679 9680 &:hover { 9681 background: color-mix(in srgb, var(--color-principal) 75%, black); 9682 } 9683 } 9684 } 9685 9686 /*VARIANT 2 STYLES */ 9687 .popUp.variant-2 { 9688 .popUp-modal { 9689 @media (min-width: 600px) { 9690 height: 360px; 9691 } 9692 } 9693 } 9694 .popUp-list { 9695 list-style: none; 9696 display: flex; 9697 flex-direction: column; 9698 align-items: stretch; 9699 padding: 0; 9700 margin: 0; 9701 gap: 16px; 9702 9703 @media (min-width: 600px) { 9704 flex-direction: row; 9705 padding: 24px; 9706 height: 100%; 9707 } 9708 } 9709 9710 .popUp-list-element { 9711 padding: 24px; 9712 background: white; 9713 text-align: left; 9714 font-weight: 600; 9715 font-size: 24px; 9716 border-radius: 8px; 9717 cursor: pointer; 9718 transition: background 0.2s ease; 9719 display: flex; 9720 align-items: center; 9721 gap: 16px; 9722 flex: 1; 9723 9724 &:hover { 9725 background: #f9fafb; 9726 } 9727 9728 @media (min-width: 600px) { 9729 height: 100%; 9730 padding: 0; 9731 position: relative; 9732 overflow: hidden; 9733 9734 &:before { 9735 content: ""; 9736 position: absolute; 9737 bottom: 0; 9738 width: 100%; 9739 height: 100%; 9740 background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent); 9741 pointer-events: none; 9742 z-index: 1; 9743 transition: opacity 0.6s ease; 9744 } 9745 &:after { 9746 content: ""; 9747 position: absolute; 9748 bottom: 0; 9749 width: 100%; 9750 height: 100%; 9751 background: rgba(0, 0, 0, 0.5); 9752 pointer-events: none; 9753 z-index: 1; 9754 opacity: 0; 9755 transition: opacity 0.6s ease; 9756 } 9757 &:hover { 9758 .popUp-list-element-image { 9759 scale: 1.05; 9760 } 9761 &:after { 9762 opacity: 1; 9763 } 9764 &:before { 9765 opacity: 0; 9766 } 9767 } 9768 } 9769 } 9770 9771 .popUp-list-element-image { 9772 display: none; 9773 transition: scale 0.6s ease-in-out; 9774 9775 @media (min-width: 600px) { 9776 display: block; 9777 width: 100%; 9778 height: 100%; 9779 object-fit: cover; 9780 border-radius: 8px; 9781 scale: 1 9782 } 9783 } 9784 9785 .popUp-list-element-text { 9786 flex: 1; 9787 color: var(--text-color); 9788 @media (min-width: 600px) { 9789 position: absolute; 9790 bottom: 16px; 9791 left: 16px; 9792 color: #fff; 9793 z-index: 2; 9794 } 9795 } 9796 9797 /* SUBMENU CONTENT STYLES */ 9798 .popUp-submenu-content { 9799 position: absolute; 9800 top: 0; 9801 height: 100%; 9802 width: 100%; 9803 background: var(--background-color, #f3f3f3); 9804 background-size: cover; 9805 background-position: center; 9806 background-repeat: no-repeat; 9807 z-index: 1000; 9808 display: flex; 9809 flex-direction: column; 9810 overflow-y: auto; 9811 transform: translateY(100%); 9812 &:not(.hidden) { 9813 animation: modal-mobile-slide-in 0.3s ease forwards; 9814 9815 @media (min-width: 600px) { 9816 animation: modal-desktop-scale-in 0.3s ease forwards; 9817 } 9818 } 9819 &.closing { 9820 animation: modal-mobile-slide-out 0.3s ease forwards !important; 9821 9822 @media (min-width: 600px) { 9823 animation: modal-desktop-scale-out 0.3s ease forwards !important; 9824 } 9825 } 9826 @media (min-width: 600px) { 9827 width: 760px; 9828 height: 360px; 9829 border-radius: 8px; 9830 display: flex; 9831 flex-direction: column; 9832 padding: 0; 9833 transform: scale(0.9); 9834 top: 50%; 9835 transform: translateY(-50%) !important; 9836 } 9837 } 9838 9839 .popUp-submenu-header { 9840 display: flex; 9841 align-items: center; 9842 justify-content: space-between; 9843 padding: 16px; 9844 @media (min-width: 600px) { 9845 padding: 24px 0px; 9846 margin-inline: 24px; 9847 border-bottom: 1px solid var(--text-color); 9848 gap: 24px; 9849 .popUp-button { 9850 padding: 0; 9851 &[data-role="close"]:not(.popUp-closeButton) { 9852 position: absolute; 9853 top: 22px; 9854 right: 16px; 9855 } 9856 } 9857 } 9858 } 9859 9860 .popUp-button { 9861 background: none; 9862 border: none; 9863 cursor: pointer; 9864 display: flex; 9865 align-items: center; 9866 transition: opacity 0.2s ease; 9867 9868 &:hover { 9869 opacity: 0.7; 9870 } 9871 svg { 9872 stroke: var(--text-color); 9873 } 9874 } 9875 .popUp-submenu-title { 9876 font-family: var(--mainFont); 9877 flex: 1; 9878 text-align: center; 9879 font-size: 28px; 9880 font-weight: 600; 9881 color: var(--text-color); 9882 margin: 0; 9883 @media (min-width: 600px) { 9884 text-align: left; 9885 } 9886 } 9887 9888 .popUp-submenu-list { 9889 list-style: none; 9890 margin: 0; 9891 padding-inline: 25px; 9892 display: flex; 9893 flex-direction: column; 9894 gap: 16px; 9895 overflow-y: auto; 9896 li { 9897 list-style: none; 9898 } 9899 @media (min-width: 600px) { 9900 padding: 24px; 9901 display: grid; 9902 grid-template-columns: repeat(2, 1fr); 9903 grid-column-gap: 24px; 9904 grid-row-gap: 16px; 9905 9906 &:has(> li:nth-child(3)){ 9907 grid-template-columns: repeat(3, 1fr); 9908 .popUp-submenu-item{
9909 align-items: center; 9910 max-height: unset; 9911 flex-direction: row; 9912 } 9913 .popUp-submenu-item-image{ 9914 height: 110px; 9915 width: 100px; 9916 } 9917 } 9918 9919 &:has(> li:nth-child(7)){ 9920 .popUp-submenu-item{ 9921 max-height: 68px; 9922 } 9923 .popUp-submenu-item-image{ 9924 height: 68px; 9925 } 9926 } 9927 } 9928 } 9929 9930 .popUp-submenu-item { 9931 background: white; 9932 border-radius: 8px; 9933 padding: 8px; 9934 display: flex; 9935 gap: 16px; 9936 align-items: center; 9937 cursor: pointer; 9938 transition: background 0.2s ease; 9939 text-decoration: none; 9940 color: inherit; 9941 9942 @media (min-width: 600px) { 9943 padding: 0; 9944 background: none; 9945 9946 flex-direction: column; 9947 align-items: start; 9948 } 9949 } 9950 9951 .popUp-submenu-item-image { 9952 width: 85px; 9953 height: 55px; 9954 object-fit: cover; 9955 border-radius: 8px; 9956 flex-shrink: 0; 9957 @media (min-width: 600px) { 9958 height: 175px; 9959 width: 100%; 9960 } 9961 } 9962 9963 .popUp-submenu-item-content { 9964 flex: 1; 9965 display: flex; 9966 flex-direction: column; 9967 align-items: start; 9968 gap: 4px; 9969 font-weight: 600; 9970 min-height: 55px; 9971 } 9972 9973 .popUp-submenu-item-title { 9974 font-family: var(--mainFont); 9975 font-size: 20px; 9976 font-weight: 600; 9977 color: var(--text-color); 9978 margin: 0; 9979 text-align: left; 9980 } 9981 9982 .popUp-submenu-item-subtitle { 9983 font-size: 24px; 9984 color: var(--text-color); 9985 margin: 0; 9986 line-height: 16px; 9987 } 9988 9989 /* prettier-ignore */ 9990 .icons-in { animation: y-animation-fade-in 0.84s linear(0,0.0171,0.064,0.134,0.2208,0.3187,0.4225,0.5278,0.6308,0.7284,0.8184,0.8991,0.9693,1.0285,1.0767,1.1141,1.1413,1.1592,1.1687,1.171,1.1672,1.1585,1.146,1.1308,1.1138,1.096,1.078,1.0605,1.044,1.0288,1.0153,1.0036,0.9937,0.9858,0.9797,0.9753,0.9724,0.971,0.9708,0.9716,0.9732,0.9754,0.9781,0.981,0.9841,0.9871,0.9901,0.9929,0.9954,0.9977,0.9997,1.0013,1.0026,1.0036,1.0043,1.0048,1.005,1.005,1.0048,1.0045,1.0041,1.0037,1.0032,1.0026,1.0021,1.0016,1.0011,1.0007,1.0003,1,0.9997,0.9995,0.9994,0.9992,0.9992,0.9991,0.9991,0.9992,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997,0.9998,0.9999,1,1,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1) forwards; } 9991 /* prettier-ignore */ 9992 .icons-out { animation: y-animation-fade-out 0.84s linear(0,0.0171,0.064,0.134,0.2208,0.3187,0.4225,0.5278,0.6308,0.7284,0.8184,0.8991,0.9693,1.0285,1.0767,1.1141,1.1413,1.1592,1.1687,1.171,1.1672,1.1585,1.146,1.1308,1.1138,1.096,1.078,1.0605,1.044,1.0288,1.0153,1.0036,0.9937,0.9858,0.9797,0.9753,0.9724,0.971,0.9708,0.9716,0.9732,0.9754,0.9781,0.981,0.9841,0.9871,0.9901,0.9929,0.9954,0.9977,0.9997,1.0013,1.0026,1.0036,1.0043,1.0048,1.005,1.005,1.0048,1.0045,1.0041,1.0037,1.0032,1.0026,1.0021,1.0016,1.0011,1.0007,1.0003,1,0.9997,0.9995,0.9994,0.9992,0.9992,0.9991,0.9991,0.9992,0.9992,0.9993,0.9994,0.9995,0.9996,0.9997,0.9997,0.9998,0.9999,1,1,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1.0001,1) forwards; } 9993 9994 /*ANIMATIONS*/ 9995 @keyframes y-animation-fade-in { 9996 from { 9997 transform: translateY(10px); 9998 opacity: 0; 9999 } 10000 to { 10001 transform: translateY(0); 10002 opacity: 1; 10003 } 10004 } 10005 @keyframes y-animation-fade-out { 10006 from { 10007 transform: translateY(0); 10008 opacity: 1; 10009 } 10010 to { 10011 transform: translateY(10px); 10012 opacity: 0; 10013 } 10014 } 10015 @keyframes modal-mobile-slide-in { 10016 from { 10017 transform: translateY(100%); 10018 } 10019 to { 10020 transform: translateY(0); 10021 } 10022 } 10023 @keyframes modal-mobile-slide-out { 10024 from { 10025 transform: translateY(0); 10026 } 10027 to { 10028 transform: translateY(100%); 10029 } 10030 } 10031 @keyframes overlay-fade-in { 10032 from { 10033 opacity: 0; 10034 } 10035 to { 10036 opacity: 1; 10037 } 10038 } 10039 @keyframes overlay-fade-out { 10040 from { 10041 opacity: 1; 10042 } 10043 to { 10044 opacity: 0; 10045 } 10046 } 10047 @keyframes modal-desktop-scale-in { 10048 from { 10049 transform: scale(0.9); 10050 opacity: 0; 10051 } 10052 to { 10053 transform: scale(1); 10054 opacity: 1; 10055 } 10056 } 10057 @keyframes modal-desktop-scale-out { 10058 from { 10059 transform: scale(1); 10060 opacity: 1; 10061 } 10062 to { 10063 transform: scale(0.9); 10064 opacity: 0; 10065 } 10066 } 10067 10068 /* Scrollbar */ 10069 .popUp *::-webkit-scrollbar { 10070 width: 6px; 10071 height: 6px; 10072 } 10073 10074 .popUp *::-webkit-scrollbar-track { 10075 background: transparent; 10076 } 10077 10078 .popUp *::-webkit-scrollbar-thumb { 10079 background: transparent; 10080 border-radius: 3px; 10081 transition: background 0.2s ease; 10082 } 10083 10084 /* Solo aparece al hacer hover sobre el elemento scrolleable */ 10085 .popUp *:hover::-webkit-scrollbar-thumb { 10086 background: rgba(0, 0, 0, 0.2); 10087 } 10088 10089 .popUp *::-webkit-scrollbar-thumb:hover { 10090 background: rgba(0, 0, 0, 0.4); 10091 } 10092 10093 .popUp *::-webkit-scrollbar-button { 10094 display: none; 10095 } 10096 10097 /* Firefox */ 10098 .popUp * { 10099 scrollbar-width: thin; 10100 scrollbar-color: transparent transparent; 10101 transition: scrollbar-color 0.2s ease; 10102 } 10103 10104 .popUp *:hover { 10105 scrollbar-color: rgba(0, 0, 0, 0.2) transparent; 10106 } 10107</style> 10108
10109<script> 10110 10111 const CONFIG = { 10112 ANIMATION: { 10113 DELAY: 100, 10114 DURATION: 300 10115 }, 10116 MAX_VISIBLE_BUTTONS: parseInt('') || 2, 10117 OPEN_TIMER: parseInt('') * 1000 || 10000, 10118 CLASSES: { 10119 HIDDEN: 'hidden', 10120 CLOSING: 'closing', 10121 ACTIVE: 'active', 10122 } 10123 }; 10124 10125 let isToggling = false; 10126 10127 function removeClass(elements, ...classes) { 10128 elements.forEach((element) => element.classList.remove(...classes)); 10129 } 10130 10131 function animateButtons(buttons, animationClass, removeClass, reverse = false) { 10132 buttons.forEach((button, index) => { 10133 const delay = reverse 10134 ? (buttons.length - 1 - index) * CONFIG.ANIMATION.DELAY 10135 : index * CONFIG.ANIMATION.DELAY; 10136 10137 if (removeClass) button.classList.remove(removeClass); 10138 button.style.opacity = reverse ? '0' : '1'; 10139 10140 setTimeout(() => button.classList.add(animationClass), delay); 10141 }); 10142 } 10143 10144 function toggleOverlay(element, shouldOpen){ 10145 if(!element) return; 10146 10147 if(shouldOpen){ 10148 element.classList.remove(CONFIG.CLASSES.HIDDEN); 10149 if(element.classList.contains("popUp-overlay")) 10150 document.body.style.overflow = CONFIG.CLASSES.HIDDEN; 10151 10152 } else { 10153 element.classList.add(CONFIG.CLASSES.CLOSING); 10154 setTimeout(() => { 10155 element.classList.remove(CONFIG.CLASSES.CLOSING); 10156 element.classList.add(CONFIG.CLASSES.HIDDEN); 10157 if(element.classList.contains("popUp-overlay")) 10158 document.body.style.overflow = ""; 10159 }, CONFIG.ANIMATION.DURATION); 10160 } 10161 } 10162 10163 function toggleButtonsAnimation(container, buttons, duration, show) { 10164 if (show) { 10165 container.classList.remove(CONFIG.CLASSES.HIDDEN); 10166 animateButtons(buttons, "icons-in", "icons-out", true); 10167 } else { 10168 animateButtons(buttons, "icons-out", "icons-in"); 10169 setTimeout(() => { 10170 container.classList.add(CONFIG.CLASSES.HIDDEN); 10171 removeClass(buttons, "icons-out"); 10172 }, duration); 10173 } 10174 } 10175 10176 function toggleButtons(container, toggleButton) { 10177 10178 if (isToggling || !container || !toggleButton) return; 10179 10180 const buttons = container.querySelectorAll(".popUp-iconButton"); 10181 const isHidden = container.classList.contains(CONFIG.CLASSES.HIDDEN); 10182 const totalDuration = buttons.length * CONFIG.ANIMATION.DELAY + CONFIG.ANIMATION.DURATION; 10183 10184 isToggling = true; 10185 toggleButton.classList.toggle("active", isHidden); 10186 toggleButtonsAnimation(container, buttons, totalDuration, isHidden); 10187 10188 setTimeout(() => { 10189 isToggling = false; 10190 }, totalDuration); 10191 } 10192 10193 function checkButtonCount(container, toggleButton) { 10194 10195 if (!container || !toggleButton) return; 10196 10197 const buttons = container.querySelectorAll(".popUp-iconButton"); 10198 10199 if (buttons.length > CONFIG.MAX_VISIBLE_BUTTONS) { 10200 toggleButton.classList.remove(CONFIG.CLASSES.HIDDEN); 10201 container.classList.add(CONFIG.CLASSES.HIDDEN); 10202 buttons.forEach((button) => button.classList.add("showText")); 10203 } else { 10204 toggleButton.classList.add(CONFIG.CLASSES.HIDDEN); 10205 container.classList.remove(CONFIG.CLASSES.HIDDEN); 10206 } 10207 } 10208 10209 function setupModal(buttonContainer) { 10210 10211 /* Event delegation little buttons*/ 10212 buttonContainer?.addEventListener("click", (e) => { 10213 const iconButton = e.target.closest(".popUp-iconButton"); 10214 if (!iconButton) return; 10215 10216 const modalId = iconButton.getAttribute("data-modal"); 10217 const overlay = document.getElementById(modalId); 10218 if (overlay) toggleOverlay(overlay, true); 10219 }); 10220 10221 popUpList.forEach(({id, urlAlt}) => { 10222 const overlay = document.getElementById(id); 10223 if (!overlay) return; 10224 const modal = overlay.querySelector('.popUp-modal'); 10225 const btn = overlay.querySelector('.popUp-content-button'); 10226 if(btn.textContent.trim() === '') 10227 btn.remove(); 10228 else 10229 btn.href = urlAlt ?? btn.href 10230 10231 overlay.classList.contains("variant-2") 10232 ? overlay.querySelector(".default")?.remove() 10233 : overlay.querySelector(".variant-2")?.remove(); 10234 10235 overlay.classList.contains("show-icon") 10236 && renderIcon(overlay, id); 10237 10238 // Apply default background color if empty 10239 const bgColor = overlay.style.getPropertyValue('--background-color').trim(); 10240 if (!bgColor) overlay.style.setProperty('--background-color', '#f3f3f3'); 10241 10242 overlay.querySelector('.popUp-content').classList.remove(CONFIG.CLASSES.HIDDEN); 10243 10244 /* EventDelegation overlay*/ 10245 overlay.addEventListener("click", (e) => { 10246 const closeButton = e.target.closest('[data-role="close"], .popUp-modal-bar'); 10247 const modalBar = e.target.closest('.popUp-modal-bar'); 10248 10249 if (closeButton || modalBar || e.target === overlay) { 10250 toggleOverlay(overlay, false); 10251 } 10252 }); 10253 }); 10254 10255 setupSubmenuEvents(); 10256 } 10257 10258 function setupSubmenuEvents() { 10259 const listElements = document.querySelector(".popUp-wrapper"); 10260 10261 if (!listElements) return; 10262 10263 listElements.addEventListener("click", (e) => { 10264 const listElement = e.target.closest('.popUp-list-element[data-opens-screen]'); 10265 const backButton = e.target.closest('[data-role="backButton"]'); 10266 const submenuClose = e.target.closest('[data-role="close"]'); 10267 10268 // Open submenu 10269 if (listElement && !backButton && !submenuClose) { 10270 const submenuId = listElement.getAttribute("data-opens-screen"); 10271 const submenu = document.getElementById(submenuId); 10272 if (submenu) toggleOverlay(submenu, true); 10273 return; 10274 } 10275 10276 // Close submenu on back button 10277 if (backButton) { 10278 const parent = backButton.closest('.popUp-submenu-content'); 10279 toggleOverlay(parent, false); 10280 return; 10281 } 10282 // Close submenu on close button 10283 if (submenuClose) { 10284 const submenu = submenuClose.closest('.popUp-submenu-content'); 10285 if (submenu) toggleOverlay(submenu, false); 10286 } 10287 10288 }); 10289 10290 } 10291 10292 function createButtons(container) { 10293 if (!container) return; 10294 10295 container.innerHTML = ""; 10296 popUpList.sort((a, b) => b.label.length - a.label.length); 10297 10298 popUpList.forEach((popUp) => { 10299 const button = document.createElement("button"); 10300 button.className = `popUp-iconButton ${popUp.icon}`; 10301 button.setAttribute("aria-label", popUp.label); 10302 button.setAttribute("data-modal", popUp.id); 10303 10304 button.innerHTML = `<span class="popUp-iconButton-text">${popUp.label}</span>`; 10305 container.appendChild(button); 10306 }); 10307 10308 } 10309 10310 // TODO: Eliminar cuando exista nueva librerÃa 10311 function renderIcon(modal, id) { 10312 const icon = popUpList.find((item) => item.id === id)?.icon; 10313 if (!icon) return; 10314 10315 const wrapper = modal.querySelector('.popUp-image-wrapper'); 10316 if (wrapper) { 10317 wrapper.classList.add(icon); 10318 } 10319 10320 } 10321 10322 function moveSubmenuToWrapper() { 10323 const submenuContents = document.querySelectorAll(".popUp-submenu-content"); 10324
10325 submenuContents.forEach((submenu) => { 10326 const parentId = submenu.getAttribute("data-parent"); 10327 if (parentId) { 10328 const parentElement = document.getElementById(parentId); 10329 if (parentElement && submenu.parentElement !== parentElement) { 10330 parentElement.appendChild(submenu); 10331 } 10332 } 10333 }); 10334 } 10335 10336 function autoOpenDefaultModal() { 10337 const hasShownModal = sessionStorage.getItem('popUpDefaultShown'); 10338 10339 if (hasShownModal) return; 10340 10341 setTimeout(() => { 10342 const defaultModal = document.querySelector('.popUp-modal-wrapper.initial-popup'); 10343 if (defaultModal) { 10344 toggleOverlay(defaultModal, true); 10345 sessionStorage.setItem('popUpDefaultShown', 'true'); 10346 } 10347 }, CONFIG.OPEN_TIMER); 10348 } 10349 10350 function init() { 10351 const toggleButton = document.getElementById("toggleButtons"); 10352 const buttonContainer = document.getElementById("buttonContainer"); 10353 10354 toggleButton?.addEventListener("click", () => toggleButtons(buttonContainer,toggleButton)); 10355 createButtons(buttonContainer); 10356 setupModal(buttonContainer); 10357 checkButtonCount(buttonContainer, toggleButton); 10358 moveSubmenuToWrapper(); 10359 autoOpenDefaultModal(); 10360 10361 /* Remove list if only one category is shown */ 10362 const popUpListElement = document.querySelectorAll('.popUp-list-element[data-opens-screen]'); 10363 if (popUpListElement.length <= 1) { 10364 const submenu = document.querySelector('.popUp-submenu-content') 10365 if(!submenu) return; 10366 submenu.classList.remove(CONFIG.CLASSES.HIDDEN); 10367 submenu.querySelector('[data-role="backButton"]').remove(); 10368 } 10369 } 10370 10371 init(); 10372</script>
10372 10373 10374 10375 10376 10377 10378 10379 10380 10381 <!-- End Modales --> 10382 10383</footer> 10384 10385 10386
10387<script src="/templates/cadenas/air/js/scripts.js?_=202504220925"></script>
10387 10388 10389 10390 10391 10392</body> 10393</html> 10394 10395 10396 10397 10398 10399
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.