@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
:root{--cream:#f7f1e7;--paper:#fffaf2;--ink:#221b17;--muted:#685d55;--red:#b92d22;--dark-red:#89251e;--line:#d8cab9;--font-sans:'DM Sans',Arial,sans-serif;--font-serif:'Playfair Display',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}.section-pad{padding-block:110px}.skip-link{position:absolute;top:-80px;left:10px;z-index:1000;background:#fff;padding:12px}.skip-link:focus{top:10px}.topline{height:35px;padding:0 max(32px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:#f2e9dd;font-size:11px;letter-spacing:.11em;text-transform:uppercase}.topline a:hover{text-decoration:underline}.site-header{height:82px;padding:0 max(32px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:20;border-bottom:1px solid #eee3d6}.brand{display:inline-flex;align-items:center;gap:12px;line-height:1}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:white;font-family:var(--font-serif);font-weight:700;font-size:26px;letter-spacing:-.12em;padding-right:4px}.brand-mark span{font-size:14px;align-self:start;padding-top:7px}.brand-name{font-family:var(--font-serif);font-size:20px;font-weight:700;letter-spacing:.01em;white-space:nowrap}.brand-name small{display:block;font-family:var(--font-sans);font-size:8px;font-weight:700;letter-spacing:.27em;margin-top:5px}.site-nav{display:flex;align-items:center;gap:37px;height:100%}.site-nav>a:not(.nav-order){font-size:13px;font-weight:700;letter-spacing:.04em;transition:color .2s}.site-nav>a:hover,.site-nav>a.active{color:var(--red)}.site-nav .nav-order{background:var(--red);color:white!important;padding:15px 21px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;transition:background .2s}.site-nav .nav-order:hover{background:var(--dark-red)}.nav-toggle{display:none;background:none;border:0;cursor:pointer}.nav-toggle span{display:block;width:24px;height:2px;margin:5px;background:var(--ink)}
.hero{min-height:650px;height:min(77vh,820px);position:relative;overflow:hidden;background:#221b17;color:#fff}.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;animation:heroFade 18s infinite}.slide-one{background-image:url('images/hero-1.webp');background-position:center 54%;animation-delay:0s}.slide-two{background-image:url('images/hero-2.webp');animation-delay:6s}.slide-three{background-image:url('images/hero-3.webp');animation-delay:12s}.hero.paused .hero-slide{animation-play-state:paused}@keyframes heroFade{0%{opacity:0;transform:scale(1.04)}5%,28%{opacity:1}34%,100%{opacity:0;transform:scale(1)}}.hero-shade{background:linear-gradient(90deg,rgba(16,12,10,.78) 0%,rgba(16,12,10,.54) 45%,rgba(16,12,10,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.28),transparent 30%)}.hero-content{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-bottom:40px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;color:var(--red);margin:0 0 22px;text-transform:uppercase}.eyebrow.light{color:#f5be92}.hero h1,.page-hero h1,.visit-page h1{font:700 clamp(58px,6.5vw,105px)/1.06 var(--font-serif);letter-spacing:-.04em;margin:0}.hero h1 em,.page-hero h1 em,.visit-page h1 em,.intro h2 em,.section-heading h2 em,.feature h2 em{font-weight:600}.hero-lede{font-size:19px;line-height:1.6;max-width:500px;color:#f3e8dd;margin:28px 0 31px}.hero-actions,.visit-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:0 25px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.11em;transition:transform .2s,background .2s,color .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button-red{background:var(--red);color:white}.button-red:hover{background:var(--dark-red)}.button-outline{border:1px solid rgba(255,255,255,.8);color:white}.button-outline:hover{background:white;color:var(--ink)}.button-light{background:var(--paper);color:var(--red)}.button-stroke{border:1px solid var(--ink)}.button-stroke:hover{background:var(--ink);color:white}.hero-bottom{position:absolute;z-index:2;bottom:0;left:0;width:100%;height:58px;display:flex;align-items:center;justify-content:space-between;padding-inline:max(32px,calc((100vw - 1200px)/2));border-top:1px solid rgba(255,255,255,.2);font-size:10px;letter-spacing:.16em;font-weight:700}.slide-control{background:none;border:0;color:#fff;display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.pause-symbol{font-size:17px;line-height:0}
.intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center}.intro-copy{max-width:415px}.intro h2,.section-heading h2,.feature h2{font:700 clamp(44px,4.5vw,70px)/1.12 var(--font-serif);letter-spacing:-.035em;margin:0 0 25px}.intro-copy>p:not(.eyebrow),.feature-copy>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.8;margin-bottom:27px}.text-link{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--red);display:inline-flex;gap:13px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:7px}.text-link:hover{color:var(--dark-red)}.intro-image{position:relative}.intro-image img{width:100%;height:510px;object-fit:cover}.image-note{position:absolute;bottom:-16px;left:-25px;background:var(--red);color:white;padding:18px 22px;font-size:10px;font-weight:700;letter-spacing:.15em}
.categories{background:#eee4d7}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:35px}.section-heading h2{margin:0}.category-grid{display:grid;grid-template-columns:1.08fr 1fr 1fr;gap:17px}.category-card{height:420px;position:relative;overflow:hidden;color:#fff}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.category-card:hover img{transform:scale(1.06)}.sub-card img{object-position:50% center}.salad-card img{object-position:50% center}.card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,11,8,.83),transparent 70%)}.card-label{position:absolute;bottom:28px;left:28px;right:18px;display:flex;flex-direction:column;align-items:start;gap:7px}.card-label small{font-size:10px;letter-spacing:.18em;font-weight:700;color:#ffcdaf}.card-label strong{font:700 clamp(28px,2.3vw,36px)/1.1 var(--font-serif)}.card-label>span{font-size:12px;letter-spacing:.07em;font-weight:600}
.feature{display:grid;grid-template-columns:1.1fr .9fr;gap:9%;align-items:center}.feature-media img{width:100%;height:480px;object-fit:cover}.feature-copy{max-width:420px}.visit-band{background:var(--red);color:white;padding:55px 0}.visit-band-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.visit-band .eyebrow{margin-bottom:10px}.visit-band h2{font:700 clamp(34px,3vw,48px)/1.15 var(--font-serif);margin:0 0 10px}.visit-band p:last-child{margin:0;color:#fae1d8}.site-footer{background:#211b17;color:#e6d8ca;padding-top:65px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:60px}.footer-brand{color:white}.footer-brand .brand-mark{background:var(--red)}.footer-grid p{line-height:1.8;font-size:14px;color:#d2bfb0;margin-top:23px}.footer-grid h3{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:5px 0 20px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:start;gap:12px}.footer-grid a:not(.brand){font-size:14px;color:#d2bfb0}.footer-grid a:hover{color:white}.footer-bottom{border-top:1px solid #554841;padding:25px 0;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.06em;color:#bca999}
.page-hero{height:350px;position:relative;color:#fff;display:flex;align-items:center}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,15,11,.8),rgba(22,15,11,.23))}.page-hero-content{position:relative}.page-hero h1{font-size:clamp(54px,6vw,86px)}.page-hero p:last-child{font-size:18px;color:#eee4da;max-width:510px}.menu-content{display:grid;grid-template-columns:270px 1fr;gap:55px}.menu-lead{align-self:start;position:sticky;top:30px}.menu-lead p:not(.eyebrow){font-size:16px;line-height:1.7;color:var(--muted);margin-bottom:27px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.menu-tile{background:var(--paper);border:1px solid var(--line);scroll-margin-top:25px}.menu-tile img{height:200px;width:100%;object-fit:cover}.menu-tile>div{padding:25px}.menu-tile>div>span{font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--red)}.menu-tile h2{font:700 29px/1.12 var(--font-serif);margin:12px 0}.menu-tile p{font-size:14px;line-height:1.6;color:var(--muted);min-height:45px}.menu-tile .text-link{margin-top:6px}.menu-tile-feature{grid-column:1/-1;display:grid;grid-template-columns:1.2fr .8fr}.menu-tile-feature img{height:100%;min-height:290px}.menu-tile-feature>div{padding:35px;align-self:center}.menu-tile-feature h2{font-size:42px}.text-tile{min-height:245px;display:flex;align-items:center}.text-tile:nth-of-type(even){background:#efe1d1}
.visit-page{display:grid;grid-template-columns:1fr .95fr;gap:10%;align-items:center}.visit-copy>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:430px;color:var(--muted);margin:25px 0 38px}.visit-page h1{font-size:clamp(53px,5vw,76px)}.contact-block{border-top:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:100px 1fr;gap:15px;align-items:start}.contact-block>span{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--red);padding-top:5px}.contact-block strong,.contact-block a{font-size:17px;line-height:1.5;font-weight:600}.contact-block a:hover{color:var(--red)}.visit-actions{margin-top:25px}.visit-photo img{width:100%;max-height:730px;object-fit:cover;object-position:center}
@media(max-width:900px){.container{width:min(100% - 40px,700px)}.site-header{padding-inline:20px}.topline{padding-inline:20px}.hero-bottom{padding-inline:20px}.site-nav{gap:18px}.brand-name{font-size:17px}.brand-mark{width:37px;height:37px;font-size:23px}.intro,.feature,.visit-page{gap:45px}.category-card{height:340px}.menu-content{grid-template-columns:1fr}.menu-lead{position:static}.menu-lead .button{margin-top:0}}
@media(max-width:700px){.section-pad{padding-block:70px}.topline{font-size:9px;letter-spacing:.04em}.site-header{height:67px}.nav-toggle{display:block}.site-nav{display:none;position:absolute;top:67px;left:0;right:0;height:auto;background:var(--paper);box-shadow:0 14px 18px rgba(0,0,0,.1);padding:20px;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav>a{padding:15px 5px}.site-nav .nav-order{text-align:center;margin-top:7px}.hero{height:650px;min-height:0}.hero-shade{background:linear-gradient(90deg,rgba(16,12,10,.78),rgba(16,12,10,.4))}.hero h1{font-size:clamp(51px,12vw,74px)}.hero-lede{font-size:16px}.hero-bottom>span{display:none}.hero-bottom{justify-content:center}.intro,.feature,.visit-page{grid-template-columns:1fr}.intro-copy{max-width:none}.intro-image img,.feature-media img{height:350px}.image-note{left:0}.section-heading{align-items:start;flex-direction:column}.category-grid{grid-template-columns:1fr;gap:12px}.category-card{height:270px}.feature-media{order:2}.feature-copy{order:1}.visit-band-inner{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:10px;flex-direction:column}.menu-grid{grid-template-columns:1fr}.menu-tile-feature{grid-template-columns:1fr}.menu-tile-feature img{min-height:0;height:220px}.menu-tile p{min-height:0}.page-hero{height:310px}.visit-photo{order:-1}.visit-photo img{height:430px}.visit-page h1{font-size:clamp(50px,11vw,72px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-slide{animation:none;transform:none}.slide-one{opacity:1}.button,.category-card img{transition:none}}
