
:root{
  --black:#0b0a09;--coal:#151311;--cream:#efe5d6;--ivory:#f8f3eb;
  --fire:#ef3a24;--ember:#ff7a1a;--gold:#a88348;--muted:#afa69a;
  --line:rgba(255,255,255,.14);--darkline:rgba(15,12,10,.15)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:#fff;font-family:"Manrope",sans-serif;overflow-x:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select{font:inherit}
.noise{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.loader{position:fixed;inset:0;z-index:130;background:#070605;display:grid;place-items:center;align-content:center;gap:20px;transition:.7s ease}.loader.hidden{opacity:0;visibility:hidden}.loader-flame{color:var(--fire);font-size:2.2rem;animation:pulse 1s infinite alternate}.loader-word{font-family:"Oswald";font-size:clamp(2.5rem,6vw,6rem);letter-spacing:.12em}.loader-line{width:min(340px,60vw);height:2px;background:#2b2622;overflow:hidden}.loader-line span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--fire),var(--ember));animation:load 1.5s forwards}@keyframes load{to{width:100%}}@keyframes pulse{to{transform:scale(1.2);filter:drop-shadow(0 0 14px var(--fire))}}
.site-header{position:absolute;z-index:50;inset:0 0 auto;height:92px;padding:0 4.5vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{text-align:center;display:flex;flex-direction:column;line-height:1}.brand strong{font-family:"Oswald";font-size:1.2rem;letter-spacing:.15em}.brand small{font-size:.5rem;letter-spacing:.35em;color:var(--fire);margin-top:6px}.menu-toggle{width:42px;background:none;border:0;padding:0}.menu-toggle span{display:block;width:29px;height:1px;background:#fff;margin:7px 0}.reserve-link{justify-self:end;font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:5px}
.menu-panel{position:fixed;z-index:120;inset:0;background:#0a0908;padding:7vh 8vw 5vh;transform:translateX(-100%);transition:transform .7s cubic-bezier(.77,0,.18,1);overflow-y:auto}.menu-panel.open{transform:none}.menu-close{position:absolute;right:5vw;top:3vh;background:none;border:0;color:#fff;font-size:3rem}.menu-panel nav{margin-top:8vh}.menu-panel nav a{display:grid;grid-template-columns:70px 1fr;gap:20px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-family:"Oswald";font-size:clamp(2.5rem,6vw,6.4rem);text-transform:uppercase}.menu-panel nav span{font-family:"Manrope";font-size:.63rem;letter-spacing:.15em;color:var(--fire)}.menu-meta{display:flex;justify-content:space-between;margin-top:7vh;color:#8e867d;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em}.menu-open{overflow:hidden}
.hero{height:100svh;min-height:760px;position:relative;display:flex;align-items:flex-end;padding:0 6vw 8vh;overflow:hidden}.hero-frame{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease}.hero-frame.active{opacity:1}.hero-frame img{height:100%;object-fit:cover;object-position:center 35%;transform:scale(1.06);transition:transform 6.5s ease}.hero-frame.active img{transform:scale(1)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.18) 68%),linear-gradient(to top,rgba(0,0,0,.72),transparent 52%)}.ember{position:absolute;border-radius:50%;background:radial-gradient(circle,var(--fire),transparent 68%);filter:blur(14px);opacity:.18}.ember-one{width:280px;height:280px;right:13%;top:18%}.ember-two{width:180px;height:180px;left:35%;bottom:10%}.hero-copy{position:relative;z-index:3;max-width:1080px}.eyebrow{margin:0 0 20px;font-size:.65rem;text-transform:uppercase;letter-spacing:.27em;font-weight:700}.eyebrow.dark{color:#8a6f4b}.hero h1,.manifesto h2,.ritual h2,.section-head h2,.fire-word,.feast-card h3,.menu-intro h2,.event-copy h2,.reserve h2{font-family:"Oswald";text-transform:uppercase}.hero h1{font-size:clamp(4.6rem,10.2vw,11rem);line-height:.8;margin:0}.hero h1 span,.hero h1 em{display:block}.hero h1 em{font-style:normal;color:var(--fire);margin-left:9vw}.hero-intro{max-width:650px;line-height:1.8;color:rgba(255,255,255,.76);font-size:1.02rem;margin:32px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 23px;border:1px solid transparent;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;font-weight:700}.btn-solid{background:#fff;color:#111}.btn-outline{border-color:rgba(255,255,255,.55)}.btn-fire{background:var(--fire);color:#fff;border:0;width:100%}.hero-progress{position:absolute;z-index:3;right:5vw;bottom:9vh;display:flex;gap:12px;align-items:center;font-size:.65rem}.hero-progress i{width:90px;height:2px;background:rgba(255,255,255,.28)}.hero-progress b{display:block;height:100%;width:0;background:var(--fire);animation:progress 5.4s linear infinite}@keyframes progress{to{width:100%}}.hero-side{position:absolute;z-index:3;right:4vw;top:48%;writing-mode:vertical-rl;font-size:.58rem;text-transform:uppercase;letter-spacing:.22em;color:rgba(255,255,255,.5)}
.manifesto{background:var(--cream);color:#16120e;padding:140px 7vw;display:grid;grid-template-columns:180px 1fr}.manifesto-index{font-family:"Oswald";font-size:8rem;color:#c7b69f;border-right:1px solid var(--darkline)}.manifesto-copy{padding-left:8vw}.manifesto h2{font-size:clamp(3.8rem,8vw,8rem);line-height:.92;margin:0}.manifesto h2 em{font-style:normal;color:var(--fire)}.manifesto-body{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:850px;margin-top:50px}.manifesto-body p{color:#5f5449;line-height:1.9}
.ritual{display:grid;grid-template-columns:1.1fr .9fr;background:var(--ivory);color:#17130f}.ritual-media img{height:100%;object-fit:cover}.ritual-copy{padding:8vw 6vw;display:flex;flex-direction:column;justify-content:center}.ritual h2{font-size:clamp(3.3rem,6.5vw,6.8rem);line-height:.93;margin:0 0 38px}.ritual-step{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:20px 0;border-top:1px solid var(--darkline)}.ritual-step span{color:var(--fire);font-size:.68rem}.ritual-step strong{font-size:1rem}.ritual-step p{margin:6px 0 0;color:#675d52;line-height:1.7}
.fire-statement{min-height:520px;padding:90px 7vw;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 70% 40%,rgba(239,58,36,.2),transparent 30%),linear-gradient(125deg,#25120d,#080706 65%);position:relative;overflow:hidden}.fire-statement:after{content:"";position:absolute;inset:-30%;opacity:.12;background:repeating-radial-gradient(ellipse at center,transparent 0 12px,#ff7136 13px 14px);transform:rotate(-8deg)}.fire-word{font-size:clamp(6rem,20vw,20rem);line-height:.7;color:#fff;position:relative;z-index:2}.fire-copy{position:relative;z-index:2;max-width:800px;margin:45px 0 0 auto}.fire-copy p{font-size:1.4rem;color:#f4e4d5}.fire-copy span{color:#a89e93;text-transform:uppercase;letter-spacing:.16em;font-size:.66rem}
.feast{padding:140px 6vw;background:var(--ivory);color:#16120e}.section-head{max-width:1000px;margin-bottom:70px}.section-head h2{font-size:clamp(3.8rem,8vw,8rem);line-height:.9;margin:0}.section-head h2 em{font-style:normal;color:var(--fire)}.feast-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr;gap:18px}.feast-card{position:relative;min-height:430px;overflow:hidden}.feast-card.large{grid-row:span 2}.feast-card img{height:100%;object-fit:cover;transition:.8s ease}.feast-card:hover img{transform:scale(1.04)}.card-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88),transparent 70%)}.card-copy{position:absolute;left:28px;right:28px;bottom:26px;color:#fff}.card-copy span{font-size:.62rem;text-transform:uppercase;letter-spacing:.18em;color:#f09a79}.card-copy h3{font-size:2.2rem;margin:8px 0}.card-copy p{max-width:420px;color:rgba(255,255,255,.72)}
.menu-section{display:grid;grid-template-columns:.8fr 1.2fr;background:#0e0d0c;padding:130px 6vw}.menu-intro{padding-right:6vw}.menu-intro h2{font-size:clamp(3.8rem,7.5vw,7.8rem);line-height:.9;margin:0}.menu-intro h2 em{font-style:normal;color:var(--fire)}.menu-intro p:last-child{color:#9d958c;line-height:1.8;max-width:460px}.menu-list{border-top:1px solid var(--line)}.menu-list a{display:grid;grid-template-columns:50px 1fr 1fr auto;gap:20px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);transition:.3s}.menu-list a:hover{padding-left:12px}.menu-list span{color:var(--fire);font-size:.65rem}.menu-list strong{font-family:"Oswald";font-size:2rem;text-transform:uppercase}.menu-list small{color:#938b82}.menu-list b{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em}
.event-banner{height:88vh;min-height:730px;position:relative;display:flex;align-items:flex-end;padding:0 7vw 9vh}.event-banner>img,.event-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.event-shade{background:linear-gradient(to top,rgba(0,0,0,.86),rgba(0,0,0,.15) 70%)}.event-copy{position:relative;z-index:2;max-width:950px}.event-copy h2{font-size:clamp(4rem,8vw,8rem);line-height:.9;margin:0}.event-copy h2 em{font-style:normal;color:var(--fire)}.event-copy>p:not(.eyebrow){max-width:650px;color:rgba(255,255,255,.74);line-height:1.8}
.reviews{display:grid;grid-template-columns:1fr 1fr;background:var(--cream);color:#17120e}.reviews-media img{height:100%;object-fit:cover}.reviews-copy{padding:9vw 7vw;display:flex;flex-direction:column;justify-content:center}.stars{color:var(--fire);letter-spacing:.35em}blockquote{font-family:"Oswald";font-size:clamp(2.7rem,5vw,5.5rem);line-height:1.04;margin:25px 0;text-transform:uppercase}.reviews-copy>p:not(.eyebrow){color:#6d5f52}.review-controls{display:flex;align-items:center;gap:18px;margin-top:30px}.review-controls button{width:48px;height:48px;border:1px solid var(--darkline);background:none}.review-controls span{font-size:.66rem;letter-spacing:.14em}
.faq{padding:130px 7vw;background:var(--ivory);color:#16120e}.faq-list{max-width:950px}.faq details{border-top:1px solid var(--darkline);padding:22px 0}.faq summary{font-family:"Oswald";font-size:1.7rem;text-transform:uppercase;cursor:pointer}.faq details p{color:#675d52;line-height:1.8;max-width:760px}
.reserve{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:130px 7vw;background:linear-gradient(135deg,#2d120d,#0b0908 65%)}.reserve-copy h2{font-size:clamp(4rem,8vw,8rem);line-height:.88;margin:0}.reserve-copy h2 em{font-style:normal;color:var(--fire)}.reserve-copy p:last-child{color:#a99f96}.reserve-form{background:var(--ivory);color:#17120e;padding:32px;display:grid;gap:18px}.reserve-form label{display:grid;gap:7px;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}.reserve-form input,.reserve-form select{width:100%;padding:14px;border:1px solid #d8cec0;background:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-note{min-height:22px;color:#6b5d50;margin:0}
footer{padding:80px 6vw 30px;background:#060504}.footer-brand{font-family:"Oswald";font-size:clamp(4.5rem,12vw,12rem);letter-spacing:.08em}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;margin:60px 0}.footer-grid>div{display:flex;flex-direction:column;gap:10px}.footer-grid span{color:#7e756c;font-size:.62rem;text-transform:uppercase;letter-spacing:.18em}.footer-grid p,.footer-grid a{color:#c2b9af;font-size:.86rem}.footer-bottom{border-top:1px solid #25211e;padding-top:22px;display:flex;justify-content:space-between;color:#6e665f;font-size:.68rem}
.reveal{opacity:0;transform:translateY(36px);transition:.85s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:960px){.manifesto,.ritual,.menu-section,.reviews,.reserve{grid-template-columns:1fr}.manifesto-index{border-right:0;border-bottom:1px solid var(--darkline);margin-bottom:45px}.manifesto-copy{padding-left:0}.feast-grid{grid-template-columns:1fr;grid-template-rows:auto}.feast-card.large{grid-row:auto}.menu-intro{padding:0 0 60px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.site-header{grid-template-columns:1fr auto}.brand{display:none}.hero{padding:0 22px 68px}.hero h1{font-size:4.5rem}.hero h1 em{margin-left:0}.hero-progress,.hero-side{display:none}.manifesto,.feast,.menu-section,.faq,.reserve{padding:90px 22px}.manifesto-body{grid-template-columns:1fr;gap:12px}.ritual-copy{padding:90px 24px}.fire-statement{padding:90px 24px}.menu-list a{grid-template-columns:36px 1fr auto}.menu-list small{display:none}.event-banner{padding:0 24px 70px}.reviews-copy{padding:90px 24px}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.menu-panel nav a{font-size:2.6rem}.menu-meta{flex-direction:column;gap:6px}}


/* Minimal refinement */
:root{
  --fire:#e7472f;
  --ember:#f29a57;
  --cream:#f0e9df;
  --ivory:#faf7f1;
}

.hero-shade{
  background:
    linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.08) 72%),
    linear-gradient(to top,rgba(0,0,0,.52),transparent 52%);
}
.ember{display:none}
.hero h1{
  font-size:clamp(4.2rem,9vw,9.4rem);
  line-height:.83;
  letter-spacing:-.035em;
}
.hero h1 em{margin-left:5vw}
.hero-intro{
  max-width:520px;
  font-size:.98rem;
  line-height:1.7;
}
.btn{
  min-height:50px;
  padding:0 21px;
  letter-spacing:.12em;
}
.manifesto{padding-top:120px;padding-bottom:120px}
.manifesto-index{
  font-size:6rem;
  color:#b9aa97;
}
.manifesto h2,.ritual h2,.section-head h2,.menu-intro h2,.event-copy h2,.reserve h2{
  letter-spacing:-.025em;
}
.ritual-copy{padding-top:7vw;padding-bottom:7vw}
.feast{padding-top:120px;padding-bottom:120px}
.feast-grid{
  gap:22px;
}
.feast-card{
  border-radius:2px;
}
.card-copy{
  left:24px;
  right:24px;
  bottom:22px;
}
.menu-section{
  padding-top:120px;
  padding-bottom:120px;
}
.menu-list a{
  padding:23px 0;
}
.menu-list strong{
  font-size:1.7rem;
  letter-spacing:.01em;
}
.event-banner{
  min-height:680px;
  height:80vh;
}
.reviews-copy{
  padding-top:8vw;
  padding-bottom:8vw;
}
blockquote{
  font-size:clamp(2.3rem,4.4vw,4.8rem);
}
.reserve{
  padding-top:110px;
  padding-bottom:110px;
}
footer{
  padding-top:70px;
}

@media(max-width:680px){
  .hero h1{font-size:4rem}
  .hero h1 em{margin-left:0}
  .manifesto,.feast,.menu-section,.reserve{padding-top:82px;padding-bottom:82px}
}
