.communication-page .communication-article {
  width: 100%;
  min-width: 0;
  max-width: 860px;
  margin-inline: auto;
}
.communication-page .communication-intro { padding-block: 2rem; }
.communication-page .communication-kicker {
  color: var(--goldenrod);
  font-family: var(--font-heading);
  margin-bottom: .75rem;
}
.communication-page h1 { max-width: 20ch; font-size: clamp(2.8rem, 6vw, 4.5rem); }
.communication-page .communication-deck { font-size: 1.2rem; }
.communication-page .communication-toc,
.communication-page .communication-note {
  background: var(--bg-secondary);
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  padding: 1.25rem 1.5rem;
  margin-block: 1.5rem;
}
.communication-page .communication-toc ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .35rem 1.5rem;
  list-style: none;
}
.communication-page .communication-toc a { display: block; padding-block: .4rem; }
.communication-page section { margin-block: 2.5rem; }
.communication-page section[id],
.communication-page li[id] { scroll-margin-top: 7rem; }
.communication-page h2 { margin-bottom: 1rem; }
.communication-page h3 { margin-block: 1.5rem .65rem; }
.communication-page a:not(.btn) { text-decoration: underline; text-underline-offset: .18em; }
.communication-page a:focus-visible { outline: 2px solid var(--goldenrod); outline-offset: 4px; }
.communication-page .communication-note p:last-child { margin-bottom: 0; }
.communication-page .communication-references { padding-left: 1.5rem; }
.communication-page .communication-references li { margin-block: 1.1rem; padding-left: .3rem; overflow-wrap: anywhere; }
.communication-page .communication-meta { color: var(--text-secondary); font-size: .95rem; }
@media (max-width: 600px) {
  .communication-page .communication-toc ul { grid-template-columns: 1fr; }
  .communication-page .communication-toc,
  .communication-page .communication-note { padding: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.communication-page) { scroll-behavior: auto; }
}
