@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap";:root{color:#4d1020;--cream:#f4ead7;--wine:#4d1020;--orange:#db5e2f;--olive:#5e6333;--line:#bcae95;--muted:#765f5d;font-synthesis:none;background:#f4ead7;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.frame{width:min(1320px,100% - 64px);margin-inline:auto}.header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;height:92px;display:grid}.wordmark{letter-spacing:-.03em;font:400 1.75rem Instrument Serif}.wordmark i{color:var(--orange)}nav{text-transform:uppercase;letter-spacing:.14em;gap:38px;font-size:.7rem;display:flex}nav a:hover{color:var(--orange)}.reserve-link{border-bottom:1px solid var(--wine);text-transform:uppercase;letter-spacing:.11em;justify-self:end;padding:10px 0;font-size:.69rem;font-weight:600}.hero{border-bottom:1px solid var(--line);grid-template-columns:48% 52%;min-height:760px;display:grid}.hero-copy{flex-direction:column;justify-content:center;padding:88px 45px 60px 0;display:flex}.label{text-transform:uppercase;letter-spacing:.18em;color:var(--orange);font-size:.65rem;font-weight:600}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;font-family:Instrument Serif,Georgia,serif;font-weight:400;line-height:.95}h1{margin:25px 0 28px;font-size:clamp(4.5rem,7.3vw,7.8rem)}h1 em{color:var(--orange)}.hero-copy>p:not(.label):not(.opening){color:var(--muted);max-width:520px;line-height:1.75}.hero-actions{gap:12px;margin:24px 0 58px;display:flex}.button{border:1px solid var(--wine);text-transform:uppercase;letter-spacing:.1em;justify-content:center;align-items:center;gap:15px;min-height:52px;padding:14px 20px;font-size:.68rem;font-weight:600;display:inline-flex}.button svg{width:17px}.wine{background:var(--wine);color:var(--cream)}.ghost{color:var(--wine);background:0 0}.opening{border-top:1px solid var(--line);padding-top:20px;font-size:.72rem}.opening span{color:var(--orange);text-transform:uppercase;margin-right:15px;font-weight:600}.opening small{color:var(--muted);margin-left:8px}.hero figure{border-left:1px solid var(--line);margin:0;position:relative;overflow:hidden}.hero figure img{object-fit:cover;width:100%;height:100%}.hero figcaption{background:var(--wine);color:var(--cream);gap:8px;min-width:290px;padding:20px 27px;display:grid;position:absolute;bottom:0;right:0}.hero figcaption span{color:#e6b7a5;text-transform:uppercase;letter-spacing:.15em;font-size:.62rem}.hero figcaption strong{font:italic 400 1.25rem Instrument Serif}.story{border-bottom:1px solid var(--line);grid-template-columns:.4fr 1fr;column-gap:70px;padding-block:120px;display:grid}.story-main h2,.menu-section h2,.gallery h2,.visit h2,.contact h2{margin:0;font-size:clamp(3.5rem,6vw,6.5rem)}.story-main>p{color:var(--muted);max-width:640px;margin-top:30px;line-height:1.75}.principles{border-top:1px solid var(--line);grid-column:2;grid-template-columns:repeat(3,1fr);margin-top:65px;display:grid}.principles article{border-right:1px solid var(--line);margin-right:35px;padding:35px 36px 0 0}.principles article:last-child{border:0;margin:0}.principles span{color:var(--orange);font-size:.67rem}.principles h3{margin:30px 0 15px;font-size:2.1rem}.principles p{color:var(--muted);font-size:.8rem;line-height:1.65}.menu-section{background:var(--wine);color:var(--cream);padding-block:120px}.menu-section header{grid-template-columns:1.5fr .6fr;align-items:end;gap:80px;display:grid}.menu-section header>p{color:#bd9da1;font-size:.83rem;line-height:1.7}.menu-filters{border-top:1px solid #773345;border-bottom:1px solid #773345;margin:55px 0 20px;display:flex;overflow-x:auto}.menu-filters button{color:#cbaeb6;text-transform:uppercase;letter-spacing:.13em;white-space:nowrap;background:0 0;border:0;padding:17px 22px;font-size:.64rem}.menu-filters button.active{color:var(--wine);background:var(--cream)}.menu-list article{border-bottom:1px solid #773345;grid-template-columns:60px 1fr 100px 46px;align-items:center;gap:20px;padding:28px 0;display:grid}.dish-index{color:#b97d6b;font-size:.65rem}.dish-category{text-transform:uppercase;letter-spacing:.15em;color:#c99583;margin-bottom:7px;font-size:.6rem}.menu-list h3{margin:0 0 6px;font-size:1.75rem}.menu-list article>div>p:last-child{color:#bd9da1;margin:0;font-size:.76rem}.menu-list article>strong{font:400 1.25rem Instrument Serif}.menu-list article>button{width:42px;height:42px;color:var(--cream);background:0 0;border:1px solid #9b5b69}.menu-list article>button:hover{background:var(--orange);border-color:var(--orange)}.menu-list article>button svg{width:16px}.gallery{border-bottom:1px solid var(--line);padding-block:120px}.gallery header{grid-template-columns:.45fr 1.1fr auto;align-items:end;margin-bottom:55px;display:grid}.gallery header>div{align-items:center;gap:12px;display:flex}.gallery header button{border:1px solid var(--wine);background:0 0;width:42px;height:42px}.gallery header button svg{width:16px}.gallery header span{font-size:.67rem}.gallery-images{grid-template-columns:1.65fr .65fr;gap:18px;height:610px;display:grid}.gallery-images img{object-fit:cover;width:100%;height:100%}.side-photo{filter:saturate(.85)}.testimonials{grid-template-columns:.4fr 1.6fr;gap:60px;padding-block:100px;display:grid}.testimonials>div{grid-template-columns:1fr 1fr;display:grid}.testimonials blockquote{border-right:1px solid var(--line);margin:0;padding:10px 45px 10px 0}.testimonials blockquote+blockquote{border:0;padding-left:45px}.testimonials blockquote span{text-transform:uppercase;letter-spacing:.14em;color:var(--orange);font-size:.6rem}.testimonials blockquote p{margin:35px 0;font:400 2rem/1.15 Instrument Serif}.testimonials blockquote footer{color:var(--muted);font-size:.68rem}.visit{color:#331013;background:#d85d2e;padding-block:115px}.visit-grid{grid-template-columns:1fr 1fr;gap:80px;display:grid}.visit header{grid-column:1/-1}.visit .label{color:#491729}.visit-data{border-top:1px solid #9b3e20}.visit-data>div{border-bottom:1px solid #9b3e20;grid-template-columns:35px 1fr;gap:20px;padding:27px 0;display:grid}.visit-data svg{width:20px}.visit-data p{gap:6px;font-size:.8rem;display:grid}.visit-data p+p{margin-left:55px}.visit-data span,.visit-data small{color:#732f25}.map{background:#e9845e;min-height:390px;position:relative;overflow:hidden}.road{transform-origin:50%;background:#b64b2d;width:140%;height:2px;position:absolute}.r1{top:34%;left:-20%;transform:rotate(20deg)}.r2{top:60%;left:-20%;transform:rotate(-15deg)}.r3{top:72%;left:-20%;transform:rotate(5deg)}.map i{place-items:center;font:400 1.1rem Instrument Serif;display:grid;position:absolute;top:43%;left:58%}.map i svg{width:34px;height:34px}.contact{background:var(--olive);color:var(--cream);grid-template-columns:1.4fr .6fr;align-items:end;gap:60px;margin-block:80px;padding:75px;display:grid}.contact .label{color:#e3d4a4}.cream{background:var(--cream);color:var(--wine);border-color:var(--cream)}.whatsapp-demo{grid-column:1/-1;align-items:center;gap:22px;display:flex}.whatsapp-demo>svg{width:44px;height:44px}.whatsapp-demo strong{font:400 2rem Instrument Serif}.whatsapp-demo p{color:#ddd3b5;margin:8px 0 0;font-size:.8rem}.footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding-block:40px;font-size:.66rem;display:flex}.cart{z-index:40;width:300px;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 60px #22050b40}.cart-summary{background:var(--wine);width:100%;min-height:72px;color:var(--cream);text-align:left;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 16px;display:grid}.cart-summary>svg{width:19px;color:var(--orange)}.cart-summary span{display:grid}.cart-summary strong{font-size:.78rem}.cart-summary small{color:#c8aeb4;font-size:.62rem}.cart-summary b{font:400 1.2rem Instrument Serif}.cart-panel{background:var(--cream);color:var(--wine);border:1px solid var(--wine);width:390px;padding:28px;position:absolute;bottom:72px;right:0}.cart-panel h2{font:400 2.5rem Instrument Serif}.cart-close{background:0 0;border:0;position:absolute;top:15px;right:15px}.cart-close svg{width:17px}.empty{color:var(--muted);font-size:.78rem}.cart-items{gap:16px;display:grid}.cart-items>div{border-top:1px solid var(--line);padding-top:12px}.cart-items>div>div{justify-content:space-between;font-size:.76rem;display:flex}.cart-items>div>p{align-items:center;gap:10px;margin:9px 0 0;display:flex}.cart-items button{border:1px solid var(--line);background:0 0;width:25px;height:25px}.cart-items button svg{width:12px}.cart-panel>footer{border-top:1px solid var(--wine);justify-content:space-between;margin-top:22px;padding-top:18px;font-size:.72rem;display:flex}.cart-panel>footer strong{font:400 1.4rem Instrument Serif}.modal-layer{z-index:100;background:#2b0710db;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.reservation{background:var(--cream);border-top:7px solid var(--orange);width:min(650px,100%);padding:55px;position:relative}.modal-close{background:0 0;border:0;position:absolute;top:19px;right:19px}.reservation h2{margin:20px 0 40px;font:400 4rem Instrument Serif}.reservation form{grid-template-columns:1.2fr 1fr .8fr;gap:16px;display:grid}.reservation label{text-transform:uppercase;letter-spacing:.12em;gap:8px;font-size:.64rem;display:grid}.reservation input,.reservation select{border:1px solid var(--line);background:#fffaf0;width:100%;padding:13px}.reservation label span{color:#b12b22;text-transform:none;letter-spacing:0;line-height:1.4}.wide{grid-column:1/-1}.demo-note{color:var(--muted);margin:20px 0 0;font-size:.68rem;line-height:1.5}.reservation-success{text-align:center;flex-direction:column;align-items:center;display:flex}.reservation-success>svg{width:48px;height:48px;color:var(--olive);margin-bottom:22px}.reservation-success h2{margin-bottom:20px}.reservation-success small{color:var(--muted);margin-bottom:30px}@media (width<=850px){.frame{width:min(100% - 32px,1320px)}.header{grid-template-columns:1fr auto;height:74px}.header nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 0 45px}.hero figure{border-left:0;border-top:1px solid var(--line);min-height:480px}.story{grid-template-columns:1fr}.principles{grid-column:1}.menu-section header{grid-template-columns:1fr}.gallery header{grid-template-columns:1fr;gap:22px}.gallery-images{height:500px}.testimonials,.visit-grid{grid-template-columns:1fr}.visit header{grid-column:1}.contact{grid-template-columns:1fr;padding:50px 30px}.footer{flex-direction:column;align-items:flex-start;gap:18px}.cart{bottom:16px;right:16px}.reservation form{grid-template-columns:1fr}}@media (width<=520px){h1{font-size:4.5rem}.hero-actions{flex-direction:column;align-items:stretch}.hero figure{min-height:370px}.hero figure img{object-position:65% center;min-height:370px}.story{padding-block:80px}.principles{grid-template-columns:1fr}.principles article{border-right:0;border-bottom:1px solid var(--line);margin:0;padding:28px 0}.menu-section{padding-block:80px}.menu-list article{grid-template-columns:35px 1fr 60px 40px;gap:9px}.menu-list article>div>p:last-child{display:none}.gallery{padding-block:80px}.gallery-images{grid-template-columns:1fr;height:420px}.side-photo{display:none}.testimonials>div{grid-template-columns:1fr}.testimonials blockquote,.testimonials blockquote+blockquote{border-right:0;border-bottom:1px solid var(--line);padding:30px 0}.visit-data p+p{grid-column:2;margin:18px 0 0}.contact{width:100%;margin-bottom:0}.cart{width:100%;bottom:0;left:0;right:0}.cart-panel{width:100%;max-height:70vh;position:fixed;bottom:72px;left:0;overflow:auto}.reservation{padding:42px 22px}.reservation h2{font-size:3rem}.footer{padding-bottom:110px}.opening small{margin:5px 0 0;display:block}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
