
:root{
  --bg:#F2EDE2;
  --ink:#1C1C1C;
  --muted:#6E675D;
  --terracotta:#C24B2A;
  --mezcal:#5A6B4A;
  --amber:#E09A2D;
  --paper:#F7F2E9;
  --paper-2:#EAE2D5;
  --line:rgba(90,107,74,.54);
  --soft-line:rgba(28,28,28,.12);
  --max:1160px;
  --shadow:0 18px 45px rgba(28,28,28,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at 10% 5%,rgba(194,75,42,.07),transparent 28%),
    radial-gradient(circle at 90% 14%,rgba(90,107,74,.08),transparent 31%),
    repeating-linear-gradient(0deg,rgba(28,28,28,.015) 0 1px,transparent 1px 4px),
    var(--bg);
  font-family:"Roboto Slab",Georgia,serif;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{width:min(var(--max),calc(100% - 34px));margin:auto}

/* Header */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(242,237,226,.94);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--soft-line);
  box-shadow:0 5px 24px rgba(28,28,28,.04);
}
.header-inner{height:72px;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:10px;min-width:max-content}
.brand-mark{font-size:23px}
.brand-name{
  display:block;
  font:800 25px/.88 "Barlow Condensed",Impact,sans-serif;
  letter-spacing:1.1px;text-transform:uppercase
}
.brand-sub{
  display:block;margin-top:5px;color:var(--terracotta);
  font:800 10px "Barlow Condensed",sans-serif;
  letter-spacing:3px;text-transform:uppercase
}
.header-note{
  margin-left:auto;color:var(--muted);
  font:700 12px "Barlow Condensed",sans-serif;
  text-transform:uppercase;letter-spacing:.7px
}
.lang-switch{
  display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:rgba(255,255,255,.22)
}
.lang-switch a{
  min-width:46px;padding:8px 11px;text-align:center;
  font:800 12px "Barlow Condensed",sans-serif;text-transform:uppercase
}
.lang-switch a[aria-current="page"]{background:var(--terracotta);color:#fff}
.lang-switch a:not([aria-current="page"]):hover{background:var(--paper-2)}

/* Hero */
.hero{padding:58px 0 46px;border-bottom:1px solid var(--soft-line)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:52px}
.eyebrow{
  color:var(--mezcal);font:800 13px "Barlow Condensed",sans-serif;
  letter-spacing:3px;text-transform:uppercase
}
.hero h1{
  margin:9px 0 0;font:400 clamp(68px,9vw,118px)/.9 "Anton",Impact,sans-serif;
  text-transform:uppercase;letter-spacing:1px
}
.hero h1 span{
  display:block;margin-top:18px;color:var(--terracotta);
  font:800 clamp(25px,3vw,43px) "Barlow Condensed",sans-serif;
  letter-spacing:7px
}
.hero-copy{max-width:630px;margin:24px 0 0;color:var(--muted);font-size:14px;line-height:1.75}

.hero-art{
  position:relative;
  min-height:520px;
}
.hero-photo{
  position:absolute;
  inset:0;
  border-radius:52% 52% 14px 14px;
  overflow:hidden;
  background:#1C1C1C;
  border:0;
  box-shadow:0 24px 55px rgba(28,28,28,.16);
}
.hero-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:saturate(1.08) contrast(1.04);
}
.hero-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.12));
  pointer-events:none;
}
.hero-badge{
  position:absolute;
  right:-6px;
  bottom:18px;
  width:178px;
  height:178px;
  border-radius:50%;
  background:#E09A2D;
  border:8px solid #F2EDE2;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#1C1C1C;
  box-shadow:0 16px 36px rgba(28,28,28,.16);
  z-index:2;
}
.hero-badge:before{
  content:"";
  position:absolute;
  inset:14px;
  border:2px solid rgba(242,237,226,.95);
  border-radius:50%;
}
.hero-badge-inner{
  position:relative;
  z-index:1;
  width:78%;
}
.hero-badge-main{
  display:block;
  font:800 19px/1.05 "Barlow Condensed",sans-serif;
  text-transform:uppercase;
  letter-spacing:.35px;
  transform:rotate(-7deg);
}
.hero-badge-sub{
  display:block;
  margin-top:34px;
  font:800 12px/1 "Barlow Condensed",sans-serif;
  text-transform:uppercase;
  letter-spacing:3px;
  transform:rotate(-7deg);
}

