/* Aqua FX — animaciones compartidas (sin dependencias) */
#fxProgress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--lime,#b9d84a),var(--teal,#2e7280));z-index:9999;pointer-events:none}
/* intro */
#fxIntro{position:fixed;inset:0;z-index:10000;background:var(--teal-deep,#1d4f5a);display:flex;align-items:center;justify-content:center;transition:transform 1s cubic-bezier(.77,0,.18,1) .25s}
#fxIntro .fx-in-logo{color:#fff;font-family:var(--script,serif);font-size:clamp(2.4rem,8vw,5rem);opacity:0;transform:translateY(20px);animation:fxLogo .9s .1s ease forwards}

#fxIntro.done{transform:translateY(-100%);pointer-events:none}
@keyframes fxLogo{to{opacity:1;transform:none}}
@keyframes fxBar{to{transform:scaleX(1)}}
/* split text */
.fx-split .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.fx-split .w>span{display:inline-block;transform:translateY(110%) rotate(4deg);transition:transform 1s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i)*70ms)}
.fx-split.go .w>span{transform:none}
/* clip reveal de imágenes */
.fx-clip{clip-path:inset(12% 8% 12% 8% round 18px);transform:scale(1.04);transition:clip-path 1.2s cubic-bezier(.2,.8,.2,1),transform 1.4s cubic-bezier(.2,.8,.2,1)}
.fx-clip.go{clip-path:inset(0 0 0 0 round 0);transform:none}
/* parallax */
[data-parallax]{will-change:transform}
/* marquee */
.fx-marquee{overflow:hidden;background:var(--teal,#2e7280);color:#fff;padding:18px 0;white-space:nowrap;position:relative}
.fx-marquee .track{display:inline-flex;gap:48px;animation:fxMarq 38s linear infinite;padding-left:48px}
.fx-marquee:hover .track{animation-play-state:paused}
.fx-marquee span{font-family:var(--script,serif);font-size:clamp(1.5rem,3.4vw,2.6rem);display:inline-flex;align-items:center;gap:48px}
.fx-marquee span::after{content:'✦';color:var(--lime,#b9d84a);font-size:.6em}
@keyframes fxMarq{to{transform:translateX(-50%)}}
/* cursor */
#fxCursor{position:fixed;top:0;left:0;width:14px;height:14px;border-radius:50%;background:var(--lime,#b9d84a);mix-blend-mode:difference;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .25s,height .25s;opacity:0}
#fxCursor.big{width:56px;height:56px}
#fxCursor.on{opacity:1}
/* tilt */
.fx-tilt{transition:transform .25s ease;transform-style:preserve-3d;will-change:transform}
/* magnetic */
.fx-mag{transition:transform .25s ease}
/* línea que se dibuja bajo títulos */
.section-head h2{position:relative}
.section-head h2::after{content:'';display:block;height:3px;width:72px;margin:14px auto 0;background:var(--lime,#b9d84a);transform:scaleX(0);transition:transform 1s .3s cubic-bezier(.2,.8,.2,1)}
.section-head.in-view h2::after{transform:scaleX(1)}
@media (hover:none),(max-width:900px){#fxCursor{display:none}}
@media (prefers-reduced-motion:reduce){
  #fxIntro,#fxCursor,.fx-marquee .track{display:none!important}
  [data-parallax]{transform:none!important}
}

/* ================= AQUA v3 — navegación, portada y secciones ================= */
html{scroll-padding-top:84px}
/* --- logo --- */
.logo-img{height:46px;width:auto;display:block;filter:brightness(0) invert(1)}
.logo-img.logo-color{filter:none;height:64px;margin:0 auto}
header .logo-link{flex-shrink:0}
/* --- barra superior: se controla solo con CSS (nada de medir ni encimar) --- */
header{padding:16px 4vw!important;gap:22px;overflow:visible!important}
header.solid{padding:10px 4vw!important}
header .logo-img{height:44px}
header.solid .logo-img{height:38px}
header nav{display:none!important;flex:1;justify-content:center;align-items:center;gap:clamp(16px,2vw,34px);overflow:visible!important;min-width:0}
header nav a{display:none;white-space:nowrap;font-size:.88rem;position:relative;padding:6px 0}
header nav a::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--lime);transform:scaleX(0);transform-origin:0 50%;transition:transform .35s ease}
header nav a:hover::after{transform:scaleX(1)}
header .lang-toggle,header .account-link{display:none}
header .reserve-btn{margin-left:auto;white-space:nowrap;background:linear-gradient(135deg,#0b84bd,#12b4e0);box-shadow:0 8px 20px -8px rgba(18,180,224,.8)}
header .hamburger{display:flex!important;flex-shrink:0}
@media (min-width:1100px){header nav{display:flex!important}header nav a.n1{display:inline-block}header .reserve-btn{margin-left:0}}
@media (min-width:1240px){header nav a.n2{display:inline-block}}
@media (min-width:1600px){header nav a.n3{display:inline-block}header .lang-toggle,header .account-link{display:flex}header .account-link{display:inline}}
.mobile-nav{background:linear-gradient(180deg,#06284f,#0a4a7c)!important;width:min(86vw,360px)!important;max-width:360px!important}
.mobile-nav a{font-size:1.02rem}
.mobile-nav .logo-img{height:52px}
/* --- portada --- */
.hero{min-height:620px}
.hero::after{background:linear-gradient(180deg,rgba(4,22,42,.55) 0%,rgba(4,22,42,.12) 38%,rgba(4,22,42,.88) 100%)!important}
.hero-content{padding-bottom:clamp(150px,22vh,210px)!important}
.hero-content p.tagline{color:#d7ecf6!important}
.hero-actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.hero-actions .cta-btn,.hero-actions .ghost-btn{margin:0;padding:15px 34px;font-size:.9rem}
.cta-btn{background:linear-gradient(135deg,#0b84bd,#12b4e0)!important;box-shadow:0 12px 26px -10px rgba(18,180,224,.9)}
.cta-btn:hover{filter:brightness(1.08);transform:translateY(-2px)}
.ghost-btn{display:inline-block;border:1.5px solid rgba(255,255,255,.7);color:#fff;font-weight:700;border-radius:30px;backdrop-filter:blur(4px);background:rgba(255,255,255,.08);transition:.3s}
.ghost-btn:hover{background:#fff;color:var(--teal-deep)}
.hero-dots{bottom:auto!important;top:50%;left:auto!important;right:3vw;flex-direction:column;transform:translateY(-50%)}
.hero-dots button{width:3px!important;height:26px!important}
.hero-facts{position:absolute;left:0;right:0;bottom:0;z-index:4;background:rgba(6,40,79,.72);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.14)}
.hero-facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-top:0!important;padding-bottom:0!important}
.hero-facts-grid>div{padding:20px 18px;border-right:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:2px}
.hero-facts-grid>div:last-child{border-right:none}
.hero-facts-grid b{font-family:var(--serif);font-size:1.35rem;color:#fff;font-weight:600}
.hero-facts-grid span{font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:var(--lime);font-weight:700}
/* --- ritmo y fondos de sección --- */
section{padding:clamp(56px,6vw,96px) 0!important;background:var(--cream)}
.section-head h2{font-size:clamp(1.9rem,3.2vw,2.8rem)}
.section-head[style*="center"],#reservar-widget .section-head{text-align:center}
.wrap{padding:0 5vw;max-width:1280px}
#bienvenida{background:linear-gradient(180deg,#fff,var(--cream))}
.intro-photo{height:clamp(360px,36vw,520px)!important;box-shadow:0 36px 70px -26px rgba(6,40,79,.5)!important}
.stats-row{display:grid;grid-template-columns:repeat(4,auto);gap:10px 26px;margin-top:34px;padding-top:26px;border-top:1px solid var(--line);justify-content:start}
.stats-row b{display:block;font-family:var(--serif);font-size:1.9rem;color:var(--teal);line-height:1}
.stats-row span{display:block;font-size:.72rem;color:var(--muted);margin-top:6px;max-width:15ch;line-height:1.35}
#reservar-widget{background:linear-gradient(160deg,#06284f 0%,#0a4a7c 55%,#0b84bd 130%)!important;padding:clamp(56px,6vw,90px) 0!important}
#reservar-widget h2{color:#fff}
#reservar-widget .section-head p{color:#cfe8f5}
#reservar-widget .eyebrow{color:var(--lime)}
#reservar-widget .politicas-item .pi-label{color:var(--lime)}
#reservar-widget .politicas-item .pi-value{color:#fff}
#reservar-widget .politicas-nota{color:#a9cde0}
#widget-488070{background:#fff;border-radius:18px;padding:14px;box-shadow:0 30px 60px -24px rgba(0,0,0,.5);min-height:70px}
.rooms-showcase{gap:6px!important;margin-top:44px!important;padding:0 6px}
.rs-item{height:clamp(300px,30vw,440px)!important;border-radius:14px}
.rs-name{left:22px!important;top:auto!important;bottom:46px;transform:none!important;text-align:left;font-size:1rem!important;letter-spacing:.14em!important}
.rs-price{position:absolute;left:22px;bottom:20px;z-index:2;color:var(--lime);font-size:.8rem;font-weight:700;letter-spacing:.04em}
.rs-item::after{background:linear-gradient(180deg,rgba(4,22,42,0) 35%,rgba(4,22,42,.8) 100%)!important}
.restaurante{background:linear-gradient(160deg,#06284f,#0a4a7c)!important}
.rest-photo{height:clamp(320px,34vw,480px)!important}
.rest-strip-item{flex:0 0 clamp(200px,20vw,280px)!important;height:clamp(160px,15vw,210px)!important}
#servicios{background:#fff}
.svc-card{background:linear-gradient(155deg,#fff,var(--cream-deep))!important;border:1px solid var(--line)}
.svc-featured .chip{background:rgba(255,255,255,.2)}
.about{background:linear-gradient(180deg,var(--cream),#fff)}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center}
.about-text .section-head,.about-text{max-width:none}
.about-text p{color:var(--muted);line-height:1.75;margin-top:16px;max-width:46ch}
.about-mosaic{display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:200px 200px;gap:14px}
.about-mosaic .m1{grid-row:1/3;height:100%}
.about-mosaic img{width:100%;height:100%;object-fit:cover}
#highlightsGrid{margin-top:46px}
#eventos{background:linear-gradient(160deg,#06284f,#0a3a63)!important}
.promo-fallback{display:grid!important;grid-template-columns:1fr 1fr;gap:0;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 30px 60px -28px rgba(6,40,79,.45)}
.promo-fallback-img{min-height:340px;position:relative}
.promo-fallback-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.promo-fallback-text{padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.promo-fallback-text h3{font-size:clamp(1.4rem,2.4vw,2rem)}
.promo-fallback-text p{color:var(--muted);line-height:1.7;margin-top:14px}
.g-grid{grid-template-rows:repeat(2,clamp(150px,15vw,210px))!important}
#galeria{background:#fff}
#ubicacion{background:var(--cream-deep)!important}
.tagline-banner{background:linear-gradient(135deg,#0b84bd,#06284f)!important}
.tagline-banner p{color:#fff!important}
.ayuda-bg::after{background:linear-gradient(160deg,rgba(6,40,79,.9),rgba(11,132,189,.45))!important}
.ayuda-card{background:rgba(255,255,255,.94)!important}
footer{background:#041a33!important}
.cta-block-wrap{position:relative;overflow:hidden}
.cta-block-wrap .cta-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cta-block-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,26,51,.7),rgba(4,26,51,.92))}
.cta-block-wrap .cta-block{position:relative;z-index:2;padding:clamp(56px,7vw,100px) 5vw!important}
/* --- pantallas medianas y chicas --- */
@media (max-width:1100px){.about-grid,.promo-fallback{grid-template-columns:1fr}.stats-row{grid-template-columns:repeat(2,auto)}.hero-facts-grid{grid-template-columns:repeat(2,1fr)}.hero-facts-grid>div:nth-child(2){border-right:none}.hero-facts-grid>div{padding:12px 14px}.hero-content{padding-bottom:210px!important}}
@media (max-width:1024px){.rooms-showcase{grid-template-columns:repeat(2,1fr)!important}.rooms-grid{grid-template-columns:repeat(2,1fr)!important}.svc-grid{grid-template-columns:repeat(2,1fr)!important}}
@media (max-width:640px){.hero-dots{display:none}.rooms-showcase,.rooms-grid{grid-template-columns:1fr!important}.about-mosaic{grid-template-rows:160px 160px}.hero-actions .cta-btn,.hero-actions .ghost-btn{flex:1;text-align:center;padding:14px 18px}.logo-img{height:38px}}
/* --- retoques --- */
.intro h2,.about-text h2,.rest-grid h2,.ayuda-section .section-head h2{font-size:clamp(1.9rem,3.2vw,2.8rem)}
.section-head h2::after,.about-text h2::after,.intro h2::after{margin:14px 0 0}
.section-head[style*="center"] h2::after,#reservar-widget .section-head h2::after{margin:14px auto 0}
.about-text h2::after,.intro h2::after{content:'';display:block;height:3px;width:72px;background:var(--lime)}
.event-cta p{color:#d7ecf6!important}
header:not(.solid)::before{content:'';position:absolute;left:0;right:0;top:0;height:150%;background:linear-gradient(180deg,rgba(4,22,42,.62),rgba(4,22,42,0));z-index:-1;pointer-events:none}

/* ================= RECORRIDO DE ENTRADA (scroll = caminar por el hotel) ================= */
.journey{display:none}
html.journey-on .journey{display:block;position:relative;height:960vh;background:#041a33}
html.journey-on .hero{display:none}
.journey-stage{position:sticky;top:0;height:100vh;overflow:hidden;background:#041a33}
.journey-video,.journey-end{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background-size:cover;background-position:center}
.journey-end{opacity:0;transition:opacity 1s ease}
.journey-stage.done .journey-end{opacity:1;animation:jEnd 16s ease-in-out infinite alternate}
@keyframes jEnd{from{transform:scale(1)}to{transform:scale(1.07)}}
.journey-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,22,42,.55),rgba(4,22,42,.05) 35%,rgba(4,22,42,.25) 70%,rgba(4,22,42,.8));pointer-events:none}
.journey-caps{position:absolute;inset:0;pointer-events:none}
.jcap{position:absolute;left:5vw;top:clamp(104px,17vh,190px);max-width:min(620px,88vw);color:#fff;opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
.jcap.on{opacity:1;transform:none}
.jcap .jnum{font-size:.76rem;letter-spacing:.28em;text-transform:uppercase;color:var(--lime);font-weight:800;margin-bottom:14px}
.jcap .jtitle{font-family:var(--serif);font-size:clamp(2rem,4.6vw,3.9rem);line-height:1.08;font-weight:600;text-shadow:0 6px 30px rgba(0,0,0,.35)}
.jcap p{text-shadow:0 2px 14px rgba(0,0,0,.6);margin-top:14px;font-size:clamp(.95rem,1.4vw,1.15rem);color:#d7ecf6;max-width:44ch}
.jcap-first{left:50%;top:50%;text-align:center;transform:translate(-50%,-40%);max-width:90vw}
.jcap-first.on{transform:translate(-50%,-50%)}
.jcap-first .jtitle{font-family:var(--script);font-weight:400;font-size:clamp(4rem,11vw,9rem)}
.jcap-first .eyebrow{color:var(--lime)}
.journey-final{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s}
.journey-final.on{opacity:1;visibility:visible}
.journey-final .hero-content{padding-bottom:clamp(150px,22vh,210px)}
.journey-hud{position:absolute;right:2.2vw;top:50%;transform:translateY(-50%);display:flex;align-items:stretch;gap:14px;z-index:6;pointer-events:none}
.journey-track{width:2px;background:rgba(255,255,255,.25);border-radius:2px;position:relative;overflow:hidden}
.journey-track i{position:absolute;inset:0;background:var(--lime);transform:scaleY(0);transform-origin:50% 0}
.journey-hud ul{list-style:none;display:flex;flex-direction:column;gap:14px;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.45)}
.journey-hud li{transition:.4s;transform-origin:0 50%}
.journey-hud li.past{color:rgba(255,255,255,.75)}
.journey-hud li.act{color:#fff;transform:translateX(-4px) scale(1.12)}
.journey-cue{position:absolute;left:50%;bottom:clamp(26px,5vh,48px);transform:translateX(-50%);width:28px;height:48px;border:2px solid rgba(255,255,255,.75);border-radius:16px;transition:opacity .4s;z-index:6}
.journey-cue span{position:absolute;left:50%;top:9px;width:4px;height:9px;margin-left:-2px;background:#fff;border-radius:3px;animation:jCue 1.6s infinite}
.journey-cue.hide{opacity:0;pointer-events:none}
@keyframes jCue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(16px)}}
@media (max-width:760px){html.journey-on .journey{height:720vh}.journey-hud{display:none}.jcap{top:96px}.jcap-first{top:50%}}

/* ================= PARALLAX EN CAPAS ================= */
.px-band{position:relative;height:clamp(340px,64vh,640px);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0!important;background:#06284f}
.px-band-img{position:absolute;left:0;top:-18%;width:100%;height:136%;object-fit:cover;will-change:transform}
.px-band-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,40,79,.55),rgba(6,40,79,.25) 50%,rgba(6,40,79,.7))}
.px-band-text{position:relative;z-index:2;color:#fff;font-family:var(--script);font-size:clamp(2.6rem,8vw,6.6rem);text-align:center;display:flex;gap:.35em;flex-wrap:wrap;justify-content:center;padding:0 5vw;text-shadow:0 8px 40px rgba(0,0,0,.4)}
.px-band-text.px-quote{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,3.6vw,2.8rem);max-width:900px;line-height:1.4}
.px-band-text span{display:inline-block;opacity:0;transform:translateY(40px);transition:opacity .9s ease,transform 1.1s cubic-bezier(.2,.8,.2,1)}
.px-band-text span:nth-child(2){transition-delay:.18s}.px-band-text span:nth-child(3){transition-delay:.36s}
.px-band.in .px-band-text span{opacity:1;transform:none}
.px-band-text.px-quote{opacity:0;transform:translateY(40px);transition:opacity 1.1s ease,transform 1.2s cubic-bezier(.2,.8,.2,1)}
.px-band.in .px-band-text.px-quote{opacity:1;transform:none}
.intro-media{position:relative}
.intro-float{position:absolute;left:-9%;bottom:-9%;width:46%;aspect-ratio:4/3;z-index:3;box-shadow:0 30px 60px -20px rgba(6,40,79,.6);border:6px solid #fff;border-radius:16px}
.intro-float img{width:100%;height:100%;object-fit:cover}
.px-img{scale:1.16;translate:0 var(--py,0px);will-change:translate}
.rs-item:hover .px-img,.g-item:hover .px-img{scale:1.24}
header nav a.active{color:var(--lime)}
header nav a.active::after{transform:scaleX(1)}
@media (max-width:760px){.intro-float{left:-3%;width:50%}}
/* intro: cortina en dos mitades */
#fxIntro{background:none!important;transform:none!important;transition:none!important}
#fxIntro .fx-in-panel{position:absolute;top:0;bottom:0;width:50.5%;background:linear-gradient(160deg,#06284f,#0a4a7c);transition:transform 1.1s cubic-bezier(.77,0,.18,1) .15s}
#fxIntro .fx-in-panel.l{left:0}#fxIntro .fx-in-panel.r{right:0;background:linear-gradient(200deg,#06284f,#0a4a7c)}
#fxIntro.done .fx-in-panel.l{transform:translateX(-101%)}#fxIntro.done .fx-in-panel.r{transform:translateX(101%)}
#fxIntro .fx-in-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;transition:opacity .5s ease,transform .8s ease}
#fxIntro.done .fx-in-center{opacity:0;transform:scale(1.15)}
#fxIntro .fx-in-logo{width:min(300px,64vw);filter:brightness(0) invert(1);opacity:0;animation:fxLogo 1s .1s ease forwards}
#fxIntro .fx-in-count{color:var(--lime);font-family:var(--serif);font-size:1.1rem;letter-spacing:.2em}
#fxIntro .fx-in-count b{font-weight:600;font-size:2.4rem;color:#fff}
#fxIntro .fx-in-bar{width:min(260px,60vw);height:3px;background:rgba(255,255,255,.2);border-radius:3px;overflow:hidden}
#fxIntro .fx-in-bar i{display:block;height:100%;background:var(--lime);transform:scaleX(0);transform-origin:0 50%}
html.journey-on .journey{padding:0!important}

/* ---- Recorrido: platillos en alta resolución (reemplazan el tramo final del video de 720p) ---- */
.journey-dishes{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.journey-dishes img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;will-change:opacity,transform}
/* ---- El Limonal (inicio): fondo con parallax ---- */
.rest-px{position:relative;overflow:hidden;isolation:isolate}
.rest-px .rest-px-img{z-index:-2;top:-12%;height:124%}
.rest-px .rest-px-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(6,40,79,.88),rgba(6,40,79,.62) 35%,rgba(6,40,79,.68) 68%,rgba(6,40,79,.92))}

/* ---- El Limonal: menú en video ---- */
.limonal-video{padding:90px 0;background:linear-gradient(160deg,#06284f,#0a4a7c);color:#fff}
.limonal-video h2{color:#fff}
.limonal-video-box{max-width:1080px;margin:0 auto;border-radius:22px;overflow:hidden;aspect-ratio:16/9;background:#000;box-shadow:0 40px 80px -30px rgba(0,0,0,.6)}
.limonal-video-box video{display:block;width:100%;height:100%;object-fit:cover}
@media (max-width:760px){.limonal-video{padding:60px 0}.limonal-video-box{border-radius:14px}}
.limonal-video .eyebrow{color:#7fdcf2}

.rest-photo{position:relative;overflow:visible!important}
.rest-photo>img.ph{border-radius:inherit}
.px-float{position:absolute;right:-9%;bottom:-12%;width:44%;aspect-ratio:4/5;overflow:hidden;border:6px solid rgba(255,255,255,.92);box-shadow:0 30px 60px -20px rgba(0,0,0,.55);z-index:2;will-change:transform}
.px-float img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:900px){.px-float{right:-3%;bottom:-8%;width:42%}}
.rest-media .px-float{right:-10%!important;bottom:-14%!important;left:auto!important;top:auto!important;width:42%!important;height:auto!important}
@media(max-width:900px){.rest-media .px-float{right:-2%!important;bottom:-10%!important}}
.rest-photo.framed{overflow:visible!important}
.rest-photo.framed>img.ph{width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.rest-media{position:relative}
@media(max-width:900px){.rest-media{order:-1;margin-bottom:34px}}

#fxCursor{width:84px;height:24px;border-radius:0;background:none;mix-blend-mode:normal;filter:drop-shadow(0 1px 4px rgba(0,0,0,.55))}
#fxCursor img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .25s}
#fxCursor.big{width:84px;height:24px}
#fxCursor.big img{transform:scale(1.5)}
