:root{--green:#0f3d31;--green2:#1d604c;--gold:#c89232;--cream:#fffaf0;--ink:#18211e;--muted:#68736e;--line:#eadfc9}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--cream);color:var(--ink);line-height:1.55}nav{position:sticky;top:0;z-index:50;background:rgba(15,61,49,.98);display:flex;align-items:center;justify-content:space-between;padding:8px 5%;box-shadow:0 3px 15px #0002}.navlogo{height:56px;width:auto;background:#fff;border-radius:8px;padding:2px}.navlinks{display:flex;align-items:center;gap:6px}.navlinks a{color:#fff;text-decoration:none;padding:10px 12px;border-radius:20px;font-weight:700;font-size:.9rem}.navlinks a:hover,.navlinks a.active{background:#ffffff1a;color:#f1c86e}.hero{min-height:78vh;display:flex;align-items:center;text-align:center;padding:75px 6%;color:#fff;background:linear-gradient(90deg,rgba(5,25,20,.9),rgba(5,25,20,.48)),url('images/food-2.jpg') center/cover}.hero>div{max-width:880px;margin:auto}.eyebrow{color:#f1c86e;font-weight:800;letter-spacing:2px;text-transform:uppercase}.hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,7vw,5.5rem);line-height:1.02;margin:12px 0}.hero p{font-size:1.2rem;max-width:720px;margin:0 auto 28px}.btn{display:inline-block;background:var(--gold);color:#17211e;padding:13px 23px;border-radius:28px;text-decoration:none;font-weight:800;margin:4px;border:0;cursor:pointer}.btn.white{background:#fff}.contact{margin-top:17px}.contact a{color:#fff;text-decoration:none;font-weight:800}.page-hero{background:linear-gradient(90deg,rgba(5,25,20,.9),rgba(5,25,20,.58)),url('images/food-2.jpg') center/cover;color:#fff;text-align:center;padding:70px 6%}.page-hero h1{font-family:Georgia,serif;font-size:clamp(2.5rem,6vw,4.5rem);margin:0 0 8px}.page-hero p{max-width:700px;margin:auto;font-size:1.1rem}section{max-width:1200px;margin:auto;padding:72px 6%}.heading{text-align:center;margin-bottom:38px}.heading h2{font-family:Georgia,serif;color:var(--green);font-size:2.4rem;margin:0 0 7px}.heading p{color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}.card{background:#fff;border:1px solid #eee7d8;border-radius:18px;padding:24px;box-shadow:0 8px 25px #173c3210}.card h3{color:var(--green);margin:0 0 8px}.feature{background:#f3ead8;max-width:none}.feature>div{max-width:1200px;margin:auto}.menu-block{margin:0 auto 36px}.menu-block h3{font-family:Georgia,serif;color:var(--green);font-size:1.65rem;border-bottom:2px solid var(--gold);padding-bottom:8px}.menu-list{display:grid;grid-template-columns:1fr 1fr;gap:0 38px}.item{display:flex;justify-content:space-between;gap:15px;border-bottom:1px dashed #cfc3ad;padding:10px 0}.item span:last-child{font-weight:800;white-space:nowrap;color:#a86f12}.menu-board{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.menu-board img{width:100%;display:block;border-radius:17px;box-shadow:0 8px 25px #173c3220;border:1px solid #e2d6bf}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery img{width:100%;height:270px;object-fit:cover;border-radius:15px}.catering{max-width:none;background:var(--green);color:#fff}.catering .inner{max-width:1200px;margin:auto}.catering .heading h2{color:#fff}.catering .heading p{color:#dce8e2}.pill{display:inline-block;border:1px solid #ffffff55;border-radius:30px;padding:8px 13px;margin:4px}.steps{counter-reset:s}.step{position:relative;padding-left:54px}.step:before{counter-increment:s;content:counter(s);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#17211e;font-weight:900}.form{background:#fff;border-radius:20px;padding:30px;max-width:780px;margin:auto;box-shadow:0 10px 30px #00000012}label{font-weight:700}input,textarea,select{width:100%;padding:13px;margin:7px 0 15px;border:1px solid #d7ddd9;border-radius:10px;font:inherit;background:#fff}footer{background:#0a2b24;color:#fff;text-align:center;padding:42px 6%}footer .gold{color:#f0c263}footer a{color:#f0c263}.intro{max-width:800px;margin:auto;text-align:center;color:var(--muted)}.cta{text-align:center;padding-top:0}.notice{background:#f3ead8;border-left:4px solid var(--gold);padding:16px 20px;border-radius:10px;margin:25px 0}.center{text-align:center}
@media(max-width:760px){nav{padding:7px 3%;flex-wrap:wrap}.navlogo{height:46px}.navlinks{width:100%;justify-content:space-between;gap:0}.navlinks a{padding:8px 7px;font-size:.76rem}.hero{min-height:72vh}.menu-list{grid-template-columns:1fr}.menu-board{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:210px}section{padding:55px 5%}.page-hero{padding:55px 5%}}


/* Floating back-to-top control */
.back-to-top{position:fixed;right:22px;bottom:82px;z-index:60;width:48px;height:48px;border:0;border-radius:50%;background:var(--green);color:#fff;font-size:1.45rem;display:grid;place-items:center;box-shadow:0 8px 24px #0003;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--green2)}.back-to-top:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:760px){.menu-carousel{gap:7px}.carousel-btn{position:absolute;z-index:3;width:40px;height:40px;flex-basis:40px;font-size:1.25rem;background:#0f3d31dd}.carousel-btn.prev{left:10px}.carousel-btn.next{right:10px}.menu-viewport{border-radius:14px}.menu-slide img{max-height:none}.carousel-meta{font-size:.84rem;flex-direction:column;gap:2px}.back-to-top{right:16px;bottom:74px;width:44px;height:44px}}


/* Click-to-enlarge visual menu */
.menu-image-trigger{display:block;width:100%;padding:0;border:0;background:#fff;cursor:zoom-in;border-radius:inherit;overflow:hidden;font:inherit}.menu-image-trigger:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.menu-image-trigger img{cursor:zoom-in}.lightbox-open{overflow:hidden}.menu-lightbox{position:fixed;inset:0;z-index:100;background:#071c17f5;display:none;align-items:center;justify-content:center;padding:24px}.menu-lightbox.open{display:flex}.lightbox-content{width:min(92vw,1100px);height:88vh;display:flex;align-items:center;justify-content:center;overflow:auto;border-radius:12px}.lightbox-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;box-shadow:0 12px 40px #0008;border-radius:8px;touch-action:pinch-zoom}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:0;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;background:#ffffffee;color:#12352d;cursor:pointer;box-shadow:0 6px 20px #0005;font-size:1.5rem;z-index:2}.lightbox-close{top:18px;right:20px;font-size:1.8rem}.lightbox-prev{left:20px;top:50%;transform:translateY(-50%)}.lightbox-next{right:20px;top:50%;transform:translateY(-50%)}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{transform:scale(1.05)}.lightbox-prev:hover,.lightbox-next:hover{transform:translateY(-50%) scale(1.05)}.lightbox-hint{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);color:#fff;font-size:.85rem;text-align:center;opacity:.9}@media(max-width:760px){.menu-lightbox{padding:12px}.lightbox-content{width:96vw;height:86vh}.lightbox-close{top:10px;right:10px;width:42px;height:42px}.lightbox-prev,.lightbox-next{width:40px;height:40px;font-size:1.25rem}.lightbox-prev{left:9px}.lightbox-next{right:9px}.lightbox-hint{bottom:8px;font-size:.72rem}}



/* Clean cross-browser visual menu carousel v3 */
.visual-menu-section{width:100%;max-width:1200px;margin:0 auto;padding:72px 6%;}
.visual-menu-section .heading{width:100%;max-width:100%;}
.menu-carousel{position:relative;width:100%;max-width:100%;margin:0;padding:0;}
.menu-viewport{position:relative;width:100%;max-width:100%;overflow:hidden;border-radius:18px;box-shadow:0 10px 30px #173c3220;background:#fff;}
.menu-track{display:flex;flex-direction:row;flex-wrap:nowrap;width:700%;max-width:none;margin:0;padding:0;transform:translate3d(0,0,0);transition:transform .35s ease;will-change:transform;}
.menu-slide{display:block;flex:0 0 14.2857143%;width:14.2857143%;min-width:14.2857143%;max-width:14.2857143%;margin:0;padding:0;background:#fff;overflow:hidden;}
.menu-slide .menu-image-trigger{display:block;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;background:#fff;cursor:zoom-in;font:inherit;overflow:hidden;}
.menu-slide img{display:block;width:100%;max-width:100%;height:auto;margin:0;padding:0;object-fit:contain;background:#fff;}
.carousel-btn{position:absolute;z-index:20;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:#0f3d31ee;color:#fff;font-size:1.55rem;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:0 5px 16px #173c3240;-webkit-tap-highlight-color:transparent;user-select:none;touch-action:manipulation;}
.carousel-btn.prev{left:10px}.carousel-btn.next{right:10px}
.carousel-btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.carousel-meta{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:14px;color:var(--muted);font-size:.92rem;}
.carousel-count{font-weight:800;color:var(--green)}
html,body{width:100%;max-width:100%;min-width:0;overflow-x:hidden;}
@media(max-width:760px){
  nav,.page-hero,section,footer{width:100%;max-width:100%;min-width:0;}
  section.feature{width:100%;max-width:100%;padding-left:5%;padding-right:5%;}
  section.feature>div{width:100%;max-width:100%;min-width:0;}
  section.feature .menu-list,section.feature .menu-block,section.feature .heading{width:100%;max-width:100%;min-width:0;}
  .visual-menu-section{width:100%;max-width:100%;padding:55px 5%;}
  .visual-menu-section h2{font-size:2.4rem;line-height:1.12;}
  .visual-menu-section .heading p{font-size:.95rem;}
  .menu-carousel{width:100%;max-width:100%;}
  .menu-viewport{width:100%;max-width:100%;border-radius:14px;}
  .menu-track{width:700%;}
  .menu-slide{flex-basis:14.2857143%;width:14.2857143%;min-width:14.2857143%;max-width:14.2857143%;}
  .menu-slide img{width:100%;max-width:100%;height:auto;}
  .carousel-btn{width:40px;height:40px;font-size:1.2rem;}
  .carousel-meta{font-size:.84rem;flex-direction:column;gap:2px;}
}

/* v4 carousel touch/count fix */
.menu-viewport{touch-action:pan-y;}
.carousel-btn{touch-action:manipulation;}

/* v5: deterministic touch handling for iPhone Chrome/Safari */
.menu-viewport{position:relative;touch-action:pan-y;overscroll-behavior-x:none;-webkit-user-select:none;user-select:none;}
.menu-viewport img,.menu-image-trigger{-webkit-user-drag:none;}
.carousel-count{min-width:3.2em;text-align:center;display:inline-block;}

/* Floating WhatsApp order button */
.kk-whatsapp-float {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 12px 16px;
  border-radius: 999px;
  background: #25D366;
  color: #fff !important;
  text-decoration: none !important;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  box-shadow: 0 5px 18px rgba(0,0,0,.20);
  transition: transform .18s ease, box-shadow .18s ease;
}
.kk-whatsapp-float:hover { transform: translateY(-2px); box-shadow: 0 7px 22px rgba(0,0,0,.24); }
.kk-whatsapp-float:active { transform: translateY(0); }
.kk-whatsapp-float svg { width: 20px; height: 20px; flex: 0 0 20px; fill: currentColor; }
@media (max-width: 760px) {
  .kk-whatsapp-float { right: 14px; bottom: 14px; padding: 12px 14px; font-size: 13px; }
  .kk-whatsapp-float svg { width: 19px; height: 19px; flex-basis: 19px; }
}

/* WhatsApp button v4: explicit sizing and cache-busted stylesheet */
a.kk-whatsapp-float {
  position: fixed !important;
  right: 18px !important;
  bottom: 18px !important;
  z-index: 99999 !important;
  width: auto !important;
  max-width: calc(100vw - 36px) !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 44px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  padding: 12px 16px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #25D366 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  box-shadow: 0 5px 18px rgba(0,0,0,.20) !important;
}
a.kk-whatsapp-float svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  flex: 0 0 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  fill: currentColor !important;
}
a.kk-whatsapp-float span {
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font: inherit !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  color: inherit !important;
}
@media (max-width:760px) {
  a.kk-whatsapp-float {
    right: 14px !important;
    bottom: 14px !important;
    max-width: calc(100vw - 28px) !important;
    min-height: 44px !important;
    padding: 12px 14px !important;
    font-size: 13px !important;
  }
  a.kk-whatsapp-float svg {
    width: 19px !important;
    height: 19px !important;
    min-width: 19px !important;
    min-height: 19px !important;
    max-width: 19px !important;
    max-height: 19px !important;
    flex-basis: 19px !important;
  }
}
