@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#181818;--cream:#ffffff;--gold:#ed4b32;--red:#1c1c1c;--line:#dedede}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #ed4b32;outline-offset:5px}.skip{position:fixed;top:-80px;background:white;padding:15px;z-index:100}.skip:focus{top:0}header{height:94px;background:var(--ink);color:var(--cream);display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #ffffff20}.brand{display:flex;gap:13px;align-items:center;font-family:Georgia,serif;font-size:25px;letter-spacing:2px;font-weight:bold}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:4px;margin-top:4px}.brandmark{width:43px;height:48px;border:1px solid #c99b57;border-radius:24px 24px 4px 4px;position:relative;text-align:center;padding-top:7px;font-size:30px;color:var(--gold)}.brandmark span{position:absolute;font-size:10px;right:2px;top:0}nav{display:flex;gap:34px;font-size:13px}nav a:hover,.text-link:hover{color:var(--gold)}.header-call{border:1px solid #bdbdbd;padding:12px 23px;font-size:13px}.header-call span{margin-left:20px}.hero{min-height:720px;height:calc(100svh - 94px);max-height:950px;position:relative;overflow:hidden;background:#181818;color:var(--cream)}.hero-photo{position:absolute;inset:-12% 0;background:url('/mandi.webp') center/cover no-repeat;will-change:transform}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#121212dc 0%,#12121278 40%,transparent 75%),linear-gradient(0deg,#121212ab,transparent 40%)}.hero-copy{position:relative;padding:95px 5% 110px;max-width:900px;will-change:transform}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;line-height:1.8;text-transform:uppercase}.hero .eyebrow{color:#ffffff;display:flex;align-items:center;gap:12px}.eyebrow span{width:22px;height:1px;background:var(--gold)}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-2.5px;line-height:1.09;margin:26px 0}h1{font-size:clamp(55px,5.7vw,87px)}em{font-weight:500;color:#c63622}h1 em{color:var(--gold)}.hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#eeeeee}.actions{display:flex;align-items:center;gap:33px;margin-top:34px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;padding:19px 25px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.gold{background:var(--gold);color:var(--ink)}.gold:hover{background:#ff6349}.dark{background:var(--ink);color:var(--cream)}.text-link{font-size:13px}.text-link span{margin-left:15px}.hero-seal{position:absolute;right:6%;bottom:18%;border:1px solid #ed4b3280;border-radius:50%;width:139px;height:139px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:8px;letter-spacing:2px;background:#18181880;color:#f2d6aa;transform:rotate(9deg)}.hero-seal i{font-family:Georgia,serif;font-size:25px;letter-spacing:0}.hero-bottom{position:absolute;bottom:28px;left:5%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px}.service-strip{padding:26px 10%;display:flex;justify-content:space-between;background:var(--gold);font-size:11px;letter-spacing:2px}.service-strip b{font-weight:400}.section{padding:100px 7%}h2{font-size:clamp(40px,4.3vw,65px)}.about{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.about-copy{font-size:15px;line-height:1.9;max-width:500px}.about-copy p:first-child{font-size:19px}.underlink{display:inline-block;border-bottom:1px solid var(--ink);padding-bottom:5px;margin-top:15px;font-size:13px}.menu{background:#f3f3f3}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-heading>p{font-size:13px;line-height:1.8;margin-bottom:30px;color:#555555}.menu-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:35px 0}.menu-tabs button{border:1px solid #bbbbbb;background:transparent;border-radius:0;padding:12px 20px;cursor:pointer;font-size:12px}.menu-tabs button.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.menu-group{padding:25px 0 30px;border-top:1px solid #cccccc}.menu-group[hidden]{display:none}.menu-group h3{font:500 25px 'Playfair Display',Georgia,serif;margin:0 0 20px}.menu-group .rice{font-size:10px;letter-spacing:1px;text-transform:uppercase;margin:-8px 0 20px;color:#555555}.menu-row{display:flex;justify-content:space-between;gap:20px;padding:9px 0;font-size:14px}.menu-row span:last-child{font-variant-numeric:tabular-nums;font-weight:600}.menu-note{border-top:1px solid #cccccc;margin-top:20px;padding-top:24px;display:flex;justify-content:space-between;font-size:11px;gap:20px}.menu-note a{font-weight:600}.catering{position:relative;overflow:hidden;background:var(--red);color:var(--cream);display:grid;grid-template-columns:.8fr 1.2fr;min-height:600px}.catering-copy{padding:90px 12% 80px 0;position:relative}.catering h2 em{color:#ff715a}.catering-copy>p{max-width:510px;line-height:1.8;font-size:15px}.catering-copy>.eyebrow{font-size:10px}.catering-art{position:relative;display:flex;justify-content:center;align-items:center}.catering-art>span{font-size:150px;color:#ed4b32}.ring{position:absolute;border:1px solid #ed4b3245;border-radius:50%;width:330px;height:330px}.r2{width:400px;height:400px}.r3{width:460px;height:460px}.occasion-tags{display:flex;gap:20px;margin:28px 0 34px;font-size:11px;letter-spacing:1px}.occasion-tags span:before{content:'✦';margin-right:8px;color:var(--gold)}.catering-copy .catering-small{font-size:11px;margin-top:20px;color:#dddddd}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.review-grid figure{margin:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}.quote{font:75px Georgia,serif;color:#d64029;height:70px;padding-top:15px}blockquote{margin:16px 0 32px;font:21px/1.6 'Playfair Display',Georgia,serif;flex:1}figcaption{font-size:12px}figcaption span{display:block;font-size:8px;letter-spacing:2px;color:#626262;margin-top:10px}.visit{background:#f2f2f2;display:grid;grid-template-columns:1fr 1fr;gap:10%}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:20px 25px}.visit-details>div:last-child{grid-column:1/-1;border-top:1px solid #cccccc;padding-top:15px}.visit h3{font-size:10px;text-transform:uppercase;letter-spacing:2px;margin:10px 0 20px}.visit-details p,.visit-details a{font-size:14px;line-height:1.9}.visit-details p{color:#555555}.visit .button{margin-top:15px}footer{padding:50px 5% 25px;background:var(--ink);color:var(--cream)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-top p{font-family:Georgia,serif;font-style:italic;font-size:19px;color:#dddddd}.footer-top>a:last-child{font-size:15px}.footer-bottom{border-top:1px solid #ffffff24;margin-top:45px;padding-top:23px;display:flex;justify-content:space-between;font-size:9px;color:#cccccc;letter-spacing:.7px}@media(min-width:1500px){.hero-photo{background-position:center 60%}}@media(max-width:800px){header{height:80px}nav{gap:18px}nav a:first-child{display:none}.brand{font-size:20px}.header-call{padding:10px 14px}.hero{min-height:690px;height:calc(95svh - 80px)}.hero-copy{padding-top:90px}.hero-photo{background-position:60% center}.hero-shade{background:linear-gradient(90deg,#121212dd,#12121277 65%,#12121233)}.hero-seal{right:5%;bottom:12%;width:100px;height:100px;font-size:6px}.hero-seal i{font-size:20px}.section{padding:65px 6%}.about{gap:5%}.section-heading{align-items:start}.section-heading>p{max-width:230px}.menu-grid{gap:0 30px}.catering{grid-template-columns:.35fr 1fr}.catering-art{opacity:.3}.catering-copy{padding:70px 7% 60px 0}.ring{width:220px;height:220px}.r2{width:280px;height:280px}.r3{width:340px;height:340px}.review-grid{gap:20px}blockquote{font-size:18px}.visit{gap:6%}.visit-details{grid-template-columns:1fr}.footer-top p{display:none}}@media(max-width:540px){header{padding:0 6%}nav{display:none}.brand small{font-size:7px;letter-spacing:3px}.brandmark{width:35px;height:40px;font-size:25px}.hero{min-height:700px}.hero-copy{padding:70px 6% 140px}h1{font-size:53px;letter-spacing:-2px;line-height:1.13}.hero-copy>p:not(.eyebrow){font-size:14px}.hero .eyebrow{font-size:8px;letter-spacing:1.6px}.hero-photo{background-position:63% center;opacity:.8}.hero-shade{background:linear-gradient(90deg,#121212e8,#12121270),linear-gradient(0deg,#121212a0,transparent)}.actions{gap:20px;flex-wrap:wrap}.button{padding:17px 20px;gap:25px}.hero-seal{bottom:70px}.hero-bottom{font-size:7px;letter-spacing:1px;left:6%;right:6%}.service-strip{padding:22px 6%;font-size:8px;letter-spacing:.6px}.service-strip b{font-size:8px}.about{grid-template-columns:1fr;gap:10px}.about-copy p:first-child{font-size:17px}.section-heading{display:block}.section-heading>p{max-width:none;margin-bottom:10px}.menu-tabs{gap:6px}.menu-tabs button{padding:10px 12px;font-size:10px}.menu-grid{grid-template-columns:1fr}.menu-group{padding:23px 0}.menu-row{font-size:13px}.menu-note{flex-direction:column;line-height:1.6}.catering{display:block}.catering-art{position:absolute;left:-90px;top:50px;opacity:.13;width:300px;height:300px}.catering-copy{padding:60px 6%}.catering h2{font-size:40px}.occasion-tags{gap:11px;font-size:9px}.review-grid{grid-template-columns:1fr;gap:35px}blockquote{font-size:21px;margin-bottom:20px}.visit{grid-template-columns:1fr;gap:40px}.visit-details{grid-template-columns:1fr 1fr}.visit-details p,.visit-details a{font-size:12px}.footer-top{align-items:start;flex-direction:column}.footer-bottom{gap:17px;flex-wrap:wrap;font-size:8px}h2{letter-spacing:-1.5px}.eyebrow{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.hero-photo,.hero-copy,.hero-seal{transform:none!important;will-change:auto}}

