@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Italiana&display=swap');
:root{--bg:#12120f;--surface:#1b1c17;--text:#f4f1e9;--muted:#b5b6a8;--accent:#d4a578;--line:#414135}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}header{height:100px;position:absolute;z-index:5;top:0;left:0;width:100%;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff30;gap:25px}.brand{font:58px/.8 Georgia,serif;letter-spacing:-5px;display:inline-flex;flex-direction:column;align-items:center}.brand span{font:10px/1 sans-serif;letter-spacing:2px;margin-top:12px}nav{display:flex;gap:32px;font-size:14px}nav a{position:relative}nav a:hover{color:var(--accent)}.reserve{border:1px solid #ffffff70;padding:10px 24px;font-size:14px;transition:.2s}.reserve:hover{background:var(--text);color:var(--bg)}.nav-toggle{display:none}.hero{position:relative;min-height:780px;height:95svh;max-height:1100px;isolation:isolate;overflow:hidden}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center;position:absolute;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,7,.82),rgba(8,10,7,.35) 58%,rgba(8,10,7,.08)),linear-gradient(0deg,#12120f,transparent 35%,rgba(0,0,0,.3));z-index:-1}.hero-content{height:100%;padding:180px 8% 55px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;font-weight:500;letter-spacing:2.8px;color:var(--accent);margin:0 0 30px}h1,h2{font-family:'Italiana',Georgia,serif;font-weight:400;line-height:1.02;letter-spacing:-2px;margin:0}h1{font-size:clamp(70px,7.8vw,128px)}em{font-family:Georgia,serif;font-weight:400;font-size:.93em}h1 em,h2 em{color:var(--accent)}.hero-bottom{display:flex;align-items:end;gap:90px;margin-top:40px}.hero-bottom p{font-size:16px;line-height:1.7;color:#deded3;margin:0}.text-link{border-bottom:1px solid var(--accent);padding:12px 0;display:inline-block;font-size:14px}.text-link span{margin-left:50px;color:var(--accent);font-size:12px}.vertical{position:absolute;right:4%;top:45%;writing-mode:vertical-rl;letter-spacing:4px;font-size:11px}.chapter-bar{display:flex;align-items:center;justify-content:space-between;padding:26px 8%;border-bottom:1px solid var(--line);gap:20px}.chapter-bar span:first-child{font-size:12px;letter-spacing:2px;color:var(--muted)}.chapter-bar span:nth-child(2){font:32px Georgia,serif}.chapter-bar a{font-size:14px;color:var(--accent)}.section{padding:120px 8%;scroll-margin-top:30px}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}h2{font-size:clamp(48px,5.5vw,84px)}p{color:var(--muted)}.lead{font-size:22px;line-height:1.5;color:var(--text);margin-top:0}.intro-copy{padding-top:50px}.menu-section{background:var(--surface)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:65px}.section-heading>p{max-width:330px}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.menu-grid article{padding:35px 30px 40px;border-right:1px solid var(--line)}.menu-grid article:first-child{padding-left:0}.menu-grid article:last-child{border:0}.number{font:24px Georgia,serif;color:var(--accent)}h3{font:28px/1.25 Georgia,serif;font-weight:400;margin:24px 0 15px}.menu-grid p{min-height:55px;font-size:15px}.price{font:38px Georgia,serif;margin:35px 0}.price span{font:12px 'DM Sans',sans-serif;color:var(--muted)}.menu-grid a{display:inline-block;font-size:14px;padding-bottom:7px;border-bottom:1px solid var(--accent)}.menu-note{font-size:13px;margin:22px 0 45px}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}summary{cursor:pointer;color:var(--text);font-size:16px}.dishes{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:25px 0}.dishes span{font-size:12px;letter-spacing:2px;color:var(--accent)}.territory-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.film-link{display:flex;align-items:center;gap:20px;margin-top:40px}.play{display:grid;place-items:center;width:66px;height:66px;border:1px solid var(--accent);border-radius:50%;font-size:32px;color:var(--accent)}.film-link small{display:block;color:var(--muted);font-size:13px}.words{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:40px;margin-top:85px;gap:20px;font:clamp(30px,4.5vw,68px) 'Italiana',Georgia,serif;color:#c8c8b5}.root{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.2fr;gap:6%;align-items:center}.root h2{margin-bottom:25px}.root img{width:100%;height:auto;display:block}.button{display:inline-block;background:var(--accent);color:#17150f;padding:16px 28px;font-size:14px;font-weight:500;margin-top:22px;transition:.2s}.button:hover{background:#efd1b2}.booking{text-align:center;background:radial-gradient(ellipse at center,#2a2a20 0%,#161712 65%);border-top:1px solid var(--line);padding-top:110px;padding-bottom:130px}.booking h2{font-size:clamp(65px,8vw,115px)}.booking-actions{display:flex;align-items:center;justify-content:center;gap:35px}.booking-actions .button{margin:0}footer{display:grid;grid-template-columns:.7fr 1.3fr 1fr 1fr;padding:60px 8%;gap:45px;font-size:14px}footer .brand{justify-self:start;align-self:center}footer p{font-size:11px;letter-spacing:2px;color:var(--accent)}footer a:not(.brand){display:block;margin:10px 0}.footer-end{align-self:center;text-align:right;color:var(--muted)}.skip{position:absolute;top:-100px;z-index:20;background:var(--text);color:var(--bg);padding:15px}.skip:focus{top:0}::selection{background:var(--accent);color:var(--bg)}
@media(max-width:900px){header{height:85px;padding:15px 6%}.brand{font-size:45px}nav{gap:18px;font-size:13px}.reserve{padding:9px 14px}.section{padding:80px 6%}.hero-content{padding-left:6%;padding-right:6%}.intro{gap:6%}.section-heading{align-items:start}.menu-grid article{padding-left:20px;padding-right:20px}.menu-grid h3{font-size:23px}.menu-grid p{min-height:80px}.root{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr 1fr}.footer-end{text-align:left}.chapter-bar{padding-left:6%;padding-right:6%}}
@media(max-width:650px){header{height:80px;gap:18px}.brand span{font-size:8px}.reserve{margin-left:auto;font-size:13px;padding:9px 12px}.nav-toggle{display:block;background:transparent;border:0;color:var(--text);font-size:14px;padding:10px;order:3}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#171813;padding:28px 6%;font-size:17px;flex-direction:column;gap:20px;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{min-height:700px;height:92svh}.hero-image{object-position:64% center}.hero-shade{background:linear-gradient(90deg,#080a07dd,#080a0760),linear-gradient(0deg,#12120f,transparent 65%)}.hero-content{padding-top:145px;padding-bottom:40px}.eyebrow{font-size:11px;letter-spacing:2px;margin-bottom:25px}h1{font-size:clamp(61px,14vw,85px);letter-spacing:-1.5px}.hero-bottom{display:block;margin-top:35px}.hero-bottom .text-link{margin-top:20px}.vertical{display:none}.chapter-bar{flex-wrap:wrap;padding-top:20px;padding-bottom:20px}.chapter-bar span:first-child{width:100%;font-size:11px}.chapter-bar span:nth-child(2){font-size:26px}.chapter-bar a{font-size:12px}.section{padding:70px 6%}.intro,.territory-layout,.root{grid-template-columns:1fr;gap:35px}.intro-copy{padding-top:0}h2{font-size:54px;letter-spacing:-1px}.lead{font-size:21px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:25px}.menu-grid{grid-template-columns:1fr}.menu-grid article,.menu-grid article:first-child{padding:30px 0;border-right:0;border-bottom:1px solid var(--line)}.menu-grid h3{font-size:28px}.menu-grid p{min-height:0}.price{margin:20px 0}.menu-note{font-size:13px}.dishes{grid-template-columns:1fr;gap:20px}.words{flex-direction:column;margin-top:45px;padding-top:30px;font-size:50px;gap:0}.root img{margin-top:10px}.booking-actions{flex-direction:column;gap:16px}.booking h2{font-size:70px}footer{padding:50px 6%;gap:35px;grid-template-columns:1fr}footer .brand{margin-bottom:5px}.footer-end{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.documentary{margin-top:30px;aspect-ratio:16/9;width:100%;background:#000;border:1px solid var(--line)}.documentary iframe{display:block;width:100%;height:100%;border:0}.video-fallback{display:inline-block;font-size:14px;color:var(--muted);margin-top:12px;border-bottom:1px solid var(--line)}.territory-social{margin-top:35px}.social-links a{font-size:14px}.territory-layout{grid-template-columns:.85fr 1.15fr}@media(max-width:650px){.territory-layout{grid-template-columns:1fr}}
.experience-photo{position:relative;margin:0 8% 100px;overflow:hidden}.experience-photo img{display:block;width:100%;height:clamp(300px,42vw,590px);object-fit:cover}.experience-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:55px 30px 25px;background:linear-gradient(transparent,#000b);font-size:14px;color:var(--text)}.journey-gallery{border-top:1px solid var(--line)}.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.photo-grid figure{margin:0;min-width:0}.photo-grid img{display:block;width:100%;height:350px;object-fit:cover}.photo-grid figure:nth-child(even){padding-top:55px}.photo-grid figcaption{font-size:14px;color:var(--muted);margin-top:14px}.photo-grid img{transition:filter .25s}.photo-grid img:hover{filter:brightness(1.12)}@media(max-width:900px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-grid img{height:380px}.experience-photo{margin:0 6% 70px}}@media(max-width:650px){.photo-grid{gap:16px}.photo-grid img{height:250px}.photo-grid figure:nth-child(even){padding-top:30px}.photo-grid figcaption{font-size:13px}.experience-photo img{height:340px}}
.language-switch{display:flex;align-items:center;gap:5px;white-space:nowrap;margin-left:auto}.language-switch button{padding:7px 4px;background:none;border:0;color:#c0c0b5;font-size:12px;cursor:pointer;min-height:32px}.language-switch button[aria-pressed="true"]{color:var(--accent);text-decoration:underline;text-underline-offset:5px}.language-switch span{font-size:11px;color:#777}.currency-note{font-size:13px;color:var(--muted);margin:22px 0 0}.currency-note a{color:var(--accent);text-decoration:underline}.menu-note{margin-top:12px}.price{font-size:clamp(25px,2.8vw,38px)}header nav{gap:22px}header{gap:20px}header .reserve{white-space:nowrap}@media(max-width:1050px) and (min-width:651px){header nav{gap:12px;font-size:12px}.reserve{padding:9px 12px}header{gap:12px}.language-switch{gap:2px}}@media(max-width:650px){header{flex-wrap:wrap;height:116px;padding-top:16px;padding-bottom:10px;row-gap:7px}.language-switch{order:4;flex-basis:100%;justify-content:flex-end;margin:0}.language-switch button{padding:3px 9px;min-height:28px}.language-switch span{padding:0 3px}nav{top:116px}.hero-content{padding-top:165px}.price{font-size:34px}}
.menu-section{position:relative;isolation:isolate;background:#171813;overflow:hidden}.menu-section::before{content:"";position:absolute;inset:0;z-index:-2;background:url("viaje-1501.jpeg") center 48%/cover no-repeat;filter:saturate(.55);opacity:.38}.menu-section::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,19,15,.86) 0%,rgba(18,19,15,.72) 35%,rgba(18,19,15,.80) 75%,rgba(18,19,15,.97) 100%)}.menu-section .menu-grid{background:rgba(18,19,15,.35);border-color:#62604c}.menu-section .menu-grid article{border-color:#62604c}.menu-section .menu-grid article:first-child{padding-left:25px}.menu-section .menu-grid p,.menu-section .section-heading>p,.menu-section .menu-note,.menu-section .currency-note{color:#d1d1c4}@media(max-width:650px){.menu-section::before{background-position:45% center;opacity:.3}.menu-section::after{background:linear-gradient(180deg,rgba(18,19,15,.87),rgba(18,19,15,.80) 50%,rgba(18,19,15,.97))}.menu-section .menu-grid article,.menu-section .menu-grid article:first-child{padding-left:20px;padding-right:20px}}
.intro,.territory,.root,.journey-gallery,.booking,footer,.chapter-bar{position:relative;isolation:isolate;background-color:#151611;background-image:linear-gradient(180deg,rgba(18,19,15,.88),rgba(18,19,15,.80) 45%,rgba(18,19,15,.94)),var(--section-photo);background-size:cover;background-position:center;background-repeat:no-repeat}.intro{--section-photo:url("mesa.webp");background-position:center,center 45%}.territory{--section-photo:url("viaje-1504.jpeg")}.root{--section-photo:url("viaje-1505.jpeg")}.journey-gallery{--section-photo:url("viaje-1503.jpeg")}.booking{--section-photo:url("hero.webp");background-image:linear-gradient(180deg,rgba(18,19,15,.88),rgba(18,19,15,.75) 45%,rgba(18,19,15,.93)),var(--section-photo)}footer{--section-photo:url("viaje-1501.jpeg")}.chapter-bar{--section-photo:url("viaje-1505.jpeg")}.intro p:not(.eyebrow),.territory p:not(.eyebrow),.root p:not(.eyebrow),.journey-gallery .section-heading>p,.booking>p:not(.eyebrow),.chapter-bar span:first-child{color:#d1d1c4}.intro p.lead,.territory p.lead,.root p.lead{color:var(--text)}.experience-photo{margin:0;padding:0 8% 100px;background:linear-gradient(180deg,rgba(18,19,15,.94),rgba(18,19,15,.85)),url("mesa.webp") center/cover}.experience-photo figcaption{left:8%;right:8%;bottom:100px}.words{color:#deded0;border-color:#62604c}.root,.journey-gallery,.booking,.chapter-bar{border-color:#514f40}@media(max-width:900px){.experience-photo{margin:0;padding:0 6% 70px}.experience-photo figcaption{left:6%;right:6%;bottom:70px}}@media(max-width:650px){.intro,.territory,.root,.journey-gallery,.booking,footer,.chapter-bar{background-image:linear-gradient(180deg,rgba(18,19,15,.90),rgba(18,19,15,.84) 45%,rgba(18,19,15,.96)),var(--section-photo)}.booking{background-position:center,65% center}}
.intro{--section-photo:url("instagram-plato.jpg")}.territory{--section-photo:url("instagram-mercado.webp")}.journey-gallery{--section-photo:url("instagram-productor.webp")}.booking{--section-photo:url("instagram-plato.jpg")}footer{--section-photo:url("instagram-mercado.webp")}.menu-section::before{background-image:url("instagram-plato.jpg");background-position:center 55%;opacity:.55}.menu-section::after{background:linear-gradient(180deg,rgba(18,19,15,.80),rgba(18,19,15,.65) 45%,rgba(18,19,15,.95))}@media(max-width:650px){.menu-section::before{opacity:.42}.menu-section::after{background:linear-gradient(180deg,rgba(18,19,15,.87),rgba(18,19,15,.76) 45%,rgba(18,19,15,.96))}}

/* Access to the restaurant's full menu. */
.menu-document-action{margin:-35px 0 36px}.menu-document-action .button{margin-top:0}
@media(min-width:651px) and (max-width:1180px){header .nav-toggle{display:block;background:none;border:0;color:var(--text);padding:9px;font-size:14px;order:3}header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#171813;padding:28px 6%;font-size:17px;flex-direction:column;gap:20px;border-bottom:1px solid var(--line)}header nav.open{display:flex}header .language-switch{margin-left:auto}header .reserve{margin-left:0}}
@media(max-width:650px){.menu-document-action{margin:0 0 30px}}

/* Mobile navigation and readable, comfortable layouts. */
.header-actions{display:flex;align-items:center;gap:8px}.header-carta{display:none}
@media(max-width:1180px){
 html{scroll-padding-top:120px}
 header{position:sticky;top:0;height:112px;display:grid;grid-template-columns:1fr auto auto;grid-template-rows:44px 44px;padding:8px 20px;column-gap:12px;row-gap:8px;background:#12120ff5;backdrop-filter:blur(12px);z-index:10}
 header .brand{grid-column:1;grid-row:1;justify-self:start;font-size:43px;letter-spacing:-4px}
 header .brand span{font-size:8px;letter-spacing:1.4px;margin-top:8px}
 header .header-actions{grid-column:2;grid-row:1}
 header .reserve,header .header-carta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:8px 12px;font-size:14px}
 header .header-carta{color:var(--accent);border:1px solid var(--line)}
 header .nav-toggle{grid-column:3;grid-row:1;display:block;order:0;min-height:44px;min-width:54px;padding:8px 6px;border:0;background:transparent;color:var(--text);font-size:14px;cursor:pointer}
 header .language-switch{grid-column:1/-1;grid-row:2;order:0;justify-content:flex-end;margin:0;gap:0}
 header .language-switch button{min-height:44px;min-width:44px;padding:8px 10px;font-size:13px}
 header .language-switch span{padding:0 4px}
 header nav{display:none;top:100%;padding:12px 20px 20px;gap:0;max-height:calc(100svh - 112px);overflow-y:auto;font-size:17px}
 header nav.open{display:flex}
 header nav a{display:block;min-height:48px;padding:12px 0;border-bottom:1px solid var(--line)}
 .hero-content{padding-top:70px}
 .section{scroll-margin-top:12px}
}
@media(max-width:650px){
 header{padding:8px 16px;column-gap:8px}
 header .header-actions{gap:6px}
 header .reserve,header .header-carta{padding:8px 10px;font-size:13px}
 header .nav-toggle{min-width:52px;font-size:13px}
 .hero{min-height:580px;height:calc(100svh - 112px);max-height:900px}
 .hero-content{padding:54px 20px 42px;justify-content:center}
 .hero-image{object-position:62% center}
 h1{font-size:clamp(52px,14.2vw,76px);letter-spacing:-1px}
 .eyebrow{font-size:10px;letter-spacing:1.8px;line-height:1.8;margin-bottom:22px}
 .hero-bottom{margin-top:28px}.hero-bottom p{font-size:16px}.hero-bottom .text-link{margin-top:14px}
 .text-link,.video-fallback{min-height:44px;display:inline-flex;align-items:center}
 .chapter-bar{padding:20px;gap:12px}.chapter-bar a{font-size:14px;min-height:44px;display:flex;align-items:center}
 .chapter-bar span:nth-child(2){font-size:28px}
 .section{padding:60px 20px}
 h2{font-size:clamp(42px,11.5vw,58px);line-height:1.08}
 .lead{font-size:20px;line-height:1.55}
 .section-heading{margin-bottom:28px}
 .intro,.territory-layout,.root{gap:28px}
 .button{min-height:48px;text-align:center;display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;font-size:15px}
 .menu-document-action .button{width:100%}
 .menu-section .menu-grid article,.menu-section .menu-grid article:first-child{padding:26px 18px}
 .menu-grid h3{font-size:26px;margin-top:0}.menu-grid p{font-size:16px}.menu-grid a{min-height:44px;display:inline-flex;align-items:center;font-size:15px}
 .price{font-size:34px}.menu-note,.currency-note{font-size:14px}
 details{padding:12px 0}summary{min-height:44px;padding:10px 0}
 .experience-photo{padding:0 20px 60px}.experience-photo img{height:300px}.experience-photo figcaption{left:20px;right:20px;bottom:60px;padding:40px 18px 18px}
 .photo-grid{gap:14px}.photo-grid img{height:auto;aspect-ratio:3/4}.photo-grid figcaption{font-size:14px}.photo-grid figure:nth-child(even){padding-top:24px}
 .words{font-size:46px}.booking h2{font-size:clamp(58px,15vw,74px)}
 .booking-actions .button{width:100%}.booking-actions .text-link{font-size:15px}
 footer{padding:48px 20px;gap:28px}footer a:not(.brand){min-height:44px;display:flex;align-items:center;margin:4px 0;font-size:15px}footer p{margin-bottom:8px}
}
@media(max-width:350px){header{padding-left:12px;padding-right:12px;column-gap:4px}header .reserve,header .header-carta{padding:8px}header .brand{font-size:39px}.hero-content{padding-left:18px;padding-right:18px}.hero .eyebrow{letter-spacing:1.3px}}
