:root{
  --cream:#fbf1df; --paper:#fffaf0; --ink:#3b2417; --terracotta:#c75c33; --terracotta-deep:#a8451f;
  --olive:#6b7a3f; --mustard:#e2a33b; --muted:rgba(59,36,23,0.65); --line:rgba(59,36,23,0.14);
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
}
*{box-sizing:inherit;margin:0;padding:0;}
html{scroll-padding-top:env(safe-area-inset-top,0px);scroll-behavior:smooth;}
body{background:var(--cream);color:var(--ink);font-family:'Mulish',sans-serif;line-height:1.55;overflow-x:hidden;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--cream:#19120c;--paper:#241a12;--ink:#f3e6d4;--muted:rgba(243,230,212,0.68);--line:rgba(243,230,212,0.14);}}
.wrap{max-width:1100px;margin:0 auto;padding:0 24px;}
.serif{font-family:'Libre Baskerville',serif;}

header{position:sticky;top:0;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(251,241,223,0.92);backdrop-filter:blur(8px);border-bottom:2px solid var(--terracotta);}
@media (prefers-color-scheme: dark){header{background:rgba(25,18,12,0.92);}}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:1100px;margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;font-family:'Libre Baskerville',serif;font-weight:700;font-size:1.2rem;color:var(--ink);text-decoration:none;}
.brand .mark{width:32px;height:32px;border-radius:50%;background:var(--terracotta);display:flex;align-items:center;justify-content:center;font-size:1rem;}
.nav-cta{display:inline-flex;align-items:center;gap:8px;background:#25D366;color:#083a1c;font-weight:700;padding:9px 18px;border-radius:100px;text-decoration:none;font-size:0.9rem;}

.hero{position:relative;padding:68px 24px 56px;overflow:hidden;}
.hero::before{content:"";position:absolute;top:-120px;right:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(199,92,51,0.18),transparent 70%);}
.hero-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.15fr 0.85fr;gap:36px;align-items:center;position:relative;z-index:1;}
@media (max-width:820px){.hero-grid{grid-template-columns:1fr;}}
.ribbon{display:inline-flex;align-items:center;gap:8px;background:rgba(199,92,51,0.12);border:1px solid var(--terracotta);color:var(--terracotta-deep);padding:6px 14px;border-radius:100px;font-weight:700;font-size:0.85rem;margin-bottom:18px;}
.hero h1{font-size:clamp(2.3rem,6vw,3.6rem);line-height:1.1;max-width:13ch;}
.hero h1 em{font-style:italic;color:var(--terracotta);}
.hero-sub{margin-top:18px;max-width:46ch;color:var(--muted);font-size:1.06rem;}
.quote{margin-top:20px;padding:16px 18px;border-left:3px solid var(--mustard);background:var(--paper);font-style:italic;font-size:0.95rem;color:var(--ink);border-radius:0 10px 10px 0;}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px;}
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:100px;font-weight:700;font-size:0.98rem;text-decoration:none;border:none;cursor:pointer;}
.btn-whatsapp{background:#25D366;color:#083a1c;box-shadow:0 10px 26px -8px rgba(37,211,102,0.5);}
.btn-outline{background:transparent;color:var(--ink);border:1.5px solid var(--line);}
.wa-icon{width:19px;height:19px;flex:none;}
.hero-badge{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px;text-align:center;}
.hero-badge .num{font-family:'Libre Baskerville',serif;font-weight:700;font-size:2.1rem;color:var(--terracotta);}
.hero-badge .lbl{color:var(--muted);font-size:0.88rem;margin-top:2px;}
.hb-row{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line);font-size:0.86rem;}
.hb-row:first-of-type{border-top:none;margin-top:16px;}
.hb-row span{color:var(--muted);}
.hb-row strong{color:var(--ink);}

.section{padding:60px 24px;}
.section-head{max-width:600px;margin:0 auto 30px;text-align:center;}
.kicker{display:inline-block;color:var(--terracotta);font-weight:700;font-size:0.8rem;letter-spacing:0.07em;text-transform:uppercase;margin-bottom:8px;}
.section h2{font-family:'Libre Baskerville',serif;font-size:clamp(1.6rem,3.8vw,2.3rem);}

