/* Identidade das páginas internas; carregado após site.css e editorial.css. */
:root {
  --green: #3b2923;
  --green-dark: #3b2923;
  --paper: #f8f3eb;
  --cream: #e9ddd0;
  --clay: #806337;
  --ink: #3b2923;
  --muted: #6c5a51;
  --line: #cdbbae;
  --white: #fff;
  --serif: 'Sora', Arial, sans-serif;
  --sans: 'Source Sans 3', 'Segoe UI', Arial, sans-serif;
}

body {
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.75;
  font-synthesis: none;
}
body, button, input, textarea, select { font-family: var(--sans); }
h1, h2, h3, .topic-list summary, .method-copy > p > strong {
  font-family: var(--serif);
  font-weight: 500;
  letter-spacing: -.035em;
}
em { font-style: normal; }
h1 em, h2 em { color: var(--clay); font-weight: inherit; }
h1, .page-hero h1, .biography-hero h1, .media-hero h1 {
  font-size: clamp(44px, 4.4vw, 56px);
  line-height: 1.16;
  letter-spacing: -.045em;
}
h2, .editorial-grid h2, .editorial-chapter h2,
.research-story h2, .research-story .reading > h2,
.science-intro h2, .science-intro > .reading > h2,
.course-chooser h2, .bio-opening h2, .split-copy h2,
.contact-band h2, .media-contact h2 {
  font-size: clamp(32px, 3.1vw, 42px);
  line-height: 1.22;
}
h3, .audience-list h3, .principle-grid h3,
.publication-label h3, .paper-list h3,
.media-card h3, .media-paper-list h3,
.media-home-grid h3, .media-lead-copy h3 {
  font-size: 26px;
  line-height: 1.35;
  letter-spacing: -.025em;
}
.timeline h3 { font-size: 23px; line-height: 1.35; }
.course-dossier-copy > h2 { font-size: 38px; line-height: 1.23; }
.course-dossier-copy > h2 > span { font-size: 25px; line-height: 1.4; }
.course-dossier-copy > h3 { font-size: 25px; line-height: 1.35; }
.course-dossier-aside .large-copy { font-size: 27px; line-height: 1.45; }
.method-copy > p > strong { font-size: 25px; line-height: 1.4; }
.contact-form h2, .contact-copy h2 { font-size: 30px; line-height: 1.3; }
.legal-content h2 { font-size: 29px; line-height: 1.35; }
.topic-list summary { font-size: 25px; line-height: 1.45; }

/* Texto de leitura permanece confortável, sem ampliar rótulos e créditos. */
.reading, .reading p, .research-story .reading > p:not(.eyebrow),
.science-intro .reading p, .course-dossier-copy p, .course-dossier-copy li,
.prose, .prose-columns, .audience-list p, .topic-list details > div,
.topic-list details > div p, .principle-grid p,
.publication-entry .reading, .publication-entry .reading p:not(.small),
.media-card > p:not(.eyebrow):not(.media-byline), .media-paper-list p,
.media-lead-copy > p, .paper-list p:not(.small), .timeline p,
.legal-content p, .learning-band p, .three-columns p,
.media-intro, .section-intro, .contact-copy > p {
  font-size: 18px;
  line-height: 1.8;
}
.lead, .page-hero .lead, .hero-bottom .lead, .media-hero .hero-description {
  font-size: 21px;
  font-weight: 400;
  line-height: 1.7;
}
.large-copy, .learning-band .large-copy { font-size: 25px; font-weight: 400; }
.eyebrow, .small-label, .chapter-number, .paper-meta { color: var(--clay); }
.chapter-number, .paper-meta, .timeline li > span { font-family: var(--serif); }
.small, .media-meta, .media-byline, figcaption, .field label span { color: var(--muted); }

