:root{--paper:#f3f0e8;--forest:#173f35;--night:#111b17;--ink:#20382f;--muted:#47584f;--wine:#763b36;--white:#fffdf6;--line:rgba(32,56,47,.25);--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--pad:clamp(24px,5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:.98;letter-spacing:-.035em}h1{font-size:clamp(60px,8.5vw,134px)}h2{font-size:clamp(48px,6.5vw,100px)}h3{font-size:clamp(34px,3.6vw,54px)}p+p{margin-top:22px}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button{color:inherit}button,a,input,select,textarea,summary{outline-offset:5px}:focus-visible{outline:3px solid var(--wine)}.restaurant-story :focus-visible,.closing :focus-visible,.hero :focus-visible{outline-color:var(--white)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:20px;top:15px;transform:translateY(-180%);z-index:100;padding:12px 20px;background:var(--paper);color:var(--ink)}.skip:focus{transform:none}.eyebrow{font-size:12px;line-height:1.4;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:24px}.lead{font-size:clamp(19px,2vw,25px);line-height:1.6}.small-copy{font-size:14px;line-height:1.6;color:var(--muted)}.section{padding:clamp(70px,9vw,150px) var(--pad)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:14px 24px;border:1px solid var(--forest);font-size:14px;font-weight:500;line-height:1.4;transition:background-color .18s,color .18s}.button span{font-size:21px;transition:transform .18s}.button:hover span{transform:translate(2px,-2px)}.solid{background:var(--forest);color:var(--white)}.solid:hover{background:var(--ink)}.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.light:hover{background:var(--white)}.outline{background:transparent;color:var(--ink)}.outline:hover{background:var(--forest);color:var(--white)}.outline-light{background:rgba(17,27,23,.22);border-color:rgba(255,253,246,.65);color:var(--white)}.outline-light:hover{background:var(--paper);color:var(--ink)}.text-link{display:inline-flex;gap:18px;align-items:center;min-height:44px;border-bottom:1px solid currentColor;font-size:14px;font-weight:500}.text-link span{transition:transform .18s}.text-link:hover span{transform:translate(2px,-2px)}.secondary-link{display:table;margin-top:16px}
.header{height:100px;position:absolute;left:0;right:0;top:0;z-index:20;display:flex;align-items:center;gap:32px;margin:0 var(--pad);border-bottom:1px solid var(--line)}.header.over-hero{color:var(--white);border-color:rgba(255,253,246,.4)}.brand{display:flex;flex-direction:column;flex-shrink:0;line-height:1}.brand-name{font-family:var(--serif);font-weight:600;letter-spacing:-.03em;font-size:38px}.brand-sub{font-size:10px;letter-spacing:.18em;margin-top:7px;font-weight:500}.desktop-nav{display:flex;gap:clamp(15px,2vw,32px);margin-left:auto;align-items:center}.desktop-nav a{font-size:13px;min-height:44px;display:flex;align-items:center;position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;right:0;bottom:7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.header-cta{min-height:44px;display:flex;align-items:center;gap:20px;font-size:13px;border-bottom:1px solid currentColor}.menu-button{display:none;background:none;border:0;min-height:44px;align-items:center;gap:12px;font-size:14px}.menu-dialog{background:var(--paper);color:var(--ink);border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:90px var(--pad) 35px;overflow:auto}.menu-dialog::backdrop,.photo-dialog::backdrop{background:rgba(17,27,23,.94)}.menu-close{position:absolute;top:25px;right:var(--pad);min-height:44px;background:none;border:0}.menu-dialog nav{display:grid}.menu-dialog nav a{display:flex;align-items:center;gap:20px;font-family:var(--serif);font-size:clamp(30px,5vw,58px);font-weight:600;border-bottom:1px solid var(--line);padding:6px 0}.menu-dialog nav a>span:last-child{margin-left:auto;font-family:var(--sans);font-size:24px}.menu-index{font-family:var(--sans);font-size:12px;font-weight:400}.menu-contacts{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px;font-size:14px}.no-js-nav{margin:110px 24px 20px;display:flex;gap:16px;flex-wrap:wrap}.mobile-dock{display:none}
.hero{position:relative;min-height:780px;height:100svh;max-height:1250px;overflow:hidden;background:var(--night);color:var(--white)}.hero>.hero-photo{position:absolute;width:100%;height:112%;top:-6%;object-position:50% 58%;will-change:transform}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,19,15,.47),rgba(10,19,15,.3) 35%,rgba(10,19,15,.57) 78%,rgba(10,19,15,.66))}.hero-copy{position:absolute;inset:160px var(--pad) 110px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.hero-copy .eyebrow{margin-bottom:22px}.hero h1{font-size:clamp(90px,13.8vw,220px);line-height:.86;letter-spacing:-.055em;font-weight:500}.hero h1>span{display:block;font-family:var(--sans);font-size:clamp(14px,1.15vw,19px);letter-spacing:.18em;text-transform:uppercase;margin-bottom:30px;font-weight:500;line-height:1.4}.hero-copy>p:not(.eyebrow){margin-top:34px;font-size:18px;line-height:1.6}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero-bottom{position:absolute;bottom:36px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;font-size:12px;letter-spacing:.03em}.hero-bottom a{display:flex;gap:32px;align-items:center;min-height:44px}.hero-bottom>span{align-self:center}.hero-copy>*{animation:enter .7s cubic-bezier(.2,.7,.3,1) both}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.manifesto{display:grid;grid-template-columns:1.7fr 1fr;gap:6vw;align-items:end}.manifesto h2{font-size:clamp(50px,6.6vw,106px);line-height:1.08}.progressive-text span{display:block}.manifesto>div{padding-bottom:8px;max-width:420px}.manifesto .text-link{margin-top:25px}.restaurant-story{background:var(--night);color:var(--white);padding:100px var(--pad)}.story-shell{display:grid;grid-template-columns:1.05fr 1fr;gap:7vw}.story-photos{position:sticky;top:130px;align-self:start}.story-photo{margin-bottom:40px;height:550px;overflow:hidden}.story-photo img{width:100%;height:100%;object-position:center}.story-copy{max-width:620px;padding:20px 0}.story-copy h2{font-size:clamp(52px,6vw,96px)}.story-articles{margin-top:65px}.story-articles article{margin-bottom:70px}.story-articles h3{margin:16px 0 20px}.story-articles p{max-width:440px;font-size:17px;color:#dedfd6}.story-number{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:#dedfd6}.story-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.story-progress{height:1px;background:rgba(255,255,255,.25);margin-top:35px}.story-progress span{display:block;background:var(--paper);height:100%;width:100%;transform-origin:left;transform:scaleX(.1)}
html[data-motion="on"] .restaurant-story{height:300svh;padding:0 var(--pad)}html[data-motion="on"] .story-shell{position:sticky;top:0;height:100svh;min-height:780px;align-items:center}html[data-motion="on"] .story-photos{position:relative;top:auto;height:74svh;max-height:850px}html[data-motion="on"] .story-photo{position:absolute;inset:0;margin:0;height:auto;opacity:0;transition:opacity .65s cubic-bezier(.2,.7,.3,1)}html[data-motion="on"] .story-photo.active{opacity:1}html[data-motion="on"] .story-articles{position:relative;height:230px;margin-top:40px}html[data-motion="on"] .story-articles article{position:absolute;inset:0;opacity:0;transform:translateY(16px);transition:opacity .55s,transform .65s;pointer-events:none}html[data-motion="on"] .story-articles article.active{opacity:1;transform:none;pointer-events:auto}
.menu-teaser,.editorial,.room-showcase,.location-section{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.menu-teaser-photo{position:relative;padding-bottom:45px}.menu-teaser-photo img{width:100%;height:660px;object-position:center}.photo-note{position:absolute;bottom:0;right:0;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.menu-teaser h2{margin-bottom:30px}.menu-preview{margin:35px 0 22px}.menu-preview>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.menu-preview dt{font-family:var(--serif);font-weight:600;font-size:24px}.menu-preview dd{margin:0;align-self:center;font-size:15px;font-variant-numeric:tabular-nums}.menu-teaser .button{margin-top:28px}.hotel-chapter{background:#e7e8de;overflow:hidden}.hotel-split{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;align-items:center;min-height:860px}.hotel-split h2{margin-bottom:30px}.hotel-split .button{margin-top:28px}.deck{position:relative;padding-top:25px}.deck-photos{position:relative;height:600px}.deck-card{position:absolute;top:15px;left:18%;width:68%;height:535px;box-shadow:0 15px 35px rgba(17,27,23,.18);background:var(--paper);transition:transform .65s cubic-bezier(.2,.7,.3,1)}.deck-card img{width:100%;height:calc(100% - 52px)}.deck-card figcaption{height:52px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:26px;font-weight:600}.deck-card[data-card="0"]{transform:translate(-70px,8px) rotate(-12deg)}.deck-card[data-card="1"]{transform:translate(70px,8px) rotate(12deg)}.deck-card[data-card="2"]{transform:translateY(-20px)}.deck-card.selected{z-index:3;transform:translateY(-35px) rotate(0deg)}.deck-controls{display:flex;justify-content:center;gap:20px;margin-top:20px}.deck-controls button,.gallery-filters button{border:0;border-bottom:1px solid transparent;padding:9px 4px;background:none;font-size:14px;min-height:44px}.deck-controls button[aria-pressed="true"],.gallery-filters button[aria-pressed="true"]{border-color:var(--ink)}
.gallery-section{background:var(--night);color:var(--white);padding-bottom:110px;overflow:hidden}.gallery-heading{display:flex;justify-content:space-between;align-items:end;padding-bottom:55px}.gallery-heading>div:last-child{padding-bottom:8px}.carousel-controls{display:flex;align-items:center;gap:12px;margin-top:28px}.carousel-controls button,.dialog-bottom button{background:none;color:inherit;width:48px;height:48px;border:1px solid currentColor;border-radius:50%;font-size:24px}.carousel-controls button:disabled{opacity:.35;cursor:default}.carousel-status{font-size:12px;margin-left:12px;font-variant-numeric:tabular-nums}.photo-carousel{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#647267 transparent;padding:0 var(--pad) 30px}.photo-carousel figure{flex:0 0 36vw;scroll-snap-align:center}.gallery-open{padding:0;border:0;display:block;width:100%;background:none;position:relative;overflow:hidden;text-align:left}.gallery-open img{width:100%;height:540px;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.gallery-open:hover img{transform:scale(1.025)}.gallery-zoom{position:absolute;bottom:18px;right:18px;color:var(--ink);background:var(--paper);width:44px;height:44px;display:grid;place-items:center;border-radius:50%;font-size:25px}.photo-carousel figcaption,.gallery-grid figcaption{font-family:var(--serif);font-size:30px;font-weight:500;margin-top:18px}.photo-dialog{border:0;padding:65px 25px 20px;background:var(--night);color:var(--white);width:min(1100px,96vw);max-height:96dvh;overflow:auto}.photo-dialog #large-photo{height:72dvh;width:100%;object-fit:contain}.dialog-close{position:absolute;top:12px;right:20px;background:none;border:0;color:var(--white);height:44px;font-size:14px}.dialog-bottom{display:flex;justify-content:center;gap:25px;align-items:center;padding-top:18px}.dialog-bottom p{font-size:14px;text-align:center}.gallery-filters{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:45px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px 30px}.gallery-grid figure:nth-child(3n+2){margin-top:100px}.gallery-grid .gallery-open img{height:490px}.gallery-page{padding-top:30px}
.location-section h2{margin-bottom:28px}.location-photo{position:relative;padding-bottom:40px}.location-photo img{width:100%;height:650px;object-position:center}.closing{position:relative;height:850px;min-height:700px;overflow:hidden;color:var(--white);background:var(--night)}.closing>img{position:absolute;width:100%;height:112%;top:-6%;object-position:50% 65%;will-change:transform}.closing-shade{position:absolute;inset:0;background:rgba(9,20,15,.58)}.closing-copy{position:absolute;inset:80px var(--pad);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.closing-copy h2{font-size:clamp(74px,10vw,160px);line-height:.88;margin-bottom:35px}.closing-copy>p{font-size:18px}.closing-copy .hero-actions{justify-content:center}.footer{background:var(--paper);padding:75px var(--pad) 25px;overflow:hidden}.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1.25fr .7fr;gap:5vw}.footer-main h2{font-family:var(--sans);font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.1em;margin-bottom:20px;font-weight:600}.footer-main p{font-family:var(--serif);font-size:32px;font-weight:600;line-height:1.2}.footer-main a{display:table;font-size:13px;min-height:32px;margin:3px 0}.footer-main address{font-size:14px;font-style:normal}.footer-wordmark{font-family:var(--serif);font-weight:500;font-size:clamp(100px,25vw,420px);line-height:1;letter-spacing:-.06em;white-space:nowrap;margin:75px 0 45px;color:var(--forest)}.footer-bottom{padding-top:24px;border-top:1px solid var(--line);display:flex;align-items:center;gap:28px;font-size:12px;flex-wrap:wrap}.footer-bottom>a:last-child{margin-left:auto}.motion-toggle{background:none;border:0;padding:10px 0;min-height:44px;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.breadcrumbs{padding:135px var(--pad) 0;font-size:12px}.breadcrumbs ol{list-style:none;display:flex;gap:13px;padding:0;margin:0}.breadcrumbs li+li:before{content:'/';margin-right:13px;color:var(--muted)}.page-intro{padding:55px var(--pad) 80px}.page-intro .lead{max-width:660px;margin-top:32px}.page-intro h1{max-width:1200px}.wide-photo{margin:0 var(--pad);height:650px;overflow:hidden}.wide-photo img{width:100%;height:100%}.editorial h2,.room-showcase h2{margin-bottom:28px}.editorial-photo img{width:100%;height:600px}.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.faq details{border-top:1px solid var(--line);padding:23px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px;font-size:18px;font-weight:500}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:28px;line-height:1}.faq details[open] summary span{transform:rotate(45deg)}.faq p{margin-top:20px;font-size:16px;color:var(--muted)}.room-options{padding-top:40px}.room-options article{display:grid;grid-template-columns:80px 1fr auto;gap:30px;align-items:center;padding:32px 0;border-top:1px solid var(--line)}.room-options article:last-child{border-bottom:1px solid var(--line)}.room-options h2{font-size:56px;margin-bottom:10px}.room-options p{font-size:15px;color:var(--muted)}.room-number{font-size:13px}.amenities{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:14px;margin:28px 0}.amenities li{border-bottom:1px solid var(--line);padding:12px 0}.destination-list{display:grid;grid-template-columns:1fr 1fr;gap:65px 8vw;padding-top:25px}.destination-list article{border-top:1px solid var(--line);padding-top:25px}.destination-list h2{font-size:48px;margin:20px 0}.destination-list article>span{font-size:12px}.destination-list p{max-width:480px}.prose{max-width:1000px;padding-top:20px}.prose h2{font-size:42px;margin:40px 0 20px}.prose a{text-decoration:underline;text-underline-offset:4px}
.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:9vw;padding-top:20px}.contact-details article{margin-bottom:50px}.contact-details h2{font-size:48px;margin-bottom:22px}.contact-details .phone{font-family:var(--serif);font-size:36px;font-weight:600}.contact-details p,.contact-details address{font-size:16px;font-style:normal;margin-top:16px}.contact-details .mail{display:block;font-size:15px;margin-top:20px;overflow-wrap:anywhere}.enquiry-form{padding:40px;background:#e7e8de;align-self:start}.enquiry-form h2{font-size:42px;margin-bottom:22px}.enquiry-form>p{font-size:14px;margin-bottom:25px}.enquiry-form label{display:flex;flex-direction:column;gap:8px;font-size:14px;margin-bottom:20px}.enquiry-form label>span{font-size:13px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;min-width:0;border:1px solid #829187;background:var(--paper);color:var(--ink);padding:12px;min-height:48px;font-size:16px;border-radius:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-error{color:#772c23}.enquiry-form small{display:block;font-size:12px;margin-top:16px}.enquiry-form small a{text-decoration:underline}.enquiry-result{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.enquiry-result h3{font-size:32px}.enquiry-result p{font-size:14px;margin-top:16px}.enquiry-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.6 var(--sans);padding:20px;background:var(--paper)}.result-actions{display:flex;gap:10px;flex-wrap:wrap}.result-actions .button{font-size:13px}
.menu-toolbar{position:sticky;top:0;z-index:9;background:var(--paper);border-block:1px solid var(--line);padding:12px var(--pad);display:flex;align-items:center;gap:24px}.menu-toolbar nav{display:flex;gap:25px;overflow-x:auto;scrollbar-width:thin;flex:1}.menu-toolbar a{font-size:13px;white-space:nowrap;min-height:44px;display:flex;align-items:center}.print-menu{background:none;border:1px solid var(--line);font-size:13px;padding:9px 16px;min-height:44px;white-space:nowrap}.menu-layout{display:grid;grid-template-columns:1fr 2fr;gap:8vw;padding-top:65px;align-items:start}.menu-aside{position:sticky;top:110px}.menu-aside img{width:100%;height:420px}.menu-aside>p:first-of-type{font-family:var(--serif);font-size:40px;line-height:1.15;margin-top:32px;font-weight:600}.menu-aside .small-copy{margin-top:25px}.menu-category{margin-bottom:80px;scroll-margin-top:100px}.menu-category h2{font-size:clamp(50px,5vw,80px);margin-bottom:25px}.menu-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.4}.menu-table caption{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.menu-table thead th{text-align:right;font-weight:500;font-size:12px;padding:14px 8px;border-bottom:1px solid var(--ink);white-space:nowrap}.menu-table thead th:first-child{text-align:left}.menu-table tbody th{font-weight:400;text-align:left;padding:18px 8px 18px 0;border-bottom:1px solid var(--line);width:60%}.menu-table td{text-align:right;padding:18px 8px;border-bottom:1px solid var(--line);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:14px}.menu-table .menu-subcategory th{font-family:var(--serif);font-size:28px;font-weight:600;padding:28px 0 14px}.availability-mark{font-size:12px}.menu-notes{font-size:14px;border-top:1px solid var(--line);padding-top:25px}.menu-table-wrap{overflow-x:auto}
html[data-motion="on"] .progressive-text span{opacity:var(--line-opacity,1);transform:translateY(var(--line-y,0));transition:opacity .15s,transform .15s}html[data-motion="off"] .parallax-photo{transform:none!important;will-change:auto}html[data-motion="off"] .deck-card{transition:none}
@media(min-width:1700px){.story-copy{max-width:700px}.story-articles{height:260px!important}.gallery-open img{height:650px}}
@media(max-width:1100px){.header{gap:24px}.desktop-nav{gap:15px}.desktop-nav a{font-size:12px}.brand-name{font-size:34px}.deck-photos{height:480px}.deck-card{height:420px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid figure:nth-child(3n+2){margin-top:0}.gallery-grid figure:nth-child(even){margin-top:70px}.footer-main{grid-template-columns:1fr 1fr;gap:45px}.photo-carousel figure{flex-basis:45vw}.menu-teaser-photo img{height:520px}.location-photo img{height:520px}.restaurant-story{padding-block:75px}.story-shell{gap:4vw}.story-articles p{font-size:16px}.story-articles h3{font-size:44px}.story-copy h2{font-size:68px}.story-photos{top:70px}.story-photo{height:480px}}
@media(max-width:900px){:root{--pad:24px}body{font-size:16px}.header{height:84px;gap:22px}.desktop-nav{display:none}.header-cta{margin-left:auto;font-size:13px}.menu-button{display:flex}.brand-name{font-size:33px}.brand-sub{font-size:9px}.hero{min-height:740px;max-height:none}.hero-copy{inset:125px 24px 100px}.hero h1{font-size:clamp(87px,17vw,152px)}.hero h1>span{font-size:13px;letter-spacing:.12em;margin-bottom:26px}.hero-copy>p:not(.eyebrow){font-size:17px}.hero-bottom{bottom:26px;font-size:11px}.hero-bottom a{gap:15px}.manifesto{grid-template-columns:1fr;gap:45px}.manifesto h2{font-size:clamp(49px,8vw,75px)}.manifesto>div{max-width:540px}.restaurant-story{padding:75px 24px}.story-shell{display:flex;flex-direction:column;gap:35px}.story-photos{position:static;width:100%;display:none}.story-copy{max-width:none;padding:0;width:100%}.story-copy h2{font-size:clamp(50px,9vw,80px)}.story-articles{margin-top:35px}.story-articles article{margin-bottom:45px}.story-articles article:before{content:'';display:block;width:100%;height:440px;margin:0 0 30px;background-size:cover;background-position:center}.story-articles article:nth-child(1):before{background-image:url('/assets/restaurante-640.webp')}.story-articles article:nth-child(2):before{background-image:url('/assets/langostinos-640.webp')}.story-articles article:nth-child(3):before{background-image:url('/assets/terraza-vistas-640.webp')}.story-articles h3{font-size:44px}.story-articles p{max-width:600px}.story-progress{display:none}.menu-teaser,.editorial,.location-section,.room-showcase{grid-template-columns:1fr;gap:45px}.menu-teaser-photo img{height:560px}.menu-teaser>div:nth-child(2){max-width:600px}.hotel-split{grid-template-columns:1fr;min-height:0;gap:60px}.hotel-split>div:first-child{max-width:580px}.deck{max-width:650px;width:100%;margin-inline:auto}.deck-photos{height:570px}.deck-card{height:500px}.gallery-heading{gap:35px;align-items:start}.gallery-heading h2{font-size:58px}.photo-carousel figure{flex-basis:65vw}.gallery-open img{height:490px}.location-photo img{height:530px}.closing{height:750px;min-height:0}.closing-copy h2{font-size:100px}.breadcrumbs{padding-top:110px}.page-intro{padding-top:40px;padding-bottom:55px}.page-intro h1{font-size:clamp(58px,11vw,95px)}.wide-photo{height:520px}.faq-section{grid-template-columns:1fr;gap:45px}.room-options h2{font-size:48px}.room-options article{grid-template-columns:35px 1fr auto;gap:18px}.menu-layout{grid-template-columns:1fr}.menu-aside{display:none}.menu-toolbar{gap:12px}.menu-toolbar nav{gap:22px}.menu-category{scroll-margin-top:100px}.contact-layout{grid-template-columns:1fr}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-details article:last-child{grid-column:1/-1}.enquiry-form{padding:30px}.gallery-grid .gallery-open img{height:430px}.gallery-grid figcaption{font-size:27px}}
@media(max-width:560px){:root{--pad:22px}.section{padding-block:70px}.header{gap:18px}.header-cta{display:none}.menu-button{margin-left:auto}.hero{height:calc(100svh - 56px);min-height:675px}.hero>.hero-photo{object-position:43% 58%}.hero-copy{inset:125px 22px 85px}.hero h1{font-size:clamp(80px,21vw,118px);white-space:nowrap}.hero h1>span{font-size:12px;letter-spacing:.12em;white-space:normal}.hero-copy>.eyebrow{font-size:10px;margin-bottom:22px}.hero-copy>p:not(.eyebrow){font-size:16px;margin-top:28px}.hero-actions{gap:10px;width:100%;justify-content:center}.hero-actions .button{min-width:0;flex:1;padding:14px 15px;gap:8px;font-size:12px;min-height:56px;max-width:230px}.hero-actions .button span{font-size:18px}.hero-bottom{bottom:18px;left:22px;right:22px}.hero-bottom>span{max-width:140px;line-height:1.5}.hero-bottom a{max-width:130px;font-size:10px;gap:12px}.manifesto h2{font-size:clamp(41px,11.6vw,62px);line-height:1.12}.manifesto{gap:35px}.manifesto .eyebrow{font-size:11px}.restaurant-story{padding:65px 22px}.story-articles article:before{height:410px}.story-copy h2{font-size:54px}.story-articles h3{font-size:42px}.story-number{font-size:11px}.story-actions{gap:16px}.menu-teaser-photo img{height:460px}.menu-teaser h2,.hotel-split h2,.location-section h2{font-size:59px}.menu-teaser p br{display:none}.menu-preview dt{font-size:23px}.menu-preview dd{font-size:14px}.hotel-split{gap:45px;padding-bottom:55px}.deck-photos{height:410px}.deck-card{height:355px;width:71%;left:15%}.deck-card[data-card="0"]{transform:translate(-35px,12px) rotate(-9deg)}.deck-card[data-card="1"]{transform:translate(35px,12px) rotate(9deg)}.deck-card.selected{transform:translateY(-15px)}.deck-controls{gap:18px;margin-top:0}.deck-controls button{font-size:12px}.gallery-heading{display:block;padding-bottom:35px}.gallery-heading>div:last-child{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-top:26px}.gallery-heading h2{font-size:58px}.carousel-controls{gap:8px;margin-top:0}.carousel-status{display:none}.carousel-controls button{width:44px;height:44px}.photo-carousel{gap:16px;padding-bottom:20px}.photo-carousel figure{flex-basis:78vw}.gallery-open img{height:420px}.gallery-section{padding-bottom:60px}.gallery-heading .text-link{font-size:13px;gap:10px}.photo-carousel figcaption{font-size:26px}.location-photo img{height:440px}.closing{height:675px}.closing-copy{inset:50px 22px}.closing-copy h2{font-size:90px}.closing-copy .eyebrow{font-size:10px}.closing-copy>p:not(.eyebrow){font-size:16px}.footer{padding-top:55px;padding-bottom:75px}.footer-main{grid-template-columns:1fr;gap:35px}.footer-main p{font-size:35px}.footer-main .eyebrow{font-size:11px}.footer-main a{font-size:14px;min-height:36px}.footer-wordmark{font-size:25vw;margin:45px 0 25px}.footer-bottom{gap:12px 22px;font-size:11px}.footer-bottom>a:last-child{margin-left:0}.mobile-dock{position:fixed;bottom:0;left:0;right:0;z-index:15;background:var(--paper);color:var(--ink);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-dock a{display:flex;justify-content:center;align-items:center;min-height:56px;font-size:12px}.mobile-dock a:last-child{background:var(--forest);color:var(--white)}.page-intro{padding-bottom:45px}.page-intro h1{font-size:61px}.page-intro .lead{font-size:18px;margin-top:25px}.page-intro .eyebrow{font-size:11px}.wide-photo{height:390px}.editorial-photo img{height:410px}.faq-section h2{font-size:59px}.faq summary{font-size:16px}.room-options{padding-top:15px}.room-options article{grid-template-columns:24px 1fr;gap:15px}.room-options article>.text-link{grid-column:2;justify-self:start}.room-options h2{font-size:45px}.room-showcase h2{font-size:60px}.amenities{grid-template-columns:1fr 1fr;font-size:13px}.destination-list{grid-template-columns:1fr;gap:45px;padding-top:0}.destination-list h2{font-size:40px}.contact-details{grid-template-columns:1fr;gap:0}.contact-details h2{font-size:43px;margin-bottom:10px}.contact-details article{margin-bottom:35px}.contact-details .phone{font-size:33px}.enquiry-form{padding:25px 18px}.enquiry-form h2{font-size:37px}.form-row{gap:12px}.enquiry-form .button{padding-inline:18px}.gallery-filters{gap:16px;margin-bottom:30px}.gallery-filters button{font-size:12px}.gallery-grid{grid-template-columns:1fr;gap:35px}.gallery-grid figure:nth-child(even){margin-top:0}.gallery-grid .gallery-open img{height:440px}.gallery-page{padding-top:10px}.photo-dialog{padding:65px 12px 18px;width:100vw;max-width:none}.photo-dialog #large-photo{height:65dvh}.dialog-bottom{gap:12px}.dialog-bottom p{font-size:12px;max-width:210px}.dialog-bottom button{flex-shrink:0;width:44px;height:44px}.menu-toolbar{padding:8px 22px}.menu-toolbar nav{gap:18px}.menu-toolbar a{font-size:12px}.print-menu{padding:9px 10px;font-size:11px}.menu-layout{padding-top:40px}.menu-category{margin-bottom:55px;scroll-margin-top:90px}.menu-category h2{font-size:57px}.menu-table{font-size:14px}.menu-table thead th{font-size:10px;white-space:normal}.menu-table tbody th{width:auto;min-width:130px;padding-block:16px}.menu-table td{font-size:12px;padding:16px 4px}.menu-table .menu-subcategory th{font-size:27px}.menu-notes{font-size:13px}.prose{padding-top:0}.prose h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.parallax-photo{transform:none!important;will-change:auto!important}.progressive-text span{opacity:1!important;transform:none!important}}
html[data-motion="off"]{scroll-behavior:auto}html[data-motion="off"] *{animation:none!important;transition:none!important}
html{scroll-padding-top:0}.hero h1{font-weight:600}.mobile-story-photo{display:none}html[data-motion="on"] .story-articles{height:300px}.story-actions{margin-top:12px}.contact-layout>*{min-width:0}.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.form-row label{min-width:0}
@media(max-width:900px){.contact-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:560px){.contact-details{grid-template-columns:minmax(0,1fr)}}
@media(max-width:400px){.form-row{grid-template-columns:minmax(0,1fr)}}
@media(min-width:901px) and (max-height:800px){html[data-motion="on"] .story-shell{min-height:720px}.story-copy h2{font-size:62px}.story-copy h3{font-size:42px}html[data-motion="on"] .story-articles{height:260px;margin-top:28px}.story-copy .eyebrow{margin-bottom:18px}.story-progress{margin-top:25px}}
@media(max-width:900px){.story-articles article:before{display:none}.mobile-story-photo{display:block;width:100%;height:440px;object-fit:cover;margin-bottom:30px}}
@media(max-width:560px){.mobile-story-photo{height:410px}}
@media print{body{font-size:11pt;background:white;color:black}.header,.menu-dialog,.mobile-dock,.footer,.closing,.breadcrumbs,.menu-toolbar,.menu-aside,.photo-dialog{display:none!important}.page-intro{padding:0 0 20px}.page-intro h1{font-size:40pt}.page-intro .lead{font-size:12pt}.menu-layout{display:block;padding:0}.menu-category{margin-bottom:24pt;break-inside:avoid}.menu-category h2{font-size:28pt}.menu-category .eyebrow{margin-bottom:8pt}.menu-table{font-size:10pt}.menu-table th,.menu-table td{padding-block:7pt!important}.menu-table td{font-size:10pt}.menu-table thead th{font-size:9pt}.menu-table-wrap{overflow:visible}.button{display:none}.menu-notes{font-size:10pt}}

/* Soulful: organic details composed originally for El Bosque. */
:root{--night:#15342d;--copper:#ecc5ae}
.button{border-radius:99px;padding-inline:27px}.light{background:var(--copper);border-color:var(--copper);color:var(--ink)}.light:hover{background:#f6d7c4}.header-cta{border:1px solid currentColor;border-radius:99px;padding:0 21px;min-height:44px}
.hero{border-radius:0}.hero-companions{position:absolute;inset:0;pointer-events:none}.hero-companion{position:absolute;pointer-events:auto;width:clamp(115px,11vw,175px);color:var(--white)}.hero-companion img{width:100%;height:210px;box-shadow:0 12px 35px rgba(17,27,23,.15)}.hero-companion span{display:block;font-size:11px;letter-spacing:.06em;margin-top:16px;text-align:center}.hero-companion.food{left:var(--pad);top:34%;transform:rotate(-5deg)}.hero-companion.food img{border-radius:0}.hero-companion.stay{right:var(--pad);top:44%;transform:rotate(4deg)}.hero-companion.stay img{border-radius:0}.hero-copy{pointer-events:none}.hero-copy a{pointer-events:auto}.hero h1{font-size:clamp(90px,12.5vw,200px)}
.manifesto{align-items:center}.manifesto-portraits{height:240px;position:relative;margin:0 0 35px 24px;max-width:340px}.manifesto-portraits img{position:absolute;object-fit:cover}.portrait-view{width:170px;height:220px;border-radius:0;left:0;top:0;transform:rotate(-5deg)}.portrait-taste{width:130px;height:130px;border-radius:0;left:145px;top:88px;transform:rotate(5deg);border:5px solid var(--paper)}
html[data-motion="on"] .story-photos{align-self:center;border-radius:0;overflow:hidden}.menu-teaser-photo img{border-radius:0}.deck-card{border-radius:0;overflow:hidden}.gallery-open{border-radius:0}.location-photo img{border-radius:0}.wide-photo{border-radius:0}.mobile-story-photo{border-radius:0}.closing{border-radius:0}.enquiry-form{border-radius:24px}.print-menu{border-radius:99px}.carousel-controls button:hover{background:var(--copper);color:var(--ink)}
@media(max-width:1200px){.hero-companions{display:none}.hero h1{font-size:clamp(90px,13.8vw,200px)}}
@media(max-width:900px){.hero{border-radius:0}.manifesto-portraits{height:215px;margin-left:10px;margin-bottom:30px}.portrait-view{height:195px;width:150px}.portrait-taste{width:115px;height:115px;left:130px;top:75px}.closing{border-radius:0}.story-articles article:first-child .mobile-story-photo{border-radius:0}}
@media(max-width:560px){.hero{border-radius:0}.hero h1{font-size:clamp(80px,21vw,118px)}.button{padding-inline:23px}.hero-actions .button{padding-inline:14px}.header-cta{display:none}.gallery-open{border-radius:0}.wide-photo{border-radius:0}.location-photo img{border-radius:0}.closing{border-radius:0}.manifesto-portraits{height:200px}.enquiry-form{border-radius:20px}}
@media(prefers-reduced-motion:reduce){.hero-companion{transform:none}}
html[data-motion="off"] .hero-companion{transform:none}

/* V6: V4 composition with independent scroll-driven photographs. */
html[data-photo-motion="on"] .scroll-photo{translate:0 var(--photo-shift,0px);will-change:translate}
html[data-photo-motion="off"] .scroll-photo{translate:none;will-change:auto}
.manifesto-portraits{isolation:isolate}.portrait-taste{z-index:1}
@media(prefers-reduced-motion:reduce){.scroll-photo{translate:none!important;will-change:auto!important}}
@media(max-width:380px){.menu-layout>*{min-width:0}.menu-table tbody th{min-width:95px;font-size:13px}.menu-table td{padding-inline:3px}}
.brand .brand-logo{display:block;width:240px;height:auto;max-width:100%;object-fit:contain}
.header.eb-header .brand{padding:0;background:transparent;border-radius:0}
.header.eb-header .brand-logo{width:250px;filter:brightness(0) invert(1) drop-shadow(0 1px 5px rgba(0,0,0,.2))}
.footer-logo{display:block;width:min(620px,100%);margin:64px auto 44px}
.footer-logo img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:1100px){.header:not(.eb-header) .brand-logo{width:210px}}
@media(max-width:600px){.brand .brand-logo{width:205px}.header.eb-header .brand-logo{width:160px}.footer-logo{margin:42px 0 30px}}
@media(max-width:380px){.header:not(.eb-header) .brand-logo{width:170px}.header.eb-header .brand-logo{width:135px}.header.eb-header{gap:6px}}

.footer-main .footer-hours-title{margin-top:28px;margin-bottom:10px}
.footer-main p.footer-hours{font-family:var(--sans);font-size:14px;font-weight:400;line-height:1.6;max-width:32ch}
.page-intro h1 .intro-label{display:block;font-family:var(--sans);line-height:1.6;margin-bottom:22px}
.food-intro h1 .intro-label{display:block;font-family:var(--sans);font-weight:600;line-height:1.6;margin-bottom:28px}
@media(max-width:750px){.food-intro h1 .intro-label{font-size:10px;margin-bottom:20px}}
