/* =====================================================================
   REDISEÑO v2 · HOTETEC HOTELS & RESORTS (maqueta aprobada 04-11-2026)
   Capa sobre "rediseno". Un solo color de interfaz (mar #2C7A7B); Mar/Ciudad/Montaña solo en etiquetas.
   Clases de sección propias: hh-intro, hh-head(.hh-arena/.hh-dark), hh-head-hotels, hh-hotels, hh-exp,
   hh-panels(.hh-col/.hh-brands), hh-offers, hh-rew, hh-dest, hh-faq, hh-more, hh-hide
   Textos: todo por la app de Textos (#TEXT:clave# dentro del HTML; el resolver envuelve en <p>)
   ===================================================================== */
:root{--hh-tinta:#1B2341;--hh-tinta2:#232D50;--hh-arena:#F2ECE2;--hh-arena2:#E9E1D3;--hh-mar:#2C7A7B;--hh-mar-osc:#23625F;--hh-mar-claro:#A9D6D3;--hh-gris:#5E6475;--hh-linea:#DCD3C2;--hh-oro:#B8913A;--hh-ciudad:#A2574A;--hh-montana:#3F5E45;--colorPrimary:#2C7A7B}

/* utilidades */
.hh-hide,section.hh-hide{display:none !important}
.hh-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;vertical-align:1px;background:var(--hh-mar)}
.hh-dot.ciudad{background:var(--hh-ciudad)}.hh-dot.montana{background:var(--hh-montana)}
.ul-tagline-text{letter-spacing:.24em !important;font-size:11px !important;font-weight:700 !important}
.ul-title-text::after{display:none !important}
/* los #TEXT dentro de HTML llegan envueltos en <p>: que no rompan la línea */
.hh-inline p,.hh-facts span p,.hh-chip p,.hh-lv p,.hh-more a p,.hh-faqhead p.hh-k p{display:inline;margin:0 !important;padding:0;font:inherit;color:inherit;line-height:inherit}

/* ---------- Cabecera ---------- */
header.httHeaderAbsolute,.httHeaderFixedToTopPlusAbsolute{background:var(--hh-tinta) !important;border-top:0 !important}
header nav.menuCustom>ul li a,header nav.menuCustom>ul li button{font-size:14px !important;font-weight:500 !important;letter-spacing:.02em}
header .btn-corpo,header a.btn-corpo{border-radius:2px !important}

/* ---------- Home: sin miga ni franja de ventajas ---------- */
body:has(.hero-home) section.bgGray:has(.breadcrumb),body:has(.hero-home) .ventajas{display:none !important}

