/* Newsroom version B, approved by Ken on November 5, 2026: one entry layout, a date rail on the left, titles and text in one main column. */
.newsroom { max-width: 80rem; margin: 0 auto; }
.newsroom-header { padding: 4.5rem 0 3rem; }
.newsroom-header h1 { font-size: 3.75rem; line-height: 1.02; }
.newsroom-list { list-style: none; padding: 0; margin: 0; border-block: 1px solid rgb(0 0 0 / 0.14); }
.newsroom-list > li + li { border-top: 1px solid rgb(0 0 0 / 0.14); }
.newsroom-story { display: block; padding: 2.5rem 0; color: inherit; text-decoration: none; }
.newsroom-meta { font-size: 1rem; line-height: 1.5; color: #737373; }
.newsroom-meta time::before { content: " · "; }
.newsroom-copy { min-width: 0; }
.newsroom-copy h2 { max-width: 52rem; margin: 0.75rem 0 0; font-family: var(--serif); font-size: 2.125rem; line-height: 1.1; letter-spacing: -0.03em; font-weight: 400; text-wrap: balance; }
.newsroom-description { max-width: 38rem; margin-top: 1rem; font-size: 1.125rem; line-height: 1.6; text-wrap: pretty; }
.newsroom-story:is(:hover, :focus-visible) h2 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.15em; }
.newsroom-story:focus-visible { outline-offset: 8px; border-radius: 4px; }
.newsroom-image { margin-top: 1.5rem; overflow: hidden; background: var(--ink); border-radius: 4px; }
.newsroom-image img { display: block; width: 100%; aspect-ratio: 1.5; object-fit: cover; }
.newsroom-preview-note { max-width: 48rem; margin-bottom: 3rem; font-size: 1rem; line-height: 1.6; color: #737373; }

/* Press releases: back link and date in the rail, title, lead and text in one column. */
.release { padding-top: 2.5rem; }
.release-back a { display: inline-flex; align-items: center; gap: 0.75rem; min-height: 2.75rem; font-size: 1rem; text-decoration: none; }
.release-back a:is(:hover, :focus-visible) { text-decoration: underline; }
.newsroom-article .release .article-meta { margin-top: 1rem; font-size: 1rem; line-height: 1.5; color: #737373; }
.release .article-meta time::before { content: " · "; }
.newsroom-article .release .article-header { max-width: 56rem; padding: 1.5rem 0 0; gap: 0; }
.newsroom-article .release h1 { font-size: 4rem; line-height: 1.06; }
.newsroom-article .release .article-lead { max-width: 42rem; margin-top: 1.5rem; font-size: 1.5rem; line-height: 1.45; }
.newsroom-article .release .article-body { max-width: 42rem; padding-top: 3.5rem; font-size: 1.125rem; line-height: 1.65; }
.newsroom-article .release .article-body p { margin-bottom: 1.25rem; }
.newsroom-article .release .article-body h2 { margin: 3.5rem 0 1rem; font-family: var(--serif); font-size: 2rem; line-height: 1.15; letter-spacing: -0.02em; font-weight: 400; }
.newsroom-article .release .article-body > :first-child { margin-top: 0; }
.release .article-body a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
.release-main .article-meta, .release .article-divider { display: none; }

/* Earlier article rules, kept as the base under the release layout. */
.article-back { padding-top: 2.5rem; }
.article-back a, .article-end a { display: inline-flex; align-items: center; gap: 0.75rem; min-height: 2.75rem; font-size: 1rem; text-decoration: none; }
.article-back a span, .article-end a span { transition: transform 240ms ease; }
.article-back a:is(:hover, :focus-visible), .article-end a:is(:hover, :focus-visible) { text-decoration: underline; }
.article-back a:is(:hover, :focus-visible) span { transform: translateX(-4px); }
.article-end a:is(:hover, :focus-visible) span { transform: translateX(4px); }
.newsroom-article .column { margin-left: 0; }
.newsroom-article .article-header { max-width: 64rem; padding-top: 2rem; padding-bottom: 3rem; gap: 1.5rem; }
.newsroom-article h1 { font-size: 5rem; line-height: 1.05; }
.newsroom-article .article-meta { color: #737373; }
.newsroom-article .article-lead { max-width: 52rem; font-size: 1.5rem; line-height: 1.5; }
.newsroom-article .article-divider { border-color: rgb(0 0 0 / 0.14); }
.newsroom-article .article-body { max-width: 42rem; padding-top: 3rem; line-height: 1.75; }
.newsroom-article .article-body p { margin-bottom: 1.5rem; }
.article-end { padding-top: 1.5rem; margin-top: 3rem; border-top: 1px solid rgb(0 0 0 / 0.14); max-width: 42rem; }
.newsroom-article .article-body .draft-note { padding: 1rem 1.25rem; margin-bottom: 2.5rem; background: #000; color: #fff; font-size: 1rem; line-height: 1.6; }
.newsroom-article .article-body h2 { margin: 2.5rem 0 1rem; font-size: 2rem; line-height: 1.2; font-weight: 400; }

@media (min-width: 64rem) {
  .newsroom-story { display: grid; grid-template-columns: 3fr 9fr; column-gap: 2rem; }
  .newsroom-meta { padding-top: 0.625rem; }
  .newsroom-meta > span, .newsroom-meta time { display: block; }
  .newsroom-meta time::before { content: none; }
  .newsroom-copy h2 { margin-top: 0; }
  .newsroom-image { grid-column: 2; }
  .release { display: grid; grid-template-columns: 3fr 9fr; column-gap: 2rem; align-items: start; }
  .release-rail { position: sticky; top: 7rem; }
  .newsroom-article .release .article-meta { margin-top: 2rem; }
  .release .article-meta > span, .release .article-meta time { display: block; }
  .release .article-meta time::before { content: none; }
  .newsroom-article .release .article-header { padding-top: 0.25rem; }
}
@media (max-width: 63.99rem) {
  .newsroom-header { padding-top: 3.5rem; padding-bottom: 2.5rem; }
  .newsroom-header h1 { font-size: 3rem; }
  .newsroom-article h1 { font-size: 4rem; }
}
@media (max-width: 47.99rem) {
  .newsroom-header { padding-top: 3rem; padding-bottom: 2rem; }
  .newsroom-header h1 { font-size: 2.65rem; }
  .newsroom-story { padding: 2rem 0; }
  .newsroom-copy h2 { font-size: 1.6rem; line-height: 1.12; }
  .article-back { padding-top: 1.75rem; }
  .newsroom-article .article-header { padding-top: 1.5rem; padding-bottom: 2rem; }
  .newsroom-article h1 { font-size: 3.25rem; }
  .newsroom-article .article-lead { font-size: 1.25rem; line-height: 1.5; }
  .newsroom-article .article-body { padding-top: 2rem; }
  .release { padding-top: 1.75rem; }
  .newsroom-article .release .article-header { padding-top: 1rem; }
  .newsroom-article .release h1 { font-size: 2.5rem; line-height: 1.1; }
  .newsroom-article .release .article-lead { font-size: 1.25rem; line-height: 1.45; }
  .newsroom-article .release .article-body { padding-top: 2.5rem; }
  .newsroom-article .release .article-body h2 { font-size: 1.625rem; }
}
@media (max-width: 22rem) {
  .newsroom-header h1 { font-size: 2.25rem; }
  .newsroom-article h1 { font-size: 2.75rem; }
  .newsroom-copy h2 { font-size: 1.5rem; }
  .newsroom-article .release h1 { font-size: 2.25rem; }
}
@media (prefers-reduced-motion: reduce) {
  .article-back a span, .article-end a span { transition: none; }
  .article-back a:is(:hover, :focus-visible) span,
  .article-end a:is(:hover, :focus-visible) span { transform: none; }
}
