@font-face{font-family:Galderglynn;src:url('/assets/galderglynn-regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Galderglynn;src:url('/assets/galderglynn-light.woff') format('woff');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Fraunces;src:url('/assets/fraunces.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--green:#043423;--gold:#edb118;--paper:#f6edd5;--ink:#023325;--line:#04342330;--serif:Fraunces,Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:160px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Galderglynn,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body:before{content:'';position:fixed;inset:0;z-index:10;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.6' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:fixed;top:-80px;left:20px;padding:12px;background:var(--green);color:var(--paper);z-index:100}.skip:focus{top:10px}.site-header{height:112px;padding:20px 6%;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:30}.brand{display:block;width:205px;line-height:0}.brand img{width:100%;height:auto}.main-nav{display:flex;gap:40px;align-items:center}.main-nav a{text-decoration:none;font-size:15px;padding:10px 0}.main-nav a:hover,.main-nav a[aria-current=page]{border-bottom:2px solid var(--ink)}.nav-toggle{display:none;border:0;background:transparent;color:var(--ink);padding:12px}.nav-toggle span{display:block;width:24px;height:2px;background:currentColor;margin:5px 0}.hero{position:relative;min-height:min(820px,calc(100svh - 112px));overflow:hidden}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:0}.hero-copy{position:relative;z-index:1;padding:48px 6% 390px;max-width:860px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;margin:0 0 22px}.hero h1{font-family:var(--serif);font-weight:750;font-size:clamp(56px,6.2vw,100px);line-height:.99;letter-spacing:-.055em;margin:0 0 36px;max-width:760px}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;min-height:56px;padding:17px 36px;background:var(--green);color:var(--paper);text-decoration:none;border:0;border-radius:3px;font-size:15px;font-weight:700;letter-spacing:.02em}.button.gold{background:var(--gold);color:var(--green)}.button:hover{filter:brightness(1.08)}.text-link{text-decoration:none;border-bottom:1px solid currentColor;padding:9px 0;font-size:13px;font-weight:700;margin-left:9px}.site-footer{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 6%;border-top:1px solid var(--line);font-size:12px;line-height:1.7}.footer-brand{width:120px}.footer-brand img{width:100%}.footer-links{display:flex;gap:20px}.footer-links a{text-decoration:none}.menu-header{border-bottom:1px solid var(--line)}.menu-top{max-width:1100px;margin:auto;padding:50px 30px 30px;display:flex;align-items:end;justify-content:space-between;gap:25px}.menu-top h1,.reservation h1{font-family:var(--serif);font-size:clamp(54px,7vw,84px);font-weight:700;letter-spacing:-.055em;line-height:1.02;margin:0}.menu-switch{display:flex;background:#0434230b;border-radius:40px;padding:4px}.menu-switch a{padding:12px 28px;border-radius:30px;text-decoration:none;font-size:14px}.menu-switch a[aria-current=page]{background:var(--green);color:var(--paper)}.category-bar{position:sticky;top:0;background:var(--paper);z-index:20;border-bottom:1px solid var(--line)}.category-nav{display:flex;gap:30px;overflow:auto;scrollbar-width:none;max-width:1040px;margin:auto;padding:0 0}.category-nav::-webkit-scrollbar{display:none}.category-nav a{flex-shrink:0;text-decoration:none;padding:20px 0;font-size:14px;position:relative}.category-nav a.active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--green);border-radius:100% 100% 0 0}.menu-layout{max-width:1100px;margin:auto;padding:22px 30px 70px;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:70px}.menu-section{padding-top:32px;scroll-margin-top:65px}.menu-section h2{font-family:var(--serif);font-size:42px;letter-spacing:-.04em;margin:0 0 15px}.section-note{font-size:13px;line-height:1.6;margin:0 0 18px}.menu-item{padding:22px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:24px}.menu-item h3{font-size:16px;line-height:1.45;font-weight:500;margin:0}.menu-item p{color:#42574a;font-size:13px;line-height:1.55;margin:6px 0 0}.prices{flex-shrink:0;font-family:var(--serif);font-size:19px;font-weight:650;display:flex;gap:22px;align-items:start;text-align:right}.prices span{min-width:55px}.prices small{display:block;font-family:Galderglynn,Arial,sans-serif;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:400;margin:0 0 6px}.menu-aside{position:sticky;top:95px;align-self:start;padding:30px 0}.aside-art{height:330px;width:100%;object-fit:cover;object-position:80% 70%;border-radius:150px 150px 0 0;filter:saturate(.85)}.menu-aside p{font-family:var(--serif);font-size:27px;line-height:1.2}.menu-aside a{font-size:12px}.menu-notes{margin-top:55px;font-size:12px;line-height:1.8;color:#42574a}.menu-notes p{margin:12px 0}.cover{font-weight:700;color:var(--green)}.reservation{position:relative;min-height:720px;padding:80px 8% 120px;overflow:hidden}.reservation-copy{position:relative;z-index:1;max-width:500px}.reservation h1{font-size:clamp(65px,7vw,100px);margin-bottom:25px}.reservation .intro{font-family:var(--serif);font-size:23px;margin-bottom:50px}.address-block{border-top:3px solid var(--gold);padding-top:25px;margin-bottom:28px}.address-block .eyebrow{margin-bottom:12px}address{font-style:normal;font-size:18px;line-height:1.7}.whatsapp{letter-spacing:0;gap:12px;min-width:280px}.whatsapp:disabled{opacity:.78;cursor:default}.whatsapp svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7}.reservation-art{position:absolute;right:-7%;bottom:0;width:68%;height:100%;object-fit:cover;object-position:85% center;mask-image:linear-gradient(to right,transparent,#000 30%);opacity:.9}
@media(min-width:1500px){.hero-copy{padding-top:65px}.hero{max-height:1000px}.hero-art{object-position:center 58%}}
@media(max-width:900px){.site-header{padding:20px 5%;height:100px}.brand{width:170px}.main-nav{gap:25px}.hero{min-height:800px}.hero-copy{padding:40px 5% 460px;max-width:660px}.hero h1{font-size:74px}.hero-art{object-position:62% center}.menu-layout{grid-template-columns:minmax(0,1fr);gap:0;max-width:800px}.menu-aside{display:none}.category-nav{padding:0 30px}.reservation-art{width:80%;opacity:.4}.reservation-copy{max-width:460px}}
@media(max-width:600px){html{scroll-padding-top:85px}.site-header{height:88px;padding:16px 23px}.brand{width:145px}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:80px;right:20px;left:20px;background:var(--paper);border:1px solid var(--line);padding:20px 25px;box-shadow:0 8px 15px #04342312;justify-content:space-between;gap:15px}.main-nav.open{display:flex}.hero{min-height:760px;height:calc(100svh - 88px);max-height:960px}.hero-copy{text-align:center;padding:30px 23px 0;max-width:none}.hero .eyebrow{font-size:9px;margin-bottom:18px}.hero h1{font-size:clamp(48px,13.5vw,76px);line-height:1.02;letter-spacing:-.055em;margin:0 auto 26px;max-width:400px}.actions{max-width:320px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px}.button{min-height:51px;padding:14px 20px;font-size:13px;gap:12px}.actions .text-link{grid-column:1/-1;justify-self:center;margin:3px 0 0}.hero-art{height:60%;top:auto;bottom:0;object-fit:cover;object-position:74% center;mask-image:linear-gradient(transparent,#000 15%)}.site-footer{padding:28px 23px;display:grid;grid-template-columns:1fr 1fr;font-size:11px}.footer-brand{width:105px}.footer-links{grid-column:1/-1}.menu-top{padding:30px 23px 24px;display:block}.menu-top .eyebrow{margin-bottom:13px}.menu-top h1{font-size:53px;margin-bottom:24px}.menu-switch a{flex:1;text-align:center}.menu-switch{width:100%}.category-nav{padding:0 23px;gap:26px}.category-nav a{font-size:13px;padding:17px 0}.menu-layout{padding:5px 23px 45px}.menu-section{padding-top:30px}.menu-section h2{font-size:36px}.menu-item{gap:16px;padding:19px 0}.menu-item h3{font-size:15px}.menu-item p{font-size:12px}.prices{font-size:17px;gap:12px}.prices span{min-width:43px}.prices small{font-size:8px}.reservation{padding:35px 23px 340px;min-height:790px}.reservation h1{font-size:62px;max-width:330px}.reservation .intro{font-size:20px;margin-bottom:38px}.address-block{padding-top:20px}.reservation-art{height:340px;width:100%;right:0;bottom:0;opacity:1;mask-image:linear-gradient(transparent,#000 30%);object-position:75% 70%}.whatsapp{width:100%;min-height:56px}.reservation-copy{max-width:500px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Galderglynn for navigation and copy; original display type and prices retained. */
.main-nav a,.footer-links a,.menu-switch a,.category-nav a,.button,.text-link,.eyebrow,.menu-item h3{font-family:Galderglynn,Arial,sans-serif;font-weight:400}
.menu-item p,.section-note,.menu-notes,address,.site-footer{font-family:Galderglynn,Arial,sans-serif;font-weight:300}
.menu-item h3{font-size:18px;line-height:1.4;letter-spacing:.015em}
.menu-item p{font-size:15px;line-height:1.5;letter-spacing:.015em}
.main-nav a,.menu-switch a,.category-nav a,.footer-links a{font-size:17px;letter-spacing:.03em}
.button{font-size:17px;letter-spacing:.04em}.text-link{font-size:16px;letter-spacing:.025em}
@media(max-width:600px){.menu-item h3{font-size:17px}.menu-item p{font-size:14px}.category-nav a{font-size:15px}.button{font-size:16px}.main-nav a,.footer-links a{font-size:17px}}

/* Keep the complete original logo and reservation CTA legible. */
.brand img,.footer-brand img{display:block;object-fit:contain;overflow:visible}.brand{width:220px}.button.paper{background:#f6edd5;color:#043423;border:1px solid #04342340;box-shadow:0 2px 8px #0434230a}.reserve-home{position:relative;z-index:2}
@media(max-width:900px){.brand{width:185px}}
@media(max-width:600px){.brand{width:160px}.actions .reserve-home{grid-column:1/-1;justify-self:center;min-width:160px;margin-top:2px}}

@keyframes cumbia-sway{0%,4%,100%{transform:translateY(0) rotate(0deg)}1%{transform:translateY(-1px) rotate(-1.5deg)}2%{transform:translateY(-2px) rotate(1.5deg)}3%{transform:translateY(-.5px) rotate(-.5deg)}}
.payoff-word{white-space:nowrap}
@media(max-width:600px){.payoff-letter{display:inline-block}}
@media(max-width:600px) and (prefers-reduced-motion:no-preference){.payoff-letter{animation:cumbia-sway 4s ease-in-out infinite;transform-origin:50% 75%}}
@media(prefers-reduced-motion:reduce){.payoff-letter{animation:none;transform:none}}

/* Center the original brand independently of the desktop navigation. */
.site-header{justify-content:flex-end}.site-header .brand{position:absolute;left:50%;transform:translateX(-50%)}
@media(min-width:601px) and (max-width:1000px){.site-header{height:150px;align-items:flex-start}.site-header .brand{top:18px}.site-header .main-nav{position:absolute;bottom:12px;left:0;right:0;justify-content:center}}

/* Each letter takes its turn, with a pause after the complete phrase. */
@media(max-width:600px) and (prefers-reduced-motion:no-preference){
.beat-0{animation-delay:0.00s}
.beat-1{animation-delay:0.16s}
.beat-2{animation-delay:0.32s}
.beat-3{animation-delay:0.48s}
.beat-4{animation-delay:0.64s}
.beat-5{animation-delay:0.80s}
.beat-6{animation-delay:0.96s}
.beat-7{animation-delay:1.12s}
.beat-8{animation-delay:1.28s}
.beat-9{animation-delay:1.44s}
.beat-10{animation-delay:1.60s}
.beat-11{animation-delay:1.76s}
.beat-12{animation-delay:1.92s}
.beat-13{animation-delay:2.08s}
.beat-14{animation-delay:2.24s}
.beat-15{animation-delay:2.40s}
.beat-16{animation-delay:2.56s}
.beat-17{animation-delay:2.72s}
.beat-18{animation-delay:2.88s}
.beat-19{animation-delay:3.04s}
.beat-20{animation-delay:3.20s}
.beat-21{animation-delay:3.36s}
}
