/* v1.2.4: desktop-balanced editorial widths with mobile/tablet preservation. */

.hero h1,
.hero__lead,
.institutional-problem h2,
.institutional-problem .large-copy,
.recognition-overview h2,
.recognition-overview h3,
.recognition-overview p {
  text-align: left;
}

/* Desktop composition: use the full shell without stretching paragraphs past readable measure. */
@media (min-width: 1181px) {
  .hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(320px, .82fr);
    gap: clamp(3rem, 5vw, 6rem);
  }

  .hero__copy {
    justify-self: start;
    width: min(100%, 780px);
  }

  .hero h1 {
    max-width: min(100%, 13.2em);
  }

  .hero__lead {
    max-width: 64ch;
  }

  .hero-seal-stage {
    justify-self: center;
    width: min(34vw, 500px);
  }

  .page-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
    align-items: center;
  }

  .page-hero h1 {
    max-width: min(100%, 14em);
  }

  .page-hero p:last-child {
    max-width: 42ch;
  }

  .editorial-section {
    grid-template-columns: minmax(0, .92fr) minmax(260px, .38fr);
  }

  .longform {
    max-width: min(1280px, var(--shell));
  }

  .longform__section {
    grid-template-columns: 64px minmax(0, 1fr) minmax(220px, 300px);
    column-gap: clamp(2.5rem, 4.5vw, 5.5rem);
  }

  .longform__section--wide {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .longform h2 {
    max-width: min(100%, 18em);
  }

  .longform p {
    max-width: 68ch;
  }

  .institutional-problem__inner,
  .history-preview__inner,
  .horizon-heading {
    margin-inline: auto;
  }

  .institutional-problem__copy {
    width: min(100%, 1080px);
  }

  .institutional-problem h2,
  .history-preview__inner h2 {
    max-width: min(100%, 16em);
  }

  .memorandum-extract blockquote {
    max-width: 20em;
  }

  .recognition-overview .recognition-list article {
    grid-template-columns: 64px minmax(250px, .72fr) minmax(320px, 1.28fr);
  }

  .recognition-page .recognition-list article > div {
    display: grid;
    grid-template-columns: minmax(250px, .72fr) minmax(320px, 1.28fr);
  }

  .footer-grid {
    grid-template-columns: minmax(0, 1.35fr) minmax(170px, .55fr) minmax(140px, .45fr);
  }
}

@media (min-width: 1440px) {
  .hero__grid {
    grid-template-columns: minmax(0, 1.06fr) minmax(380px, .74fr);
  }

  .hero h1 {
    max-width: min(100%, 13.8em);
  }

  .page-hero__grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .62fr);
  }
}

/* Final cascade pass for UI/content polish across shared components. */
.site-nav a {
  line-height: 1.2;
}

.site-nav .nav-cta {
  align-items: center;
  min-height: 42px;
}

.page-hero__grid > p {
  color: currentColor;
  opacity: .86;
}

.page-hero--dark .page-hero__grid > p {
  color: #e8e1d3;
}

.longform__section > div:not(.longform__index, .wide-content),
.recognition-page .recognition-list article > div,
.timeline-content,
.legal-document section > div {
  min-width: 0;
}

.longform h2,
.recognition-list h3,
.timeline-content h2,
.memorandum-article h2 {
  text-wrap: balance;
}

.longform p,
.recognition-list p,
.timeline-record p,
.legal-document p {
  text-wrap: pretty;
}

.text-link--light:hover {
  color: #fff;
  border-color: #fff;
}

@media (min-width: 1181px) and (max-width: 1320px) {
  .site-header__inner {
    gap: 1.2rem;
  }

  .site-nav {
    gap: clamp(.65rem, 1vw, 1rem);
  }

  .site-nav a {
    font-size: clamp(.6rem, .55vw, .68rem);
    letter-spacing: .055em;
  }

  .site-nav .nav-cta {
    padding-inline: .72rem;
  }
}

/* Tablet and portrait layouts stay deliberately single-column or simplified. */
@media (max-width: 1023px), (max-width: 1180px) and (orientation: portrait) {
  .hero__grid { grid-template-columns: 1fr; }
  .hero h1 { max-width: 15ch; }
  .hero__lead { max-width: 44ch; }

  .recognition-overview .recognition-list article {
    grid-template-columns: 52px minmax(0, 1fr);
    gap: .45rem 1.35rem;
    align-items: start;
  }

  .recognition-overview .recognition-list article > span {
    grid-column: 1;
    grid-row: 1 / span 2;
    padding-top: .35rem;
  }

  .recognition-overview .recognition-list h3,
  .recognition-overview .recognition-list p {
    grid-column: 2;
  }

  .recognition-overview .recognition-list p {
    margin-top: .35rem;
    max-width: 60ch;
  }

  .recognition-page .recognition-list article > div {
    display: block;
  }

  .recognition-page .recognition-list h3,
  .recognition-definition,
  .recognition-question {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (max-width: 1180px) {
  .brand {
    max-width: min(76vw, 520px);
  }

  .brand__text strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .site-nav a,
  .site-nav .nav-cta {
    min-height: 58px;
  }
}

@media (min-width: 1024px) and (max-height: 720px) {
  .hero {
    min-height: calc(100dvh - 78px);
    padding-block: 1.35rem 1.6rem;
  }

  .hero__grid {
    grid-template-columns: minmax(0, 1.12fr) minmax(300px, .68fr);
    gap: clamp(1.75rem, 3.5vw, 3.5rem);
  }

  .hero h1 {
    max-width: min(100%, 14em);
    font-size: clamp(3.6rem, 4.8vw, 4.35rem);
    line-height: .95;
  }

  .hero__lead {
    max-width: 68ch;
    margin-top: .7rem;
    font-size: clamp(1rem, 1.25vw, 1.08rem);
    line-height: 1.42;
  }

  .hero__motto { margin-bottom: .6rem; }
  .hero-seal-stage { width: min(27vw, 365px); }
  .orcid-form > label { margin-bottom: .4rem; }
  .orcid-form input,
  .orcid-form .button { min-height: 50px; height: 50px; }
  .form-help { margin-top: .45rem; }
}

@media (max-width: 767px) {
  .brand {
    max-width: calc(100vw - 96px);
  }

  .brand__text strong {
    font-size: clamp(.68rem, 2.8vw, .76rem);
  }

  .hero h1 {
    max-width: min(100%, 12.5ch);
  }

  .hero__lead {
    max-width: 38ch;
  }

  .institutional-problem h2 { max-width: 14ch; }
  .principium-note { display: grid; gap: .45rem; }

  .recognition-overview .recognition-list article {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: .4rem 1rem;
  }

  .recognition-overview .recognition-list h3,
  .recognition-overview .recognition-list p {
    grid-column: 2;
  }

  .memorandum-extract blockquote {
    max-width: 18ch;
  }
}

@media (max-width: 479px) {
  .brand {
    max-width: calc(100vw - 88px);
  }

  .brand__text strong {
    letter-spacing: .005em;
  }

  .hero h1,
  .nomination-shell h1 {
    max-width: min(100%, 12ch);
  }

  .page-hero h1,
  .institutional-problem h2,
  .history-preview__inner h2 {
    max-width: 100%;
  }
}
