
*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#1a1410;--surface:#221a14;--surface-2:#2b211a;--text:#f4e9d8;--muted:#a89484;--accent:#d4a574;--accent-2:#c87850;--border:#3a2c22}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.7}
a{color:inherit;text-decoration:none}
header{position:sticky;top:0;background:rgba(26,20,16,.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:50;padding:1.1rem 5%;display:flex;justify-content:space-between;align-items:center}
.logo{font-family:'Playfair Display',Georgia,serif;font-size:1.4rem;font-weight:600;letter-spacing:.5px}
.logo span{color:var(--accent)}
nav{display:flex;gap:1.5rem;flex-wrap:wrap}
nav a{font-size:.9rem;color:var(--muted);transition:color .25s;padding:.3rem 0}
nav a:hover{color:var(--accent)}
nav a.active{color:var(--accent)}
.btn{display:inline-block;padding:.8rem 1.9rem;border-radius:4px;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;transition:all .3s}
.btn-primary{background:var(--accent);color:var(--bg)}
.btn-primary:hover{background:var(--accent-2);color:var(--text);transform:translateY(-2px)}
.btn-ghost{border:1px solid var(--border);color:var(--text)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
.hero{position:relative;min-height:80vh;display:flex;align-items:center;padding:5rem 5%;overflow:hidden;background:radial-gradient(ellipse at top,rgba(212,165,116,.12),transparent 60%)}
.steam{position:absolute;bottom:0;left:0;right:0;height:100%;pointer-events:none;overflow:hidden}
.steam span{position:absolute;bottom:-40px;width:60px;height:60px;background:radial-gradient(circle,rgba(244,233,216,.18),transparent 70%);border-radius:50%;animation:rise 9s linear infinite;filter:blur(8px)}
.steam span:nth-child(1){left:18%;animation-delay:0s}
.steam span:nth-child(2){left:38%;animation-delay:2.5s;animation-duration:11s}
.steam span:nth-child(3){left:58%;animation-delay:5s;animation-duration:10s}
.steam span:nth-child(4){left:78%;animation-delay:1.2s;animation-duration:12s}
@keyframes rise{0%{transform:translateY(0) scale(1);opacity:0}10%{opacity:.8}90%{opacity:.3}100%{transform:translateY(-90vh) scale(2.2);opacity:0}}
.hero-inner{position:relative;z-index:2;max-width:680px}
.hero .eyebrow{font-size:.78rem;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);margin-bottom:1.25rem;display:block}
.hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.4rem,6vw,4.4rem);font-weight:600;line-height:1.05;margin-bottom:1.5rem}
.hero p{color:var(--muted);max-width:520px;margin-bottom:2.25rem;font-size:1.1rem}
section{padding:5rem 5%;max-width:1100px;margin:0 auto}
.section-title{font-family:'Playfair Display',Georgia,serif;font-size:2.2rem;font-weight:600;text-align:center;margin-bottom:.5rem}
.section-sub{text-align:center;color:var(--muted);margin-bottom:3rem;font-size:.95rem;font-style:italic}
.menu-list{max-width:760px;margin:0 auto}
.menu-item{display:flex;justify-content:space-between;align-items:baseline;padding:1.25rem 0;border-bottom:1px solid var(--border)}
.menu-item h3{font-family:'Playfair Display',Georgia,serif;font-size:1.2rem;font-weight:600}
.menu-item .desc{display:block;color:var(--muted);font-size:.85rem;margin-top:.25rem;font-style:italic}
.menu-item .price{color:var(--accent);font-weight:600;font-size:1.05rem;white-space:nowrap;margin-left:1.5rem}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-top:2rem}
.card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1.75rem;transition:transform .3s,border-color .3s}
.card:hover{transform:translateY(-4px);border-color:var(--accent)}
.card h3{font-family:'Playfair Display',Georgia,serif;font-size:1.25rem;margin-bottom:.5rem}
.card p{color:var(--muted);font-size:.9rem}
footer{border-top:1px solid var(--border);padding:3rem 5%;margin-top:4rem}
footer .grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}
footer h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:1rem;font-weight:600}
footer a{display:block;font-size:.9rem;margin-bottom:.5rem;color:var(--text);transition:color .2s}
footer a:hover{color:var(--accent)}
.foot-bottom{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.5rem;text-align:center;color:var(--muted);font-size:.82rem}
@media(max-width:720px){footer .grid{grid-template-columns:1fr 1fr}nav{display:none}}
