/* Issue 4 · TCP. Postman cartoons, words and grouped numbers placed over the art so they switch language. */

.page--burst {
  background:
    repeating-conic-gradient(from 0deg at 72% 50%, #F6C65B 0deg 7.5deg, transparent 7.5deg 15deg),
    var(--mustard);
}
.hero__art--wide { width: min(100%, 640px); }
.issue--paket .hero__title { max-width: 13ch; font-size: clamp(2.4rem, 5.2vw, 4.9rem); }
.art--cartoon { filter: drop-shadow(var(--shadow)); }
.art--narrow { max-width: 520px; margin: 0 auto; }
.art--oguz { max-width: 340px; margin: 0 auto; }

.punch { font: 800 1.2rem/1.3 var(--font-display); }
.page--ink .big-number { color: var(--mustard); }
.page:not(.page--ink) .big-number { color: var(--plum); }

/* Art with words on top: the stage keeps the picture's shape, so pins land on the same spot at any size. */
.stage { position: relative; container-type: inline-size; width: 100%; margin: 0 auto; }
.stage .art { width: 100%; }
.pin {
  position: absolute;
  left: var(--x);
  top: var(--y);
  transform: translate(-50%, -50%) rotate(var(--r, 0deg));
  font: 800 max(var(--min, 10px), calc(var(--s, 2.4) * 1cqw))/1 var(--font-display);
  color: var(--ink);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.pin--tag { background: var(--mustard); padding: 0.3em 0.55em; border-radius: 6px; box-shadow: 2px 3px 0 rgba(30, 34, 64, 0.35); }
.pin--display { color: #FFD45C; letter-spacing: 0.04em; text-shadow: 0 0 6px rgba(255, 212, 92, 0.6); }
.pin--red { color: var(--tomato); }
.pin--sticker { background: var(--paper); padding: 0.25em 0.4em; border: 2px solid var(--ink); border-radius: 4px; }

/* page 5: strip on top, wide card below */
.page--stack { grid-template-columns: 1fr; justify-items: center; align-content: center; gap: 22px; }
.page--stack .page__art { width: 100%; }
.page--stack .stage { max-width: 640px; }
.card--wide { max-width: 64rem; columns: 2; column-gap: 2.4em; }
.card--wide h2 { column-span: all; }
.card--wide > * { break-inside: avoid; }
.dialog { margin: 0 0 0.8em; padding-left: 1.4em; font: 700 1.02rem/1.4 var(--font-display); }
.dialog li { margin-bottom: 0.35em; }
.dialog li::marker { color: var(--tomato); font-weight: 800; }

/* page 11: four limits, each with a small picture */
@media (min-width: 821px) { .issue--paket .page--limits { grid-template-columns: 0.62fr 1.6fr; } }
.limits--pics .limit { font-size: 0.95rem; }
.limits--pics .limit::after { content: ""; display: block; clear: both; }
.limit__pic { float: left; width: 104px; height: auto; margin: 0.2em 14px 0.3em 0; }

/* long pages: a little tighter so they fit one screen on a laptop */
.card--long { font-size: 1.02rem; line-height: 1.48; max-width: 36rem; }
.card--long .note { font-size: 0.93rem; }

/* page 12 */
.try { font: 700 1.15rem/1.4 var(--font-display); margin: 0.6em 0 0; }
#s12 .question { font-size: clamp(1.7rem, 3vw, 2.6rem); }
.source--refs { font-family: var(--font-display); font-weight: 700; font-size: 0.85rem; }

@media (max-width: 820px) {
  .hero__art--wide { width: 100%; justify-self: center; }
  .issue--paket .hero__title { font-size: 2.3rem; }
  .bubble--hero { margin-left: 0; }
  .stage { width: min(100%, calc(30svh * var(--ratio))); }
  .page__art .stage .art { max-height: none; }
  .page--stack .stage { width: 100%; }
  .card--wide { columns: 1; }
  .dialog { font-size: 0.95rem; }
  .punch { font-size: 1.05rem; }
  .limit__pic { width: 76px; margin-right: 10px; }
  .page--night .page__art { max-height: 24svh; }
}

@media (max-width: 820px) and (max-height: 700px) {
  .stage { width: min(100%, calc(26svh * var(--ratio))); }
}
