/* Ajustes de tipografia e cores solicitados para a Home — v1.1.0 */
.hero h1 {
  font-size: clamp(38px, 4.75vw, 75px);
  line-height: .9;
}

.center-panel h2 {
  font-size: clamp(30px, 3.72vw, 55px);
  line-height: 1.08;
  max-width: 1000px;
}

.feature h2 {
  font-size: clamp(29px, 3.3vw, 49px);
  line-height: 1.04;
}

.about {
  background: #050505;
  color: var(--white);
}

.about-copy h2 {
  font-size: clamp(32px, 3.36vw, 53px);
  line-height: 1.02;
}

.about-copy > div {
  color: #b7b3ab;
}

.film-banner h2 {
  font-size: clamp(29px, 4.05vw, 64px);
  line-height: .92;
}

.contact-panel h2 {
  font-size: clamp(21px, 2.25vw, 34px);
}

@media (max-width: 900px) {
  .hero h1 { font-size: 34px; }
  .center-panel h2,
  .feature h2,
  .about-copy h2 { font-size: 34px; }
  .film-banner h2 { font-size: 32px; }
}

/* Refinamentos finais do acervo */
.center-panel { min-height: 434px; padding-top: 78px; padding-bottom: 78px; }
.archive-intro h1 { font-size: clamp(34px, 4.4vw, 68px); }
.archive-intro > p:last-child { color: var(--yellow); }
.photo-grid h2 { font-size: clamp(14px, 1.5vw, 24px); letter-spacing: .04em; }
.films-grid h2 { font-size: clamp(17px, 1.6vw, 24px); margin-top: 24px; }
.film-summary { color: #aaa69e; font-size: 11px; line-height: 1.7; padding: 0 28px; }
.story-text { color: #c3c0ba; line-height: 1.9; max-width: 760px; }
.author-audio { margin: 34px 0 16px; padding-top: 22px; border-top: 1px solid #5c5141; max-width: 620px; }
.author-audio span { display: block; color: var(--gold); font-size: 9px; font-weight: 700; letter-spacing: .28em; text-transform: uppercase; margin-bottom: 14px; }
.author-audio audio { width: 100%; }
.about-page .about { min-height: 100svh; }
.about-page .about-image { min-height: 100svh; }
.about-page .about-copy h1 {
  font-family: var(--display);
  font-size: clamp(25px, 2.25vw, 36px);
  font-weight: 400;
  line-height: 1.08;
  margin: 28px 0;
}
.contact-page { min-height: calc(100svh - 112px); justify-content: center; }
.contact-page h1 { font-family: var(--display); font-size: clamp(25px, 2.2vw, 38px); font-weight: 400; text-transform: uppercase; letter-spacing: .25em; margin: 0 0 30px; }
.contact-page > p { color: var(--muted); margin: 0 0 35px; }

@media (max-width: 900px) {
  .center-panel { min-height: 392px; padding-top: 62px; padding-bottom: 62px; }
  .archive-intro h1 { font-size: 34px; }
  .photo-grid h2 { font-size: 13px; }
  .about-page .about-image { min-height: 640px; }
}
