:root{--bg:#050805;--green:#1fb65b;--green2:#0e7c3b;--gold:#d8ad4e;--text:#f8f7ed;--muted:#bec8bd;--line:rgba(255,255,255,.12);--panel:rgba(255,255,255,.055)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at top,#0d1d11,#050805 42%);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}
.nav{position:fixed;inset:0 0 auto 0;height:78px;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;background:rgba(5,8,5,.72);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;font-weight:950;letter-spacing:.08em;line-height:.9}.brand small{color:var(--gold);font-size:.72rem}.brand-mark{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--green),var(--gold));color:#050705;font-weight:1000}nav{display:flex;gap:22px}nav a{color:var(--muted);font-weight:850}nav a:hover{color:var(--gold)}.lang{border:1px solid var(--line);background:#fff;color:#071008;border-radius:999px;padding:10px 16px;font-weight:900;cursor:pointer}
.hero{min-height:100vh;position:relative;display:grid;grid-template-columns:1fr 350px;align-items:end;gap:30px;padding:140px 6vw 82px;background-image:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.47),rgba(0,0,0,.18)),var(--hero);background-size:cover;background-position:center}.shade{position:absolute;inset:0;background:radial-gradient(circle at 23% 38%,rgba(31,182,91,.24),transparent 40%),linear-gradient(0deg,#050805,transparent 45%)}.hero-content,.hero-card{position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-size:.85rem;font-weight:950}h1{font-size:clamp(3.4rem,9vw,8.8rem);line-height:.82;margin:10px 0;font-weight:1000;text-shadow:0 22px 65px #000}.hero-sub{font-size:clamp(1rem,2vw,1.45rem);color:#eef4ee;max-width:760px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:15px 25px;font-weight:950;transition:.25s transform}.btn:hover{transform:translateY(-3px)}.primary{background:linear-gradient(135deg,var(--green),var(--green2));color:white;box-shadow:0 12px 35px rgba(31,182,91,.28)}.secondary{border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.08)}
.hero-card{align-self:end;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(16px);border-radius:28px;padding:30px}.hero-card span,.hero-card small{color:var(--muted);display:block}.hero-card strong{font-size:3.2rem;color:var(--gold)}
.section{padding:95px 6vw}.section-title{text-align:center;max-width:900px;margin:0 auto 45px}.section-title h2,.story-text h2,.location h2{font-size:clamp(2.1rem,5vw,4.05rem);line-height:1;margin:10px 0}.muted{color:var(--muted)}
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.feature{border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border-radius:28px;padding:27px;box-shadow:0 20px 65px rgba(0,0,0,.18)}.feature span{font-size:2.2rem}.feature p,.dish-info p,.story-text p,.location p,footer p{color:var(--muted);line-height:1.6}
.tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:34px}.tab{border:1px solid var(--line);background:rgba(255,255,255,.06);color:white;border-radius:999px;padding:12px 18px;font-weight:950;cursor:pointer}.tab.active{background:var(--gold);color:#111}
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.dish-card{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.035));border:1px solid var(--line);border-radius:30px;overflow:hidden;box-shadow:0 26px 70px rgba(0,0,0,.3);transition:.28s transform,.28s border-color}.dish-card:hover{transform:translateY(-7px);border-color:rgba(216,173,78,.45)}.dish-photo{position:relative;height:265px;overflow:hidden;background:#111}.dish-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s transform}.dish-card:hover .dish-photo img{transform:scale(1.06)}.tag{position:absolute;left:16px;top:16px;border-radius:999px;background:rgba(216,173,78,.94);color:#111;padding:8px 13px;font-weight:1000;font-size:.78rem;box-shadow:0 12px 30px rgba(0,0,0,.25)}.dish-info{padding:25px}.dish-title-row{display:flex;gap:18px;align-items:flex-start;justify-content:space-between}.dish-title-row h3{margin:0;font-size:1.35rem}.dish-title-row strong{color:var(--gold);font-size:1.24rem;white-space:nowrap}.order-link{display:inline-block;margin-top:14px;color:#071008;background:var(--gold);padding:10px 16px;border-radius:999px;font-weight:950}
.hours-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:26px}.hours-card,.service-card,.location-info,.map-wrap{border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border-radius:30px;padding:30px}.hours-card h3,.service-card h3{font-size:1.8rem;margin:0 0 20px}.hours-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08)}.hours-row span{color:var(--muted)}.hours-card small{display:block;color:var(--gold);margin-top:16px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.service-grid span{border:1px solid rgba(216,173,78,.25);border-radius:18px;padding:15px;color:#fff;background:rgba(216,173,78,.06)}
.peru-section,.location{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.peru-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.peru-pills span{border:1px solid rgba(216,173,78,.28);color:var(--gold);padding:10px 13px;border-radius:999px;font-weight:800}.peru-map-card{position:relative;min-height:550px;border:1px solid var(--line);border-radius:34px;background:radial-gradient(circle at center,rgba(31,182,91,.18),rgba(255,255,255,.035));display:grid;place-items:center;overflow:hidden}.map-glow{position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(216,173,78,.15);filter:blur(50px)}.peru-svg{width:min(72%,390px);z-index:2;filter:drop-shadow(0 28px 60px rgba(31,182,91,.33))}.peru-svg text{font-size:18px;font-weight:1000;fill:white}.map-caption{position:absolute;left:26px;right:26px;bottom:24px;text-align:center;z-index:3}.map-caption h3{font-size:2rem;margin:0 0 8px}.map-caption p{color:var(--muted)}
.gallery{columns:4 245px;column-gap:18px}.gallery img{width:100%;break-inside:avoid;margin:0 0 18px;border-radius:24px;border:1px solid var(--line);transition:.3s}.gallery img:hover{transform:scale(1.02)}
.map-wrap{padding:0;overflow:hidden;min-height:430px}.map-wrap iframe{width:100%;height:430px;border:0}.floating-call{position:fixed;right:22px;bottom:22px;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--green),var(--gold));z-index:80;font-size:1.65rem;box-shadow:0 14px 40px rgba(31,182,91,.38)}footer{text-align:center;padding:45px 6vw;border-top:1px solid var(--line);background:#050705}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.hero{grid-template-columns:1fr;padding-top:120px}nav{display:none}.features,.menu-grid,.peru-section,.location,.hours-layout{grid-template-columns:1fr}.hero-card{max-width:370px}.section{padding:70px 5vw}.dish-photo{height:235px}.service-grid{grid-template-columns:1fr}}


/* V6 professional upgrades */
.open-status{margin-top:18px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:9px 13px;font-weight:950;color:#fff;background:rgba(255,255,255,.08)}
.open-status.open{background:rgba(31,182,91,.18);border-color:rgba(31,182,91,.45)}
.open-status.closed{background:rgba(220,70,70,.16);border-color:rgba(220,70,70,.42)}
.open-status::before{content:"";width:10px;height:10px;border-radius:50%;background:currentColor;box-shadow:0 0 18px currentColor}
.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}
.reviews-section{background:radial-gradient(circle at 50% 0%,rgba(216,173,78,.09),transparent 46%)}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.review{border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border-radius:28px;padding:28px;box-shadow:0 22px 60px rgba(0,0,0,.22)}
.review span{display:block;color:var(--gold);letter-spacing:.12em;font-weight:1000;margin-bottom:14px}
.review p{color:var(--muted);line-height:1.65}
.review strong{color:#fff}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;z-index:200;padding:24px}
.lightbox.show{display:flex}
.lightbox img{max-width:min(1100px,94vw);max-height:88vh;border-radius:24px;border:1px solid rgba(255,255,255,.2);box-shadow:0 30px 100px rgba(0,0,0,.55)}
.lightbox-close{position:absolute;top:20px;right:24px;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:white;color:#111;font-size:34px;line-height:1;cursor:pointer}
.gallery img{cursor:pointer}
@media(max-width:980px){.reviews-grid{grid-template-columns:1fr}.contact-actions{flex-direction:column}.contact-actions .btn{width:100%}}


/* V7: official external online menu, no internal order buttons */
.btn.gold{
  background:linear-gradient(135deg,var(--gold),#fff0b5);
  color:#120f05;
  box-shadow:0 12px 35px rgba(216,173,78,.25);
}
.online-section{
  padding-top:35px;
  padding-bottom:35px;
}
.online-card{
  border:1px solid rgba(216,173,78,.32);
  background:linear-gradient(135deg,rgba(216,173,78,.14),rgba(31,182,91,.08));
  border-radius:32px;
  padding:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  box-shadow:0 24px 70px rgba(0,0,0,.22);
}
.online-card h2{
  margin:8px 0;
  font-size:clamp(1.7rem,3vw,3rem);
}
.online-card p{
  color:var(--muted);
  line-height:1.6;
  margin-bottom:0;
}
@media(max-width:900px){
  .online-card{flex-direction:column;align-items:flex-start}
  .online-card .btn{width:100%}
}


/* V8 premium online menu message */
.online-section{
  padding-top:42px;
  padding-bottom:52px;
}
.premium-order-card{
  position:relative;
  overflow:hidden;
  max-width:1120px;
  margin:0 auto;
  border:1px solid rgba(216,173,78,.42);
  background:
    radial-gradient(circle at 15% 20%, rgba(216,173,78,.24), transparent 32%),
    radial-gradient(circle at 86% 80%, rgba(31,182,91,.22), transparent 38%),
    linear-gradient(135deg, rgba(255,255,255,.105), rgba(255,255,255,.035));
  border-radius:36px;
  padding:42px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:28px;
  box-shadow:0 32px 95px rgba(0,0,0,.34);
}
.premium-order-card::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:35px;
  border:1px solid rgba(255,255,255,.08);
  pointer-events:none;
}
.order-icon{
  width:86px;
  height:86px;
  display:grid;
  place-items:center;
  border-radius:28px;
  background:linear-gradient(135deg, rgba(216,173,78,.95), rgba(255,240,181,.95));
  color:#120f05;
  font-size:2.5rem;
  box-shadow:0 18px 45px rgba(216,173,78,.24);
}
.online-copy h2{
  margin:8px 0 12px;
  font-size:clamp(1.75rem,3.3vw,3.3rem);
  line-height:1.02;
}
.online-copy p{
  color:var(--muted);
  line-height:1.68;
  max-width:720px;
  margin:0;
  font-size:1.03rem;
}
.online-main-btn{
  min-width:170px;
  position:relative;
  overflow:hidden;
}
.online-main-btn::after{
  content:"";
  position:absolute;
  top:0;
  left:-120%;
  width:80%;
  height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.45), transparent);
  transform:skewX(-20deg);
  transition:.65s;
}
.online-main-btn:hover::after{
  left:130%;
}
@media(max-width:920px){
  .premium-order-card{
    grid-template-columns:1fr;
    text-align:center;
    justify-items:center;
    padding:32px 24px;
  }
  .online-copy p{max-width:100%}
  .online-main-btn{width:100%}
}