/* ---------- Hero home ---------- */
.hero.hero-home .ul-card,.hero.hero-home .ul-card__image{min-height:660px}
.hero.hero-home .ul-card__image::after{background:none !important}
.hero.hero-home .ul-card__content{position:absolute !important;inset:0 !important;width:auto !important;max-width:none !important;margin:0 !important;transform:none !important;align-items:flex-start !important;text-align:left !important;justify-content:flex-end !important;padding:0 max(48px,calc((100% - 1200px)/2 + 48px)) 236px !important;background:linear-gradient(90deg,rgba(27,35,65,.84) 0%,rgba(27,35,65,.55) 42%,rgba(27,35,65,0) 70%),linear-gradient(180deg,rgba(27,35,65,.5) 0%,rgba(27,35,65,0) 28%) !important}
.hero.hero-home .ul-card__content>*{max-width:600px;text-align:left !important}
.hero.hero-home .ul-tagline-text{color:var(--hh-mar-claro) !important}
.hero.hero-home .ul-title-text{font-size:clamp(46px,6.4vw,86px) !important;line-height:.98 !important;text-align:left !important;color:#fff !important;text-shadow:0 2px 18px rgba(27,35,65,.3)}
.hero.hero-home .ul-subtitle-text{font-size:18px !important;color:#E9EBF1 !important;max-width:46ch;text-align:left !important}
.hero.hero-home .ul-card__actions{justify-content:flex-start !important;gap:12px}
.hero.hero-home .ul-card__actions a+a,.hero.hero-home .ul-btn-secondary{background:transparent !important;border:1px solid #fff !important;color:#fff !important}
.hero.hero-home .swiper-pagination,.hero.hero-home .htt-swiper-buttons-wrapper,.hero.hero-home [class*=swiper-button]{display:none !important}
@media (min-width:992px) and (max-height:760px){.hero.hero-home .ul-title-text{font-size:clamp(40px,4.6vw,64px) !important}.hero.hero-home .ul-subtitle-text{font-size:16px !important}}
@media (min-width:992px) and (max-height:700px){.hero.hero-home .ul-card__subtitle{display:none !important}}
@media (min-width:992px) and (max-height:600px){.hero.hero-home .ul-card__actions{display:none !important}}
@media (min-width:768px){section:has(> .container-fluid [class^="hotelSearcher"]){padding-bottom:44px !important}}

/* ---------- Secciones genéricas ---------- */
section.hh-intro,section.hh-hotels,section.hh-exp,section.hh-panels,section.hh-faq{padding-block:88px !important}
section.hh-arena{background:var(--hh-arena) !important}
section.hh-head{padding-top:88px !important;padding-bottom:0 !important}
section.hh-head .ul-card{background:none !important}
section.hh-head .ul-card__content{text-align:left !important;align-items:flex-start !important;padding:0 !important}
section.hh-head .ul-title-text{font-size:clamp(34px,4.2vw,52px) !important;text-align:left !important}
section.hh-head .ul-card__description,section.hh-head .ul-card__description p{text-align:left !important;color:var(--hh-gris);max-width:58ch;margin:0}
section.hh-head.hh-dark,section.hh-offers,section.hh-more.hh-dark{background:var(--hh-tinta) !important}
section.hh-head.hh-dark .ul-title-text{color:#fff !important}
section.hh-head.hh-dark .ul-tagline-text{color:var(--hh-mar-claro) !important}
section.hh-head.hh-dark .ul-card__description p{color:#B9BED0 !important}
section.hh-panels+section.hh-panels{padding-top:0 !important}

/* Botón «Ver todos…» bajo un bloque: enlace sobrio */
section.hh-more{padding:0 0 88px !important;margin-top:-56px}
section.hh-more.hh-arena{background:var(--hh-arena) !important}
section.hh-more .center{text-align:left !important;margin:0 !important;padding:0 !important}
section.hh-more .container,section.hh-more .container-fluid{max-width:1200px !important}
section.hh-more .w80{width:auto !important}
section.hh-more a.btn-corpo{background:none !important;border:0 !important;border-bottom:1px solid currentColor !important;border-radius:0 !important;color:var(--hh-mar) !important;padding:0 0 2px !important;font-size:12.5px !important;letter-spacing:.12em !important;min-height:0}
section.hh-more.hh-dark a.btn-corpo{color:var(--hh-mar-claro) !important}
section.hh-more a.btn-corpo svg,section.hh-more .ul-btn-icon{display:none !important}

/* ---------- Intro con cifras ---------- */
section.hh-intro .ul-card{background:none !important}
section.hh-intro .ul-card__content{display:grid !important;grid-template-columns:1.1fr 1fr;gap:12px 64px;text-align:left !important;align-items:end !important}
section.hh-intro .ul-card__tagline,section.hh-intro .ul-card__title{grid-column:1}
section.hh-intro .ul-card__description{grid-column:2;grid-row:1 / span 3}
section.hh-intro .ul-title-text{font-size:clamp(36px,4.4vw,56px) !important;text-align:left !important}
section.hh-intro .ul-card__description p{margin:0 !important;max-width:none !important;text-align:left !important;font-size:17px !important;color:var(--hh-gris) !important}
section.hh-intro{background:#fff !important}
.hh-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;border-top:1px solid var(--hh-linea)}
.hh-facts>div{padding:16px 16px 0 0;display:grid;gap:4px}
.hh-facts b{font-family:var(--fontPrimary);font-weight:400;font-size:44px;line-height:1;color:var(--hh-tinta);font-variant-numeric:tabular-nums}
.hh-facts span{font-size:13px;color:var(--hh-gris)}

/* ---------- Cabecera de hoteles con filtros ---------- */
section.hh-head-hotels{background:var(--hh-arena) !important}
section.hh-head-hotels .ul-card__content{display:flex !important;flex-direction:row !important;flex-wrap:wrap;justify-content:space-between !important;align-items:flex-end !important;gap:16px 40px}
section.hh-head-hotels .ul-card__tagline{flex-basis:100%}
section.hh-head-hotels .ul-card__title{flex:1 1 420px}
section.hh-head-hotels .ul-card__description{flex:1 1 100%;max-width:none !important}
.hh-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.hh-chip{font:inherit;font-family:var(--fontSecondary);font-size:13px;font-weight:600;border:1px solid var(--hh-linea);background:#fff;color:var(--hh-tinta);border-radius:999px;padding:7px 15px;cursor:pointer;line-height:1.2}
.hh-chip[aria-pressed="true"]{background:var(--hh-tinta);color:#fff;border-color:var(--hh-tinta)}
.hh-chip:focus-visible{outline:2px solid var(--hh-mar);outline-offset:2px}
section.hh-dark .hh-chip{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
section.hh-dark .hh-chip[aria-pressed="true"]{background:#fff;color:var(--hh-tinta);border-color:#fff}

/* ---------- Tarjetas de hotel ---------- */
section.hh-hotels{background:var(--hh-arena) !important;padding-top:34px !important}
section.hh-hotels .ul-grid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:38px 22px !important}
section.hh-hotels .ul-card{width:auto !important;max-width:none !important;display:flex !important;flex-direction:column !important}
section.hh-hotels .ul-card.hh-off{display:none !important}
section.hh-hotels .ul-card__image{aspect-ratio:4/5 !important;border-radius:2px !important}
section.hh-hotels .ul-card__content{flex:1 1 auto !important;display:flex !important;flex-direction:column !important;padding-top:14px !important}
section.hh-hotels .ul-title-text{font-size:clamp(20px,1.6vw,24px) !important;line-height:1.15 !important}
section.hh-hotels .text-hotel{order:-1}
section.hh-hotels .hh-brand{order:-2;flex-basis:100%;color:var(--hh-gris) !important;font-size:10.5px !important;letter-spacing:.18em}
section.hh-hotels .price_from_container{margin-top:6px}
section.hh-hotels .ul-card__actions{margin-top:auto !important;padding-top:12px;gap:18px !important}
html body section.hh-hotels .ul-card__actions a.btn.btn.btn.btn{background:none !important;border:0 !important;border-bottom:1px solid currentColor !important;border-radius:0 !important;padding:0 0 2px !important;min-height:0 !important;font-size:12px !important;color:var(--hh-mar) !important;box-shadow:none !important}
html body section.hh-hotels .ul-card__actions a.btn.btn.btn.btn+a.btn{color:var(--hh-tinta) !important}
section.hh-hotels .ul-card__actions a.btn svg,section.hh-hotels .ul-card__actions .ul-btn-icon{display:none !important}

/* ---------- Experiencias (temáticas) ---------- */
section.hh-exp .ul-grid{display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:18px !important}
section.hh-exp .ul-card{width:100% !important;min-width:0 !important;max-width:none !important;flex:none !important;height:auto !important;overflow:hidden !important;position:relative;aspect-ratio:16/10;border-radius:2px !important}
section.hh-exp .ul-grid:has(.ul-card:nth-child(3 of .ul-card)){grid-template-columns:repeat(4,1fr) !important}
section.hh-exp .ul-grid:has(.ul-card:nth-child(3 of .ul-card)) .ul-card{aspect-ratio:3/4}
section.hh-exp .ul-card__image{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important}
section.hh-exp .ul-card__image img{width:100% !important;height:100% !important;object-fit:cover}
section.hh-exp .ul-card__content{justify-content:flex-end !important;align-items:flex-start !important;text-align:left !important;padding:22px !important}
section.hh-exp .ul-title-text{font-size:28px !important;text-align:left !important}
section.hh-exp .ul-card__subtitle img{display:none !important}
section.hh-exp .ul-card__actions{justify-content:flex-start !important}
html body section.hh-exp .ul-card__actions a.btn,html body section.hh-exp .ul-card__actions a{box-shadow:none !important;background:none !important;border:0 !important;border-bottom:1px solid currentColor !important;border-radius:0 !important;padding:0 0 2px !important;color:var(--hh-mar-claro) !important;font-size:12px !important;min-height:0}
section.hh-exp .ul-card__actions a svg,section.hh-exp .ul-card__actions .ul-btn-icon{display:none}

/* ---------- Colecciones y marcas: paneles con foto ---------- */
section.hh-panels .ul-grid{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:20px !important}
section.hh-panels .ul-card{width:auto !important;max-width:none !important;position:relative !important;min-height:440px !important;height:auto !important;overflow:hidden !important;border-radius:2px !important;background:var(--hh-tinta) !important;display:flex !important;flex-direction:column !important;justify-content:flex-end !important}
section.hh-panels .ul-card__image{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;aspect-ratio:auto !important;border-radius:0 !important}
section.hh-panels .ul-card__image img{width:100% !important;height:100% !important;object-fit:cover}
section.hh-panels .ul-card__image::after{display:block !important;content:"" !important;position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,35,65,0) 38%,rgba(27,35,65,.88) 100%) !important}
section.hh-panels .ul-card__content{position:relative !important;inset:auto !important;transform:none !important;background:none !important;text-align:left !important;align-items:flex-start !important;padding:30px !important;gap:8px;z-index:2}
section.hh-panels .ul-title-text{color:#fff !important;font-size:34px !important;text-align:left !important;text-shadow:none !important}
section.hh-panels .ul-card__description,section.hh-panels .ul-card__description p,section.hh-panels .text-hotel p{color:#E2E5EE !important;font-size:14px !important;text-align:left !important;margin:0 !important}
section.hh-panels .stars,section.hh-panels .text-hotel img,section.hh-panels .price_from_container{display:none !important}
section.hh-panels .ul-card__actions{justify-content:flex-start !important;margin-top:6px}
html body section.hh-panels .ul-card__actions a.btn.btn.btn.btn{background:none !important;border:0 !important;border-bottom:1px solid currentColor !important;border-radius:0 !important;padding:0 0 2px !important;min-height:0 !important;font-size:12px !important;color:#fff !important;box-shadow:none !important}
section.hh-panels .ul-card__actions a.btn svg,section.hh-panels .ul-btn-icon{display:none !important}
section.hh-col .ul-card .ul-title-text::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:12px;vertical-align:6px;background:var(--hh-mar-claro)}
section.hh-col .ul-card:nth-child(2 of .ul-card) .ul-title-text::before{background:#D9A196}
section.hh-col .ul-card:nth-child(3 of .ul-card) .ul-title-text::before{background:#9DB8A0}
section.hh-brands .ul-title-text{font-size:28px !important;letter-spacing:.3em;text-transform:uppercase}
section.hh-brands .ul-card{min-height:400px !important}

/* ---------- Ofertas: Black Friday destacada + fila ---------- */
section.hh-offers{padding-block:40px 64px !important}
section.hh-offers .ul-grid{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:22px !important}
section.hh-offers .ul-card{width:auto !important;max-width:none !important;height:auto !important;background:#fff !important;border-radius:0 !important;overflow:hidden;display:flex !important;flex-direction:column !important;min-height:0 !important;align-self:stretch}
section.hh-offers .ul-card__image{position:relative !important;aspect-ratio:16/10;inset:auto !important;height:auto !important;flex:none;border-radius:0 !important}
section.hh-offers .ul-card__image::after,section.hh-offers .ul-card::before,section.hh-offers .ul-card::after{display:none !important;content:none !important}
section.hh-offers .ul-card__content,html body section.hh-offers .ul-card .ul-card__content{position:relative !important;inset:auto !important;transform:none !important;background:transparent !important;padding:20px 22px 22px !important;text-align:left !important;align-items:flex-start !important;justify-content:flex-start !important;gap:6px;flex:1 1 auto !important;display:flex !important;flex-direction:column !important}
section.hh-offers .ul-tagline-text{color:var(--hh-gris) !important;text-align:left !important;letter-spacing:.18em !important}
section.hh-offers .ul-title-text{color:var(--hh-tinta) !important;font-size:25px !important;text-align:left !important;text-shadow:none !important}
section.hh-offers .ul-card__subtitle .ul-subtitle-text{color:var(--hh-gris) !important;opacity:1;text-shadow:none !important;font-size:14px !important;text-align:left !important}
section.hh-offers .ul-card__description .stars,section.hh-offers .text-hotel>p.stars,section.hh-offers .ul-card__description img{display:none !important}
section.hh-offers .ul-card__actions{justify-content:flex-start !important;gap:18px !important;margin-top:auto !important;padding-top:10px}
html body section.hh-offers .ul-card__actions a.btn.btn.btn.btn{background:none !important;border:0 !important;border-bottom:1px solid currentColor !important;border-radius:0 !important;padding:0 0 2px !important;min-height:0 !important;width:auto !important;min-width:0 !important;font-size:12px !important;color:var(--hh-mar) !important;box-shadow:none !important}
html body section.hh-offers .ul-card__actions a.btn.btn.btn.btn+a.btn{color:var(--hh-tinta) !important}
section.hh-offers .ul-card__actions a.btn svg,section.hh-offers .ul-btn-icon{display:none !important}
section.hh-offers .swiper-pagination,section.hh-offers .swiper-scrollbar{display:none !important}
section.hh-offers .ul-card.hh-off{display:none !important}
/* la primera, destacada y horizontal */
section.hh-offers .ul-card:nth-child(1 of .ul-card){grid-column:1 / -1 !important;flex-direction:row !important;background:var(--hh-tinta2) !important}
section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-card__image{flex:none !important;width:56% !important;aspect-ratio:auto !important;min-height:340px}
section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-card__content{padding:44px !important;justify-content:center !important}
section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-title-text{color:#fff !important;font-size:clamp(34px,3.4vw,46px) !important}
section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-tagline-text{color:var(--hh-mar-claro) !important}
section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-subtitle-text{color:#C6CBDA !important;font-size:16px !important}
section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-card__actions{margin-top:14px !important}
html body section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-card__actions a.btn.btn.btn.btn{color:var(--hh-mar-claro) !important}
html body section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-card__actions a.btn.btn.btn.btn+a.btn{color:#fff !important}
section.hh-offers .hh-big{display:block;font-family:var(--fontPrimary);font-size:76px;line-height:.9;color:var(--hh-mar-claro);margin-bottom:6px}

/* ---------- Banda Rewards ---------- */
section.hh-rew{background:var(--hh-tinta2) !important;padding-block:88px !important}
section.hh-rew .ul-card{display:grid !important;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;background:none !important;min-height:0 !important;max-width:1200px;margin:0 auto;height:auto !important}
section.hh-rew .ul-card__image{position:relative !important;inset:auto !important;aspect-ratio:4/5;border-radius:2px;overflow:hidden;height:auto !important}
section.hh-rew .ul-card__image::after,section.hh-rew .ul-card::before,section.hh-rew .ul-card::after{display:none !important;content:none !important}
section.hh-rew .ul-card__content{position:relative !important;inset:auto !important;transform:none !important;background:none !important;text-align:left !important;align-items:flex-start !important;padding:0 !important}
section.hh-rew .ul-title-text{color:#fff !important;font-size:clamp(34px,4vw,50px) !important;text-align:left !important}
section.hh-rew .ul-tagline-text{color:var(--hh-mar-claro) !important}
section.hh-rew .ul-subtitle-text,section.hh-rew .ul-card__description,section.hh-rew .ul-card__description>p{color:#B9BED0 !important;text-align:left !important;font-size:16px !important}
section.hh-rew .ul-card__actions{justify-content:flex-start !important;margin-top:24px}
.hh-levels{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.18);margin-top:26px;text-align:left}
.hh-lv{padding:18px;border-right:1px solid rgba(255,255,255,.18);display:grid;gap:6px;align-content:start}
.hh-lv:last-child{border-right:0}
.hh-lv i{width:30px;height:30px;border-radius:50%;background:var(--m);box-shadow:inset 0 0 0 2px rgba(255,255,255,.45)}
.hh-lv b{font-family:var(--fontPrimary);font-weight:400;font-size:22px;color:#fff}
.hh-lv span{font-size:13px;color:#C6CBDA;line-height:1.4}

/* ---------- Destinos (pestañas) ---------- */
section.hh-dest{padding-block:28px 88px !important}
section.hh-dest .nav.nav-pills{gap:8px;flex-wrap:wrap;justify-content:flex-start !important;max-width:1200px;margin:0 auto 24px !important}
section.hh-dest .nav.nav-pills .nav-link{background:#fff !important;border:1px solid var(--hh-linea) !important;color:var(--hh-tinta) !important;border-radius:999px !important;font-family:var(--fontSecondary);font-size:13px;font-weight:600;padding:7px 16px}
section.hh-dest .nav.nav-pills .nav-link.active{background:var(--hh-tinta) !important;border-color:var(--hh-tinta) !important;color:#fff !important}
section.hh-dest .swiper-slide{border-radius:2px !important;overflow:hidden}

/* ---------- Preguntas frecuentes: cabecera + acordeón quieto ---------- */
section.hh-faq{background:var(--hh-arena) !important}
section.hh-faq .row{display:grid !important;grid-template-columns:1fr 1.5fr;gap:56px;align-items:start;max-width:1200px;margin:0 auto}
section.hh-faq .row>.w-100{display:none !important}
section.hh-faq .row>[class*=col]{width:auto !important;max-width:none !important;flex:none !important}
section.hh-faq .row>[class*=col]:has(.hh-faqhead){order:-1}
.hh-faqhead{display:grid;gap:14px;text-align:left}
.hh-faqhead .hh-k{font-size:11px;letter-spacing:.24em;font-weight:700;text-transform:uppercase;color:var(--hh-mar);margin:0}
.hh-faqhead h2{font-size:clamp(34px,4vw,50px);margin:0;text-align:left}
.hh-faqhead p{color:var(--hh-gris);margin:0}
.hh-faqhead a{color:var(--hh-mar);font-weight:700;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid currentColor;justify-self:start;text-decoration:none}
section.hh-faq .accordion{border-top:1px solid var(--hh-linea)}
section.hh-faq .accordion-item{border:0 !important;border-bottom:1px solid var(--hh-linea) !important;background:none !important;border-radius:0 !important;margin:0 !important}
section.hh-faq .accordion-header,section.hh-faq .accordion-button{background:none !important;box-shadow:none !important;font-weight:600 !important;font-size:16px !important;color:var(--hh-tinta) !important;padding:18px 0 !important;text-align:left}
section.hh-faq .accordion-body{padding:0 0 18px !important;color:var(--hh-gris);max-width:62ch}
section.hh-faq .accordion *{transition:none !important;animation:none !important}
section.hh-faq img{display:none !important}

/* ---------- Pie ---------- */
footer{background:var(--hh-tinta) !important;color:#B9BED0}
footer .hh-foot-brand{color:#fff !important}
footer a{color:#DDE1EB}
footer a:hover{color:var(--hh-mar-claro)}

/* ---------- Móvil ---------- */
@media (max-width:991px){
  .hero.hero-home .ul-card,.hero.hero-home .ul-card__image{min-height:560px}
  .hero.hero-home .ul-card__content{padding:0 20px 90px !important;background:linear-gradient(180deg,rgba(27,35,65,.35) 0%,rgba(27,35,65,.12) 35%,rgba(27,35,65,.82) 100%) !important}
  section.hh-intro .ul-card__content{grid-template-columns:1fr}
  section.hh-intro .ul-card__description{grid-column:1;grid-row:auto}
  section.hh-hotels .ul-grid{grid-template-columns:1fr 1fr !important}
  section.hh-panels .ul-grid,section.hh-offers .ul-grid{grid-template-columns:1fr !important}
  section.hh-panels .ul-card{min-height:300px !important}
  section.hh-offers .ul-card:nth-child(1 of .ul-card){flex-direction:column !important}
  section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-card__image{width:100% !important;min-height:220px}
  section.hh-offers .ul-card:nth-child(1 of .ul-card) .ul-card__content{padding:24px !important}
  section.hh-rew .ul-card{grid-template-columns:1fr;gap:28px}
  section.hh-rew .ul-card__image{aspect-ratio:4/3}
  .hh-levels{grid-template-columns:1fr 1fr}
  .hh-lv{border-bottom:1px solid rgba(255,255,255,.18)}
  section.hh-faq .row{grid-template-columns:1fr;gap:28px}
  section.hh-intro,section.hh-hotels,section.hh-exp,section.hh-panels,section.hh-faq,section.hh-rew{padding-block:60px !important}
  section.hh-head{padding-top:60px !important}
  section.hh-more{padding-bottom:60px !important;margin-top:-36px}
  section.hh-exp .ul-grid,section.hh-exp .ul-grid:has(.ul-card:nth-child(3 of .ul-card)){grid-template-columns:1fr 1fr !important}
}
@media (max-width:767px){
  .hero.hero-home .ul-title-text{font-size:40px !important;line-height:1.05 !important}
  .hero.hero-home .ul-card__actions{display:none !important}
  section.hh-hotels .ul-grid{grid-template-columns:1fr !important}
  section.hh-hotels .ul-card__image{aspect-ratio:4/3 !important}
  .hh-facts b{font-size:34px}
  section.hh-exp .ul-subtitle-text{display:none}
}

/*HH-MOTORFOCO-START*/
/* Motor móvil abierto (clase que pone el JS, como en Lumen y Caribe): fuera cabecera, flecha de subir, chatbot y botón Reservar fijo */
html.hh-motor-open header,html.hh-motor-open .alert-header,html.hh-motor-open .httAlertHeader{visibility:hidden !important}
html.hh-motor-open #buttonScrollToTop,html.hh-motor-open [data-htt-agent-mount],html.hh-motor-open #htt-agent,html.hh-motor-open #buttonShowSearcherMobile,html.hh-motor-open #showUpModalAutomatic{visibility:hidden !important;opacity:0 !important;pointer-events:none !important}
html.hh-motor-open section:has([class^="hotelSearcher"]),html.hh-motor-open div.container-fluid:has(> .row [class^="hotelSearcher"]){position:relative !important;z-index:1200 !important}
html.hh-motor-open [class^="hotelSearcher"]{position:relative;z-index:1200}
/*HH-MOTORFOCO-END*/

/* Acciones de tarjeta en línea, como enlaces */
html body section.hh-hotels .ul-card__actions,html body section.hh-offers .ul-card__actions,html body section.hh-panels .ul-card__actions,html body section.hh-exp .ul-card__actions{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:center !important;justify-content:flex-start !important;width:auto !important}
html body section.hh-hotels .ul-card__actions a.btn.btn.btn.btn,html body section.hh-offers .ul-card__actions a.btn.btn.btn.btn,html body section.hh-panels .ul-card__actions a.btn.btn.btn.btn,html body section.hh-exp .ul-card__actions a.btn.btn.btn.btn{display:inline-block !important;width:auto !important;flex:none !important;text-align:left !important;letter-spacing:.12em !important;font-weight:700 !important;line-height:1.3 !important;height:auto !important;min-width:0 !important;max-width:none !important;margin:0 !important}

/* Pie: fondo tinta también en el bloque interior */
footer .footer{background:var(--hh-tinta) !important}
footer .footer .bt{border-color:rgba(255,255,255,.14) !important}

/* Rewards: niveles en dos filas */
section.hh-rew .hh-levels{grid-template-columns:1fr 1fr}
section.hh-rew .hh-lv:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.18)}
section.hh-rew .hh-lv:nth-child(2n){border-right:0}
section.hh-rew .hh-lv{grid-template-columns:auto 1fr;column-gap:14px;align-items:center}
section.hh-rew .hh-lv i{grid-row:span 2}

/* Destinos: pestañas como píldoras y tarjetas con enlace */
section.hh-dest .nav-tabs{border:0 !important;gap:8px;flex-wrap:wrap;justify-content:flex-start !important;margin:0 0 28px !important}
html body section.hh-dest .nav-tabs .nav-link{border:1px solid var(--hh-linea) !important;border-radius:999px !important;background:#fff !important;color:var(--hh-tinta) !important;padding:7px 16px !important;font-family:var(--fontSecondary);font-size:13px !important;font-weight:600 !important;margin:0 !important}
html body section.hh-dest .nav-tabs .nav-link.active{background:var(--hh-tinta) !important;border-color:var(--hh-tinta) !important;color:#fff !important}
section.hh-dest .ti-card img{border-radius:2px !important;aspect-ratio:16/10;object-fit:cover;width:100%;height:auto}
section.hh-dest .ti-card .caption{text-align:left !important;padding:16px 0 0 !important;background:none !important}
section.hh-dest .ti-card .caption h3{font-size:32px;margin:0 0 8px;text-align:left !important}
section.hh-dest .ti-card .caption p{text-align:left !important;color:var(--hh-gris)}
section.hh-dest .ti-card .caption p.center{margin-top:12px !important}
section.hh-dest .ti-card a.btn-corpo{background:none !important;border:0 !important;border-bottom:1px solid currentColor !important;border-radius:0 !important;color:var(--hh-mar) !important;padding:0 0 2px !important;font-size:12px !important;letter-spacing:.12em !important;min-height:0 !important}
section.hh-dest .ti-card a.btn-corpo .ul-btn-icon{display:none !important}

/* =====================================================================
   FASE 3 · PÁGINAS DE LA CADENA
   ===================================================================== */
/* ---------- Portada de página interior: texto a la izquierda con degradado ---------- */
.hero-section .ul-card,.hero-section .ul-card__image{min-height:520px}
.hero-section .ul-card__image::after{background:none !important}
.hero-section .ul-card__content{position:absolute !important;inset:0 !important;width:auto !important;max-width:none !important;margin:0 !important;transform:none !important;align-items:flex-start !important;justify-content:flex-end !important;text-align:left !important;padding:0 max(48px,calc((100% - 1200px)/2 + 48px)) 84px !important;background:linear-gradient(90deg,rgba(27,35,65,.8) 0%,rgba(27,35,65,.45) 42%,rgba(27,35,65,0) 70%),linear-gradient(180deg,rgba(27,35,65,.45) 0%,rgba(27,35,65,0) 30%) !important}
.hero-section .ul-card__content>*{max-width:620px;text-align:left !important}
.hero-section .ul-tagline-text{color:var(--hh-mar-claro) !important}
.hero-section .ul-title-text{font-size:clamp(42px,5.4vw,76px) !important;line-height:1 !important;color:#fff !important;text-align:left !important;text-shadow:0 2px 18px rgba(27,35,65,.3)}
.hero-section .ul-subtitle-text{color:#E9EBF1 !important;font-size:18px !important;text-align:left !important}
.hero-section .ul-card__actions{justify-content:flex-start !important;gap:12px}
.hero-section .swiper-pagination,.hero-section .htt-swiper-buttons-wrapper,.hero-section [class*=swiper-button]{display:none !important}

/* Miga de pan discreta */
section.bgGray:has(.breadcrumb){background:#fff !important;padding-block:14px 0 !important}
.breadcrumb,.breadcrumb a{font-size:12.5px !important;color:var(--hh-gris) !important}

/* ---------- Intro de página interior (no microsites): dos columnas ---------- */
body:not(:has(.marca-hotel)) section.intro:not(.hh-intro){background:#fff !important;padding-block:72px 64px !important}
body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-card{background:none !important}
@media (min-width:992px){
  body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-card__content{display:grid !important;grid-template-columns:1fr 1.1fr;gap:12px 64px;text-align:left !important;align-items:end !important}
  body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-card__tagline,body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-card__title{grid-column:1}
  body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-card__description{grid-column:2;grid-row:1 / span 3;column-count:auto !important}
}
body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-title-text{font-size:clamp(32px,3.8vw,50px) !important;text-align:left !important}
body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-card__content{text-align:left !important;align-items:flex-start !important}
body:not(:has(.marca-hotel)) section.intro:not(.hh-intro) .ul-card__description p{text-align:left !important;margin:0 0 10px !important;max-width:none !important;color:var(--hh-gris) !important;font-size:17px !important}

/* ---------- Rejillas de hoteles en páginas (marcas, colecciones, temáticas, /hoteles) ---------- */
section.hh-hotels.hh-cols3 .ul-grid{grid-template-columns:repeat(3,1fr) !important}

/* ---------- Ofertas (página) ---------- */
section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card){grid-column:auto !important;flex-direction:column !important;background:#fff !important}
section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card) .ul-card__image{width:auto !important;aspect-ratio:16/10 !important;min-height:0}
section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card) .ul-card__content{padding:20px 22px 22px !important;justify-content:flex-start !important}
section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card) .ul-title-text{color:var(--hh-tinta) !important;font-size:25px !important}
section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card) .ul-tagline-text{color:var(--hh-gris) !important}
section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card) .ul-subtitle-text{color:var(--hh-gris) !important;font-size:14px !important}
html body section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card) .ul-card__actions a.btn.btn.btn.btn{color:var(--hh-mar) !important}
html body section.hh-offers.hh-offers-grid .ul-card:nth-child(1 of .ul-card) .ul-card__actions a.btn.btn.btn.btn+a.btn{color:var(--hh-tinta) !important}
section.hh-offers.hh-offers-grid{padding-top:24px !important}
section.hh-head.hh-dark+section.hh-offers{padding-top:32px !important}

/* ---------- Destinos: secciones partidas imagen / texto ---------- */
section.hh-dsec{padding-block:80px !important;background:#fff !important}
section.hh-dsec.hh-rev{background:var(--hh-arena) !important}
section.hh-dsec .ul-card{display:grid !important;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center;background:none !important;min-height:0 !important;height:auto !important;max-width:1200px;margin:0 auto}
section.hh-dsec.hh-rev .ul-card__image{order:2}
section.hh-dsec .ul-card::before,section.hh-dsec .ul-card::after,section.hh-dsec .ul-card__image::after{display:none !important;content:none !important}
section.hh-dsec .ul-card__image{position:relative !important;inset:auto !important;aspect-ratio:4/3;border-radius:2px;overflow:hidden;height:auto !important}
section.hh-dsec .ul-card__content{position:relative !important;inset:auto !important;transform:none !important;background:none !important;padding:0 !important;text-align:left !important;align-items:flex-start !important;gap:14px}
section.hh-dsec .ul-title-text{color:var(--hh-tinta) !important;font-size:clamp(38px,4.4vw,56px) !important;text-align:left !important;text-shadow:none !important}
section.hh-dsec .ul-card__description,section.hh-dsec .ul-card__description p{color:var(--hh-gris) !important;font-size:16px !important;text-align:left !important;max-width:58ch}
section.hh-dsec .ul-card__actions{justify-content:flex-start !important}

/* ---------- Preguntas frecuentes en toda la web: acordeón quieto ---------- */
.accordion{border-top:1px solid var(--hh-linea)}
.accordion .accordion-item{border:0 !important;border-bottom:1px solid var(--hh-linea) !important;background:none !important;border-radius:0 !important;margin:0 !important}
.accordion .accordion-button{background:none !important;box-shadow:none !important;font-weight:600 !important;font-size:16px !important;color:var(--hh-tinta) !important;padding:18px 0 !important;text-align:left}
.accordion .accordion-body{padding:0 0 18px !important;color:var(--hh-gris);max-width:70ch}
.accordion,.accordion *{transition:none !important;animation:none !important}
section.contact{background:#fff !important}
section.contact .container{max-width:900px !important}

/* ---------- Rewards: tabla de ventajas limpia ---------- */
.rewards-table-wrapper{overflow-x:auto;border-top:1px solid var(--hh-tinta)}
.rewards-table{width:100%;border-collapse:collapse;font-size:14.5px;min-width:640px}
.rewards-table th,.rewards-table td{padding:14px 12px !important;border:0 !important;border-bottom:1px solid var(--hh-linea) !important;background:none !important;text-align:center;color:var(--hh-tinta)}
.rewards-table td:first-child,.rewards-table th:first-child{text-align:left}
.rewards-table th.feature-title{font-family:var(--fontPrimary);font-weight:400;font-size:22px}
.rewards-table td .fa-circle-check{color:var(--hh-mar) !important}
.rewards-table td:first-child i{color:var(--hh-gris);width:22px}
.rewards-table .level-card{display:inline-flex;flex-direction:column;align-items:center;gap:6px;background:none !important;box-shadow:none !important;border:0 !important;font-weight:600;font-size:13px;color:var(--hh-tinta) !important}
.rewards-table .level-card i{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff !important;background:#7D8BA6}
.rewards-table .level-bronze i{background:#A66E3F}.rewards-table .level-silver i{background:#8E969E}.rewards-table .level-gold i{background:#B8913A}
.box-rewards{background:var(--hh-tinta) !important;border-radius:2px !important;padding:36px 40px !important}
.box-rewards:not(.box-login){background:var(--hh-mar) !important}

/* ---------- Blog ---------- */
.blog-categories{background:var(--hh-arena) !important}
h1.no-after{font-size:clamp(38px,4.6vw,58px)}

@media (max-width:991px){
  .hero-section .ul-card,.hero-section .ul-card__image{min-height:420px}
  .hero-section .ul-card__content{padding:0 20px 60px !important;background:linear-gradient(180deg,rgba(27,35,65,.3) 0%,rgba(27,35,65,.1) 35%,rgba(27,35,65,.8) 100%) !important}
  .hero-section .ul-title-text{font-size:38px !important}
  section.hh-dsec .ul-card{grid-template-columns:1fr;gap:24px}
  section.hh-dsec.hh-rev .ul-card__image{order:0}
  section.hh-dsec{padding-block:56px !important}
  section.hh-hotels.hh-cols3 .ul-grid{grid-template-columns:1fr 1fr !important}
  section.hh-offers.hh-offers-grid .ul-grid{grid-template-columns:1fr 1fr !important}
}
@media (max-width:767px){
  section.hh-hotels.hh-cols3 .ul-grid,section.hh-offers.hh-offers-grid .ul-grid{grid-template-columns:1fr !important}
}

/* ---------- /hoteles: tabla comparativa ---------- */
section.hh-tablesec{background:var(--hh-arena) !important;padding-block:72px 88px !important}
section.hh-tablesec .container,section.hh-tablesec .container-fluid{max-width:1200px !important}
section.hh-tablesec .w80{width:auto !important}
.hh-cmp{display:grid;gap:12px;text-align:left}
.hh-cmp .hh-k{font-size:11px;letter-spacing:.24em;font-weight:700;text-transform:uppercase;color:var(--hh-mar);margin:0}
.hh-cmp h2{font-size:clamp(32px,3.8vw,48px);margin:0 0 18px;text-align:left}
.hh-tw{overflow-x:auto;border-top:1px solid var(--hh-tinta)}
.hh-tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:820px}
.hh-tbl th{text-align:left;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--hh-gris);font-weight:700;padding:12px 12px 12px 0;border-bottom:1px solid var(--hh-linea)}
.hh-tbl td{padding:13px 12px 13px 0;border-bottom:1px solid var(--hh-linea);vertical-align:middle;color:var(--hh-tinta)}
.hh-tbl td.hh-tn{font-family:var(--fontPrimary);font-size:18px}
.hh-tbl td.hh-stars{color:var(--hh-oro);letter-spacing:2px;font-size:13px}
.hh-tbl p,.hh-tbl th p,.hh-cmp h2 p,.hh-cmp .hh-k p{display:inline;margin:0 !important;padding:0;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit}
.hh-dot.mar{background:var(--hh-mar)}

/* Textos de la app de Textos dentro de menús y pie: en línea */
span.hh-inline>p{display:inline !important;margin:0 !important;padding:0 !important;font:inherit !important;color:inherit !important;letter-spacing:inherit !important;text-transform:inherit !important;line-height:inherit !important}
/* Blog: títulos de tarjeta proporcionados */
.newsList-link .card-title,.card .card-title{font-size:clamp(20px,1.8vw,26px) !important;line-height:1.15 !important}
/* FAQ y contacto: columna de lectura */
section.contact .row{max-width:900px;margin-inline:auto !important}

/* =====================================================================
   FASE 4 · MICROSITES (molde común para los 12)
   ===================================================================== */
/* Un solo color de interfaz: el de la colección queda solo en etiquetas */
body:has(.marca-hotel),body:has(.hh-col-ciudad),body:has(.hh-col-montana){--hh-hotel:var(--hh-mar) !important;--colorPrimary:#2C7A7B !important}

/* Menú del hotel: blanco con subrayado */
html body .menu-hotel .nav-pills,html body .htt-content-navigation .nav-pills{background:#fff !important;border-bottom:1px solid var(--hh-linea) !important;gap:34px}
html body .menu-hotel .nav-link,html body .htt-content-navigation .nav-link{color:var(--hh-gris) !important;background:none !important;font-weight:600 !important;border-radius:0 !important;box-shadow:none !important;border-bottom:2px solid transparent !important}
html body .menu-hotel .nav-link.active,html body .htt-content-navigation .nav-link.active{color:var(--hh-tinta) !important;border-bottom-color:var(--hh-mar) !important}
body:has(.marca-hotel) section.bgGray:has(.htt-content-navigation),body:has(.marca-hotel) section.bgGray:has(.menu-hotel){background:#fff !important;padding-top:24px !important}

/* Intro del hotel con ficha de cifras a la derecha */
@media (min-width:992px){
  body:has(.marca-hotel) section.intro .ul-card__description:has(.hh-keyfacts){column-count:auto !important;columns:auto !important;display:grid !important;grid-template-columns:1.5fr .9fr;gap:0 56px;max-width:1200px !important;margin:0 auto;align-items:start}
  body:has(.marca-hotel) section.intro .ul-card__description:has(.hh-keyfacts)>*:not(.hh-keyfacts){grid-column:1}
  body:has(.marca-hotel) section.intro .ul-card__description:has(.hh-keyfacts)>.hh-keyfacts{grid-column:2;grid-row:1 / span 20}
}
.hh-keyfacts{border:1px solid var(--hh-linea);background:#fff;padding:6px 24px;text-align:left}
.hh-keyfacts>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;border-bottom:1px solid var(--hh-linea);font-size:14px}
.hh-keyfacts>div:last-child{border-bottom:0}
.hh-keyfacts>div>span{color:var(--hh-gris)}
.hh-keyfacts b{font-weight:600;text-align:right;color:var(--hh-tinta)}
.hh-keyfacts .hh-stars{color:var(--hh-oro);letter-spacing:2px}
@media (max-width:991px){.hh-keyfacts{margin-top:24px}}

/* Doce servicios con icono */
section:has(.hh-svcs) .ul-card__content{max-width:1200px !important}
section:has(.hh-svcs) .ul-card__description{width:100%;column-count:auto !important;columns:auto !important;text-align:left !important}
.hh-svcs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:26px;text-align:left}
.hh-svc{background:#fff;border:1px solid var(--hh-linea);padding:16px 14px;display:grid;gap:10px;justify-items:start;font-size:13.5px;font-weight:600;line-height:1.3;color:var(--hh-tinta)}
.hh-svc svg{width:24px;height:24px;fill:none;stroke:var(--hh-mar);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:991px){.hh-svcs{grid-template-columns:repeat(3,1fr)}}
@media (max-width:575px){.hh-svcs{grid-template-columns:1fr 1fr}}

/* Carrusel de servicios → tres fotos fijas con pie */
html body section.servicios-swiper .servicios-info{display:none !important}
html body section.servicios-swiper .swiper{max-width:1200px !important;margin-inline:auto !important;padding-inline:12px !important;overflow:visible !important}
html body section.servicios-swiper .swiper-wrapper{display:grid !important;grid-template-columns:repeat(3,1fr);gap:20px;transform:none !important;width:auto !important}
html body section.servicios-swiper .swiper-slide{width:auto !important;margin:0 !important;position:relative !important;overflow:hidden !important;aspect-ratio:4/3;height:auto !important;opacity:1 !important;filter:none !important;transform:none !important;border-radius:2px !important}
html body section.servicios-swiper .swiper-slide:nth-child(n+4),html body section.servicios-swiper .swiper-slide-duplicate{display:none !important}
html body section.servicios-swiper .swiper-slide>img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;margin:0 !important;border-radius:0 !important}
html body section.servicios-swiper .hh-cap{position:absolute;inset:auto 0 0 0;padding:56px 22px 20px;background:linear-gradient(to top,rgba(27,35,65,.88),rgba(27,35,65,0));color:#fff;text-align:left;display:grid;gap:4px}
html body section.servicios-swiper .hh-cap b{font-family:var(--fontPrimary);font-weight:400;font-size:24px;color:#fff}
html body section.servicios-swiper .hh-cap span{font-size:13.5px;color:#DDE1EB;line-height:1.45}
html body section.servicios-swiper .swiper-pagination,html body section.servicios-swiper .swiper-button-next,html body section.servicios-swiper .swiper-button-prev{display:none !important}
@media (max-width:767px){html body section.servicios-swiper .swiper-wrapper{grid-template-columns:1fr}}

html body .menu-hotel .htt-content-navigation .nav-link.active,html body .menu-hotel .nav-pills .nav-link.active{color:var(--hh-tinta) !important;border-bottom:2px solid var(--hh-mar) !important;background:none !important}
html body .menu-hotel .htt-content-navigation .nav-link,html body .menu-hotel .nav-pills .nav-link{color:var(--hh-gris) !important}

/* =====================================================================
   FASE 5 · precios «Desde» de la CRS
   ===================================================================== */
.hh-from{margin:8px 0 0 !important;font-size:13px !important;color:var(--hh-gris) !important;text-align:left !important;border-top:1px solid var(--hh-linea);padding-top:10px !important;flex-basis:100%}
.hh-from a,.hh-from .price_from{font-family:var(--fontSecondary);font-size:20px !important;font-weight:700 !important;color:var(--hh-tinta) !important;text-decoration:none !important;margin:0 4px}
section.hh-panels .hh-from{display:none !important}
.text-room .hh-from{border-top:0;padding-top:0 !important;font-size:14px !important}
.text-room .hh-from a,.text-room .hh-from .price_from{font-size:24px !important}
.hh-tbl td.hh-tfrom{white-space:nowrap;font-weight:600}
.hh-tbl td.hh-tfrom a,.hh-tbl td.hh-tfrom .price_from{color:var(--hh-tinta) !important;text-decoration:none !important;font-weight:700}


/* =====================================================================
   REVISIÓN 10-11 · lecciones de Caribe, Urban y Lodge
   ===================================================================== */
/*HH-POPUP-MOVIL-START*/
/* El pop-up de descuento viene de la plataforma con 500 px fijos: en un móvil de 375 px la X queda fuera de la pantalla */
@media (max-width:575px){#showUpModalAutomatic .modal-dialog,#showUpModalAutomatic .modal-dialog-left{width:auto !important;max-width:calc(100vw - 16px) !important;margin:44px auto 8px !important}
#showUpModalAutomatic .modal-content{width:100% !important}
#showUpModalAutomatic .swiper-slide{width:100% !important}
#showUpModalAutomatic .modal-body img{max-width:100% !important;height:auto !important}}
/*HH-POPUP-MOVIL-END*/
/*HH-ANCHOMOVIL-START*/
/* Como en Urban: si algo mide unos píxeles más que la pantalla, Safari de iPhone deja el motor corrido a la derecha al cerrar el calendario */
@media (max-width:767px){html,body{overflow-x:clip !important}}
/*HH-ANCHOMOVIL-END*/
/*HH-MOTOR-MPH-START*/
/* En móvil (sistema MPH de la plataforma) la sección del motor mide 0 px y solo aloja el panel a pantalla completa:
   se sube siempre por encima del contenido, sin depender de detectar la apertura (en iPhone se colaban carruseles y cabecera) */
html.hh-mph section:has(.grid-motor),html.hh-mph .grid-motor,html.hh-mph section:has(> .container-fluid [class^="hotelSearcher"]),html.hh-mph div.container-fluid:has(> .row [class^="hotelSearcher"]){position:relative !important;z-index:1100 !important}
html.hh-motor-open #tt_nudge{visibility:hidden !important;pointer-events:none !important}
/*HH-MOTOR-MPH-END*/
/*HH-POPUP-START*/
/* Pop-up de entrada (app Show Up): tarjeta centrada con foto, −5 % y botón al motor; textos por la app de Textos */
#showUpModalAutomatic.show{background:rgba(27,35,65,.45)}
#showUpModalAutomatic .modal-dialog,#showUpModalAutomatic .modal-dialog-left{position:absolute !important;left:50% !important;top:50% !important;right:auto !important;bottom:auto !important;margin:0 !important;transform:translate(-50%,-50%) !important;width:680px !important;max-width:calc(100vw - 32px) !important}
#showUpModalAutomatic .modal-content{border:0 !important;border-radius:18px !important;overflow:hidden !important;box-shadow:0 24px 60px rgba(27,35,65,.28) !important;background:var(--hh-arena) !important}
#showUpModalAutomatic .modal-body{padding:0 !important}
#showUpModalAutomatic .modal-header{position:absolute !important;top:12px;right:12px;z-index:5;padding:0 !important;border:0 !important;height:auto !important}
#showUpModalAutomatic .modal-header .btn-close{position:static !important;width:34px;height:34px;border-radius:50%;opacity:1;box-shadow:0 2px 8px rgba(0,0,0,.18);margin:0 !important;filter:none !important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='%231B2341' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/14px no-repeat !important}
#showUpModalAutomatic .swiper-pagination{display:none !important}
.hh-pop{display:grid;grid-template-columns:44% 1fr;background:var(--hh-arena);color:var(--hh-tinta);text-align:left}
.hh-pop-img{position:relative;min-height:300px;overflow:hidden}
.hh-pop-img img{position:absolute;inset:0;width:100% !important;height:100% !important;max-height:none !important;aspect-ratio:auto !important;object-fit:cover}
.hh-pop-body{padding:36px 34px 32px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.hh-pop-eyebrow{font-family:var(--fontSecondary);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hh-mar)}
.hh-pop-badge{font-family:var(--fontPrimary);font-weight:400;font-size:64px;line-height:1;color:var(--hh-tinta)}
.hh-pop-title{font-family:var(--fontPrimary);font-size:24px;line-height:1.2;color:var(--hh-tinta);text-wrap:balance}
.hh-pop-desc{font-family:var(--fontSecondary);font-size:15px;line-height:1.55;color:var(--hh-gris)}
.hh-pop-cta{margin-top:10px;border:0;border-radius:999px;background:var(--hh-mar);color:#fff;font-family:var(--fontSecondary);font-size:15px;font-weight:600;padding:13px 28px;cursor:pointer;transition:background .2s}
.hh-pop-cta:hover,.hh-pop-cta:focus-visible{background:var(--hh-mar-osc);outline:none}
.hh-pop-cta:focus-visible{box-shadow:0 0 0 3px var(--hh-mar-claro)}
@media (max-width:575px){.hh-pop{grid-template-columns:1fr}
.hh-pop-img{min-height:150px;height:150px}
.hh-pop-body{padding:20px 20px 22px;gap:6px}
.hh-pop-badge{font-size:44px}
.hh-pop-title{font-size:21px}
.hh-pop-desc{font-size:14px}
.hh-pop-cta{width:100%;text-align:center;margin-top:8px}}
/*HH-POPUP-END*/
/*HH-CABECERA-MICRO-START*/
/* Cabecera de los microsites: iconos blancos sin el invert del CSS generic, menú hamburguesa legible y botón de casa a la home de la cadena */
body:has(.marca-hotel) .personLogin-content svg,body:has(.marca-hotel) .mybooking-content svg{filter:none !important;fill:#fff !important}
body:has(.marca-hotel) .personLogin-content svg circle[stroke]{stroke:#fff !important}
.menuCustom>ul>li.hh-home-li{display:flex;align-items:center}
.menuCustom .hh-home{display:inline-flex !important;align-items:center;justify-content:center;width:34px;height:34px;padding:0 !important;border-radius:50%;border:1px solid rgba(255,255,255,.35);color:#fff !important;transition:background .2s}
.menuCustom .hh-home:hover,.menuCustom .hh-home:focus-visible{background:rgba(255,255,255,.14);outline:none}
.menuCustom .hh-home svg{display:block}
/*HH-CABECERA-MICRO-END*/
/*HH-MEGAMENU-START*/
/* Desplegable «Hoteles y destinos»: 3 columnas que se rellenan de arriba abajo (sin el hueco bajo Formentera) */
@media (min-width:992px){
#submenu-hoteles{display:block !important;column-count:3;column-gap:32px;width:min(1010px,calc(100vw - 48px)) !important;max-width:min(1010px,calc(100vw - 48px)) !important;padding:24px 28px 12px !important}
#submenu-hoteles>li{width:auto !important;break-inside:avoid;page-break-inside:avoid;margin:0 0 18px !important}
}
/*HH-MEGAMENU-END*/
/*HH-REVISION-1011-START*/
/* Revisión 10-11: sello de marca solo sobre la portada, intros cortas centradas, píldoras de habitaciones, carruseles de una foto, rejilla común de 1320, tarjetas de hotel y botón «subir» */
body:has(.marca-hotel) header .marca-hotel{transition:opacity .2s,visibility .2s}
html.hh-scrolled body:has(.marca-hotel) header .marca-hotel{opacity:0;visibility:hidden}
body:has(.marca-hotel) .intro .ul-card__description:not(:has(.hh-keyfacts)){column-count:1 !important;max-width:720px !important;margin-inline:auto !important;text-align:center !important}
body:has(.marca-hotel) .htt-contentExtraElement h3{font-size:clamp(20px,1.6vw,26px) !important;line-height:1.15 !important}
body:has(.marca-hotel) .htt-preview-app-content>p:not(.price_from_container){font-size:clamp(20px,1.6vw,27px) !important;line-height:1.15 !important}
body:has(.marca-hotel) .htt-preview-app-content .price_from_container{font-size:15px !important}
body:has(.marca-hotel) .htt-preview-app-content .price_from{font-size:20px !important}
.htt-swiper-buttons-wrapper:has(.swiper-button-lock){display:none !important}
section[class*="hh-"]>.container-fluid.w80{max-width:1320px !important}
.hh-hotels .text-hotel{flex-wrap:wrap}
.hh-hotels .text-hotel>p:nth-of-type(3){flex-basis:100%}
#buttonScrollToTop{bottom:140px !important}
.hh-brands .ul-title-text{letter-spacing:.14em !important;font-size:24px !important;line-height:1.2 !important}
body:has(.marca-hotel) .hero-section .ul-tagline-text,body:has(.marca-hotel) .ul-hero .ul-tagline-text{color:var(--hh-mar-claro) !important}
/*HH-REVISION-1011-END*/
/*HH-OFFCANVAS-START*/
/* Menú lateral (hamburguesa): panel tinta a la derecha, enlaces en Marcellus, secundarios en versalitas, logo, teléfono y Rewards; fondo atenuado */
header .offcanvas.offcanvas-start{left:auto !important;right:0 !important;top:0 !important;width:min(460px,100vw) !important;height:100vh !important;max-height:100dvh;background-color:var(--hh-tinta) !important;background-image:radial-gradient(120% 60% at 100% 0%,rgba(44,122,123,.35),rgba(44,122,123,0) 60%) !important;text-align:left !important;box-shadow:0 0 0 100vmax rgba(14,19,38,.5),-30px 0 60px rgba(0,0,0,.25);padding:26px 44px 96px !important;flex-direction:column;overflow-y:auto;border:0 !important}
header .offcanvas.offcanvas-start.show{display:flex !important;animation:hhOcIn .35s cubic-bezier(.2,.7,.2,1)}
@keyframes hhOcIn{from{transform:translateX(48px);opacity:0}to{transform:none;opacity:1}}
header .offcanvas .offcanvas-header{display:flex;align-items:center;justify-content:space-between !important;padding:0 0 28px !important;margin:0 0 8px;border-bottom:1px solid rgba(255,255,255,.12)}
header .offcanvas .hh-oc-logo{display:inline-flex;align-items:center;color:#fff !important;text-decoration:none}
header .offcanvas .hh-oc-logo img{max-height:48px !important;width:auto}
header .offcanvas .hh-oc-logo .hh-hlogo{transform:scale(.9);transform-origin:left center}
header .offcanvas .btn-close{width:40px;height:40px;padding:0 !important;margin:0 !important;border-radius:50%;border:1px solid rgba(255,255,255,.35);opacity:1 !important;filter:none !important;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='%23fff' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center/14px no-repeat !important;transition:background-color .2s}
header .offcanvas .btn-close:hover,header .offcanvas .btn-close:focus-visible{background-color:rgba(255,255,255,.12) !important;outline:none}
header .offcanvas .offcanvas-body{padding:0 !important;flex:1 0 auto;display:flex;flex-direction:column;align-items:stretch !important;overflow:visible}
header .offcanvas .offcanvas-body>.navbar-nav{display:grid !important;grid-template-columns:1fr 1fr;column-gap:20px;width:100% !important;padding:0 !important;margin:0 !important;flex:0 0 auto}
header .offcanvas .navbar-nav>.nav-item{grid-column:1/-1;border-bottom:1px solid rgba(255,255,255,.08)}
header .offcanvas .navbar-nav .nav-link,header .offcanvas .navbar-nav .nav-link span{color:#fff !important}
header .offcanvas .navbar-nav>.nav-item>.nav-link{display:flex;align-items:center;padding:13px 0 !important;font-family:var(--fontPrimary) !important;font-size:26px !important;line-height:1.15 !important;letter-spacing:0 !important;transition:color .2s,transform .2s}
header .offcanvas .navbar-nav>.nav-item>.nav-link::before{content:"";width:0;height:1px;margin-right:0;background:var(--hh-mar-claro);transition:width .25s,margin .25s}
header .offcanvas .navbar-nav>.nav-item>.nav-link:hover,header .offcanvas .navbar-nav>.nav-item>.nav-link:focus-visible{transform:translateX(4px);outline:none}
header .offcanvas .navbar-nav>.nav-item>.nav-link:hover::before,header .offcanvas .navbar-nav>.nav-item>.nav-link:focus-visible::before,header .offcanvas .navbar-nav>.nav-item>.nav-link.active::before{width:22px;margin-right:12px}
header .offcanvas .navbar-nav>.nav-item>.nav-link.active,header .offcanvas .navbar-nav>.nav-item>.nav-link.active span{color:var(--hh-mar-claro) !important}
header .offcanvas .navbar-nav>.nav-item:nth-child(n+9){grid-column:auto;border-bottom:0}
header .offcanvas .navbar-nav>.nav-item:nth-child(9){margin-top:26px}
header .offcanvas .navbar-nav>.nav-item:nth-child(10){margin-top:26px}
header .offcanvas .navbar-nav>.nav-item:nth-child(n+9)>.nav-link{font-family:var(--fontSecondary) !important;font-size:12px !important;font-weight:600;letter-spacing:.14em !important;text-transform:uppercase;padding:9px 0 !important}
header .offcanvas .navbar-nav>.nav-item:nth-child(n+9)>.nav-link,header .offcanvas .navbar-nav>.nav-item:nth-child(n+9)>.nav-link span{color:rgba(255,255,255,.7) !important}
header .offcanvas .navbar-nav>.nav-item:nth-child(n+9)>.nav-link:hover span{color:#fff !important}
header .offcanvas .navbar-nav>.nav-item:nth-child(n+9)>.nav-link::before{display:none}
header .offcanvas .hh-oc-foot{margin-top:auto;padding-top:28px;display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;font-family:var(--fontSecondary);font-size:14px}
header .offcanvas .hh-oc-foot a{color:#fff !important;display:inline-flex;align-items:center;gap:8px;text-decoration:none;opacity:.9}
header .offcanvas .hh-oc-foot a:hover{opacity:1;text-decoration:underline}
header .offcanvas .hh-oc-foot img{width:16px;height:16px;filter:brightness(0) invert(1);opacity:.85}
@media (max-width:575px){header .offcanvas.offcanvas-start{padding:20px 24px 96px !important}header .offcanvas .navbar-nav>.nav-item>.nav-link{font-size:23px !important;padding:11px 0 !important}}
/*HH-OFFCANVAS-END*/
