/* ============================================================
   MANIFESTO BAND (display-md section head)
   ============================================================ */
.manifesto {
  background: var(--color-canvas);
  color: var(--color-ink);
  border-top: 1px solid var(--color-hairline);
}
.manifesto__grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: var(--sp-xxl);
  align-items: start;
}
.manifesto__quote {
  color: var(--color-ink);
  font-family: var(--font-ferrari);
  font-size: clamp(28px, 4vw, 36px);
  font-weight: 500; line-height: 1.2; letter-spacing: -0.36px;
}
.manifesto__quote .red { color: var(--color-primary); }
.manifesto__body {
  color: var(--color-body);
  font-family: var(--font-ferrari);
  font-size: 14px; font-weight: 400; line-height: 1.5;
  max-width: 60ch;
  margin-top: var(--sp-md);
}
.manifesto__slogans {
  display: flex; flex-direction: column; gap: var(--sp-sm);
  margin-top: var(--sp-lg);
}
.manifesto__slogan {
  color: var(--color-ink);
  font-family: var(--font-ferrari);
  font-size: 26px; font-weight: 500; line-height: 1.5; letter-spacing: 0.195px;
  display: flex; align-items: baseline; gap: var(--sp-md);
}
.manifesto__slogan .num {
  color: var(--color-muted);
  font-size: 13px; font-weight: 600; letter-spacing: 1.1px; text-transform: uppercase;
  min-width: 28px;
}
.manifesto__slogan .en {
  color: var(--color-body);
  font-size: 16px; font-weight: 500; letter-spacing: 0.08px;
  display: block; margin-top: var(--sp-xxs);
}

/* ============================================================
   SPEC BAND — spec-cell / race-position-cell treatment
   ============================================================ */
.spec-band {
  background: var(--color-canvas);
  border-top: 1px solid var(--color-hairline);
  border-bottom: 1px solid var(--color-hairline);
}
.spec-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
.spec-cell {
  background: transparent;
  color: var(--color-ink);
  padding: var(--sp-sm) 0;
  border-left: 1px solid var(--color-hairline);
  padding-left: var(--sp-md);
}
.spec-cell:first-child { border-left: 0; padding-left: 0; }
.spec-cell__value {
  font-family: var(--font-ferrari);
  font-size: clamp(48px, 7vw, 80px); font-weight: 700; line-height: 1.0; letter-spacing: -1.6px;
  color: var(--color-ink);
}
.spec-cell__value--race { color: var(--color-primary); }
.spec-cell__label {
  color: var(--color-muted-soft);
  font-family: var(--font-ferrari);
  font-size: 11px; font-weight: 600; line-height: 1.4; letter-spacing: 1.1px;
  text-transform: uppercase;
  margin-top: var(--sp-xxs);
}
