/* Printable press page: one document, readable on paper and on screen. */
:root { --ink: #151413; --muted: #5f5a53; --line: #c9c2b8; --red: #c8100a; --focus: #c8100a; --serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif; }
body { background: #dedad3; color: var(--ink); font-size: .98rem; }
a { color: inherit; text-decoration: underline; text-decoration-color: var(--line); text-underline-offset: .2em; }

.tools { position: sticky; top: 0; z-index: 5; display: flex; justify-content: space-between; gap: .75rem; padding: .75rem clamp(1rem, 4vw, 2rem); background: #151413; }
.tools button { min-height: 44px; padding: 0 1.1rem; border: 1.5px solid #f1ece4; background: transparent; color: #f1ece4; font-weight: 600; }
.tools .tools__print { background: #f1ece4; color: #151413; }

.sheet { max-width: 56rem; margin: 2rem auto; padding: clamp(1.5rem, 5vw, 3.5rem); background: #fbf9f5; display: grid; gap: 2rem; }
.sheet__head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 1.25rem; align-items: center; padding-bottom: 1.5rem; border-bottom: 2px solid var(--ink); }
.sheet__head h1 { font: 400 clamp(2.6rem, 7vw, 4.2rem)/.95 var(--serif); letter-spacing: -.03em; }
.sheet__genre { font-weight: 600; letter-spacing: .12em; text-transform: uppercase; font-size: .8rem; color: var(--red); margin-top: .4rem; }
.sheet__tag { font: italic 400 1.1rem/1.3 var(--serif); }
.sheet__kit { display: grid; gap: .15rem; text-align: right; font-size: .82rem; color: var(--muted); }
h2 { font: 600 .78rem/1.4 var(--font-body); letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin: 0 0 .6rem; }
.cols h2:not(:first-child) { margin-top: 1.6rem; }
.cols { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 2rem; align-items: start; }
.lead { font: 400 1.25rem/1.45 var(--serif); }
.prose { display: grid; gap: .8rem; }
.figs { display: grid; gap: 1rem; }
.figs__img { aspect-ratio: 940 / 1672; background: none; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.figs__img img { display: block; width: 100%; height: auto; object-fit: contain; }
.figs__study .figs__img { aspect-ratio: 16 / 9; background: #0b0a0a; }
.figs__study .figs__img img { object-fit: contain; object-position: center; padding: 6%; }
figcaption { padding-top: .4rem; font-size: .85rem; color: var(--muted); }
figcaption strong { color: var(--ink); }
.rows { border-top: 1px solid var(--line); }
.rows + .rows { border-top: 0; }
.rows li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .1rem 1.5rem; padding: .6rem 0; border-bottom: 1px solid var(--line); break-inside: avoid; }
.rows li > a { font-weight: 600; overflow-wrap: anywhere; }
.rows li > span:not(.url) { color: var(--muted); font-size: .88rem; text-align: right; }
.url { grid-column: 1 / -1; font: 400 .8rem/1.5 var(--font-mono); color: var(--muted); overflow-wrap: anywhere; }
.links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 2rem; border-top: 1px solid var(--line); }
.links li { display: grid; gap: .05rem; padding: .5rem 0; border-bottom: 1px solid var(--line); }
.links a { font-weight: 600; }
.sheet__email { margin-top: .3rem; font: 400 1.25rem/1.3 var(--serif); }
.sheet__email a { text-decoration-color: var(--red); }
.fine { margin-top: .6rem; color: var(--muted); font-size: .88rem; }

@media (max-width: 640px) {
  .sheet { margin: 0; }
  .sheet__head { grid-template-columns: auto minmax(0, 1fr); }
  .sheet__kit { grid-column: 1 / -1; text-align: left; }
  .cols, .links { grid-template-columns: minmax(0, 1fr); }
  .rows li { grid-template-columns: minmax(0, 1fr); }
  .rows li > span:not(.url) { text-align: left; }
}

@media print {
  @page { margin: 14mm; }
  body { background: #fff; font-size: 10.5pt; }
  .tools { display: none; }
  .sheet { margin: 0; padding: 0; max-width: none; background: #fff; gap: 1.2rem; }
  section { break-inside: avoid; }
}
