/* =========================================================
   LA CUMBRE DEL BURRITO — styles.css
   Sistema de diseño:
   Negro cálido, café oscuro, café, blanco cálido,
   acento chile (CTA principal) y dorado tostado (Supremo).
   ========================================================= */

:root{
  --black:      #17110D;
  --espresso:   #2A1B12;
  --coffee:     #5C3A24;
  --coffee-lt:  #8A5A34;
  --cream:      #F6EEE2;
  --cream-dim:  #EBE0CF;
  --chile:      #B23A18;
  --chile-dark: #8C2C10;
  --gold:       #D9A441;
  --gold-dark:  #B4832F;

  --font-display: 'Big Shoulders Display', sans-serif;
  --font-body: 'Work Sans', sans-serif;

  --radius-sm: 4px;
  --container: 1180px;
  --gutter: clamp(20px, 5vw, 64px);

  --ease: cubic-bezier(.22,.61,.36,1);
}

*, *::before, *::after{ box-sizing: border-box; }

html{
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior: auto; }
  *, *::before, *::after{
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

body{
  margin: 0;
  background: var(--cream);
  color: var(--black);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img{ max-width: 100%; display: block; }

a{ color: inherit; text-decoration: none; }

:focus-visible{
  outline: 3px solid var(--gold);
  outline-offset: 2px;
}

.section-inner{
  max-width: var(--container);
  margin: 0 auto;
  padding: clamp(64px, 10vw, 120px) var(--gutter);
}

.eyebrow{
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.85rem;
  letter-spacing: 0.04em;
  color: var(--chile);
  margin: 0 0 12px;
}
.eyebrow--light{ color: var(--gold); }
.eyebrow--gold{ color: var(--gold); }

.section-title{
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(2.2rem, 5vw, 3.4rem);
  line-height: 0.98;
  letter-spacing: 0.01em;
  margin: 0 0 24px;
  color: var(--black);
  max-width: 14ch;
}
.section-title--light{ color: var(--cream); }

/* ---------------------------------------------------------
   Botones
   --------------------------------------------------------- */
.btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 1rem;
  padding: 14px 28px;
  border-radius: var(--radius-sm);
  border: 2px solid transparent;
  cursor: pointer;
  transition: transform .18s var(--ease), box-shadow .18s var(--ease), background-color .18s var(--ease);
  white-space: nowrap;
}
.btn:hover{ transform: translateY(-2px); }
.btn:active{ transform: translateY(0); }

.btn--large{ padding: 17px 34px; font-size: 1.05rem; }
.btn--small{ padding: 10px 18px; font-size: 0.9rem; }

.btn--chile{
  background: var(--chile);
  color: var(--cream);
}
.btn--chile:hover{ background: var(--chile-dark); box-shadow: 0 10px 24px -8px rgba(178,58,24,.55); }

.btn--gold{
  background: var(--gold);
  color: var(--black);
}
.btn--gold:hover{ background: var(--gold-dark); box-shadow: 0 10px 24px -8px rgba(217,164,65,.5); }

.btn--ghost{
  background: transparent;
  border-color: rgba(246,238,226,.55);
  color: var(--cream);
}
.btn--ghost:hover{ border-color: var(--cream); background: rgba(246,238,226,.08); }

.btn--outline{
  background: transparent;
  border-color: var(--espresso);
  color: var(--espresso);
}
.btn--outline:hover{ background: var(--espresso); color: var(--cream); }

/* ---------------------------------------------------------
   Reveal on scroll
   --------------------------------------------------------- */
.reveal{
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .7s var(--ease), transform .7s var(--ease);
}
.reveal.is-visible{
  opacity: 1;
  transform: translateY(0);
}

/* ---------------------------------------------------------
   Navegación
   --------------------------------------------------------- */
.nav{
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  background: rgba(23,17,13,0);
  transition: background-color .3s var(--ease), box-shadow .3s var(--ease);
}
.nav.is-scrolled{
  background: rgba(23,17,13,.94);
  backdrop-filter: blur(6px);
  box-shadow: 0 2px 20px rgba(0,0,0,.25);
}
.nav__inner{
  max-width: var(--container);
  margin: 0 auto;
  padding: 16px var(--gutter);
  display: flex;
  align-items: center;
  gap: 24px;
}
.nav__brand{
  display: flex;
  align-items: center;
  gap: 10px;
  margin-right: auto;
}
.nav__brand-mark{
  width: 44px; height: 44px;
  object-fit: contain;
  flex: none;
  display: block;
}
.nav__brand-text{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.05rem;
  line-height: 1;
  color: var(--cream);
}
.nav__brand-text em{
  display: block;
  font-style: normal;
  font-weight: 600;
  font-size: 0.7rem;
  color: var(--gold);
  margin-top: 2px;
}
.nav__links{
  display: flex;
  gap: 28px;
}
.nav__links a{
  color: var(--cream-dim);
  font-weight: 500;
  font-size: 0.95rem;
  position: relative;
  padding: 4px 0;
}
.nav__links a:hover{ color: var(--cream); }
.nav__links a::after{
  content: '';
  position: absolute;
  left: 0; bottom: -2px;
  width: 0; height: 2px;
  background: var(--chile);
  transition: width .25s var(--ease);
}
.nav__links a:hover::after{ width: 100%; }

.nav__toggle{
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 40px; height: 40px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
}
.nav__toggle span{
  display: block;
  height: 2px;
  background: var(--cream);
  border-radius: 2px;
  transition: transform .25s var(--ease), opacity .25s var(--ease);
}

/* Selector de idioma */
.lang-switch{
  position: relative;
  flex: none;
}
.lang-switch__current{
  display: flex;
  align-items: center;
  gap: 4px;
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 0.8rem;
  letter-spacing: 0.04em;
  color: var(--cream);
  background: rgba(246,238,226,.1);
  border: 1px solid rgba(246,238,226,.3);
  border-radius: 999px;
  padding: 7px 14px;
  cursor: pointer;
  transition: background-color .2s var(--ease), border-color .2s var(--ease);
}
.lang-switch__current::after{
  content: '▾';
  font-size: 0.7em;
}
.lang-switch__current:hover{
  background: rgba(246,238,226,.18);
  border-color: var(--cream);
}
.lang-switch__menu{
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 150px;
  background: #FFFFFF;
  border-radius: var(--radius-sm);
  box-shadow: 0 16px 34px -12px rgba(0,0,0,.35);
  list-style: none;
  margin: 0;
  padding: 6px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity .18s var(--ease), transform .18s var(--ease), visibility .18s;
  z-index: 200;
}
.lang-switch.is-open .lang-switch__menu{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.lang-switch__menu li{
  padding: 9px 12px;
  border-radius: 6px;
  font-size: 0.92rem;
  color: var(--espresso);
  cursor: pointer;
  font-weight: 500;
}
.lang-switch__menu li:hover{ background: var(--cream-dim); }
.lang-switch__menu li.is-active{
  background: var(--chile);
  color: var(--cream);
  font-weight: 700;
}

@media (max-width: 860px){
  .nav__links{
    position: fixed;
    top: 0; right: 0;
    height: 100vh;
    width: min(78vw, 320px);
    background: var(--black);
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 40px var(--gutter);
    gap: 26px;
    transform: translateX(100%);
    transition: transform .35s var(--ease);
  }
  .nav__links.is-open{ transform: translateX(0); }
  .nav__toggle{ display: flex; order: 4; }
  .lang-switch{ order: 2; }
  .nav .btn--small{ order: 3; }
}

/* ---------------------------------------------------------
   Hero
   --------------------------------------------------------- */
.hero{
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  background: var(--black);
}
.hero__bg{
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(23,17,13,.55) 0%, rgba(23,17,13,.75) 55%, var(--black) 100%),
    radial-gradient(120% 90% at 15% 20%, rgba(178,58,24,.28), transparent 55%),
    linear-gradient(135deg, #241811 0%, #17110D 60%);
}
.hero__content{
  position: relative;
  z-index: 2;
  max-width: var(--container);
  margin: 0 auto;
  width: 100%;
  padding: 160px var(--gutter) 96px;
}
.hero__eyebrow{
  color: var(--gold);
  font-weight: 600;
  letter-spacing: 0.06em;
  margin: 0 0 18px;
  font-size: 0.95rem;
}
.hero__status{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(246,238,226,.08);
  border: 1px solid rgba(246,238,226,.22);
  border-radius: 999px;
  padding: 7px 14px 7px 10px;
  margin: 0 0 22px;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--cream-dim);
}
.hero__status-dot{
  width: 9px; height: 9px;
  border-radius: 50%;
  background: #8A7A68;
  flex: none;
}
.hero__status.is-open .hero__status-dot{
  background: #3FBF63;
  box-shadow: 0 0 0 0 rgba(63,191,99,.6);
  animation: statusPulse 2s infinite;
}
.hero__status.is-open{ color: #BEEBC9; border-color: rgba(63,191,99,.35); }
.hero__status.is-closed .hero__status-dot{ background: #E05A4E; }
.hero__status.is-closed{ color: #F3C9C4; border-color: rgba(224,90,78,.35); }
@keyframes statusPulse{
  0%{ box-shadow: 0 0 0 0 rgba(63,191,99,.55); }
  70%{ box-shadow: 0 0 0 7px rgba(63,191,99,0); }
  100%{ box-shadow: 0 0 0 0 rgba(63,191,99,0); }
}
.hero__title{
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(3.4rem, 11vw, 7.5rem);
  line-height: 0.88;
  color: var(--cream);
  margin: 0 0 28px;
  max-width: 12ch;
}
.hero__tagline{
  color: var(--cream-dim);
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  max-width: 46ch;
  margin: 0 0 36px;
}
.hero__actions{
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.hero__scroll{
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  width: 26px; height: 42px;
  border: 2px solid rgba(246,238,226,.5);
  border-radius: 20px;
}
.hero__scroll span{
  position: absolute;
  top: 8px; left: 50%;
  width: 4px; height: 8px;
  background: var(--gold);
  border-radius: 2px;
  transform: translateX(-50%);
  animation: scrollDot 1.8s infinite;
}
@keyframes scrollDot{
  0%{ opacity: 1; top: 8px; }
  70%{ opacity: 0; top: 22px; }
  100%{ opacity: 0; top: 8px; }
}

/* ---------------------------------------------------------
   Conócenos
   --------------------------------------------------------- */
.conocenos{ background: var(--cream); }
.conocenos__grid{
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: clamp(32px, 6vw, 72px);
  align-items: center;
}
.conocenos__media-frame{
  aspect-ratio: 4 / 5;
  background: linear-gradient(155deg, var(--coffee) 0%, var(--espresso) 100%);
  border-radius: var(--radius-sm);
  position: relative;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 100% 88%, 88% 100%, 0 100%);
}
.conocenos__media-frame img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.conocenos__copy p{
  color: #3A2E24;
  max-width: 54ch;
  margin: 0 0 18px;
}
.conocenos__copy p:last-child{ margin-bottom: 0; }

@media (max-width: 780px){
  .conocenos__grid{ grid-template-columns: 1fr; }
}

/* ---------------------------------------------------------
   Filosofía
   --------------------------------------------------------- */
/* ---------------------------------------------------------
   Nuestro espacio (galería del local)
   --------------------------------------------------------- */
.espacio{ background: var(--espresso); }
.espacio .section-title{ margin-bottom: 40px; max-width: 20ch; }

.espacio__grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 220px;
  gap: 14px;
}
.espacio__item{
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: #0A0705;
}
.espacio__item img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s var(--ease);
}
.espacio__item:hover img{ transform: scale(1.05); }

.espacio__item--a{ grid-column: 1 / 2; grid-row: 1 / 2; }
.espacio__item--b{ grid-column: 2 / 3; grid-row: 1 / 2; }
.espacio__item--c{ grid-column: 3 / 4; grid-row: 1 / 3; }
.espacio__item--d{ grid-column: 1 / 3; grid-row: 2 / 3; }

@media (max-width: 780px){
  .espacio__grid{
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 170px;
  }
  .espacio__item--a{ grid-column: 1 / 2; grid-row: 1 / 2; }
  .espacio__item--b{ grid-column: 2 / 3; grid-row: 1 / 2; }
  .espacio__item--c{ grid-column: 1 / 2; grid-row: 2 / 3; }
  .espacio__item--d{ grid-column: 2 / 3; grid-row: 2 / 3; }
}
@media (max-width: 520px){
  .espacio__grid{
    grid-template-columns: 1fr;
    grid-auto-rows: 220px;
  }
  .espacio__item--a, .espacio__item--b, .espacio__item--c, .espacio__item--d{
    grid-column: 1 / 2;
    grid-row: auto;
  }
}

.filosofia{ background: var(--black); }
.filosofia__grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  background: rgba(246,238,226,.14);
  margin-top: 48px;
}
.filosofia__card{
  background: var(--black);
  padding: clamp(28px, 4vw, 44px) clamp(24px, 3vw, 36px);
}
.filosofia__card h3{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.6rem;
  color: var(--gold);
  margin: 0 0 16px;
}
.filosofia__card p{
  color: var(--cream-dim);
  margin: 0;
}
.valores__list{
  list-style: none;
  margin: 0; padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  position: relative;
}
.valor{ list-style: none; }
.valor__btn{
  font-family: var(--font-body);
  color: var(--cream);
  background: rgba(246,238,226,.08);
  border: 1px solid rgba(246,238,226,.2);
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 0.88rem;
  font-weight: 500;
  cursor: pointer;
  transition: background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
}
.valor:hover .valor__btn,
.valor:focus-within .valor__btn,
.valor.is-open .valor__btn{
  background: rgba(217,164,65,.14);
  border-color: var(--gold);
  color: var(--gold);
}
.valor__desc{
  position: absolute;
  left: 0; right: 0;
  top: calc(100% + 14px);
  z-index: 5;
  background: var(--espresso);
  color: var(--cream);
  border: 1px solid rgba(217,164,65,.5);
  border-radius: 10px;
  padding: 14px 16px;
  font-size: 0.9rem;
  line-height: 1.55;
  box-shadow: 0 18px 36px -14px rgba(0,0,0,.75);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity .2s var(--ease), transform .2s var(--ease), visibility .2s;
  pointer-events: none;
}
.valor:hover .valor__desc,
.valor:focus-within .valor__desc,
.valor.is-open .valor__desc{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.valores__hint{
  margin-top: 16px !important;
  font-size: 0.78rem;
  color: var(--cream-dim);
  opacity: .7;
}

@media (max-width: 860px){
  .filosofia__grid{ grid-template-columns: 1fr; }
}

/* ---------------------------------------------------------
   Menú — pestañas por categoría
   --------------------------------------------------------- */
.menu{ background: var(--cream); }
.menu__intro{
  max-width: 52ch;
  color: #3A2E24;
  margin: 0 0 36px;
}

.menu__tabs{
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  overflow-x: auto;
  margin: 0 calc(var(--gutter) * -1) 40px;
  padding: 4px var(--gutter) 14px;
  scrollbar-width: thin;
}
.menu__tab{
  flex: none;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--espresso);
  background: #FFFFFF;
  border: 1px solid rgba(42,27,18,.15);
  padding: 10px 18px;
  border-radius: 999px;
  cursor: pointer;
  transition: background-color .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
  white-space: nowrap;
}
.menu__tab:hover{ border-color: var(--chile); }
.menu__tab.is-active{
  background: var(--chile);
  border-color: var(--chile);
  color: var(--cream);
}

.menu__panel{ display: none; }
.menu__panel.is-active{ display: block; animation: panelFade .35s var(--ease); }
@keyframes panelFade{
  from{ opacity: 0; transform: translateY(6px); }
  to{ opacity: 1; transform: translateY(0); }
}

.menu-panel-banner{
  aspect-ratio: 16/8;
  border-radius: var(--radius-sm);
  overflow: hidden;
  margin-bottom: 24px;
}
.menu-panel-banner img{
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.menu-panel-banner--dark{
  background: #0A0705;
}
.menu-panel-banner--dark img{
  object-fit: contain;
}
.menu-panel-note{
  color: #5A4B3D;
  font-style: italic;
  margin: 0 0 24px;
  font-size: 0.95rem;
}

.menu-item__thumb{
  flex: none;
  width: 84px;
  height: 84px;
  border-radius: var(--radius-sm);
  overflow: hidden;
  background: var(--cream-dim);
}
.menu-item__thumb img{
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

.menu-list{
  background: #FFFFFF;
  border: 1px solid rgba(42,27,18,.1);
  border-radius: var(--radius-sm);
  overflow: hidden;
}
.menu-item{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  padding: 20px 24px;
  border-bottom: 1px solid rgba(42,27,18,.08);
}
.menu-item:last-child{ border-bottom: none; }
.menu-item__text{ flex: 1; }
.menu-item__text h4{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.15rem;
  margin: 0 0 4px;
  color: var(--espresso);
}
.menu-item__text p{
  margin: 0;
  color: #5A4B3D;
  font-size: 0.9rem;
  max-width: 56ch;
}
.menu-item__text p em{
  font-style: normal;
  color: var(--chile);
  font-weight: 600;
}
.menu-item__price{
  flex: none;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.2rem;
  color: var(--chile);
  white-space: nowrap;
}

.menu-extras{
  margin-top: 28px;
  background: var(--cream-dim);
  border-radius: var(--radius-sm);
  padding: 22px 24px;
}
.menu-extras__title{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.03em;
  color: var(--espresso);
  margin: 0 0 14px;
  text-transform: uppercase;
}
.menu-extras__grid{
  display: grid;
  grid-template-columns: 1fr auto;
  row-gap: 8px;
  column-gap: 24px;
  font-size: 0.88rem;
  color: #5A4B3D;
}
.menu-extras__grid span:nth-child(even){
  font-weight: 700;
  color: var(--espresso);
  text-align: right;
}

.combo-group{
  background: #FFFFFF;
  border: 1px solid rgba(42,27,18,.1);
  border-radius: var(--radius-sm);
  padding: 22px 24px;
  margin-bottom: 16px;
}
.combo-group__header{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
.combo-group__header h4{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.05rem;
  margin: 0;
  color: var(--espresso);
  max-width: 46ch;
}

.menu__cta{
  margin-top: 44px;
  text-align: center;
}

@media (max-width: 560px){
  .menu-item{
    flex-wrap: wrap;
    gap: 14px;
  }
  .menu-item__thumb{ width: 64px; height: 64px; }
  .menu-item__text{ flex: 1 1 60%; }
  .menu-item__price{ margin-left: auto; }
  .combo-group__header{ flex-direction: column; align-items: flex-start; gap: 8px; }
}

/* ---------------------------------------------------------
   Reseñas
   --------------------------------------------------------- */
.resenas{ background: var(--cream-dim); }
.resenas__rating{
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 40px;
  flex-wrap: wrap;
}
.resenas__stars{
  color: var(--gold-dark);
  font-size: 1.4rem;
  letter-spacing: 2px;
}
.resenas__rating-text{
  color: #5A4B3D;
  font-weight: 600;
}
.resenas__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.resena-card{
  background: #FFFFFF;
  border: 1px solid rgba(42,27,18,.1);
  border-radius: var(--radius-sm);
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.resena-card__stars{
  color: var(--gold-dark);
  letter-spacing: 1px;
}
.resena-card p{
  margin: 0;
  color: #3A2E24;
  font-size: 0.95rem;
  flex: 1;
}
.resena-card__source{
  font-size: 0.8rem;
  color: #8A7A68;
  font-weight: 500;
}
.resenas__cta{
  margin-top: 40px;
  text-align: center;
}
.resenas__badge{
  margin-top: 48px;
  display: flex;
  justify-content: center;
}

@media (max-width: 980px){
  .resenas__grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .resenas__grid{ grid-template-columns: 1fr; }
}

/* ---------------------------------------------------------
   Burrito Supremo
   --------------------------------------------------------- */
.supremo{
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 620px;
  background: var(--espresso);
  overflow: hidden;
}
.supremo__media{
  background:
    radial-gradient(120% 100% at 30% 30%, rgba(217,164,65,.22), transparent 60%),
    linear-gradient(160deg, #4A2E1C 0%, #241811 100%);
  overflow: hidden;
}
.supremo__media img{
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  mix-blend-mode: normal;
}
.supremo__content{
  padding: clamp(48px, 6vw, 96px) var(--gutter);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.supremo__title{
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(3rem, 6vw, 5.2rem);
  line-height: 0.9;
  color: var(--cream);
  margin: 0 0 20px;
}
.supremo__tagline{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.3rem;
  color: var(--gold);
  margin: 0 0 22px;
}
.supremo__desc{
  color: var(--cream-dim);
  max-width: 46ch;
  margin: 0 0 32px;
}

@media (max-width: 860px){
  .supremo{ grid-template-columns: 1fr; }
  .supremo__media{ min-height: 260px; }
}

/* ---------------------------------------------------------
   Cómo pedir
   --------------------------------------------------------- */
/* ---------------------------------------------------------
   Video / antojo
   --------------------------------------------------------- */
.video-antojo{
  background: var(--black);
  position: relative;
  overflow: hidden;
}
.video-antojo::before{
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(90% 70% at 25% 40%, rgba(178,58,24,.22), transparent 60%);
  pointer-events: none;
}
.video-antojo__grid{
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: clamp(32px, 6vw, 72px);
  align-items: center;
}
.video-antojo__player{
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  background: #0A0705;
  box-shadow: 0 30px 60px -24px rgba(0,0,0,.8);
  max-width: 340px;
  width: 100%;
  margin: 0 auto;
  aspect-ratio: 9 / 16;
}
.video-antojo__media{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.video-antojo__sound{
  position: absolute;
  bottom: 14px;
  right: 14px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: none;
  background: rgba(10,7,5,.65);
  backdrop-filter: blur(4px);
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: background-color .2s var(--ease), transform .2s var(--ease);
}
.video-antojo__sound:hover{
  background: rgba(10,7,5,.9);
  transform: scale(1.06);
}
.video-antojo__sound-icon{
  width: 20px;
  height: 20px;
  background: var(--cream);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3zm13.5 3a4.5 4.5 0 0 0-2.5-4v8a4.5 4.5 0 0 0 2.5-4zM14 2.2v2.1c3 .9 5 3.5 5 6.7s-2 5.8-5 6.7v2.1c4-1 7-4.5 7-8.8s-3-7.8-7-8.8z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3zm13.5 3a4.5 4.5 0 0 0-2.5-4v8a4.5 4.5 0 0 0 2.5-4zM14 2.2v2.1c3 .9 5 3.5 5 6.7s-2 5.8-5 6.7v2.1c4-1 7-4.5 7-8.8s-3-7.8-7-8.8z'/%3E%3C/svg%3E");
}
.video-antojo__sound-icon.is-muted{
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3zm18.5-.9-1.4-1.4L17.7 9 15.3 6.7l-1.4 1.4L16.3 10l-2.4 2.4 1.4 1.4 2.4-2.4 2.4 2.4 1.4-1.4L19.1 10l2.4-1.9z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 9v6h4l5 5V4L7 9H3zm18.5-.9-1.4-1.4L17.7 9 15.3 6.7l-1.4 1.4L16.3 10l-2.4 2.4 1.4 1.4 2.4-2.4 2.4 2.4 1.4-1.4L19.1 10l2.4-1.9z'/%3E%3C/svg%3E");
}
.video-antojo__desc{
  color: var(--cream-dim);
  max-width: 46ch;
  margin: 0 0 32px;
  font-size: 1.05rem;
}
.video-antojo__actions{
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

@media (max-width: 860px){
  .video-antojo__grid{ grid-template-columns: 1fr; }
  .video-antojo__player{ max-width: 280px; }
  .video-antojo__copy{ text-align: center; }
  .video-antojo__desc{ margin-left: auto; margin-right: auto; }
  .video-antojo__actions{ justify-content: center; }
}

.pedir{ background: var(--cream-dim); }
.pedir__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  margin-top: 48px;
}
.pedir__card{
  background: #FFFFFF;
  border: 1px solid rgba(42,27,18,.1);
  padding: 32px 26px;
  border-radius: var(--radius-sm);
  display: flex;
  flex-direction: column;
  gap: 6px;
  transition: box-shadow .25s var(--ease), transform .25s var(--ease);
}
.pedir__card:hover{
  transform: translateY(-4px);
  box-shadow: 0 18px 34px -18px rgba(42,27,18,.4);
}
.pedir__card h3{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.3rem;
  margin: 6px 0 2px;
  color: var(--espresso);
}
.pedir__card p{
  color: #5A4B3D;
  margin: 0 0 18px;
  font-size: 0.95rem;
}
.pedir__card .btn{ margin-top: auto; align-self: flex-start; }

.pedir__icon{
  width: 46px; height: 46px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  position: relative;
}
.pedir__icon::before{
  content: '';
  width: 22px; height: 22px;
  background: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
.pedir__icon--whatsapp{ background: #E9F5EA; color: #25D366; }
.pedir__icon--whatsapp::before{ -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M17.472%2014.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94%201.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198%200-.52.074-.792.372-.272.297-1.04%201.016-1.04%202.479%200%201.462%201.065%202.875%201.213%203.074.149.198%202.096%203.2%205.077%204.487.709.306%201.262.489%201.694.625.712.227%201.36.195%201.871.118.571-.085%201.758-.719%202.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421%207.403h-.004a9.87%209.87%200%2001-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86%209.86%200%2001-1.51-5.26c.001-5.45%204.436-9.884%209.888-9.884%202.64%200%205.122%201.03%206.988%202.898a9.825%209.825%200%20012.893%206.994c-.003%205.45-4.437%209.884-9.885%209.884m8.413-18.297A11.815%2011.815%200%200012.05%200C5.495%200%20.16%205.335.157%2011.892c0%202.096.547%204.142%201.588%205.945L.057%2024l6.305-1.654a11.882%2011.882%200%20005.683%201.448h.005c6.554%200%2011.89-5.335%2011.893-11.893a11.821%2011.821%200%2000-3.48-8.413Z%27/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M17.472%2014.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94%201.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198%200-.52.074-.792.372-.272.297-1.04%201.016-1.04%202.479%200%201.462%201.065%202.875%201.213%203.074.149.198%202.096%203.2%205.077%204.487.709.306%201.262.489%201.694.625.712.227%201.36.195%201.871.118.571-.085%201.758-.719%202.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421%207.403h-.004a9.87%209.87%200%2001-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86%209.86%200%2001-1.51-5.26c.001-5.45%204.436-9.884%209.888-9.884%202.64%200%205.122%201.03%206.988%202.898a9.825%209.825%200%20012.893%206.994c-.003%205.45-4.437%209.884-9.885%209.884m8.413-18.297A11.815%2011.815%200%200012.05%200C5.495%200%20.16%205.335.157%2011.892c0%202.096.547%204.142%201.588%205.945L.057%2024l6.305-1.654a11.882%2011.882%200%20005.683%201.448h.005c6.554%200%2011.89-5.335%2011.893-11.893a11.821%2011.821%200%2000-3.48-8.413Z%27/%3E%3C/svg%3E"); }

.pedir__icon--rappi{ background: #FF441F; color: #FFFFFF; }
.pedir__icon--rappi::before{
  content: "R";
  width: auto; height: auto;
  background: none;
  -webkit-mask-image: none;
  mask-image: none;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.4rem;
  line-height: 1;
}

.pedir__icon--uber{ background: #E5F7ED; color: #06C167; }
.pedir__icon--uber::before{ -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M0%202.8645v4.9972c0%201.8834%201.3315%203.1297%203.0835%203.1297a2.9652%202.9652%200%200%200%202.1502-.876v.7425H6.445V2.8645H5.223v4.9339c0%201.2642-.8696%202.1198-1.9954%202.122-1.1386-.0023-1.997-.834-1.997-2.122V2.8645zm7.3625%200v7.9934h1.163v-.7318a2.9915%202.9915%200%200%200%202.1177.876c1.714.048%203.1295-1.3283%203.1295-3.0429s-1.4155-3.091-3.1295-3.0429a2.9674%202.9674%200%200%200-2.107.876V2.8645zm9.8857%202.0561c-1.6752-.0074-3.0369%201.3492-3.0356%203.0245%200%201.7366%201.3732%203.0373%203.1537%203.0373a3.123%203.123%200%200%200%202.5578-1.2438l-.8495-.6177a2.0498%202.0498%200%200%201-1.7083.8585c-.9763.0126-1.8147-.6915-1.971-1.6553h4.818v-.379c0-1.734-1.254-3.0238-2.9638-3.0245zm6.1632.0667a1.5943%201.5943%200%200%200-1.376.7657v-.7186h-1.163v5.8235h1.1741V7.5465c0-.9023.5581-1.4847%201.3268-1.4847h.4949V4.9886c-.1576.0013-.3186-.0009-.4568-.0013zm-6.2034.944a1.844%201.844%200%200%201%201.8337%201.486H15.424a1.844%201.844%200%200%201%201.784-1.486zm-6.6589.0056c1.1223-.0084%202.0365.8992%202.0364%202.0215-.0026%201.1203-.914%202.0258-2.0343%202.021a2.0151%202.0151%200%200%201-1.4159-.5987A2.0152%202.0152%200%200%201%208.55%207.9592a2.0152%202.0152%200%200%201%20.5838-1.422%202.0152%202.0152%200%200%201%201.4153-.6003zM0%2012.9864v7.9716h5.7222v-1.3666H1.5458v-1.971h4.0647v-1.314H1.5458v-1.9556h4.1764v-1.3644zm14.5608.4097v1.6861h-1.1519v1.338h1.1545v3.143c0%20.7927.5712%201.4209%201.6005%201.4209h1.6425L17.8%2019.646h-1.1412c-.3482%200-.5714-.1509-.5714-.464v-2.7683H17.8v-1.3316h-1.7062v-1.686zm-5.2974%201.5275c-1.7348-.0103-3.141%201.4035-3.1214%203.1382.0196%201.7346%201.4575%203.1163%203.1915%203.0668a2.9915%202.9915%200%200%200%201.912-.6655v.532h1.5175v-5.9129h-1.509v.5257a3.0047%203.0047%200%200%200-1.9205-.6835c-.0244-.0007-.0492-.0006-.0701-.0008zm11.771.0077c-1.5855%200-2.7002.6437-2.7002%201.8854%200%20.8607.6132%201.4213%201.936%201.695l1.4478.3286c.5694.1095.7224.2585.7224.4906%200%20.3701-.438.6022-1.1279.6022-.876%200-1.3774-.1907-1.5723-.8477h-1.533c.219%201.2307%201.1563%202.05%203.0484%202.05h.0022c1.752%200%202.7422-.819%202.7422-1.9534%200-.8059-.5847-1.4084-1.8089-1.6668l-1.2943-.2605c-.7511-.1358-.988-.2738-.988-.5454%200-.357.3616-.5757%201.0295-.5757.7227%200%201.2527.1925%201.406.8473h1.5175c-.0854-1.2286-.9899-2.0497-2.8273-2.0497zM9.467%2016.1815c1.0092.0096%201.8188.8369%201.8067%201.8461.0014%201.0046-.8198%201.816-1.8243%201.8025-1.0075-.0048-1.8203-.8256-1.8155-1.833.0048-1.0076.8255-1.8204%201.833-1.8156z%27/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M0%202.8645v4.9972c0%201.8834%201.3315%203.1297%203.0835%203.1297a2.9652%202.9652%200%200%200%202.1502-.876v.7425H6.445V2.8645H5.223v4.9339c0%201.2642-.8696%202.1198-1.9954%202.122-1.1386-.0023-1.997-.834-1.997-2.122V2.8645zm7.3625%200v7.9934h1.163v-.7318a2.9915%202.9915%200%200%200%202.1177.876c1.714.048%203.1295-1.3283%203.1295-3.0429s-1.4155-3.091-3.1295-3.0429a2.9674%202.9674%200%200%200-2.107.876V2.8645zm9.8857%202.0561c-1.6752-.0074-3.0369%201.3492-3.0356%203.0245%200%201.7366%201.3732%203.0373%203.1537%203.0373a3.123%203.123%200%200%200%202.5578-1.2438l-.8495-.6177a2.0498%202.0498%200%200%201-1.7083.8585c-.9763.0126-1.8147-.6915-1.971-1.6553h4.818v-.379c0-1.734-1.254-3.0238-2.9638-3.0245zm6.1632.0667a1.5943%201.5943%200%200%200-1.376.7657v-.7186h-1.163v5.8235h1.1741V7.5465c0-.9023.5581-1.4847%201.3268-1.4847h.4949V4.9886c-.1576.0013-.3186-.0009-.4568-.0013zm-6.2034.944a1.844%201.844%200%200%201%201.8337%201.486H15.424a1.844%201.844%200%200%201%201.784-1.486zm-6.6589.0056c1.1223-.0084%202.0365.8992%202.0364%202.0215-.0026%201.1203-.914%202.0258-2.0343%202.021a2.0151%202.0151%200%200%201-1.4159-.5987A2.0152%202.0152%200%200%201%208.55%207.9592a2.0152%202.0152%200%200%201%20.5838-1.422%202.0152%202.0152%200%200%201%201.4153-.6003zM0%2012.9864v7.9716h5.7222v-1.3666H1.5458v-1.971h4.0647v-1.314H1.5458v-1.9556h4.1764v-1.3644zm14.5608.4097v1.6861h-1.1519v1.338h1.1545v3.143c0%20.7927.5712%201.4209%201.6005%201.4209h1.6425L17.8%2019.646h-1.1412c-.3482%200-.5714-.1509-.5714-.464v-2.7683H17.8v-1.3316h-1.7062v-1.686zm-5.2974%201.5275c-1.7348-.0103-3.141%201.4035-3.1214%203.1382.0196%201.7346%201.4575%203.1163%203.1915%203.0668a2.9915%202.9915%200%200%200%201.912-.6655v.532h1.5175v-5.9129h-1.509v.5257a3.0047%203.0047%200%200%200-1.9205-.6835c-.0244-.0007-.0492-.0006-.0701-.0008zm11.771.0077c-1.5855%200-2.7002.6437-2.7002%201.8854%200%20.8607.6132%201.4213%201.936%201.695l1.4478.3286c.5694.1095.7224.2585.7224.4906%200%20.3701-.438.6022-1.1279.6022-.876%200-1.3774-.1907-1.5723-.8477h-1.533c.219%201.2307%201.1563%202.05%203.0484%202.05h.0022c1.752%200%202.7422-.819%202.7422-1.9534%200-.8059-.5847-1.4084-1.8089-1.6668l-1.2943-.2605c-.7511-.1358-.988-.2738-.988-.5454%200-.357.3616-.5757%201.0295-.5757.7227%200%201.2527.1925%201.406.8473h1.5175c-.0854-1.2286-.9899-2.0497-2.8273-2.0497zM9.467%2016.1815c1.0092.0096%201.8188.8369%201.8067%201.8461.0014%201.0046-.8198%201.816-1.8243%201.8025-1.0075-.0048-1.8203-.8256-1.8155-1.833.0048-1.0076.8255-1.8204%201.833-1.8156z%27/%3E%3C/svg%3E"); }

.pedir__icon--pickup{ background: #F0E7DC; color: var(--coffee); }
.pedir__icon--pickup::before{ -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 8h16l-1.5 11a2 2 0 0 1-2 1.8H7.5a2 2 0 0 1-2-1.8L4 8zm8-6a4 4 0 0 1 4 4h-2a2 2 0 0 0-4 0H8a4 4 0 0 1 4-4z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 8h16l-1.5 11a2 2 0 0 1-2 1.8H7.5a2 2 0 0 1-2-1.8L4 8zm8-6a4 4 0 0 1 4 4h-2a2 2 0 0 0-4 0H8a4 4 0 0 1 4-4z'/%3E%3C/svg%3E"); }

@media (max-width: 980px){
  .pedir__grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .pedir__grid{ grid-template-columns: 1fr; }
}

/* ---------------------------------------------------------
   Ubicación
   --------------------------------------------------------- */
.ubicacion{ background: var(--black); }
.ubicacion__grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(32px, 6vw, 72px);
  align-items: center;
}
.ubicacion__copy address{
  font-style: normal;
  color: var(--cream-dim);
  line-height: 1.8;
  margin: 0 0 32px;
  font-size: 1.05rem;
}
.ubicacion__copy address strong{
  color: var(--cream);
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.3rem;
  display: block;
  margin-bottom: 6px;
}
.payment-methods{
  margin-top: 26px;
}
.payment-methods__label{
  display: block;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--cream-dim);
  margin-bottom: 10px;
}
.payment-methods__list{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.payment-badge{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(246,238,226,.08);
  border: 1px solid rgba(246,238,226,.2);
  border-radius: 999px;
  padding: 7px 14px;
  font-size: 0.85rem;
  color: var(--cream);
  font-weight: 500;
}
.ubicacion__map-placeholder{
  aspect-ratio: 4/3;
  background: linear-gradient(155deg, var(--coffee) 0%, var(--espresso) 100%);
  border: 1px solid rgba(246,238,226,.15);
  border-radius: var(--radius-sm);
  display: grid;
  place-items: center;
  color: var(--cream-dim);
  font-size: 0.95rem;
}
.ubicacion__map{
  aspect-ratio: 4/3;
  border-radius: var(--radius-sm);
  overflow: hidden;
  border: 1px solid rgba(246,238,226,.15);
}
.ubicacion__map iframe{
  width: 100%;
  height: 100%;
  display: block;
}

@media (max-width: 780px){
  .ubicacion__grid{ grid-template-columns: 1fr; }
}

/* ---------------------------------------------------------
   Mini-mapa ilustrado: ruta al zócalo
   --------------------------------------------------------- */
.zocalo-map{
  margin-top: clamp(40px, 6vw, 64px);
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: clamp(28px, 4vw, 56px);
  align-items: center;
  background: var(--espresso);
  border-radius: var(--radius-sm);
  padding: clamp(24px, 3vw, 40px);
}
.zocalo-map__copy h3{
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.5rem;
  color: var(--cream);
  margin: 0 0 14px;
  max-width: 16ch;
}
.zocalo-map__copy p{
  color: var(--cream-dim);
  margin: 0;
  max-width: 42ch;
}
.zocalo-map__art{
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 20px 44px -18px rgba(0,0,0,.5);
}
.zocalo-map__art svg{
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 780px){
  .zocalo-map{ grid-template-columns: 1fr; }
}

/* ---------------------------------------------------------
   Redes sociales
   --------------------------------------------------------- */
.social{ background: var(--cream); }
.social__inner{
  text-align: center;
  padding-top: clamp(48px, 8vw, 88px);
  padding-bottom: clamp(48px, 8vw, 88px);
}
.social__title{
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  margin: 0 0 32px;
}
.social__links{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
.social__link{
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: #FFFFFF;
  border: 1px solid rgba(42,27,18,.12);
  padding: 14px 24px;
  border-radius: 999px;
  font-weight: 600;
  color: var(--espresso);
  transition: box-shadow .2s var(--ease), transform .2s var(--ease);
}
.social__link:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 26px -16px rgba(42,27,18,.4);
}
.social__icon{
  width: 22px; height: 22px;
  border-radius: 6px;
  display: inline-block;
}
.social__icon--ig{
  background: linear-gradient(135deg, #F58529, #DD2A7B, #8134AF);
  position: relative;
}
.social__icon--ig::before{
  content: '';
  position: absolute;
  inset: 4px;
  background: #FFFFFF;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M7.0301.084c-1.2768.0602-2.1487.264-2.911.5634-.7888.3075-1.4575.72-2.1228%201.3877-.6652.6677-1.075%201.3368-1.3802%202.127-.2954.7638-.4956%201.6365-.552%202.914-.0564%201.2775-.0689%201.6882-.0626%204.947.0062%203.2586.0206%203.6671.0825%204.9473.061%201.2765.264%202.1482.5635%202.9107.308.7889.72%201.4573%201.388%202.1228.6679.6655%201.3365%201.0743%202.1285%201.38.7632.295%201.6361.4961%202.9134.552%201.2773.056%201.6884.069%204.9462.0627%203.2578-.0062%203.668-.0207%204.9478-.0814%201.28-.0607%202.147-.2652%202.9098-.5633.7889-.3086%201.4578-.72%202.1228-1.3881.665-.6682%201.0745-1.3378%201.3795-2.1284.2957-.7632.4966-1.636.552-2.9124.056-1.2809.0692-1.6898.063-4.948-.0063-3.2583-.021-3.6668-.0817-4.9465-.0607-1.2797-.264-2.1487-.5633-2.9117-.3084-.7889-.72-1.4568-1.3876-2.1228C21.2982%201.33%2020.628.9208%2019.8378.6165%2019.074.321%2018.2017.1197%2016.9244.0645%2015.6471.0093%2015.236-.005%2011.977.0014%208.718.0076%208.31.0215%207.0301.0839m.1402%2021.6932c-1.17-.0509-1.8053-.2453-2.2287-.408-.5606-.216-.96-.4771-1.3819-.895-.422-.4178-.6811-.8186-.9-1.378-.1644-.4234-.3624-1.058-.4171-2.228-.0595-1.2645-.072-1.6442-.079-4.848-.007-3.2037.0053-3.583.0607-4.848.05-1.169.2456-1.805.408-2.2282.216-.5613.4762-.96.895-1.3816.4188-.4217.8184-.6814%201.3783-.9003.423-.1651%201.0575-.3614%202.227-.4171%201.2655-.06%201.6447-.072%204.848-.079%203.2033-.007%203.5835.005%204.8495.0608%201.169.0508%201.8053.2445%202.228.408.5608.216.96.4754%201.3816.895.4217.4194.6816.8176.9005%201.3787.1653.4217.3617%201.056.4169%202.2263.0602%201.2655.0739%201.645.0796%204.848.0058%203.203-.0055%203.5834-.061%204.848-.051%201.17-.245%201.8055-.408%202.2294-.216.5604-.4763.96-.8954%201.3814-.419.4215-.8181.6811-1.3783.9-.4224.1649-1.0577.3617-2.2262.4174-1.2656.0595-1.6448.072-4.8493.079-3.2045.007-3.5825-.006-4.848-.0608M16.953%205.5864A1.44%201.44%200%201%200%2018.39%204.144a1.44%201.44%200%200%200-1.437%201.4424M5.8385%2012.012c.0067%203.4032%202.7706%206.1557%206.173%206.1493%203.4026-.0065%206.157-2.7701%206.1506-6.1733-.0065-3.4032-2.771-6.1565-6.174-6.1498-3.403.0067-6.156%202.771-6.1496%206.1738M8%2012.0077a4%204%200%201%201%204.008%203.9921A3.9996%203.9996%200%200%201%208%2012.0077%27/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M7.0301.084c-1.2768.0602-2.1487.264-2.911.5634-.7888.3075-1.4575.72-2.1228%201.3877-.6652.6677-1.075%201.3368-1.3802%202.127-.2954.7638-.4956%201.6365-.552%202.914-.0564%201.2775-.0689%201.6882-.0626%204.947.0062%203.2586.0206%203.6671.0825%204.9473.061%201.2765.264%202.1482.5635%202.9107.308.7889.72%201.4573%201.388%202.1228.6679.6655%201.3365%201.0743%202.1285%201.38.7632.295%201.6361.4961%202.9134.552%201.2773.056%201.6884.069%204.9462.0627%203.2578-.0062%203.668-.0207%204.9478-.0814%201.28-.0607%202.147-.2652%202.9098-.5633.7889-.3086%201.4578-.72%202.1228-1.3881.665-.6682%201.0745-1.3378%201.3795-2.1284.2957-.7632.4966-1.636.552-2.9124.056-1.2809.0692-1.6898.063-4.948-.0063-3.2583-.021-3.6668-.0817-4.9465-.0607-1.2797-.264-2.1487-.5633-2.9117-.3084-.7889-.72-1.4568-1.3876-2.1228C21.2982%201.33%2020.628.9208%2019.8378.6165%2019.074.321%2018.2017.1197%2016.9244.0645%2015.6471.0093%2015.236-.005%2011.977.0014%208.718.0076%208.31.0215%207.0301.0839m.1402%2021.6932c-1.17-.0509-1.8053-.2453-2.2287-.408-.5606-.216-.96-.4771-1.3819-.895-.422-.4178-.6811-.8186-.9-1.378-.1644-.4234-.3624-1.058-.4171-2.228-.0595-1.2645-.072-1.6442-.079-4.848-.007-3.2037.0053-3.583.0607-4.848.05-1.169.2456-1.805.408-2.2282.216-.5613.4762-.96.895-1.3816.4188-.4217.8184-.6814%201.3783-.9003.423-.1651%201.0575-.3614%202.227-.4171%201.2655-.06%201.6447-.072%204.848-.079%203.2033-.007%203.5835.005%204.8495.0608%201.169.0508%201.8053.2445%202.228.408.5608.216.96.4754%201.3816.895.4217.4194.6816.8176.9005%201.3787.1653.4217.3617%201.056.4169%202.2263.0602%201.2655.0739%201.645.0796%204.848.0058%203.203-.0055%203.5834-.061%204.848-.051%201.17-.245%201.8055-.408%202.2294-.216.5604-.4763.96-.8954%201.3814-.419.4215-.8181.6811-1.3783.9-.4224.1649-1.0577.3617-2.2262.4174-1.2656.0595-1.6448.072-4.8493.079-3.2045.007-3.5825-.006-4.848-.0608M16.953%205.5864A1.44%201.44%200%201%200%2018.39%204.144a1.44%201.44%200%200%200-1.437%201.4424M5.8385%2012.012c.0067%203.4032%202.7706%206.1557%206.173%206.1493%203.4026-.0065%206.157-2.7701%206.1506-6.1733-.0065-3.4032-2.771-6.1565-6.174-6.1498-3.403.0067-6.156%202.771-6.1496%206.1738M8%2012.0077a4%204%200%201%201%204.008%203.9921A3.9996%203.9996%200%200%201%208%2012.0077%27/%3E%3C/svg%3E");
}
.social__icon--fb{
  background: #0866FF;
  position: relative;
}
.social__icon--fb::before{
  content: '';
  position: absolute;
  inset: 5px;
  background: #FFFFFF;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M9.101%2023.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085%201.848-5.978%205.858-5.978.401%200%20.955.042%201.468.103a8.68%208.68%200%200%201%201.141.195v3.325a8.623%208.623%200%200%200-.653-.036%2026.805%2026.805%200%200%200-.733-.009c-.707%200-1.259.096-1.675.309a1.686%201.686%200%200%200-.679.622c-.258.42-.374.995-.374%201.752v1.297h3.919l-.386%202.103-.287%201.564h-3.246v8.245C19.396%2023.238%2024%2018.179%2024%2012.044c0-6.627-5.373-12-12-12s-12%205.373-12%2012c0%205.628%203.874%2010.35%209.101%2011.647Z%27/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M9.101%2023.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085%201.848-5.978%205.858-5.978.401%200%20.955.042%201.468.103a8.68%208.68%200%200%201%201.141.195v3.325a8.623%208.623%200%200%200-.653-.036%2026.805%2026.805%200%200%200-.733-.009c-.707%200-1.259.096-1.675.309a1.686%201.686%200%200%200-.679.622c-.258.42-.374.995-.374%201.752v1.297h3.919l-.386%202.103-.287%201.564h-3.246v8.245C19.396%2023.238%2024%2018.179%2024%2012.044c0-6.627-5.373-12-12-12s-12%205.373-12%2012c0%205.628%203.874%2010.35%209.101%2011.647Z%27/%3E%3C/svg%3E");
}
.social__icon--tiktok{
  background: var(--black);
  position: relative;
}
.social__icon--tiktok::before{
  content: '';
  position: absolute;
  inset: 0;
  background: currentColor;
  color: #FFFFFF;
  -webkit-mask-size: 62%;
  mask-size: 62%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M12.525.02c1.31-.02%202.61-.01%203.91-.02.08%201.53.63%203.09%201.75%204.17%201.12%201.11%202.7%201.62%204.24%201.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01%202.92.01%205.84-.02%208.75-.08%201.4-.54%202.79-1.35%203.94-1.31%201.92-3.58%203.17-5.91%203.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9%201.12-3.72%202.58-4.96%201.66-1.44%203.98-2.13%206.15-1.72.02%201.48-.04%202.96-.04%204.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11%201.04-1.36%201.75-.21.51-.15%201.07-.14%201.61.24%201.64%201.82%203.02%203.5%202.87%201.12-.01%202.19-.66%202.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z%27/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M12.525.02c1.31-.02%202.61-.01%203.91-.02.08%201.53.63%203.09%201.75%204.17%201.12%201.11%202.7%201.62%204.24%201.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01%202.92.01%205.84-.02%208.75-.08%201.4-.54%202.79-1.35%203.94-1.31%201.92-3.58%203.17-5.91%203.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9%201.12-3.72%202.58-4.96%201.66-1.44%203.98-2.13%206.15-1.72.02%201.48-.04%202.96-.04%204.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11%201.04-1.36%201.75-.21.51-.15%201.07-.14%201.61.24%201.64%201.82%203.02%203.5%202.87%201.12-.01%202.19-.66%202.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z%27/%3E%3C/svg%3E");
}
.social__icon--yt{
  background: #FF0000;
  position: relative;
}
.social__icon--yt::before{
  content: '';
  position: absolute;
  inset: 0;
  background: currentColor;
  color: #FFFFFF;
  -webkit-mask-size: 62%;
  mask-size: 62%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M23.498%206.186a3.016%203.016%200%200%200-2.122-2.136C19.505%203.545%2012%203.545%2012%203.545s-7.505%200-9.377.505A3.017%203.017%200%200%200%20.502%206.186C0%208.07%200%2012%200%2012s0%203.93.502%205.814a3.016%203.016%200%200%200%202.122%202.136c1.871.505%209.376.505%209.376.505s7.505%200%209.377-.505a3.015%203.015%200%200%200%202.122-2.136C24%2015.93%2024%2012%2024%2012s0-3.93-.502-5.814zM9.545%2015.568V8.432L15.818%2012l-6.273%203.568z%27/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M23.498%206.186a3.016%203.016%200%200%200-2.122-2.136C19.505%203.545%2012%203.545%2012%203.545s-7.505%200-9.377.505A3.017%203.017%200%200%200%20.502%206.186C0%208.07%200%2012%200%2012s0%203.93.502%205.814a3.016%203.016%200%200%200%202.122%202.136c1.871.505%209.376.505%209.376.505s7.505%200%209.377-.505a3.015%203.015%200%200%200%202.122-2.136C24%2015.93%2024%2012%2024%2012s0-3.93-.502-5.814zM9.545%2015.568V8.432L15.818%2012l-6.273%203.568z%27/%3E%3C/svg%3E");
}

/* ---------------------------------------------------------
   Footer
   --------------------------------------------------------- */
.footer{ background: var(--black); }
.footer__inner{
  text-align: center;
  padding-top: 56px;
  padding-bottom: 56px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}
.footer__brand{
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--cream);
  font-size: 1.1rem;
}
.footer__tagline{
  color: var(--gold);
  margin: 0;
  font-size: 0.95rem;
}
.footer__links{
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
  justify-content: center;
}
.footer__links a{
  color: var(--cream-dim);
  font-size: 0.9rem;
}
.footer__links a:hover{ color: var(--cream); }
.footer__copy{
  color: rgba(246,238,226,.45);
  font-size: 0.8rem;
  margin: 12px 0 0;
}

/* ---------------------------------------------------------
   Aviso: pedido para recoger en tienda
   --------------------------------------------------------- */
.pickup-toast{
  position: fixed;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%) translateY(140%);
  z-index: 95;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  max-width: min(420px, calc(100vw - 32px));
  background: var(--espresso);
  color: var(--cream);
  border: 1px solid rgba(246,238,226,.18);
  border-radius: 12px;
  padding: 16px 18px;
  box-shadow: 0 20px 40px -14px rgba(0,0,0,.5);
  opacity: 0;
  transition: transform .35s var(--ease), opacity .35s var(--ease);
  pointer-events: none;
}
.pickup-toast.is-visible{
  transform: translateX(-50%) translateY(0);
  opacity: 1;
}
.pickup-toast__icon{
  flex: none;
  width: 22px; height: 22px;
  margin-top: 2px;
  border-radius: 50%;
  background: var(--gold);
  position: relative;
}
.pickup-toast__icon::before{
  content: '';
  position: absolute;
  inset: 0;
  background: var(--espresso);
  -webkit-mask-size: 55%;
  mask-size: 55%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E");
}
.pickup-toast p{
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
}

.loyalty-toast__icon{
  background: var(--chile);
}
.loyalty-toast__icon::before{
  background: var(--cream);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 7h-3.17A3 3 0 0 0 17 6a3 3 0 0 0-5-2.236A3 3 0 0 0 7 6a3 3 0 0 0 .17 1H4a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zm-5-2a1 1 0 1 1-1 1 1 1 0 0 1 1-1zM9 5a1 1 0 1 1-1 1 1 1 0 0 1 1-1zM5 9h6v2H5zm1 11v-7h5v7zm13 0h-7v-7h7zm1-9h-6V9h6z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 7h-3.17A3 3 0 0 0 17 6a3 3 0 0 0-5-2.236A3 3 0 0 0 7 6a3 3 0 0 0 .17 1H4a1 1 0 0 0-1 1v3a1 1 0 0 0 1 1v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8a1 1 0 0 0 1-1V8a1 1 0 0 0-1-1zm-5-2a1 1 0 1 1-1 1 1 1 0 0 1 1-1zM9 5a1 1 0 1 1-1 1 1 1 0 0 1 1-1zM5 9h6v2H5zm1 11v-7h5v7zm13 0h-7v-7h7zm1-9h-6V9h6z'/%3E%3C/svg%3E");
}

.lang-toast__icon{
  background: var(--gold);
}
.lang-toast__icon::before{
  background: var(--espresso);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm6.9 6h-2.95a15.65 15.65 0 0 0-1.38-4.08A8 8 0 0 1 18.9 8zM12 4.04A13.7 13.7 0 0 1 13.86 8h-3.72A13.7 13.7 0 0 1 12 4.04zM4.26 14a8 8 0 0 1 0-4h3.38a16.7 16.7 0 0 0 0 4zm.84 2h2.95A15.65 15.65 0 0 0 9.43 20.08 8 8 0 0 1 5.1 16zm2.95-8H5.1a8 8 0 0 1 4.33-4.08A15.65 15.65 0 0 0 8.05 8zM12 19.96A13.7 13.7 0 0 1 10.14 16h3.72A13.7 13.7 0 0 1 12 19.96zM14.36 14H9.64a14.7 14.7 0 0 1 0-4h4.72a14.7 14.7 0 0 1 0 4zm.21 6.08A15.65 15.65 0 0 0 15.95 16h2.95a8 8 0 0 1-4.33 4.08zM16.36 14a16.7 16.7 0 0 0 0-4h3.38a8 8 0 0 1 0 4z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm6.9 6h-2.95a15.65 15.65 0 0 0-1.38-4.08A8 8 0 0 1 18.9 8zM12 4.04A13.7 13.7 0 0 1 13.86 8h-3.72A13.7 13.7 0 0 1 12 4.04zM4.26 14a8 8 0 0 1 0-4h3.38a16.7 16.7 0 0 0 0 4zm.84 2h2.95A15.65 15.65 0 0 0 9.43 20.08 8 8 0 0 1 5.1 16zm2.95-8H5.1a8 8 0 0 1 4.33-4.08A15.65 15.65 0 0 0 8.05 8zM12 19.96A13.7 13.7 0 0 1 10.14 16h3.72A13.7 13.7 0 0 1 12 19.96zM14.36 14H9.64a14.7 14.7 0 0 1 0-4h4.72a14.7 14.7 0 0 1 0 4zm.21 6.08A15.65 15.65 0 0 0 15.95 16h2.95a8 8 0 0 1-4.33 4.08zM16.36 14a16.7 16.7 0 0 0 0-4h3.38a8 8 0 0 1 0 4z'/%3E%3C/svg%3E");
}
.lang-toast{ align-items: center; }
.lang-toast__close{
  flex: none;
  background: transparent;
  border: none;
  color: var(--cream-dim);
  font-size: 1.3rem;
  line-height: 1;
  cursor: pointer;
  padding: 0 0 0 4px;
  margin-top: -4px;
}
.lang-toast__close:hover{ color: var(--cream); }

@media (max-width: 600px){
  .pickup-toast{ bottom: 84px; }
}

/* ---------------------------------------------------------
   Botón flotante de WhatsApp
   --------------------------------------------------------- */
.wa-float{
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 90;
  width: 58px; height: 58px;
  border-radius: 50%;
  background: #25D366;
  display: grid;
  place-items: center;
  box-shadow: 0 10px 26px -8px rgba(0,0,0,.4);
  animation: waPulse 3.2s ease-in-out infinite;
  transition: transform .2s var(--ease);
}
.wa-float:hover{ transform: scale(1.08); }
.wa-float__icon{
  width: 28px; height: 28px;
  background: #FFFFFF;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M17.472%2014.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94%201.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198%200-.52.074-.792.372-.272.297-1.04%201.016-1.04%202.479%200%201.462%201.065%202.875%201.213%203.074.149.198%202.096%203.2%205.077%204.487.709.306%201.262.489%201.694.625.712.227%201.36.195%201.871.118.571-.085%201.758-.719%202.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421%207.403h-.004a9.87%209.87%200%2001-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86%209.86%200%2001-1.51-5.26c.001-5.45%204.436-9.884%209.888-9.884%202.64%200%205.122%201.03%206.988%202.898a9.825%209.825%200%20012.893%206.994c-.003%205.45-4.437%209.884-9.885%209.884m8.413-18.297A11.815%2011.815%200%200012.05%200C5.495%200%20.16%205.335.157%2011.892c0%202.096.547%204.142%201.588%205.945L.057%2024l6.305-1.654a11.882%2011.882%200%20005.683%201.448h.005c6.554%200%2011.89-5.335%2011.893-11.893a11.821%2011.821%200%2000-3.48-8.413Z%27/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M17.472%2014.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94%201.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198%200-.52.074-.792.372-.272.297-1.04%201.016-1.04%202.479%200%201.462%201.065%202.875%201.213%203.074.149.198%202.096%203.2%205.077%204.487.709.306%201.262.489%201.694.625.712.227%201.36.195%201.871.118.571-.085%201.758-.719%202.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421%207.403h-.004a9.87%209.87%200%2001-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86%209.86%200%2001-1.51-5.26c.001-5.45%204.436-9.884%209.888-9.884%202.64%200%205.122%201.03%206.988%202.898a9.825%209.825%200%20012.893%206.994c-.003%205.45-4.437%209.884-9.885%209.884m8.413-18.297A11.815%2011.815%200%200012.05%200C5.495%200%20.16%205.335.157%2011.892c0%202.096.547%204.142%201.588%205.945L.057%2024l6.305-1.654a11.882%2011.882%200%20005.683%201.448h.005c6.554%200%2011.89-5.335%2011.893-11.893a11.821%2011.821%200%2000-3.48-8.413Z%27/%3E%3C/svg%3E");
}
@keyframes waPulse{
  0%, 100%{ box-shadow: 0 10px 26px -8px rgba(0,0,0,.4), 0 0 0 0 rgba(37,211,102,.5); }
  50%{ box-shadow: 0 10px 26px -8px rgba(0,0,0,.4), 0 0 0 10px rgba(37,211,102,0); }
}

@media (max-width: 600px){
  .wa-float{ width: 52px; height: 52px; right: 14px; bottom: 14px; }
}

/* ---------------------------------------------------------
   Soporte RTL (hebreo)
   --------------------------------------------------------- */
[dir="rtl"] .section-title,
[dir="rtl"] .hero__title,
[dir="rtl"] .supremo__title{
  margin-left: auto;
  margin-right: 0;
}
[dir="rtl"] .menu-item{ flex-direction: row-reverse; }
[dir="rtl"] .menu-item__text{ text-align: right; }
[dir="rtl"] .combo-group__header{ flex-direction: row-reverse; }
[dir="rtl"] .menu-extras__grid{ grid-template-columns: auto 1fr; }
[dir="rtl"] .menu-extras__grid span:nth-child(even){ text-align: left; }
[dir="rtl"] .lang-switch__menu{ right: auto; left: 0; }
[dir="rtl"] .wa-float{ right: auto; left: 20px; }
[dir="rtl"] .protein-card,
[dir="rtl"] .pedir__card .btn,
[dir="rtl"] .vegano__copy .btn{ align-self: flex-end; }
[dir="rtl"] .nav__links a::after{ left: auto; right: 0; }
[dir="rtl"] .hero__scroll{ left: 50%; }

@media (max-width: 600px){
  [dir="rtl"] .wa-float{ left: 14px; right: auto; }
}

/* ---------------------------------------------------------
   Botón y modal: "¿Qué se te antoja hoy?"
   --------------------------------------------------------- */
.menu__surprise{
  margin: 0 0 40px;
}
.surprise-modal{
  position: fixed;
  inset: 0;
  z-index: 300;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.surprise-modal.is-open{ display: flex; }
.surprise-modal__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(10,7,5,.72);
  backdrop-filter: blur(3px);
}
.surprise-modal__card{
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 420px;
  background: var(--espresso);
  border: 1px solid rgba(246,238,226,.15);
  border-radius: 16px;
  padding: 40px 32px 32px;
  text-align: center;
  box-shadow: 0 30px 70px -20px rgba(0,0,0,.6);
  animation: surpriseIn .3s var(--ease);
}
@keyframes surpriseIn{
  from{ opacity: 0; transform: translateY(14px) scale(.97); }
  to{ opacity: 1; transform: translateY(0) scale(1); }
}
.surprise-modal__close{
  position: absolute;
  top: 12px; right: 14px;
  width: 32px; height: 32px;
  border: none;
  background: transparent;
  color: var(--cream-dim);
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
}
.surprise-modal__close:hover{ color: var(--cream); }
.surprise-modal__eyebrow{
  color: var(--gold);
  font-weight: 600;
  font-size: 0.85rem;
  letter-spacing: 0.04em;
  margin: 0 0 16px;
}
.surprise-modal__result{
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 28px;
  min-height: 92px;
  justify-content: center;
}
.surprise-modal__name{
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.7rem;
  color: var(--cream);
  line-height: 1.15;
}
.surprise-modal__tag{
  color: var(--cream-dim);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.surprise-modal__price{
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.3rem;
  color: var(--gold);
}
.surprise-modal__actions{
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.surprise-modal__actions .btn{ width: 100%; }

/* ---------------------------------------------------------
   Armador de pedido
   --------------------------------------------------------- */
.armador{ background: var(--cream-dim); }
.armador__intro{
  max-width: 60ch;
  color: #3A2E24;
  margin: 0 0 40px;
}
.armador__grid{
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: clamp(28px, 4vw, 48px);
  align-items: start;
}
.armador__form{
  background: #FFFFFF;
  border: 1px solid rgba(42,27,18,.1);
  border-radius: var(--radius-sm);
  padding: clamp(24px, 3vw, 34px);
  display: flex;
  flex-direction: column;
  gap: 26px;
}
.armador__field{
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.armador__field label,
.armador__field-label{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1rem;
  color: var(--espresso);
}
.armador__field select{
  font-family: var(--font-body);
  font-size: 0.95rem;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid rgba(42,27,18,.2);
  background: #FFFFFF;
  color: var(--espresso);
  cursor: pointer;
}
.armador__toggle{
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.armador__toggle label{
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(42,27,18,.2);
  border-radius: 999px;
  padding: 9px 16px;
  font-size: 0.9rem;
  color: var(--espresso);
  cursor: pointer;
  transition: border-color .2s var(--ease), background-color .2s var(--ease);
}
.armador__toggle input{ accent-color: var(--chile); }
.armador__toggle label:has(input:checked){
  border-color: var(--chile);
  background: rgba(178,58,24,.08);
}
.armador__extras{
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.armador__extra{
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 4px;
  font-size: 0.9rem;
  color: #3A2E24;
  border-bottom: 1px solid rgba(42,27,18,.08);
  cursor: pointer;
}
.armador__extra:last-child{ border-bottom: none; }
.armador__extra input{ accent-color: var(--chile); flex: none; }
.armador__extra span:first-of-type{ flex: 1; }
.armador__extra-price{
  font-weight: 700;
  color: var(--chile);
  flex: none;
}

.armador__summary{
  background: var(--espresso);
  border-radius: var(--radius-sm);
  padding: clamp(24px, 3vw, 34px);
  color: var(--cream);
  position: sticky;
  top: 100px;
}
.armador__summary h3{
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.2rem;
  margin: 0 0 18px;
}
.armador__summary-list{
  list-style: none;
  margin: 0 0 18px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 40px;
}
.armador__summary-list li{
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 0.88rem;
  color: var(--cream-dim);
}
.armador__summary-list li span:last-child{
  font-weight: 700;
  color: var(--cream);
  white-space: nowrap;
}
.armador__total{
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid rgba(246,238,226,.2);
  padding-top: 16px;
  margin-bottom: 22px;
  font-weight: 700;
}
.armador__total span:last-child{
  font-family: var(--font-display);
  font-size: 1.5rem;
  color: var(--gold);
}
.armador__summary .btn{ width: 100%; margin-bottom: 14px; }
.armador__note{
  font-size: 0.78rem;
  color: var(--cream-dim);
  margin: 0;
  text-align: center;
}

@media (max-width: 860px){
  .armador__grid{ grid-template-columns: 1fr; }
  .armador__summary{ position: static; }
}
