@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Marcellus&family=Jost:wght@300;400;500&family=Hanken+Grotesk:wght@300;400;500;600&display=swap";:root{--cream:#f3efe5;--cream-2:#ece6d8;--cream-3:#e3dbc9;--paper:#faf7f0;--ink:#2a2a22;--ink-soft:#4a4a3e;--muted:#74705f;--hairline:#d8d0bd;--olive:#43472f;--olive-deep:#33361f;--olive-soft:#5c6042;--sea:#7e97a3;--sea-deep:#5e7884;--brass:#b08d57;--brass-soft:#c7a878;--bg:var(--cream);--bg-elev:var(--paper);--fg:var(--ink);--fg-muted:var(--muted);--accent:var(--olive);--accent-2:var(--brass);--line:var(--hairline);--display:"Cormorant Garamond", Georgia, serif;--label:"Jost", system-ui, sans-serif;--body:"Hanken Grotesk", system-ui, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--ease-soft:cubic-bezier(.4, 0, .2, 1);--dur:.6s;--dur-fast:.32s;--gutter:clamp(20px, 5vw, 88px);--maxw:1280px}.landa[data-dir=atlantico]{--bg:var(--cream);--accent:var(--olive);--accent-2:var(--brass);--headfont:"Cormorant Garamond", Georgia, serif;--head-weight:500}.landa[data-dir=mareira]{--bg:#f1eee6;--accent:var(--sea-deep);--accent-2:var(--olive);--headfont:"Marcellus", Georgia, serif;--head-weight:400}.landa[data-dir=granito]{--bg:#eee9dc;--accent:var(--olive);--accent-2:var(--brass);--headfont:"Cormorant Garamond", Georgia, serif;--head-weight:600}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--body);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:400;line-height:1.6;overflow-x:hidden}.landa{background:var(--bg);transition:background var(--dur) var(--ease)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}::selection{background:var(--olive);color:var(--cream)}.eyebrow{font-family:var(--label);letter-spacing:.32em;text-transform:uppercase;color:var(--accent-2);font-size:clamp(11px,1vw,12.5px);font-weight:400}.display{font-family:var(--headfont,var(--display));font-weight:var(--head-weight,500);letter-spacing:-.01em;color:var(--fg);line-height:1.02}.serif-i{font-family:var(--display);font-style:italic;font-weight:300}.section{padding-block:clamp(72px,11vw,148px)}.wrap{width:min(100% - 2*var(--gutter), var(--maxw));margin-inline:auto}.wrap-wide{width:min(100% - 2*var(--gutter), 1480px);margin-inline:auto}.rule{background:var(--line);border:0;height:1px}.reveal{opacity:0;transition:opacity 1s var(--ease), transform 1s var(--ease);transform:translateY(26px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}html{scroll-behavior:auto}}.btn{font-family:var(--label);letter-spacing:.14em;text-transform:uppercase;transition:all var(--dur-fast) var(--ease-soft);white-space:nowrap;border:1px solid #0000;border-radius:2px;align-items:center;gap:12px;padding:16px 30px;font-size:13.5px;display:inline-flex}.btn-solid{background:var(--accent);color:var(--cream)}.btn-solid:hover{background:var(--olive-deep);transform:translateY(-2px)}.btn-ghost{color:var(--fg);border-color:var(--fg);background:0 0}.btn-ghost:hover{background:var(--fg);color:var(--bg)}.btn .arrow{transition:transform var(--dur-fast) var(--ease)}.btn:hover .arrow{transform:translate(5px)}.nav{z-index:60;padding:22px var(--gutter);transition:background var(--dur) var(--ease), padding var(--dur) var(--ease), box-shadow var(--dur) var(--ease);justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.nav.scrolled{background:color-mix(in oklab, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line);padding-block:14px}.nav-word{font-family:var(--display);letter-spacing:.02em;color:var(--fg);transition:color var(--dur) var(--ease), opacity var(--dur-fast) var(--ease);font-size:26px;font-weight:500}.nav-links{align-items:center;gap:clamp(18px,2.4vw,40px);display:flex}.nav-link{font-family:var(--label);letter-spacing:.12em;text-transform:uppercase;color:var(--fg);opacity:.82;transition:opacity var(--dur-fast) var(--ease);padding-block:6px;font-size:13px;position:relative}.nav-link:after{content:"";background:var(--accent-2);width:0;height:1px;transition:width var(--dur-fast) var(--ease);position:absolute;bottom:0;left:0}.nav-link:hover{opacity:1}.nav-link:hover:after{width:100%}.lang{font-family:var(--label);letter-spacing:.08em;border:1px solid var(--line);border-radius:2px;align-items:center;font-size:12px;display:inline-flex;overflow:hidden}.lang button,.lang a{color:var(--fg);opacity:.55;transition:all var(--dur-fast) var(--ease);text-transform:uppercase;font-family:var(--label);letter-spacing:.08em;background:0 0;border:0;padding:7px 11px;font-size:12px;line-height:1}.lang button.on,.lang a.on{background:var(--accent);color:var(--cream);opacity:1}.lang a:hover{opacity:.85}.menu-toggle{display:none}.hero{flex-direction:column;min-height:100svh;display:flex;position:relative}.hero-top{text-align:center;padding:120px var(--gutter) 40px;flex:1;place-items:center;display:grid}.hero-logo{width:min(52vw,520px);height:auto}.hero-tag{font-family:var(--display);color:var(--ink-soft);margin-top:6px;font-size:clamp(20px,2.6vw,30px);font-style:italic;font-weight:300}.hero-sub{font-family:var(--label);letter-spacing:.3em;text-transform:uppercase;color:var(--accent-2);margin-top:20px;font-size:clamp(11px,1vw,13px)}.hero-media{height:clamp(360px,56vh,640px);position:relative;overflow:hidden}.hero-media img{object-fit:cover;width:100%;height:100%;transform:scale(1.05)}.hero-scrim{background:linear-gradient(#1e1c1400 54%,#1e1c1457);position:absolute;inset:0}.scroll-cue{color:var(--cream);font-family:var(--label);letter-spacing:.28em;text-transform:uppercase;flex-direction:column;align-items:center;gap:8px;font-size:10.5px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.scroll-cue .line{opacity:.6;width:1px;height:38px;animation:cue 2.4s var(--ease) infinite;transform-origin:top;background:currentColor}@keyframes cue{0%,to{opacity:.3;transform:scaleY(.4)}50%{opacity:.7;transform:scaleY(1)}}.hero[data-hero=overlay]{display:block}.hero[data-hero=overlay] .hero-full{position:absolute;inset:0}.hero[data-hero=overlay] .hero-full img{object-fit:cover;width:100%;height:100%}.hero[data-hero=overlay] .hero-full:after{content:"";background:linear-gradient(#1c1a1257,#1c1a121f 40%,#1c1a1280);position:absolute;inset:0}.hero[data-hero=overlay] .hero-center{z-index:2;text-align:center;min-height:100svh;padding:var(--gutter);place-items:center;display:grid;position:relative}.hero[data-hero=overlay] .hero-logo{filter:brightness(0)invert();opacity:.96;width:min(58vw,560px)}.hero[data-hero=overlay] .hero-tag{color:#ffffffe6}.hero[data-hero=overlay] .hero-sub{color:var(--brass-soft)}.sec-head{gap:18px;max-width:640px;display:grid}.sec-head.center{text-align:center;justify-items:center;margin-inline:auto}.sec-title{font-size:clamp(34px,5vw,64px)}.lead{color:var(--fg-muted);font-size:clamp(16px,1.5vw,19px);font-weight:300;line-height:1.7}.gallery-grid{grid-template-columns:1.4fr 1fr;grid-auto-rows:1fr;gap:clamp(10px,1.4vw,20px);margin-top:clamp(40px,5vw,72px);display:grid}.gframe{background:var(--cream-3);border-radius:2px;position:relative;overflow:hidden}.gframe img{object-fit:cover;width:100%;height:100%;transition:transform 1.4s var(--ease)}.gframe:hover img{transform:scale(1.06)}.gframe-cap{color:#fff;z-index:2;position:absolute;bottom:16px;left:18px}.gframe-cap .k{font-family:var(--label);letter-spacing:.26em;text-transform:uppercase;opacity:.85;font-size:10.5px}.gframe-cap .t{font-family:var(--display);font-size:24px;line-height:1.1}.gframe:after{content:"";opacity:.9;transition:opacity var(--dur) var(--ease);background:linear-gradient(#0000 50%,#19171075);position:absolute;inset:0}.gframe.tall{grid-row:span 2}.menu-wrap{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(40px,7vw,110px);display:grid}.menu-col{gap:6px;display:grid}.menu-group-label{font-family:var(--label);letter-spacing:.26em;text-transform:uppercase;color:var(--accent-2);margin-bottom:20px;font-size:11.5px}.dish{border-bottom:1px solid var(--line);transition:padding var(--dur-fast) var(--ease);grid-template-columns:1fr auto;align-items:baseline;gap:8px 16px;padding:19px 0;display:grid}.dish:hover{padding-inline-start:8px}.dish .name{font-family:var(--display);color:var(--fg);font-size:24px;font-weight:500}.dish .price{font-family:var(--label);color:var(--accent);letter-spacing:.04em;font-size:14px}.dish .desc{color:var(--fg-muted);grid-column:1/-1;font-size:14.5px;font-weight:300;line-height:1.55}.loc-grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(30px,5vw,80px);display:grid}.loc-card{gap:30px;display:grid}.loc-rows{gap:22px;display:grid}.loc-row{grid-template-columns:24px 1fr;align-items:start;gap:16px;display:grid}.loc-row .ic{color:var(--accent-2);margin-top:3px}.loc-row .k{font-family:var(--label);letter-spacing:.2em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:5px;font-size:11px}.loc-row .v{color:var(--fg);font-size:16px;line-height:1.55}.loc-row .v b{font-weight:500}.loc-media{aspect-ratio:4/5;border-radius:2px;position:relative;overflow:hidden}.loc-media img{object-fit:cover;width:100%;height:100%}.resv{background:var(--olive-deep);color:var(--cream);position:relative;overflow:hidden}.resv .eyebrow{color:var(--brass-soft)}.resv .sec-title,.resv .lead{color:var(--cream)}.resv .lead{color:color-mix(in oklab, var(--cream) 78%, transparent)}.resv-deco{pointer-events:none;opacity:.5;background:radial-gradient(60% 80% at 92% 8%,#b08d5738,#0000 60%);position:absolute;inset:0}.resv-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(40px,6vw,96px);display:grid}.form{gap:26px;display:grid}.field{gap:10px;display:grid}.field>label,.field-label{font-family:var(--label);letter-spacing:.16em;text-transform:uppercase;color:var(--brass-soft);font-size:11.5px}.row-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}.row-3{grid-template-columns:1fr 1fr 1fr;gap:20px;display:grid}.inp{color:var(--cream);font-family:var(--body);transition:border-color var(--dur-fast) var(--ease);background:0 0;border:0;border-bottom:1px solid #f3efe552;padding:12px 2px;font-size:16px}.inp::placeholder{color:#f3efe56b}.inp:focus{border-color:var(--brass-soft);outline:none}.inp option{color:var(--ink)}textarea.inp{resize:vertical;border:1px solid #f3efe542;border-radius:3px;min-height:64px;padding:12px}.choice{flex-wrap:wrap;gap:10px;display:flex}.choice button{color:var(--cream);font-family:var(--label);letter-spacing:.06em;transition:all var(--dur-fast) var(--ease);background:0 0;border:1px solid #f3efe54d;border-radius:2px;padding:12px 18px;font-size:13px}.choice button:hover{border-color:var(--brass-soft)}.choice button.sel{background:var(--brass);border-color:var(--brass);color:var(--olive-deep);font-weight:500}.zone-cards{grid-template-columns:1fr 1fr;gap:14px;display:grid}.zone-card{text-align:left;transition:all var(--dur-fast) var(--ease);background:#f3efe50a;border:1px solid #f3efe538;border-radius:3px;gap:6px;padding:18px;display:grid}.zone-card:hover{border-color:var(--brass-soft);background:#f3efe514}.zone-card.sel{border-color:var(--brass);background:#b08d5729}.zone-card .zt{font-family:var(--display);color:var(--cream);font-size:22px}.zone-card .zd{color:color-mix(in oklab, var(--cream) 66%, transparent);font-size:13px;font-weight:300;line-height:1.5}.zone-card .zmark{position:relative}.deposit{background:#b08d5714;border:1px solid #b08d5766;border-radius:3px;align-items:flex-start;gap:14px;padding:18px;display:flex}.deposit .ic{color:var(--brass-soft);flex-shrink:0;margin-top:1px}.deposit p{color:color-mix(in oklab, var(--cream) 82%, transparent);font-size:13.5px;font-weight:300;line-height:1.55}.deposit b{color:var(--cream);font-weight:600}.submit{background:var(--brass);width:100%;color:var(--olive-deep);border:0;justify-content:center;padding:19px;font-weight:500}.submit:hover{background:var(--brass-soft);transform:translateY(-2px)}.submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.resv-aside{align-content:start;gap:28px;display:grid}.resv-aside .hours{gap:12px;display:grid}.resv-aside .hours .hr{border-bottom:1px solid #f3efe529;justify-content:space-between;padding-bottom:12px;font-size:14.5px;display:flex}.resv-aside .hours .hr .d{color:color-mix(in oklab, var(--cream) 70%, transparent);font-family:var(--label);letter-spacing:.05em}.resv-done{text-align:center;place-items:center;gap:18px;padding:20px 0;display:grid}.resv-done .check{border:1px solid var(--brass-soft);width:60px;height:60px;color:var(--brass-soft);border-radius:50%;place-items:center;display:grid}.fade-in{animation:fadeUp .7s var(--ease) both}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.foot{background:var(--bg);border-top:1px solid var(--line);padding:clamp(56px,8vw,96px) 0 40px}.foot-grid{grid-template-columns:1.4fr 1fr 1fr;gap:48px;display:grid}.foot-word{font-family:var(--display);color:var(--fg);font-size:40px;font-weight:500}.foot-tag{color:var(--fg-muted);max-width:30ch;margin-top:12px;font-weight:300;line-height:1.6}.foot-col h4{font-family:var(--label);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);margin-bottom:18px;font-size:11px}.foot-col a,.foot-col p{color:var(--fg-muted);transition:color var(--dur-fast) var(--ease);padding:6px 0;font-size:14.5px;display:block}.foot-col a:hover{color:var(--accent)}.foot-bot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:clamp(48px,7vw,80px);padding-top:26px;display:flex}.foot-bot p,.foot-bot a{font-family:var(--label);letter-spacing:.04em;color:var(--fg-muted);font-size:12px}.submit.is-loading{opacity:.6;cursor:progress}[hidden]{display:none!important}.loc-row .v>div{margin-bottom:2px}.legal-head{padding-block:clamp(140px,16vw,200px) clamp(20px,4vw,48px)}.legal-head .sec-title{font-size:clamp(40px,6vw,76px)}.legal-body{padding-top:clamp(24px,4vw,48px)}.legal-prose{gap:8px;max-width:68ch;display:grid}.legal-prose h3{font-family:var(--display);color:var(--fg);margin-top:clamp(28px,4vw,44px);margin-bottom:4px;font-size:clamp(22px,2.6vw,28px);font-weight:500}.legal-prose h3:first-child{margin-top:0}.legal-prose p{color:var(--fg-muted);font-size:16px;font-weight:300;line-height:1.75}.legal-prose .legal-note{border-top:1px solid var(--line);font-family:var(--label);letter-spacing:.03em;color:var(--fg-muted);margin-top:clamp(36px,5vw,56px);padding-top:24px;font-size:13px}@media (width<=920px){.nav-links{gap:16px}.nav-links .nav-link{display:none}.gallery-grid{grid-template-columns:1fr 1fr}.menu-wrap,.loc-grid,.resv-grid{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}@media (width<=600px){.gallery-grid{grid-template-columns:1fr}.gframe.tall{grid-row:span 1}.row-2,.row-3,.zone-cards,.foot-grid{grid-template-columns:1fr}.hero-logo{width:72vw}.nav-word{font-size:22px}}
