﻿@font-face{font-family:Spectral;src:url(./assets/fonts/spectral-latin-200-normal.woff2) format('woff2');font-style:normal;font-weight:200;font-display:swap}
@font-face{font-family:Spectral;src:url(./assets/fonts/spectral-latin-300-normal.woff2) format('woff2');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Spectral;src:url(./assets/fonts/spectral-latin-300-italic.woff2) format('woff2');font-style:italic;font-weight:300;font-display:swap}
@font-face{font-family:Geist;src:url(./assets/fonts/geist-latin-wght-normal.woff2) format('woff2');font-style:normal;font-weight:100 900;font-display:swap}

:root{color-scheme:light;--rose:#c94983;--rose-action:#ab3e6f;--rose-deep:#8c2a5b;--rose-soft:#f3e3ed;--paper:#faf4f7;--ink:#1b1015;--muted:#594a51;--copper:#b8734f;--serif:Spectral,Georgia,serif;--sans:Geist,Arial,sans-serif;--page:1280px;--edge:clamp(22px,6.3vw,92px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}img,video{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:4px}.skip-link{position:absolute;z-index:50;top:-100px;left:18px;padding:10px 15px;background:#fff;color:var(--rose-deep)}.skip-link:focus{top:12px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.site-header{position:sticky;z-index:20;top:0;background:rgba(250,244,247,.97);border-bottom:1px solid rgba(140,42,91,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.header-inner{width:min(100%,1440px);height:88px;margin:auto;padding:0 clamp(24px,5.8vw,82px);display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{flex:0 0 auto;display:flex;align-items:center}.brand img{width:auto;height:74px;max-width:350px;object-fit:contain;object-position:left center}.desktop-nav{display:flex;align-items:center;gap:clamp(17px,2.15vw,31px)}.desktop-nav>a:not(.button){font-size:14px;text-decoration:none;white-space:nowrap}.desktop-nav>a:not(.button):hover,.site-footer nav a:hover{color:var(--rose-deep)}.desktop-nav .header-phone{font-weight:650}.mobile-header-actions{display:none}.button{display:inline-flex;min-height:48px;padding:12px 21px;align-items:center;justify-content:center;border:1px solid var(--rose-action);background:var(--rose-action);color:#fff;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.015em;transition:background .2s,border-color .2s,transform .2s}.button:hover{background:var(--rose-deep);border-color:var(--rose-deep);transform:translateY(-2px)}.button-small{min-height:44px;padding:10px 19px}.button-pink{background:var(--rose-action);border-color:var(--rose-action);color:#fff}.button-pink:hover{background:var(--rose-deep);border-color:var(--rose-deep)}.nav-disclosure{display:none}.chapter-index{margin:0 0 22px;color:#f5d2e2;font-size:11px;font-weight:600;letter-spacing:.19em;line-height:1.4}.chapter-index span{margin-left:11px;color:inherit}.eyebrow{margin:0 0 14px;color:var(--rose-deep);font-size:11px;font-weight:650;letter-spacing:.17em;line-height:1.5}.opening-kicker{margin:0 0 clamp(25px,4vw,48px);color:rgba(255,255,255,.76);font-size:10px;font-weight:600;letter-spacing:.2em}.opening-kicker span{color:#f0a4c8}

/* Home: opening scene and two concise editorial chapters. */
.spa-opening{position:relative;isolation:isolate;min-height:min(850px,calc(100svh - 88px));height:min(850px,calc(100svh - 88px));overflow:hidden;background:#221219;color:#fff}.opening-media,.opening-shade{position:absolute;inset:0}.opening-media{z-index:-2;background:#21131a}.opening-still,.opening-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%}.opening-film{opacity:0;transition:opacity 1.1s ease}.opening-media.is-playing .opening-film{opacity:1}.opening-media.is-playing .opening-still{opacity:0;transition:opacity 1.1s ease}.opening-shade{z-index:-1;background:linear-gradient(90deg,rgba(24,9,17,.9) 0%,rgba(32,12,23,.78) 31%,rgba(40,14,28,.24) 67%,rgba(28,12,18,.12) 100%),linear-gradient(0deg,rgba(22,10,16,.68),transparent 35%)}.opening-copy{position:absolute;left:max(var(--edge),calc((100vw - 1280px)/2 + 30px));top:50%;width:min(650px,57vw);transform:translateY(-43%)}.opening-copy h1,.service-opening-copy h1,.spa-page-copy h1{margin:0;color:#fff;font:300 clamp(62px,8.4vw,126px)/.87 var(--serif);letter-spacing:-.065em}.opening-copy h1 em,.service-opening-copy h1 em,.spa-page-copy h1 em{color:#efb1ce;font-weight:300}.opening-lead{max-width:450px;margin:25px 0 0;color:rgba(255,255,255,.85);font-size:clamp(15px,1.35vw,18px);line-height:1.65}.opening-actions{display:flex;align-items:center;flex-wrap:wrap;gap:26px;margin-top:30px}.light-link,.editorial-link{display:inline-flex;min-height:24px;align-items:center;gap:12px;color:#fff;font-size:13px;font-weight:550;text-decoration:none;text-underline-offset:5px}.light-link span,.editorial-link span{color:#f0a4c8;font-size:17px;transition:transform .2s}.light-link:hover span,.editorial-link:hover span{transform:translate(3px,-2px)}.opening-scroll{position:absolute;min-height:28px;padding-block:6px;bottom:36px;left:max(var(--edge),calc((100vw - 1280px)/2 + 30px));display:flex;align-items:center;gap:16px;color:#fff;font-size:9px;font-weight:600;letter-spacing:.19em;text-decoration:none}.opening-scroll i{position:relative;width:57px;height:1px;background:rgba(255,255,255,.35);overflow:hidden}.opening-scroll i::after{position:absolute;left:0;top:0;width:20px;height:1px;background:#efa7c7;content:"";animation:line-travel 2.8s ease-in-out infinite}@keyframes line-travel{0%{transform:translateX(-100%)}100%{transform:translateX(290%)}}.opening-mark{position:absolute;right:var(--edge);bottom:34px;color:#fff;font-size:9px;letter-spacing:.18em;text-decoration:none}
.hair-chapter{position:relative;min-height:760px;padding:clamp(88px,11vw,150px) max(var(--edge),calc((100vw - 1180px)/2));display:grid;grid-template-columns:minmax(340px,.95fr) minmax(340px,.9fr);align-items:center;gap:clamp(80px,13vw,185px);overflow:hidden;background:var(--paper)}.hair-image{height:clamp(500px,57vw,730px);max-width:510px;justify-self:center;overflow:hidden;background:#d5c2ca}.hair-image img{object-position:center 37%;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.hair-image:hover img{transform:scale(1.025)}.hair-copy{max-width:475px;padding:20px 0}.ink-index{color:var(--rose-deep)}.hair-copy h2,.massage-copy h2,.visit-band h2,.editorial-heading h2,.treatment-heading h2,.bride-copy h2,.four-hands-copy h2,.local-cta h2{margin:0;font:300 clamp(54px,6.5vw,94px)/.92 var(--serif);letter-spacing:-.06em}.hair-copy h2 em,.visit-band h2 em,.editorial-heading h2 em,.treatment-heading h2 em,.bride-copy h2 em,.four-hands-copy h2 em,.local-cta h2 em{color:var(--rose-deep);font-weight:300}.chapter-lead{max-width:430px;margin:25px 0 0;color:#40343a;font-size:16px;line-height:1.75}.hair-detail{margin:23px 0;color:#685860;font-size:12px;letter-spacing:.015em}.editorial-link{margin-top:16px;color:var(--rose-deep);text-decoration:underline;text-decoration-color:rgba(140,42,91,.45);text-underline-offset:6px}.editorial-link span{color:var(--rose-deep)}.vertical-note{position:absolute;right:30px;top:50%;writing-mode:vertical-rl;transform:translateY(-50%);color:#695a61;font-size:9px;letter-spacing:.18em}
.massage-chapter{position:relative;min-height:690px;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;background:#291820;color:#fff}.massage-image{position:absolute;inset:0 0 0 42%;overflow:hidden}.massage-image::after{position:absolute;inset:0;background:linear-gradient(90deg,#291820 0%,rgba(41,24,32,.9) 13%,rgba(41,24,32,.3) 60%,rgba(30,17,23,.12)),linear-gradient(0deg,rgba(29,15,21,.28),transparent 35%);content:""}.massage-image img{object-position:center 39%;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}.massage-chapter:hover .massage-image img{transform:scale(1.018)}.massage-copy{position:relative;z-index:1;grid-column:1;padding:100px 0 106px max(var(--edge),calc((100vw - 1180px)/2));max-width:610px}.massage-copy h2{font-size:clamp(57px,6.5vw,92px)}.massage-copy h2 em,.massage-copy .chapter-index{color:#efb1ce}.massage-copy .chapter-lead{max-width:410px;color:rgba(255,255,255,.83)}.massage-types{margin:25px 0 28px;color:rgba(255,255,255,.7);font-size:12px;line-height:1.7}.massage-types i{padding:0 6px;color:#efa7c7;font-style:normal}.massage-caption{position:absolute;right:var(--edge);bottom:28px;color:rgba(255,255,255,.8);font-size:9px;letter-spacing:.18em}
.visit-band{padding:clamp(76px,10vw,128px) max(var(--edge),calc((100vw - 1180px)/2));display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:8vw;background:#f2e5ec}.visit-band h2{font-size:clamp(50px,5.5vw,76px)}.visit-details{display:flex;flex-direction:column;align-items:flex-start;gap:9px;color:#43363d;font-size:14px}.visit-details p{margin:0 0 8px;line-height:1.8}.visit-details>a:not(.button){color:var(--rose-deep);text-decoration:none;font-weight:600}.visit-details .button{margin-top:17px}.site-footer{padding:45px var(--edge) 27px;text-align:center;color:#695a61;font-size:12px}.footer-brand{color:var(--rose-deep);font:400 25px/1.25 var(--serif);text-decoration:none}.site-footer>p{margin:8px 0 15px}.site-footer nav{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin:13px 0}.site-footer nav a{font-size:11px;text-underline-offset:4px}.site-footer .legal-links{gap:18px}.site-footer small{display:block;margin-top:24px;color:#695a61;font-size:10px}

/* Service interiors share an editorial rhythm while giving each ritual its own scene. */
.service-opening,.spa-page-opening{position:relative;isolation:isolate;min-height:min(800px,calc(100svh - 88px));height:min(800px,calc(100svh - 88px));overflow:hidden;background:#25161e;color:#fff}.service-opening-image,.spa-page-media,.service-opening-shade,.spa-page-shade{position:absolute;inset:0}.service-opening-image,.spa-page-media{z-index:-2}.service-opening-image img,.spa-page-media>img,.spa-page-media>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hair-opening .service-opening-image img{object-position:center 37%}.massage-opening .service-opening-image img{object-position:center 38%}.service-opening-shade,.spa-page-shade{z-index:-1;background:linear-gradient(90deg,rgba(24,10,17,.86),rgba(35,14,25,.7) 36%,rgba(40,17,29,.15) 72%),linear-gradient(0deg,rgba(23,11,17,.68),transparent 40%)}.service-opening-copy,.spa-page-copy{position:absolute;left:max(var(--edge),calc((100vw - 1180px)/2));top:50%;width:min(650px,63vw);transform:translateY(-43%)}.service-opening-copy h1,.spa-page-copy h1{font-size:clamp(58px,7.5vw,108px)}.service-opening-copy .chapter-index,.spa-page-copy .chapter-index{margin:0 0 23px}.service-opening-copy .opening-lead,.spa-page-copy .opening-lead{max-width:455px;margin:24px 0 29px}.service-image-note{position:absolute;right:var(--edge);bottom:29px;color:#fff;font-size:9px;letter-spacing:.17em}.editorial-section{width:min(100%,1320px);margin:auto;padding:clamp(95px,11vw,148px) var(--edge);display:grid;grid-template-columns:.86fr 1.14fr;grid-template-rows:auto 1fr;align-items:center;column-gap:clamp(50px,9vw,130px);row-gap:46px}.editorial-heading{grid-column:1;grid-row:1}.editorial-heading h2,.treatment-heading h2{font-size:clamp(54px,6vw,82px)}.editorial-heading>p:last-child,.treatment-heading>p:last-child{max-width:390px;margin:19px 0 0;color:#63535b;font-size:14px;line-height:1.75}.editorial-photo{grid-column:2;grid-row:1 / span 2;height:clamp(490px,57vw,730px);overflow:hidden;background:#d8c5cd}.editorial-photo img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.editorial-photo:hover img{transform:scale(1.02)}.service-list{grid-column:1;grid-row:2;border-top:1px solid rgba(108,75,91,.27)}.service-list article{display:grid;grid-template-columns:36px 1fr;gap:17px;padding:18px 0;border-bottom:1px solid rgba(108,75,91,.27)}.service-list article>span{padding-top:2px;color:var(--rose-deep);font:300 17px var(--serif)}.service-list h3{margin:0 0 4px;font:400 23px/1.25 var(--serif)}.service-list article p{margin:0;color:#65565d;font-size:12px;line-height:1.6}
.treatment-editorial{padding:clamp(78px,9vw,118px) max(var(--edge),calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(55px,10vw,145px);background:#f1e4ec}.treatment-heading>p:last-child{max-width:410px}.treatment-rail{margin:0;padding:0;list-style:none;border-top:1px solid #cdb4c0}.treatment-rail li{position:relative;padding:14px 3px 14px 25px;border-bottom:1px solid #cdb4c0;font:400 clamp(18px,2vw,24px)/1.3 var(--serif)}.treatment-rail li::before{position:absolute;left:2px;top:23px;width:6px;height:6px;background:var(--rose-deep);content:""}
.bride-feature,.four-hands-feature{width:min(100%,1320px);margin:auto;padding:clamp(88px,11vw,148px) var(--edge);display:grid;grid-template-columns:1.05fr .85fr;align-items:center;gap:clamp(56px,11vw,155px)}.bride-photo,.four-hands-image{height:clamp(420px,48vw,620px);overflow:hidden;background:#dac6ce}.bride-photo img{object-position:center 38%}.bride-copy h2,.four-hands-copy h2{font-size:clamp(50px,6vw,82px)}.bride-copy>p:not(.chapter-index),.four-hands-copy>p:not(.chapter-index){max-width:430px;margin:23px 0 0;color:#584951;font-size:14px;line-height:1.8}.bride-copy .hair-detail{font-size:12px}.bride-copy .editorial-link,.four-hands-copy .editorial-link{margin-top:14px}
.massage-list article{padding:23px 0}.massage-list h3{font-size:25px}.massage-list article p{font-size:13px}.four-hands-feature{grid-template-columns:1fr .88fr}.four-hands-image img{object-position:center 40%}.four-hands-copy .massage-types{color:#695b62}.four-hands-copy .editorial-link{margin-top:12px}
.spa-page-media>img{object-position:center 43%;transition:opacity 1s}.spa-page-media>video{opacity:0;transition:opacity 1s}.spa-page-media.is-playing>video{opacity:1}.spa-page-media.is-playing>img{opacity:0}.ritual-section{padding-top:clamp(100px,12vw,160px);padding-bottom:clamp(100px,12vw,160px)}.ritual-section .editorial-photo{height:clamp(460px,53vw,680px)}.ritual-list article{padding:22px 0}.ritual-list h3{font-size:25px}.ritual-list article p{font-size:13px}.local-cta{padding:clamp(72px,9vw,115px) 22px;background:#f2e5ec;text-align:center}.local-cta h2{font-size:clamp(48px,6vw,78px)}.local-cta>.button{margin-top:27px}.local-cta>p:last-child{margin:19px 0 0;color:#67565e;font-size:12px}
.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.js-motion .reveal.is-visible{opacity:1;transform:translateY(0)}.js-motion .editorial-photo.reveal,.js-motion .hair-image.reveal,.js-motion .bride-photo.reveal,.js-motion .four-hands-image.reveal{transition-delay:.06s}

@media(max-width:900px){.header-inner{padding-inline:26px;gap:18px}.brand img{height:64px;max-width:290px}.desktop-nav{gap:16px}.desktop-nav>a:not(.button){font-size:12px}.desktop-nav .header-phone{display:none}.opening-copy{width:min(630px,66vw)}.hair-chapter{gap:7vw;padding-inline:7vw}.massage-copy{padding-left:7vw}.editorial-section{column-gap:6vw;padding-inline:7vw}.service-opening-copy,.spa-page-copy{left:7vw}.treatment-editorial,.bride-feature,.four-hands-feature}
@media(max-width:760px){html{scroll-padding-top:70px}.header-inner{height:68px;padding:0 18px;gap:10px}.brand img{height:49px;max-width:185px}.desktop-nav{display:none}.mobile-header-actions{display:flex;align-items:center;gap:10px}.mobile-header-actions .button-small{min-height:37px;padding:8px 13px;font-size:11px;white-space:nowrap}.nav-disclosure{display:block;position:relative}.nav-disclosure summary{width:40px;height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;list-style:none;cursor:pointer}.nav-disclosure summary::-webkit-details-marker{display:none}.nav-disclosure summary>span:not(.visually-hidden){width:21px;height:1px;background:var(--rose-deep)}.nav-disclosure nav{position:absolute;right:-7px;top:48px;width:min(315px,calc(100vw - 28px));padding:15px 17px;background:var(--paper);border:1px solid rgba(140,42,91,.15);box-shadow:0 16px 34px #24121d24}.nav-disclosure[open] nav{display:grid}.nav-disclosure nav>a{padding:12px 5px;border-bottom:1px solid #eadfe5;font-size:13px;text-decoration:none}.nav-disclosure nav .nav-book{margin-top:9px;padding:12px;background:var(--rose-deep);color:#fff;text-align:center}.spa-opening{min-height:calc(100svh - 68px);height:calc(100svh - 68px);max-height:820px}.opening-still,.opening-film{object-position:55% center}.opening-shade{background:linear-gradient(180deg,rgba(24,9,17,.03) 0%,rgba(26,9,18,.14) 25%,rgba(27,12,20,.74) 54%,rgba(27,12,20,.95) 100%)}.opening-copy{left:22px;right:22px;top:auto;bottom:94px;width:auto;transform:none}.opening-kicker{margin-bottom:28px;font-size:9px}.opening-copy .chapter-index{margin-bottom:13px;font-size:9px}.opening-copy h1{font-size:clamp(52px,13vw,78px);line-height:.88}.opening-lead{max-width:440px;margin-top:17px;font-size:14px;line-height:1.55}.opening-actions{display:grid;justify-items:start;gap:16px;margin-top:20px}.opening-actions .button{min-height:45px}.opening-scroll{left:22px;bottom:27px;gap:11px;font-size:8px}.opening-mark{right:20px;bottom:27px;font-size:8px}.hair-chapter{min-height:0;padding:66px 22px 74px;display:flex;flex-direction:column;align-items:stretch;gap:0}.hair-image{width:calc(100% - 17px);height:min(124vw,510px);margin-left:17px}.hair-copy{position:relative;z-index:1;max-width:none;margin:-68px 18px 0 0;padding:29px 24px 28px 21px;background:var(--paper)}.hair-copy .chapter-index{margin-bottom:15px}.hair-copy h2{font-size:clamp(49px,12vw,70px)}.hair-copy .chapter-lead{margin-top:17px;font-size:14px}.hair-copy .hair-detail{margin:15px 0;font-size:11px}.vertical-note{display:none}.massage-chapter{min-height:0;display:flex;flex-direction:column;align-items:stretch;padding:0 0 47px}.massage-image{position:relative;inset:auto;width:100%;height:min(108vw,470px)}.massage-image::after{background:linear-gradient(0deg,#291820 0%,rgba(41,24,32,.12) 56%,rgba(41,24,32,.04))}.massage-copy{max-width:none;margin-top:-55px;padding:0 23px 0;grid-column:auto}.massage-copy .chapter-index{margin-bottom:14px}.massage-copy h2{font-size:clamp(52px,12vw,72px)}.massage-copy .chapter-lead{margin-top:17px;font-size:14px}.massage-types{margin:18px 0 16px;font-size:11px}.massage-caption{right:22px;top:22px;bottom:auto;max-width:150px;text-align:right;font-size:8px;line-height:1.5}.visit-band{padding:60px 23px 66px;grid-template-columns:1fr;gap:28px}.visit-band h2{font-size:clamp(48px,11vw,65px)}.visit-details{gap:8px;font-size:13px}.visit-details .button{margin-top:11px}.site-footer{padding:35px 20px 24px}.site-footer nav{gap:13px 19px}.site-footer .legal-links{gap:12px 18px}
.service-opening,.spa-page-opening{min-height:calc(100svh - 68px);height:calc(100svh - 68px);max-height:780px}.service-opening-image img,.spa-page-media>img,.spa-page-media>video{object-position:58% center}.service-opening-shade,.spa-page-shade{background:linear-gradient(180deg,rgba(24,9,17,.02) 0%,rgba(26,9,18,.08) 24%,rgba(27,12,20,.64) 52%,rgba(27,12,20,.94) 100%)}.service-opening-copy,.spa-page-copy{left:22px;right:22px;top:auto;bottom:56px;width:auto;transform:none}.service-opening-copy .opening-kicker,.spa-page-copy .opening-kicker{margin-bottom:21px;font-size:9px}.service-opening-copy .chapter-index,.spa-page-copy .chapter-index{margin-bottom:14px;font-size:9px}.service-opening-copy h1,.spa-page-copy h1{font-size:clamp(50px,12.5vw,74px);line-height:.9}.service-opening-copy .opening-lead,.spa-page-copy .opening-lead{margin:17px 0 20px;font-size:14px}.service-opening-copy .button,.spa-page-copy .button{min-height:44px}.service-image-note{right:20px;bottom:20px;max-width:140px;text-align:right;font-size:8px;line-height:1.5}
.editorial-section{padding:70px 22px 76px;display:flex;flex-direction:column;align-items:stretch;gap:25px}.editorial-heading h2,.treatment-heading h2{font-size:clamp(48px,11vw,66px)}.editorial-heading>p:last-child,.treatment-heading>p:last-child{margin-top:14px;font-size:13px}.editorial-photo{height:min(110vw,470px);order:1}.editorial-heading{order:0}.service-list{order:2}.service-list article{padding:16px 0;grid-template-columns:31px 1fr;gap:13px}.service-list h3{font-size:22px}.service-list article p{font-size:12px}.treatment-editorial{padding:63px 23px 69px;grid-template-columns:1fr;gap:27px}.treatment-rail li{padding:13px 3px 13px 21px;font-size:19px}.treatment-rail li::before{top:21px}.bride-feature,.four-hands-feature{padding:70px 22px 75px;display:flex;flex-direction:column;align-items:stretch;gap:25px}.bride-photo,.four-hands-image{height:min(99vw,420px);width:calc(100% - 14px)}.bride-copy h2,.four-hands-copy h2{font-size:clamp(49px,11vw,67px)}.bride-copy>p:not(.chapter-index),.four-hands-copy>p:not(.chapter-index){margin-top:16px;font-size:13px}.bride-copy .hair-detail{margin-top:10px;font-size:11px}.bride-copy .editorial-link,.four-hands-copy .editorial-link{margin-top:7px}.massage-list article{padding:18px 0}.massage-list h3{font-size:23px}.massage-list article p{font-size:12px}.spa-page-media>img,.spa-page-media>video{object-position:56% center}.ritual-section .editorial-photo{height:min(102vw,440px)}.ritual-list article{padding:17px 0}.ritual-list h3{font-size:23px}.ritual-list article p{font-size:12px}.local-cta{padding:63px 22px 65px}.local-cta h2{font-size:clamp(47px,11vw,68px)}.local-cta>p:last-child{font-size:11px}}
@media(max-width:380px){.header-inner{padding-inline:13px}.brand img{max-width:153px;height:43px}.mobile-header-actions{gap:7px}.mobile-header-actions .button-small{padding-inline:9px;font-size:10px}.nav-disclosure summary{width:36px}.opening-copy,.service-opening-copy,.spa-page-copy{left:18px;right:18px}.opening-copy h1{font-size:51px}.opening-lead{font-size:13px}.opening-actions{gap:13px}.opening-mark{font-size:7px}.chapter-lead{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.opening-scroll i::after{animation:none}.opening-film,.spa-page-media>video,.js-motion .reveal{opacity:1!important;transform:none!important}}

/* Acento de novedad sobre la imagen protagonista del Spa. */
.opening-kicker .new-service-label{display:inline-block;margin-right:10px;padding:6px 11px;border:1px solid #efb1ce;background:#8c2a5b;color:#fff;font-size:12px;font-weight:700;letter-spacing:.15em;box-shadow:0 4px 18px rgba(0,0,0,.28)}

/* PeluquerÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­a: se recupera el hero original de 72 fotogramas WebP. */
.hair-film-track{position:relative;height:205svh;min-height:1680px;background:#1b1015;color:#fff;isolation:isolate}
.hair-film-sticky{position:sticky;top:88px;height:calc(100svh - 88px);min-height:570px;overflow:hidden;background:#1b1015}
.hair-film-media,.hair-film-shade{position:absolute;inset:0}
.hair-film-media{z-index:0;overflow:hidden;background:#211219}
.hair-film-poster,.hair-film-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 45%}
.hair-film-poster{filter:saturate(.92) contrast(1.04) brightness(.82);transition:opacity .7s ease}
.hair-film-canvas{opacity:0;filter:saturate(.92) contrast(1.04) brightness(.82);transition:opacity .7s ease}
.hair-film-media.is-frames-live .hair-film-poster{opacity:0}
.hair-film-media.is-frames-live .hair-film-canvas{opacity:1}
.hair-film-shade{z-index:1;background:linear-gradient(90deg,rgba(22,9,16,.9) 0%,rgba(29,12,21,.76) 33%,rgba(30,13,22,.28) 62%,rgba(24,11,18,.06) 100%),linear-gradient(0deg,rgba(23,11,17,.68),transparent 38%)}
.hair-film-copy{position:absolute;z-index:2;left:max(var(--edge),calc((100vw - 1180px)/2));top:50%;width:min(690px,57vw);transform:translateY(calc(-48% + var(--hair-copy-y,0px)));opacity:var(--hair-copy-opacity,1);transition:opacity .18s linear;will-change:transform,opacity}
.hair-film-copy .opening-kicker{margin:0 0 20px;color:rgba(255,255,255,.8);font-size:10px;line-height:1.5;letter-spacing:.19em}
.hair-proof{margin:0 0 18px;color:rgba(255,255,255,.83);font-size:11px;letter-spacing:.045em}
.hair-proof span{color:#e0a282;letter-spacing:.12em}
.hair-film-copy h1{margin:0;color:#fff;font:300 clamp(66px,8vw,112px)/.91 var(--serif);letter-spacing:-.065em;text-wrap:balance}
.hair-film-copy h1 em{color:#efb1ce;font-weight:300}
.hair-film-copy .opening-lead{max-width:560px;margin:22px 0 0;color:rgba(255,255,255,.86);font-size:clamp(14px,1.3vw,17px);line-height:1.65}
.hair-film-copy .opening-actions{display:flex;align-items:center;flex-wrap:wrap;gap:17px;margin-top:24px}
.hair-film-note{position:absolute;z-index:2;right:var(--edge);bottom:28px;color:#fff;font-size:9px;font-weight:600;letter-spacing:.18em}
.hair-film-progress{position:absolute;z-index:2;left:max(var(--edge),calc((100vw - 1180px)/2));right:max(var(--edge),calc((100vw - 1180px)/2));bottom:0;height:2px;background:rgba(255,255,255,.25)}
.hair-film-progress i{display:block;width:100%;height:100%;background:#e0a282;transform:scaleX(var(--hair-film-progress,0));transform-origin:left center}
.hair-film-track[data-motion-mode="reduced"]{height:auto;min-height:0}
.hair-film-track[data-motion-mode="reduced"] .hair-film-sticky{position:relative;top:auto;height:min(800px,calc(100svh - 88px));min-height:540px}
.hair-film-track[data-motion-mode="reduced"] .hair-film-copy{transform:translateY(-48%);opacity:1}
.hair-film-track[data-motion-mode="reduced"] .hair-film-progress,.hair-film-track[data-motion-mode="reduced"] .hair-film-note{display:none}

/* PeluquerÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­a: servicios y resultados originales en una retÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­cula editorial. */
.hair-services .editorial-heading>p:last-child{max-width:48ch;margin-top:18px;color:var(--muted);font-size:14px}
.service-list article small{display:block;margin-top:8px;color:#695a61;font-size:11px;letter-spacing:.025em}
.hair-results{display:grid;grid-template-columns:1fr 1.1fr 1fr;align-items:start;gap:22px;padding:0 max(var(--edge),calc((100vw - 1180px)/2)) clamp(85px,10vw,140px);background:var(--paper)}
.hair-result{position:relative;min-width:0;overflow:hidden;background:#eadce4}
.hair-result--tall{margin-top:78px}
.hair-result img{width:100%;height:clamp(320px,39vw,530px);object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}
.hair-result:nth-child(1) img{object-position:center 44%}
.hair-result:nth-child(2) img{height:clamp(390px,47vw,620px);object-position:center 38%}
.hair-result:nth-child(3) img{object-position:center 45%}
.hair-result:hover img{transform:scale(1.025)}
.hair-result figcaption{padding:13px 15px;background:#f4e8ef;color:#634d58;font:italic 300 15px/1.3 var(--serif)}
.treatment-editorial{align-items:start}
.treatment-heading>p:last-child{max-width:51ch;color:#574a50;line-height:1.75}
.treatment-rail{list-style:none;display:grid;gap:0;margin:0;padding:0;border-top:1px solid rgba(140,42,91,.2)}
.treatment-rail li{position:relative;display:grid;grid-template-columns:42px 1fr;align-items:start;gap:14px;padding:19px 0;border-bottom:1px solid rgba(140,42,91,.32)}
.treatment-rail li::before{display:none}
.treatment-rail li>span{padding-top:6px;color:var(--rose-deep);font-size:10px;font-weight:650;letter-spacing:.1em}
.treatment-rail h3{margin:0;color:var(--ink);font:400 clamp(22px,2.1vw,29px)/1.15 var(--serif)}
.treatment-rail p{max-width:52ch;margin:8px 0 0;color:#574a50;font-size:13px;line-height:1.65}
.bride-photo img{object-position:center 34%}
.bride-copy .hair-detail{max-width:39ch;color:#574a50;font-size:12px;line-height:1.7}

/* Spa Capilar: el mismo relato de cinco capÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­tulos y cuatro fotografÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­as del sitio publicado. */
.mr-spa-odyssey{--spa-progress:0;--container-pad:var(--edge);--max-w:1280px;--porcelana:var(--paper);--font-serif:var(--serif);--font-sans:var(--sans);position:relative;height:320svh;min-height:0;color:#fff;background:linear-gradient(180deg,#170a11 0%,#0d070b 82%,#160a10 100%);isolation:isolate}
.mr-spa-sticky{position:sticky;top:0;height:100svh;min-height:620px;overflow:hidden;background:#160a10;touch-action:pan-y pinch-zoom}
.mr-spa-media-stage,.mr-spa-media,.mr-spa-media::after,.mr-spa-shade,.mr-spa-release{position:absolute;inset:0}
.mr-spa-media-stage{z-index:1;overflow:hidden;background:#160a10}
.mr-spa-media{margin:0;display:grid;place-items:center;overflow:hidden;opacity:0;visibility:hidden;background:#160a10;transition:opacity .32s cubic-bezier(.2,.7,.2,1),visibility 0s linear .32s}
.mr-spa-media.is-active{opacity:1;visibility:visible;transition-delay:0s}
.mr-spa-media img{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--spa-object-position,50% 50%);filter:saturate(.92) contrast(1.06) brightness(.78);transform:scale(var(--spa-image-scale,1.035)) translate3d(var(--spa-image-x,0),var(--spa-image-y,0),0);transform-origin:var(--spa-origin,50% 50%);will-change:transform;transition:filter .8s ease,transform .15s linear}
.mr-spa-media video{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;object-fit:cover;object-position:var(--spa-object-position,50% 50%);filter:saturate(.94) contrast(1.05) brightness(.82);transform:scale(var(--spa-image-scale,1.035));opacity:0;transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .25s linear;pointer-events:none}
.mr-spa-media.is-playing video{opacity:1}
.mr-spa-media::after{content:"";z-index:1;pointer-events:none;background:linear-gradient(var(--spa-grade,rgba(92,39,24,.08)),var(--spa-grade,rgba(92,39,24,.08))),linear-gradient(180deg,rgba(8,4,7,.22) 0%,transparent 28%,transparent 64%,rgba(8,4,7,.72) 100%),radial-gradient(110% 95% at 52% 44%,transparent 46%,rgba(8,4,7,.36) 100%)}
[data-spa-media="0"]{--spa-object-position:50% 46%;--spa-grade:rgba(105,45,24,.08);--spa-origin:55% 44%}
[data-spa-media="1"]{--spa-object-position:50% 50%;--spa-grade:rgba(156,93,45,.18);--spa-origin:38% 58%}
[data-spa-media="2"]{--spa-object-position:50% 42%;--spa-grade:rgba(52,28,20,.24);--spa-origin:64% 46%}
[data-spa-media="3"]{--spa-object-position:50% 45%;--spa-grade:rgba(96,20,80,.32);--spa-origin:50% 38%}
[data-spa-media="4"]{--spa-object-position:50% 42%;--spa-grade:rgba(44,54,70,.12);--spa-origin:50% 54%}
[data-spa-media="1"] img{filter:saturate(1.02) contrast(1.05) brightness(.86) sepia(.08)}
[data-spa-media="2"] img{filter:saturate(.78) contrast(1.1) brightness(.8) sepia(.06)}
[data-spa-media="3"] img{filter:saturate(1.08) contrast(1.06) brightness(.78) hue-rotate(-8deg)}
[data-spa-media="4"] img{filter:saturate(.7) contrast(1.02) brightness(.9) sepia(.03)}
.mr-spa-shade{z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(8,4,7,.8) 0%,rgba(8,4,7,.46) 28%,rgba(8,4,7,.12) 58%,rgba(8,4,7,.18) 100%),linear-gradient(180deg,rgba(8,4,7,.38) 0%,transparent 28%,transparent 70%,rgba(8,4,7,.58) 100%)}
.mr-spa-release{z-index:7;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(239,177,206,.1) 70%,#160a10 100%);opacity:calc(var(--spa-progress,0) * var(--spa-progress,0) * .38);transform:translate3d(0,50%,0)}
.mr-spa-chapters{position:absolute;z-index:5;inset:0;width:min(100%,var(--max-w));margin-inline:auto;padding-inline:var(--container-pad);pointer-events:none}
.mr-spa-chapter{position:absolute;left:clamp(1.25rem,8vw,8rem);top:50%;width:min(36rem,42vw);opacity:0;visibility:hidden;transform:translate3d(0,calc(-50% + 22px),0);transition:opacity .26s ease,transform .34s cubic-bezier(.2,.7,.2,1),visibility 0s linear .26s;isolation:isolate}
.mr-spa-chapter::before{content:"";position:absolute;z-index:-2;inset:-7rem -9rem -8rem -5rem;pointer-events:none;background:radial-gradient(ellipse at 25% 50%,rgba(8,4,7,.62) 0%,rgba(8,4,7,.22) 44%,transparent 76%);filter:blur(18px)}
.mr-spa-chapter[data-spa-chapter="0"]::before{background:radial-gradient(ellipse at 25% 50%,rgba(8,4,7,.8) 0%,rgba(8,4,7,.36) 48%,transparent 78%)}
.mr-spa-chapter.is-active{opacity:1;visibility:visible;transform:translate3d(0,-50%,0);transition-delay:0s;pointer-events:auto}
.mr-spa-scene-number{position:absolute;z-index:-1;top:-.55em;right:-.12em;color:rgba(224,162,130,.13);font:300 clamp(7rem,15vw,13rem)/.7 var(--serif);letter-spacing:-.07em;pointer-events:none;user-select:none}
[data-spa-chapter="1"] .mr-spa-scene-number{top:.02em;left:-.08em;right:auto;color:rgba(245,210,226,.12)}
[data-spa-chapter="2"] .mr-spa-scene-number{top:-1.1em;right:auto;bottom:auto;left:-.08em;color:rgba(224,162,130,.12)}
[data-spa-chapter="3"] .mr-spa-scene-number{top:-1.35em;left:50%;right:auto;color:rgba(245,210,226,.14);transform:translateX(-50%)}
[data-spa-chapter="4"] .mr-spa-scene-number{top:-.6em;right:.15em;color:rgba(224,162,130,.1)}
.mr-spa-title,.mr-spa-chapter h2{max-width:11ch;margin:0;color:#fff;font:300 clamp(3.5rem,7.4vw,7.4rem)/.9 var(--serif);letter-spacing:-.045em;text-wrap:balance;text-shadow:0 2px 30px rgba(7,3,5,.46)}
.mr-spa-title em,.mr-spa-chapter h2 em{color:#e0a282;font-style:italic}
.mr-spa-chapter>p:not(.opening-kicker):not(.eyebrow){max-width:40ch;margin:1.5rem 0 0;color:rgba(253,251,253,.9);font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.65;text-shadow:0 1px 22px rgba(7,3,5,.72)}
.mr-spa-chapter .opening-kicker{margin:0 0 20px;color:rgba(255,255,255,.8);font-size:10px;letter-spacing:.19em}
.mr-spa-chapter .spa-exclusive{margin:0 0 14px;color:#e0a282;font-size:10px;font-weight:650;letter-spacing:.17em}
.mr-spa-chapter .button{margin-top:24px}.mr-spa-chapter .light-link{margin-top:24px}
.mr-spa-afterword{position:absolute;z-index:10;left:50%;bottom:clamp(1.4rem,3.6vh,2.8rem);width:min(calc(100% - 2 * var(--container-pad)),44rem);text-align:center;transform:translateX(-50%);pointer-events:none}
.mr-spa-afterword p{margin:0;display:inline-block;padding:.75rem 2.2rem;color:#fdfbfd;font:italic 300 clamp(1.05rem,1.8vw,1.35rem)/1.35 var(--serif);letter-spacing:-.01em;background:radial-gradient(ellipse 95% 85% at 50% 50%,rgba(20,9,15,.88) 0%,rgba(14,6,11,.65) 75%,transparent 100%);border-block:1px solid rgba(224,162,130,.45);text-shadow:0 1px 14px #000,0 2px 28px rgba(0,0,0,.9)}
.mr-spa-scene-rail{position:fixed;z-index:8;top:50%;right:clamp(16px,2.8vw,40px);display:none;flex-direction:column;gap:1px;padding:7px;background:rgba(8,4,7,.72);border:1px solid rgba(239,177,206,.24);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transform:translateY(-50%);transition:opacity .2s ease,visibility .2s ease}
.mr-spa-odyssey[data-spa-enhanced] .mr-spa-scene-rail{display:flex}
.mr-spa-scene-rail button{position:relative;display:grid;place-items:center;width:34px;height:36px;padding:0;border:0;background:transparent;color:rgba(255,255,255,.82);font:600 9px/1 var(--sans);letter-spacing:.12em;cursor:pointer}
.mr-spa-scene-rail button::after{position:absolute;left:50%;bottom:4px;width:10px;height:1px;background:currentColor;opacity:0;content:"";transform:translateX(-50%)}
.mr-spa-scene-rail button:hover{color:#fff}
.mr-spa-scene-rail button[aria-current="step"]{color:#f5d2e2}
.mr-spa-scene-rail button[aria-current="step"]::after{opacity:.8}
.mr-spa-scene-rail button:focus-visible{outline:2px solid #efb1ce;outline-offset:2px}
.mr-spa-skip{position:fixed;z-index:8;right:clamp(16px,2.8vw,40px);bottom:22px;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid rgba(255,255,255,.38);background:#0b0508;color:#fff;font-size:10px;font-weight:650;letter-spacing:.14em;line-height:1.3;text-transform:uppercase;text-decoration:none;text-shadow:0 1px 12px #000;box-shadow:0 8px 24px rgba(0,0,0,.45);transition:opacity .2s ease,visibility .2s ease}
.mr-spa-odyssey.is-ui-hidden .mr-spa-scene-rail,.mr-spa-odyssey.is-ui-hidden .mr-spa-skip{opacity:0;visibility:hidden;pointer-events:none}
.mr-spa-skip:hover{border-color:rgba(239,177,206,.55);color:#f5d2e2}
.mr-spa-skip:focus-visible{outline:2px solid #efb1ce;outline-offset:2px}
.mr-spa-odyssey::after{display:none}
@media(min-width:900px){
  .mr-spa-media[data-spa-media="1"]{left:auto;right:0;width:50%;border-left:1px solid rgba(224,162,130,.4)}
  .mr-spa-media[data-spa-media="2"]{inset:7% 8px 8% 46%;border:1px solid rgba(224,162,130,.3);box-shadow:0 30px 80px rgba(0,0,0,.42)}
  .mr-spa-chapter[data-spa-chapter="1"]{left:clamp(1.25rem,5vw,5rem);width:min(34rem,40vw);top:38%}
  .mr-spa-chapter[data-spa-chapter="1"] h2{max-width:9ch}
  .mr-spa-chapter[data-spa-chapter="1"] h2 em{color:#f0bd8f}
  .mr-spa-chapter[data-spa-chapter="2"]{left:clamp(1.25rem,5vw,5rem);width:min(34rem,38vw);top:52%}
  .mr-spa-chapter[data-spa-chapter="2"] h2{max-width:9ch}
  .mr-spa-chapter[data-spa-chapter="2"] h2 em{color:#d9a07a}
  .mr-spa-chapter[data-spa-chapter="3"]{left:50%;right:auto;width:min(46rem,64vw);top:50%;text-align:center;transform:translate3d(-50%,calc(-50% + 22px),0)}
  .mr-spa-chapter[data-spa-chapter="3"].is-active{transform:translate3d(-50%,-50%,0)}
  .mr-spa-chapter[data-spa-chapter="3"] h2{max-width:12ch;margin-inline:auto}
  .mr-spa-chapter[data-spa-chapter="3"]>p:not(.opening-kicker):not(.eyebrow){margin-inline:auto}
  .mr-spa-chapter[data-spa-chapter="3"] h2 em{color:#f0a4c8}
  .mr-spa-chapter[data-spa-chapter="3"]::before{inset:-6rem -8rem;background:radial-gradient(ellipse at 50% 50%,rgba(8,4,7,.74) 0%,rgba(8,4,7,.32) 48%,transparent 78%)}
  .mr-spa-chapter[data-spa-chapter="4"]{top:44%;width:min(44rem,50vw)}
}
@media(max-width:899px){
  .hair-film-track{height:210svh;min-height:1640px}
  .hair-film-sticky{top:68px;height:calc(100svh - 68px);min-height:520px}
  .hair-film-poster,.hair-film-canvas{object-position:63% 44%}
  .hair-film-shade{background:linear-gradient(180deg,rgba(19,8,15,.02) 0%,rgba(22,9,16,.05) 28%,rgba(24,10,18,.62) 54%,rgba(24,10,18,.95) 100%),linear-gradient(90deg,rgba(24,9,17,.16),transparent 76%)}
  .hair-film-copy{left:22px;right:22px;top:auto;bottom:60px;width:auto;transform:translateY(var(--hair-copy-y,0px))}
  .hair-film-copy .opening-kicker{max-width:34ch;margin-bottom:12px;font-size:9px}
  .hair-proof{margin-bottom:10px;font-size:10px}
  .hair-film-copy h1{font-size:clamp(55px,12vw,78px);line-height:.9}
  .hair-film-copy .opening-lead{max-width:39ch;margin-top:14px;font-size:13px;line-height:1.48}
  .hair-film-copy .opening-actions{gap:12px;margin-top:15px}
  .hair-film-copy .button{min-height:43px}
  .hair-film-note{display:none}
  .hair-film-progress{left:0;right:0}
  .hair-results{grid-template-columns:1fr;gap:18px;padding:0 22px 76px}
  .hair-result--tall{margin-top:0}
  .hair-result img,.hair-result:nth-child(2) img{height:min(104vw,470px)}
  .hair-results .hair-result:nth-child(2){width:calc(100% - 28px);margin-left:28px}
  .mr-spa-odyssey{height:320svh;min-height:0}
  .mr-spa-sticky{min-height:0}
  .mr-spa-media img{object-position:var(--spa-object-position,50% 44%)}
  [data-spa-media="0"]{--spa-object-position:50% 46%}
  [data-spa-media="1"]{--spa-object-position:38% 50%}
  [data-spa-media="2"]{--spa-object-position:45% 42%}
  [data-spa-media="3"]{--spa-object-position:55% 45%}
  [data-spa-media="4"]{--spa-object-position:68% 48%}
  .mr-spa-media[data-spa-media="2"]{inset:12px 12px 0;border:1px solid rgba(224,162,130,.28);box-shadow:none}
  .mr-spa-scene-number{display:none}
  .mr-spa-shade{background:linear-gradient(180deg,rgba(8,4,7,.1) 0%,transparent 28%,rgba(8,4,7,.42) 52%,rgba(8,4,7,.95) 100%),linear-gradient(90deg,rgba(8,4,7,.2),transparent 72%)}
  .mr-spa-chapter{left:var(--container-pad);right:var(--container-pad);top:auto;bottom:clamp(4.5rem,12vh,7rem);width:auto;transform:translate3d(0,22px,0)}
  .mr-spa-chapter.is-active{transform:translate3d(0,0,0)}
  .mr-spa-chapter::before{inset:-4rem -3rem -5rem}
  .mr-spa-chapter[data-spa-chapter="3"]{text-align:center}
  .mr-spa-chapter[data-spa-chapter="3"] h2{margin-inline:auto}
  .mr-spa-chapter[data-spa-chapter="3"]>p:not(.opening-kicker):not(.eyebrow){margin-inline:auto}
  .mr-spa-chapter[data-spa-chapter="3"]::before{inset:-4rem -3rem -5rem;background:radial-gradient(ellipse at 50% 50%,rgba(8,4,7,.72) 0%,rgba(8,4,7,.28) 48%,transparent 78%)}
  .mr-spa-title,.mr-spa-chapter h2{max-width:14ch;font-size:clamp(3.1rem,14vw,5.2rem)}
  .mr-spa-chapter>p:not(.opening-kicker):not(.eyebrow){max-width:34ch;margin-top:1rem;font-size:.98rem;line-height:1.55}
  .mr-spa-chapter .opening-kicker{margin-bottom:13px;font-size:9px}
  .mr-spa-chapter .spa-exclusive{margin-bottom:10px;font-size:9px}
  .mr-spa-chapter .button{margin-top:16px}
  .mr-spa-chapter .light-link{margin-top:16px}
  .mr-spa-chapter[data-spa-chapter="4"]::before{inset:-3.5rem -2rem -5rem;background:linear-gradient(90deg,rgba(8,4,7,.84) 0%,rgba(8,4,7,.56) 58%,rgba(8,4,7,.2) 100%);filter:blur(20px)}
  .mr-spa-chapter[data-spa-chapter="4"] h2,.mr-spa-chapter[data-spa-chapter="4"]>p:not(.opening-kicker):not(.eyebrow){text-shadow:0 2px 22px rgba(7,3,5,.88),0 1px 5px rgba(7,3,5,.72)}
  .mr-spa-chapter-final{bottom:clamp(6rem,15vh,8.5rem)}
  .mr-spa-scene-rail{top:82px;right:16px;flex-direction:row;padding:5px;transform:none}
  .mr-spa-scene-rail button{width:34px;height:34px}
  .mr-spa-skip{top:82px;left:16px;right:auto;bottom:auto;min-height:40px;padding:7px 9px;font-size:8px;letter-spacing:.12em}
  .mr-spa-skip-extra{display:none}
  .mr-spa-afterword{bottom:clamp(.7rem,2.2vh,1.2rem);width:min(calc(100% - 2 * var(--container-pad)),30rem)}
  .mr-spa-afterword p{padding:.5rem 1rem;font-size:.8rem;line-height:1.3}
}
@media(max-width:760px){
  .hair-film-track[data-motion-mode="reduced"] .hair-film-sticky{height:calc(100svh - 68px);min-height:480px}
  .hair-film-copy{left:18px;right:18px;bottom:54px}
  .hair-film-copy .opening-lead{font-size:12px;line-height:1.45}
  .hair-film-copy .light-link{font-size:12px}
  .hair-film-copy .button{padding-inline:14px;font-size:12px}
}
@media(max-width:390px){
  .hair-film-copy h1{font-size:clamp(50px,12vw,62px)}
  .hair-film-copy .opening-kicker{font-size:8px}
  .hair-film-copy .opening-lead{font-size:11px}
  .mr-spa-title,.mr-spa-chapter h2{font-size:clamp(2.9rem,13.5vw,4rem)}
  .mr-spa-chapter>p:not(.opening-kicker):not(.eyebrow){font-size:.91rem}
}
@media(prefers-reduced-motion:reduce){
  .hair-film-track{height:auto;min-height:0}
  .hair-film-sticky{position:relative;top:auto;height:min(800px,calc(100svh - 88px));min-height:540px}
  .hair-film-canvas,.hair-film-progress,.hair-film-note{display:none!important}
  .hair-film-copy{transform:translateY(-48%);opacity:1}
  .mr-spa-odyssey{height:auto;min-height:0;padding-bottom:4rem}
  .mr-spa-sticky{position:relative;height:auto;min-height:0;overflow:visible;padding:3rem var(--container-pad) 0}
  .mr-spa-media-stage{position:relative;inset:auto;display:grid;gap:1rem;height:auto}
  .mr-spa-media{position:relative;inset:auto;display:block;aspect-ratio:16/9;opacity:1;visibility:visible;transition:none}
  .mr-spa-media[data-spa-media]{inset:auto;left:auto;right:auto;width:auto;border:0;box-shadow:none}
  .mr-spa-media img{position:absolute;inset:0;width:100%;height:100%;filter:saturate(.92) contrast(1.06) brightness(.82);transform:none;transition:none}
  .mr-spa-media video{display:none!important}
  .mr-spa-scene-rail,.mr-spa-skip,.mr-spa-scene-number{display:none!important}
  .mr-spa-shade,.mr-spa-release,.mr-spa-sticky::before,.mr-spa-sticky::after{display:none}
  .mr-spa-chapters{position:relative;inset:auto;display:grid;gap:2rem;width:min(100%,var(--max-w));padding:3rem 0 0}
  .mr-spa-chapter,.mr-spa-chapter.is-active{position:relative;inset:auto;left:auto;top:auto;bottom:auto;width:min(44rem,100%);opacity:1;visibility:visible;transform:none;transition:none;pointer-events:auto;color:var(--ink)}
  .mr-spa-chapter[data-spa-chapter],.mr-spa-chapter[data-spa-chapter].is-active{left:auto;right:auto;top:auto;bottom:auto;width:min(44rem,100%);text-align:left;transform:none}
  .mr-spa-chapter[data-spa-chapter] h2{margin-inline:0}
  .mr-spa-chapter[data-spa-chapter]>p:not(.opening-kicker):not(.eyebrow){margin-inline:0}
  .mr-spa-chapter::before{display:none}
  .mr-spa-title,.mr-spa-chapter h2{max-width:14ch;color:var(--ink);text-shadow:none}
  .mr-spa-title em,.mr-spa-chapter h2 em{color:var(--rose-deep)}
  .mr-spa-chapter>p:not(.opening-kicker):not(.eyebrow){color:var(--ink);text-shadow:none}
  .mr-spa-chapter .opening-kicker{color:var(--rose-deep)}
  .mr-spa-chapter .spa-exclusive{color:var(--rose-deep)}
  .mr-spa-afterword{position:relative;left:auto;bottom:auto;padding-top:2rem;transform:none}
  .mr-spa-afterword p{color:var(--ink);border-color:rgba(140,42,91,.3);background:transparent;text-shadow:none}
}

/* Ajuste tras la revisiÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n a 1440ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â900: los dos versos del hero deben permanecer ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­ntegros. */
.opening-copy{top:46%;width:min(730px,61vw)}
.opening-copy h1{font-size:clamp(60px,7.1vw,103px)}
.opening-copy h1>span,.opening-copy h1>em{display:block;white-space:nowrap}
@media(max-width:760px){.opening-copy{left:18px;right:18px;top:auto;bottom:106px;width:auto;transform:none}.opening-copy h1{font-size:clamp(34px,10vw,39px);line-height:.98}}

/* Ritual compacto: conserva los pasos confirmados sin repetir la fotografÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­a de los capÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­tulos. */
.spa-ritual-steps{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(40px,7vw,100px);padding:clamp(72px,9vw,112px) max(var(--edge),calc((100vw - 1180px)/2));background:var(--paper)}
.spa-ritual-head h2{margin:0;font:300 clamp(48px,5.6vw,76px)/.92 var(--serif);letter-spacing:-.055em}
.spa-ritual-head h2 em{color:var(--rose-deep);font-style:italic}
.spa-ritual-head>p:last-child{max-width:390px;margin:19px 0 0;color:#63535b;font-size:14px;line-height:1.75}
.spa-ritual-list{grid-column:2;grid-row:1;margin:0}
.spa-ritual-list article{padding:20px 0}
.spa-ritual-list h3{font-size:24px}
.spa-ritual-list article p{font-size:13px}
@media(max-width:899px){
  .spa-ritual-steps{grid-template-columns:1fr;gap:24px;padding:64px 22px 70px}
  .spa-ritual-head h2{font-size:clamp(44px,11.5vw,64px)}
  .spa-ritual-head>p:last-child{margin-top:14px;font-size:13px}
  .spa-ritual-list{grid-column:auto;grid-row:auto}
  .spa-ritual-list article{padding:16px 0}
  .spa-ritual-list h3{font-size:22px}
  .spa-ritual-list article p{font-size:12px}
}


/* Hero principal del Spa: recupera la proporciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n de la versiÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n del 28-10-2026 (~900 px en escritorio).
   Solo se aplica a .spa-page-opening; los heroes de PeluquerÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­a y Masajes (.service-opening) no cambian. */
.spa-page-opening{min-height:min(900px,100svh);height:min(900px,100svh)}
@media(max-width:900px){.spa-page-opening{min-height:calc(100svh - 68px);height:calc(100svh - 68px);max-height:none}}
/* ------------------------------------------------------------
   NOCHE DEL SPA ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â bloque editorial con la estructura de la web pÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âºblica
   (ritual, vÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­deo del arco, quÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â© incluye, MarÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­a y reseÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â±as).
   ------------------------------------------------------------ */
.spa-night{background:#160a10;color:#fdfbfd}
.spa-night section+section{border-top:1px solid rgba(239,177,206,.18)}
.spa-night .spa-ritual-steps{background:transparent;color:#fdfbfd}
.spa-night .spa-ritual-head h2{color:#fdfbfd}
.spa-night .spa-ritual-head h2 em{color:#f5d2e2}
.spa-night .spa-ritual-head>p:last-child{color:rgba(253,251,253,.76)}
.spa-night .spa-ritual-head .eyebrow{color:#f5d2e2}
.spa-night .spa-ritual-list{border-top:1px solid rgba(239,177,206,.22)}
.spa-night .spa-ritual-list article{border-bottom:1px solid rgba(239,177,206,.22)}
.spa-night .spa-ritual-list article>span{color:#e0a282}
.spa-night .spa-ritual-list h3{color:#fdfbfd}
.spa-night .spa-ritual-list article p{color:rgba(253,251,253,.72)}

.spa-section-title{margin:0;font:300 clamp(34px,4.4vw,58px)/1.02 var(--serif);letter-spacing:-.05em;color:#fdfbfd}
.spa-section-title em{font-style:italic;color:#f5d2e2}
.spa-section-intro{max-width:38rem;margin:16px auto 0;color:rgba(253,251,253,.76);font-size:15px;line-height:1.7}

.spa-motion{text-align:center;padding:clamp(72px,9vw,116px) var(--edge)}
.spa-motion-head{max-width:40rem;margin:0 auto clamp(28px,4vw,44px)}
.spa-motion-frame{margin:0 auto;max-width:460px;padding:.6rem;border:1px solid rgba(239,177,206,.3);background:transparent}
.spa-motion-video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#0d060a}
.spa-motion-frame figcaption{margin-top:14px;color:rgba(253,251,253,.7);font-size:10px;letter-spacing:.14em;text-transform:uppercase}

.spa-section{width:min(100%,1180px);margin-inline:auto;padding:clamp(66px,8vw,104px) var(--edge)}
.spa-section-head{max-width:40rem;margin-bottom:clamp(28px,4vw,44px)}
.spa-includes-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,6vw,80px);margin:0;padding:0}
.spa-includes-list li{border-top:1px solid rgba(239,177,206,.2);padding:16px 0;color:#fdfbfd;font:300 clamp(17px,1.6vw,21px)/1.3 var(--serif)}
.spa-maria-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,6vw,88px);align-items:center}
.spa-kicker{margin:0 0 16px;color:#f5d2e2;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.spa-maria-copy p{margin:16px 0 0;max-width:34rem;color:rgba(253,251,253,.76);font-size:15px;line-height:1.7}
.spa-portrait{margin:0}
.spa-portrait img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.spa-reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,72px)}
.spa-review{border-top:1px solid rgba(239,177,206,.26);padding-top:22px;display:flex;flex-direction:column;margin:0}
.spa-review-stars{color:#f5d2e2;font-size:13px;letter-spacing:.18em}
.spa-review-quote{margin:16px 0 0;font:italic 300 clamp(17px,1.6vw,21px)/1.55 var(--serif);color:#fdfbfd}
.spa-review-author{margin-top:20px;display:flex;flex-direction:column;gap:4px}
.spa-review-author strong{font-size:14px;font-weight:600;color:#fdfbfd}
.spa-review-author span{font-size:12px;color:rgba(253,251,253,.64)}
.spa-ambient-return{height:clamp(64px,9vw,120px);background:linear-gradient(to bottom,#160a10 0%,var(--paper) 100%)}

@media(max-width:899px){
  .spa-motion{padding:64px 22px}
  .spa-motion-frame{max-width:100%}
  .spa-section{padding:58px 22px}
  .spa-section-title{font-size:clamp(30px,9vw,42px)}
  .spa-section-intro{font-size:14px}
  .spa-includes-list{grid-template-columns:1fr}
  .spa-includes-list li{font-size:19px}
  .spa-maria-grid{grid-template-columns:1fr;gap:32px}
  .spa-portrait{max-width:440px}
  .spa-reviews-grid{grid-template-columns:1fr;gap:36px}
}
/* ------------------------------------------------------------
   Spa simplificado (02-11-2026): experiencia de producciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n en capÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­tulos,
   y cierre de reserva con su contenido original.
   ------------------------------------------------------------ */
.spa-experience{width:min(100%,1180px);margin-inline:auto;padding:clamp(66px,8vw,104px) var(--edge)}
.spa-chapter{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:baseline;padding-block:clamp(24px,3vw,34px);border-top:1px solid rgba(239,177,206,.2)}
.spa-chapter-title{margin:0;font:italic 300 clamp(22px,2vw,27px)/1.2 var(--serif);color:#f5d2e2}
.spa-chapter-text{margin:0;max-width:38rem;color:rgba(253,251,253,.78);font-size:15px;line-height:1.75}

.local-cta-lead{max-width:34rem;margin:18px auto 0;color:#5b4a53;font-size:14px;line-height:1.7}
.local-cta-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:26px}
.local-cta-actions .button{margin-top:0}
.button-outline{background:transparent;border-color:var(--rose-action);color:var(--rose-deep)}
.button-outline:hover{background:var(--rose-action);border-color:var(--rose-action);color:#fff}
.local-cta-place{margin:20px 0 0;color:#67565e;font-size:12px}

@media(max-width:899px){
  .spa-experience{padding:58px 22px}
  .spa-chapter{grid-template-columns:1fr;gap:10px;padding-block:22px}
  .spa-chapter-title{font-size:21px}
  .spa-chapter-text{font-size:14px}
  .local-cta-actions{flex-direction:column;align-items:stretch;gap:10px}
}
/* ============================================================
   SPA CAPILAR ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â· correcciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n de diseÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â±o 02-11-2026b
   ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âmbito: body.spa-page. No afecta a Home, PeluquerÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­a ni Masajes.
   - Umbral de luz y penumbra de producciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n.
   - HÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â©roe con la imagen horizontal aprobada (y recorte mÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³vil propio).
   - Experiencia en tres capÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­tulos con imagen gobernada por el scroll.
   - ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â«QuÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â© incluyeÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â» en papel: respiro claro entre dos actos oscuros.
   - MarÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­a, reseÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â±as y cierre de producciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n; pie completo de contacto.
   ============================================================ */

body.spa-page{
  --spa-bg:#2a141c;
  --spa-bg-deep:#2a141c;
  --spa-ink:#fdfbfd;
  --spa-soft:rgba(253,251,253,.78);
  --spa-line:rgba(239,177,206,.2);
  --spa-header:89px;
  background:var(--paper);
}
@media(max-width:760px){body.spa-page{--spa-header:69px}}

/* Umbral: de la luz del salÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n a la penumbra del spa */
body.spa-page .spa-threshold{background:var(--paper);padding-top:clamp(26px,3.6vw,40px)}
.spa-threshold-inner{width:min(100%,1364px);margin:auto;padding:0 var(--edge) 18px}
.spa-breadcrumb{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.16em;line-height:1.5;text-transform:uppercase}
.spa-breadcrumb a{color:var(--rose-deep);text-decoration:none}
.spa-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.spa-breadcrumb span[aria-hidden]{color:#b48c9f}
.spa-threshold-fade{height:clamp(48px,6vw,72px);background:linear-gradient(to bottom,var(--paper) 0%,var(--spa-bg) 100%);background:linear-gradient(in oklab to bottom,var(--paper) 0%,var(--spa-bg) 100%)}

/* HÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â©roe: imagen horizontal aprobada, copy a la izquierda */
body.spa-page .spa-page-opening{min-height:min(900px,calc(100svh - var(--spa-header)));height:min(900px,calc(100svh - var(--spa-header)));background:var(--spa-bg)}
body.spa-page .spa-page-media picture{position:absolute;inset:0;display:block;width:100%;height:100%}
body.spa-page .spa-page-media picture{position:absolute;inset:0;display:block;width:100%;height:100%;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 32px);mask-image:linear-gradient(to bottom,transparent 0,#000 32px)}
body.spa-page .spa-page-media picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
body.spa-page .spa-page-shade{background:linear-gradient(180deg,rgba(16,6,12,.66) 0%,rgba(16,6,12,.2) 9%,transparent 18%),linear-gradient(90deg,rgba(16,6,12,.95) 0%,rgba(21,8,15,.86) 30%,rgba(27,11,19,.38) 58%,rgba(27,12,20,.1) 82%,rgba(27,12,20,.1) 100%),linear-gradient(0deg,rgba(18,7,13,.78) 0%,rgba(18,7,13,.2) 46%,transparent 68%)}
body.spa-page .spa-page-copy{left:max(var(--edge),calc((100vw - 1180px)/2));width:min(660px,54vw)}
body.spa-page .spa-page-copy .chapter-index{color:#f5d2e2}
body.spa-page .service-image-note{color:rgba(253,251,253,.76)}
.spa-breadcrumb--hero{position:absolute;z-index:3;top:22px;left:max(var(--edge),calc((100vw - 1180px)/2));margin:0;color:rgba(253,251,253,.72)}
.spa-breadcrumb--hero a{color:#f5d2e2}
.spa-breadcrumb--hero span[aria-hidden]{color:rgba(253,251,253,.4)}

/* Noche del spa: penumbra de producciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n, no negro plano */
body.spa-page .spa-night{background:var(--spa-bg);color:var(--spa-ink)}
body.spa-page .spa-night--immersion{background:var(--spa-bg)}
body.spa-page .spa-night--intimacy{background:var(--spa-bg)}
body.spa-page .spa-night section+section{border-top:1px solid var(--spa-line)}

/* La experiencia: intro + secuencia de tres capÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­tulos */
body.spa-page .spa-experience{width:100%;margin:0;padding:clamp(56px,7vw,88px) 0 0}
body.spa-page .spa-experience-intro{width:min(100%,1364px);margin:0 auto;padding:0 var(--edge)}
body.spa-page .spa-experience-intro .spa-section-title{max-width:18ch}
body.spa-page .spa-section-title{color:var(--spa-ink)}
body.spa-page .spa-section-title em{color:#f5d2e2}
body.spa-page .spa-section-intro{color:var(--spa-soft)}
body.spa-page .spa-kicker{color:#e0a282}

.spa-odyssey{position:relative;height:200svh;margin-top:clamp(34px,5vw,56px);background:var(--spa-bg-deep)}
.spa-odyssey-stage{position:sticky;top:var(--spa-header);height:calc(100svh - var(--spa-header));overflow:hidden;background:var(--spa-bg-deep);color:var(--spa-ink);isolation:isolate}
.spa-odyssey-media{position:absolute;inset:0;z-index:-2;background:#150a10;transform:scale(var(--z,1));transform-origin:center;will-change:transform}
.spa-odyssey-frame{position:absolute;inset:0;opacity:0;visibility:hidden;transition:none}
.spa-odyssey-frame.is-active{opacity:1;visibility:visible;transition-delay:0s}
.spa-odyssey-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.spa-odyssey-frame[data-scene="0"] img{object-position:46% 50%}
.spa-odyssey-frame[data-scene="1"] img{object-position:44% 50%}
.spa-odyssey-frame[data-scene="2"] img{object-position:50% 50%}
.spa-odyssey-frame[data-scene="0"] img{filter:saturate(.96) contrast(1.03)}
.spa-odyssey-frame[data-scene="1"] img{filter:saturate(.9) contrast(1.04)}
.spa-odyssey-frame[data-scene="2"] img{filter:saturate(.93) contrast(1.02)}
.spa-odyssey-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,6,11,.93) 0%,rgba(19,8,14,.8) 31%,rgba(24,10,17,.44) 59%,rgba(24,10,17,.12) 84%,rgba(24,10,17,.08) 100%),linear-gradient(0deg,rgba(15,6,11,.78) 0%,rgba(15,6,11,.18) 42%,transparent 62%);transition:none}
.spa-odyssey[data-align="right"] .spa-odyssey-shade{transform:scaleX(-1)}
.spa-odyssey-copy{position:absolute;left:max(var(--edge),calc((100vw - 1180px)/2));top:0;width:min(570px,44vw);height:100%;display:block;z-index:2}
.spa-odyssey-chapter{position:absolute;left:0;right:0;top:44%;opacity:0;visibility:hidden;transform:translateY(14px);transition:none}
.spa-odyssey-chapter.is-active{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.spa-odyssey-index{margin:0 0 18px;color:#e0a282;font-size:10px;font-weight:650;letter-spacing:.2em;line-height:1.5;text-transform:uppercase}
.spa-odyssey-chapter h3{margin:0;color:#fff;font:300 clamp(44px,4.9vw,76px)/.96 var(--serif);letter-spacing:-.05em;text-wrap:balance}
.spa-odyssey-chapter h3 em{color:#f5d2e2;font-style:italic;font-weight:300}
.spa-odyssey-chapter>p:last-child{max-width:34rem;margin:22px 0 0;color:rgba(253,251,253,.82);font-size:clamp(15px,1.15vw,17px);line-height:1.72}
.spa-odyssey[data-align="right"] .spa-odyssey-copy{left:auto;right:max(var(--edge),calc((100vw - 1180px)/2))}
.spa-odyssey-progress{position:absolute;left:max(var(--edge),calc((100vw - 1180px)/2));right:max(var(--edge),calc((100vw - 1180px)/2));bottom:28px;height:1px;background:rgba(253,251,253,.18);z-index:3}
.spa-odyssey-progress::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent calc(33.333% - .5px),rgba(253,251,253,.42) 33.333%,transparent calc(33.333% + .5px),transparent calc(66.666% - .5px),rgba(253,251,253,.42) 66.666%,transparent calc(66.666% + .5px))}
.spa-odyssey-progress i{display:block;width:100%;height:100%;background:#e0a282;transform:scaleX(0);transform-origin:left center}
.spa-odyssey-note{position:absolute;right:max(var(--edge),calc((100vw - 1180px)/2));bottom:14px;margin:0;color:rgba(253,251,253,.6);font-size:9px;letter-spacing:.16em;text-transform:uppercase;z-index:3}

/* VÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­deo del ritual: misma composiciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n y tamaÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â±o que la web pÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âºblica */
body.spa-page .spa-motion{text-align:center;padding:clamp(72px,9vw,116px) var(--edge);border-top:1px solid var(--spa-line)}
body.spa-page .spa-motion-frame{max-width:460px;border:1px solid rgba(239,177,206,.3)}
body.spa-page .spa-motion-video{background:#0d060a}
body.spa-page .spa-motion-frame figcaption{color:rgba(253,251,253,.68)}

/* ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â«QuÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â© incluyeÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â»: el respiro de papel entre los dos actos oscuros */
body.spa-page .spa-includes-band{
  color:var(--ink);
  padding:calc(56px + clamp(44px,5.5vw,68px)) 0;
  background:var(--paper);
  border-top:1px solid rgba(140,42,91,.3);
  border-bottom:1px solid rgba(140,42,91,.3);
}
body.spa-page .spa-includes-inner{width:min(100%,1364px);margin:auto;padding:0 var(--edge)}
body.spa-page .spa-includes-band .spa-kicker{color:var(--rose-deep)}
body.spa-page .spa-includes-band .spa-section-title{color:var(--ink)}
body.spa-page .spa-includes-band .spa-section-title em{color:var(--rose-deep)}
body.spa-page .spa-includes-band .spa-section-intro{color:var(--muted)}
body.spa-page .spa-includes-list{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(32px,5vw,64px);border-bottom:1px solid rgba(140,42,91,.32)}
body.spa-page .spa-includes-list li{border-top:1px solid rgba(140,42,91,.3);color:var(--ink);font:300 clamp(18px,1.7vw,23px)/1.3 var(--serif);padding:17px 0}
body.spa-page .spa-includes-list li{border-top-color:rgba(140,42,91,.2)}

/* Secciones oscuras: una sola retÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­cula de 1180 px, alineada con el hÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â©roe */
body.spa-page .spa-section{width:min(100%,1364px);padding:clamp(66px,8vw,104px) var(--edge)}
body.spa-page .spa-section-head{max-width:42rem}
body.spa-page .spa-maria-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,6vw,88px)}
body.spa-page .spa-maria-copy p{color:var(--spa-soft)}
body.spa-page .spa-portrait img{object-position:50% 35%}
body.spa-page .spa-reviews-proof{margin:14px 0 0;color:#e0a282;font-size:11px;font-weight:600;letter-spacing:.14em;line-height:1.6;text-transform:uppercase}
body.spa-page .spa-review{border-top-color:rgba(239,177,206,.3)}
body.spa-page .spa-review-stars{color:#f5d2e2;font-size:16px;letter-spacing:.16em}
body.spa-page .spa-review-quote{color:#fff}
body.spa-page .spa-review-author span{color:rgba(253,251,253,.66)}

/* Regreso a la luz y cierre */
body.spa-page .spa-ambient-return{height:1px;background:rgba(140,42,91,.3)}
body.spa-page .local-cta{background:var(--paper)}
body.spa-page .local-cta h2{color:var(--ink)}
body.spa-page .local-cta h2 em{color:var(--rose-deep)}
body.spa-page .local-cta-lead{color:#5b4a53}
body.spa-page .local-cta-place{color:#6a5a62}

/* Pie completo: contacto, horario y direcciÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³n de la web pÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âºblica */
body.spa-page .spa-footer{
  padding:clamp(54px,7vw,84px) var(--edge) 24px;
  background:linear-gradient(155deg,#8a2a57 0%,#6a1e43 100%);
  color:#f9e7f0;text-align:left;font-size:13px;
}
.spa-footer-top{width:min(100%,1180px);margin:auto;display:grid;grid-template-columns:1.2fr .9fr 1.05fr 1fr;gap:clamp(28px,4vw,54px)}
.spa-footer-label{margin:0 0 14px;color:#f0c3da;font-size:10px;font-weight:650;letter-spacing:.18em;line-height:1.5;text-transform:uppercase}
.spa-footer-brand .footer-brand{display:block;color:#fff;font:300 clamp(28px,2.6vw,38px)/1.05 var(--serif);letter-spacing:-.03em;text-decoration:none}
.spa-footer-brand .footer-brand span{display:block;margin-top:9px;color:#f0c3da;font:600 9px/1.4 var(--sans);letter-spacing:.26em;text-transform:uppercase}
.spa-footer-brand p{margin:18px 0 12px;max-width:27rem;color:rgba(249,231,240,.82);line-height:1.7}
.spa-footer-brand>a{color:#f9e7f0;font-size:12px;text-underline-offset:4px}
.spa-footer-tel{display:block;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid rgba(249,231,240,.38);color:#fff;font:300 clamp(23px,2.2vw,32px)/1.15 var(--serif);text-decoration:none;letter-spacing:-.02em}
.spa-footer-wa{color:#f9e7f0;font-size:12px;font-weight:600;text-underline-offset:4px}
.spa-footer-hours ul{list-style:none;display:grid;gap:0;margin:0;padding:0}
.spa-footer-hours li{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid rgba(249,231,240,.14);font-size:12px;color:rgba(249,231,240,.9)}
.spa-footer-hours li span:last-child{font-variant-numeric:tabular-nums}
.spa-footer-place p{margin:0;color:rgba(249,231,240,.84);font-size:13px;line-height:1.8}
.spa-footer-place strong{color:#fff;font-weight:600}
.spa-footer-legal{width:min(100%,1180px);margin:clamp(34px,5vw,52px) auto 0;padding-top:18px;border-top:1px solid rgba(249,231,240,.22);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:11px;color:rgba(249,231,240,.72)}
.spa-footer-legal p{margin:0}
.spa-footer-legal nav{display:flex;gap:22px}
.spa-footer-legal a{color:inherit;text-underline-offset:4px}
.spa-footer a:hover{color:#fff}

/* Reveals mÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡s cortos que el resto del preview: 14 px y 0,55 s */
.js-motion body.spa-page .reveal{transform:translateY(14px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1)}

@media(max-width:899px){
  body.spa-page .spa-page-opening{min-height:calc(100svh - 68px);height:calc(100svh - 68px)}
  body.spa-page .spa-page-copy{left:22px;right:22px;width:auto;top:auto;bottom:76px;transform:none}
  body.spa-page .spa-page-copy h1{font-size:clamp(48px,12.5vw,68px)}
  body.spa-page .spa-page-copy .opening-lead{max-width:34ch;font-size:13.5px;line-height:1.55}
  body.spa-page .spa-page-opening .light-link{min-height:44px}
  body.spa-page .spa-section{width:100%;padding:52px 22px}
  body.spa-page .spa-experience{padding-top:56px}
  body.spa-page .spa-experience-intro{padding:0 22px}
  .spa-odyssey{height:190svh}
  .spa-odyssey-stage{background:var(--spa-bg-deep)}
  .spa-odyssey-media{top:18px;left:22px;right:22px;bottom:auto;height:auto;aspect-ratio:4/5;overflow:hidden}
  .spa-odyssey-shade{background:linear-gradient(180deg,rgba(42,20,28,0) 0%,rgba(42,20,28,.14) 26%,rgba(42,20,28,.58) 58%,rgba(42,20,28,.9) 84%,var(--spa-bg) 100%)}
  .spa-odyssey-shade--right{display:none}
  .spa-odyssey-media::after{content:"";position:absolute;inset:auto 0 0;height:18%;background:linear-gradient(to bottom,transparent,rgba(42,20,28,.9));pointer-events:none;z-index:1}
  .spa-odyssey-frame[data-scene="2"] img{object-position:30% 50%}
  .spa-odyssey[data-align="right"] .spa-odyssey-shade{transform:none}
  .spa-odyssey-copy,.spa-odyssey[data-align="right"] .spa-odyssey-copy{left:22px;right:22px;top:0;bottom:auto;width:auto;height:100%;display:block}
  .spa-odyssey-chapter{position:absolute;left:0;right:0;top:auto;bottom:64px}
  .spa-odyssey-index{margin-bottom:10px;font-size:9px}
  .spa-odyssey-chapter h3{font-size:clamp(32px,10vw,46px);line-height:.98}
  .spa-odyssey-chapter>p:last-child{margin-top:12px;font-size:13.5px;line-height:1.6}
  .spa-odyssey-progress{left:22px;right:22px;bottom:24px}
  .spa-odyssey-note{display:none}
  body.spa-page .spa-motion{padding:64px 22px}
  body.spa-page .spa-motion-frame{max-width:100%}
  body.spa-page .spa-includes-band{padding:calc(48px + 44px) 0}
  body.spa-page .spa-includes-inner{padding:0 22px}
  body.spa-page .spa-includes-list{grid-template-columns:1fr}
  body.spa-page .spa-includes-list li{font-size:19px;padding:15px 0}
  body.spa-page .spa-maria-grid{grid-template-columns:1fr;gap:32px}
  body.spa-page .spa-portrait{max-width:440px}
  body.spa-page .spa-reviews-grid{grid-template-columns:1fr;gap:36px}
  body.spa-page .spa-section-title{font-size:clamp(30px,9vw,42px)}
  body.spa-page .spa-section-intro{font-size:14px}
  .spa-footer-top{grid-template-columns:1fr 1fr;gap:34px 28px}
  .spa-footer-brand{grid-column:1/-1}
  .spa-footer-hours,.spa-footer-place{grid-column:auto}
  .spa-footer-legal{flex-direction:column;align-items:flex-start;gap:12px}
}
@media(max-width:520px){
  .spa-footer-top{grid-template-columns:1fr;gap:30px}
  .spa-footer-hours,.spa-footer-place{grid-column:auto}
  .spa-footer-legal nav{flex-wrap:wrap;gap:12px 18px}
}

/* Movimiento reducido: la experiencia vuelve a ser un relato estÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡tico completo */
@media(prefers-reduced-motion:reduce){
  .spa-odyssey{height:auto}
  .spa-odyssey-stage{position:relative;top:auto;height:auto;padding:0 0 48px}
  .spa-odyssey-media{position:relative;inset:auto;top:auto;left:auto;right:auto;height:auto;aspect-ratio:16/9;margin:0 0 26px;overflow:hidden}
  .spa-odyssey-frame{position:relative;opacity:1;visibility:visible;transition:none}
  .spa-odyssey-frame:not(:first-child){display:none}
  .spa-odyssey-shade,.spa-odyssey-progress,.spa-odyssey-note{display:none}
  .spa-odyssey-copy,.spa-odyssey[data-align="right"] .spa-odyssey-copy{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto;height:auto;display:grid;gap:0;padding:0 max(var(--edge),calc((100vw - 1180px)/2))}
  .spa-odyssey-chapter,.spa-odyssey-chapter.is-active{position:relative;left:auto;right:auto;bottom:auto;grid-area:auto;opacity:1;visibility:visible;transform:none;padding:24px 0;border-top:1px solid var(--spa-line)}
  .spa-odyssey-chapter h3{font-size:clamp(30px,4.4vw,42px)}
  .spa-odyssey-chapter>p:last-child{font-size:15px}
}










/* ============================================================
   HERO · imagen del arco entregada el 02-11-2026 (noche)
   Solo se sustituye la fotografía y su adaptación responsive.
   En escritorio se ve el 16:9 completo con el copy HTML a la izquierda.
   Por debajo de 1280 px la imagen pasa a 3:2 (aro completo) y el copy
   baja debajo para no cortar el tratamiento.
   ============================================================ */
body.spa-page .spa-page-media picture img{object-position:50% 5%}

@media(max-width:1279px){
  body.spa-page .spa-page-opening{
    min-height:calc(100svh - var(--spa-header));
    height:auto;
    display:flex;
    flex-direction:column;
    overflow:visible;
    background:var(--spa-bg);
  }
  body.spa-page .spa-breadcrumb--hero{
    position:relative;
    top:auto;
    left:auto;
    order:0;
    margin:0;
    padding:16px 22px 12px;
    background:var(--spa-bg);
    color:rgba(253,251,253,.72);
  }
  body.spa-page .spa-page-media{
    position:relative;
    inset:auto;
    order:1;
    width:100%;
    height:auto;
    aspect-ratio:3 / 2;
    z-index:0;
    background:#1a0f12;
    overflow:hidden;
  }
  body.spa-page .spa-page-media picture{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    -webkit-mask-image:none;
    mask-image:none;
  }
  body.spa-page .spa-page-media picture img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:50% 50%;
  }
  body.spa-page .spa-page-shade{display:none}
  body.spa-page .spa-page-copy{
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
    order:2;
    width:auto;
    transform:none;
    padding:28px 22px 34px;
    background:var(--spa-bg);
    z-index:2;
  }
  body.spa-page .spa-page-copy .opening-lead{max-width:34ch}
  body.spa-page .service-image-note{display:none}
}
