/* The JMR open letter shares the landing's fonts and palette, but owns its reading rhythm. */
.home-surface .manifesto-section {
  width: 100%;
  max-width: none;
  scroll-margin-top: 64px;
  margin: 0;
  padding: clamp(78px, 9vw, 128px) max(22px, calc((100vw - var(--jmr-container)) / 2));
  border-top: 1px solid var(--jmr-line-strong);
  background: var(--jmr-void);
  color: var(--jmr-text);
}

.manifesto-letter { max-width: 86ch; margin-inline: auto; }
.manifesto-opening { padding-bottom: clamp(44px, 6vw, 76px); }
.manifesto-opening::before {
  display: block;
  width: 70px;
  height: 2px;
  margin-bottom: clamp(42px, 6vw, 70px);
  background: linear-gradient(90deg, var(--jmr-brand-green) 0 24px, var(--jmr-text) 24px 46px, var(--jmr-brand-red) 46px);
  content: "";
}
.manifesto-opening h2 {
  margin: 0 0 28px;
  color: var(--jmr-text-soft);
  font-family: var(--jmr-font-ui);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .18em;
  line-height: 1.4;
  text-transform: uppercase;
}
.manifesto-title {
  max-width: none;
  margin: 0;
  font-family: var(--jmr-font-editorial);
  font-size: clamp(2.25rem, 6.1vw, 4.8rem);
  font-weight: 440;
  letter-spacing: -.035em;
  line-height: .97;
  text-wrap: balance;
}

.manifesto-body { max-width: 82ch; }
.manifesto-body p {
  margin: 0 0 1.38em;
  color: var(--jmr-text-soft);
  font-family: var(--jmr-font-editorial);
  font-size: clamp(1.18rem, 1.65vw, 1.38rem);
  font-weight: 400;
  line-height: 1.58;
  text-wrap: pretty;
}
.manifesto-body .manifesto-intro {
  color: var(--jmr-text);
  font-size: clamp(1.42rem, 2.3vw, 1.82rem);
  font-style: italic;
  line-height: 1.48;
}
.manifesto-body .manifesto-pause {
  margin: clamp(48px, 6vw, 76px) 0 clamp(26px, 3vw, 38px);
  color: var(--jmr-text);
  font-size: clamp(1.55rem, 3vw, 2.1rem);
  line-height: 1.25;
}

.manifesto-ending {
  max-width: 82ch;
  margin-top: clamp(70px, 9vw, 112px);
}
.manifesto-declaration {
  margin: 0;
  font-family: var(--jmr-font-editorial);
  font-size: clamp(1.55rem, 3.7vw, 2.8rem);
  line-height: 1.28;
}
.manifesto-declaration span,
.manifesto-declaration strong { display: block; }
.manifesto-declaration strong {
  margin-top: .8em;
  color: var(--jmr-text);
  font-weight: 590;
  font-style: italic;
}
.manifesto-signature {
  margin: clamp(46px, 6vw, 72px) 0 0;
  color: var(--jmr-text-soft);
  font-family: var(--jmr-font-editorial);
  font-size: 1.3rem;
  font-style: italic;
}
@media (max-width: 560px) {
  .home-surface .manifesto-section { padding: 72px 20px 88px; }
  .manifesto-opening { padding-bottom: 46px; }
  .manifesto-opening::before { margin-bottom: 50px; }
  .manifesto-opening h2 { margin-bottom: 22px; }
  .manifesto-title { font-size: clamp(1.8rem, 9.1vw, 2.5rem); }
  .manifesto-body p { font-size: 1.2rem; line-height: 1.58; }
  .manifesto-body .manifesto-intro { font-size: 1.45rem; }
  .manifesto-body .manifesto-pause { font-size: 1.7rem; }
  .manifesto-declaration { font-size: clamp(1.55rem, 6.3vw, 2rem); }
}