/* Anchor nav - no dropdowns */
/* Anchor nav - no dropdowns */
.menu-nav{
  position:sticky;top:72px;z-index:40;background:rgba(234,226,213,.96);
  border-bottom:1px solid var(--soft-line)
}
.menu-nav-inner{display:flex;gap:2px;overflow:auto;scrollbar-width:none}
.menu-nav-inner::-webkit-scrollbar{display:none}
.menu-nav a{
  flex:0 0 auto;padding:13px 12px;border-bottom:3px solid transparent;
  color:#625B51;font:800 12px "Barlow Condensed",sans-serif;
  letter-spacing:.8px;text-transform:uppercase;white-space:nowrap
}
.menu-nav a:hover{color:var(--terracotta);border-bottom-color:var(--amber)}

/* Static sections */
.menu-section{
  padding:66px 0 6px;
  scroll-margin-top:125px;
}
.section-head{
  display:grid;grid-template-columns:200px minmax(0,1fr);gap:0;
  border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--paper);
  box-shadow:0 8px 25px rgba(28,28,28,.035)
}
.section-image{min-height:160px;background:#1c1c1c}
.section-image img{width:100%;height:100%;object-fit:cover}
.section-title{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:24px 28px;border-left:4px solid var(--terracotta);
  background:linear-gradient(90deg,#F8F3EA,#EAE2D5)
}
.section-title small{
  display:block;margin-bottom:5px;color:var(--terracotta);
  font:800 11px "Barlow Condensed",sans-serif;letter-spacing:2px;text-transform:uppercase
}
.section-title h2{
  margin:0;font:400 clamp(38px,5vw,54px)/.95 "Anton",Impact,sans-serif;
  text-transform:uppercase;letter-spacing:.5px
}
.section-title p{margin:8px 0 0;max-width:660px;color:var(--muted);font-size:12px;line-height:1.55}
.section-note{
  max-width:220px;text-align:right;color:var(--mezcal);
  font:800 12px "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.8px
}

/* Items always visible */
.menu-list{
  border:1px solid var(--line);border-top:0;background:rgba(255,255,255,.23);
  border-radius:0 0 10px 10px;overflow:hidden
}
.menu-item{
  display:grid;grid-template-columns:minmax(180px,.95fr) minmax(260px,1.6fr) 90px;
  align-items:start;gap:20px;padding:18px 20px;border-top:1px dashed var(--soft-line)
}
.menu-item:first-child{border-top:0}
.menu-item-name{
  font:800 21px "Barlow Condensed",sans-serif;letter-spacing:.35px;text-transform:uppercase
}
.menu-item-desc{color:var(--muted);font-size:12px;line-height:1.55}
.menu-item-price{
  text-align:right;color:var(--terracotta);
  font:800 24px/1 "Barlow Condensed",sans-serif;white-space:nowrap
}
.section-footnote{
  padding:11px 18px;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;
  background:var(--paper-2);color:var(--muted);font-size:11px;line-height:1.5
}

/* Packages */
.package-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
  margin-top:0
}
.package-card{
  overflow:hidden;border:1px solid var(--line);border-radius:10px;
  background:var(--paper);box-shadow:0 10px 28px rgba(28,28,28,.055)
}
.package-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.package-body{padding:16px 17px 18px}
.package-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.package-card h3{
  margin:0;font:400 27px/1 "Anton",Impact,sans-serif;text-transform:uppercase
}
.package-price{color:var(--terracotta);font:800 25px "Barlow Condensed",sans-serif}
.package-card p{margin:9px 0 0;color:var(--muted);font-size:12px;line-height:1.55}

/* Footer */
.footer{margin-top:76px;padding:34px 0 44px;border-top:1px solid var(--soft-line);background:#E8E0D2}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:30px}
.footer-brand{font:400 40px/.95 "Anton",Impact,sans-serif;text-transform:uppercase}
.footer-brand span{
  display:block;margin-top:9px;color:var(--terracotta);
  font:800 14px "Barlow Condensed",sans-serif;letter-spacing:4px
}
.footer p{margin:0;text-align:right;color:var(--muted);font-size:11px;line-height:1.65}

@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .hero-art{min-height:430px}
  .hero-badge{width:154px;height:154px;right:-4px;bottom:10px}
  .hero-badge-main{font-size:17px}
  .hero-badge-sub{margin-top:28px;font-size:11px}
  .package-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .wrap{width:min(var(--max),calc(100% - 20px))}
  .header-inner{height:64px;gap:10px}
  .brand-name{font-size:21px}.brand-sub{display:none}.header-note{display:none}
  .menu-nav{top:64px}
  .hero{padding:38px 0 34px}
  .hero h1{font-size:62px}.hero h1 span{font-size:25px;letter-spacing:5px}
  .hero-art{min-height:320px}
  .hero-photo{border-radius:52% 52% 12px 12px}
  .hero-badge{
    width:124px;
    height:124px;
    right:-2px;
    bottom:8px;
    border-width:6px;
  }
  .hero-badge:before{inset:10px}
  .hero-badge-main{font-size:13px}
  .hero-badge-sub{margin-top:20px;font-size:9px;letter-spacing:2px}
  .menu-section{padding-top:46px;scroll-margin-top:110px}
  .section-head{grid-template-columns:1fr}
  .section-image{height:180px}
  .section-title{border-left:0;border-top:4px solid var(--terracotta);padding:19px 17px;align-items:flex-start}
  .section-title h2{font-size:38px}.section-note{display:none}
  .menu-item{grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;padding:15px}
  .menu-item-desc{grid-column:1 / -1;grid-row:2}
  .menu-item-price{grid-column:2;grid-row:1;font-size:22px}
  .package-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}.footer p{text-align:left}
}


