
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--bg:#f5f0e6;--paper:#fffaf2;--ink:#2c1d1c;--muted:#786967;--wine:#741725;--wine2:#a52c42;--rose:#dfb8b0;--line:#e7d8ce;--shadow:0 12px 32px rgba(71,35,30,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;transition:.25s}body.dark{--bg:#20191a;--paper:#2d2324;--ink:#f8eee4;--muted:#c5b1aa;--line:#4a3738;--shadow:0 12px 32px rgba(0,0,0,.25)}
button,input{font:inherit}button{cursor:pointer}.topbar{height:78px;padding:0 clamp(18px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:10px;color:var(--wine);text-decoration:none}.brand-mark{font-size:34px;transform:rotate(-35deg);display:inline-block}.brand b{font-family:'Playfair Display',serif;font-size:27px;letter-spacing:3px;display:block;line-height:1}.brand small{font-size:9px;letter-spacing:4px;font-weight:700}
nav{display:flex;gap:8px} .navlink,.tools button{border:0;background:transparent;color:var(--ink);padding:11px 16px;border-radius:30px}.navlink.active,.navlink:hover{background:var(--wine);color:#fff}.tools{display:flex;gap:8px}.tools button{border:1px solid var(--line);font-size:24px;width:44px;height:44px;padding:0}
.hero{display:grid;grid-template-columns:.88fr 1.12fr;min-height:440px;background:linear-gradient(105deg,var(--paper),var(--bg));overflow:hidden}.hero-copy{padding:65px 5vw 55px 8vw;align-self:center}.eyebrow{color:var(--wine2);letter-spacing:3px;font-size:11px;font-weight:700;margin:0 0 12px}.hero h1,.menu-intro h1,.simple-page h1{font:600 clamp(42px,5vw,70px)/1.05 'Playfair Display',serif;color:var(--wine);margin:0 0 16px}.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.6;color:var(--muted);max-width:510px;margin:0 0 24px}
.hero-photo{position:relative;min-height:440px}.hero-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--paper),transparent 25%);z-index:1}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.photo-note{position:absolute;bottom:25px;right:30px;color:white;background:#4d1618bd;padding:12px 20px;border-radius:30px;z-index:2;font-family:'Playfair Display',serif;font-style:italic}
.searchbox{display:flex;align-items:center;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:40px;padding:0 18px;height:52px;max-width:520px;box-shadow:var(--shadow)}.searchbox span{font-size:28px;color:var(--wine2)}.searchbox input{border:0;outline:0;background:transparent;color:var(--ink);width:100%;font-size:14px}.primary{margin-top:18px;border:0;background:var(--wine);color:white;border-radius:40px;padding:14px 24px;font-weight:700;box-shadow:0 8px 18px #74172530}.primary:hover{background:var(--wine2);transform:translateY(-1px)}.primary span{padding-left:20px}
.section{padding:48px clamp(18px,5vw,76px)}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.section-heading h2,.menu-title h2{font:600 34px 'Playfair Display',serif;color:var(--wine);margin:0}.muted{color:var(--muted);font-size:13px}
.category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.category-card{position:relative;border:0;border-radius:17px;overflow:hidden;min-height:150px;padding:0;background:#482a27;color:white;text-align:left;box-shadow:var(--shadow)}.category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#211112df,transparent 85%)}.category-card:hover img{transform:scale(1.07)}.category-card span{position:absolute;z-index:1;bottom:15px;left:15px;right:10px;font-weight:700;font-size:15px}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;min-width:0}.product-card img{width:100%;height:190px;object-fit:cover;display:block}.product-info{padding:15px 16px 17px;display:flex;flex-direction:column;flex:1}.product-top{display:flex;justify-content:space-between;gap:10px;align-items:start}.product-top h3{font:600 18px 'Playfair Display',serif;margin:0;color:var(--ink)}.price{font-weight:700;color:var(--wine2);white-space:nowrap}.product-info p{color:var(--muted);font-size:13px;line-height:1.5;margin:9px 0 0}
.menu-intro{padding:55px clamp(18px,7vw,100px) 28px;background:var(--paper)}.menu-intro h1{font-size:52px}.menu-intro>p:not(.eyebrow){color:var(--muted)}.wide{max-width:650px;margin-top:20px}.category-pills{display:flex;gap:9px;overflow-x:auto;padding:22px clamp(18px,5vw,76px);scrollbar-width:thin}.pill{white-space:nowrap;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:10px 17px;border-radius:30px}.pill.active,.pill:hover{background:var(--wine);color:#fff;border-color:var(--wine)}.menu-title{padding:18px clamp(18px,5vw,76px) 22px}.text-button{border:1px solid var(--line);background:var(--paper);color:var(--wine);border-radius:30px;padding:10px 16px}.menu-title+.product-grid{padding:0 clamp(18px,5vw,76px) 55px}.empty{text-align:center;padding:50px;color:var(--muted)}.simple-page{padding:80px 9vw;min-height:60vh}.simple-page p:not(.eyebrow){color:var(--muted);font-size:18px}.about-photo{max-width:680px;height:280px;border-radius:24px;overflow:hidden;margin-top:30px}.about-photo img{width:100%;height:100%;object-fit:cover}.link-button{display:inline-block;text-decoration:none}
footer{background:#32191c;color:#f8eee4;padding:36px clamp(18px,6vw,80px);text-align:center}footer a{color:#f1c9c2}footer p{margin:8px}footer small{display:block;color:#c8aaa4;margin-top:20px}.footer-brand{font:700 25px 'Playfair Display',serif;letter-spacing:3px}.footer-brand span{display:block;font:10px 'DM Sans';letter-spacing:4px}.hidden{display:none!important}
@media(max-width:1050px){nav{gap:0}.navlink{padding:10px}.category-grid{grid-template-columns:repeat(4,1fr)}.product-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.topbar{height:66px;padding:0 14px}.brand b{font-size:21px}.brand small{font-size:7px}.brand-mark{font-size:27px}nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:42px 22px 28px}.hero h1{font-size:48px}.hero-photo{min-height:220px;height:220px;grid-row:1}.hero-photo:before{background:linear-gradient(0deg,var(--paper),transparent 55%)}.photo-note{bottom:12px;right:14px;font-size:12px}.section{padding:34px 16px}.section-heading h2,.menu-title h2{font-size:28px}.muted{display:none}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.category-card{min-height:130px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.product-card img{height:135px}.product-info{padding:11px}.product-top{display:block}.product-top h3{font-size:16px;margin-bottom:5px}.price{font-size:14px}.product-info p{font-size:12px;line-height:1.4}.menu-intro{padding:38px 18px 22px}.menu-intro h1{font-size:39px}.category-pills{padding:16px;gap:7px}.pill{padding:9px 13px;font-size:12px}.menu-title{padding:14px 16px 18px}.menu-title+.product-grid{padding:0 16px 40px}.text-button{font-size:11px;padding:9px 12px}.simple-page{padding:55px 22px}.tools button{width:39px;height:39px}.featured-grid .product-card:nth-child(n+5){display:none}}
@media(max-width:390px){.product-grid{grid-template-columns:1fr}.product-card{display:grid;grid-template-columns:38% 1fr}.product-card img{height:100%;min-height:145px}.category-card{min-height:118px}}
