/* =========================================================
   hit-manifesto.css — página dedicada do Manifesto
   (usa tokens de assets/styles.css + base de hit-prelaunch.css)
   ========================================================= */

/* ---------- HEADER ---------- */
.mf-hero { position: relative; overflow: hidden; background: var(--ink); color: var(--text-on-dark); }
.mf-hero__bg {
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background: radial-gradient(100% 70% at 50% -10%, var(--gold-soft), transparent 55%);
}
.mf-hero__inner { position: relative; z-index: 2; padding-bottom: clamp(48px, 7vh, 80px); }
.mf-hero__head { max-width: 820px; }
.mf-hero__title { font-size: clamp(34px, 5.2vw, 62px); margin-top: clamp(18px, 3vh, 28px); }
.mf-hero__title .hl { color: var(--gold); }
.mf-hero__lead { margin-top: clamp(18px, 2.6vh, 26px); color: var(--muted-on-dark); font-size: clamp(16px, 1.5vw, 20px); line-height: 1.6; max-width: 46ch; }

/* ---------- BODY ---------- */
.mf-article { background: var(--ink); color: var(--text-on-dark); padding-block: clamp(20px, 4vh, 48px) clamp(64px, 9vh, 110px); }
.mf-prose { max-width: 680px; }
.mf-prose p {
  font-size: clamp(16.5px, 1.5vw, 19.5px);
  line-height: 1.78;
  color: color-mix(in srgb, var(--text-on-dark) 88%, var(--muted-on-dark) 12%);
  text-wrap: pretty;
}
.mf-prose p + p { margin-top: 1.35em; }
.mf-prose strong { color: var(--text-on-dark); font-weight: 700; }
.mf-prose .gold-txt { color: var(--gold-2); }

/* pull-quote / linha de força */
.mf-callout {
  margin-block: clamp(36px, 5.5vh, 56px);
  padding-left: clamp(20px, 3vw, 32px);
  border-left: 3px solid var(--gold);
  font-family: var(--font-display);
  font-weight: var(--display-wght);
  letter-spacing: var(--display-tracking);
  font-size: clamp(25px, 3.2vw, 38px);
  line-height: 1.12;
  text-wrap: balance;
  color: var(--text-on-dark);
}
.mf-callout .hl { color: var(--gold); }

/* ---------- ASSINATURA ---------- */
.mf-sign {
  margin-top: clamp(56px, 8vh, 88px);
  padding-top: clamp(40px, 6vh, 60px);
  border-top: 1px solid var(--line-dark);
  text-align: center;
}
.mf-sign__mark { width: clamp(64px, 8vw, 84px); height: auto; margin-inline: auto; display: block; }
.mf-sign__line {
  font-family: var(--font-display); font-weight: 700; letter-spacing: -.01em;
  font-size: clamp(20px, 2.4vw, 28px); line-height: 1.25;
  max-width: 24ch; margin: 22px auto 0; text-wrap: balance;
}
.mf-sign__line .hl { color: var(--gold); }
.mf-sign__who { margin-top: 22px; color: var(--muted-on-dark); font-size: 14.5px; line-height: 1.7; max-width: 52ch; margin-inline: auto; }
.mf-sign__who b { color: var(--text-on-dark); font-weight: 600; }
.mf-sign__origin {
  margin-top: 18px; font-size: 12px; font-weight: 700;
  letter-spacing: .14em; text-transform: uppercase; color: var(--muted-on-dark);
}
.mf-sign__origin b { color: var(--gold-2); }

/* ---------- CTA ---------- */
.mf-cta { text-align: center; margin-top: clamp(40px, 6vh, 60px); display: flex; flex-direction: column; align-items: center; gap: 16px; }
.mf-cta .pl-hero__micro { text-align: center; }

/* ---------- FOOTER SLIM ---------- */
.mf-foot { background: var(--ink); border-top: 1px solid var(--line-dark); padding-block: 30px; color: var(--muted-on-dark); }
.mf-foot__row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; font-size: 13px; }
.mf-foot__row a { color: var(--gold-2); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 640px) {
  .mf-callout { font-size: 23px; }
  .mf-foot__row { flex-direction: column; align-items: flex-start; gap: 8px; }
}
