/* Manifesto pelo Quarto Poder - layout editorial. */
.pagina-manifesto .manifesto-hero {
  padding: calc(var(--header-height) + clamp(48px, 7vw, 94px)) 0 70px;
  background: linear-gradient(118deg, #fff 0%, #fffdf9 52%, #f4ede1 100%);
  border-bottom: 1px solid var(--color-border);
}
.manifesto-hero-inner { max-width: var(--container); }
.manifesto-hero .trilha { margin-bottom: 34px; }
.manifesto-hero .eyebrow { margin-bottom: 19px; }
.manifesto-hero h1 {
  max-width: 1020px;
  font-size: clamp(3.1rem, 7.25vw, 7.7rem);
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.075em;
  margin: 0 0 30px;
  color: var(--color-dark);
}
.manifesto-hero h1 span { color: var(--color-gold-dark); }
.manifesto-lead {
  max-width: 860px;
  color: var(--color-dark);
  font-size: clamp(1.14rem, 2vw, 1.5rem);
  line-height: 1.65;
  margin-bottom: 18px;
}
.manifesto-clarificacao {
  max-width: 750px;
  color: var(--color-muted);
  font-size: 1rem;
  line-height: 1.7;
  margin: 0;
}
.manifesto-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 30px 0 23px;
}
.manifesto-hero .manifesto-pdf-link {
  padding: 14px 18px;
  color: var(--color-gold-dark);
  font-weight: 780;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.manifesto-hero-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px 12px;
  font-size: .81rem;
  color: var(--color-muted);
}
.manifesto-hero .content-share { margin-top: 20px; }
.manifesto-layout {
  display: grid;
  grid-template-columns: minmax(205px, 250px) minmax(0, 1fr);
  gap: clamp(28px, 4vw, 68px);
  align-items: start;
  padding-top: 66px;
  padding-bottom: 100px;
}
.manifesto-layout .context-nav {
  position: sticky;
  top: calc(var(--header-height) + 18px);
  margin: 0;
  align-self: start;
  max-height: calc(100svh - var(--header-height) - 32px);
}
.manifesto-layout .context-nav .context-nav-desktop strong { font-size: .88rem; letter-spacing: .08em; }
.manifesto-layout .context-nav .context-nav-desktop nav a {
  padding: 6px 11px;
  font-size: .83rem;
}
.manifesto-conteudo { min-width: 0; }
.manifesto-conteudo .eyebrow { margin-bottom: 12px; }
.manifesto-conteudo h2 { color: var(--color-dark); }
.manifesto-resumo {
  padding-bottom: 65px;
  border-bottom: 1px solid var(--color-border);
}
.manifesto-resumo h2,
.manifesto-divisoria h2,
.manifesto-recursos h2,
.manifesto-pdf h2,
.manifesto-participe h2 {
  max-width: 850px;
  margin: 0 0 24px;
  font-size: clamp(2.05rem, 4vw, 3.8rem);
  line-height: 1.1;
  letter-spacing: -.05em;
}
.manifesto-resumo > p,
.manifesto-recursos > p,
.manifesto-pdf p,
.manifesto-participe > p {
  max-width: 790px;
  color: var(--color-muted);
  font-size: 1.07rem;
  line-height: 1.85;
  margin-bottom: 19px;
}
.manifesto-triade {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 33px 0;
}
.manifesto-triade > div {
  padding: clamp(18px, 2vw, 26px);
  border: 1px solid var(--color-border);
  border-radius: 18px;
  background: var(--color-cream);
}
.manifesto-triade span { color: var(--color-gold-dark); font-size: .75rem; font-weight: 850; }
.manifesto-triade h3 { font-size: 1.11rem; margin: 13px 0 9px; }
.manifesto-triade p { color: var(--color-muted); font-size: .91rem; line-height: 1.65; margin: 0; }
.manifesto-limites {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin: 24px 0;
}
.manifesto-limites > div {
  border-top: 3px solid var(--color-gold-dark);
  padding: 18px 15px 8px;
  background: #faf8f4;
  border-radius: 0 0 15px 15px;
}
.manifesto-limites > div:last-child { border-top-color: #9b9182; }
.manifesto-limites h3 { font-size: 1.13rem; margin: 0 0 9px; }
.manifesto-limites p { font-size: .95rem; line-height: 1.72; margin: 0; color: var(--color-muted); }
.manifesto-resumo .manifesto-nota-editorial {
  font-size: .86rem;
  background: #fff;
  border-left: 3px solid var(--color-gold);
  padding: 12px 18px;
  margin-top: 30px;
  color: var(--color-muted);
}
.manifesto-divisoria {
  padding: 70px 0 35px;
  text-align: left;
}
.manifesto-divisoria p { color: var(--color-muted); font-size: 1.02rem; line-height: 1.7; }
.manifesto-capitulo {
  padding: 50px 0 75px;
  border-bottom: 1px solid var(--color-border);
  scroll-margin-top: calc(var(--header-height) + 28px);
}
.manifesto-numero {
  display: inline-block;
  color: var(--color-gold-dark);
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.manifesto-capitulo > h2 {
  font-size: clamp(2rem, 3.9vw, 3.65rem);
  line-height: 1.1;
  letter-spacing: -.05em;
  margin: 0 0 30px;
  max-width: 830px;
}
.manifesto-share-section { display: flex; align-items: center; flex-wrap: wrap; gap: 9px 15px; margin: -11px 0 27px; }
.manifesto-share-section button { border: none; background: none; color: var(--color-gold-dark); text-decoration: underline; text-underline-offset: 3px; font-size: .84rem; font-weight: 750; cursor: pointer; padding: 7px 0; }
.manifesto-share-section button:hover { color: var(--color-dark); }
.manifesto-share-section span { font-size: .78rem; color: #386746; }
.manifesto-prosa { max-width: 795px; }
.manifesto-prosa p {
  color: #4f4d4a;
  font-size: clamp(1.04rem, 1.4vw, 1.12rem);
  line-height: 1.88;
  margin-bottom: 20px;
  overflow-wrap: break-word;
}
.manifesto-prosa h3 {
  font-size: clamp(1.37rem, 2.3vw, 1.85rem);
  line-height: 1.28;
  letter-spacing: -.028em;
  color: var(--color-dark);
  margin: 40px 0 18px;
}
.manifesto-prosa h3 + p { margin-top: 0; }
.manifesto-proxima {
  display: inline-flex;
  gap: 12px;
  align-items: center;
  margin-top: 22px;
  color: var(--color-gold-dark);
  font-weight: 780;
  border-bottom: 1px solid currentColor;
  padding-bottom: 5px;
}
.manifesto-recursos { padding: 75px 0 70px; }
.manifesto-faq { margin-top: 28px; border-top: 1px solid var(--color-border); }
.manifesto-faq details { border-bottom: 1px solid var(--color-border); }
.manifesto-faq summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 19px 6px 19px 0;
  font-size: 1.01rem;
  font-weight: 760;
  line-height: 1.45;
  cursor: pointer;
  list-style: none;
}
.manifesto-faq summary::-webkit-details-marker { display: none; }
.manifesto-faq summary span { font-size: 1.4rem; line-height: 1; color: var(--color-gold-dark); }
.manifesto-faq details[open] summary span { transform: rotate(45deg); }
.manifesto-faq details div { max-width: 760px; padding: 0 35px 22px 0; }
.manifesto-faq details p { color: var(--color-muted); font-size: 1rem; line-height: 1.8; margin: 0; }
.manifesto-pdf {
  display: grid;
  grid-template-columns: minmax(0,1fr) 200px;
  align-items: center;
  gap: 28px;
  background: var(--color-cream);
  border: 1px solid var(--color-border);
  border-radius: 22px;
  padding: clamp(25px, 4vw, 42px);
  margin-bottom: 68px;
}
.manifesto-pdf p { font-size: 1rem; }
.manifesto-pdf-icone {
  display: grid;
  align-content: space-between;
  background: #191919;
  color: #fff;
  aspect-ratio: .71;
  border-radius: 3px 16px 16px 3px;
  box-shadow: 13px 16px 25px rgba(0,0,0,.14);
  padding: 18px;
}
.manifesto-pdf-icone span { font-size: .65rem; letter-spacing: .18em; font-weight: 800; color: #ccaf76; }
.manifesto-pdf-icone strong { font-size: 1.7rem; line-height: 1.06; font-weight: 900; letter-spacing: -.04em; word-break: break-word; }
.manifesto-participe {
  padding: clamp(30px, 5vw, 55px);
  background: #f7f3ed;
  border-radius: 22px;
}
.manifesto-participe-acoes { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.manifesto-participe .content-share { margin-top: 28px; }
.manifesto-creditos { font-size: .78rem !important; line-height: 1.6 !important; margin: 26px 0 0 !important; }
.manifesto-capa-pdf, .manifesto-fecho-pdf { display: none; }
@media(max-width: 1050px) {
  .manifesto-layout { grid-template-columns: 220px minmax(0,1fr); gap: 25px; }
}
@media(max-width: 900px) {
  .manifesto-layout { display: flex; flex-direction: column; align-items: stretch; padding-top: 22px; gap: 28px; }
  .manifesto-layout .context-nav {
    position: sticky;
    top: calc(var(--header-height) + 6px);
    z-index: 20;
    width: 100%;
    padding: 0;
    max-height: calc(100svh - var(--header-height) - 12px);
    overflow-y: auto;
    box-shadow: 0 8px 20px rgba(0,0,0,.09);
  }
  .manifesto-layout .context-nav-mobile summary { padding: 13px 17px; }
  .manifesto-layout .context-nav-mobile nav { max-height: 58svh; overflow: auto; }
}
@media(max-width: 650px) {
  .pagina-manifesto .manifesto-hero { padding-top: calc(var(--header-height) + 35px); padding-bottom: 40px; }
  .manifesto-hero h1 { font-size: clamp(2.7rem, 11.4vw, 4.4rem); }
  .manifesto-lead { font-size: 1.08rem; }
  .manifesto-hero-actions { align-items: stretch; }
  .manifesto-hero-actions .btn { text-align: center; justify-content: center; }
  .manifesto-hero .trilha { margin-bottom: 24px; }
  .manifesto-hero-meta { gap: 5px 8px; }
  .manifesto-triade, .manifesto-limites { grid-template-columns: 1fr; }
  .manifesto-resumo { padding-bottom: 38px; }
  .manifesto-divisoria { padding: 45px 0 10px; }
  .manifesto-capitulo { padding: 45px 0 50px; }
  .manifesto-prosa p { font-size: 1.025rem; line-height: 1.78; }
  .manifesto-pdf { grid-template-columns: 1fr; margin-bottom: 30px; }
  .manifesto-pdf-icone { display: none; }
  .manifesto-participe { padding: 26px 21px; }
}
@media print {
  @page { size: A4; margin: 20mm 19mm 21mm; }
  body { background: #fff !important; color: #171717 !important; }
  .pagina-manifesto .site-header, .pagina-manifesto .site-footer,
  .pagina-manifesto .manifesto-hero, .pagina-manifesto .manifesto-layout > aside,
  .pagina-manifesto .manifesto-resumo, .pagina-manifesto .manifesto-divisoria,
  .pagina-manifesto .manifesto-recursos, .pagina-manifesto .manifesto-pdf,
  .pagina-manifesto .manifesto-participe, .pagina-manifesto .manifesto-proxima, .pagina-manifesto .manifesto-share-section { display: none !important; }
  .pagina-manifesto .manifesto-capa-pdf {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    min-height: 245mm;
    page-break-after: always;
    padding: 10mm;
    border-top: 7px solid #9b7642;
  }
  .pagina-manifesto .manifesto-capa-pdf h1 { font-size: 45pt; line-height: 1.04; letter-spacing: -.05em; color: #171717; }
  .pagina-manifesto .manifesto-capa-pdf p { font-size: 15pt; line-height: 1.6; color: #3f3c36; }
  .pagina-manifesto .manifesto-capa-pdf small { margin-top: auto; font-size: 10pt; color: #666; }
  .pagina-manifesto .manifesto-layout { display: block !important; padding: 0 !important; margin: 0 !important; }
  .pagina-manifesto .manifesto-conteudo { display: block !important; }
  .pagina-manifesto .manifesto-capitulo { display: block; padding: 0 !important; border: 0 !important; break-before: page; }
  .pagina-manifesto .manifesto-capitulo:first-of-type { break-before: auto; }
  .pagina-manifesto .manifesto-capitulo h2 { font-size: 22pt !important; line-height: 1.2; margin: 8mm 0 6mm; break-after: avoid; }
  .pagina-manifesto .manifesto-numero { font-size: 8pt !important; }
  .pagina-manifesto .manifesto-prosa p { font-size: 10.8pt !important; line-height: 1.65 !important; margin-bottom: 4mm !important; color: #262626 !important; orphans: 3; widows: 3; }
  .pagina-manifesto .manifesto-prosa h3 { font-size: 14pt !important; line-height: 1.3; margin: 8mm 0 4mm !important; break-after: avoid; }
  .pagina-manifesto .context-section { scroll-margin: 0; }
}
