:root{
  --cream:#F7F0E3;
  --paper:#FFFDF8;
  --ink:#0B0B0A;
  --green:#39B54A;
  --green-dark:#143F31;
  --lime:#8DC63F;
  --mustard:#E9B63F;
  --ube:#65407A;
  --muted:#5C5A54;
  --line:#D9D0C2;
  --max:1180px;
  --radius:28px;
  --shadow:0 18px 50px rgba(11,11,10,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--cream);color:var(--ink);line-height:1.5;font-size:17px}
img{display:block;max-width:100%} a{color:inherit} button,a{touch-action:manipulation}
.container{width:min(var(--max),calc(100% - 32px));margin-inline:auto}
.skip-link{position:absolute;left:16px;top:-60px;background:var(--ink);color:white;padding:12px 16px;z-index:1000}.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(247,240,227,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(11,11,10,.08)}
.header-inner{min-height:82px;display:flex;align-items:center;gap:28px}.brand-logo{display:block;width:176px;flex:0 0 auto}.brand-logo img{width:100%;height:auto}
.desktop-nav{margin-left:auto}.nav-list{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}.nav-list a{text-decoration:none;font-size:.94rem;font-weight:750;letter-spacing:.02em}.nav-list a:hover{text-decoration:underline;text-underline-offset:5px}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:999px;border:2px solid var(--ink);text-decoration:none;font-weight:800;letter-spacing:.02em;transition:transform .15s ease,background .15s ease,color .15s ease}.button:hover{transform:translateY(-1px)}
.button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--mustard);outline-offset:4px}.button-primary{background:var(--green-dark);color:#fff;border-color:var(--green-dark)}.button-primary:hover{background:var(--ink)}.button-secondary{background:transparent}.header-order{margin-left:6px}
.mobile-nav{display:none;margin-left:auto}.mobile-nav summary{list-style:none;cursor:pointer;font-weight:800;border:2px solid var(--ink);border-radius:999px;padding:10px 16px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav ul{position:absolute;right:16px;top:72px;min-width:220px;background:var(--paper);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:18px;list-style:none;padding:10px;margin:0}.mobile-nav a{display:block;padding:11px 12px;border-radius:10px;text-decoration:none;font-weight:750}.mobile-nav a:hover{background:var(--cream)}
.eyebrow{margin:0 0 12px;text-transform:uppercase;font-size:.78rem;font-weight:850;letter-spacing:.14em;color:var(--green-dark)}
.hero{padding:44px 0 28px}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.95fr);align-items:center;gap:54px}.hero-copy h1{font-size:clamp(3.2rem,7vw,6.6rem);line-height:.91;letter-spacing:-.065em;margin:0 0 28px;font-weight:900;max-width:780px}.hero-copy h1 span{color:var(--green-dark)}.hero-copy p.lede{max-width:620px;font-size:clamp(1.05rem,1.5vw,1.25rem);margin:0 0 28px;color:#272621}.button-row{display:flex;gap:12px;flex-wrap:wrap}
.hero-photo{min-height:560px;border-radius:48% 48% 34px 34px / 26% 26% 34px 34px;overflow:hidden;background:#ddd;box-shadow:var(--shadow)}.hero-photo img{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:center}
.quick-strip{margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;background:rgba(255,255,255,.25)}.quick-grid{display:grid;grid-template-columns:1.35fr 1fr auto;gap:24px;align-items:center}.quick-grid p{margin:0}.quick-grid a{font-weight:750;text-underline-offset:4px}
.section{padding:78px 0}.section-white{background:var(--paper)}.section-green{background:var(--green-dark);color:#fff}.section h2{font-size:clamp(2.35rem,5vw,4.7rem);line-height:.98;letter-spacing:-.055em;margin:0 0 22px}.section-lede{max-width:760px;margin:0 0 34px;color:var(--muted);font-size:1.12rem}.section-green .eyebrow{color:#CDE7CE}.section-green .section-lede{color:#E8EEE9}
.menu-home{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:70px;align-items:start}.menu-intro{position:sticky;top:120px}.menu-list{border-top:1px solid var(--ink)}.menu-row{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--ink);text-decoration:none}.menu-row span{font-size:clamp(1.35rem,2.4vw,2rem);font-weight:850;letter-spacing:-.025em}.menu-row strong{font-size:1.15rem}.menu-actions{margin-top:26px}
.quality-section{padding:28px 0}.quality-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:34px;align-items:center}.quality-photo{border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}.quality-photo img{width:100%;height:235px;object-fit:cover;object-position:center 50%}.quality-copy .eyebrow{margin-bottom:6px}.quality-copy h2{font-size:clamp(2.4rem,4.3vw,4rem);margin-bottom:10px}.quality-copy p{font-size:1rem;line-height:1.45;max-width:500px;color:#E8EEE9;margin:0}
.visit-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.visit-card{padding:34px;border-radius:var(--radius);background:var(--paper);border:1px solid var(--line)}.visit-card h3{margin:0 0 12px;font-size:1rem;text-transform:uppercase;letter-spacing:.09em}.visit-card p{margin:0 0 14px}.visit-card a{text-underline-offset:4px}
.instagram-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:26px}.instagram-head h2{margin:0}.instagram-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.instagram-post{position:relative;overflow:hidden;border-radius:18px;background:#ddd;aspect-ratio:1;text-decoration:none}.instagram-post img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.instagram-post:hover img{transform:scale(1.025)}.instagram-carousel-badge,.instagram-video-badge{position:absolute;right:10px;top:10px;background:rgba(11,11,10,.82);color:#fff;padding:6px 9px;border-radius:999px;font-size:.72rem;font-weight:800}.instagram-fallback{display:contents}.instagram-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.final-cta{padding:70px 0;text-align:center;background:var(--green)}.final-cta h2{font-size:clamp(2.5rem,6vw,5.5rem);line-height:.95;letter-spacing:-.055em;margin:0 0 24px}
.site-footer{padding:46px 0 100px;border-top:1px solid var(--line);background:var(--cream)}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:40px}.footer-logo{width:190px;height:auto;margin-bottom:16px}.footer-links{list-style:none;padding:0;margin:12px 0 0}.footer-links li{margin:7px 0}.footer-links a{text-underline-offset:4px}.footer-bottom{border-top:1px solid var(--line);margin-top:32px;padding-top:18px;font-size:.9rem;color:var(--muted)}
.mobile-action-bar{display:none;position:fixed;left:12px;right:12px;bottom:12px;z-index:110;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 34px rgba(11,11,10,.18);padding:8px}.mobile-action-bar a{min-height:48px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:850;border-radius:12px}.mobile-action-bar .quick-order{background:var(--green-dark);color:#fff}
.page-hero{padding:54px 0 30px}.page-hero h1{font-size:clamp(3rem,7vw,6.2rem);letter-spacing:-.06em;line-height:.92;margin:0 0 18px}.page-hero p{max-width:700px;font-size:1.08rem;color:var(--muted)}
.menu-board{padding:22px 0 72px}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 34px;border-top:1px solid var(--ink)}.menu-section{padding:28px 0 30px;border-bottom:1px solid var(--ink);break-inside:avoid}.menu-section h2{font-size:1.65rem;margin:0 0 8px;letter-spacing:-.035em}.menu-section .desc{font-size:.93rem;color:var(--muted);margin:0 0 16px}.item{display:grid;grid-template-columns:1fr auto;gap:16px;padding:7px 0;align-items:start}.item strong{font-weight:800}.item small{display:block;color:var(--muted);margin-top:2px;line-height:1.35}.dual{display:flex;gap:14px}.dual span{text-align:right}.dual small{text-transform:uppercase;letter-spacing:.07em;font-size:.65rem}.menu-cta{margin-top:28px;display:flex;justify-content:center}
.location-layout,.contact-layout,.catering-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:30px 0 74px}.info-block{padding:28px 0;border-top:1px solid var(--ink)}.info-block h2,.info-block h3{margin:0 0 12px}.info-block p{margin:0 0 10px}.catering-layout .info-block p{max-width:560px}
.accessibility-content{max-width:820px;padding:26px 0 72px}.accessibility-content h2{margin-top:34px}.accessibility-content li{margin:8px 0}
.game-wrap{max-width:880px;margin:0 auto;padding:26px 0 72px}.game-shell{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:var(--shadow)}.game-shell canvas{display:block;width:100%;height:auto;border-radius:16px;background:#F3E7CE}.game-controls{text-align:center;margin-top:16px;color:var(--muted)}

.delivery-band{padding:42px 0;background:var(--cream);border-bottom:1px solid var(--line)}.delivery-inner{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px 54px;align-items:end}.delivery-copy h2{font-size:clamp(2rem,4vw,3.55rem);line-height:.98;letter-spacing:-.05em;margin:0 0 8px}.delivery-copy p:last-child{margin:0;color:var(--muted)}.delivery-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.delivery-options a{min-height:50px;display:flex;align-items:center;justify-content:center;padding:10px 14px;border:1.5px solid var(--ink);border-radius:999px;text-decoration:none;font-weight:800;background:var(--paper);transition:background .15s ease,color .15s ease,transform .15s ease}.delivery-options a:hover{background:var(--ink);color:#fff;transform:translateY(-1px)}.delivery-pickup{grid-column:2;margin:0;display:flex;justify-content:flex-start;align-items:center}.delivery-pickup .button{min-width:180px}.final-buttons{justify-content:center}.menu-order-panel{margin-top:36px;padding:28px 0 0;border-top:1px solid var(--ink);display:grid;grid-template-columns:.7fr 1.3fr;gap:36px;align-items:end}.menu-order-panel h2{font-size:clamp(2rem,4vw,3.4rem);line-height:.98;letter-spacing:-.045em;margin:0}.menu-order-actions{display:grid;gap:12px}.delivery-options.compact{grid-template-columns:repeat(4,1fr)}.delivery-options.compact a{min-height:44px;font-size:.9rem;padding:8px 10px}
@media(max-width:900px){body{font-size:16px}.delivery-inner,.menu-order-panel{grid-template-columns:1fr}.delivery-pickup{grid-column:1}.delivery-options{grid-template-columns:repeat(2,1fr)}.desktop-nav,.header-order{display:none}.mobile-nav{display:block}.header-inner{min-height:68px}.brand-logo{width:145px}.hero{padding-top:28px}.hero-grid,.menu-home,.quality-grid,.visit-grid,.location-layout,.contact-layout,.catering-layout{grid-template-columns:1fr;gap:32px}.hero-copy h1{font-size:clamp(3.4rem,16vw,5.8rem)}.hero-photo{min-height:390px;border-radius:40% 40% 24px 24px / 22% 22% 24px 24px}.hero-photo img{min-height:390px}.quick-grid{grid-template-columns:1fr;gap:8px}.section{padding:56px 0}.menu-intro{position:static}.quality-points{grid-template-columns:1fr 1fr}.instagram-feed{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.instagram-post{flex:0 0 78%;scroll-snap-align:start}.footer-grid{grid-template-columns:1fr;gap:24px}.mobile-action-bar{display:grid;grid-template-columns:1fr 1.25fr}.site-footer{padding-bottom:100px}.menu-grid{grid-template-columns:1fr 1fr;gap:0 24px}}
@media(max-width:620px){.container{width:min(100% - 24px,var(--max))}.delivery-band{padding:34px 0}.delivery-options,.delivery-options.compact{grid-template-columns:1fr 1fr}.delivery-options a{min-height:48px;font-size:.92rem}.delivery-pickup .button{width:100%}.hero-copy h1{font-size:clamp(3.1rem,18vw,4.7rem)}.hero-copy p.lede{font-size:1rem}.button-row .button{flex:1 1 100%}.hero-photo{min-height:330px}.hero-photo img{min-height:330px}.quick-strip{margin-top:22px}.section h2{font-size:clamp(2.35rem,12vw,3.6rem)}.menu-row{padding:15px 0}.menu-row span{font-size:1.45rem}.quality-points{grid-template-columns:1fr}.instagram-post{flex-basis:86%}.instagram-head{align-items:start;flex-direction:column}.menu-grid{grid-template-columns:1fr}.page-hero{padding-top:34px}.page-hero h1{font-size:clamp(3rem,18vw,4.8rem)}.visit-card{padding:24px}}
@media(max-width:900px){.quality-section{padding:24px 0}.quality-grid{gap:22px}.quality-photo img{height:210px}.quality-copy h2{margin-bottom:8px}}
@media(max-width:620px){.quality-section{padding:20px 0}.quality-grid{gap:18px}.quality-photo{border-radius:18px}.quality-photo img{height:150px}.quality-copy h2{font-size:2.65rem}.quality-copy p{font-size:.98rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Lightweight game entry point only; actual game UI CSS is isolated on the game page. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.play-band{padding:28px 0;background:var(--mustard);border-top:1px solid rgba(11,11,10,.12);border-bottom:1px solid rgba(11,11,10,.12)}
.play-band-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.play-band h2{font-size:clamp(2rem,4.5vw,3.8rem);line-height:.95;letter-spacing:-.05em;margin:0 0 7px}.play-band p:last-child{margin:0}.play-band .eyebrow{margin-bottom:7px;color:var(--ink)}

@media(max-width:760px){.play-band-inner{align-items:flex-start;flex-direction:column}}