/* Contraste bronze no marfim; fundos decorativos em areia e rosado. */
.text-link, .section-index a, .profile-links a, .research-profiles a,
.reading a, .media-paper-list .text-link, .contact-direct > a {
  color: var(--clay);
}
.text-link { border-bottom-color: #b7975e; }
.text-link:hover, .section-index a:hover, .reading a:hover,
.contact-direct > a:hover { color: var(--ink); }
.media-title-link { text-decoration-color: #b7975e; }
.media-title-link:hover, .media-title-link:focus-visible { color: var(--clay); }
.button, .reading > .button {
  background: var(--green);
  border-color: var(--green);
  color: var(--paper);
  font-size: 15px;
  font-weight: 600;
}
.button:hover, .reading > .button:hover { background: #53382e; color: var(--paper); }
.button-ghost { background: transparent; }
.button-ghost:hover { background: #ffffff16; }
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible,
.media-image-link:focus-visible, .media-title-link:focus-visible {
  outline: 3px solid #3b2923;
  outline-offset: 5px;
}
::selection { background: #d9beb2; color: #3b2923; }

.site-header, #site-nav { background: var(--paper); }
.brand-monogram { border-color: #b7975e; }
.brand-name { font-family: var(--serif); font-size: 17px; font-weight: 500; letter-spacing: -.035em; }
.brand-name small { font-family: var(--sans); font-weight: 600; }
.brand-monogram { font-family: var(--serif); }
.menu-toggle { border-color: #b39b89; }
#site-nav { box-shadow: none; }
#site-nav > a { font-size: 14px; }
#site-nav > a[aria-current=page]:after { background: #b7975e; }
.header-cta { color: var(--green); border-color: var(--green); font-size: 14px; }

.timeline-section, .topics-section, .publications-section,
.teaching-principles, .media-television, .media-home,
.learning-band, .credentials { background: var(--cream); }
.contact-band { background: #d9beb2; }
.contact-form { background: var(--cream); }
.hero-portrait figcaption, .media-image-link { background: #e9ddd0; }
.credential-grid p + p, .timeline li, .topic-list details,
.topic-list details:last-child, .principle-grid article,
.editorial-note, .publication-entry, .media-video-grid .media-card,
.media-home-grid article { border-color: var(--line); }
.course-dossier-aside { border-color: #b7975e; }
.course-number { color: var(--clay); }
.field input, .field select, .field textarea {
  border-color: #ac9584;
  background: #fffdf9;
  color: var(--ink);
  font-size: 17px;
}
.field input::placeholder, .field textarea::placeholder { color: #756158; font-size: 16px; }
.contact-form #form-status { border-color: #806337; color: var(--ink); }

/* Nos fundos mais escuros, rótulos e links pequenos usam marrom para contraste. */
:is(.timeline-section, .topics-section, .publications-section,
    .teaching-principles, .media-television, .media-home,
    .learning-band, .credentials, .contact-band, .contact-form)
:is(.eyebrow, .small-label, .chapter-number, .paper-meta,
    .section-index a, .text-link, .profile-links a, .reading a:not(.button)) {
  color: var(--ink);
}
.timeline li > span { color: var(--ink); }
.contact-band .small, .contact-band .small-label { color: var(--ink); }

/* Blocos escuros preservam textos claros e links identificáveis. */
.science-feature, .media-lead { background: #3b2923; color: #f8f3eb; }
.science-feature h2, .media-lead-copy h3 { color: #f8f3eb; }
.science-feature p, .media-lead-copy > p { color: #f0e5d9; }
.science-feature .eyebrow, .media-lead .eyebrow { color: #e9ddd0; }
.science-feature figcaption, .media-lead .media-meta,
.media-lead .media-byline, .media-lead .media-image figcaption { color: #e1d0c3; }
.media-lead-number { color: #d9beb2; }
.science-feature .button, .media-lead .text-link,
.science-feature .text-link { color: #f8f3eb; border-color: #d9beb2; }
.science-feature .button-ghost { background: transparent; }
.science-feature .button-ghost:hover { background: #ffffff16; }
.media-lead .media-title-link { color: #f8f3eb; text-decoration-color: #d9beb2; }
.media-lead .media-title-link:hover { color: #fff; }
.science-feature a:focus-visible, .media-lead a:focus-visible,
.science-feature button:focus-visible { outline-color: #f8f3eb; }

.site-footer { background: #3b2923; color: #f8f3eb; }
.footer-brand { font-family: var(--serif); color: #f8f3eb; font-size: 28px; font-weight: 500; line-height: 1.25; }
.footer-grid p { color: #e9ddd0; font-size: 15px; }
.footer-grid h2 { font-family: var(--serif); color: #e9ddd0; font-size: 11px; font-weight: 600; letter-spacing: .1em; }
.footer-grid > div > a:not(.footer-brand) { color: #f8f3eb; font-size: 14px; }
.footer-note p { color: #f8f3eb; font-family: var(--serif); font-size: 21px; line-height: 1.5; }
.footer-note .text-link { color: #f8f3eb; border-bottom-color: #b7975e; }
.footer-bottom { border-top-color: #806337; color: #e9ddd0; font-size: 12px; }
.footer-bottom a { color: #f8f3eb; }
.site-footer a:focus-visible { outline-color: #f8f3eb; }

@media (max-width: 1000px) {
  #site-nav { box-shadow: 0 15px 20px #3b292310; }
  #site-nav > a { font-size: 18px; }
  .editorial-chapter h2, .research-story .reading > h2 { font-size: 34px; }
  .course-dossier-copy > h2 { font-size: 34px; }
  .course-dossier-aside .large-copy { font-size: 25px; }
  .publication-label h3, .media-card h3 { font-size: 25px; }
}

@media (max-width: 700px) {
  body { font-size: 17px; }
  h1, .page-hero h1, .biography-hero h1, .media-hero h1 { font-size: 38px; line-height: 1.18; }
  h2, .editorial-grid h2, .editorial-chapter h2,
  .research-story h2, .research-story .reading > h2,
  .science-intro h2, .science-intro > .reading > h2,
  .course-chooser h2, .bio-opening h2, .split-copy h2,
  .contact-band h2, .media-contact h2 { font-size: 31px; line-height: 1.28; }
  h3, .audience-list h3, .principle-grid h3, .publication-label h3,
  .paper-list h3, .media-card h3, .media-paper-list h3,
  .media-home-grid h3, .media-lead-copy h3 { font-size: 23px; line-height: 1.4; }
  .course-dossier-copy > h2 { font-size: 31px; line-height: 1.3; }
  .course-dossier-copy > h2 > span { font-size: 23px; }
  .course-dossier-copy > h3, .method-copy > p > strong { font-size: 23px; }
  .course-dossier-aside .large-copy { font-size: 25px; }
  .timeline h3 { font-size: 21px; }
  .topic-list summary { font-size: 22px; line-height: 1.45; }
  .contact-form h2, .contact-copy h2, .legal-content h2 { font-size: 27px; line-height: 1.35; }
  .reading, .reading p, .research-story .reading > p:not(.eyebrow),
  .science-intro .reading p, .course-dossier-copy p, .course-dossier-copy li,
  .prose, .prose-columns, .audience-list p, .topic-list details > div,
  .topic-list details > div p, .principle-grid p,
  .publication-entry .reading, .publication-entry .reading p:not(.small),
  .media-card > p:not(.eyebrow):not(.media-byline), .media-paper-list p,
  .media-lead-copy > p, .paper-list p:not(.small), .timeline p,
  .legal-content p, .learning-band p, .three-columns p,
  .media-intro, .section-intro, .contact-copy > p { font-size: 17px; line-height: 1.8; }
  .lead, .page-hero .lead, .hero-bottom .lead, .media-hero .hero-description { font-size: 19px; line-height: 1.75; }
  .large-copy, .learning-band .large-copy { font-size: 23px; }
  .brand-name { font-size: 15px; }
  .brand-monogram { font-size: 24px; }
  .button, .reading > .button, .course-dossier-aside > .button,
  .contact-form .button { font-size: 14px; }
  .text-link { font-size: 14px; }
  .footer-brand { font-size: 25px; }
  .footer-grid > div:first-child p { font-size: 14px; }
  .footer-grid > div > a:not(.footer-brand) { font-size: 14px; }
}

@media (max-width: 370px) {
  .brand-name { font-size: 13px; }
  .brand-monogram { font-size: 22px; }
}
