/* ============================================================
   Preisliste-Screen — Banner/Poster-Look, mobil-optimiert.
   Aus der Preisliste-Vorlage übernommen, auf die Telefon-Spalte
   getrimmt (scrollt im eigenen Panel).
   ============================================================ */
.pl-wrap { padding: 14px 12px 30px; }

.pl-poster {
  width: 100%;
  background: var(--pure-white);
  border: var(--outline-width) solid var(--outline-ink);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-comic-lg);
  overflow: hidden;
  color: var(--ink-900);
}

/* ── Header band ── */
.pl-masthead {
  background: #211b18;
  text-align: center;
  padding: 30px 22px 26px;
}
.pl-kicker {
  font-family: var(--font-display);
  color: var(--blood-500);
  font-size: clamp(30px, 9vw, 42px);
  line-height: 1;
  -webkit-text-stroke: 0.09em var(--pure-white);
  paint-order: stroke fill;
}
.pl-title {
  font-family: var(--font-display);
  font-size: clamp(62px, 22vw, 96px);
  line-height: 0.82;
  margin-top: 0.05em;
  color: transparent;
  -webkit-text-stroke: 2.5px var(--pure-white);
}

/* ── Menu body ── */
.pl-menu { padding: 26px 22px 22px; }
.pl-section { margin-bottom: 30px; }
.pl-section:last-of-type { margin-bottom: 22px; }

.pl-sec-title {
  font-family: var(--font-display);
  line-height: 0.9;
  margin: 0 0 14px;
  display: flex;
  align-items: baseline;
  gap: 0.28em;
  flex-wrap: wrap;
}
.pl-sec-title .word    { font-size: clamp(34px, 11vw, 48px); color: var(--ink-900); }
.pl-sec-title .trinken { font-size: clamp(26px, 8.4vw, 38px); color: var(--ink-900); }
.pl-sec-title.is-kurz    .word { color: var(--herb-green); }
.pl-sec-title.is-lang    .word { color: var(--blood-500); }
.pl-sec-title.is-huebsch .word { color: var(--brand-pink); }

.pl-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: baseline;
  column-gap: 14px;
  padding: 6px 0;
}
.pl-name {
  font-family: var(--font-body);
  font-size: clamp(16px, 4.6vw, 20px);
  font-weight: var(--fw-med);
  color: var(--ink-900);
  line-height: 1.15;
}
.pl-name b { font-weight: var(--fw-bold); }
.pl-name .light { font-size: 0.76em; font-weight: var(--fw-reg); color: #6b5d54; }

.pl-size {
  font-family: var(--font-body);
  font-size: clamp(12px, 3.6vw, 15px);
  color: #6f6258;
  white-space: nowrap;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.pl-price {
  font-family: var(--font-board);
  font-size: clamp(17px, 5vw, 22px);
  font-weight: var(--fw-bold);
  color: var(--ink-900);
  white-space: nowrap;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.pl-price .mark { letter-spacing: 0.04em; }
.pl-gap { height: 12px; }

.pl-footnote {
  font-family: var(--font-body);
  font-weight: var(--fw-bold);
  font-size: clamp(14px, 4vw, 17px);
  color: var(--ink-900);
  margin: 14px 0 0;
}

/* ── Pfand ── */
.pl-pfand {
  margin: 30px 0 26px;
  display: grid;
  grid-template-columns: auto auto;
  justify-content: end;
  align-items: baseline;
  column-gap: 14px;
  row-gap: 5px;
  font-family: var(--font-body);
  font-size: clamp(15px, 4.4vw, 20px);
  color: var(--ink-900);
}
.pl-pfand .pf-label { text-align: right; }
.pl-pfand .pf-val { text-align: right; font-weight: var(--fw-bold); font-variant-numeric: tabular-nums; white-space: nowrap; }
.pl-pfand .pf-note { grid-column: 1 / -1; text-align: right; font-size: 0.85em; color: #6f6258; }

/* ── Sponsor + Footer ── */
.pl-sponsor { display: flex; justify-content: center; padding: 8px 0 26px; }
.pl-sponsor img { width: 64%; max-width: 320px; height: auto; display: block; }
.pl-footer { background: #211b18; text-align: center; padding: 24px; }
.pl-footer .wm {
  font-family: var(--font-display);
  color: var(--pure-white);
  font-size: clamp(34px, 11vw, 52px);
  line-height: 1;
  white-space: nowrap;
}

/* kleine Hilfe-Sticker oben */
.pl-hint {
  display: flex; align-items: center; gap: 10px;
  background: var(--ink-800); border: 1px solid var(--ink-600);
  border-radius: var(--radius-lg); padding: 12px 14px; margin-bottom: 12px;
  color: var(--bone-200); font-family: var(--font-body); font-size: 13px; line-height: 1.4;
}
