:root{--ink:#171412;--espresso:#2a1d17;--ivory:#f8f3ea;--stone:#ded2c1;--tomato:#a83226;--olive:#536b3e;--brass:#b88746;--white:#fffaf2;--muted:#6f6257;--shadow:0 24px 70px #17141224;--max:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:radial-gradient(circle at 15% 0%, #b8874629, transparent 30rem), linear-gradient(135deg, #536b3e14, transparent 24rem), var(--ivory);text-rendering:optimizelegibility;margin:0;font-family:Inter,Aptos,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}body:before{z-index:-1;pointer-events:none;content:"";background-image:linear-gradient(#17141209 1px,#0000 1px),linear-gradient(90deg,#17141206 1px,#0000 1px);background-size:42px 42px;position:fixed;inset:0;mask-image:linear-gradient(#000000b3,#0000 78%)}a{color:inherit}a:focus-visible,button:focus-visible{outline-offset:4px;outline:3px solid #a8322673}p{margin:0}.site-header{z-index:10;backdrop-filter:blur(18px);background:#f8f3eae0;border-bottom:1px solid #1714121a;position:sticky;top:0}.nav{max-width:var(--max);justify-content:space-between;align-items:center;gap:1rem;min-height:72px;margin:0 auto;padding:0 1rem;display:flex}.brand{text-decoration:none}.brand strong{letter-spacing:0;font-family:Georgia,Times New Roman,serif;font-size:1.28rem;font-weight:500;display:block}.brand span,.eyebrow{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:700}.nav-links{color:var(--espresso);align-items:center;gap:1.2rem;font-size:.92rem;display:none}.nav-links a{text-decoration:none}.cta,.ghost-cta{border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:.78rem 1rem;font-weight:800;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.cta{color:var(--white);background:var(--tomato);box-shadow:0 14px 28px #a8322638}.ghost-cta{background:#fffaf280;border:1px solid #1714122e}.cta:hover,.ghost-cta:hover{transform:translateY(-2px)}main{overflow:hidden}.hero{align-items:end;min-height:calc(100svh - 72px);padding:5rem 1rem 4rem;display:grid;position:relative}.home-hero{min-height:clamp(560px,78svh,760px)}.hero:before{z-index:-1;content:"";background-color:#0000;background-image:linear-gradient(90deg,#171412eb 0%,#171412d1 34%,#2a1d1785 62%,#2a1d173d 100%),linear-gradient(#1714128a 0%,#17141229 58%,#17141294 100%),radial-gradient(circle at 76% 38%,#b8874633,#0000 28rem),url(/images/restaurant-interior-hero.webp);background-position:58%;background-repeat:repeat,repeat,repeat,repeat;background-size:cover;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;position:absolute;inset:0}.hero-inner{width:min(100%, var(--max));color:var(--white);margin:0 auto}.hero h1{letter-spacing:0;max-width:850px;margin:.35rem 0 1rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.4rem,16vw,8.8rem);font-weight:500;line-height:.88}.hero-copy{color:#fffaf2db;max-width:620px;font-size:clamp(1.05rem,3vw,1.35rem)}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.hero .ghost-cta{color:var(--white);background:#fffaf21a;border-color:#fffaf26b}.section{padding:clamp(4rem,9vw,7.5rem) 1rem}.compact-section{padding:clamp(3rem,7vw,5rem) 1rem}.section-inner{width:min(100%, var(--max));margin:0 auto}.intro-grid,.story-grid,.contact-grid{gap:1.4rem;display:grid}.intro-card,.menu-item{box-shadow:var(--shadow);background:#fffaf2ad;border:1px solid #1714121f;border-radius:8px}.intro-card{padding:1.4rem}.intro-card strong{margin-bottom:.3rem;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:500;display:block}.section-heading{max-width:760px;margin-bottom:2rem}.section-heading h2{margin:.25rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,9vw,5rem);font-weight:500;line-height:.98}.compact-title{margin:.25rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,7vw,4rem);font-weight:500;line-height:1}.section-heading p{color:var(--muted);margin-top:1rem;font-size:1.05rem}.story-grid{align-items:stretch}.story-text{color:#3f342e;gap:1rem;font-size:1.05rem;display:grid}.menu{color:var(--white);background-color:#0000;background-image:linear-gradient(#171412eb,#2a1d17e6),linear-gradient(90deg,#171412eb,#2a1d17ad 58%,#536b3e75),url(/images/restaurant-interior-hero.webp);background-position:54%;background-repeat:repeat,repeat,repeat;background-size:cover;background-attachment:scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;position:relative}.menu .eyebrow,.menu .section-heading p{color:#fffaf2b3}.menu-list{gap:1rem;display:grid}.category-grid{grid-template-columns:1fr;gap:1.2rem;display:grid}.category-card{min-width:0;color:var(--white);background:radial-gradient(circle at 90% 8%,#b8874659,#0000 7rem),radial-gradient(circle at 12% 100%,#a8322647,#0000 8rem),#fffaf20f;border:1px solid #fffaf224;border-radius:8px;flex-direction:column;text-decoration:none;transition:transform .18s,border-color .18s,background .18s;display:flex;overflow:hidden;box-shadow:0 18px 48px #0000002e}.category-card img{aspect-ratio:3/2;object-fit:cover;background:#fffaf214;width:100%;display:block}.category-card span{overflow-wrap:anywhere;margin:1.1rem 1.1rem 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,8vw,2.6rem);line-height:1.02;display:block}.category-card p{color:#fffaf2bd;margin:.75rem 1.1rem 0}.category-card strong{color:var(--brass);text-transform:uppercase;margin:auto 1.1rem 1.1rem;padding-top:1.4rem;font-size:.88rem;display:block}.category-card:hover{background:radial-gradient(circle at 90% 8%,#b887466b,#0000 7rem),radial-gradient(circle at 12% 100%,#a8322657,#0000 8rem),#fffaf214;border-color:#b887467a;transform:translateY(-4px)}.menu-item{color:var(--white);box-shadow:none;background:#fffaf20f;border-color:#fffaf224;padding:1.25rem}.menu-item h3{justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .45rem;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:500;display:flex}.menu-item span{color:var(--brass);font-family:Inter,Aptos,system-ui,sans-serif;font-size:.9rem;font-weight:800}.menu-item p{color:#fffaf2bd}.gallery{gap:1rem;display:grid}.tile{background:linear-gradient(135deg, #fffaf266, transparent), var(--tile);min-height:220px;box-shadow:var(--shadow);border:1px solid #1714121f;border-radius:8px}.tile:first-child{--tile:radial-gradient(circle at 30% 30%, #d9a34f, transparent 7rem), linear-gradient(135deg, #7f2e25, #251714)}.tile:nth-child(2){--tile:radial-gradient(circle at 72% 40%, #f4e2c4, transparent 8rem), linear-gradient(135deg, #3f552f, #10120d)}.tile:nth-child(3){--tile:radial-gradient(circle at 45% 56%, #a83226, transparent 7rem), linear-gradient(135deg, #d9c8aa, #4b281e)}.contact{background:#fff8ed}.contact-grid{align-items:start}.contact-list{gap:.8rem;display:grid}.contact-list a{color:var(--tomato);font-weight:800}.location-visual{background:linear-gradient(135deg,#1714120f,#b887461f),#efe5d6;border:1px solid #1714121f;border-radius:8px;min-height:280px;position:relative;overflow:hidden;box-shadow:0 18px 50px #17141214}.location-visual:before{aspect-ratio:3/2;content:"";background-color:#0000;background-image:linear-gradient(#1714120a,#1714122e),linear-gradient(135deg,#e8dccb,#cdbb9f);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;width:100%;display:block}.location-placeholder{color:#2a1d1794;letter-spacing:.12em;text-transform:uppercase;place-items:center;font-size:.78rem;font-weight:800;display:grid;position:absolute;inset:0}.hours{border-collapse:collapse;width:100%}.hours th,.hours td{text-align:left;vertical-align:top;border-bottom:1px solid #1714121f;padding:.8rem 0}.hours td{color:var(--muted);text-align:right}.booking-panel{padding:clamp(1.4rem,5vw,2.5rem)}.menu-hero{color:var(--white);background:linear-gradient(115deg,#171412eb,#2a1d17bd),radial-gradient(circle at 78% 24%,#b8874685,#0000 18rem),linear-gradient(135deg,#332018,#8f3428 54%,#536b3e);padding:clamp(4rem,10vw,7rem) 1rem clamp(3rem,7vw,5rem);position:relative}.menu-hero h1{max-width:820px;margin:.35rem 0 1rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,15vw,8rem);font-weight:500;line-height:.9}.menu-hero p:not(.eyebrow){color:#fffaf2d1;max-width:620px;font-size:1.12rem}.back-link{color:#fffaf2d1;margin-bottom:2rem;font-weight:800;text-decoration:none;display:inline-flex}.menu-page-section{padding-top:clamp(3rem,7vw,5rem)}.menu-editorial{align-items:start;gap:clamp(1.4rem,4vw,3rem);display:grid}.category-feature{background:#fffaf2b8;border:1px solid #1714121f;border-radius:8px;margin:0;overflow:hidden;box-shadow:0 20px 56px #1714121f}.category-feature img{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}.dish-list{gap:.9rem;display:grid}.dish-card{background:#fffaf2bd;border:1px solid #1714121f;border-radius:8px;gap:1rem;padding:1.15rem;display:grid;box-shadow:0 18px 50px #17141214}.dish-card h2{margin:0 0 .25rem;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:500}.dish-card p{color:var(--muted)}.dish-card strong{color:var(--tomato);font-size:.95rem}.menu-return{padding:0 1rem clamp(4rem,8vw,6rem)}.menu-return .return-link{width:min(100%, var(--max));color:var(--tomato);margin:0 auto;font-weight:800;text-decoration:none;display:flex}.site-footer{color:#fffaf2bd;background:var(--ink);padding:2rem 1rem}.footer-inner{width:min(100%, var(--max));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;display:flex}.footer-inner strong{color:var(--white);font-family:Georgia,Times New Roman,serif;font-size:1.3rem;font-weight:500}@media (width>=680px){.nav-links{display:flex}.intro-grid,.menu-list,.gallery{grid-template-columns:repeat(3,1fr)}.story-grid,.contact-grid{grid-template-columns:1fr 1fr}.dish-card{grid-template-columns:1fr auto;align-items:start}.tile:nth-child(2){transform:translateY(2.5rem)}}@media (width<=679px){.hero:before{background-color:#0000;background-image:linear-gradient(90deg,#171412f5 0%,#171412db 54%,#2a1d1794 100%),linear-gradient(#1714129e 0%,#17141238 56%,#171412b8 100%),radial-gradient(circle at 80% 32%,#b8874629,#0000 16rem),url(/images/restaurant-interior-hero.webp);background-position:61%;background-repeat:repeat,repeat,repeat,repeat;background-size:cover;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}.menu{background-color:#0000;background-image:linear-gradient(#171412f2,#2a1d17ed),linear-gradient(90deg,#171412eb,#2a1d17b8),url(/images/restaurant-interior-hero.webp);background-position:62%;background-repeat:repeat,repeat,repeat;background-size:cover;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}}@media (width>=820px){.menu-editorial{grid-template-columns:minmax(260px,40%) minmax(0,1fr)}.category-feature{position:sticky;top:96px}}@media (width>=680px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=980px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
