:root{--ink:#1b1d1c;--cream:#f2eee7;--paper:#fbfaf7;--olive:#a7ae86;--line:rgba(27,29,28,.16);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:30px 5.5%;color:#fff}.brand{font-family:var(--serif);letter-spacing:.11em;font-size:17px;line-height:.9}.brand span{display:block;font-size:10px;letter-spacing:.26em;margin-left:2px;margin-bottom:5px}.main-nav{display:flex;align-items:center;gap:30px;font-size:12px;letter-spacing:.06em}.main-nav a{opacity:.86;transition:opacity .2s}.main-nav a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.55);padding:10px 15px}.nav-cta span,.button span,.text-link span{margin-left:14px}.menu-toggle{display:none;background:none;border:0;color:inherit;font:inherit}.hero{min-height:95vh;position:relative;display:flex;align-items:flex-end;padding:150px 10% 10%;color:#fff;background:linear-gradient(90deg,rgba(16,19,15,.58),rgba(16,19,15,.03)),url('../images/hero.jpg') center/cover}.hero-content{max-width:650px;position:relative}.eyebrow,.section-kicker,.menu-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em}.eyebrow{margin-bottom:28px}.hero h1,h2{font-family:var(--serif);font-weight:500;line-height:1.04;letter-spacing:-.035em}.hero h1{font-size:clamp(58px,8vw,122px);margin:0 0 24px}.hero h1 em,h2 em{font-style:italic;font-weight:500}.hero-lead{max-width:390px;font-size:17px;line-height:1.55;margin-bottom:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;min-width:190px;padding:13px 18px;font-size:12px;letter-spacing:.06em;border:1px solid var(--ink);transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{border-color:#fff;color:#fff}.button-dark{background:var(--ink);color:#fff}.scroll-note{position:absolute;right:5.5%;bottom:42px;writing-mode:vertical-rl;font-size:10px;text-transform:uppercase;letter-spacing:.18em}.scroll-note span{margin-top:15px}.section-shell{padding:120px 10%}.section-kicker{display:flex;gap:20px;color:#797d70;margin-bottom:58px}.section-kicker span{color:var(--ink)}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}.intro h2,.story h2,.contact h2{font-size:clamp(45px,6vw,85px);margin:0}.intro-copy{max-width:480px}.lead{font-family:var(--serif);font-size:23px;line-height:1.35;margin-top:0}.intro-copy p:not(.lead),.story-copy p:not(.lead){max-width:440px}.text-link{display:inline-block;margin-top:18px;padding-bottom:8px;border-bottom:1px solid var(--ink);font-size:12px}.image-pair{display:grid;grid-template-columns:1.35fr 1fr;gap:18px;margin-top:90px}.image-pair img{height:430px}.image-pair img+img{height:330px;margin-top:100px}.story{background:var(--paper)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.story-image img{height:620px}.story-copy{max-width:480px}.story-copy .button{margin-top:24px}.menu-section{background:var(--olive)}.menu-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:35px}.menu-heading h2{font-size:clamp(60px,8vw,110px);margin:0}.menu-heading p{max-width:270px;margin:0}.menu-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}.menu-card{padding:10px 0 20px;border-top:1px solid var(--line)}.menu-label{margin-bottom:30px}.dish{position:relative;border-bottom:1px solid var(--line);padding:0 55px 22px 0;margin-bottom:28px}.dish h3{font-family:var(--serif);font-size:23px;font-weight:500;margin:0 0 7px}.dish p{font-size:13px;line-height:1.45;margin:0}.dish strong{position:absolute;right:0;top:4px;font-size:13px;font-weight:500}.menu-note{font-size:11px;margin-top:40px;opacity:.65}.quote{min-height:420px;background:linear-gradient(rgba(23,29,22,.45),rgba(23,29,22,.45)),url('../images/restaurant-detail.jpg') center/cover;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:70px 10%}.quote>div{max-width:720px}.quote-mark{font-family:var(--serif);font-size:88px;line-height:.5}.quote blockquote{font:500 clamp(31px,4vw,55px)/1.15 var(--serif);margin:18px 0 18px}.quote p{font-size:11px;text-transform:uppercase;letter-spacing:.15em}.contact{background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-info{margin-top:62px;font-size:13px}.contact-info p{margin:0 0 20px}.contact-form{display:flex;flex-direction:column;gap:8px;max-width:470px}.contact-form label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-top:12px}.contact-form input,.contact-form textarea{font:inherit;background:transparent;border:0;border-bottom:1px solid var(--line);padding:8px 0;outline:0;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--ink)}.contact-form .button{margin-top:24px;align-self:flex-start}.form-success,.form-error{font-size:12px}.form-success{color:#52673d}.form-error{color:#a23e33}.site-footer{background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:36px 5.5%;font-size:10px;letter-spacing:.08em}.site-footer p{opacity:.6}.site-footer>a:last-child{opacity:.7}@media(max-width:800px){.site-header{padding:24px 6%}.menu-toggle{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.main-nav{display:none;position:absolute;top:70px;left:5%;right:5%;background:var(--ink);padding:25px;flex-direction:column;align-items:flex-start;gap:18px}.main-nav.is-open{display:flex}.nav-cta{margin-top:5px}.hero{min-height:90vh;padding:130px 8% 90px}.scroll-note{display:none}.section-shell{padding:82px 8%}.section-kicker{margin-bottom:38px}.intro-grid,.story-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.image-pair{margin-top:55px;gap:10px}.image-pair img{height:270px}.image-pair img+img{height:210px;margin-top:60px}.story-image img{height:430px}.menu-heading{display:block}.menu-heading p{margin-top:20px}.menu-columns{grid-template-columns:1fr;gap:0}.menu-card{margin-top:20px}.site-footer{align-items:flex-start;flex-direction:column;gap:22px}}
