*{box-sizing:border-box;margin:0;padding:0}
:root{--red:#c91620;--red2:#ef233c;--ink:#171717;--muted:#6b6b6b;--cream:#fffaf6;--line:#eadfd8;--white:#fff}
html{scroll-behavior:smooth}
body{font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
a{text-decoration:none;color:inherit}
.nav{height:78px;background:rgba(255,250,246,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:12px;font-family:"Playfair Display",serif;font-size:22px;font-weight:800}
.brand img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid #fff}
.nav nav{display:flex;gap:28px;font-weight:600;font-size:14px}.nav nav a:hover{color:var(--red)}
.menu-btn{display:none;border:0;background:none;font-size:28px}
.hero{min-height:650px;padding:90px 8%;display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:50px;background:radial-gradient(circle at 85% 25%,#ffd9d9 0,#fffaf6 35%,#fffaf6 100%)}
.eyebrow{color:var(--red);font-weight:800;letter-spacing:2px;font-size:12px;margin-bottom:12px}
h1,h2{font-family:"Playfair Display",serif;line-height:1.03}h1{font-size:clamp(58px,8vw,100px);letter-spacing:-3px}h1 span{color:var(--red)}
.hero-copy{max-width:600px;color:var(--muted);font-size:18px;margin:24px 0 30px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{border:0;border-radius:12px;padding:14px 20px;font-weight:800;cursor:pointer;font-size:15px}.primary{background:var(--red);color:#fff}.primary:hover{background:#a90f18}.ghost{border:1px solid #cfc2ba;background:#fff}.full{width:100%}
.hero-card{background:#171717;color:#fff;border-radius:30px;padding:25px;box-shadow:0 25px 70px #c9162020;transform:rotate(2deg)}
.hero-card img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:20px;background:#fff}
.hero-card div{display:flex;flex-direction:column;padding:18px 4px 3px}.hero-card strong{font-family:"Playfair Display",serif;font-size:24px}.hero-card span{color:#bcbcbc;font-size:13px}
.section{padding:95px 8%}.section-heading{max-width:760px;margin-bottom:38px}.section-heading h2{font-size:clamp(40px,5vw,62px);margin-bottom:12px}.section-heading p:not(.eyebrow){color:var(--muted)}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.filter{border:1px solid var(--line);background:#fff;padding:10px 17px;border-radius:999px;font-weight:700;cursor:pointer}.filter.active,.filter:hover{background:var(--red);color:#fff;border-color:var(--red)}
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.food-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;display:flex;flex-direction:column;min-height:245px;transition:.2s}.food-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #0000000c}
.food-top{display:flex;justify-content:space-between;gap:15px}.food-card h3{font-family:"Playfair Display",serif;font-size:24px}.price{font-weight:900;color:var(--red);white-space:nowrap}.food-card p{color:var(--muted);font-size:14px;margin:8px 0 18px;flex:1}
.add-row{display:flex;gap:8px}.qty{width:70px;border:1px solid var(--line);border-radius:10px;padding:10px;text-align:center}.add{flex:1;background:#171717;color:#fff;border:0;border-radius:10px;font-weight:800;cursor:pointer}.add:hover{background:var(--red)}
.order-section{background:#171717;color:#fff;padding:95px 8%}.order-section .section-heading p:not(.eyebrow){color:#aaa}
.order-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:25px;align-items:start}.customer-card,.cart-card{background:#fff;color:var(--ink);border-radius:24px;padding:25px}.customer-card h3,.cart-card h3{font-family:"Playfair Display",serif;font-size:28px;margin-bottom:20px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;margin-bottom:15px}input,textarea{font:inherit;border:1px solid var(--line);border-radius:11px;padding:12px 13px;outline:none;background:#fff}input:focus,textarea:focus{border-color:var(--red)}textarea{resize:vertical}
.cart-card{position:sticky;top:95px}.cart-top{display:flex;justify-content:space-between;align-items:center}.cart-top h3{margin:0}.cart-top span{font-size:13px;color:var(--muted)}
.cart-items{margin:15px 0;max-height:320px;overflow:auto}.empty{text-align:center;color:var(--muted);padding:35px 10px}
.cart-line{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.cart-line small{display:block;color:var(--muted)}.remove{border:0;background:#f6eeee;color:var(--red);width:28px;height:28px;border-radius:50%;cursor:pointer}
.totals{border-top:1px solid var(--line);padding-top:15px;margin-top:8px}.totals div{display:flex;justify-content:space-between;margin:7px 0;color:var(--muted)}.totals .grand{color:var(--ink);font-size:21px;font-weight:900;margin-top:14px}.totals .grand strong{color:var(--red)}.small{font-size:11px;color:#888;margin-top:12px;text-align:center}
.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about p:not(.eyebrow){color:var(--muted);max-width:620px}.stats{display:flex;gap:35px;margin-top:30px}.stats div{display:flex;flex-direction:column}.stats strong{font-family:"Playfair Display",serif;font-size:25px}.stats span{font-size:12px;color:var(--muted)}
.about-box{background:#171717;color:#fff;padding:45px;border-radius:30px}.about-box>span{font-family:Georgia;font-size:80px;color:var(--red);line-height:.5}.about-box p{font-family:"Playfair Display",serif!important;color:#fff!important;font-size:27px;margin:20px 0!important}.about-box strong{color:#aaa}
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;gap:13px;align-items:center}.contact-card>span{font-size:25px}.contact-card strong,.contact-card small{display:block}.contact-card small{color:var(--muted);font-size:12px;word-break:break-word}.contact-card:hover{border-color:var(--red)}
footer{background:#111;color:#fff;padding:35px 8%;display:flex;justify-content:space-between;gap:20px;align-items:center}footer div{display:flex;flex-direction:column}footer span,footer p{color:#999;font-size:12px}
.toast{position:fixed;right:20px;bottom:20px;background:#171717;color:#fff;padding:14px 18px;border-radius:12px;opacity:0;transform:translateY(15px);pointer-events:none;transition:.25s;z-index:50}.toast.show{opacity:1;transform:none}
code{background:#f3e8e4;padding:2px 5px;border-radius:5px}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding-top:65px}.hero-card{max-width:400px}.menu-grid{grid-template-columns:repeat(2,1fr)}.order-layout,.about{grid-template-columns:1fr}.cart-card{position:static}.contact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.nav{height:68px}.menu-btn{display:block}.nav nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:20px 8%;flex-direction:column;gap:16px;border-bottom:1px solid var(--line)}.nav nav.open{display:flex}.brand span{font-size:18px}.hero{min-height:auto;padding:65px 6%}.section,.order-section{padding:70px 6%}h1{font-size:58px}.menu-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.stats{gap:20px;flex-wrap:wrap}footer{flex-direction:column;align-items:flex-start}}

.option-list{display:flex;flex-direction:column;gap:8px}.option-list .add-row{align-items:center}.option-price{font-size:12px;font-weight:700;flex:1;color:#555}.option-price b{color:var(--red);margin-left:4px}.option-list .qty{width:55px;padding:8px}.option-list .add{flex:0 0 70px;padding:9px}

.catering{background:#fff4ee}.catering-card{background:#171717;color:#fff;border-radius:28px;padding:45px;display:flex;align-items:center;justify-content:space-between;gap:35px}.catering-card h2{font-size:clamp(40px,5vw,62px);margin-bottom:12px}.catering-card>div:first-child{max-width:720px}.catering-card p:not(.eyebrow){color:#bbb}.catering-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.catering-actions .ghost{background:#fff}@media(max-width:900px){.catering-card{flex-direction:column;align-items:flex-start}.catering-actions{justify-content:flex-start}}