/* Limonadas sin precio confirmado */
.menu-item-price.pending{
  color:var(--muted);
  font-size:22px;
}

/* Salsas: galería informativa, sin precios */
.salsa-gallery{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:14px;
}
.salsa-card{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--paper);
  box-shadow:0 10px 28px rgba(28,28,28,.045);
}
.salsa-card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}
.salsa-card-body{padding:15px 17px 18px}
.salsa-card h3{
  margin:0;
  font:800 22px/1 "Barlow Condensed",sans-serif;
  text-transform:uppercase;
  letter-spacing:.35px;
}
.salsa-card p{
  margin:7px 0 0;
  color:var(--muted);
  font-size:11px;
  line-height:1.55;
}
@media(max-width:900px){
  .salsa-gallery{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .salsa-gallery{grid-template-columns:1fr}
}


/* ============================================================
   HERO EXACTO REPLICADO DEL INDEX ORIGINAL COMPARTIDO
   ============================================================ */
.hero{
  padding:58px 0 54px;
  border-bottom:1px solid var(--soft-line);
  position:relative;
  overflow:hidden;
}
.hero-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  align-items:center;
  gap:56px;
}
.eyebrow{
  color:var(--mezcal);
  font:800 13px "Barlow Condensed",sans-serif;
  letter-spacing:3px;
  text-transform:uppercase;
}
.hero h1{
  font-family:"Anton",Impact,sans-serif;
  font-size:clamp(66px,9vw,128px);
  line-height:1;
  text-transform:uppercase;
  margin:11px 0 0;
  letter-spacing:.8px;
}
.hero h1 span{
  display:block;
  color:var(--terracotta);
  font:800 clamp(26px,3.4vw,46px) "Barlow Condensed",sans-serif;
  letter-spacing:8px;
  margin-top:22px;
}
.menu-intro{
  margin-top:26px;
  padding:12px 15px;
  border-left:4px solid var(--amber);
  background:rgba(255,255,255,.27);
  color:var(--muted);
  font-size:12px;
  line-height:1.6;
  max-width:620px;
}

.hero-art{
  position:relative;
  min-height:500px;
}
.hero-photo{
  position:absolute;
  inset:16px 0 0 24px;
  border-radius:50% 50% 14px 50%;
  overflow:hidden;
  border:1px solid rgba(224,154,45,.38);
  box-shadow:var(--shadow);
  background:#272821;
}
.hero-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  filter:saturate(1.08) contrast(1.04);
}
.hero-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,transparent 38%,rgba(28,28,28,.08) 66%,rgba(28,28,28,.34));
  pointer-events:none;
}
.hero-stamp{
  position:absolute;
  right:-4px;
  bottom:22px;
  width:176px;
  height:176px;
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  padding:18px;
  background:#E09A2D;
  color:#1C1C1C;
  border:9px solid #F2EDE2;
  box-shadow:0 0 0 1px #E09A2D,var(--shadow);
  font:800 20px/1.05 "Barlow Condensed",sans-serif;
  text-transform:uppercase;
  letter-spacing:1px;
  transform:rotate(-7deg);
  z-index:2;
}
.hero-stamp small{
  display:block;
  font-size:12px;
  letter-spacing:2px;
  margin-top:7px;
}

@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .hero-art{min-height:380px}
  .hero-photo{inset:0}
  .hero-stamp{
    right:16px;
    bottom:-4px;
    width:145px;
    height:145px;
    font-size:17px;
  }
}
@media(max-width:680px){
  .hero{padding:38px 0 38px}
  .hero h1{font-size:64px}
  .hero h1 span{
    font-size:27px;
    letter-spacing:5px;
    margin-top:17px;
  }
  .hero-art{min-height:300px}
  .hero-stamp{
    width:118px;
    height:118px;
    font-size:14px;
    border-width:6px;
  }
}
