/* =========================================================================
   ABSOLEM — menu.css  (linkuj PO base.css)
   ========================================================================= */

/* ---- Hlavička ---------------------------------------------------------- */
.page-hero {
  position: relative;
  padding: calc(var(--nav-h) + 56px) 20px 54px;
  text-align: center;
  background: radial-gradient(120% 140% at 50% 0%, rgba(20,73,59,.6), rgba(7,24,19,.9));
  border-bottom: 1px solid var(--line-soft);
}
.page-hero .container { max-width: 760px; }
.page-hero .lead { margin: 16px auto 24px; }
.menu__pdf-btn { margin-top: 4px; }

/* ---- Chips (kategórie) ------------------------------------------------- */
.menu-chips {
  position: sticky; top: var(--nav-h); z-index: 50;
  background: rgba(7,24,19,.92);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line-soft);
}
.menu-chips__inner { display: flex; gap: 10px; overflow-x: auto; padding: 12px 0; scrollbar-width: thin; }
.menu-chips__inner::-webkit-scrollbar { height: 4px; }
.menu-chips__inner::-webkit-scrollbar-thumb { background: var(--line); border-radius: 4px; }
.menu-chips a {
  flex: 0 0 auto; font-size: .82rem; font-weight: 600; letter-spacing: .04em;
  padding: 8px 16px; border: 1px solid var(--line-soft); border-radius: 999px;
  color: var(--cream-dim); white-space: nowrap; transition: all .2s ease;
}
.menu-chips a:hover, .menu-chips a.is-active { border-color: var(--gold); color: var(--gold-2); background: var(--gold-soft); }

/* ---- Sekcie menu ------------------------------------------------------- */
.menu { padding: clamp(40px, 6vw, 72px) 0 90px; }
.menu-sec { padding: 40px 0; scroll-margin-top: calc(var(--nav-h) + 64px); border-bottom: 1px solid var(--line-soft); }
.menu-sec:last-child { border-bottom: 0; }
.menu-sec__head { display: flex; align-items: baseline; gap: 16px; margin-bottom: 28px; }
.menu-sec__head h2 {
  font-family: var(--ff-display); font-weight: 600; letter-spacing: .04em;
  font-size: clamp(1.5rem, 3.6vw, 2.2rem); color: var(--gold-2); text-transform: uppercase;
}
.menu-sec__price-note { color: var(--gold); font-weight: 600; font-size: .9rem; letter-spacing: .04em; }
.menu-sec__deco { flex: 1; height: 1px; background: linear-gradient(90deg, var(--line), transparent); align-self: center; }

.menu-sub { font-family: var(--ff-display); font-size: 1.05rem; letter-spacing: .06em; color: var(--cream); text-transform: uppercase; margin: 22px 0 12px; }
.menu-sub small { color: var(--gold); font-size: .78rem; letter-spacing: .04em; }
.menu-sub:first-child { margin-top: 0; }

.menu-note { margin-top: 20px; color: var(--gold); font-size: .86rem; font-weight: 500; }

/* ---- Vodné fajky riadok ------------------------------------------------ */
.fajka-line { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.fajka-line__item {
  background: rgba(15,61,50,.5); border: 1px solid var(--line-soft); border-radius: var(--radius);
  padding: 26px; display: flex; flex-direction: column; align-items: center; gap: 14px;
}
.fajka-line__item b { font-family: var(--ff-display); font-size: 1.4rem; letter-spacing: .1em; text-transform: uppercase; color: var(--cream); }
.fajka-line__item em { font-family: var(--ff-display); font-style: normal; font-size: 1.6rem; color: var(--gold-2); }
.meter { width: 120px; height: 8px; background: rgba(243,238,225,.1); border-radius: 999px; overflow: hidden; }
.meter span { display: block; height: 100%; background: linear-gradient(90deg, var(--gold), var(--gold-2)); border-radius: 999px; }
.meter[data-level="1"] span { width: 33%; }
.meter[data-level="2"] span { width: 66%; }
.meter[data-level="3"] span { width: 100%; }

/* ---- Koktailové karty (s popisom) ------------------------------------- */
.cocktails { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.cocktail { background: rgba(15,61,50,.45); border: 1px solid var(--line-soft); border-radius: 12px; padding: 22px; }
.cocktail h3 { font-family: var(--ff-display); font-size: 1.1rem; letter-spacing: .04em; color: var(--cream); display: flex; justify-content: space-between; gap: 12px; align-items: baseline; text-transform: uppercase; }
.cocktail h3 em { font-style: normal; color: var(--gold-2); font-size: .95rem; white-space: nowrap; }
.cocktail p { margin-top: 8px; color: var(--muted); font-size: .88rem; line-height: 1.5; }

/* ---- Zoznamy položiek -------------------------------------------------- */
.menu-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 48px; }
.menu-cols--3 { grid-template-columns: repeat(3, 1fr); }

.mlist { display: grid; gap: 2px; }
.mlist li {
  display: flex; align-items: baseline; gap: 8px;
  padding: 9px 0; border-bottom: 1px dashed var(--line-soft);
}
.mlist li:last-child { border-bottom: 0; }
.mlist b { font-weight: 600; color: var(--cream); font-size: .98rem; }
.mlist small { color: var(--muted); font-size: .8rem; font-weight: 400; }
.mlist .mlist__price {
  margin-left: auto; color: var(--gold-2); font-family: var(--ff-display);
  font-size: .96rem; white-space: nowrap; padding-left: 10px;
}
/* varianta s popisom pod názvom */
.mlist--desc li { align-items: flex-start; }
.mlist__main { display: flex; flex-direction: column; gap: 3px; }
.mlist__main small { line-height: 1.4; }

/* dvojstĺpcová varianta na jednom zozname (viac položiek vedľa seba) */
.mlist--two { }

/* ---- PDF sekcia -------------------------------------------------------- */
.menu-pdf__actions { display: flex; gap: 14px; flex-wrap: wrap; margin: 18px 0 24px; }
.menu-pdf__embed { border: 1px solid var(--line-soft); border-radius: var(--radius); overflow: hidden; background: rgba(7,24,19,.5); }
.menu-pdf__embed object { width: 100%; height: 78vh; min-height: 520px; display: block; }
.menu-pdf__embed p { padding: 40px; text-align: center; color: var(--cream-dim); }
.menu-pdf__embed a { color: var(--gold-2); }

/* ---- Responzívne ------------------------------------------------------- */
@media (max-width: 900px) {
  .nav__reserve { display: none; }
  .fajka-line { grid-template-columns: 1fr; max-width: 360px; margin-inline: auto; }
  .cocktails { grid-template-columns: 1fr 1fr; }
  .menu-cols, .menu-cols--3 { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .cocktails { grid-template-columns: 1fr; }
  .menu-pdf__embed object { height: 60vh; min-height: 420px; }
}