.arrow{width:12px;height:12px;display:inline-block;fill:none;stroke:currentColor;stroke-width:1.3;vertical-align:middle}@media(max-width:540px){h1{font-size:43px}.hero-copy{padding-top:85px}.hero-seal{bottom:85px}}

/* Storefront identity: orange-red lettering, black subtitle, white facade. */
header{background:#fff;color:#171717;border-bottom:3px solid #ed4b32}header .header-call{background:#ed4b32;border-color:#ed4b32;color:#fff}.brand{display:block;letter-spacing:-1.5px}.sign-wordmark{display:block;font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:900;color:#ed4b32;line-height:.95;text-shadow:1px 1px 0 #171717}.sign-wordmark small{font-family:Arial,sans-serif;font-size:15px;font-weight:900;letter-spacing:1.3px;color:#171717;text-shadow:none;margin-top:8px}.gold{color:#fff}.service-strip{color:white;font-weight:800;font-size:15px;letter-spacing:1.5px;padding:22px 15%}.hero-shade{background:linear-gradient(90deg,#101010ec 0%,#10101080 45%,transparent 90%)}h1 em{color:#ff715a}.storefront-section{padding:70px 7% 0;background:white}.storefront-section img{display:block;width:100%;height:420px;object-fit:cover;object-position:center 75%;border-bottom:5px solid #ed4b32}.storefront-caption{display:flex;justify-content:space-between;padding:16px 0;font-size:10px;letter-spacing:1.5px;font-weight:700}.storefront-caption span{color:#666}.catering-art{background:#ed4b32;opacity:1}.catering-sign{color:white;font:900 clamp(45px,5vw,80px)/.95 Arial,sans-serif;letter-spacing:-3px;transform:rotate(-4deg)}.catering-sign span{display:block;font-size:15px;letter-spacing:1px;border-top:2px solid white;border-bottom:2px solid white;padding:13px 0;margin:22px 0}.catering-sign strong{font-size:48px;letter-spacing:-1px}.occasion-tags span:before{content:'•'}.footer-top .sign-wordmark small{color:#fff}.footer-top .sign-wordmark{font-size:34px}nav a:hover{color:#c63622}@media(max-width:800px){.sign-wordmark{font-size:29px}.sign-wordmark small{font-size:12px}.catering{grid-template-columns:.65fr 1fr}.catering-copy{padding:60px 7%}.catering-sign{font-size:45px;letter-spacing:-2px}.catering-sign strong{font-size:34px}.catering-sign span{font-size:10px}.storefront-section img{height:320px}}@media(max-width:540px){.sign-wordmark{font-size:28px}.sign-wordmark small{font-size:11px;letter-spacing:.8px}.service-strip{padding:20px 5%;font-size:10px;letter-spacing:.3px}.storefront-section{padding:35px 6% 0}.storefront-section img{height:210px;object-fit:cover;object-position:50% 90%}.storefront-caption{font-size:8px;gap:20px;line-height:1.6}.catering-art{position:relative;left:auto;top:auto;width:100%;height:auto;padding:30px 6%;opacity:1}.catering-sign{transform:none;font-size:30px;line-height:1.1;letter-spacing:-1px}.catering-sign br{display:none}.catering-sign span{display:inline-block;margin:0 20px;padding:7px 0;font-size:9px}.catering-sign strong{font-size:23px}.footer-top .sign-wordmark{font-size:30px}}

/* Refined typographic identity derived from the storefront lettering. */
.sign-wordmark{font-family:Georgia,'Times New Roman',serif;font-weight:900;font-size:36px;letter-spacing:-1.8px;color:#ed4b32;text-shadow:0 1.5px 0 #191919;line-height:.95}
.sign-wordmark small{font-family:'DM Sans',Arial,sans-serif;font-size:12px;font-weight:800;letter-spacing:2.65px;line-height:1.1;margin-top:9px;padding-top:7px;border-top:2px solid #ed4b32;color:#171717;text-shadow:none}
header{height:102px}.hero{height:calc(100svh - 102px)}.footer-top .sign-wordmark{font-size:36px}.footer-top .sign-wordmark small{color:#fff}
@media(max-width:800px){.sign-wordmark{font-size:30px}.sign-wordmark small{font-size:10px;letter-spacing:2px}header{height:88px}.hero{height:calc(95svh - 88px)}}
@media(max-width:540px){.sign-wordmark{font-size:28px;letter-spacing:-1.2px}.sign-wordmark small{font-size:9px;letter-spacing:2px;margin-top:7px;padding-top:5px}.footer-top .sign-wordmark{font-size:32px}.hero{min-height:700px}}
/* Food gallery and perspective animation */
.photo-note{font-size:11px;line-height:1.7;color:#595959;max-width:620px}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;perspective:1400px}.menu-group.food-card{padding:0;border:0;background:#fff;box-shadow:0 8px 28px #00000009;transform-style:preserve-3d;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .22s ease,box-shadow .25s;position:relative;align-self:start;isolation:isolate}.food-card:hover{box-shadow:0 22px 44px #00000020}.dish-visual{position:relative;aspect-ratio:1;overflow:hidden;background:#181818;transform:translateZ(12px)}.food-photo{width:100%;height:100%;background-image:url('/food-collection.webp');background-size:400% 400%;background-position:var(--px) var(--py);background-repeat:no-repeat;transition:transform .6s ease}.food-card:hover .food-photo{transform:scale(1.035)}.dish-number{position:absolute;left:16px;top:16px;background:#171717d9;color:white;padding:7px 10px;font-size:8px;font-weight:700;letter-spacing:1.8px}.dish-info{padding:24px;transform:translateZ(20px);background:#fff}.dish-info h3{font-size:25px;margin:0 0 18px}.dish-info .rice{font-size:9px;line-height:1.7;letter-spacing:.7px;margin-bottom:14px;color:#a12d1d}.dish-info .menu-row{font-size:12px;line-height:1.5;border-top:1px solid #eee;padding:10px 0}.menu-note{margin-top:35px}.motion-toggle{background:transparent;color:#333;border:1px solid #ccc;padding:10px 12px;font-size:10px;cursor:pointer;margin-left:auto;margin-right:18px}header nav{margin-left:auto;margin-right:32px}.feast-stage{min-height:560px;perspective:1100px;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,#f36a53,#cd3523);position:relative}.feast-orbit{position:absolute;width:66%;aspect-ratio:1;background:#fff;padding:10px 10px 43px;box-shadow:0 35px 50px #410b0760;transform-style:preserve-3d;animation:float-back 8s ease-in-out infinite;will-change:transform}.feast-orbit .food-photo{border-radius:2px}.feast-orbit>span{position:absolute;bottom:16px;left:15px;color:#191919;font-size:9px;font-weight:800;letter-spacing:1px}.orbit-back{top:45px;left:5%;transform:rotateY(14deg) rotateZ(-12deg) translateZ(-50px)}.orbit-front{right:5%;top:210px;transform:rotateY(-12deg) rotateZ(9deg) translateZ(40px);animation-name:float-front;animation-delay:-3s}.stage-caption{position:absolute;bottom:28px;color:#fff;font-size:8px;letter-spacing:2px;text-align:center}.food-card.card-enter{animation:card-enter .7s both;animation-delay:var(--stagger,0ms)}@keyframes card-enter{from{opacity:0;transform:perspective(1000px) translateY(35px) rotateX(9deg)}to{opacity:1;transform:perspective(1000px) translateY(0) rotateX(0)}}@keyframes float-back{0%,100%{transform:rotateY(14deg) rotateZ(-12deg) translate3d(0,0,-50px)}50%{transform:rotateY(3deg) rotateZ(-8deg) translate3d(0,-16px,-20px)}}@keyframes float-front{0%,100%{transform:rotateY(-12deg) rotateZ(9deg) translate3d(0,0,40px)}50%{transform:rotateY(-4deg) rotateZ(5deg) translate3d(0,-18px,65px)}}.motion-off .feast-orbit,.motion-off .card-enter{animation:none!important}.motion-off .food-card,.motion-off [data-depth]{transform:none!important}.motion-off .food-photo{transform:none!important}.motion-off *{scroll-behavior:auto!important;transition:none!important}
@media(max-width:1000px){.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feast-stage{min-height:620px}.orbit-front{top:250px}header nav{gap:20px;margin-right:20px}.motion-toggle{font-size:9px;padding:9px;margin-right:10px}}@media(max-width:800px){header nav{gap:14px}.motion-toggle{padding:8px;font-size:8px}.dish-info{padding:20px}.feast-orbit{width:82%}.orbit-back{left:0}.orbit-front{right:0;top:220px}}@media(max-width:540px){.menu-grid{grid-template-columns:1fr;gap:28px}.dish-info h3{font-size:27px}.dish-info .menu-row{font-size:14px}.food-card .dish-visual{transform:none}.dish-info{transform:none}.feast-stage{height:520px;min-height:520px;padding:0}.feast-orbit{width:64%;max-width:265px}.orbit-back{top:30px;left:7%}.orbit-front{top:190px;right:7%}.stage-caption{bottom:20px;font-size:7px;left:0;right:0}.motion-toggle{margin-left:auto;margin-right:8px;font-size:8px;padding:8px 6px}.header-call{font-size:11px;padding:10px}.header-call span{margin-left:8px}.photo-note{font-size:10px}}@media(prefers-reduced-motion:reduce){.feast-orbit,.card-enter{animation:none!important;will-change:auto}.food-card{transform:none!important}.food-photo{transform:none!important}}
.feast-stage>.stage-caption{font-size:8px;color:#fff;letter-spacing:1.5px;line-height:1.5;left:15px;right:15px;bottom:22px;z-index:3}.catering-copy{padding-left:8%;padding-right:8%}@media(max-width:540px){.feast-stage>.stage-caption{font-size:7px}.catering-copy{padding-left:6%;padding-right:6%}}
