/* ============================================================
   L'ABBAYE — styles exclusifs de La Carte
   ============================================================ */

@font-face{
  font-family:'UnifrakturMaguntia';
  src:url('../fonts/UnifrakturMaguntia-Regular.ttf') format('truetype');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

.hero--menu{
  min-height:72svh;
}
.hero--menu::before{
  background-image:url('../img/img-91.jpg');
  background-position:center 46%;
}
.hero--menu h1{
  font-family:'UnifrakturMaguntia','Old English Text MT','Lucida Blackletter',fantasy;
  font-weight:400;
  letter-spacing:.025em;
}

.menu-intro{
  max-width:760px;
  margin:0 auto clamp(2.5rem,6vw,4.5rem);
  text-align:center;
  color:var(--ink-soft);
}
.menu-jump{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.75rem 1rem;
  margin-top:1.8rem;
}
.menu-jump a{
  font-family:var(--font-caps);
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--ink);
  text-decoration:none;
  border:1px solid var(--gold);
  padding:.65rem 1rem;
  transition:background .3s ease,color .3s ease;
}
.menu-jump a:hover,
.menu-jump a:focus-visible{
  background:var(--ink);
  color:var(--gold-light);
}

.menu-stack{
  display:grid;
  gap:clamp(2.5rem,6vw,4.5rem);
  max-width:1000px;
  margin:0 auto;
}
.menu-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  scroll-margin-top:6rem;
  padding:clamp(4.6rem,8vw,6.4rem) clamp(1.25rem,7vw,5.6rem);
  background:
    linear-gradient(rgba(239,231,210,.96),rgba(239,231,210,.96)),
    url('../dessing/img-14.jpg') center/cover;
  border:1px solid var(--gold-dark);
  outline:1px solid var(--gold);
  outline-offset:7px;
  box-shadow:0 16px 50px rgba(23,19,13,.14);
}
.menu-card::after{
  content:"";
  position:absolute;
  inset:12px;
  z-index:0;
  border:1px solid rgba(138,107,42,.45);
  pointer-events:none;
}
.menu-card__title,
.menu-group,
.menu-choice,
.menu-note,
.menu-kids,
.history-copy,
.history-signature{
  position:relative;
  z-index:1;
}
.menu-card__title{
  max-width:70%;
  margin:0 auto clamp(2.2rem,6vw,4rem);
  text-align:center;
}
.menu-card__title h2{
  font-family:'UnifrakturMaguntia','Old English Text MT','Lucida Blackletter',fantasy;
  font-size:clamp(2.6rem,6vw,4.35rem);
  font-weight:400;
  line-height:1;
  letter-spacing:.035em;
}
.menu-card__price{
  display:block;
  margin-top:.7rem;
  font-family:var(--font-caps);
  font-size:1rem;
  letter-spacing:.18em;
  color:var(--gold-dark);
}
.menu-group + .menu-group{ margin-top:2.5rem; }
.menu-group h3{
  font-family:var(--font-caps);
  font-size:.88rem;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  border-bottom:1px solid var(--gold);
  padding-bottom:.5rem;
  margin-bottom:1.2rem;
}
.menu-items{
  display:grid;
  gap:1rem;
  list-style:none;
}
.menu-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:1rem;
  align-items:baseline;
  font-size:clamp(1.08rem,2vw,1.28rem);
  line-height:1.45;
}
.menu-item__name{ color:var(--ink-soft); }
.menu-item__price{
  font-family:var(--font-caps);
  font-size:.92rem;
  letter-spacing:.08em;
  white-space:nowrap;
}
.menu-choice{
  display:grid;
  gap:1.1rem;
  max-width:720px;
  margin-inline:auto;
  text-align:center;
  font-size:clamp(1.15rem,2.3vw,1.38rem);
  line-height:1.45;
}
.menu-choice__or{
  font-family:var(--font-caps);
  font-size:.72rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--gold-dark);
}
.menu-choice__rule{
  width:44px;
  height:1px;
  margin:.5rem auto;
  background:var(--gold);
}
.menu-note{
  margin-top:3rem;
  text-align:center;
  font-style:italic;
  color:var(--gold-dark);
}
.menu-kids{
  margin-top:2.8rem;
  padding-top:2rem;
  border-top:1px solid var(--gold);
  text-align:center;
  font-size:1.25rem;
}
.menu-kids strong{
  display:block;
  font-family:var(--font-caps);
  font-size:.78rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.history-card .menu-card__title{
  max-width:76%;
}
.history-copy{
  max-width:790px;
  margin-inline:auto;
  color:var(--ink-soft);
  font-size:clamp(1.04rem,1.8vw,1.18rem);
  line-height:1.72;
  text-align:left;
  hyphens:auto;
}
.history-copy p + p{
  margin-top:1.25rem;
}
.history-copy .history-closing{
  margin-top:2rem;
  font-size:1.14em;
  font-style:italic;
  color:var(--ink);
}
.history-signature{
  display:grid;
  gap:.4rem;
  margin-top:2.6rem;
  text-align:center;
}
.history-signature .brand-name{
  font-family:'UnifrakturMaguntia','Old English Text MT','Lucida Blackletter',fantasy;
  font-size:clamp(1.8rem,4vw,2.5rem);
  line-height:1.1;
}
.history-signature strong{
  font-family:var(--font-caps);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
}

/* Un único PNG se refleja para construir las cuatro esquinas. */
.corner{
  position:absolute;
  z-index:0;
  width:clamp(104px,15vw,164px);
  aspect-ratio:256/249;
  background:url('../img/menu-corner.png') left top/contain no-repeat;
  opacity:.94;
  user-select:none;
  pointer-events:none;
}
.corner--tl{ top:.7rem; left:.8rem; }
.corner--tr{ top:.7rem; right:.8rem; transform:scaleX(-1); }
.corner--bl{ bottom:.7rem; left:.8rem; transform:scaleY(-1); }
.corner--br{ right:.8rem; bottom:.7rem; transform:scale(-1); }

@media (max-width:620px){
  .hero--menu{ min-height:64svh; }
  .menu-card{
    padding:4.8rem 1.15rem;
    outline-offset:4px;
  }
  .menu-card::after{ inset:7px; }
  .menu-card__title{ max-width:72%; }
  .menu-card__title h2{ font-size:clamp(2.15rem,12vw,3rem); }
  .history-card .menu-card__title{ max-width:76%; }
  .history-card .menu-card__title h2{ font-size:clamp(2rem,10.5vw,2.75rem); }
  .history-copy{
    font-size:1.03rem;
    line-height:1.62;
  }
  .menu-item{ gap:.65rem; }
  .menu-jump{ align-items:stretch; }
  .menu-jump a{ flex:1 1 42%; }
  .corner{
    width:86px;
    opacity:.82;
  }
  .corner--tl{ top:.45rem; left:.5rem; }
  .corner--tr{ top:.45rem; right:.5rem; }
  .corner--bl{ bottom:.45rem; left:.5rem; }
  .corner--br{ right:.5rem; bottom:.45rem; }
}
