:root{--accent:#52b16f;--dark:#14221a;--muted:#64716a;--cream:#faf8f2;--line:#e7e9e2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--dark);font-family:'DM Sans',sans-serif;background:#fff}h1,h2,h3{font-family:'Playfair Display',serif;line-height:1.12}h1{font-size:clamp(3.2rem,7vw,6.8rem);letter-spacing:-.04em;margin:14px 0 24px}h2{font-size:clamp(2.2rem,4.3vw,3.8rem);letter-spacing:-.025em;margin:10px 0 20px}h3{font-size:1.5rem}p{line-height:1.75}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:30;background:rgba(16,32,22,.86);backdrop-filter:blur(16px);color:white;border-bottom:1px solid #ffffff25}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:12px;font-family:'Playfair Display',serif;font-size:1.45rem;font-weight:700}.brand img{width:42px;height:42px;object-fit:contain;border-radius:50%}.nav nav{display:flex;align-items:center;gap:24px;font-size:.87rem}.nav nav a:hover,.text-link:hover{color:var(--accent)}.nav-order{background:var(--accent);padding:12px 19px;border-radius:30px;color:#fff!important;font-weight:700}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:1.7rem}.hero{height:min(850px,100svh);min-height:650px;position:relative;display:flex;align-items:center;color:white;overflow:hidden}.hero-bg,.hero-overlay{position:absolute;inset:0}.hero-bg{background-size:cover;background-position:center;transform:scale(1.06);transition:background-image .6s,transform 8s}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.81),rgba(0,0,0,.38) 62%,rgba(0,0,0,.1))}.hero-inner{position:relative;z-index:1;padding-top:80px}.hero h1{max-width:800px}.hero-sub{font-size:1.08rem;max-width:620px;color:#eee}.eyebrow{font-size:.78rem;letter-spacing:.22em;font-weight:700;color:var(--accent);text-transform:uppercase}.hero .eyebrow{color:#b4e6bb}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;justify-content:center;align-items:center;border-radius:6px;padding:15px 26px;font-weight:700;transition:transform .25s,background .25s}.btn:hover{transform:translateY(-3px)}.primary{background:var(--accent);color:white}.outline{border:1px solid #ffffffa0;color:white}.hero-dots{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:2}.hero-dots button{width:9px;height:9px;border:1px solid white;border-radius:50%;background:transparent;padding:0}.hero-dots button.active{background:var(--accent);border-color:var(--accent)}.section{padding:110px 0}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}.intro{background:var(--cream)}.intro-photo img{width:100%;height:490px;object-fit:cover;border-radius:220px 220px 14px 14px;box-shadow:20px 20px 0 #dce9d8}.intro-copy p{color:var(--muted)}.intro-copy .eyebrow{color:var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.chip{background:#e5f3e7;color:#2e7541;padding:8px 13px;border-radius:100px;font-size:.79rem;font-weight:700}.text-link{color:#2e7541;font-weight:700}.section-heading{text-align:center;margin-bottom:45px}.section-heading>p:last-child{color:var(--muted)}.menu-section{background:#fff}.category-tabs{display:flex;gap:10px;overflow:auto;padding:5px 0 20px;margin-bottom:20px;scrollbar-width:thin}.category-tabs button{flex:none;border:1px solid var(--line);border-radius:30px;background:white;padding:12px 20px;color:var(--dark)}.category-tabs button.active{background:var(--dark);color:white}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.food-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white;box-shadow:0 8px 30px #16221908;transition:transform .3s}.food-card:hover{transform:translateY(-6px)}.food-image{height:210px;background:#e8ece7;display:grid;place-items:center;color:#718077;font-size:2.5rem;overflow:hidden}.food-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.food-card:hover img{transform:scale(1.06)}.food-info{padding:20px}.food-info h3{font-size:1.2rem;margin:0 0 7px}.food-info p{font-size:.85rem;color:var(--muted);margin:0 0 15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.food-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}.food-bottom strong{color:var(--accent)}.food-bottom a{font-size:.82rem;color:var(--accent);font-weight:700}.center{text-align:center;margin-top:42px}.offers-section{background:#f1f7ef}.offers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.offer-card{background:white;border-radius:12px;padding:32px;border-top:4px solid var(--accent)}.offer-card h3{margin:12px 0}.offer-card p,.small-print{color:var(--muted);font-size:.87rem}.offer-tag{display:inline-block;color:#25783e;background:#e4f4e8;border-radius:30px;padding:7px 12px;font-weight:700;font-size:.8rem}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.gallery-item{border:0;padding:0;background:#eee;overflow:hidden;border-radius:10px;aspect-ratio:1.1}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.08)}.hours-section{background:#13241a;color:white}.hours-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.hours-layout p{color:#c5d3c8}.hours-card{background:#ffffff0e;border:1px solid #ffffff22;border-radius:14px;padding:26px}.hour-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #ffffff20}.hour-row:last-child{border:0}.hour-row span:last-child{text-align:right;color:#d3e4d5}.contact-section{background:var(--cream)}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:50px}.contact-details{background:white;border-radius:14px;padding:35px}.contact-details p{color:var(--muted)}.contact-details a:not(.btn){color:#287d44}.contact-details .btn{margin-top:20px}.social-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px}.map-wrap{border-radius:14px;overflow:hidden;min-height:380px;background:#e6ece8}.map-wrap iframe{border:0;width:100%;height:100%;min-height:380px}footer{background:#0b1910;color:white;padding:45px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-inner p{font-size:.83rem;color:#b5c5b9}.footer-inner>div:last-child{text-align:right}dialog{padding:0;border:0;background:transparent;max-width:min(94vw,1050px);max-height:90vh}dialog::backdrop{background:#000d}dialog img{display:block;max-width:100%;max-height:85vh;object-fit:contain}#close-lightbox{position:absolute;right:10px;top:10px;border:0;background:#fff;padding:8px 12px;border-radius:50%}.notice{position:fixed;bottom:20px;left:20px;right:20px;z-index:50;max-width:700px;margin:auto;background:#fff;border:1px solid #ddd;border-radius:10px;padding:16px;box-shadow:0 10px 40px #0002}.reveal{opacity:0;transform:translateY(38px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.from-left{transform:translateX(-45px)}.reveal.from-right{transform:translateX(45px)}.reveal.visible{opacity:1;transform:translate(0,0)}@media(max-width:900px){.nav nav{gap:12px}.split,.hours-layout,.contact-layout{gap:40px}.menu-grid,.offers-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.menu-toggle{display:block}.nav nav{display:none;position:absolute;top:78px;left:0;right:0;background:#15251b;padding:22px;flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.hero{min-height:620px;height:85svh}.section{padding:75px 0}.split,.hours-layout,.contact-layout{grid-template-columns:1fr}.intro-photo img{height:330px}.menu-grid,.offers-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-inner{flex-direction:column}.footer-inner>div:last-child{text-align:left}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal.from-left,.reveal.from-right{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important}}

/* Dynamic business theme: all brand accents inherit data.themeColor */
:root{--accent:#52b16f} .text-link,.food-bottom a,.contact-details a:not(.btn),.food-bottom strong{color:var(--accent)} .chip,.offer-tag{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,white)} .intro-photo img{box-shadow:20px 20px 0 color-mix(in srgb,var(--accent) 20%,white)}

/* Icon accents follow business theme */
.category-list-icon,.search-open,.scroll-arrow,.trending-add,.trending-controls button,.item-action{color:var(--accent)}

/* Keep the added Reservation link legible in the desktop navigation. */
@media(min-width:701px){.nav{gap:18px}.nav nav{gap:clamp(9px,1.15vw,20px)}.nav nav a{white-space:nowrap}}
