:root{--spa-ink:#06120f;--spa-forest:#0d231e;--spa-gold:#d8b76a;--spa-gold-soft:#e4d39a;--spa-warm:#ffffffeb;--spa-warm-70:#ffffffb3;--spa-warm-50:#ffffff80;--spa-warm-22:#ffffff38;--spa-font-display:"Cinzel", ui-serif, Georgia, "Times New Roman", serif;--spa-font-sans:"Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--spa-radius-card:18px;--spa-radius-pill:999px;--spa-shadow-card:0 30px 80px #00000059;--spa-shadow-hover:0 44px 130px #00000085, 0 0 0 1px #d8b76a1f;--spa-ease:cubic-bezier(.2, .8, .2, 1)}*,:before,:after{box-sizing:border-box}html,body{background:var(--spa-ink);height:100%;color:var(--spa-warm);font-family:var(--spa-font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;overscroll-behavior:none;margin:0;padding:0;overflow:hidden}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}::selection{background:var(--spa-gold);color:var(--spa-ink)}.spa-splash{isolation:isolate;width:100%;height:100dvh;position:relative;overflow:hidden}.spa-bg{z-index:0;transform-origin:50%;will-change:transform;background-image:url(/images/ramcen/spa-holistico-merida.png);background-position:50%;background-repeat:no-repeat;background-size:cover;animation:8s cubic-bezier(.2,.8,.2,1) forwards spa-zoom-bg;position:absolute;inset:0;transform:scale(1.05)}@keyframes spa-zoom-bg{0%{transform:scale(1.05)}to{transform:scale(1)}}.spa-overlay{z-index:1;pointer-events:none;background:#06121073;position:absolute;inset:0}.spa-vignette{z-index:1;pointer-events:none;height:18vh;position:absolute;left:0;right:0}.spa-vignette--top{background:linear-gradient(#0612108c,#0000);top:0}.spa-vignette--bottom{background:linear-gradient(#0000,#061210a6);height:22vh;bottom:0}.spa-stage{z-index:2;flex-direction:column;justify-content:center;align-items:center;gap:clamp(2.2rem,4.5vh,3.6rem);width:100%;height:100%;padding:clamp(4.5rem,8vh,6.5rem) clamp(1.25rem,5vw,4rem) clamp(2.5rem,5vh,4rem);display:flex;position:relative}.spa-header{text-align:center;place-items:center;gap:clamp(1.2rem,2.4vh,1.85rem);width:100%;max-width:62rem;margin:0 auto;display:grid}.spa-eyebrow{color:var(--spa-gold);letter-spacing:.32em;text-transform:uppercase;animation:spa-rise 1s .15s var(--spa-ease) both;justify-content:center;align-items:center;gap:.55rem;margin:0;font-size:clamp(.62rem,.9vw,.78rem);font-weight:800;display:inline-flex}.spa-eyebrow__sep{color:var(--spa-warm-50);font-weight:500;transform:translateY(-1px)}.spa-divider{color:var(--spa-gold);animation:spa-rise 1s .35s var(--spa-ease) both;justify-self:center;align-items:center;gap:.9rem;margin:.15rem auto 0;display:inline-flex}.spa-divider__line{background:linear-gradient(90deg, transparent, var(--spa-gold) 50%, transparent);opacity:.65;width:clamp(2rem,7vw,4.5rem);height:1px;display:inline-block}.spa-divider__leaf{width:22px;height:11px;color:var(--spa-gold);filter:drop-shadow(0 0 6px #d8b76a40)}.spa-title{color:var(--spa-gold-soft);font-family:var(--spa-font-display);letter-spacing:.45em;text-indent:.45em;text-transform:uppercase;animation:spa-rise 1s .55s var(--spa-ease) both;margin:0;font-size:clamp(1.1rem,1.6vw,1.45rem);font-weight:500}.spa-name{color:var(--spa-warm);font-family:var(--spa-font-display);letter-spacing:.04em;text-transform:uppercase;text-wrap:balance;animation:spa-rise-blur 1.3s .8s var(--spa-ease) both;will-change:transform, opacity, filter;margin:.15rem 0 0;font-size:clamp(3.6rem,9.5vw,7.4rem);font-weight:600;line-height:.92}.spa-name__word{background:linear-gradient(180deg, #fff 0%, var(--spa-warm) 60%, var(--spa-gold-soft) 100%);color:#0000;text-shadow:0 0 60px #d8b76a1f;-webkit-background-clip:text;background-clip:text;display:inline-block}.spa-tag{color:var(--spa-warm-70);letter-spacing:.42em;text-indent:.42em;text-transform:uppercase;animation:spa-rise 1s 1.15s var(--spa-ease) both;justify-content:center;align-items:baseline;gap:.55rem;margin:0;font-size:clamp(.78rem,1.15vw,1.02rem);font-weight:500;display:inline-flex}.spa-tag__amp{color:var(--spa-gold);font-family:var(--spa-font-display);letter-spacing:0;text-indent:0;font-style:italic;font-weight:500;transform:translateY(-1px)}.spa-description{width:100%;max-width:36rem;color:var(--spa-warm-70);animation:spa-rise 1s 1.45s var(--spa-ease) both;justify-self:center;margin:.5rem auto 0;font-size:clamp(.9rem,1.15vw,1.05rem);font-weight:400;line-height:1.65}.spa-cta{gap:clamp(1rem,2.2vh,1.6rem);width:100%;max-width:64rem;margin:0 auto;display:grid}.spa-cta__label{color:var(--spa-gold);letter-spacing:.36em;text-indent:.36em;text-transform:uppercase;animation:spa-rise 1s 1.7s var(--spa-ease) both;justify-content:center;align-items:center;gap:1rem;margin:0;font-size:clamp(.65rem,.95vw,.82rem);font-weight:800;display:flex}.spa-cta__line{background:linear-gradient(90deg, transparent, var(--spa-gold) 50%, transparent);opacity:.55;width:clamp(1.4rem,5vw,3.4rem);height:1px;display:inline-block}.spa-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.3rem,2.8vw,2.2rem);display:grid}@media (width>=1100px){.spa-cards{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1180px;margin-inline:auto}}.spa-card{isolation:isolate;text-align:left;width:100%;color:var(--spa-warm);border-radius:var(--spa-radius-card);-webkit-backdrop-filter:blur(14px)saturate(115%);box-shadow:var(--spa-shadow-card);transition:transform .35s var(--spa-ease), border-color .35s var(--spa-ease), box-shadow .35s var(--spa-ease);will-change:transform, opacity;-webkit-tap-highlight-color:transparent;background:radial-gradient(circle at 22% 0,#d8b76a1a,#0000 55%),linear-gradient(165deg,#0d231e8c 0%,#0612108c 100%);border:1px solid #e4d39a24;outline:none;position:relative;overflow:hidden}.spa-card:first-of-type{animation:spa-card-in 1.05s 1.95s var(--spa-ease) both}.spa-card:nth-of-type(2){animation:spa-card-in 1.05s 2.1s var(--spa-ease) both}.spa-card:nth-of-type(3){animation:spa-card-in 1.05s 2.25s var(--spa-ease) both}.spa-card--mixto{--spa-card-accent:var(--spa-gold)}.spa-card--hombres{--spa-card-accent:var(--spa-gold-soft)}.spa-card--temazcal{--spa-card-accent:#c98a4b}.spa-card__glow{z-index:0;pointer-events:none;opacity:0;transition:opacity .35s var(--spa-ease);will-change:opacity;background:radial-gradient(circle,#e4d39a1a,#0000 65%);position:absolute;inset:0}.spa-card__shine{z-index:1;pointer-events:none;border-radius:inherit;opacity:0;transition:opacity .35s var(--spa-ease);will-change:opacity;position:absolute;inset:0;overflow:hidden}.spa-card__shine:before{content:"";width:55%;height:220%;transition:transform .9s var(--spa-ease);will-change:transform;background:linear-gradient(100deg,#0000 30%,#e4d39a8c 50%,#0000 70%);position:absolute;top:0;left:0;transform:translate(-120%)rotate(18deg)}.spa-card__inner{z-index:2;text-align:center;grid-template-rows:auto auto auto auto 1fr;justify-items:center;gap:clamp(.55rem,1.2vh,.85rem);min-height:clamp(15rem,32vh,21rem);padding:clamp(1.4rem,2.4vw,2.1rem) clamp(1.4rem,2.6vw,2.3rem);display:grid;position:relative}.spa-card__icon{width:3.2rem;height:3.2rem;color:var(--spa-card-accent,var(--spa-gold));transition:transform .5s var(--spa-ease);will-change:transform;justify-content:center;align-items:center;margin-bottom:clamp(.5rem,1.4vh,1rem);display:inline-flex}.spa-card__icon svg{filter:drop-shadow(0 0 8px #d8b76a2e);width:100%;height:100%}.spa-card__eyebrow{color:var(--spa-gold);letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;font-size:clamp(.6rem,.8vw,.72rem);font-weight:800}.spa-card__title{color:var(--spa-warm);font-family:var(--spa-font-display);letter-spacing:.03em;text-transform:uppercase;justify-content:center;align-items:center;width:100%;min-height:2.04em;font-size:clamp(1.65rem,2.4vw,2.25rem);font-weight:600;line-height:1.02;display:flex}.spa-card__sub{color:var(--spa-warm-70);letter-spacing:.14em;text-transform:uppercase;font-size:clamp(.82rem,1.05vw,.95rem)}.spa-card__cta{color:var(--spa-gold-soft);letter-spacing:.22em;text-transform:uppercase;transition:gap .3s var(--spa-ease), color .3s var(--spa-ease);align-self:end;align-items:center;gap:.55rem;margin-top:clamp(.9rem,2vh,1.6rem);font-size:clamp(.7rem,.9vw,.8rem);font-weight:800;display:inline-flex}.spa-card__cta svg{width:1.2rem;height:.6rem}.spa-card:hover,.spa-card:focus-visible{box-shadow:var(--spa-shadow-hover);border-color:#d8b76a8c;transform:translateY(-8px)scale(1.03)}.spa-card:hover .spa-card__glow,.spa-card:focus-visible .spa-card__glow,.spa-card:hover .spa-card__shine,.spa-card:focus-visible .spa-card__shine{opacity:1}.spa-card:hover .spa-card__shine:before,.spa-card:focus-visible .spa-card__shine:before{transform:translate(220%)rotate(18deg)}.spa-card:hover .spa-card__icon,.spa-card:focus-visible .spa-card__icon{transform:translateY(-2px)rotate(2deg)}.spa-card:hover .spa-card__cta,.spa-card:focus-visible .spa-card__cta{color:var(--spa-gold);gap:.9rem}.spa-card:focus-visible{outline:2px solid var(--spa-gold);outline-offset:4px}.spa-card.is-pressed{transition-duration:.12s;transform:scale(.98)}.spa-pillars{z-index:3;pointer-events:none;width:100%;max-width:48rem;animation:spa-rise 1s 2.4s var(--spa-ease) both;margin:0 auto;position:relative}.spa-pillars__list{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(1.5rem,5vw,4rem);margin:0;padding:0;list-style:none;display:flex}.spa-pillar{pointer-events:auto;color:var(--spa-warm-50);letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;transition:color .3s var(--spa-ease);align-items:center;gap:.55rem;font-size:clamp(.6rem,.82vw,.72rem);font-weight:800;display:inline-flex}.spa-pillar__icon{width:1.1rem;height:1.1rem;color:var(--spa-gold);transition:transform .35s var(--spa-ease);justify-content:center;align-items:center;display:inline-flex}.spa-pillar__icon svg{width:100%;height:100%}.spa-pillar:hover{color:var(--spa-warm)}.spa-pillar:hover .spa-pillar__icon{color:var(--spa-gold-soft);transform:translateY(-2px)}.spa-logo{z-index:5;color:inherit;aspect-ratio:1;width:clamp(3rem,5.5vw,4.25rem);transition:transform .5s var(--spa-ease), filter .5s var(--spa-ease);will-change:transform, filter;animation:spa-logo-in 1.2s .1s var(--spa-ease) both;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:absolute;top:clamp(1rem,2.6vh,1.8rem);left:clamp(1rem,2.6vw,1.8rem)}.spa-logo img{object-fit:contain;filter:drop-shadow(0 2px 14px #0612108c)drop-shadow(0 0 18px #d8b76a1f);width:100%;height:100%;transition:filter .5s var(--spa-ease), transform .5s var(--spa-ease)}.spa-logo:hover,.spa-logo:focus-visible{outline:none;transform:scale(1.06)}.spa-logo:hover img,.spa-logo:focus-visible img{filter:drop-shadow(0 4px 22px #061210a6)drop-shadow(0 0 26px #d8b76a47)}.spa-logo:focus-visible{outline:2px solid var(--spa-gold);outline-offset:4px}@keyframes spa-logo-in{0%{opacity:0;filter:blur(4px);transform:translate(-10px,-8px)scale(.92)}to{opacity:1;filter:blur();transform:translate(0,0)scale(1)}}.spa-brand{z-index:3;color:var(--spa-warm-22);letter-spacing:.32em;text-transform:uppercase;pointer-events:none;animation:spa-rise 1s 2.6s var(--spa-ease) both;margin:0;font-size:.62rem;font-weight:700;position:absolute;bottom:clamp(.7rem,2vh,1.1rem);right:clamp(1rem,2.4vw,1.6rem)}@keyframes spa-rise{0%{opacity:0;filter:blur(4px);transform:translateY(18px)}to{opacity:1;filter:blur();transform:translate(0,0)}}@keyframes spa-rise-blur{0%{opacity:0;filter:blur(10px);transform:translateY(28px)}to{opacity:1;filter:blur();transform:translate(0,0)}}@keyframes spa-card-in{0%{opacity:0;filter:blur(6px);transform:translateY(36px)scale(.96)}to{opacity:1;filter:blur();transform:translate(0,0)scale(1)}}@media (prefers-reduced-motion:reduce){.spa-bg{animation:none;transform:scale(1)}.spa-eyebrow,.spa-divider,.spa-title,.spa-name,.spa-tag,.spa-description,.spa-cta__label,.spa-card,.spa-pillars,.spa-brand{opacity:1;filter:none;animation:none;transform:none}.spa-card,.spa-card__glow,.spa-card__shine,.spa-card__icon,.spa-card__cta,.spa-pillar,.spa-pillar__icon{transition:none}}@media (width<=760px){.spa-logo{width:2.25rem;top:.65rem;left:.65rem}.spa-bg{background-image:url(/images/ramcen/spa-holistico-merida-m.png);background-position:50% 18%;background-size:cover}.spa-stage{justify-content:center;gap:1.6rem;padding:3.5rem 1.1rem 1.2rem}.spa-header{gap:.85rem}.spa-eyebrow{letter-spacing:.26em;gap:.35rem;font-size:.58rem}.spa-divider{gap:.55rem;margin:0}.spa-divider__line{width:1.6rem}.spa-divider__leaf{width:18px;height:9px}.spa-title{letter-spacing:.38em;text-indent:.38em;font-size:clamp(.85rem,3.2vw,1rem)}.spa-name{font-size:clamp(2.9rem,13vw,4.4rem);line-height:.95}.spa-tag{letter-spacing:.3em;text-indent:.3em;gap:.3rem;font-size:clamp(.66rem,2.6vw,.8rem)}.spa-description{max-width:26rem;margin-top:.15rem;font-size:.82rem;line-height:1.5}.spa-cta{gap:.85rem}.spa-cta__label{letter-spacing:.28em;text-indent:.28em;gap:.6rem;font-size:.62rem}.spa-cta__line{width:1.4rem}.spa-cards{grid-template-columns:1fr;gap:1rem}.spa-card__inner{gap:.5rem;min-height:7.8rem;padding:1.05rem 1.25rem}.spa-card__icon{width:1.85rem;height:1.85rem;margin-bottom:.1rem}.spa-card__eyebrow{letter-spacing:.26em;font-size:.56rem}.spa-card__title{letter-spacing:.02em;font-size:1.35rem}.spa-card__sub{letter-spacing:.12em;font-size:.7rem}.spa-card__cta{gap:.4rem;margin-top:.35rem;font-size:.66rem}.spa-card__cta svg{width:1rem;height:.5rem}.spa-pillars{margin-top:0}.spa-pillars__list{justify-content:center;gap:.55rem 1.15rem}.spa-pillar{letter-spacing:.2em;text-indent:.2em;gap:.3rem;font-size:.54rem}.spa-pillar__icon{width:.8rem;height:.8rem}.spa-brand{display:none}}@media (width<=380px){.spa-logo{width:2rem;top:.55rem;left:.55rem}.spa-stage{padding-top:2.75rem;padding-inline:.85rem}.spa-name{font-size:clamp(2.55rem,14vw,3.8rem)}.spa-title{letter-spacing:.3em;text-indent:.3em;font-size:.82rem}.spa-tag{letter-spacing:.24em;text-indent:.24em;font-size:.62rem}.spa-description{font-size:.76rem}.spa-card__inner{padding:.8rem 1rem}.spa-card__title{font-size:1.2rem}}@media (height<=720px){.spa-card__inner{min-height:12rem}.spa-header{gap:.35rem}.spa-description{font-size:.85rem;line-height:1.5}}@media (width<=760px) and (height<=640px){.spa-stage{gap:.55rem;padding-top:2.75rem;padding-bottom:.8rem}.spa-header{gap:.25rem}.spa-eyebrow,.spa-title,.spa-tag,.spa-description{display:none}.spa-name{font-size:clamp(2rem,8vw,2.8rem)}.spa-cards{gap:.45rem}.spa-card__inner{min-height:5.8rem;padding:.7rem 1rem}.spa-card__icon{display:none}.spa-card__title{font-size:1.15rem}.spa-card__sub,.spa-card__cta,.spa-pillars{display:none}}
