:root{--cream:#f7eadb;--paper:#fff4e7;--red:#8f1717;--green:#173f2d;--ink:#241b16}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,"Times New Roman",serif}a{color:inherit}.reference-hero{position:relative;width:100%;max-width:1536px;margin:0 auto;line-height:0;background:var(--cream)}.reference-hero>img{display:block;width:100%;height:auto}.hotspot{position:absolute;display:block;z-index:3}.map{left:3.7%;top:3.5%;width:25%;height:6%}.instagram{left:68.4%;top:3.2%;width:17%;height:6%}.phone{left:84.5%;top:3.2%;width:13%;height:6%}.nav-home{left:25.7%;top:34.8%;width:7.2%;height:5.5%}.nav-menu{left:34.5%;top:34.8%;width:5.5%;height:5.5%}.nav-drinks{left:41.7%;top:34.8%;width:5.5%;height:5.5%}.nav-about{left:48.7%;top:34.8%;width:7.3%;height:5.5%}.nav-gallery{left:58%;top:34.8%;width:7.5%;height:5.5%}.nav-contact{left:67.1%;top:34.8%;width:7.5%;height:5.5%}.call-btn{left:31.9%;top:60.7%;width:16.8%;height:6.1%}.menu-btn{left:49.4%;top:60.7%;width:17.7%;height:6.1%}.mobile-nav{display:none}.paper{background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.55),transparent 36%),var(--paper)}.section{padding:56px 5vw;border-top:1px solid rgba(143,23,23,.18)}.section h2{text-align:center;color:var(--red);font-size:clamp(38px,5vw,58px);margin:0 0 8px;letter-spacing:.02em}.lead{text-align:center;font-size:20px;margin:0 0 34px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;max-width:1180px;margin:auto}.menu-grid article{background:#fffaf1;border:1px solid rgba(143,23,23,.28);border-radius:16px;padding:16px;box-shadow:0 8px 24px rgba(83,42,24,.10)}.menu-grid h3{text-align:center;color:var(--green);font-size:25px}.menu-grid img{width:100%;display:block;border-radius:9px}
.menu-card{position:relative}
.menu-shot{display:block;overflow:hidden;border-radius:14px;background:#fff;border:1px solid rgba(143,23,23,.18);cursor:zoom-in;line-height:0}
.menu-shot img{width:100%;display:block;border-radius:14px;transition:transform .35s ease;transform-origin:center top}
.menu-shot:hover img{transform:scale(1.42)}
.menu-note{text-align:center;font-size:14px;color:#6f5a4c;margin:12px 0 4px}
.compact{text-align:center}.video-section{text-align:center}.video-section video{width:min(900px,100%);max-height:650px;background:#17110f;border-radius:14px;border:1px solid rgba(143,23,23,.3)}.contact{text-align:center;font-size:19px;padding-bottom:80px}
@media(max-width:760px){.hotspot{display:none}.mobile-nav{position:sticky;top:0;z-index:10;display:flex;justify-content:space-around;gap:4px;background:rgba(247,234,219,.96);border-top:1px solid #a84c3f;border-bottom:1px solid #a84c3f;padding:12px 8px}.mobile-nav a{text-decoration:none;color:var(--red);font-weight:700}.menu-grid{grid-template-columns:1fr}.section{padding:38px 16px}.lead{font-size:17px}}

@media(max-width:760px){.menu-shot:hover img{transform:none}.menu-note{font-size:13px}}


/* Mobile-first enhancement */
.mobile-hero{display:none}
.mobile-note{display:none}
@media(max-width:760px){
  body{overflow-x:hidden;background:#fff4e7}
  .reference-hero{display:none}
  .mobile-hero{display:block;background:radial-gradient(circle at 50% 10%,rgba(255,255,255,.8),transparent 38%),#f7eadb;border-bottom:1px solid rgba(143,23,23,.22);padding:10px 14px 26px;text-align:center}
  .mobile-topline{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;line-height:1.25;margin-bottom:4px}
  .mobile-topline a{text-decoration:none;color:#4e3328}
  .mobile-brand{display:block;width:min(100%,520px);height:auto;margin:0 auto -8px;mix-blend-mode:multiply}
  .mobile-hero-copy>p:first-child{font-size:14px;letter-spacing:.12em;color:#8f1717;font-weight:700;margin:0 0 2px}
  .mobile-hero h1{font-size:clamp(34px,10vw,48px);line-height:.98;color:#8f1717;margin:0 auto 12px;max-width:650px}
  .mobile-tagline{font-size:17px;line-height:1.35;margin:0 auto 18px;max-width:560px;color:#173f2d}
  .mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:520px;margin:0 auto 14px}
  .mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:12px;padding:10px 12px;text-decoration:none;font-weight:700;font-family:Arial,sans-serif}
  .mobile-actions .primary{background:#8f1717;color:#fff}
  .mobile-actions .secondary{border:1.5px solid #173f2d;color:#173f2d;background:#fff8ef}
  .mobile-instagram{display:inline-block;font-family:Arial,sans-serif;font-size:14px;color:#8f1717;text-decoration:none;border-bottom:1px solid rgba(143,23,23,.35);padding-bottom:2px}
  .mobile-nav{position:sticky;top:0;z-index:50;box-shadow:0 3px 12px rgba(73,43,28,.09);overflow-x:auto;justify-content:flex-start;padding:10px 8px;scrollbar-width:none}
  .mobile-nav::-webkit-scrollbar{display:none}
  .mobile-nav a{flex:0 0 auto;padding:8px 13px;border-radius:999px;background:#fff8ef;border:1px solid rgba(143,23,23,.2);font-family:Arial,sans-serif;font-size:14px}
  .section{padding:34px 12px}
  .section h2{font-size:clamp(31px,9vw,44px)}
  .lead{font-size:16px;line-height:1.4;margin-bottom:22px}
  .menu-grid{display:block;max-width:620px}
  .menu-grid article{padding:10px;border-radius:14px;margin-bottom:22px}
  .menu-grid h3{font-size:21px;margin:8px 0 12px}
  .menu-shot{border-radius:10px;overflow:visible}
  .menu-shot img{border-radius:10px;box-shadow:0 5px 18px rgba(70,40,24,.10)}
  .menu-note{font-family:Arial,sans-serif;font-size:13px;line-height:1.35;margin-top:10px}
  .desktop-note{display:none}
  .mobile-note{display:inline}
  .compact p,.contact p{line-height:1.6}
  .video-section video{border-radius:10px;max-height:none}
  .contact{font-size:17px;padding-bottom:48px}
}
@media(max-width:390px){
  .mobile-topline{display:grid;grid-template-columns:1fr;text-align:center;gap:4px}
  .mobile-actions{grid-template-columns:1fr}
}

.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1180px;margin:28px auto 0}.gallery-grid a{display:block;overflow:hidden;border-radius:14px;line-height:0;background:#fffaf1;border:1px solid rgba(143,23,23,.22);box-shadow:0 8px 24px rgba(83,42,24,.10)}.gallery-grid img{display:block;width:100%;height:320px;object-fit:cover;transition:transform .25s ease}.gallery-grid a:hover img{transform:scale(1.035)}@media(max-width:760px){.gallery-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.gallery-grid img{height:210px}}@media(max-width:460px){.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:auto;max-height:none}}

/* Gallery lightbox / slider */
.gallery-grid .gallery-item{appearance:none;-webkit-appearance:none;border:1px solid rgba(143,23,23,.22);padding:0;margin:0;display:block;overflow:hidden;border-radius:14px;line-height:0;background:#fffaf1;box-shadow:0 8px 24px rgba(83,42,24,.10);cursor:zoom-in}
.gallery-grid .gallery-item img{display:block;width:100%;height:320px;object-fit:cover;transition:transform .25s ease}
.gallery-grid .gallery-item:hover img{transform:scale(1.035)}
.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(17,12,9,.94);display:none;align-items:center;justify-content:center;padding:24px 72px}
.lightbox.is-open{display:flex}
.lightbox-image{display:block;max-width:min(1100px,92vw);max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 12px 50px rgba(0,0,0,.45)}
.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:0;background:rgba(255,244,231,.92);color:#8f1717;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(0,0,0,.25)}
.lightbox-close{top:18px;right:18px;width:44px;height:44px;border-radius:50%;font-size:34px;line-height:1}
.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:54px;height:70px;border-radius:14px;font-size:54px;line-height:1}
.lightbox-prev{left:14px}.lightbox-next{right:14px}
.lightbox-counter{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);background:rgba(255,244,231,.92);color:#8f1717;border-radius:999px;padding:7px 12px;font:700 14px/1 Arial,sans-serif}
body.lightbox-open{overflow:hidden}
@media(max-width:760px){
  .gallery-grid .gallery-item img{height:210px}
  .lightbox{padding:18px 44px}
  .lightbox-image{max-width:94vw;max-height:82vh;border-radius:8px}
  .lightbox-prev,.lightbox-next{width:42px;height:58px;font-size:42px;border-radius:12px}
  .lightbox-prev{left:6px}.lightbox-next{right:6px}
  .lightbox-close{top:10px;right:10px;width:40px;height:40px;font-size:30px}
}
@media(max-width:460px){.gallery-grid .gallery-item img{height:auto}}

.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:900px;margin:0 auto}.video-grid video{width:100%;aspect-ratio:9/16;max-height:720px;object-fit:contain;background:#17110f;border-radius:14px;border:1px solid rgba(143,23,23,.3)}
@media(max-width:760px){.video-grid{grid-template-columns:1fr;max-width:420px;gap:18px}.video-grid video{max-height:none}}

/* v11: two-page food menu together, drinks separate */
.food-menu-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1280px;margin:0 auto}
.food-menu-pair .menu-card,.drinks-menu-wrap .menu-card{background:#fffaf1;border:1px solid rgba(143,23,23,.28);border-radius:16px;padding:12px;box-shadow:0 8px 24px rgba(83,42,24,.10)}
.drinks-menu-wrap{max-width:720px;margin:0 auto}
@media(max-width:760px){.food-menu-pair{grid-template-columns:1fr;gap:18px}.drinks-menu-wrap{max-width:620px}}

/* v11: video slider */
.video-slider{display:grid;grid-template-columns:auto minmax(0,420px) auto;align-items:center;justify-content:center;gap:18px;max-width:620px;margin:20px auto 0}
.video-stage{position:relative;width:100%}
.video-stage video{display:block;width:100%;aspect-ratio:9/16;max-height:720px;object-fit:contain;background:#17110f;border-radius:14px;border:1px solid rgba(143,23,23,.3)}
.video-prev,.video-next{border:0;background:#fff8ef;color:#8f1717;width:52px;height:70px;border-radius:14px;font-size:52px;line-height:1;cursor:pointer;box-shadow:0 4px 16px rgba(83,42,24,.15)}
.video-counter{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);background:rgba(255,248,239,.92);color:#8f1717;border-radius:999px;padding:6px 10px;font:700 13px/1 Arial,sans-serif;pointer-events:none}
@media(max-width:760px){.video-slider{grid-template-columns:42px minmax(0,1fr) 42px;gap:8px;max-width:460px}.video-prev,.video-next{width:42px;height:58px;font-size:42px;border-radius:12px}.video-stage video{max-height:none}}