.carousel-outer{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);}
.carousel-track{display:flex;gap:18px;width:max-content;animation:scroll 40s linear infinite;}
.carousel-outer:hover .carousel-track{animation-play-state:paused;}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.food{flex:0 0 220px;background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.food-img{width:100%;aspect-ratio:1/1;background:linear-gradient(150deg,#f0e0c4,#e6cfa8);display:flex;align-items:center;justify-content:center;}
.food-img img{width:100%;height:100%;object-fit:cover;}
.food-img .ph{color:var(--muted);font-size:0.75rem;text-align:center;padding:10px;}
.food-body{padding:14px 16px 16px;}
.food h3{font-size:0.95rem;font-weight:700;margin-bottom:8px;min-height:40px;}
.food-foot{display:flex;align-items:center;justify-content:space-between;}
.price{font-weight:800;color:var(--terracotta-deep);font-size:0.95rem;}
.order-mini{display:inline-flex;align-items:center;gap:5px;background:#25D366;color:#083a1c;font-weight:700;font-size:0.78rem;text-decoration:none;padding:7px 11px;border-radius:7px;}

.tabs{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-bottom:26px;}
.tab{background:var(--paper);border:1px solid var(--line);color:var(--muted);padding:8px 15px;border-radius:100px;font-size:0.83rem;font-weight:600;cursor:pointer;}
.tab.active{background:var(--terracotta);color:#fff;border-color:var(--terracotta);}

.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;}
.menu-row{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.menu-row .info{flex:1;min-width:0;}
.menu-thumb{flex:none;width:84px;height:84px;border-radius:12px;overflow:hidden;background:linear-gradient(150deg,#f0e0c4,#e6cfa8);display:flex;align-items:center;justify-content:center;}
.menu-thumb img{width:100%;height:100%;object-fit:cover;}
.menu-thumb .ph{font-size:0.6rem;padding:4px;text-align:center;color:var(--muted);}
@media (max-width:520px){.menu-thumb{width:68px;height:68px;}}
.menu-row .info h4{font-size:0.95rem;font-weight:700;}
.menu-row .info p{font-size:0.8rem;color:var(--muted);margin-top:3px;}
.menu-row .right{text-align:right;flex:none;}
.menu-row .price{display:block;margin-bottom:6px;}

.strip{margin:0 24px;padding:40px 24px;border-radius:20px;background:linear-gradient(120deg,var(--olive),#556132);}
.strip-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px;text-align:center;}
.strip-item .num{font-family:'Libre Baskerville',serif;font-weight:700;font-size:1.7rem;color:#fff;}
.strip-item .lbl{color:rgba(255,255,255,0.88);font-size:0.86rem;margin-top:2px;}

.map-wrap{display:grid;grid-template-columns:0.9fr 1.1fr;border-radius:16px;overflow:hidden;border:1px solid var(--line);}
@media (max-width:820px){.map-wrap{grid-template-columns:1fr;}}
.map-info{background:var(--paper);padding:30px;}
.map-info h3{font-family:'Libre Baskerville',serif;font-size:1.25rem;margin-bottom:16px;}
.info-row{display:flex;gap:12px;padding:11px 0;border-top:1px solid var(--line);}
.info-row:first-of-type{border-top:none;}
.info-row .ic{color:var(--terracotta);flex:none;}
.info-row strong{display:block;font-size:0.88rem;}
.info-row span{font-size:0.82rem;color:var(--muted);}
.map-frame{min-height:300px;}
.map-frame iframe{width:100%;height:100%;min-height:300px;border:0;display:block;}
.dir-btn{margin-top:16px;display:inline-flex;align-items:center;gap:8px;color:var(--terracotta-deep);font-weight:700;text-decoration:none;font-size:0.88rem;}

.final{text-align:center;padding:76px 24px;}
.final h2{font-family:'Libre Baskerville',serif;font-size:clamp(1.9rem,4.4vw,2.6rem);margin-bottom:14px;}
.final p{color:var(--muted);max-width:42ch;margin:0 auto 26px;}

footer{padding:26px 24px 40px;text-align:center;font-size:0.84rem;color:var(--muted);}

.float-wa{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:60;width:58px;height:58px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 26px -6px rgba(37,211,102,0.55);text-decoration:none;}
.float-wa svg{width:28px;height:28px;}
@media (prefers-reduced-motion: reduce){.carousel-track{animation:none;}}

/* ---- additions: admin link, hidden sections, QR, deals, polish ---- */
[hidden]{display:none !important;}
.nav-right{display:flex;align-items:center;gap:12px;}
.admin-login{display:inline-flex;align-items:center;gap:6px;color:var(--ink);text-decoration:none;font-weight:700;font-size:0.85rem;padding:8px 14px;border:1.5px solid var(--line);border-radius:100px;background:transparent;}
.admin-login:hover{border-color:var(--terracotta);color:var(--terracotta-deep);}
.brand .mark{overflow:hidden;}
.brand .mark img{width:100%;height:100%;object-fit:cover;}
a:focus-visible,button:focus-visible{outline:3px solid var(--mustard);outline-offset:2px;}
.empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:20px;}
.food .ph,.menu-thumb .ph,.deal-img .ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.tabs{max-width:900px;margin-left:auto;margin-right:auto;}
.order-mini:hover,.btn:hover{filter:brightness(0.95);}

.qr-card{max-width:760px;margin:0 auto;display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:30px 34px;}
.qr-box{width:200px;height:200px;border-radius:14px;background:#fff;border:1px solid var(--line);padding:10px;display:flex;align-items:center;justify-content:center;}
.qr-box img{width:100%;height:100%;object-fit:contain;display:block;}
.qr-box .ph{display:none;align-items:center;justify-content:center;text-align:center;font-size:0.8rem;color:#6b5a4a;}
.qr-copy h3{font-family:'Libre Baskerville',serif;font-size:1.35rem;margin-bottom:8px;}
.qr-copy p{color:var(--muted);font-size:0.95rem;margin-bottom:16px;max-width:42ch;}
@media (max-width:640px){.qr-card{grid-template-columns:1fr;justify-items:center;text-align:center;padding:26px 20px;}.qr-box{width:180px;height:180px;}}

.deal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,340px));gap:16px;justify-content:center;}
.deal{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;}
.deal.featured{border-color:var(--terracotta);box-shadow:0 14px 30px -18px rgba(199,92,51,0.6);}
.deal-img{aspect-ratio:3/2;background:linear-gradient(150deg,#f0e0c4,#e6cfa8);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.deal-img img{width:100%;height:100%;object-fit:cover;}
.deal-flag{position:absolute;top:10px;left:10px;background:var(--terracotta);color:#fff;font-size:0.72rem;font-weight:800;padding:4px 10px;border-radius:100px;}
.deal-tag{display:block;padding:14px 16px 4px;font-family:'Libre Baskerville',serif;font-weight:700;font-size:1.05rem;}
.deal ul{list-style:none;padding:0 16px;color:var(--muted);font-size:0.85rem;flex:1;}
.deal li{padding:3px 0;border-top:1px dashed var(--line);}
.deal li:first-child{border-top:none;}
.deal-foot{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 16px;}

@media (max-width:420px){
  .nav{padding:12px 16px;}
  .brand{font-size:1.02rem;}
  .nav-right{gap:8px;}
  .admin-login{padding:7px 11px;font-size:0.78rem;}
  .nav-cta{padding:8px 13px;font-size:0.82rem;}
  .section{padding:48px 16px;}
  .hero{padding:48px 16px 40px;}
  .menu-row{padding:12px;}
}

/* ---- hero photo (images/hero1.jpg, optional: the hero looks the same without it) ---- */
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.hero.has-photo::before{display:none;}
.hero.has-photo::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(100deg,rgba(251,241,223,0.96) 0%,rgba(251,241,223,0.88) 45%,rgba(251,241,223,0.55) 100%);}
.hero.has-photo .hero-badge{background:rgba(255,250,240,0.92);box-shadow:0 18px 40px -22px rgba(59,36,23,0.55);}
@media (max-width:820px){.hero.has-photo::after{background:linear-gradient(180deg,rgba(251,241,223,0.94),rgba(251,241,223,0.84));}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .hero.has-photo::after{background:linear-gradient(100deg,rgba(25,18,12,0.95) 0%,rgba(25,18,12,0.84) 45%,rgba(25,18,12,0.5) 100%);}
:root:not([data-theme="light"]) .hero.has-photo .hero-badge{background:rgba(36,26,18,0.9);}}
@media (prefers-color-scheme: dark) and (max-width:820px){:root:not([data-theme="light"]) .hero.has-photo::after{background:linear-gradient(180deg,rgba(25,18,12,0.92),rgba(25,18,12,0.82));}}
