/* ==========================================================================
   Assignment page
   --------------------------------------------------------------------------
   Most of these records have no narrative, so the design cannot lean on prose.
   What it leans on instead is the record: a key-fact strip in the hero, the
   fact box beside the column, and — where FAME has supplied them — photographs
   that were taken on this assignment and no other.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Hero with a photograph behind it
   -------------------------------------------------------------------------- */

.fame-pagehero--photo {
  position: relative;
  isolation: isolate;
  padding-block: var(--s-9) var(--s-7);
}

.fame-pagehero__media {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
}

.fame-pagehero__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%;
}

/* Two layers, not one. A single flat overlay dark enough to hold small type at
   the bottom washes the whole photograph out; a vertical ramp plus a light
   overall veil keeps the image readable at the top where nothing sits on it,
   and takes the type's ground to near-ink where the key facts are. */
.fame-pagehero__media::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(14, 16, 48, .55) 0%, rgba(14, 16, 48, .82) 55%, rgba(14, 16, 48, .96) 100%),
    linear-gradient(90deg, rgba(14, 16, 48, .75) 0%, rgba(14, 16, 48, .35) 70%);
  content: "";
}

/* --------------------------------------------------------------------------
   Key facts, in the hero
   -------------------------------------------------------------------------- */

.fame-keyfacts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: var(--s-5) var(--s-6);
  margin: var(--s-6) 0 0;
  padding-top: var(--s-5);
  border-top: 1px solid var(--border-hair);
}

.fame-keyfacts__item { min-width: 0; }

.fame-keyfacts__label {
  margin: 0 0 5px;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: var(--tr-label);
  text-transform: uppercase;
  color: var(--muted);
}

.fame-keyfacts__value {
  margin: 0;
  font-size: var(--t-sm);
  font-weight: var(--w-medium);
  line-height: 1.35;
  color: var(--on-dark);
  overflow-wrap: break-word;
}

.fame-keyfacts__value--nums {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  letter-spacing: .01em;
}

/* Live work. The one status that changes what a reader does with the page, so
   it gets a marker; every other status is a word in the fact box. */
.fame-keyfacts__live {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-left: var(--s-2);
  padding: 2px 8px;
  border: 1px solid var(--live-br);
  border-radius: 999px;
  background: var(--live-bg);
  font-family: var(--font-mono);
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #6FE3B0;
}

.fame-keyfacts__live::before {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  content: "";
}

/* --------------------------------------------------------------------------
   The record restated, where no narrative exists yet
   -------------------------------------------------------------------------- */

/* Set as a standfirst rather than as body copy: it is a summary of the fact box
   beside it, and typographic weight is how the page says so without a label. */
.fame-project__restate {
  max-width: 62ch;
  margin: 0 0 var(--s-5);
  font-size: var(--t-lead);
  line-height: 1.5;
  letter-spacing: -.012em;
  color: var(--ink);
}

/* --------------------------------------------------------------------------
   Evidence photographs
   -------------------------------------------------------------------------- */

.fame-evidencephotos { margin-top: var(--s-8); }

.fame-evidencephotos__head {
  margin: 0 0 var(--s-5);
  padding-bottom: var(--s-3);
  border-bottom: 2px solid var(--accent);
  font-size: var(--t-h3);
}

.fame-evidencephotos__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--s-5);
}

/* One photograph gets the full width — halving it would leave a hole beside it
   and make a single genuine frame look like a missing pair. */
.fame-evidencephotos__grid[data-count="1"] { grid-template-columns: 1fr; }

.fame-evidencephotos__cell { margin: 0; }

.fame-evidencephotos__img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: var(--r-md);
  background: var(--mist);
}

.fame-evidencephotos__cap {
  display: block;
  margin-top: var(--s-3);
}

.fame-evidencephotos__where {
  display: block;
  font-family: var(--font-mono);
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: var(--tr-label);
  text-transform: uppercase;
  color: var(--accent-text);
}

.fame-evidencephotos__year { font-variant-numeric: tabular-nums; }

.fame-evidencephotos__what {
  display: block;
  max-width: 46ch;
  margin-top: 5px;
  font-size: var(--t-xs);
  line-height: 1.45;
  color: var(--muted);
}

/* --------------------------------------------------------------------------
   Narrow
   -------------------------------------------------------------------------- */

@media (max-width: 768px) {
  .fame-pagehero--photo { padding-block: var(--s-8) var(--s-6); }

  /* Two columns of 3:2 photographs at 390px is two 165px images; below this the
     grid is one column and the photographs are worth looking at. */
  .fame-evidencephotos__grid { grid-template-columns: 1fr; }

  .fame-keyfacts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--s-4);
  }
}
