/* Manifest typography B: IBM Plex family, keeping the approved brand palette and layout.
   IBM Plex is licensed under the SIL Open Font License 1.1:
   https://github.com/IBM/plex/blob/master/LICENSE.txt
   Production can self-host subset WOFF2 files after the design is chosen. */
:root {
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-synthesis: none;
  font-optical-sizing: auto;
}

.manifest-type-b {
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-weight: 400;
  font-kerning: normal;
}

.manifest-type-b .top nav,
.manifest-type-b .top-action,
.manifest-type-b .solid,
.manifest-type-b .text-link,
.manifest-type-b .manifest-strip span,
.manifest-type-b .manifest-strip a,
.manifest-type-b .minimal-footer a {
  font-family: "IBM Plex Sans", Arial, sans-serif;
  font-weight: 600;
}

.manifest-type-b .top nav { font-size: 14px; letter-spacing: .005em; }
.manifest-type-b .top-action { font-size: 14px; letter-spacing: .005em; }

.manifest-type-b .eyebrow,
.manifest-type-b .paper-top,
.manifest-type-b .paper-bottom,
.manifest-type-b .floor-label,
.manifest-type-b .paper-line span,
.manifest-type-b .stamp,
.manifest-type-b .manifest-strip b,
.manifest-type-b .explain-steps>div>span,
.manifest-type-b .vector-caption {
  font-family: "IBM Plex Mono", "Courier New", monospace;
  font-weight: 600;
  letter-spacing: .055em;
}

.manifest-type-b .eyebrow { font-size: 12px; line-height: 1.5; }
.manifest-type-b h1,
.manifest-type-b h2,
.manifest-type-b h3,
.manifest-type-b .paper-title strong {
  font-family: "IBM Plex Sans Condensed", "Arial Narrow", Arial, sans-serif;
  font-weight: 700;
  font-synthesis: none;
}

.manifest-type-b h1 {
  font-size: clamp(56px, 6.2vw, 88px);
  line-height: .98;
  letter-spacing: -.038em;
  margin: 23px 0 25px;
  max-width: 790px;
}

/* Selected headline accent: the same gold used by the Editorial study. */
.manifest-type-b h1 span { color: #987916; }

.manifest-type-b .lede {
  font-size: clamp(17px, 1.55vw, 20px);
  line-height: 1.55;
  font-weight: 400;
  max-width: 520px;
}

.manifest-type-b .solid { font-size: 15px; }
.manifest-type-b .text-link { font-size: 15px; }
.manifest-type-b .micro { font-size: 12px; line-height: 1.55; }
.manifest-type-b .paper-title strong {
  font-size: clamp(34px, 3.2vw, 48px);
  line-height: 1.01;
  letter-spacing: -.032em;
}
.manifest-type-b .paper-top,
.manifest-type-b .paper-bottom,
.manifest-type-b .floor-label,
.manifest-type-b .stamp,
.manifest-type-b .manifest-strip b,
.manifest-type-b .explain-steps>div>span,
.manifest-type-b .vector-caption { font-size: 12px; }
.manifest-type-b .paper-line { font-size: 14px; }
.manifest-type-b .paper-line em { font-size: 13px; }
.manifest-type-b .manifest-strip span { font-size: 14px; }

.manifest-type-b .explain-head h2 {
  font-size: clamp(38px, 4.3vw, 56px);
  line-height: 1.03;
  letter-spacing: -.041em;
}
.manifest-type-b .explain-head>p:last-child {
  font-size: 18px;
  line-height: 1.57;
}
.manifest-type-b .explain-steps h3 {
  font-size: clamp(24px, 2.1vw, 28px);
  line-height: 1.1;
  letter-spacing: -.026em;
}
.manifest-type-b .explain-steps p { font-size: 16px; line-height: 1.64; }
.manifest-type-b .explain-steps .explain-limit { font-size: 12px; }

@media (max-width: 1050px) {
  .manifest-type-b h1 { font-size: clamp(56px, 7vw, 78px); }
}
@media (max-width: 680px) {
  .manifest-type-b h1 { font-size: clamp(42px, 10vw, 54px); line-height: 1; }
  .manifest-type-b .explain-head h2 { font-size: clamp(34px, 8vw, 40px); }
  .manifest-type-b .explain-head>p:last-child { font-size: 16px; }
  .manifest-type-b .paper-title strong { font-size: 34px; }
  .manifest-type-b .manifest-strip span { font-size: 13px; }
  .manifest-type-b .top-action { font-size: 12px; }
  .manifest-type-b .vector-caption { font-size: 12px; }
}
@media (max-width: 360px) {
  .manifest-main { grid-template-columns: minmax(0, 1fr); }
  .manifest-copy, .manifest-visual { min-width: 0; max-width: 100%; }
  .manifest-type-b h1 { font-size: 39px; }
}
.manifest-type-b .paper-metrics b,
.manifest-type-b .result-metrics strong { font-family: 'IBM Plex Sans Condensed', Arial, sans-serif; }
.manifest-main > p:empty { display: none; }
.manifest-type-b .paper-metrics span { font-family: 'IBM Plex Mono', monospace; }
