:root{
  --cream:#f5e6c7;
  --cream-2:#fff4dc;
  --ink:#24150f;
  --brown:#3b2419;
  --gold:#b88a4a;
  --gold-soft:#d7b77b;
  --blue:#0b84bd;
  --blue-dark:#075c86;
  --white:#fffaf0;
  --shadow:0 25px 70px rgba(34,17,8,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream-2);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img,video{display:block;max-width:100%}
.top-ornament{height:8px;background:repeating-linear-gradient(90deg,var(--blue) 0 18px,#f1a51f 18px 36px,#fff 36px 47px,var(--blue-dark) 47px 66px)}
.site-header{position:fixed;top:8px;left:0;right:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;padding:14px 4vw;transition:.35s ease;background:linear-gradient(180deg,rgba(23,12,8,.72),rgba(23,12,8,0));color:#fff}
.site-header.scrolled{background:rgba(31,18,11,.94);backdrop-filter:blur(14px);box-shadow:0 12px 35px rgba(0,0,0,.22)}
.brand{display:flex;align-items:center;width:160px;border-radius:14px;overflow:hidden;background:#f7e8ca}
.brand img{width:100%;height:auto}
.main-nav{display:flex;justify-content:center;gap:30px;font-size:14px;font-weight:700;letter-spacing:.04em}
.main-nav a{position:relative;padding:10px 0}
.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:2px;background:var(--gold-soft);transition:.25s}
.main-nav a:hover:after{right:0}
.header-cta{border:1px solid rgba(255,255,255,.42);padding:12px 18px;border-radius:999px;font-weight:700;font-size:14px;background:rgba(255,255,255,.08)}
.nav-toggle{display:none;background:none;border:0;padding:6px;cursor:pointer}
.nav-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#1b0e08}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.02)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,8,4,.82) 0%,rgba(17,8,4,.48) 45%,rgba(17,8,4,.14) 75%),linear-gradient(0deg,rgba(17,8,4,.66),transparent 55%)}
.hero-noise{position:absolute;inset:0;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E")}
.hero-content{position:relative;z-index:3;color:#fff;width:min(760px,90vw);margin:0 0 10vh 7vw}
.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:800;color:var(--blue);margin-bottom:20px}.section-kicker.light{color:#f0c982}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(58px,8vw,128px);line-height:.78;margin:0 0 34px;letter-spacing:-.055em}.hero h1 em{font-weight:400;color:#f4c77a;font-size:.67em;letter-spacing:-.035em}
.hero p{max-width:620px;font-size:clamp(18px,2vw,25px);line-height:1.45;color:rgba(255,255,255,.88);margin:0 0 32px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;font-weight:800;transition:.25s}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 12px 35px rgba(11,132,189,.28)}.btn-primary:hover{transform:translateY(-2px);background:#0996d6}.btn-ghost{border:1px solid rgba(255,255,255,.4);color:#fff;background:rgba(255,255,255,.07)}.btn-ghost:hover{background:rgba(255,255,255,.14)}
.scroll-hint{position:absolute;z-index:3;right:5vw;bottom:8vh;width:48px;height:70px;border:1px solid rgba(255,255,255,.38);border-radius:30px;display:flex;justify-content:center}.scroll-hint span{width:6px;height:6px;border-radius:50%;background:#fff;margin-top:14px;animation:scrollDot 1.8s infinite}@keyframes scrollDot{0%{transform:translateY(0);opacity:1}80%{transform:translateY(30px);opacity:0}100%{opacity:0}}
.section{padding:110px 7vw}.story{position:relative;background:var(--cream-2)}.story:before,.story:after{content:"";position:absolute;top:0;bottom:0;width:28px;background:repeating-linear-gradient(0deg,var(--blue) 0 18px,#f2aa24 18px 36px,#fff 36px 48px,var(--blue-dark) 48px 66px);opacity:.92}.story:before{left:0}.story:after{right:0}
.arch-card{position:relative;max-width:980px;margin:auto;padding:95px 9vw 80px;text-align:center;border:2px solid var(--gold);border-radius:47% 47% 28px 28px/22% 22% 28px 28px;background:linear-gradient(180deg,#fff5dd,#f5e4c1);box-shadow:var(--shadow)}
.arch-card:before{content:"✦  ✦  ✦";position:absolute;top:32px;left:0;right:0;color:var(--gold);letter-spacing:.45em}.arch-card h2,.section-head h2,.fire-copy h2,.banquet-frame h2,.contacts h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em}.arch-card h2{font-size:clamp(42px,6vw,78px);line-height:.98;margin:0 0 32px;color:var(--blue-dark)}.arch-card .lead{font-size:21px;line-height:1.65}.arch-card p{font-size:17px;line-height:1.75;max-width:760px;margin:0 auto 22px}.story-sign{margin-top:38px;color:var(--gold);font-family:Georgia,serif;font-size:28px;letter-spacing:.18em}
.featured{background:#ead5aa}.section-head{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;max-width:1180px;margin:0 auto 55px}.section-head h2{font-size:clamp(42px,5vw,72px);line-height:.96;margin:0;color:var(--brown)}.section-head p{font-size:18px;line-height:1.7;margin:0;color:#5f483a}
.dish-grid{max-width:1250px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:410px;gap:18px}.dish-card{position:relative;overflow:hidden;border-radius:28px;background:#2f170e;box-shadow:0 12px 40px rgba(72,43,20,.12)}.dish-card--wide{grid-column:span 2}.dish-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.dish-card:hover img{transform:scale(1.055)}.dish-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(19,8,3,.86),rgba(19,8,3,0) 64%)}.dish-copy{position:absolute;left:26px;right:26px;bottom:24px;color:#fff}.dish-copy span{text-transform:uppercase;letter-spacing:.16em;font-size:10px;color:#f6c46e;font-weight:800}.dish-copy h3{font-family:Georgia,serif;font-size:34px;font-weight:500;margin:8px 0}.dish-copy p{margin:0;line-height:1.5;color:rgba(255,255,255,.8);max-width:500px}
.menu-categories{max-width:1100px;margin:42px auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.menu-categories span{border:1px solid rgba(75,47,28,.22);background:rgba(255,246,226,.52);padding:11px 16px;border-radius:999px;font-weight:700;font-size:13px}
.fire-break{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden;background:#1c0d07}.fire-break>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fire-break-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,8,3,.9),rgba(20,8,3,.46) 52%,rgba(20,8,3,.1))}.fire-copy{position:relative;z-index:2;color:#fff;margin-left:7vw;width:min(600px,84vw)}.fire-copy h2{font-size:clamp(50px,7vw,94px);line-height:.93;margin:0 0 30px}.fire-copy p{font-size:20px;line-height:1.65;color:rgba(255,255,255,.82)}
.halls{background:#fff3dc}.hall-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.hall-card{min-height:300px;padding:28px;border:1px solid rgba(184,138,74,.45);background:linear-gradient(145deg,#f7e7c8,#fff6e4);border-radius:24px;position:relative;overflow:hidden}.hall-card:after{content:"";position:absolute;width:130px;height:130px;border:1px solid var(--gold-soft);border-radius:50%;right:-52px;bottom:-52px;box-shadow:0 0 0 15px rgba(184,138,74,.08)}.hall-card span{color:var(--blue);font-weight:900;font-size:13px;letter-spacing:.16em}.hall-card h3{font-family:Georgia,serif;font-size:36px;font-weight:500;margin:45px 0 16px;color:var(--brown)}.hall-card p{line-height:1.65;color:#695143}
.banquets{position:relative;background:var(--blue-dark);overflow:hidden}.banquets:before{content:"";position:absolute;inset:-30% -10%;background:radial-gradient(circle at 20% 20%,rgba(255,196,90,.18),transparent 35%),radial-gradient(circle at 90% 60%,rgba(255,255,255,.09),transparent 28%)}.banquet-frame{position:relative;max-width:1000px;margin:auto;text-align:center;color:#fff;border:1px solid rgba(255,224,170,.55);padding:85px 9vw;border-radius:220px 220px 26px 26px;background:rgba(0,0,0,.08)}.banquet-frame h2{font-size:clamp(46px,6vw,82px);line-height:.96;margin:0 0 25px}.banquet-frame p{max-width:680px;margin:0 auto 30px;font-size:18px;line-height:1.7;color:rgba(255,255,255,.82)}
.contacts{background:#23130d;color:#fff;padding:80px 7vw 28px;position:relative}.contacts:before{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:repeating-linear-gradient(90deg,var(--blue) 0 23px,#f0a91f 23px 46px,#fff 46px 58px,var(--blue-dark) 58px 81px)}.contacts-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:40px;align-items:end}.contacts h2{font-size:clamp(62px,8vw,118px);line-height:.8;margin:0}.domain{color:#efc77e;font-size:24px;letter-spacing:.07em}.contact-actions{display:flex;gap:12px}.contact-actions a{min-width:190px;padding:22px;border:1px solid rgba(255,255,255,.18);border-radius:18px;display:flex;flex-direction:column;gap:8px;background:rgba(255,255,255,.04)}.contact-actions small{color:rgba(255,255,255,.55)}.contact-actions strong{font-size:25px}.contacts-note{max-width:1180px;margin:55px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.45);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.dish-card img{transition:none}.scroll-hint span{animation:none}}
@media (max-width:980px){.site-header{grid-template-columns:auto auto;justify-content:space-between}.header-cta{display:none}.nav-toggle{display:block}.main-nav{position:absolute;left:4vw;right:4vw;top:82px;display:none;flex-direction:column;gap:4px;padding:18px;background:rgba(31,18,11,.98);border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.3)}.main-nav.open{display:flex}.main-nav a{padding:13px}.hero-content{margin-left:5vw}.section{padding:85px 5vw}.section-head{grid-template-columns:1fr;gap:24px}.dish-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:360px}.dish-card--wide{grid-column:span 1}.hall-grid{grid-template-columns:repeat(2,1fr)}.contacts-inner{align-items:flex-start;flex-direction:column}.contact-actions{width:100%}.contact-actions a{flex:1}}
@media (max-width:640px){.site-header{padding:10px 16px}.brand{width:128px}.hero{min-height:92svh}.hero-content{margin:0 20px 9vh;width:auto}.hero h1{font-size:58px}.hero p{font-size:17px}.hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}.scroll-hint{display:none}.section{padding:70px 20px}.story:before,.story:after{width:10px}.arch-card{padding:76px 24px 55px;border-radius:44% 44% 22px 22px/14% 14% 22px 22px}.arch-card h2{font-size:42px}.arch-card .lead{font-size:18px}.dish-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-left:-20px;margin-right:-20px;padding:0 20px 8px;gap:12px}.dish-card,.dish-card--wide{min-width:82vw;height:430px;scroll-snap-align:center}.fire-break{min-height:620px}.fire-copy{margin-left:20px}.hall-grid{grid-template-columns:1fr}.banquet-frame{padding:70px 24px;border-radius:140px 140px 22px 22px}.contact-actions{flex-direction:column}.contacts{padding-left:20px;padding-right:20px}.contact-actions a{width:100%}.domain{font-size:20px}}

.menu-full-cta{max-width:1100px;margin:34px auto 0;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.menu-pdf-link{font-size:14px;font-weight:800;color:var(--blue-dark);border-bottom:1px solid rgba(7,92,134,.35);padding:8px 2px}.menu-pdf-link:hover{color:var(--blue)}
