:root{--black:#0b0a0a;--ink:#e7e0d1;--paper:#1a0e0d;--paper-2:#231310;--red:#8f1210;--red-2:#a3201c;--line:#c2ab73;--cream:#f2ecdd}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:Cormorant Garamond,Georgia,serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.home{background:var(--black)}body.page{background:var(--paper);min-height:100%}body.page:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 50% 12%,#be965a1a,#0000 55%),radial-gradient(140% 130% at 50% 60%,#0000 45%,#00000080)}a{color:inherit;text-decoration:none}.brand{font-family:Cinzel,serif;font-weight:600;letter-spacing:.42em;text-indent:.42em;font-size:clamp(1.2rem,3.2vw,1.85rem);line-height:1;display:inline-block}nav.primary{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 26px;margin-top:14px}nav.primary a{font-family:Cinzel,serif;font-size:.66rem;letter-spacing:.26em;text-indent:.26em;text-transform:uppercase;padding:6px 2px;position:relative;opacity:.82;transition:opacity .35s ease,color .4s ease}nav.primary a:hover{opacity:1}nav.primary a:after{content:"";position:absolute;left:50%;bottom:0;height:1px;width:0;background:var(--red-2);transform:translate(-50%);transition:width .4s ease}nav.primary a:hover:after,nav.primary a.active:after{width:100%}nav.primary a.active{opacity:1;color:var(--red)}.request-corner{position:absolute;top:24px;right:26px;z-index:30;font-family:Cinzel,serif;font-size:.62rem;letter-spacing:.24em;text-indent:.24em;text-transform:uppercase;padding-bottom:4px;border-bottom:1px solid transparent;transition:border-color .4s ease,color .4s ease}.request-corner:hover{border-color:var(--red-2);color:var(--red)}.home-wrap{position:relative;width:100%;min-height:calc(100vh + 120px);min-height:calc(100lvh + 120px);z-index:1}.hero{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;background:var(--black)}.home-brand{position:absolute;top:7.5vh;left:0;right:0;z-index:20;display:flex;flex-direction:column;align-items:center;color:var(--cream);text-shadow:0 1px 3px rgba(0,0,0,.62),0 0 26px rgba(0,0,0,.4);animation:fade 1.4s ease both}.home .request-corner{color:var(--cream);text-shadow:0 1px 3px rgba(0,0,0,.62),0 0 18px rgba(0,0,0,.45);animation:fade 1.4s ease both}@keyframes fade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.page-head{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;padding:30px 16px 22px;color:var(--cream)}.page-head .brand{color:var(--cream)}.page-head nav.primary a{color:var(--ink)}main.page{position:relative;z-index:2;max-width:720px;margin:0 auto;padding:26px 26px 120px}.page-title{font-family:Cinzel,serif;font-weight:500;text-align:center;color:var(--red);font-size:clamp(1.7rem,4.4vw,2.4rem);letter-spacing:.18em;text-indent:.18em;margin-bottom:6px}.rule{width:46px;height:1px;background:var(--line);margin:22px auto 42px;position:relative}.rule:before,.rule:after{content:"";position:absolute;top:50%;width:5px;height:5px;background:var(--red);border-radius:50%;transform:translateY(-50%) rotate(45deg)}.rule:before{left:-16px}.rule:after{right:-16px}.origin-body p{font-size:1.16rem;line-height:1.85;color:#b8ad97;text-align:center;max-width:620px;margin:0 auto 1.1em}.origin-body p.lede{font-style:italic;color:#b8ad97}.origin-body p:nth-child(2){font-style:italic}.origin-body p:last-child{color:var(--line)}.seal{display:block;text-align:center;font-family:Cinzel,serif;color:var(--red);letter-spacing:.32em;text-indent:.32em;font-size:.76rem;text-transform:uppercase;margin-top:28px}.location{margin-top:62px;padding-top:34px;border-top:1px solid var(--line);text-align:center}.location h3{font-family:Cinzel,serif;font-weight:500;color:var(--red);letter-spacing:.26em;text-indent:.26em;text-transform:uppercase;font-size:.84rem;margin-bottom:14px}.location p{font-size:1.1rem;line-height:1.8;color:var(--ink);max-width:540px;margin:0 auto}.location .hours{margin-top:16px;font-family:Cinzel,serif;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.intro{text-align:center;font-style:italic;color:#b8ad97;font-size:1.12rem;line-height:1.7;max-width:540px;margin:0 auto 46px}.course{text-align:center;margin:0 auto 34px;max-width:540px}.course .dish{font-family:Cinzel,serif;font-weight:500;color:var(--red);font-size:1.02rem;letter-spacing:.13em;text-indent:.13em;text-transform:uppercase;margin-bottom:7px}.course .desc{font-size:.96rem;line-height:1.6;color:var(--ink)}.coda{text-align:center;margin-top:50px;color:#b8ad97;font-style:italic;font-size:1rem;letter-spacing:.04em;opacity:1}.rules{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:30px}.rule-item{text-align:center}.rule-item h3{font-family:Cinzel,serif;font-weight:500;color:var(--red);font-size:.9rem;letter-spacing:.2em;text-indent:.2em;text-transform:uppercase;margin-bottom:8px}.rule-item p{font-size:1.02rem;line-height:1.6;color:var(--ink)}.formwrap{background:transparent;color:var(--cream);max-width:580px;margin:0 auto;padding:6px 0 40px}.formwrap .intro{color:#cfc6b4}.field{margin-bottom:26px}.field label{display:block;font-family:Cinzel,serif;color:var(--red-2);font-size:.72rem;letter-spacing:.12em;text-indent:.12em;text-transform:uppercase;line-height:1.5;margin-bottom:9px}.field input,.field textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #4a3d31;color:var(--cream);font-family:Cormorant Garamond,serif;font-size:1.1rem;padding:8px 2px;outline:none;transition:border-color .35s ease}.field textarea{resize:vertical;min-height:54px;line-height:1.5}.field input:focus,.field textarea:focus{border-color:var(--red-2)}.field input::placeholder,.field textarea::placeholder{color:#5e5345;font-style:italic}.submit{display:block;width:100%;margin-top:14px;cursor:pointer;background:transparent;color:var(--cream);border:1px solid var(--red-2);font-family:Cinzel,serif;font-size:.76rem;letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;padding:16px;transition:background .4s ease,color .4s ease,border-color .4s ease}.submit:hover{background:var(--red);color:var(--cream);border-color:var(--red)}.submit:disabled{opacity:.5;cursor:default}.note{margin-top:18px;text-align:center;font-size:.92rem;font-style:italic;color:#8c8170;min-height:1.2em}.sent{text-align:center;padding:34px 8px;animation:fade .9s ease both}.sent .mark{font-family:Cinzel,serif;color:var(--red-2);letter-spacing:.3em;text-indent:.3em;font-size:.78rem;text-transform:uppercase;margin-bottom:18px}.sent p{color:var(--cream);font-size:1.16rem;line-height:1.7;font-style:italic;max-width:380px;margin:0 auto}@media(max-width:560px){nav.primary{gap:4px 16px}nav.primary a{font-size:.6rem;letter-spacing:.2em}.request-corner{top:18px;right:16px;font-size:.56rem}.home-brand{top:72px}.page-head{padding-top:72px}main.page{padding-top:24px}.formwrap{padding:6px 0 32px}}
