:root{--bg:#080808;--panel:#111;--panel2:#171411;--ink:#f5f0e8;--muted:#b6aca1;--orange:#d97706;--orange2:#f59e0b;--line:#2b2621;--max:1280px;--shadow:0 28px 90px rgba(0,0,0,.42)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:#080808;color:var(--ink);font-family:"Montserrat",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 80% 8%,rgba(217,119,6,.09),transparent 35rem),linear-gradient(180deg,#070707,#0b0908 55%,#070707)}a{color:inherit;text-decoration:none}img{display:block}button,input,textarea{font:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.section-kicker,.eyebrow{color:var(--orange2);font:700 .76rem/1.2 "Oswald",sans-serif;letter-spacing:.18em;text-transform:uppercase}.muted{color:var(--muted)}
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:linear-gradient(180deg,rgba(5,5,5,.96),rgba(5,5,5,.76));backdrop-filter:blur(15px);border-bottom:1px solid rgba(255,255,255,.07)}.nav-shell{width:min(calc(100% - 34px),1360px);height:92px;margin:auto;display:flex;align-items:center;gap:24px}.brand-logo{display:flex;align-items:center;flex:0 0 auto}.brand-logo img{width:auto;height:72px;max-width:250px;object-fit:contain;filter:drop-shadow(0 8px 20px rgba(0,0,0,.55))}.primary-nav{margin-left:auto;display:flex;align-items:center;gap:26px;font-family:"Oswald",sans-serif;font-weight:700;font-size:1rem;letter-spacing:.04em;text-transform:uppercase}.primary-nav a{color:#ddd5cc;transition:.2s}.primary-nav a:hover{color:#fff}.edit-nav,.footer-edit{border:1px solid #6a4930;background:#1c130d;color:#ffc273;border-radius:999px;padding:9px 13px;cursor:pointer;font-weight:800}.menu-toggle{display:none;margin-left:auto;border:1px solid #504436;background:#16120f;color:#fff;border-radius:999px;padding:9px 14px;font-weight:800}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:#080808}.hero-bg{position:absolute;inset:-6%;background-size:cover;background-position:center 45%;filter:saturate(1.06) contrast(1.04) brightness(.68);will-change:transform}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.62) 42%,rgba(0,0,0,.18) 72%),linear-gradient(0deg,#080808 0%,transparent 35%),radial-gradient(circle at 78% 40%,rgba(235,116,14,.13),transparent 25%)}.embers{position:absolute;inset:0;opacity:.23;pointer-events:none;background-image:radial-gradient(circle,#f59e0b 0 1px,transparent 1.7px),radial-gradient(circle,#d97706 0 1px,transparent 1.5px);background-size:140px 180px,210px 250px;background-position:10% 20%,70% 40%;animation:embers 14s linear infinite}@keyframes embers{50%{transform:translateY(-18px);opacity:.32}}.hero-content{position:relative;z-index:3;padding:155px 0 120px;max-width:760px}.hero-logo{width:min(420px,62vw);height:auto;object-fit:contain;margin:0 0 24px;filter:drop-shadow(0 10px 30px rgba(0,0,0,.68));background:rgba(0,0,0,.18);border-radius:16px}.hero h1,.info-heading h2,.menu-head h2,.cinematic-break h2,.story-section h2,.contact-section h2{font-family:Anton,Impact,"Arial Narrow Bold",sans-serif;text-transform:uppercase;line-height:.93;letter-spacing:.01em;margin:0}.hero h1{font-size:clamp(4.1rem,9vw,8.4rem);max-width:900px}.hero h1 span{color:var(--orange2);text-shadow:0 0 38px rgba(245,158,11,.16)}.hero-lede{max-width:680px;color:#e3dcd3;font-size:clamp(1rem,1.7vw,1.22rem);margin:24px 0 30px}.hero-actions{display:flex;gap:11px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 19px;border-radius:999px;border:1px solid #5a4a3c;font-weight:800;transition:.22s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--orange2);color:#15100a;border-color:var(--orange2);box-shadow:0 10px 28px rgba(245,158,11,.16)}.btn-ghost{background:rgba(17,17,17,.72);color:#fff}.scroll-cue{position:absolute;bottom:22px;right:30px;z-index:3;color:#b9afa4;font-size:.68rem;font-weight:800;letter-spacing:.18em}.scroll-cue span{color:var(--orange2)}
.info-section{padding:110px 0 90px;background:linear-gradient(180deg,#080808,#0c0a08)}.info-heading{display:grid;grid-template-columns:.45fr 1.55fr;align-items:end;gap:30px;margin-bottom:48px}.info-heading h2{font-size:clamp(3.1rem,6.7vw,6.6rem)}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.info-grid article{padding:34px 28px;min-height:280px}.info-grid article+article{border-left:1px solid var(--line)}.info-grid h3{font-family:"Oswald",sans-serif;font-size:clamp(1.45rem,2.15vw,2.05rem);line-height:1.2;margin:16px 0 20px}.text-link{color:#ffc36d;font-weight:800}.mini-actions{display:flex;gap:8px;flex-wrap:wrap}.mini-btn{border:1px solid #5c4636;background:#17120e;border-radius:999px;padding:8px 11px;font-size:.8rem;font-weight:800}
.menu-gallery-section{position:relative;padding:115px 0 120px;background:radial-gradient(circle at 50% 0%,rgba(217,119,6,.08),transparent 42rem),#090909}.menu-head{display:grid;grid-template-columns:.38fr 1fr .75fr;align-items:end;gap:28px;margin-bottom:50px}.menu-head h2{font-size:clamp(4rem,8vw,7.7rem)}.menu-head p:last-child{color:var(--muted);margin:0}.menu-gallery{width:min(calc(100% - 32px),1160px);margin:auto;display:grid;gap:64px}.menu-page{margin:0;opacity:0;transform:translateY(38px) scale(.992);transition:opacity .75s ease,transform .9s cubic-bezier(.2,.75,.2,1)}.menu-page.in-view{opacity:1;transform:none}.menu-frame{position:relative;width:100%;padding:8px;background:linear-gradient(135deg,#2b221b,#0d0b09 40%,#2c2119);border:1px solid #3a3028;border-radius:9px;box-shadow:var(--shadow)}.menu-frame:before{content:"";position:absolute;inset:-1px;pointer-events:none;border-radius:10px;background:linear-gradient(135deg,rgba(245,158,11,.22),transparent 20%,transparent 75%,rgba(185,28,28,.15));mix-blend-mode:screen}.menu-frame img{width:100%;height:auto;object-fit:contain;object-position:center;max-width:100%;border-radius:4px;background:#050505}.menu-caption{padding:12px 4px 0;color:#9f968c;font:700 .74rem/1.2 "Oswald",sans-serif;letter-spacing:.12em;text-transform:uppercase}.empty-menu{padding:50px 20px;text-align:center;color:var(--muted);border:1px dashed #4c4035;border-radius:14px}
.cinematic-break{position:relative;min-height:78svh;display:flex;align-items:flex-end;overflow:hidden}.cinematic-break-bg{position:absolute;inset:-7%;background-size:cover;background-position:center;filter:saturate(1.05) contrast(1.06) brightness(.62);will-change:transform}.cinematic-break-overlay{position:absolute;inset:0;background:linear-gradient(0deg,#080808 0%,rgba(0,0,0,.7) 40%,rgba(0,0,0,.2) 75%),linear-gradient(90deg,rgba(0,0,0,.55),transparent 65%)}.cinematic-break-copy{position:relative;z-index:2;padding-bottom:75px}.cinematic-break h2{font-size:clamp(4rem,9vw,9rem);max-width:950px;color:#fff}.story-section{padding:120px 0;background:#080808}.story-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end}.story-section h2{font-size:clamp(3.2rem,6.6vw,6.5rem)}.story-copy{border-left:2px solid var(--orange);padding-left:26px;color:#c8beb3;font-size:1.08rem}.contact-section{padding:105px 0;background:linear-gradient(135deg,#17100b,#090909 58%);border-top:1px solid #31261e}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.contact-section h2{font-size:clamp(3.4rem,7vw,6.8rem)}.contact-section p{color:#c6bdb2}.contact-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
footer{padding:44px 0 34px;background:#050505;border-top:1px solid #211c18}.footer-grid{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:28px}.footer-logo img{height:82px;max-width:270px}.footer-copy{display:flex;flex-direction:column;gap:3px;color:#c6bdb2}.footer-copy strong{color:#fff;font-family:"Oswald",sans-serif;font-size:1.25rem;text-transform:uppercase;letter-spacing:.04em}.footer-grid>p{font-size:.78rem;color:#837b73}.footer-edit{white-space:nowrap}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .8s cubic-bezier(.2,.75,.2,1)}.reveal.in-view{opacity:1;transform:none}
.editor-backdrop{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}.editor{position:fixed;z-index:160;top:0;right:0;width:min(560px,100%);height:100dvh;background:#0e0d0c;border-left:1px solid #352c25;transform:translateX(102%);transition:.3s ease;display:flex;flex-direction:column}.editor.open{transform:none}.editor-head{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--line)}.editor-head small{color:var(--orange2);letter-spacing:.15em}.editor-head h2{margin:3px 0 0;font-family:"Oswald",sans-serif;font-size:2rem}.icon-btn{width:42px;height:42px;border-radius:50%;border:1px solid #4a4037;background:#171411;color:#fff;font-size:1.6rem;cursor:pointer}.editor-tabs{display:flex;overflow:auto;border-bottom:1px solid var(--line)}.editor-tabs button{flex:1;min-width:max-content;border:0;background:#100e0c;color:#aaa;padding:13px 12px;font-weight:800;cursor:pointer}.editor-tabs button.active{color:#fff;background:#19140f;box-shadow:inset 0 -2px var(--orange2)}.editor-body{flex:1;overflow:auto;padding:18px}.editor-pane{display:none}.editor-pane.active{display:block}.edit-section h3{font-family:"Oswald",sans-serif;font-size:1.5rem;margin:0 0 14px}.field{display:grid;gap:6px;margin-bottom:13px}.field label{font-size:.75rem;color:#bdb3a8;font-weight:800}.field textarea,.field input{width:100%;border:1px solid #3d342d;border-radius:8px;background:#15120f;color:#fff;padding:10px;min-height:42px}.field textarea{min-height:78px;resize:vertical}.editor-actions{padding:14px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}.btn-editor{border-radius:10px;padding:11px 14px;border:1px solid #493a2e;background:#191714;color:#fff;font-weight:800;cursor:pointer}.btn-editor.primary{background:var(--orange2);border-color:var(--orange2);color:#111}.menu-edit-card{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:14px}.menu-edit-preview{background:#050505;border-radius:8px;padding:5px;margin-bottom:10px;max-height:380px;overflow:auto}.menu-edit-preview img{width:100%;height:auto;object-fit:contain}.row-actions{display:flex;gap:7px;flex-wrap:wrap}.row-actions button,.upload-label{border:1px solid #544235;background:#1a1714;color:#eee;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:700;cursor:pointer}.row-actions .danger{color:#ff9b86;border-color:#6a2c24}.upload-label{display:inline-flex;align-items:center}.note{font-size:12px;color:#8f8982;margin:8px 0 14px}.toast{position:fixed;z-index:200;left:50%;bottom:30px;transform:translate(-50%,20px);background:#f0e6d9;color:#18130f;padding:10px 15px;border-radius:999px;font-weight:800;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.info-grid{grid-template-columns:repeat(2,1fr)}.info-grid article:nth-child(3){border-left:0;border-top:1px solid var(--line)}.info-grid article:nth-child(4){border-top:1px solid var(--line)}.footer-grid{grid-template-columns:auto 1fr auto}.footer-grid>p{grid-column:2}.footer-edit{grid-column:3;grid-row:1/3}.menu-head{grid-template-columns:1fr 1fr}.menu-head .section-kicker{grid-column:1/-1}}
@media(max-width:900px){.nav-shell{height:78px}.brand-logo img{height:58px;max-width:210px}.primary-nav{position:absolute;top:78px;left:16px;right:16px;display:none;flex-direction:column;align-items:stretch;background:#0d0d0d;border:1px solid var(--line);padding:15px;border-radius:12px}.primary-nav.open{display:flex}.menu-toggle{display:block}.hero-content{padding-top:145px}.info-heading,.story-grid,.contact-grid{grid-template-columns:1fr;gap:24px}.contact-actions{justify-content:flex-start}.menu-gallery{width:min(calc(100% - 24px),900px)}}
@media(max-width:650px){.wrap{width:min(calc(100% - 28px),var(--max))}.site-header{background:rgba(5,5,5,.93)}.nav-shell{height:68px}.brand-logo img{height:50px;max-width:175px}.hero{min-height:94svh}.hero-content{padding:128px 0 100px}.hero-logo{width:min(310px,78vw);margin-bottom:20px}.hero h1{font-size:clamp(3.25rem,15vw,5.6rem)}.hero-vignette{background:linear-gradient(0deg,#080808 0%,rgba(0,0,0,.77) 58%,rgba(0,0,0,.3) 100%),radial-gradient(circle at 70% 30%,rgba(255,119,0,.1),transparent 30%)}.scroll-cue{display:none}.info-section{padding:82px 0 65px}.info-heading{margin-bottom:30px}.info-heading h2{font-size:clamp(3rem,13vw,5rem)}.info-grid{grid-template-columns:1fr}.info-grid article{padding:27px 4px;min-height:unset}.info-grid article+article{border-left:0;border-top:1px solid var(--line)}.menu-gallery-section{padding:80px 0 95px}.menu-head{grid-template-columns:1fr;gap:10px;margin-bottom:30px}.menu-head .section-kicker{grid-column:auto}.menu-head h2{font-size:clamp(4rem,18vw,6rem)}.menu-gallery{width:100%;gap:36px}.menu-frame{padding:3px;border-left:0;border-right:0;border-radius:3px}.menu-frame img{width:100%;height:auto;object-fit:contain;border-radius:1px}.menu-caption{padding:9px 12px 0}.cinematic-break{min-height:64svh}.cinematic-break h2{font-size:clamp(3.7rem,16vw,6rem)}.story-section{padding:80px 0}.story-section h2{font-size:clamp(3rem,13vw,5rem)}.contact-section{padding:76px 0}.contact-actions .btn{width:100%}.footer-grid{grid-template-columns:1fr;justify-items:start}.footer-logo img{height:68px}.footer-grid>p,.footer-edit{grid-column:auto;grid-row:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.embers{animation:none}.reveal,.menu-page{transition:none;opacity:1;transform:none}.hero-bg,.cinematic-break-bg{transform:none!important}}
.menu-edit-preview{position:relative;min-height:140px;display:grid;place-items:center;background:#0b0b0b;overflow:hidden}.menu-edit-preview img{width:100%;height:auto;max-height:300px;object-fit:contain;display:block}.preview-loading{position:absolute;color:#8d8d8d;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.menu-edit-preview.loaded .preview-loading{display:none}.storage-status{margin:14px 0 18px;padding:12px 14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);color:#c8c8c8;border-radius:8px;font-size:.86rem;line-height:1.45}.editor-actions button:disabled,.row-actions button:disabled{opacity:.45;cursor:not-allowed}


/* Order Online + Payment Options */
.btn-direct-order{background:linear-gradient(135deg,#d97706,#b45309);border-color:#f59e0b;color:#fff;font-weight:900;box-shadow:0 12px 32px rgba(217,119,6,.22)}.btn-direct-order:hover{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#fbbf24}
.btn-order{border-color:transparent;color:#fff;font-weight:900}.btn-order.foodpanda{background:#d70f64}.btn-order.foodpanda:hover{background:#ee1b78}.btn-order.grab{background:#00b14f}.btn-order.grab:hover{background:#08c55a}
.order-online-section{padding:105px 0;background:radial-gradient(circle at 20% 0%,rgba(245,158,11,.12),transparent 32rem),linear-gradient(180deg,#0b0908,#080808);border-top:1px solid #2f241c;border-bottom:1px solid #2f241c}.order-online-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:55px;align-items:center}.order-online-section h2,.payment-section h2{font-size:clamp(3.5rem,7vw,7rem)}.order-lede,.payment-heading>p:last-child{color:#bfb5a9;max-width:620px;font-size:1.05rem}.delivery-cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.delivery-card{min-height:220px;border-radius:18px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.32);transition:transform .3s ease,filter .3s ease}.delivery-card:before{content:"";position:absolute;inset:0;background:linear-gradient(140deg,rgba(255,255,255,.16),transparent 45%);pointer-events:none}.delivery-card:hover{transform:translateY(-5px);filter:saturate(1.08)}.delivery-card.foodpanda-card{background:linear-gradient(135deg,#e21b70,#b20850)}.delivery-card.grab-card{background:linear-gradient(135deg,#00b14f,#087f3c)}.delivery-card .delivery-brand{font-family:"Oswald",sans-serif;font-weight:900;font-size:1.35rem;letter-spacing:.05em;text-transform:uppercase}.delivery-card strong{font-family:"Anton",sans-serif;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1;margin:7px 0}.delivery-card span:last-child{font-weight:800;opacity:.9}
.payment-section{padding:95px 0 105px;background:#0a0a0a}.payment-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}.payment-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pay-badge{display:flex;align-items:center;gap:10px;min-height:68px;border:1px solid #3a3028;border-radius:12px;background:linear-gradient(135deg,#161310,#0d0c0b);padding:14px 16px;color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.03)}.pay-badge b{font-family:"Oswald",sans-serif;font-size:1.15rem}.pay-badge.wide{grid-column:1/-1;flex-wrap:wrap}.pay-badge small{width:100%;padding-left:28px;color:#d7a85e;letter-spacing:.04em;font-weight:700}
.footer-quick{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:.75rem;color:#9a928a}.footer-quick a{padding:6px 9px;border:1px solid #3d332b;border-radius:999px;color:#f5d9ae;font-weight:800}.footer-quick span{color:#8e877f}
@media(max-width:900px){.order-online-grid,.payment-wrap{grid-template-columns:1fr}.delivery-cta-grid{max-width:760px}.payment-badges{max-width:760px}}
@media(max-width:650px){.hero-actions .btn-direct-order{width:100%}.order-online-section,.payment-section{padding:72px 0}.delivery-cta-grid{grid-template-columns:1fr}.delivery-card{min-height:165px;padding:22px}.payment-badges{grid-template-columns:1fr}.pay-badge.wide{grid-column:auto}.hero-actions .btn-order{width:100%}.footer-quick{flex-direction:column;align-items:flex-start}}


/* Zmokey's BBQ brand typography system — Anton / Oswald Bold / Montserrat */
body,
p,
li,
small,
input,
textarea,
select,
.field label,
.note,
.muted,
.order-lede,
.payment-heading > p:last-child,
.hero-lede,
.story-copy,
.menu-head p:last-child,
.contact-section p,
.footer-copy,
.footer-grid > p {
  font-family: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 400;
}

.hero h1,
.info-heading h2,
.menu-head h2,
.cinematic-break h2,
.story-section h2,
.contact-section h2,
.order-online-section h2,
.payment-section h2 {
  font-family: "Anton", Impact, "Arial Narrow Bold", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .01em;
}

.primary-nav,
.primary-nav a,
.menu-toggle,
.edit-nav,
.footer-edit,
.section-kicker,
.eyebrow,
.info-grid h3,
.text-link,
.mini-btn,
.btn,
.menu-caption,
.footer-copy strong,
.editor-head h2,
.editor-tabs button,
.edit-section h3,
.btn-editor,
.row-actions button,
.upload-label,
.delivery-card .delivery-brand,
.pay-badge b,
.footer-quick,
.footer-quick a,
.toast {
  font-family: "Oswald", "Arial Narrow", sans-serif;
  font-weight: 700;
}

/* Responsive typography refinements */
body { font-size: 16px; line-height: 1.62; }
.hero-lede,
.order-lede,
.payment-heading > p:last-child,
.story-copy,
.contact-section p { line-height: 1.68; }
.primary-nav { letter-spacing: .055em; }
.section-kicker,
.eyebrow { letter-spacing: .16em; }
.btn,
.mini-btn,
.edit-nav,
.footer-edit { letter-spacing: .025em; }
.info-grid h3 { letter-spacing: .012em; }

@media (max-width: 900px) {
  body { font-size: 15.5px; }
  .primary-nav { letter-spacing: .04em; }
}

@media (max-width: 650px) {
  body { font-size: 15px; line-height: 1.58; }
  .hero h1 { letter-spacing: 0; }
  .section-kicker,
  .eyebrow { letter-spacing: .13em; }
  .btn { font-size: .94rem; }
}

/* Admin controls are created by JavaScript only after verified Owner authentication. */
.editor[hidden]{display:none!important}.editor-rule{border:0;border-top:1px solid var(--line);margin:24px 0}

/* Editable Photo Gallery */
.photo-gallery-section{padding:105px 0;background:radial-gradient(circle at 82% 8%,rgba(217,119,6,.1),transparent 30rem),linear-gradient(180deg,#090909,#0d0b09 50%,#090909);border-top:1px solid #2b241e;border-bottom:1px solid #2b241e}
.gallery-head{display:grid;grid-template-columns:.72fr 1.15fr 1fr;gap:28px;align-items:end;margin-bottom:42px}.gallery-head h2{font-family:"Anton",Impact,sans-serif;font-size:clamp(3.5rem,7vw,7rem);line-height:.95;margin:0;text-transform:uppercase}.gallery-head p:last-child{color:var(--muted);max-width:620px;margin:0}
.photo-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.gallery-item{position:relative;grid-column:span 4;border:1px solid #342a22;background:#0c0b0a;border-radius:16px;overflow:hidden;box-shadow:0 22px 65px rgba(0,0,0,.28);cursor:zoom-in;opacity:0;transform:translateY(22px) scale(.985);transition:opacity .65s ease,transform .65s ease,border-color .25s ease}.gallery-item.in-view{opacity:1;transform:none}.gallery-item:nth-child(5n+1),.gallery-item:nth-child(5n+4){grid-column:span 6}.gallery-item button{all:unset;display:block;width:100%;cursor:zoom-in}.gallery-item img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#080808;transition:transform .55s ease,filter .4s ease}.gallery-item:hover{border-color:#60462f}.gallery-item:hover img{transform:scale(1.025);filter:saturate(1.05)}.gallery-item figcaption{padding:11px 14px 13px;color:#d7cfc6;font:700 .9rem/1.3 "Oswald",sans-serif;letter-spacing:.025em}
.gallery-lightbox{position:fixed;z-index:500;inset:0;background:rgba(0,0,0,.94);display:grid;place-items:center;padding:48px 74px 64px;backdrop-filter:blur(10px)}.gallery-lightbox[hidden]{display:none!important}.gallery-lightbox img{max-width:min(92vw,1500px);max-height:82vh;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 30px 110px rgba(0,0,0,.75)}.lightbox-close,.lightbox-nav{position:absolute;border:1px solid rgba(255,255,255,.16);background:rgba(18,18,18,.72);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(8px)}.lightbox-close{right:22px;top:20px;width:46px;height:46px;border-radius:50%;font-size:2rem}.lightbox-nav{top:50%;width:48px;height:64px;border-radius:12px;font-size:2.7rem;transform:translateY(-50%)}.lightbox-nav.prev{left:18px}.lightbox-nav.next{right:18px}.lightbox-caption{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font:700 .95rem/1.4 "Oswald",sans-serif;color:#ddd;text-align:center;max-width:80vw}
.gallery-edit-card{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:14px;background:#111}.gallery-edit-card.dragging{opacity:.45;border-color:var(--orange2)}.gallery-edit-card.drag-over{outline:2px solid var(--orange2);outline-offset:2px}.gallery-drag-handle{font-family:"Oswald",sans-serif;color:#c59b65;cursor:grab;user-select:none;margin-bottom:8px;font-size:.82rem;letter-spacing:.08em}.gallery-edit-preview{height:190px;background:#070707;border-radius:9px;display:grid;place-items:center;overflow:hidden;margin-bottom:10px;position:relative}.gallery-edit-preview img{width:100%;height:100%;object-fit:contain;display:block}.gallery-edit-preview .preview-loading{position:absolute}.gallery-edit-preview.loaded .preview-loading{display:none}
@media(max-width:900px){.gallery-head{grid-template-columns:1fr 1fr}.gallery-head .section-kicker{grid-column:1/-1}.gallery-item{grid-column:span 6}.gallery-item:nth-child(n){grid-column:span 6}}
@media(max-width:650px){.photo-gallery-section{padding:76px 0}.gallery-head{grid-template-columns:1fr;gap:11px;margin-bottom:28px}.gallery-head .section-kicker{grid-column:auto}.gallery-head h2{font-size:clamp(3.6rem,16vw,5.8rem)}.photo-gallery{grid-template-columns:1fr;gap:14px}.gallery-item,.gallery-item:nth-child(n){grid-column:auto}.gallery-item img{aspect-ratio:auto;max-height:none;object-fit:contain}.gallery-lightbox{padding:62px 12px 72px}.gallery-lightbox img{max-width:96vw;max-height:78vh}.lightbox-nav{width:42px;height:54px;background:rgba(10,10,10,.6)}.lightbox-nav.prev{left:7px}.lightbox-nav.next{right:7px}.lightbox-close{right:12px;top:12px}}
@media(prefers-reduced-motion:reduce){.gallery-item{opacity:1;transform:none;transition:none}.gallery-item:hover img{transform:none}}

/* Mixed photo + video gallery enhancement */
.gallery-video-thumb{position:relative;display:block;width:100%;background:#080808;overflow:hidden}.gallery-video-thumb img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#080808;transition:transform .55s ease,filter .4s ease}.gallery-video-item button{cursor:pointer}.gallery-video-item:hover .gallery-video-thumb img{transform:scale(1.025);filter:saturate(1.05) brightness(.82)}.gallery-play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;display:grid;place-items:center;padding-left:5px;background:rgba(8,8,8,.68);border:2px solid rgba(255,255,255,.86);color:#fff;font-size:1.75rem;box-shadow:0 12px 36px rgba(0,0,0,.45);backdrop-filter:blur(5px);transition:transform .22s ease,background .22s ease}.gallery-video-item:hover .gallery-play-icon{transform:translate(-50%,-50%) scale(1.07);background:rgba(217,119,6,.88)}.gallery-media-badge{position:absolute;right:12px;bottom:12px;padding:5px 9px;border-radius:999px;background:rgba(0,0,0,.72);border:1px solid rgba(255,255,255,.18);color:#fff;font:700 .72rem/1 "Oswald",sans-serif;letter-spacing:.1em}.gallery-lightbox .lightbox-video{max-width:min(92vw,1500px);max-height:82vh;width:auto;height:auto;object-fit:contain;border-radius:8px;background:#000;box-shadow:0 30px 110px rgba(0,0,0,.75)}.gallery-lightbox .lightbox-video[hidden],.gallery-lightbox img[hidden]{display:none!important}@media(max-width:650px){.gallery-video-thumb img{aspect-ratio:auto;object-fit:contain}.gallery-play-icon{width:58px;height:58px;font-size:1.45rem}.gallery-lightbox .lightbox-video{max-width:96vw;max-height:78vh}}

/* Reservation enhancement — targeted addition only */
.btn-book{background:linear-gradient(135deg,#d97706,#9a3412);color:#fff;border-color:#e58a17;font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.btn-messenger{background:#0866ff;color:#fff;border-color:#2b7cff;font-family:'Oswald',sans-serif;font-weight:700}
.reservation-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(8px);z-index:1100}
.reservation-modal{position:fixed;z-index:1110;left:50%;top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100% - 24px));max-height:92dvh;overflow:auto;background:#111;border:1px solid #3a2a20;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.68)}
.reservation-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 22px 16px;background:rgba(17,17,17,.97);border-bottom:1px solid #30251f}.reservation-head h2{margin:.2rem 0 0;font-size:clamp(2rem,7vw,3.4rem)}
.reservation-body{padding:22px}.reservation-notice,.reservation-policy{padding:16px;border:1px solid #59351d;border-left:4px solid #d97706;background:#1a130f;border-radius:12px;margin-bottom:20px}.reservation-policy p{margin:.4rem 0 0;color:#d7cec2}
.reservation-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.reservation-modal label{display:grid;gap:7px;color:#f2e9dd;font-family:'Oswald',sans-serif;font-weight:700}.reservation-modal input,.reservation-modal select,.reservation-modal textarea{width:100%;background:#0b0b0b;color:#fff;border:1px solid #3a3a3a;border-radius:10px;padding:12px;font:500 16px 'Montserrat',sans-serif}.reservation-modal textarea{resize:vertical}.advance-order{border:1px solid #323232;border-radius:14px;padding:16px;margin:18px 0;display:grid;gap:10px}.advance-order legend{font-family:'Oswald',sans-serif;font-weight:700;padding:0 6px}.advance-order>label{display:flex;grid-template:none;align-items:center;gap:8px}.advance-order input[type=radio]{width:auto}.reservation-review-btn{margin-top:18px;width:100%}.reservation-summary{background:#0a0a0a;border:1px solid #2d2d2d;border-radius:14px;padding:18px;white-space:pre-wrap;line-height:1.7}.reservation-actions{display:flex;gap:10px;margin-top:18px}.reservation-actions .btn{flex:1}
@media(max-width:640px){.reservation-grid{grid-template-columns:1fr}.reservation-modal{top:12px;transform:translateX(-50%);max-height:calc(100dvh - 24px)}.reservation-body{padding:16px}.reservation-head{padding:16px}.hero-actions .btn-book{order:2}.reservation-actions{flex-direction:column}}

/* Consolidated production enhancement: reservation + service branding + PWA */
.brand-mark{display:inline-flex;align-items:center;justify-content:center;line-height:1;flex:0 0 auto}.btn .brand-mark{margin-right:8px}.foodpanda-mark{font-weight:900;text-transform:lowercase;letter-spacing:-.04em}.grab-mark{font-weight:800;letter-spacing:-.04em}.messenger-mark{font-size:.72em;font-weight:800;background:#fff;color:#0866ff;border-radius:999px;padding:.34em .58em}.btn-order,.btn-messenger,.contact-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:4px}.contact-actions #foodpandaContactLink{background:#d70f64;border-color:#e92b7b;color:#fff}.contact-actions #grabContactLink{background:#00b14f;border-color:#17c663;color:#fff}.contact-actions #directionsLink,.hero-actions #heroMapLink{background:#1759a8;border-color:#2c72c8;color:#fff}.contact-actions #directionsLink:hover,.hero-actions #heroMapLink:hover{background:#1e68bf}.ui-icon{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.1);font:800 16px/1 'Montserrat',sans-serif}.payment-brand{display:inline-flex;align-items:center;justify-content:center;min-width:62px;height:30px;padding:0 9px;border-radius:8px;font:800 14px/1 'Montserrat',sans-serif;background:#fff}.payment-brand.gcash{color:#1674ea}.payment-brand.maya{background:#62e68c;color:#08140c}.payment-brand.qrph{background:#fff;color:#173e87}.bank-transfer{align-items:center}.bank-logos{display:flex;gap:8px;flex-wrap:wrap;width:100%;padding:6px 0 0 38px}.bank-logo{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 10px;border-radius:7px;background:#fff;font:800 12px/1 'Montserrat',sans-serif;white-space:nowrap}.bank-logo.bdo{color:#174a8b}.bank-logo.bpi{color:#9e1b32}.bank-logo.metrobank{color:#153b74}.bank-logo.pnb{color:#155c9b}.advance-order-info{padding:14px 15px;border:1px solid #69401f;border-left:4px solid #d97706;border-radius:11px;background:#1a130f;color:#eee3d6}.advance-order-info strong{font-family:'Oswald',sans-serif;font-size:1.05rem}.advance-order-info p{margin:.45rem 0 0;color:#d7cec2;line-height:1.55}.advance-order-cta{display:flex;margin-top:12px;width:100%;justify-content:center}.advance-order-cta[hidden]{display:none!important}
@media(max-width:650px){.btn .brand-mark{margin-right:5px}.bank-logos{padding-left:0}.payment-brand{min-width:56px}.contact-actions .btn{width:100%}}
