:root{--plaster:#EFE5DC;--paper:#F6EFE7;--ink:#474543;--ink-soft:#6E6A66;--stone:#948B80;--wine:#671425;--wine-deep:#4C0F1B;--brick:#98351F;--ochre:#AA742D;--line:#DACFC1;--serif:"Poppins",system-ui,sans-serif;--sans:"Montserrat",system-ui,sans-serif;--max:1280px;--gut:clamp(1.25rem,5vw,4rem);--frame:14px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--ink);background:var(--plaster);line-height:1.65;font-size:clamp(.98rem,.5vw + .88rem,1.08rem);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}::selection{background:var(--wine);color:var(--paper)}h1,h2,h3,.display{font-family:var(--serif);font-weight:400;line-height:1.04;letter-spacing:-.015em}.h-lg{font-size:clamp(2.2rem,6vw,4.6rem);font-weight:300}.h-md{font-size:clamp(1.7rem,3.5vw,2.7rem);font-weight:400}.ital{font-style:italic}.serif-lead{font-style:italic;font-weight:300;font-size:clamp(1.3rem,2.6vw,2.1rem);line-height:1.32;color:var(--ink)}.eyebrow{font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--wine)}.eyebrow.muted{color:var(--stone)}.meta{font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--stone)}p.body{color:var(--ink-soft);max-width:54ch}p.body+p.body{margin-top:1rem}.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}section{position:relative}.sec-pad{padding-block:clamp(5rem,13vw,11rem)}.divider{height:1px;background:var(--line);border:0;max-width:var(--max);margin-inline:auto}.frame{position:fixed;inset:var(--frame);border:1px solid rgba(170,116,45,.5);z-index:80;pointer-events:none}.frame span{position:absolute;width:9px;height:9px;border:1px solid var(--ochre)}.frame .tl{top:-1px;left:-1px;border-right:0;border-bottom:0}.frame .tr{top:-1px;right:-1px;border-left:0;border-bottom:0}.frame .bl{bottom:-1px;left:-1px;border-right:0;border-top:0}.frame .br{bottom:-1px;right:-1px;border-left:0;border-top:0}@media(max-width:640px){:root{--frame:8px}}.btn{font-family:var(--sans);font-weight:500;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.6rem;cursor:pointer;border:1px solid transparent;padding:.95em 1.7em;border-radius:0;transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease;background:none}.btn-wine{background:var(--wine);color:var(--paper)}.btn-wine:hover{background:var(--wine-deep)}.btn-line{border-color:var(--ink);color:var(--ink)}.btn-line:hover{background:var(--ink);color:var(--plaster)}.btn-ghost{border-color:#f3f0e880;color:var(--paper)}.btn-ghost:hover{background:#f3f0e81f;border-color:var(--paper)}.link-ul{font-family:var(--sans);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--wine);border-bottom:1px solid var(--wine);padding-bottom:.25em;transition:opacity .3s}.link-ul:hover{opacity:.6}.nav{position:fixed;top:var(--frame);left:var(--frame);right:var(--frame);z-index:70;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1rem,4vw,2.4rem);transition:background .4s ease,box-shadow .4s ease,color .4s ease;color:var(--paper)}.nav.solid{background:#e9e5dbeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink);box-shadow:0 1px 0 var(--line)}.brand{position:relative;display:flex;flex-direction:column;align-items:flex-start;line-height:0}.brand-mark{height:clamp(64px,9vw,96px);width:auto;flex:0 0 auto;transition:height .4s ease}.nav.solid .brand-mark{height:48px}.brand-dark,.nav.solid .brand-light{display:none}.nav.solid .brand-dark{display:block}.brand-sub{position:absolute;top:100%;left:0;white-space:nowrap;line-height:1.4;margin-top:.5rem;color:var(--paper);opacity:.92;font-size:.62rem}.nav.solid .brand-sub{display:none}.nav:not(.solid){align-items:flex-start}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:520px){.nav.solid .brand-mark{height:40px}}.nav-links{display:none;gap:2rem;font-family:var(--sans);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase}.nav-links a{position:relative;opacity:.85;transition:opacity .3s}.nav-links a:hover{opacity:1}.nav-cta{font-family:var(--sans);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;border:1px solid currentColor;padding:.6em 1.2em;cursor:pointer;background:none;color:inherit;transition:background .3s,color .3s,border-color .3s}.nav.solid .nav-cta:hover{background:var(--wine);color:var(--paper);border-color:var(--wine)}.nav:not(.solid) .nav-cta:hover{background:var(--paper);color:var(--ink)}.nav-right{display:flex;align-items:center;gap:1rem}.lang-select{font-family:var(--sans);font-size:.72rem;letter-spacing:.12em;font-weight:500;background:transparent;color:inherit;border:1px solid currentColor;border-radius:0;padding:.5em 1.6em .5em .6em;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 12px) center,calc(100% - 7px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.lang-select option{color:#221d16}.nav-phone{display:none;font-family:var(--sans);font-size:.74rem;letter-spacing:.1em;white-space:nowrap;opacity:.9;transition:opacity .3s}.nav-phone:hover{opacity:1}@media(min-width:900px){.nav-links{display:flex}.nav-phone{display:inline}}@media(max-width:560px){.nav{padding:.85rem .9rem}.nav-right{gap:.55rem}.nav-cta{padding:.55em .8em;font-size:.66rem;letter-spacing:.1em}.lang-select{padding:.45em 1.35em .45em .5em;font-size:.66rem;letter-spacing:.08em}.hero-cta{flex-direction:column;align-items:stretch;width:100%;gap:.7rem}.hero-cta .btn{width:100%;justify-content:center}}.hero{position:relative;height:100svh;min-height:600px;overflow:hidden;display:flex;align-items:flex-end;color:var(--paper)}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,#140f0a47,#140f0a0d 38%,#140f0a9e)}.hero-inner{position:relative;z-index:2;width:100%;padding:0 var(--gut) clamp(3.5rem,8vw,6rem)}.hero .eyebrow{color:var(--paper);opacity:.92;margin-bottom:1.4rem;display:block}.hero h1{font-size:clamp(3.4rem,15vw,11rem);font-weight:300;line-height:.92;letter-spacing:-.02em}.hero-logo{margin:0}.hero-logo img{width:min(430px,74vw);height:auto}.hero-tag{font-style:italic;font-weight:300;font-size:clamp(1.15rem,2.4vw,1.7rem);max-width:30ch;margin:1.4rem 0 2.2rem;opacity:.95}.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.hero-cta .btn{flex:0 0 auto;white-space:nowrap}.scroll-cue{position:absolute;left:50%;bottom:1.6rem;transform:translate(-50%);z-index:2;font-family:var(--sans);font-size:.66rem;letter-spacing:.3em;text-transform:uppercase;color:var(--paper);opacity:.8;display:flex;flex-direction:column;align-items:center;gap:.6rem}.scroll-cue i{display:block;width:1px;height:34px;background:linear-gradient(var(--paper),transparent);transform-origin:top;animation:cue 2.4s ease-in-out infinite}@media(max-width:560px){.scroll-cue{display:none}}@keyframes cue{0%,to{transform:scaleY(.4);opacity:.4}50%{transform:scaleY(1);opacity:1}}.intro{display:grid;gap:clamp(2.5rem,6vw,5rem);grid-template-columns:1fr}.intro-statement .serif-lead{max-width:20ch}.intro-side{display:grid;gap:1.6rem}.intro-tall{aspect-ratio:3/4;overflow:hidden}.intro-tall img{width:100%;height:100%;object-fit:cover}@media(min-width:860px){.intro{grid-template-columns:1.15fr .85fr;align-items:start}}.rooms{display:flex;flex-direction:column;gap:clamp(4rem,9vw,8rem)}.room{display:grid;gap:clamp(1.5rem,4vw,3.5rem);grid-template-columns:1fr;align-items:center}.room-figure{position:relative;overflow:hidden;aspect-ratio:4/5;display:block;width:100%;padding:0;border:0;background:none;cursor:pointer}.room-figure img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.room-figure:hover img,.room:hover .room-figure img{transform:scale(1.04)}.room-figure:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#211c1600;transition:background .4s}.room-figure:hover:after{background:#211c161f}.figure-badge{position:absolute;right:.9rem;bottom:.9rem;display:inline-flex;align-items:center;gap:.45rem;font-family:var(--sans);font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--paper);background:#211c168c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:.45em .8em;transition:background .3s}.room-figure:hover .figure-badge{background:var(--wine)}.figure-badge svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6}.room-num{font-family:var(--serif);font-style:italic;color:var(--ochre);font-size:1rem;letter-spacing:.1em;display:block;margin-bottom:1rem}.room-body h3{margin:.3rem 0 .9rem}.room-price{font-family:var(--sans);font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--wine);display:block;margin-bottom:1.3rem}.amen{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;list-style:none;margin:1.4rem 0 1.8rem;font-family:var(--sans);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.amen li{display:inline-flex;align-items:center;gap:.5rem}.amen svg{width:16px;height:16px;stroke:var(--ochre);fill:none;stroke-width:1.4}@media(min-width:820px){.room{grid-template-columns:1fr 1fr;gap:clamp(3rem,6vw,6rem)}.room.flip .room-figure{order:2}}.gal{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(.5rem,1.4vw,1rem);grid-auto-flow:dense}.gal button{border:0;padding:0;margin:0;cursor:pointer;background:none;overflow:hidden;position:relative;grid-column:span 3;aspect-ratio:4/3}.gal button img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1)}.gal button:hover img{transform:scale(1.05)}.gal button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#211c1600;transition:background .4s}.gal button:hover:after{background:#211c161f}.gal button:nth-child(1){grid-column:span 4;aspect-ratio:16/11}.gal button:nth-child(2){grid-column:span 2;aspect-ratio:3/4}.gal button:nth-child(5){grid-column:span 2;aspect-ratio:3/4}.gal button:nth-child(6){grid-column:span 4;aspect-ratio:16/11}@media(max-width:680px){.gal{grid-template-columns:repeat(2,1fr)}.gal button,.gal button:nth-child(n){grid-column:span 1;aspect-ratio:1}.gal button:nth-child(1),.gal button:nth-child(6){grid-column:span 2;aspect-ratio:16/10}}.loc{display:grid;gap:clamp(2.5rem,6vw,5rem);grid-template-columns:1fr;align-items:center}.loc-map{position:relative;aspect-ratio:4/3;background:var(--paper);border:1px solid var(--line);overflow:hidden}.loc-map img{width:100%;height:100%;object-fit:cover;opacity:.92}.loc-map .pin{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.6rem;font-family:var(--sans);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--paper);text-shadow:0 1px 8px rgba(0,0,0,.5)}.loc-map .pin b{width:14px;height:14px;border-radius:50%;background:var(--wine);box-shadow:0 0 0 6px #5b2a2a4d}.como{list-style:none;display:grid;gap:1.4rem;margin-top:2rem}.como li{display:grid;grid-template-columns:1fr;gap:.3rem;padding-left:1rem;border-left:1px solid var(--ochre)}.como b{font-family:var(--sans);font-weight:600;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;display:block;margin-bottom:.2rem}.como span.t{color:var(--ink-soft);font-size:.98rem}@media(min-width:860px){.loc{grid-template-columns:1fr 1fr}}.ally{background:var(--wine);color:var(--paper)}.ally-inner{max-width:660px;margin-inline:auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.1rem}.ally .eyebrow{color:var(--ochre)}.ally h2{color:var(--paper)}.ally .body{color:#f3f0e8d9;max-width:52ch}.btn-ally{background:var(--paper);color:var(--wine);border-color:var(--paper);margin-top:.6rem}.btn-ally:hover{background:#fff;color:var(--wine-deep)}.closing{position:relative;min-height:88svh;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--paper);overflow:hidden}.closing img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.closing:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#19120c80;z-index:1}.closing-inner{position:relative;z-index:2;padding:var(--gut)}.closing .eyebrow{color:var(--paper);opacity:.9;display:block;margin-bottom:1.4rem}.closing h2{margin-bottom:1.8rem}.contacts{display:flex;gap:clamp(1.5rem,5vw,3.5rem);flex-wrap:wrap;justify-content:center;margin-top:2.4rem}.contacts a{font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid rgba(243,240,232,.5);padding-bottom:.3em;transition:border-color .3s}.contacts a:hover{border-color:var(--paper)}.insta-head{text-align:center;margin-bottom:clamp(2rem,5vw,3rem)}.insta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.6rem,1.5vw,1rem)}.insta-reel{position:relative;aspect-ratio:9/16;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--ochre),var(--wine) 70%,var(--wine-deep));color:var(--paper);transition:transform .4s cubic-bezier(.2,.8,.2,1)}.insta-reel:hover{transform:translateY(-4px)}.reel-play{width:52px;height:52px;border-radius:50%;background:#f3f0e826;border:1px solid rgba(243,240,232,.5);display:flex;align-items:center;justify-content:center;font-size:1.1rem;padding-left:3px}.reel-tag{position:absolute;bottom:.8rem;left:.9rem;font-family:var(--sans);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;opacity:.85}@media(max-width:640px){.insta-grid{grid-template-columns:repeat(2,1fr)}}footer{background:var(--ink);color:#f3f0e89e;font-family:var(--sans);font-size:.76rem;letter-spacing:.06em}footer .wrap{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:center;padding-block:2.4rem}.footer-logo{width:150px;height:auto;opacity:.9;flex:0 0 auto}@media(max-width:640px){.footer-logo{width:120px}}footer a:hover{color:var(--paper)}.float{position:fixed;bottom:calc(var(--frame) + 1rem);z-index:75;transition:transform .35s ease,opacity .35s ease}.float-reservar{right:calc(var(--frame) + 1rem);background:var(--wine);color:var(--paper);font-family:var(--sans);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;padding:1em 1.6em;border:0;cursor:pointer;box-shadow:0 14px 34px -12px #421c1cb3;display:inline-flex;align-items:center;gap:.6rem}.float-reservar:hover{background:var(--wine-deep);transform:translateY(-2px)}.float-wa{left:calc(var(--frame) + 1rem);width:54px;height:54px;border-radius:50%;background:#1f7a4d;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 30px -12px #1f7a4db3}.float-wa:hover{transform:translateY(-2px)}.float-wa svg{width:27px;height:27px;fill:var(--paper)}.float.hide{opacity:0;transform:translateY(20px);pointer-events:none}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:none}.modal.open{display:block}.modal-bd{position:absolute;top:0;right:0;bottom:0;left:0;background:#19120c8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .35s ease}.modal.open .modal-bd{opacity:1}.modal-panel{position:absolute;top:0;right:0;height:100%;width:min(480px,100%);background:var(--plaster);box-shadow:-30px 0 80px -30px #00000080;transform:translate(100%);transition:transform .45s cubic-bezier(.4,0,.15,1);display:flex;flex-direction:column}.modal.open .modal-panel{transform:translate(0)}.modal-head{padding:2rem 2rem 1.4rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.modal-head .eyebrow{display:block;margin-bottom:.7rem}.modal-head h2{font-size:1.9rem;font-weight:300}.modal-close{flex:0 0 auto;width:42px;height:42px;border:1px solid var(--line);background:var(--paper);cursor:pointer;font-size:1.3rem;line-height:1;color:var(--ink);transition:background .3s}.modal-close:hover{background:var(--line)}.modal-scroll{padding:2rem;overflow-y:auto;flex:1}.dr{display:flex;align-items:center;gap:1rem;font-family:var(--sans)}.dr-field{flex:1;display:flex;flex-direction:column;gap:.3rem;background:var(--paper);border:1px solid var(--line);padding:.7rem .9rem}.dr-field>span{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--stone)}.dr-field b{font-weight:500;font-size:1rem;color:var(--ink)}.dr-arrow{color:var(--stone);flex:0 0 auto}.cal{font-family:var(--sans);border:1px solid var(--line);background:var(--paper);padding:.9rem}.cal-head{display:flex;justify-content:space-between;margin-bottom:.3rem}.cal-nav{background:none;border:1px solid var(--line);color:var(--ink);cursor:pointer;width:30px;height:30px;line-height:1;font-size:1.1rem}.cal-nav:hover{background:var(--plaster)}.cal-months{display:grid;gap:1.4rem;grid-template-columns:1fr}.cal-name{text-align:center;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--stone);margin-bottom:.6rem}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-dow{text-align:center;font-size:.62rem;color:var(--stone);padding-bottom:.3rem}.cal-day{background:none;border:0;cursor:pointer;padding:.5rem 0;font:inherit;font-size:.85rem;color:var(--ink);border-radius:2px}.cal-day:hover:not(:disabled){background:var(--plaster)}.cal-day:disabled{color:var(--line);cursor:default}.cal-day.is-range{background:#6714251a}.cal-day.is-sel{background:var(--wine);color:var(--paper)}.modal-note{font-style:italic;color:var(--ink-soft);margin-bottom:1.6rem}.modal-ask{margin-top:1.4rem;font-family:var(--sans);font-size:.82rem;line-height:1.5;color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);padding:1rem 1.1rem}.modal-ask strong{color:var(--wine);font-weight:600}.book-form{display:flex;flex-direction:column;gap:1rem}.book-submit{justify-content:center;margin-top:.4rem;width:100%}.book-hint{font-family:var(--sans);font-size:.76rem;color:var(--stone);text-align:center;margin-top:.2rem;letter-spacing:.02em}.lb{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;background:#120d09f2;display:none;align-items:center;justify-content:center;padding:clamp(1rem,5vw,3rem)}.lb.open{display:flex}.lb img{max-width:min(1100px,92vw);max-height:84vh;object-fit:contain;box-shadow:0 30px 80px #00000080}.lb-cap{position:absolute;bottom:1.4rem;left:50%;transform:translate(-50%);color:#f3f0e8cc;font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}.lb-btn{position:absolute;background:#f3f0e81a;border:1px solid rgba(243,240,232,.25);color:var(--paper);width:48px;height:48px;cursor:pointer;font-size:1.4rem;transition:background .3s}.lb-btn:hover{background:#f3f0e833}.lb-close{top:1.2rem;right:1.2rem}.lb-prev{left:1.2rem;top:50%;transform:translateY(-50%)}.lb-next{right:1.2rem;top:50%;transform:translateY(-50%)}.js-anim .reveal{opacity:0;transform:translateY(26px)}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.js-anim .reveal{opacity:1;transform:none}.scroll-cue i{animation:none}}
